基于神经网络的命名实体识别 NeuroNER
选自Neuroner
机器之心编译
参与:李亚洲
本文主要介绍了一种基于神经网络的命名实体识别系统 NeuroNER,并附上了安装、下载的项目地址,希望对自然语言处理感兴趣的同学有所帮助。
NeuroNER 下载项目地址:https://github.com/Franck-Dernoncourt/NeuroNER
什么是命名实体识别(NER)?
NER 旨在识别文本中的有趣实体,例如位置、组织和时序表达。识别实体可被用于各种下游应用,比如病历去识别化(de-identification)和信息提取系统,也可作为其他自然语言处理任务机器学习系统的特征。
NeuroNER 能做什么?
NeuroNER 是一个能完成 NER 任务的项目:
NeuroNER 相比于已由的 NER 系统,能提供以下优势:
利用神经网络的顶尖预测能力(也就是深度学习)
让用户能够创造新的语料库或修改已有语料库
它是跨平台的、开源的、免费直接使用的
如何使用 NeuroNER?
下图对 NeuroNER 的功能做出了简要介绍,具体描述如下:
训练神经网络完成 NER 任务。在训练的过程中,NeuroNER 允许监控网络。
评估 NeuroNER 所做预测的质量。表现标准可通过预测标签与金色标签的对比来计算、标绘。如果测试集与训练和验证集同时提供,评估也可在训练的同时完成,或者在训练后分开完成,或者使用预训练模型。
部署 NeuroNER 作为产品使用:NeuroNER 标记了部署集,也就是没有金色标签的新文本。
NeuroNER 引擎如何工作?
NeuroNER 引擎基于人工神经网络,特别是依赖一种循环神经网络的变体 LSTM。NER 引擎的人工神经网络包含三层:
字符增强的 token 嵌入(Character-enhanced token-embedding)层
标签预测层
标签序列优化层
下图展现了 NeuroNER 引擎中用到的人工神经网络的架构:
如何安装 NeuroNER
GitHub 上的 repository 解释了安装指南,以下视频展示了使用安装脚本在 Ubuntu 上进行安装有多么简单:脚本会安装你所需的所有东西,然后在 CoNLL-2003 数据集上进行训练。在数个训练 epoch 之后,模型获得了顶尖的成果。