1. 程式人生 > >使用不同的方法計算TF-IDF值

使用不同的方法計算TF-IDF值

分類算法 不能 gis bsp gensim 裏的 lar 摘要 表示

摘要

這篇文章主要介紹了計算TF-IDF的不同方法實現,主要有三種方法:

  • 用gensim庫來計算tfidf值
  • 用sklearn庫來計算tfidf值
  • 用python手動實現tfidf的計算

總結

之所以做了這方面的總結是因為最近在研究word2vec,然後涉及到了基於word2vec的文本表示方法。你用word2vec訓練好的模型可以得到詞的向量,然後我們可以利用這些詞向量表示句子向量。


1. 一般處理方法是把句子裏涉及到的單詞用word2vec模型訓練得到詞向量,然後把這些向量加起來再除以單詞數,就可以得到句子向量。這樣處理之後可以拿去給分類算法(比如LogisticRegression)訓練,從而對文本進行分類。


2. 還有一種是把句子裏的每個單詞的向量拼接起來,比如每個單詞的維度是1*100

一句話有30個單詞,那麽如何表示這句話的向量呢?

把單詞拼接來,最終得到這句話的向量的維度就是30*100維


3. 我想做的是把句子裏所有的單詞用word2vec模型訓練得到詞向量,然後把這些向量乘以我們之前得到的tfidf值,再把它們加起來除以單詞數,就可以得到句子向量。也就是結合tfidf給單詞加上一個權重,評判一個單詞的重要程度。


4. 最後發現gensim和sklearn都不能滿足我的需求,用python的方法做了一個。


詳情請大家看這裏

使用不同工具計算的tf-idf值對比

https://www.zybuluo.com/lianjizhe/note/1212780

使用不同的方法計算TF-IDF值