我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:大丰收高手论坛 > 动态规划法 >

搜狐算法大赛上分秘籍——NER技术应用宝典

归档日期:04-23       文本归类:动态规划法      文章编辑:爱尚语录

  媒体资讯对新闻事件进行报导或评论,这些新闻事件的基本要素可以使用命名实体识别技术(NER)进行提取,如人物、机构、地点、时间、专有名词等。提取文章中的实体对于自媒体时代的新闻智能推荐有着重要意义,如进行更精准的内容挖掘、对内容进行有效的监督管理等。媒体的实体识别面临新实体快速涌现、多领域多义词等难点,所以对命名实体识别的未登录词识别、上下文语境的深入理解与表示提出了更高的要求。本文以搜狐的技术实践为基础,介绍前沿的命名实体识别技术与效果。

  命名实体识别(Named Entity Recognition)简称NER,是自然语言处理领域应用广泛而且核心的技术,是文章内容理解的基础,也是问答系统、搜索系统的底层技术之一。尤其在中文语言处理中,NER可以看做分词的一部分,是未登录词识别中数量最多、识别难度最大的一部分,而且由于实体往往代表重要的意向,对于分词效果也影响显著。

  命名实体包含人、地、机构、专有名词等,在不同的领域,对于实体有着不同的定义。在媒体领域,由于会涉及娱乐、财经、科技、体育、医疗教育等各行各业的资讯消息,所以对这些领域的常见专有名词都需要有一定的识别精度。此外,媒体领域也需要关注与热门资讯与突发事件关联的实体,比如电视剧“都挺好”,地名“响水”等。所以媒体NER比较看重以下两个特性:

  从实现原理来分类,随着机器学习的发展以及深度学习技术的应用,NER技术发生了如下的技术演进路线. 基于规则和词典的方法

  规则和词典的方法指的是通过手动构建识别实体词的规则,以及收集领域相关的实体词词典。这种方法适用于确定实体的集合比如地名、球队名称,或者固定格式的实体比如时间、书名号等。这种方法的缺点是扩展性很差,不能发现未登录词,是早期或者简单的实体词识别系统所采用的方案。

  在机器学习中,NER一般被抽象为序列标注问题,利用人工标注的大量语料库来标注模型。在机器学习中,进行线性序列标注的模型包括生成式模型HMM,判别式模型CRF等。HMM(隐马尔科夫模型)是统计概率模型,在NER使用的模式是已知观察序列(句子中的词),求背后概率最高的标注序列(即每个字的分词状态)。在NER中,HMM假设每个标注取决于前面的标注结果和当前的观察序列,构成如下的概率图模型:

  其中 A 表示上一个状态到下一个状态的转移概率矩阵,B表示隐藏状态到当前的观测状态的转移概率矩阵,另外使用s表示初始状态。一个HMM模型通过构建(A,B,s)来表示序列概率。不过HMM的缺点从原理上也能看出:一个词的实体词类型,只取决于当前词以及前面的状态,无法考虑更远的词以及后面的词的影响,从而导致无法达到全局最优。因为HMM为了对联合概率分布进行建模,HMM引入两条独立性假设:

  第二层由双向LSTM构成,能够学习到上下文特征,输出的是每个词的上下文环境的向量表示。第三层是CRF层,基础的CRF层能够使用CRF模型来构建crf-loss,然后用得到的CRF特征结合viterbi算法进行求解序列,在tensorflow的keras中,有更完整的CRF-layer能够实现对序列的标注训练和直接求解。

  注意力(Attention)模型是近年来深度学习领域大放异彩的网络模型,起源于视觉的注意力机制。随着2018年google的BERT在各类自然语言比赛中大杀四方,Attention模型更优秀的表示能力逐渐取代了RNN在自然语言处理中的顶部位置。在自然语言处理中,使用注意力(Attention)的语义表示模型为Transformer模型。

  目前我们直接使用Transformer进行序列标注,在输出层使用SoftMax函数直接进行预测。但是这样无法考虑标签之间的转移概率,如在标注了TIME_E以后,TIME_M标签出现的概率应该更大。直接使用SoftMax函数,是一种贪心的预测方式,其不一定为最优解。因此考虑在输出层加入CRF层。不仅考虑了输入x到y的释放概率,更考虑了连续标签之间的传播概率。最终在预测阶段,使用维特比动态规划算法找到预测的最优解。

  在命名实体识别任务中,我们发现分词的结果对NER结果影响很大,在人工标注资源有限的情况下,我们构建了在句子上直接进行命名实体识别的模型,能够同时实现分词和命名实体识别。在上述分词模型的基础上,在NER问题中,我们联合实体词类型,构建了能同时用于分词和实体识别的状态。如下图所示,实体词的类型联合字在词中的位置,构成了5*4=20中序列状态。

  使用已有的开源NER对文章粒度的长文本进行预处理,提取各类实体词,人工只需要结合文章语境,对实体词进行添加和删除,而不是逐字逐句地进行分词、实体词的判断。将所标注的实体词放回文章,生成新的训练集进入到NER算法模型,这样可以达到比大部分开源NER更好的效果。

  使用类似boosting的数据采样方案,基于a中标注数据分组产生多个NER模型,对段落粒度的文本进行扫描。如果标注结果不一致,则认为该样本存在较低的置信度,把该段文本投入到逐字逐句的标注流程,进一步提升数据集的准确率。下图所示为逐字逐词标注的结果:

  如果特征太多会导致性能变差,甚至训练效果会收到干扰而降低,一般选取前后两个词以内的特征可以达到最优的效果。从这也可以看出传统的机器学习CRF直接用于NER的缺点,虽然理论上可以考虑全局的特征,但是综合性能和模型表达能力,其实只能考虑较近范围的特征。所以采用上文提到的Bi-LSTM可以增强对上下文语境的表示,从而提升序列标注的效果。

  NER系统以Bi-LSTM+CRF算法为核心,结合了每个领域的专有名词和特殊规则,架构如下图所示:

  领域规则主要包括:书名号中的电影名、带分隔符的外国人名等特殊格式。在标注数据里样本较少的情况下,通过规则可以达到更好的效果。

  [2] End-to-end SequenceLabeling via Bi-directional LSTM-CNNs-CRF

  在新闻智能推荐的时代,互联网媒体不仅关注新闻中的主要实体,对这些实体的细粒度情感也很关注,文章主体情绪的判断,有助于互联网媒体把控网站调性、丰富内容理解的维度、提升推荐效果,甚至可以挖掘更多的商业价值。比如“小米9与华为mate20 pro都缺货,为啥只有雷军被吐槽“,对于“小米”或者“雷军”这些实体的情绪是消极的,而对于华为来说根据文章内容被判断为中立或者积极。

本文链接:http://quangdungfc.net/dongtaiguihuafa/50.html