利用TF-IDF 提取文章关键词
来源:互联网 发布:网络的利与弊作文1000 编辑:程序博客网 时间:2024/05/14 07:45
当我们拿到一篇很长的文章的时候,TF-IDF 可以帮助我们确定 文章的关键词,往往比较两篇文章的相似性,我们可以提取出两篇文章的关键词,比如两篇文章各20个关键词,接下来利用余弦相似性(cosine similarity) 就可以确定两篇文章的相似性到底有多高.
什么是TF-IDF(Term Frequency-Inverse Document Frequency):
TF-IDF 的主要思想是:如果某个短语或者某个词在一篇文章中出现的频率TF 高,并且在其它文章中很少出现,那么我们认为该词/短语具有良好的区别能力,适合用来分类.
TF-IDF = TF x IDF, TF 表示某个词在一篇文章中出现的频率, IDF 是逆向文件频率,表示一个词或短语重要性的权重.
如何计算TF-IDF(Term Frequency-Inverse Document Frequency):
词频(TF) = (某个词在文章中出现的次数)/(文章的总词数)
这里会出现一个问题就是你会发现文章中出现的最多的就是“The”, "a", "In" 这列词,对结果毫无帮助,它们叫做“停用词”(Stop words),表示对结果毫无帮助,必须过滤掉的词.
逆文档频率(IDF) = log(语料库的文档总数/(包含该词的文档数 + 1))
语料库用来模拟语言的使用环境.
如果一个词越常见,逆文档频率就越接近于0. 分母加1 是为了避免分母为0的情况(语料库的所有文档都不包含该词).
TF-IDF = TF X IDF
TF-IDF 与一个词的词频成正比,而与该词的权重或者重要性程度成反比. 所以在提取一篇文章的关键词时,我们先去掉停用词,计算文章中每个词的TF-IDF 值,然后按照降序排列,取排在最前面的词.
例子:
文档1 = “Shipment of gold damaged in a fire”
文档2= “Delivery of silver arrived in a silver truck”
文档3= “shipment of gold arrived in a truck”
第一步(去掉停用词):
文档1 = “Shipment gold damaged fire”
文档2 = “Delivery silver arrived silver truck”
文档3 = “Shipment gold arrived truck”
第二步(英文单词词干化)
可选,在这里可以使用NTLK 来做英文单词的词干化. NTLK 提供了好几个相关的工具接口供使用,比如 Lancaster Stemmer, Porter Stemmer 等.
例如stemmed/stemming/stemmer 词干化后都是单词stem。
如果在比较文章的相似性的时候,可以做下英文单词词干化,这里我们不做,我们只选关键词.
第三步(计算TF):
文档2:
Delivery = 1/5 = 0.2
silver = 2/5 = 0.4
arrived = 1/5 = 0.2
truck = 1/5 = 0.2
第四步(计算IDF):
文档2:
Delivery = log(3/(1+1)) = 0.176
silver = log(3/(1+1)) = 0.176
arrived = log(3/(2+1)) = 0
truck = log(3/(2+1)) = 0
第五步(计算TF X IDF):
Delivery = 0.2 x 0.176 = 0.0352
silver = 0.4 x 0.176 = 0.0704
arrived = 0
truck = 0
那么对于文档2来说,silver 和Delivery 能用来区分文档2 和其它文档的相似度的.
好了,TF-IDF 就讲到这里,下次可以讲下 用TF-IDF 和 余弦相似度来计算文档的相似度.
- 利用TF-IDF 提取文章关键词
- TF-IDF提取文章关键词算法
- TF-IDF提取关键词
- TF-IDF提取关键词
- tf-idf使用-提取文章关键词-搜索文章
- TF-IDF 提取文本关键词
- TF-IDF:自动提取关键词
- TF-IDF自动提取关键词
- TF-IDF自动提取关键词
- tf-idf关键词提取算法
- 从提取网页关键词到TF-IDF
- 51、tf-idf值提取关键词
- TF-IDF关键词提取方法的学习
- TF-IDF与余弦相似性文本处理:自动提取关键词、找出相似文章
- 文章提取关键词_jieba(IF-IDF/TextRank)
- TF-IDF与余弦相似性的应用:自动提取关键词
- TF-IDF提取关键词并用余弦算法计算相似度
- 数据挖掘算法:tf-idf*(自动提取关键词)
- spring 国际化配置
- ubuntu安装软件失败
- ArcGIS教程:创建“隐形”图层
- sqlServer 2008 重建sa
- linux关于tomcat的一些命令笔记
- 利用TF-IDF 提取文章关键词
- IOS中的结构体保存到数组与读取
- spring security实现传参
- Shell脚本通过参数传递调用指定函数
- libnml 通信
- 超越Objective-C,超越Swift
- HttpClient使用详解
- Android - TabHost 选项卡功能用法布局详细讲解(1)
- Power平台安装Redhat/SUSE Linux时引导报错解决方案