TF-IDF(term frequency–inverse document frequency)是一种用于信息检索与数据挖掘的经常使用加权技术。搜索引擎
1.什么是TF-IDF
TF-IDF是一种
统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增长,但同时会随着它在
语料库中出现的频率成反比降低。TF-IDF加权的各类形式常被
搜索引擎应用,做为文件与用户查询之间相关程度的度量或评级。除了TF-IDF之外,因特网上的搜索引擎还会使用基于连接分析的评级方法,以肯定文件在搜寻结果中出现的顺序。
TFIDF的主要思想是:若是某个词或短语在一篇文章中出现的频率TF高,而且在其余文章中不多出现,则认为此词或者短语具备很好的类别区分能力,适合用来分类。TFIDF其实是:TF * IDF,TF词频(Term Frequency),IDF反文档频率(Inverse Document Frequency)。TF表示词条在文档d中出现的频率。
2.TF-IDF原理
TFIDF的主要思想是:若是某个词或短语在一篇文章中出现的频率TF高,而且在其余文章中不多出现,则认为此词或者短语具备很好的类别区分能力,适合用来分类。TFIDF其实是:TF * IDF,TF词频(Term Frequency),IDF逆向文件频率(Inverse Document Frequency)。TF表示词条在文档d中出现的频率。
IDF的主要思想是:若是包含词条t的文档越少,也就是n越小,IDF越大,则说明词条t具备很好的类别区分能力。若是某一类文档C中包含词条t的文档数为m,而其它类包含t的文档总数为k,显然全部包含t的文档数n=m+k,当m大的时候,n也大,按照IDF公式获得的IDF的值会小,就说明该词条t类别区分能力不强。可是实际上,若是一个词条在一个类的文档中频繁出现,则说明该词条可以很好表明这个类的文本的特征,这样的词条应该给它们赋予较高的权重,并选来做为该类文本的特征词以区别与其它类文档。这就是IDF的不足之处. 在一份给定的文件里,词频(term frequency,TF)指的是某一个给定的词语在该文件中出现的频率。这个数字是对词数(term count)的归一化,以防止它偏向长的文件。(同一个词语在长文件里可能会比短文件有更高的词数,而无论该词语重要与否。)
对于在某一特定文件里的词语来讲,它的重要性(词频term frequency,TF)可表示为:
- 分子是该词在文件中的出现次数,
- 分母是在文件中全部字词的出现次数之和。
某一特定词语的IDF,能够由总文件数目除以包含该词语之文件的数目,再将获得的商取
对数获得:
-
|D|:语料库中的文件总数
-
包含词语的文件数目(即的文件数目)
某一特定文件内的高词语频率,以及该词语在整个文件集合中的低文件频率,能够产生出高权重的TF-IDF。所以,TF-IDF倾向于过滤掉常见的词语,保留重要的词语。
3.For example:
假如一篇文件的总词语数是100个,而词语“母牛”出现了3次,那么“母牛”一词在该文件中的词频就是 0.03 (3/100)。一个计算文件频率 (DF) 的方法是测定有多少份文件出现过“母牛”一词,而后除以文件集里包含的文件总数。因此,若是“母牛”一词在1,000份文件出现过,而文件总数是 10,000,000份的话,其文件频率就是 0.0001 (1000/10,000,000)。最后,TF-IDF分数就能够由计算词频除以文件频率而获得。以上面的例子来讲,“母牛”一词在该文件集的TF- IDF分数会是 300 (0.03/0.0001)。这条公式的另外一个形式是将文件频率取对数。