1. 程式人生 > >doc2vec使用說明(一)gensim工具包TaggedLineDocument

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使用說明(二)中介紹 帶多個標籤的文件向量訓練方法。