跳到主要内容

tf-idf

  • TF-IDF - Term Frequency–Inverse Document Frequency
  • IDF - 逆向文件频率
  • 过滤掉常见的词语,保留重要的词语。
  • 假设
    • 一个单词出现的文本频数越小,它区别不同类别文本的能力就越大。
  • 词频率
    • 单个文件 - 正比
    • 资料库 - 反比
tf-idf(w,d,D)=tf(w,d)idf(w,D)=N(w,d)logD{dD:wD}\begin{alignat*}{2} \text{tf-idf}({\color {green} w}, d, D) &= \text{tf}({\color {green} w},d) \cdot \text{idf}({\color {green} w},D)\\ &= \text N({\color {green} w},d) \cdot \text{log} \frac {|D|} {|\{ d \in \text D: {\color {green} w} \in \text D \}|} \end{alignat*}
  • w\color{green} w - 单个词
  • dd - 单个文档
  • DD - 所有文档
  • tf(w,d)=N(w,d)\text{tf}(w,d) = \text N(w,d)
    • wwdd 文档中的数量
    • 词频 - term frequency
  • idf(w,D)\text{idf}(w,D)
    • ww 在整个资料库中的数量
    • IDF - 逆向文件频率
      • 数量越高,权重越低
Demo
  • 科技 这个词 在有 1000 个词的文章中出现了 10
    • TF=1000/10=0.01
  • 科技 这个词在所有的 100 篇文章中有 10 篇文章包含了
    • IDF=log10(100/10)=1
  • TF-IDF=0.01*1=0.01