0

我有一个解析问题,MEMM 可以很好地解决。但是我花了很多时间试图找到算法的良好实现(最好是在 java 中)。有没有人这样做过?或者,如果有人有一些可读的文档,我可以自己实现它。

谢谢!

(我已经尝试过 Mallet 并且罐子里的训练器没有实现)

4

2 回答 2

1

您认为 MEMM 特别适合您的问题的原因是什么?通常很难找到为什么某些东西会比其他东西更好的理论依据,并且这个问题是凭经验解决的。

如果您已经拥有 Mallet,请尝试使用 Conditional Random Field 实现。最近的研究,从 Lafferty、McCallum 和 Pereira 开始,Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data表明 CRF 在序列标记方面通常优于 MEMM。

于 2012-11-27T08:58:54.380 回答
1

您是否查看过斯坦福 NLP 集团的CMMClassifier,它位于斯坦福 CoreNLP NLP 工具套件中

恐怕我无法谈论底层MEMM实现的质量,但它是用 Java 编写的,而且我使用了斯坦福 NLP 的其他几个部分并取得了相对成功。

我发现有时 CoreNLP 的缺点是其广泛的对象模型和大多数模块所具有的非常多的依赖关系。当一个人希望专注于单个工具/类时,与这些依赖相关的分心和学习曲线可能会很烦人。另一方面,该对象模型有效地对应于许多 NLP 任务共有的实际中低级过程,因此非常有用。

于 2012-11-27T00:00:21.533 回答