本节目标:
1、了解TF-IDF的概念
2、掌握TF-IDF的原理
3、掌握TF-IDF算法的Hadoop实例开发
1 概念
TF-IDF(term frequency–inverse document frequency)是一种用于资讯检索与资讯探勘的常用加权技术。TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜寻引擎应用,作为文件与用户查询之间相关程度的度量或评级。除了TF-IDF以外,因特网上的搜寻引擎还会使用基于连结分析的评级方法,以确定文件在搜寻结果中出现的顺序。
2 原理
TFIDF的主要思想:如果某个词或短语在一篇文章中出现的频率,也就是词频TF高,而在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。
词频 (term frequency, TF) 指在一个给定文件中,某一特定词在该文件中的次数。假如一篇文件的总词语数是100个,而词语“电商”出现了3次,那么“电商”一词在该文件中的词频就是3/100=0.03。
以上式子中 ni,j 是指特定词i在文件j中的词数,而分母是指文件j中的总词数。
逆向文件频率 (inverse document frequency, IDF) 是一个词语普遍重要性的度量。如果包含词条t的文档越少,IDF越大,则说明词条t具有很好的类别区分能力。某一特定词语的IDF,可以由语料库中的总文件数目除以包含该特定词文件的数目,再将得到的商取对数。如果“电商”一词在1,000份文件出现过,而语料库中总文件数是10,000,000的话,其逆向文件频率就是 log(10,000,000 / 1,000)=4。