【FocusSpider】TF-IDF算法

TF-IDF(term frequency–inverse document frequency)是一种用于信息检索与数据挖掘的经常使用加权技术。图片

用于评估一个词对于一个文件或者一个语料库中的其中一份文件的重要程度。文档

字词的重要性随着它在文件中出现的次数成正比增长,但同时会随着他在语料库中出现的频率成反比降低。it

原理: 若是某个词或短语在一篇文章中出现的频率TF高,而且在其余文章中不多出现,则认为此词或者短语具备很好的类别区分能力,适合用来分类。数据挖掘

TF*IDF原理

TF 词频 :表示词条在文档 d 中出现的频率 IDF(逆向文件频率) 包含词条 t 的文档越少,也就是 n 越小, IDF 越大,则说明 t 具备很好的类别区分能力。搜索

缺点:若是某一类文档 C 中包含词条 t 的文档数为 m ,其余类包含 t 的文档总数为 k ,显然全部包含 t 的文档书 n=m+k ,当 m 大的时候,n 也大,IDF值变小,说明 词条 t 的类别区分能力不强,可是实际上,若是某一词条在 一个类的文档中出现频率较高,则该词条可以很好的表明这个类的文本的特征。这样的词条应该给予较高的权重。im

词频: 防止其偏向较长的文件,实现归一化。 分子是该词在文件中的出现次数,而分母则是在文件中全部字词的出现次数之和。技术

输入图片说明

或者数据

输入图片说明

逆向文件频率(inverse document frequency,IDF)是一个词语广泛重要性的度量。某一特定词语的IDF,能够由总文件数目除以包含该词语之文件的数目,再将获得的商取对数获得:img

输入图片说明

计算 TF*IDF

输入图片说明

以《中国的蜜蜂养殖》为例,假定该文长度为1000个词,"中国"、"蜜蜂"、"养殖"各出现20次,则这三个词的"词频"(TF)都为0.02。而后,搜索Google发现,包含"的"字的网页共有250亿张,假定这就是中文网页总数。包含"中国"的网页共有62.3亿张,包含"蜜蜂"的网页为0.484亿张,包含"养殖"的网页为0.973亿张。则它们的逆文档频率(IDF)和TF-IDF以下:

输入图片说明

相关文章
相关标签/搜索