非主流自然语言处理——遗忘算法系列(四):关键词提取

来源:互联网 发布:首席数据官实战 编辑:程序博客网 时间:2024/05/02 05:07


一、前言


  前文介绍了利用词库进行分词,本文介绍词库的另一个应用:词权重计算。


二、词权重公式

  1、公式的定义

    定义如下公式,用以计算词的权重:

    

  2、公式的由来

    在前文中,使用如下公式作为分词的依据:

    

    任给一个句子或文章,通过对最佳分词方案所对应的公式进行变换,可以得到:

     


    按前面权重公式的定义,上面的公式可以理解为:一个句子出现的概率对数等于句子中各词的权重之和。

    权重公式前的负号是想使权重是个正值。


三、与TF-IDF的关系

    词频、逆文档频率(TF-IDF)在自然语言处理中,应用十分广泛,也是提取关键词的常用方法,公式如下:

    


    从形式上看,该公式与我们定义的权重公式很像,而且用途也近似,那么它们之间有没有关系呢?

    答案是肯定的。


    我们知道,IDF是按文档为单位统计的,无论文档的长短,统一都按一篇计数,感觉这个统计的粒度还是比较粗的,有没有办法将文本的长短,这个明显相关的因素也考虑进去呢,让这个公式更加精细些?

    答案也是肯定的。


    文章是由词铺排而成,长短不同,所包含的词的个数也就有多有少。

    我们可以考虑在统计文档个数时,为每个文档引入包含多少个词这样一个权重,以区别长短不同的文档,沿着这个思路,改写一下IDF公式:

        

    我们用所有文档中的词做成词库,那么上式中:

    

    综合上面的推导过程,我们知道,本文所定义的词权重公式,本质上是tf-idf为长短文档引入权重的加强版,而该公式的应用也极为简单,只需要从词库中读取该词词频、词库总词频即可。

    时间复杂度最快可达O(1)级,比如词库以Hash表存储。

    

    关于TF-IDF更完整的介绍及主流用法,建议参看阮一峰老师的博文《TF-IDF与余弦相似性的应用(一):自动提取关键词》。


四、公式应用

    词权重用途很广,几乎词袋类算法中,都可以考虑使用。常见的应用有:

     1、关键词抽取、自动标签生成

        作法都很简单,分词后排除停用词,然后按权重值排序,取排在前面的若干个词即可。

     2、文本摘要

        完整的文本摘要功能实现很复杂也很困难,这里所指,仅是简单应用:由前面推导过程中可知,句子的权重等于分词结果各词的权重之和,从而获得句子的权重排序。

     3、相似度计算

        相似度计算,我们将在下一篇文中单独介绍。


五、演示程序


  在演示程序显示词库结果时,是按本文所介绍的权重公式排序的。

  演示程序与词库生成的相同:

  下载地址:遗忘算法(词库生成、分词、词权重)演示程序.rar



六、技术交流及业务

  本系列文以介绍各项基础技术的实现为主,更多综合应用或项目开发,请移步入群或联系本人:

  

  1、技术QQ群: 217947873
  2、联系方式:

    2.1、QQ:老憨  244589712

    2.2、邮箱:gzdmcaoyc@163.com








1 0
原创粉丝点击