n-gram马尔可夫链转移表



我试图从一段给定的文本中构建一个n-gram马尔可夫模型,然后访问它的转换表,这样我就可以计算长度为n(克(的每个单词序列的条件熵。例如,在2克模型中,在阅读了文本的语料库之后

"狗追猫狗追猫狗追猫狗追猫狗追猫狗追猫狗追人">

建立一个内部转换表,状态"狗追逐"可能以0.9的概率转换为状态"猫追逐",以0.1的概率转换至状态"人追逐"。如果我知道可能的跃迁,我就可以计算条件熵。

有什么好的python库可以做到这一点吗?我检查了NLTK、SRILM和其他一些,但没有发现太多。

这篇文章刚创建4年多一点,我发现自己也有同样的问题。虽然可以手动完成,但我已经创建了adaptationism包,它提供了更多功能!

您不仅可以访问转换表,还可以对任何N-gram组合执行此操作。

随着时间的推移,我将继续构建这个工具包,请随时向我提供未来功能的建议!

最新更新