Lunski's Clutter

This is a place to put my clutters, no matter you like it or not, welcome here.

0%

Natural language processing

自然語言處理(NLP)的兩大基石

詞袋模型 (Bag-of-Words, BoW)

tfidf> 隨機森林

  • 把文本看作一袋子詞,只在乎詞彙出現頻率,不管順序。
  • 文本分類,信息檢索,LDA(Latent Dirichlet Allocation)

LDA 是一種主題模型 (Topic Model),它屬於無監督學習,也就是說,你不需要事先告訴它每篇文章是關於什麼主題的,它會自己從文本中學習

主要看的是詞彙有沒有出現。如果你的核心就是要找包含「貓」這個詞的內容,BoW 可以很直接地幫你識別。

你可以設計一個基於 BoW 的系統,它給予包含「貓」這個詞的文件極高的權重,或者乾脆只考慮包含「貓」的文件。

缺點是不懂語義但也是某種「優點」,因為它不會主動去聯想「貓」的相關概念,也就比較不容易推薦出那些你想排除的周邊內容。它就像個只認指令的衛兵,指令是「貓」,它就只認「貓」這個字。


詞嵌入模型 (Word Embedding)

GPT 模型> 類神經網路

  • 把詞彙映射到一個低維度、稠密的向量空間,捕捉詞語間的語義關係。
  • 文本分類: 理解語義,優於 BoW,機器翻譯,問答系統,命名實體識別,詞語相似度計算與類比推理,推薦系統,自然語言生成

詞嵌入的強項在於理解語義相似性。它知道「貓」、「小貓」、「寵物」、「貓科動物」甚至可能「波斯貓」、「貓砂」在意義上是接近的。

如果用詞嵌入來做推薦,即使用戶只看了「貓」的內容,模型也很可能會「聰明地」推薦語義上相關的「寵物用品」、「獸醫診所」等。

這在一般情況下是優點(推薦更廣泛、更相關),但在嚴格限制目標條件下,反而成了缺點,它會推薦出你想過濾掉的東西。


如果你覺得這篇文章很棒,請你不吝點讚 (゚∀゚)

Welcome to my other publishing channels