博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TFIDF<细读>
阅读量:5315 次
发布时间:2019-06-14

本文共 1019 字,大约阅读时间需要 3 分钟。

概念

     TF-IDF(term frequency–inverse document frequency)是一种用于资讯检索与资讯探勘的常用加权技术。TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜寻引擎应用,作为文件与用户查询之间相关程度的度量或评级。除了TF-IDF以外,因特网上的搜寻引擎还会使用基于连结分析评级方法,以确定文件在搜寻结果中出现的顺序。

<TF-IDF是一种统计方法,用以评估每个字词对于一个文件集或一个语料库中的其中一份文件的重要程度: 评价一个语料库中的每一个词,对于每个文档的重要性,其中这个语料库是所有文档中词的汇总>

 

原理

      在一份给定的文件里,词频 (term frequency, TF) 指的是某一个给定的词语在该文件中出现的次数。这个数字通常会被归一化(分子一般小于分母 区别于IDF),以防止它偏向长的文件。(同一个词语在长文件里可能会比短文件有更高的词频,而不管该词语重要与否。)归一化,是该词出现的次数除以该文档所有词的个数。

逆向文件频率 (inverse document frequency, IDF) 是一个词语普遍重要性的度量。某一特定词语的IDF,可以由(总文件数目除以包含该词语之文件的数目)>1,再将得到的商取对数得到。

<总文件数目除以包含该词语之文件的数目: 假如一个词在所有文件中都出现,那么这个商就接近1,log后的值接近0,重要度接近0.如果一个词就在很少的文件中出现,那么这个商值很大,就是重要性也很大> ,这样看来,TF-IDF倾向于过滤掉常见的词语,保留重要的词语>

\mathrm{tf_{i,j}} = \frac{n_{i,j}}{\sum_k n_{k,j}}    TF:表达一个词在一个文件的出现频率程度

\mathrm{idf_{i}} =  \log \frac{|D|}{|\{j: t_{i} \in d_{j}\}|}  IDF:表达一个词在所有文件份中出现的频率程度

|D|:语料库中的文件总数

  • |\{ j: t_{i} \in d_{j}\}|:包含词语t_{i}的文件数目(即n_{i,j} \neq 0的文件数目)如果该词语不在语料库中,就会导致被除数为零,因此一般情况下使用1 + |\{j : t_{i} \in d_{j}\}|

\mathrm{tf{}idf_{i,j}} = \mathrm{tf_{i,j}} \times  \mathrm{idf_{i}}

某一特定文件内的高词语频率,以及该词语在整个文件集合中的低文件频率,可以产生出高权重的TF-IDF

 

因此,TF-IDF倾向于过滤[通过设置TFIDF值的阈值]常见的词语,保留重要的词语。

 

 

转载于:https://www.cnblogs.com/liang2713020/p/7693648.html

你可能感兴趣的文章
通过httplib2 探索的学习的最佳方式
查看>>
快来熟练使用 Mac 编程
查看>>
Node.js 入门:Express + Mongoose 基础使用
查看>>
一步步教你轻松学奇异值分解SVD降维算法
查看>>
使用pager进行分页
查看>>
UVA - 1592 Database
查看>>
Fine Uploader文件上传组件
查看>>
javascript中的传递参数
查看>>
objective-c overview(二)
查看>>
python查询mangodb
查看>>
驱动的本质
查看>>
Swift的高级分享 - Swift中的逻辑控制器
查看>>
Swagger简单介绍
查看>>
Python数据分析入门案例
查看>>
vue-devtools 获取到 vuex store 和 Vue 实例的?
查看>>
内存地址对齐
查看>>
JavaScript介绍
查看>>
yum 命令跳过特定(指定)软件包升级方法
查看>>
创新课程管理系统数据库设计心得
查看>>
Hallo wolrd!
查看>>