思考是我无限的国度,言语是我有翅的道具。-- 席勒(德)
NLP历程
NLP(Natural Language Processing)自然语言处理是计算机科学领域以及人工智能领域的一个重要分支,它研究用计算机来处理、理解以及运用人类语言(中文、英文等),达到人与计算机之间进行有效的通讯。
从自然语言的角度出发,NLP可以分为自然语言理解(NLU)和自然语言生成(NLG)两类,演化为理解和生成文本的任务。
上图左边是NLP的研究方向与应用,右边为NLP的分类。
NLP的发展大致经历了3个阶段:
- 1956年以前的萌芽期
- 1980年~1999年,快速发展期
- 21世纪,突飞猛进期
基本术语
1. 分词
词是最小的能够独立活动的有意义的语言部分,英文以空格作为自然分隔符的,而汉语是以字为基本书写单位,词语之间没有明显的区分标记。以前中文分词是NLP处理中文的第一步,现在也有不分词以字为单位进行训练的效果好于分词效果的情况,详情见我前面写的一篇《深度学习框架下中文需要分词吗?》。
2. 词性标注
词性一般指动词、名词、形容词等。例如我/r爱/v北京/ns长城/ns。其中,r代表代词,v代表动词,ns代表地名。
3. 命名实体识别
命名实体识别(Named Entity Recognition,简称NER),是指识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等。
一般来说,命名实体识别的任务就是识别出待处理文本中三大类(实体类、时间类和数字类)、七小类(人名、机构名、地名、时间、日期、货币和百分比)命名实体。
4. 句法分析
句法分析(Parsing)就是指对句子中的词语语法功能进行分析,比如“我来晚了”,这里“我”是主语,“来”是谓语,“晚了”是补语。
句法分析的目的是解决句子中各个成分的依赖关系,可以解决词袋模型不考虑上下文的问题。例如,“王维亮的哥哥是王少峰”和“王少峰的哥哥是王维亮”,这两句话,用词袋模型完全是相同的,但是句法分析可以分析出主从关系。
5. 指代消解
一段文本中,代词出现的频率很高,它是代替名词或一句话的一种词类。例如,麦积山石窟坐落于甘肃天水,它是中国四大佛教石窟之一。在这句话中,“它”指代的是麦积山石窟。指代消解的目的就是把这种代词找到源头,便于理解句子。
6. 情感识别
计算机对从传感器采集来的信号进行分析和处理,从而得出对方(人)正处在的情感状态,这种行为叫做情感识别。
本质上是分类问题,经常被用于舆情分析等领域,情感一般是正面,负面,中性三类。可以根据电影评论,商品评论,美食评论等进行分析,看用户对商品的满意程度,做进一步的推荐等。
7. 纠错
自动纠错在搜索领域和输入法中应用很多。用户在搜索时,输入出错的可能性比较大,需要一个纠错系统来帮助进行纠正。
8. 问答系统
这是一种类似机器人的人工智能系统。例如:苹果Siri、IBM Watson、微软小冰等
NLP的三个层面
一:词法分析
词是自然语言中能够独立运用的最小单位,是自然语言处理的基本单位。词法分析包括分词和词性标注两部分。
二:句法分析(语法分析)
句法分析是对输入的文本以句子为单位,进行分析以得到句子的句法结构的处理过程。
三:语义分析
语义分析的目的是理解句子表达的真实语义。