文本分析——分配單詞權重

前言

文本處理中不少時候會須要給每一個單詞分配權重,有了權重以便後續進一步處理。經常使用的算法主要是TF-IDF。git

TF

TF,即Term Frequency。咱們能夠將文檔當作由若干詞(term)組成,那麼文檔中某個term出現的頻率就是TF。詞頻和詞權重存在關係,能夠用來做爲詞權重的衡量因素之一。github

IDF

IDF,即Inverse Document Frequency。TF算法存在一個問題:好比某文檔中多個term出現的次數相同,則很差判別他們之間哪一個更重要。所以又引入逆文檔頻率(IDF),某個term的IDF可定爲:算法

IDF = log(\frac{T}{t})
複製代碼

其中,T爲統計樣本中總文檔數,t爲包含某term的文檔數。由此說明包含某term的文檔數越多,該term越不重要。併發

獲取IDF方式

其實有幾種方式來統計IDF。機器學習

  • 本身收集樣本庫進行統計。
  • 第三方統計好的IDF表。
  • 藉助百度或谷歌搜索引擎,這種方式不許確。隨便取個m值假設爲總文檔,再搜索某個term獲得n條結果,則認爲n除以m即爲IDF。

TF-IDF

有了前面的TF和IDF就能夠經過他們一塊兒決定某個Term的權重。定義TF-IDF爲TF乘以IDF。分佈式

實現代碼

https://github.com/sea-boat/nlp_lab/tree/master/tf_idf學習

-------------推薦閱讀------------搜索引擎

個人2017文章彙總——機器學習篇spa

個人2017文章彙總——Java及中間件.net

個人2017文章彙總——深度學習篇

個人2017文章彙總——JDK源碼篇

個人2017文章彙總——天然語言處理篇

個人2017文章彙總——Java併發篇

------------------廣告時間----------------

公衆號的菜單已分爲「分佈式」、「機器學習」、「深度學習」、「NLP」、「Java深度」、「Java併發核心」、「JDK源碼」、「Tomcat內核」等,可能有一款適合你的胃口。

鄙人的新書《Tomcat內核設計剖析》已經在京東銷售了,有須要的朋友能夠購買。感謝各位朋友。

爲何寫《Tomcat內核設計剖析》

歡迎關注:

這裏寫圖片描述
相關文章
相關標籤/搜索