我试图关注this.
但有些我浪费了很多时间而没有任何用处
我只想在我自己的语料库(~900Mb corpus.txt文件)上训练GloVe
模型。
我下载了上面链接中提供的文件并使用cygwin
进行了编译(编辑demo.sh文件后将其更改为VOCAB_FILE=corpus.txt
。我应该保持CORPUS=text8
不变吗?)
输出是:
如何在python上使用这些文件作为GloVe
模型加载?
答案 0 :(得分:2)
你的语料库应该转到变量CORPUS。 vectors.txt是输出,它被认为是有用的。你可以在python中训练Glove,但是需要更多的时间,你需要有C编译环境。我之前尝试过并且没有推荐它。
答案 1 :(得分:2)
这是我对此的看法:
make
,它将在构建文件夹中形成四个文件。./demo.sh
,它将训练并在您自己的语料库上完成脚本中提到的所有工作,并且输出将作为vectors.txt文件生成。注意:不要忘记将语料库文件直接保存在Glove文件夹中。
答案 2 :(得分:1)
这是运行模型的方式
$ git clone http://github.com/stanfordnlp/glove
$ cd glove && make
要在自己的语料库上训练它,只需更改一个文件demo.sh。
在“ make”之后将脚本从if删除到fi。 将CORPUS名称替换为您的文件名“ corpus.txt” 文件'demo.sh'的末尾还有另一个if循环
if [ "$CORPUS" = 'text8' ]; then
用您的文件名替换text8。
进行更改后,运行demo.sh。
$ ./demo.sh
确保您的语料库文件格式正确。您需要将语料库准备为单个文本文件,所有单词都用一个或多个空格或制表符分隔。如果您的语料库有多个文档,则这些文档(仅)应该用换行符分隔。
答案 3 :(得分:0)
您可以使用GloVe库来实现:
安装:pip install Gloves_python
然后:
from glove import Corpus, Glove
#Creating a corpus object
corpus = Corpus()
#Training the corpus to generate the co occurence matrix which is used in GloVe
corpus.fit(lines, window=10)
glove = Glove(no_components=5, learning_rate=0.05)
glove.fit(corpus.matrix, epochs=30, no_threads=4, verbose=True)
glove.add_dictionary(corpus.dictionary)
glove.save('glove.model')