微软联合创始人保罗·艾伦建立的艾伦人工智能研究院(AI2)今天发布了一个PyTorch上的开源自然语言处理(NLP)研究库:AllenNLP。
这个库提供灵活的数据API,能实现智能的batching和padding,对文本处理中的常见操作进行高层抽象,还提供了一个模块化、可扩展的实验框架。
AllenNLP包含3个模型:机器理解、语义角色标注和文本蕴含。
其中,机器阅读理解(MC)模型能够从一段文本中选择一段,来回答自然语言问题。AllenNLP中的MC模型是Seo et al, 2017论文提出的BiDAF(双向注意流)的实现。AllenNLP的BiDAF模型在SQuAD数据集上测试的EM成绩是68.7,略好于原始BiDAF模型的67.7分,训练速度也是原来的10倍。
语义角色标注(SRL)模型能从一个句子中还原出它的潜在谓词参数结构,还能为回答“谁”对“谁”做了“什么”这类关于句子含义的基本问题而建立表示。AllenNLP的SRL模型是He et al, 2017论文提出的deep BiLSTM的实现,性能与原文的模型相当,在CoNLL 2012上的F1得分为78.9。
当处理一对句子的时候,文本蕴含(TE)模型能预测第一个句子中的事实是否隐含了第二个句子中的事实。AllenNLP的TE模型是Parikh et al, 2017论文中可分解注意模型的实现,在SNLI数据集上达到了84.7的准确率,接近原始模型86.3%的成绩。
AllenNLP由AI2与华盛顿大学等高校的研究者合作开发和维护。
领取专属 10元无门槛券
私享最新 技术干货