关键词采集文章(TF-IDF是如何判断并提取文章关键词的密度和布局设置的)
优采云 发布时间: 2021-12-02 05:17关键词采集文章(TF-IDF是如何判断并提取文章关键词的密度和布局设置的)
最近在培训公司的编辑和优化人员的时候,谈到文章关键词的密度和布局设置时,有SEOer问:“搜索引擎如何判断和提取文章关键词?” 关于这个问题,虽然不清楚百度用什么技术提取关键词,但马海翔知道一种利用TF-IDF和余弦相似度自动提取关键词的技术的方法,简单来说术语,针对的是很长的文章,如果你想用电脑提取它只需要关键词(Automatic Keyphrase Extraction),完全不用人工干预的情况下,有什么样的技术原理可以用来做正确的事吗?
一、什么是TF-IDF?
TF-IDF(词频-逆文档频率)是一种常用的信息检索和信息探索加权技术。TF-IDF 是一种统计方法,用于评估单词对文档集或语料库中文档的重要性。一个词的重要性与它在文档中出现的次数成正比,但同时与它在语料库中出现的频率成反比下降。搜索引擎经常使用各种形式的 TF-IDF 加权作为文档和用户查询之间相关程度的度量或评级。除了TF-IDF,互联网上的搜索引擎还使用基于链接分析的评级方法来确定文件在搜索结果中出现的顺序。
TF-IDF原理
在给定的文档中,词频 (TF) 是指给定单词在文档中出现的次数。这个数字通常被标准化以防止它偏向于更长的文件。(同一个词在长文档中可能比在短文档中出现的频率更高,不管这个词的重要性如何。)
逆文档频率 (IDF) 是衡量单词普遍重要性的指标。特定词的IDF可以通过将文档总数除以收录该词的文档数,然后对得到的商取对数来获得。
特定文件中词的高频度和整个文件集合中词的低频度可以产生高权重的TF-IDF。因此,TF-IDF 倾向于在文档中保留更多的特殊词并过滤常见词。
二、搜索引擎自动提取文章关键词的原理
这道题涉及到数据挖掘、文本处理、信息检索等诸多计算机前沿领域,但出乎意料的是,有一个非常简单的经典算法,可以给出中规中矩的结果。简单到不需要高深的数学,普通人只要10分钟就能看懂。这就是我今天要在马海翔的博客上介绍的TF-IDF算法。
首先,马海翔开始用一个例子告诉大家。假设有一篇长篇文章《中国的养蜂业》,我们要用电脑提取它的关键词。
一个简单的思考方法是找到最常出现的词。如果一个词很重要,它应该在这个文章中出现多次。因此,我们进行“词频”(Term Frequency,缩写为TF)统计。
结果,你一定已经猜到,最常用的词是----“的”、“是”、“在”----这一类中最常用的词。它们被称为“停用词”,意思是对查找结果没有帮助的词,必须过滤掉。
假设我们过滤掉它们,只考虑剩下的有意义的词。这样,我们可能会遇到另一个问题。我们可能会发现“China”、“bee”和“farming”三个词出现的次数相同。
这是否意味着作为关键词,它们的重要性是一样的?
显然,情况并非如此。因为“中国”是一个很常见的词,相对来说,“蜜蜂”和“耕种”就没有那么常见了。如果这三个词在一篇文章文章中出现的次数相同,可以合理地认为“蜜蜂”和“农业”比“中国”更重要,也就是说,在关键词中排序@> 上面,“蜜蜂”和“育种”应该排在“中国”之前。
因此,我们需要一个重要性调整系数来衡量一个词是否是一个常用词。如果说一个词比较少见,但是在这个文章中出现了很多次,那么马海翔认为可能体现了这个文章的特点,这正是我们所需要的关键词。
用统计语言表达就是根据词频给每个词赋予一个“重要性”权重。最常用的词(“的”、“是”、“在”)权重最小,较常用的词(“中国”)权重较小,不常用的词(“蜜蜂”、“农业”)权重给予更大的权重。这个权重被称为“逆文档频率”(Inverse Document Frequency,缩写为IDF),它的大小与一个词的通用性成反比。
知道“词频”(TF)和“逆文档频率”(IDF)后,将这两个值相乘,得到一个词的TF-IDF值。一个词对文章的重要性越高,它的TF-IDF值就越大。所以前几个字就是这个文章的关键词。
下面马海翔将为大家详细介绍一下这个算法的细节:
第一步:计算词频
考虑到文章的长短不一,不足之处,为了便于比较不同的文章,规范“词频”。
或者
步骤 2:计算逆文档频率
这时候就需要一个语料库来模拟语言环境。
如果一个词比较常见,分母就越大,逆文档频率越小,越接近0。分母加1的原因是为了防止分母为0(即所有文档不收录单词)。log 表示对得到的值取对数。
第 3 步:计算 TF-IDF
从上面的公式可以看出,TF-IDF与一个词在文档中的出现次数成正比,与该词在整个语言中的出现次数成反比。所以自动抽取关键词的算法很明确,就是计算文档中每个词的TF-IDF值,然后降序排序,取前几个词。
在这里,马海翔依然以《中国养蜂》为例。假设文章长度为1000字,“中国”、“蜜蜂”、“农业”各出现20次,那么这三个词的“词频”(TF)都是0.02 . 然后通过搜索引擎搜索这个词发现有250亿个网页收录“的”这个词,假设这是中文网页的总数。有62.3亿网页收录“中国”,0.484亿网页收录“蜜蜂”,0.9730亿网页收录“修真”。那么它们的逆文档频率(IDF)和TF-IDF如下:
从上表可以看出,“蜜蜂”的TF-IDF值最高,“农业”次之,“中国”最低。(如果还计算“的”这个词的TF-IDF,会是一个非常接近0的值。)所以,如果只选择一个词,“Bee”就是这个关键词的关键词文章。
马海翔的博客评论:
除了自动提取关键词,TF-IDF算法还可以用在很多地方。例如,在搜索信息时,对于每个文档,可以计算一组搜索词(“China”、“bee”、“farming”)的TF-IDF,将它们相加得到该搜索词的TF-IDF整个文件。以色列国防军。具有最高值的文档是与搜索词最相关的文档。
TF-IDF算法的优点是简单快速,结果更符合实际情况。缺点是单纯用“词频”衡量一个词的重要性不够全面,有时重要的词可能出现的次数并不多。而且,该算法无法反映单词的位置信息。出现在前面位置的词和出现在后面位置的词都被认为具有相同的重要性,这是错误的。但是,一个解决方案是给全文的第一段和每段的第一句更多的权重。