基于短语主题评分的科技文献关键词抽取算法

1. 问题背景

科技文献关键词抽取任务是科技文献内容分析中的一项基础任务。通过对科技文献进行关键词抽取,研究人员可以获得语料的中心内容和语义表达,借此进一步完成文本检索、文本分类和聚类等处理任务。

在科技文献语料中,科技文献的关键词有时受标注个数的限制,只能标注少量的关键词(例如有些会议论文限制作者标注关键词的个数),少量的关键词并不能完全概括文献所要表达的意思,因此研究合适的算法抽取关键词具有重要意义。

2. 问题分析

关键词抽取方法很多,关键步骤为候选关键词的抽取和推荐候选关键词。在推荐候选关键词阶段主要分为有监督方法和无监督方法。有监督方法需要训练语料,给研究人员带来难度,因此无监督方法研究较多。

通过对科技文献语料进行分析,得到语料的两个特点。其一,科技文献篇幅普遍较长(除去只从论文的摘要中抽取关键词情况),导致抽取的候选关键词数目较多,加大了抽取关键词的难度,因此如何从抽取的候选关键词中再进行筛选是本文需要考虑的问题。其二,科技文献不同于微博和博客等个人表达色彩较为浓厚的语料,其专业性强,有着明确的写作逻辑,主要围绕一个或几个主题进行叙述展开,关键词之间联系较为紧密,因此抽取关键词时必须要关注文献的主题信息。

3. 系统总体架构/算法总体流程

本文的基于短语主题评分的科技文献关键词抽取算法总体流程如图3.1所示。主要分为语料预处理、文本主题建模、基于短语的主题权重PageRank算法和最终关键词抽取步骤。

图3.1 算法总体框架

4. 技术实现方案与优化

具体实现主要从四个模块展开:语料预处理、文本主题建模、基于短语的主题权重PageRank算法和最终关键词抽取模块。

4.1 语料预处理

算法的语料预处理阶段需要从语料中抽取出每篇文档的候选关键词,以便进行后述的推荐候选关键词任务。语料预处理阶段主要分为五大块:分词、去除停用词、抽取词干、词性标注以及候选关键词抽取。前四项均是自然语言处理领域较为常见的文本处理任务,候选关键词抽取包括初步候选关键词抽取以及候选关键词筛选两步。

初步候选关键词抽取主要是抽取形容词名词对作为初步候选关键词,本文算法选用的模式为若干个形容词后接至少一个名词的名词性短语。得到初步候选关键词后,选择长度不大于5的候选关键词;对于抽取的长度为1的候选关键词,去除在文档中出现次数小于一定阈值(阈值指关键词在文档中出现的次数)的关键词。

4.2 文本主题建模

利用LDA对文档进行主题建模,得到文档-主题分布以及主题-单词分布,同时将候选关键词化分到不同的主题中,并得到候选关键词和主题的相关程度。定义关键词\(r_{i}\)和主题Z的关系\(c(r_{i}|z)\)如公式 (4-1) 所示。

4.3 基于短语的主题权重PageRank算法

基于短语的主题权重PageRank算法分为两个阶段:构建权重短语图和运行主题权重PageRank算法。

当LDA主题模型训练完成之后,本文定义了短语和主题之间相关程度的度量公式,如公式 (4-1) 所示,以此作为此候选关键词在这个主题上的初始权重。同时通过LDA模型训练可以得到文档的主题分布\(p(z|d)\)。定义候选关键词之间的距离如公式 (4-2) 所示。

其中,\(pos(r_{i})\)表示短语\(r_{i}\)在文档中出现的位置。在每个文档的相关主题上,由候选关键词在每个主题的初始权重和候选关键词之间的近似距离本文可以构建主题的权重短语图,完成基于短语的主题权重PageRank第一阶段工作。

权重短语图构建之后,下一阶段是运行主题权重PageRank算法。本文的主题权重PageRank算法将候选关键词和主题的相关程度作为其初始PR值。同时定义顶点\(r_{i}\)在主题Z下的PR值计算公式如 (4-3) 所示。

其中,\(c_{z}(r_{i})\)表示候选关键词\(r_{i}\)的初始权重值,\(s(r_{i})\)表示指向顶点\(r_{i}\)的顶点集合,\(O(r_{j})\)表示顶点\(r_{j}\)的出度,根据公式 (4-3) 算法可以得到主题相关的候选关键词\(r_{i}\)在此主题下的重要性打分\(PR_{z}(r_{i})\)。由此完成算法的第二阶段,得到每个主题下候选关键词的打分。

4.4 最终关键词抽取

对所有的文档相关主题的候选关键词打分进行加权汇总即可得到最终的关键词。在实验过程中,如果文档d不属于主题Z,将其主题分布值\(p(z|d)\)直接标记为0,加权汇总公式如公式 (4-4) 所示。

其中,K表示所有的主题数。得到所有的候选关键词的重要性分数s之后,选取重要性高的词语作为文档的推荐关键词,由此完成科技文献关键词抽取任务。

5. 性能评估分析

算法选取关键词抽取领域中的经典评价标准准确率P (P: Precision)、召回率R (R: Recall)和F值 (F-measure)来评估算法性能,其计算公式如公式 (5-1) 所示:其中\(C_{correct}\)代表抽出的正确的关键词数目,\(C_{extract}\)代表着抽出的总的关键词数目,\(C_{standard}\)代表着实际标注的关键词数目。

算法在SemEval数据集和Krapivin数据集上进行分析,分析算法的参数对抽取结果的影响以及将算法和其他优秀的关键词抽取算法进行对比。主要进行以下四个方面的分析:(1) 具体分析候选关键词筛选阶段的阈值设置对算法性能的影响;(2) 设置不同的PageRank 阻尼系数值来观察其对最终关键词抽取性能的影响;(3) 通过设置不同的主题数来观察不同主题数对于关键词抽取的影响;(4) 将本文提出的算法和其他较好的关键词抽取算法进行性能对比,分析本文算法的性能。在本文的实验分析中,抽取关键词的个数均为10。

5.1 候选关键词筛选阶段阈值设置实验结果分析

阈值指关键词在文档中出现的次数,此阈值设置只针对抽取的长度为1的候选关键词。SemEval和Krapivin的阈值设置实验结果如表5.1所示。

表5.1 不同阈值的关键词抽取实验结果

5.2 PageRank阻尼系数值实验结果

通过设置PageRank不同的阻尼系数值,观察其对最终实验结果抽取影响,实验结果如表5.2所示。结果表明,阻尼系数值设置在0.8附近抽取结果较好。

表5.2 不同阻尼系数值实验结果

5.3 不同主题数目实验结果

通过设置不同的主题数,观察其对最终实验结果抽取影响,实验结果如表5.3所示。实验结果表明主题数变化时,关键词抽取结果相对而言较为稳定。

表5.3 不同主题数目实验结果

5.4 Baseline算法对比

将本文算法和TextRank算法以及TopicRank算法进行对比,评价标准为F-measure值(%),实验结果如表5.4所示。结果表明,本文提出的算法有着优良的抽取效果。

表5.4 不同算法抽取结果对比

6. 总结

基于短语主题评分的科技文献关键词抽取算法结合科技文献语料主题性强的特点,并考虑到现实世界中关键词的构造特点,以抽取的短语为候选对象并引入文档主题信息进行关键词抽取工作。通过实验分析了算法各个参数对于最后抽取性能的影响,同时通过实验证明此关键词抽取算法相比于TextRank和TopicRank算法在SemEval和Krapivin数据集上抽取效果提升显著。