NER 的线性 CRF 与 Word2Vec 对比

Linear CRF Versus Word2Vec for NER

我已经阅读了大量关于线性 CRF 和 Word2Vec 的文章,想知道哪一个最适合做命名实体识别。我使用 Stanford NER(这是一个线性 CRF 实现)训练了我的模型,并获得了 85% 的精度。我知道 Word2vec 将相似的词组合在一起,但它是做 NER 的好模型吗?

CRFs 和 word2vec 是苹果和橘子,所以比较它们真的没有意义。

CRF 用于 NER 等序列标记问题。给定一系列项目,表示为特征并与标签配对,他们将学习一个模型来预测新序列的标签。

Word2vec 的词嵌入是将词表示为浮点数向量。他们自己不预测任何事情。您甚至可以使用词向量在 CRF 中构建特征,尽管更典型的做法是将它们与 LSTM 等神经模型一起使用。

有些人成功地将词向量与 CRF 结合使用。有关在 CRF 中使用词向量的一些讨论,请参阅 here and here

请注意,对于许多标准 CRF 实现,特征应该是二元的或分类的,而不是连续的,因此您通常不能像处理其他特征那样只是将词向量推入。

如果您想知道哪个更适合您的用例,唯一的方法就是尝试两者。

对于典型的 NER 任务,线性 CRF 是一种流行的方法,而 Word2Vec 是一种可以用来提高 CRF 系统性能的功能。

在 2014 paper (GitHub) 中,作者比较了将 Word2Vec 的输出合并到基于 CRF 的 NER 系统中的多种方法,包括 dense embeddingbinerized embeddingcluster embedding,以及一种新颖的 prototype 方法。

我在我的特定领域 NER 项目中实现了原型想法,它对我来说效果很好。