doc2vec使用说明(一)gensim工具包TaggedLineDocument
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/
因为要做文档向量的学习,我也写了个学习文档向量的例子,仅供参考,代码如下:
1 import gensim, logging 2 import os 3 4 logging.basicConfig(format = '%(asctime)s : %(levelname)s : %(message)s', level = logging.INFO) 5 sentences = gensim.models.doc2vec.TaggedLineDocument('review_pure_text.txt') 6 model = gensim.models.Doc2Vec(sentences, size = 100, window = 5) 7 model.save('review_pure_text_model.txt') 8 print len(model.docvecs)
9 out = file('review_pure_text_vector.txt', 'w') 10 for idx, docvec in enumerate(model.docvecs): 11 for value in docvec: 12 out.write(str(value) + ' ') 13 out.write('\n') 14 print idx 15 print docvec 16 out.close()
输入文件Tweets_id_text.txt的格式就是每个doc 对应内容的分词,空格隔开,每个doc是一行
用TaggedLineDocument 实现,每个doc默认编号
博文doc2vec/paragraph2vec使用说明(二)中介绍 带多个标签的文档向量训练方法。