doc2vec使用说明(一)gensim工具包TaggedLineDocument

时间:2021-05-05 04:48:53

gensim 是处理文本的很强大的工具包,基于python环境下:

1.gensim可以做什么?

它可以完成的任务,参加gensim 主页API中给出的介绍,链接如下:

http://radimrehurek.com/gensim/apiref.html

2.word2vec的使用

其中学习词向量的方法可利用,word2vec,具体使用我爱自然语言中介绍的很清楚,如下链接:

http://ju.outofmemory.cn/entry/80023

3.doc2vec/paragraph2vec的使用方法

学习文档向量,doc2vec(也就是官方网站API中的paragraph2vec)使用方法,中文资料较少,RaRe Machine Learning Blog英文博客讲解的比较详细,链接如下:

http://rare-technologies.com/doc2vec-tutorial/

因为要做文档向量的学习,我也写了个学习文档向量的例子,仅供参考,代码如下:

 import gensim, logging
import os logging.basicConfig(format = '%(asctime)s : %(levelname)s : %(message)s', level = logging.INFO)
sentences = gensim.models.doc2vec.TaggedLineDocument('review_pure_text.txt')
model = gensim.models.Doc2Vec(sentences, size = 100, window = 5)
model.save('review_pure_text_model.txt')
print len(model.docvecs)
out = file('review_pure_text_vector.txt', 'w')
for idx, docvec in enumerate(model.docvecs):
for value in docvec:
out.write(str(value) + ' ')
out.write('\n')
print idx
print docvec
out.close()

输入文件Tweets_id_text.txt的格式就是每个doc 对应内容的分词,空格隔开,每个doc是一行

用TaggedLineDocument 实现,每个doc默认编号

博文doc2vec/paragraph2vec使用说明(二)中介绍 带多个标签的文档向量训练方法。