序列标注任务
序列标注为文本中每个词分配标签。典型任务:词性标注(Part-of-Speech Tagging)、命名实体识别(NER)。
HMM:隐马尔可夫模型
HMM假设标签序列是马尔可夫链:当前标签只依赖前一标签。每个标签生成观测词的概率独立。
HMM公式
P(tag_t|tag_{t-1}):标签转移概率。P(word_t|tag_t):词生成概率。训练:从标注数据统计频率。
解码:Viterbi算法找到最优标签序列。高效动态规划,复杂度O(n·|T|^2)。
CRF:条件随机场
CRF直接建模标签序列的条件概率P(Y|X),不假设词生成独立性。可融合多种特征,更灵活。
CRF优势
- 全局优化:考虑整句标签一致性
- 特征丰富:可使用任意上下文特征
- 标注偏置问题:CRF无此缺陷
现代方法:BiLSTM+CRF
结合神经网络和CRF:BiLSTM学习上下文表示,CRF层优化标签序列。深度学习的表示能力+CRF的序列建模。
工具推荐
经典任务用CRF++或spaCy;复杂特征用BiLSTM+CRF;最新方法用BERT+CRF。
序列标注是NLP的基础任务,为下游应用提供结构化信息。