为什么判别模型比生成模型更适合序列标记任务?

机器算法验证 机器学习 预测模型 隐马尔可夫模型 自然语言
2022-03-25 10:26:04

我了解判别模型,例如 CRF(条件随机场),模型条件概率,而生成模型,例如 HMM(隐马尔可夫模型),模型联合概率P(y|x)P(y,x)

以 CRF 和 HMM 为例。我知道 CRF 可以具有更大范围的可能功能。除此之外,在词性标注和 NER(名称实体识别)等序列标注任务中,还有什么让 CRF(判别模型)优于 HMM(生成模型)?

编辑:
我发现 HMM 必须对建模,而 CRF 则不需要。为什么它会对序列标记任务产生重大影响?P(x)

2个回答

我认为你在你的编辑中几乎把它钉牢了。的分布做出了更严格的假设x

明卡

“与传统的生成随机场不同,CRF 仅对条件分布进行建模,而不对边际进行显式建模。请注意,标签全局取决于 CRF 中的整个观察。因此,我们不假设观察到的数据在生成随机场中是条件独立的。”p(t|x)p(x)tixx

CRF 和 HMM 不一定是唯一的模型公式。在您上面的公式中,HMM 中的 X 通常是未观察到的状态变量,因此生成模型在某种程度上是必要的。然而,在 CRF 中,X 是一些以传统方式观察并影响 Y 的特征向量。但是您可以将两者结合起来:一系列状态和未观察到状态的输出,以及一组观察到的特征,这些特征会影响给定状态的输出的条件概率(或状态之间的转换概率)。

我相信最终 CRF 会承认一些更灵活的模型,其中条件概率更具动态性,并且可能会受到例如之前几次观察的输出或类似情况的影响。当它们开始包含更多像这样的自由参数时,它们可能会变得非常大并且难以训练。