1.背景介绍
自然语言处理(NLP)是人工智能领域一个重要方向,主要研究如何通过计算机将语言转换成机器可以理解、执行的形式。目前,NLP已经成为应用最广泛的计算机科学技术之一。在NLP技术诞生的同时,越来越多的人们也关注到NLP的实际应用,如对话系统、聊天机器人等。因此,了解NLP技术的底层原理、核心算法,对于掌握自然语言处理技能至关重要。
本文就以自然语言处理中最关键的词性标注技术-Hidden Markov Model (HMM),以及其在文本分词、命名实体识别中的应用为线索,进行一个完整的学习实践。
2.核心概念与联系
HMM是一个关于时序的概率图模型,描述由一个隐藏的状态序列隐藏在观测序列中的马尔可夫过程。隐状态表示观测序列的一个标记(label),它决定了下一个可能的状态。观测状态表示隐藏状态的集合,它们由一组输入观察值(observation)组成。观测序列由一个个标记序列组成,用小写字母表示。每个标记对应于一个输入观察值。HMM学习过程中,根据训练数据,确定各个隐藏状态之间的转移概率以及生成观测值的概率分布。
HMM与马尔可夫链不同的是,HMM有一个观测序列。也就是说,HMM能够捕捉到前面观测到的信息。比如,一个句子中包含了一个动词,HMM就可以利用该动词之前的单词的信息来判断后面的动词是否正确。
在自然语言处理任务中,HMM通常用于分词(word segmentation)、命名实体识别(named entity recognition)、语音识别(speech recognition)等任务。另外,HMM还用于文本分类、结构预测、机器翻译等其它 NLP 任务。