野路子程序猿
  • 博客介绍
  • TensorFlow
    • TensorFlow数据读取
    • TensorBoard的使用
  • 弱监督学习
    • 论文: Snorkel DryBell: A Case Study in Deploying Weak Supervision at Industrial Scale
  • NLP之语言模型
    • 统计语言模型
    • 论文: BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
  • NLP之关键词提取
    • 改进TF-IDF算法
    • 论文: 基于文档主题结构的关键词抽取方法研究
      • 1. 引言
      • 2. 基于文档内部信息构建主题的关键词抽取方法
      • 3. 基于隐含主题模型构建主题的关键词抽取方法
      • 4. 利用隐含主题模型和文档结构的关键词抽取方法
      • 5. 基于文档与关键词主题一致性的关键词抽取方法
  • 深度学习
    • 《深度学习与神经网络》笔记
      • 1. 使用神经网络识别手写数字
      • 2. 反向传播算法
      • 3. 如何提高神经网络学习算法的效果
      • 4. 神经网络可以实现任意函数的直观解释
      • 5. 深度神经网络学习过程中的梯度消失问题
      • 6. 深度学习
  • RNN
    • RNN常见结构
  • attention机制
    • 简述Attention机制及其在深度学习中的应用
    • 论文: Attention Is All You Need
  • Spark
    • Spark ML下实现的多分类AdaBoost + NaiveBayes算法
  • Python
    • Python函数式编程
  • 线性代数
    • 《Immersive Linear Algebra》笔记
      • 4. 向量叉乘(外积)
  • 机器学习
    • 指数分布族和广义线性回归
    • 条件随机场CRF
    • 信息论基本概念
  • 过拟合
    • Early Stopping
Powered by GitBook
On this page
  • 5.1 词汇差异问题
  • 5.2 基于统计机器翻译词对齐技术的关键词抽取
  • 5.2.1 准备翻译对
  • 5.2.2 机器翻译词对齐模型
  • 5.2.3 基于词对齐技术的关键词抽取方法
  • 5.3 实验结果分析
  • 5.3.1 关键词抽取
  • 5.3.2 关键词生成

Was this helpful?

  1. NLP之关键词提取
  2. 论文: 基于文档主题结构的关键词抽取方法研究

5. 基于文档与关键词主题一致性的关键词抽取方法

Previous4. 利用隐含主题模型和文档结构的关键词抽取方法Next深度学习

Last updated 5 years ago

Was this helpful?

前面三章围绕着如何通过描述文档和关键词各自的主题来计算它们的相似度,但是在模型构建的过程中并没有将文档和关键词的主题一致性引入。

因此本章通过引入翻译词对齐模型考虑文档和关键词主题一致性来进行关键词抽取,该方法既能提高关键词抽取的性能,又能处理关键词抽取时的词汇差异问题。

5.1 词汇差异问题

关键词抽取时经常会存在词汇差异问题,尤其是在短文本场景下,很多候选关键词并不出现在文本中。LDA的方法通过外部文档获取词和文档各自的主题分布,通过主题分布这一中间产物进行比较,避免了直接将文档和关键词本身进行匹配。

但是LDA往往倾向于推荐在主题中经常出现的词,这样会导致推荐的关键词倾向于常用词。

本章利用统计机器翻译的词对齐技术在大规模文档上直接学习文档词和关键词的语义相关信息,在关键词分配的时候在文档和给定关键词之间建立语义映射。

5.2 基于统计机器翻译词对齐技术的关键词抽取

主要步骤:

  • 准备翻译对, <D,T><D, T><D,T>

  • 训练翻译模型,得到词对齐概率 Pr<D,T>(t∣w)Pr_{<D,T>}(t|w)Pr<D,T>​(t∣w),其中w是源文档中的词,t是目标文档中的词

  • 利用翻译模型抽取关键词,计算关键词p对于文档d的重要性

5.2.1 准备翻译对

既然是翻译模型,那第一步就是明确翻译的源内容和目标内容并且准备翻译对。这里考虑了两种方案:

  • 文档-标题

  • 文档-摘要

由于词对齐模型通常要求两端的文本长度相差不大,但是无论是使用文档和标题,还是使用文档和摘要都存在长度相差过大的问题,因此作者提出了两种方案得到长度一致的翻译对。

基于抽样的方法

利用tfidf对文档的词进行加权,按照权重进行采样得到和标题长度相当的内容

基于分割的方法

将文档进行分句或者分段,利用语义相似度得到和标题语义最相似的文本。

5.2.2 机器翻译词对齐模型

细节就不说了,反正最终可以得到词到词的一个概率Pr(t|w)

5.2.3 基于词对齐技术的关键词抽取方法

给定文档d,计算其关键词重要性就是要计算 Pr(p∣d)=∑t∈p∑w∈dPr(t∣w)Pr(w∣d)Pr(p|d) = \sum_{t\in p}\sum_{w\in d}Pr(t|w)Pr(w|d)Pr(p∣d)=∑t∈p​∑w∈d​Pr(t∣w)Pr(w∣d)

这里Pr(w|d)可以看作是文档d中词w的权重,使用tfidf值来代替,Pr(t|w)就是翻译模型学习到的词对齐概率,最后把候选关键词p中的每个词t的得分加起来就是p的最终得分。

5.3 实验结果分析

5.3.1 关键词抽取

对比了前几节的效果,基于翻译模型词对齐进行关键词抽取的方法要好于所有其他模型,这表明从翻译的角度看待文档-关键词的关系是可行的。

而且最主要的是在于,当候选词不出现在文档中时,即存在词汇差异时,tfidf和textrank都无能为力。LDA则是从主题的层面利用外部信息,但是隐含主题往往粒度较粗。基于词对齐的关键词抽取方法能够更好地解决关键词的词汇差异问题。

“文档-标题“相对于“文档-摘要“来说训练的效果更好,这说明标题比摘要更符合关键词语言,毕竟标题更加精炼。

最后,分割方法比抽样方法效果要优。这个原因在于分割方法能够产生比抽样方法更多的有效翻译对。

标题或摘要不存在的情况

实际用的时候肯定存在大量的只有文档没有标题和摘要的情况,关于如何抽取关键句子作为“标题“,作者给出了两种方案:

  • 选择文档第一句作为关键句

  • 将每句话和文档进行语义比较,选择最接近的句子

虽然实验下来第一种方法居然更好一点,但是第二种显然更普适。第一种效果好主要是因为新闻数据集中,第一句话往往是最重要的句子。

5.3.2 关键词生成

关键词生成和抽取最大的区别在于,生成场景下