学习NLP需要一个比较系统的概要。所以理论上这个应该写在第一篇。
【NLP的技术概貌】
NLP里细分领域和技术实在太多,根据NLP的终极目标,大致可以分为自然语言理解(NLU)和自然语言生成(NLG)两种。NLU侧重于如何理解文本,包括文本分类、命名实体识别、指代消歧、句法分析、机器阅读理解等;NLG则侧重于理解文本后如何生成自然文本,包括自动摘要、机器翻译、问答系统、对话机器人等。两者间不存在有明显的界限,如机器阅读理解实际属于问答系统的一个子领域。
大致来说,NLP可以分为以下几个领域:
- 【文本检索】:多用于大规模数据的检索,典型的应用有搜索引擎
- 【机器翻译】:跨语种翻译,该领域目前已较为成熟。目前谷歌翻译已用上机翻技术
- 【文本分类/情感分析】:本质上就是个分类问题。目前也较为成熟,难点在于多标签分类(即一个文本对应多个标签,把这些标签全部找到)以及细粒度分类(二极情感分类精度很高,即好中差三类,而五级情感分类精度仍然较低,即好、较好、中、较差、差)
- 【信息抽取】:从不规则文本中抽取想要的信息,包括命名实体识别、关系抽取、事件抽取等。应用极广。
- 【序列标注】:给文本中的每一个字/词打上相应的标签。是大多数NLP底层技术的核心,如分词、词性标注、关键词抽取、命名实体识别、语义角色标注等等。曾是HMM、CRF的天下,近年来逐步稳定为