IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    非主流自然语言处理——遗忘算法系列(四):改进TF-IDF权重公式

    老憨发表于 2016-04-23 03:23:37
    love 0

    一、前言

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

    二、词权重公式

      1、公式的定义
        定义如下公式,用以计算词的权重:
        权重公式
      2、公式的由来
        在前文中,使用如下公式作为分词的依据:
        公式推导
        任给一个句子或文章,通过对最佳分词方案所对应的公式进行变换,可以得到:
        公式推导
        按前面权重公式的定义,上面的公式可以理解为:一个句子出现的概率对数等于句子中各词的权重之和。
        公式两边同时取负号使权重是个正值。

    三、与TF-IDF的关系

      词频、逆文档频率(TF-IDF)在自然语言处理中,应用十分广泛,也是提取关键词的常用方法,公式如下:
      tf-idf
      从形式上看,该公式与我们定义的权重公式很像,而且用途也近似,那么它们之间有没有关系呢?
      答案是肯定的。
      我们知道,IDF是按文档为单位统计的,无论文档的长短,统一都按一篇计数,感觉这个统计的粒度还是比较粗的,有没有办法将文本的长短,这个明显相关的因素也考虑进去呢,让这个公式更加精细些?
      答案也是肯定的。
      文章是由词铺排而成,长短不同,所包含的词的个数也就有多有少。
      我们可以考虑在统计文档个数时,为每个文档引入包含多少个词这样一个权重,以区别长短不同的文档,沿着这个思路,改写一下IDF公式:
      tf-idf
      我们用所有文档中的词做成词库,那么上式中:
      tf-idf
      综合上面的推导过程,我们知道,本文所定义的词权重公式,本质上是tf-idf为长短文档引入权重的加强版,而该公式的应用也极为简单,只需要从词库中读取该词词频、词库总词频即可。
      时间复杂度最快可达O(1)级,比如词库以Hash表存储。
      关于TF-IDF更完整的介绍及主流用法,建议参看阮一峰老师的博文《TF-IDF与余弦相似性的应用(一):自动提取关键词》。

    四、公式应用

        词权重用途很广,几乎词袋类算法中,都可以考虑使用。常见的应用有:
         1、关键词抽取、自动标签生成
            作法都很简单,分词后排除停用词,然后按权重值排序,取排在前面的若干个词即可。
         2、文本摘要
            完整的文本摘要功能实现很复杂也很困难,这里所指,仅是简单应用:由前面推导过程中可知,句子的权重等于分词结果各词的权重之和,从而获得句子的权重排序。
         3、相似度计算
            相似度计算,我们将在下一篇文中单独介绍。

    五、演示程序

      在演示程序显示词库结果时,是按本文所介绍的权重公式排序的。
      演示程序与词库生成的相同:
      下载地址:遗忘算法(词库生成、分词、词权重)演示程序.rar
      特别感谢:王斌老师指出,本文公式实质上是TF-ICF。

    六、联系方式:

      1、QQ:老憨 244589712
      2、邮箱:gzdmcaoyc@163.com

    相关文章:

    1. 非主流自然语言处理——遗忘算法系列(二):大规模语料词库生成
    2. 非主流自然语言处理——遗忘算法系列(三):分词
    3. 非主流自然语言处理——遗忘算法系列(一):算法概述
    4. MIT开放式课程“自然语言处理”介绍
    5. MIT自然语言处理第一讲:简介和概述(第三部分)
    6. MIT自然语言处理第五讲:最大熵和对数线性模型(第二部分)
    7. MIT自然语言处理第一讲:简介和概述(第一部分)
    8. MIT自然语言处理第四讲:标注(第一部分)
    9. ACL Anthology——计算语言学的数字档案
    10. MIT自然语言处理第四讲:标注(第三部分)



沪ICP备19023445号-2号
友情链接