关键词提取就是从文本里面把跟这篇文章意义最相关的一些词语抽取出来,在文献检索、自动文摘、文本聚类/分类等方面有着重要的应用。
关键词提取算法一般分为有监督和无监督两类
有监督的关键词提取方法主要是通过分类的方式进行,通过构建一个较为丰富和完善的词表,然后判断每个文档与词表中每个词的匹配程度,以类似打标签的方式,达到关键词提取的效果。优点是精度较高,缺点是需要大批量的标注数据,人工成本过高,并且词表需要及时维护。
相比较而言,无监督的方法对数据的要求低,既不需要一张人工生成,维护的词表,也不需要人工标注语料辅助训练。目前比较常用的关键词提取算法都是基于无监督算法。如TF-IDF算法,TextRank算法和主题模型算法(包括LSA,LSI,LDA等)
1.TF-IDF算法
TF-IDF是一种数值统计方法,用于反映一个词对于预料中某篇文档的重要性,它的主要思想为:如果某个词在一篇文档中出现的频率高,即TF高;并且在其他文档中很少出现,即IDF高,则认为这个词具有很好的类别区分能力。
TF为词频,表示词t在文档d中出现的频率:tf(word)= (word在文档中出现的次数)/ (文档总词数)
IDF常用的计算公式如下:|D|为文档集中的总文档数,为文档中出现词i的文档数量。分母加1是采用了拉普拉斯平滑,避免有部分新的词没有在语料库中出现过从而导致分母为零的情况。