分词(Segment):中英文都存在分词的问题,不过相对来说,英文单词与单词之间本来就有空格进行分割,所以处理起来相对方便。但是中文书写是没有分隔符的,所以分词的问题就比较突出。分词常用的手段可以是基于字典的最长串匹配,据说可以解决85%的问题,但是歧义分词很难。另外就是当下主流的统计机器学习的办法,利用HMM/CRF这一类的模型解决
 
词性标注(Label):基于机器学习的方法里,往往需要对词的词性进行标注。标注的目的是,表征词的一种隐状态,隐藏状态构成的转移就构成了状态转移序列。例如:苏宁易购/n 投资/v 了/u 国际米兰/n。其中,n代表名词,v代表动词,n,v都是标注。以此类推。
 
命名实体识别(Named Entity Recognition):本质上还是标注问题的一种。只不过把标注细化了。比如,苏宁/cmp_s 易购/cmp_e 是/v B2C/n 电商/n。我们把苏宁易购 标注成cmp_s和cmp_e,分别表征公司名的起始和结束。这样,当遇上苏宁/云商/易购这种场景时,也可以完整得识别出它是一个公司名称。如果,按照传统的标注方式,苏宁/cmp 易购/cmp这样笼统地标注可能会有问题。
 
句法分析(Syntax Parsing):句法分析往往是一种基于规则的专家系统。当然也不是说它不能用统计学的方法进行构建,不过最初的时候,还是利用语言学专家的知识来构建的。句法分析的目的是解析句子的中各个成分的依赖关系。所以,往往最终生成的结果,是一棵句法分析树。句法分析可以解决传统词袋模型不考虑上下文的问题。比如,张三是李四的领导;李四是张三的领导。这两句话,用词袋模型是完全相同的,但是句法分析可以分析出其中的主从关系,真正理清句子的关系。
 
指代消解(Anaphora Resolution):中文中代词出现的频率很高,它的作用的是用来表征前文出现过的人名、地名等词。例如,苏宁易购坐落在南京,这家公司目前位于中国B2C市场前三。在这句话中,其实“苏宁易购”这个词出现了2次,“这家公司”指代的就是苏宁易购。但是出于中文的习惯,我们不会把“苏宁易购”再重复一遍。
 
情感识别(Emotion Recognition):所谓情感识别,本质上是分类问题。情感基本可以分类2类或者3类。正面、负面,有时再加上非正非负。一般来说,在电商企业,情感识别可以分析商品评价的好坏,以此作为下一个环节的评判依据。通常的做法,可以基于词袋模型+分类器,或者现在流行的词向量模型+RNN。经过测试后者比前者准确率略有提升。
 
纠错(Correction):自动纠错在搜索技术中利用得很多。由于用户的输入出错的可能性比较大,出错的场景也比较多。所以,我们需要一个纠错系统。具体做法有很多,可以基于N-Gram进行纠错,数据结构上,字典树、有限状态机可以考虑。
 
问答系统(QA System):这是一种类似机器人的人工智能系统。比较著名的有,IBM Watson,Google Allo,苹果Siri,微软小冰等等。问答系统往往需要语音识别、合成,自然语言理解、知识图谱等多项技术的配合才会实现得比较好。个人认为,QA系统是NLP从业者一个较难做好的产品。
05-07 15:49