从提取网页关键词到TF-IDF

这个标题看上去好像很复杂,其实是一个很简单的问题。

如果我有一个网页,我要得到这个网页的关键词,要怎么做到呢?

这个问题涉及到数据挖掘、文本处理、信息检索等很多计算机前沿领域,但有一个非常简单的经典算法,却可以给出令人相当满意的结果。这就是TF-IDF算法,这个概念是由剑桥大学计算机女科学家斯巴克 琼斯提出,被认为是信息检索中最重要的发明。

一个容易想到的思路,就是找到该网页中出现次数最多的词。如果某个词很重要,它应该在这篇文章中多次出现。于是,我们进行”词频”(Term Frequency,缩写为TF)统计。

结果你肯定猜到了,出现次数最多的词是”的”、”是”、”在”这一类最常用的词。它们叫做”停止词”(stop word),表示对找到结果毫无帮助、必须过滤掉的词。

我们将网页中去掉停止词后的词作一个统计,得到N个关键词,计算每个词的词频: TF1, TF_{2},…, TFN 。将它们从高到低排序,就得到了我们想要的关键词。

但是这里存在一个问题,比如在一个网页中”偏微分方程”和”世界”的词频一样,从我们直观感受上来讲,这两个词的信息量是不一样的,当看到”偏微分方程”时我们可能想到这个网页和数学有关,但”世界”却让我们完全摸不着头脑。所以我们还需要找一个方法,来衡量一个词的”稀有性”。

我们给每一次词赋一个权重,来衡量一个词是不是常见词。如果某个词比较少见,但是它在这篇文章中多次出现,那么它很可能就反映了这篇文章的特性,正是我们所需要的关键词。

用统计学语言表达,就是在词频的基础上,要对每个词分配一个”重要性”权重。最常见的词(”的”、”是”、”在”)给予最小的权重,较常见的词(”世界”)给予较小的权重,较少见的词(”偏微分方程”)给予较大的权重。这个权重叫做”逆文档频率”(Inverse Document Frequency,缩写为IDF),它的大小与一个词的常见程度成反比。

知道了”词频”(TF)和”逆文档频率”(IDF)以后,将这两个值相乘,就得到了一个词的TF-IDF值。某个词对文章的重要性越高,它的TF-IDF值就越大。所以,排在最前面的几个词,就是这篇文章的关键词。

下面就是这个算法的细节。
第一步,计算词频:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值