Automated Phrase Mining from Massive Text Corpora 论文解读


论文:Automated Phrase Mining from Massive Text Corpora

工具:https://github.com/shangjingbo1226/AutoPhrase

论文核心思想: 自动短语挖掘

AutoPhrase可以支持任何语言,只要该语言中有通用知识库。与当下最先进的方法比较,新方法在跨不同领域和语言的5个实际数据集上的有效性有了显著提高。

  • 输入:语料库(特定语言和特定领域的文本单词序列,长度任意)和知识库
  • 输出:一个按质量递减排列的短语列表

 

算法概览:

1)利用已有的知识库(如Wikipedia)做远程监督训练

Step1: 根据输入语料和知识库构建训练样本

  • 对语料进行n-gram,然后得到高频n-gram
  • 对高频的n-gram,如果该n-gram在Wikipedia的词条中,该n-gram就作为正样本,反之,该n-gram就作为负样本

Step2: 负样本去躁、训练分类器

有的n-gram是关键短语,但是并不在Wikipedia中,但是在Step1中,我们把它作为负样本了,这种n-gram就成为了负样本中的噪音

解决方案:使用一个集成分类器来解决,这种方法最大程度上减轻噪声对训练的影响,论文中用的是随机森林

  • 对每一个基本分类器,从positive pool 和 negative pool 各抽取 K 个样本,即2K个样本作为一个扰动数据集
  • 在扰动数据集上用不经过裁剪的决策树进行训练,假设在扰动数据集上负样本的噪音个数为δ,只要不存在特征完全相同的正样本和负样本,模型在扰动数据集上能够取得100%准确率,由于δ是噪音,所以最理想的准确率是1-δ/2K(在论文中,δ/2K约等于10%,所以最佳准确率为90%,就是每个基分类器完全过拟合的情况下准确率是90%)
  • 随机森林中的决策树判断比例作为分数(投票比例)

 

Step3:  对输入语料中的高频n-gram进行分类,得到n-gram是质量短语的评估score

2) POS-Guided短语分割

目的:利用词性信息来增加抽取的准确性 

  •  Eg: 如果连续三个名词相连,那么很有可能是高质量短语,名词+动词大概率不是一个质量短语(主谓结构)

核心思想:根据词性进行分割,将文本划分成若干个短语(有点类似中文分词得意思,只不过分的是短语,因为前面我们得到的n-gram可能是一个不成词没有意义的序列)

  • 输入:词性序列Ω、第一次质量短语评估的score
  • 输出:根据词性分割的边界序列B

使用最大似然法:

在给定词性序列Ω 的情况下,每个片段是高质量短语的概率乘积是最大的,那么就是最优分割

 

 3)短语质量评估score修正

经过POS-Guided分割之后,对短语质量进行第二次评估,修正第一次评估的score,选取修正后的score比较高的作为质量短语输出

 

posted @ 2021-01-25 16:01  【铅笔小新】  阅读(632)  评论(0编辑  收藏  举报