之前我们介绍过BERT+CRF来进行命名实体识别,并对其中的BERT和CRF的概念和作用做了相关的介绍,然对于CRF中的最优的标签序列的计算原理,我们只提到了维特比算法,并没有做进一步的解释,本文将对维特比算法做一个通俗的讲解,以便大家更好的理解CRF为什么能够得到最优的标签序列。
通过阅读本文你将能回答如下问题:
- 什么是维特比算法?
- 为什么说维特比算法是一种动态规划算法?
- 维特比算法具体怎么实现?
首先,让我们简单回顾一下BERT和CRF在命名实体识别中各自的作用:
命名实体识别中,BERT负责学习输入句子中每个字和符号到对应的实体标签的规律,而CRF负责学习相邻实体标签之间的转移规则。详情可以参考这篇文章CRF在命名实体识别中是如何起作用的?。该文章中我们对CRF做了简单易懂的介绍,其中提到CRF的损失函数计算要用到最优路径,因为CRF的损失函数是求最优路径的概率占所有路径概率和的比例&#