【作者:吴斌,原文创作于2016-08-11,如今仍有较高参考价值,但不排除部分信息需要更新。文中有很多引用,不一一列举出处了。】
关于自然语言的实体提取,在自然语言处理的应用里面,是非常实用的技术。在实际项目中,粗略地讲,我认为有3种情况:1,规则明显,精度要求高,适合用规则模板做,比如:会议航班等日程识别提醒,地址识别。2,规则不明显,但是基本可以找到规律,适合用统计模型(CRF,HMM等)做,比如:人名识别,情感词情感对象识别。3,除了标点符号,找不到规则,那就用词典+规则做吧,比如:电影名,歌曲名识别。 所以,什么情况下的自然语言实体提取,使用什么样的技术,这也是需要仔细思考的问题,很难一概而论,哪个技术好。
1,3不用多说了,这里说一下2。目前最好用的实体抽取模型是CRF(条件随机场),具体应用中超过其他模型(如:HMM隐马尔科夫模型,不过HMM的运行效率高),而且超过深度学习的RNN模型,CRF主要优点是,它的核心其实是一种判别式的分类模型,同时考虑上下文关系的转移概率(分析上下文关系目前可用的只有线性马尔可夫链,更复杂的关系目前难以实用,所以条件随机场在实用中是简化版模型。),它可以使用很多特征来训练模型,而人工设计的特征在实体提取任务中,至关重要,特别是字典特征(比如中文名的百家姓词典,情感词词典),在模型中有着非常重要的作用。而使用RNN模型,单纯靠大量的标注数量来做模型训练的话,准确率上并没有优势,只是在召回率上有优势,而实际应用中,更看重准确率。细节可以看这个论文:http://anthology.aclweb.org/D/D14/D14-1080.pdf
舆情分析 或情感分析, 在自然语言处理领域是个主要的应用方向, 常见的情况是为某个公司或某个产品,根据舆情数据,分析出消费者的情感倾向,比如:根据商品评论数据,分析用户情感的倾向,正,负,中性。或者根据更大范围的数据,比如微博,搜索引擎的数据ÿ