2014-02-26 15 views
2

我试图建立一个神经网络语言模型,似乎Mikolov等人的word2vec工具是一个很好的工具。我尝试过,但它只是产生文字表示。 有没有人知道我可以通过该工具或任何其他合理的深度学习框架来生成语言模型?如何用word2vec工具计算语言模型?

+0

我现在使用opennlp。 – mvw

+0

现在我知道你不能用word2vec建立一个神经网络语言模型,这要感谢Phyrox。所以我需要的是一个具有易于使用的功能的深度学习工具,用于构建语言模型。 – Ash

回答

2

Doc2Vec在Gensim中执行完成这项工作。诀窍是他们使用文档ID作为上下文单词,它出现在文档中所有单词的所有窗口大小中。

代码是here in Python/Gensim

2

word2vec是一个工具来表示一个单词(一组单词)作为一个数字向量。所以它与语言模型没有直接关系。

要生成语言模型,您可以使用MITLM来执行此操作。例如,你可以使用语料库Lectures.txt使用此命令创建的N-gram模型:

estimate-ngram -text Lectures.txt -write-lm Lectures.lm 

一个伟大的教程可以发现here

+0

是的,但我的目标是坚持神经网络语言模型,特别是那些非常接近最先进的方法,并具有易于运行的框架。 – Ash

+1

实际上,word2vec学习一个神经语言模型,然后放弃它的预测能力,同时只保留目标词的内部表示(嵌入)。 – cvangysel

3

微软研究院已经发布了一个用word2vec风格的矢量进行语言建模的工具包。你可以找到它here