命名实体识别(Named Entity Recognition, NER) 是NLP中的基础任务,目标是识别文本中具有特定意义的实体,主要包括人名、地名、机构名、时间、日期、数字、产品名等,并将它们归类到预定义的类别中。
NER是很多下游任务的基础,比如关系抽取、信息检索、问答系统、知识图谱构建等。
BIO标注是NER最常用的标注方式:
示例:
| 我 | 在 | 北 | 京 | 参 | 加 | 会 | 议 |
|---|---|---|---|---|---|---|---|
| O | O | B-LOC | I-LOC | O | O | O | O |
这里"北京"是地点实体(LOC),所以标注为B-LOC I-LOC。
还有BILOU标注(Begin、Inside、Last、Outside、Unit),可以更好处理单字实体,但BIO更简单常用。
马尔科夫过程:假设t时刻的状态只依赖于t-1时刻的状态,与更早的状态无关。
核心思想:当前时刻状态仅与上一时刻状态相关,与其他时刻不相关。
齐次马尔可夫性假设:隐藏的马尔科夫链在任意时刻t的状态只依赖于其前一时刻的状态,与其他时刻的状态及观测无关,也与时刻t无关。
观测独立性假设:任意时刻的观测只依赖于该时刻的马尔科夫链状态,与其他观测及状态无关。
概率计算问题:给定模型参数和观测序列,计算观测序列出现的概率。直接计算复杂度太高O(N²T),常用前向-后向算法高效计算。
学习问题:已知观测序列,估计模型参数,使得观测序列概率最大。常用Baum-Welch算法(EM算法在HMM中的应用)。
预测问题(解码问题):已知模型参数和观测序列,求最可能对应的状态序列(即标注序列)。常用维特比算法,动态规划寻找最优路径。
三个问题是渐进关系,先解决概率计算,再学习参数,最后做预测。
HMM做了很强的假设(齐次马尔可夫性和观测独立性),简化了求解但也减弱了建模能力。在序列标注问题中,一个位置的标注不仅和单个观测相关,还和上下文长度、整个观测序列的信息相关,HMM假设限制了建模能力。可以用最大熵马尔可夫模型(MEMM)等方法来优化。
条件随机场(Conditional Random Field, CRF) 是给定输入随机变量X条件下,输出随机变量Y的条件概率分布的马尔可夫随机场。对于序列标注问题,X是观测序列,Y是标注序列。
CRF的主要思想:统计全局概率,做全局归一化,考虑数据在全局的分布。
CRF参数化形式(线性链条件随机场):

其中:
概率计算问题:给定条件随机场P(Y|X),输入观测序列x,计算条件概率P(y|x)。使用前向-后向算法计算。
学习问题:给定训练数据集,估计条件随机场模型参数。使用极大似然估计定义目标函数,用梯度下降、牛顿法、拟牛顿法、迭代尺度法等优化方法求解。
预测问题:给定条件随机场和输入观测序列,求条件概率最大的输出序列(标注序列)。使用维特比算法求解。
优点:
缺点:
| 对比维度 | HMM | CRF |
|---|---|---|
| 图结构 | 有向图 | 无向图 |
| 假设 | 齐次马尔可夫+观测独立性 | 无强假设,使用全局特征 |
| 性质 | 生成模型,学习联合概率P(I,O) | 判别模型,学习条件概率P(I |
| 最优解 | 局部最优 | 全局最优 |
| 关系 | HMM是CRF的一种特殊情况 | - |
生成模型:学习联合概率分布P(x,y),即特征x和标签y共同出现的概率。常见:朴素贝叶斯、HMM、混合高斯模型。
判别模型:学习条件概率分布P(y|x),即在特征x出现的情况下标记y出现的概率。常见:感知机、决策树、逻辑回归、SVM、CRF。
一个生动的比喻:
现在主流做法是使用BERT预训练模型,然后接CRF层:
将NER转化为生成问题:
什么是命名实体识别?它的应用是什么?
命名实体识别是识别文本中具有特定意义的实体(人名、地名、机构名等)并分类到预定义类别的任务。它是关系抽取、知识图谱、问答系统等很多NLP任务的基础。
解释BIO标注方法。
BIO标注是NER最常用的标注方法:B表示实体开始,I表示实体中间,O表示非实体。例如"北京"作为地点实体标注为"B-LOC I-LOC"。简单直观,广泛使用。
HMM三个基本问题是什么?分别用什么算法解决?
HMM和CRF的区别是什么?
生成模型和判别模型的区别是什么?
生成模型学习联合概率P(x,y),对数据分布建模;判别模型学习条件概率P(y|x),直接学习分类边界。生成模型可以生成样本,判别模型直接做预测通常精度更高。
CRF的优缺点是什么?
优点:能利用丰富的上下文特征,避免标记偏置,得到全局最优解,特征融合能力强,性能更好;缺点:训练慢,模型大,特征选择对结果影响很大。
现在深度学习做NER一般怎么做?
现在主流是预训练模型(BERT等)加上CRF层:BERT编码每个token的上下文表示,CRF建模标签之间的转移约束,效果比LSTM+CRF好很多。也可以用大模型+提示学习,直接生成结果,适合小样本场景。
HMM的两个基本假设是什么?
齐次马尔可夫性假设:任意时刻t的状态只依赖于前一时刻的状态,与其他无关;观测独立性假设:任意时刻的观测只依赖于该时刻的状态,与其他无关。