一、TopMine:频率模式挖掘+统计分析
论文:Scalable Topical Phrase Mining from Text Corpora
这项工作主要是对语料库文本的 Topic 进行挖掘。但是它的方法不同于以往采用 Uni-gram 的方法,而是将 Topic 挖掘分成了两个步骤:通过 Phrase Mining 对文本进行分割;随后进行基于 Phrase 约束的 Topic 模型。 这种方法避免了长度同意的 gram 将一个 Phrase 中的 Word 分割开。
1.1 Phrase挖掘
phrase的挖掘需要用到两部分信息,一类是phrase本身的统计量,一类是phrase上下文信息。
1.1.1 phrase字典
这一部分直接使用频次作为过滤条件,生成所有的phrase候选。生成候选的过程中通过「剪枝策略」可以提升生成效率。
1.1.2 上下文信息
二项分布中n很大的时候可以使用正态分布近似,由于 p(P) 一般很小所有 p(P)=p(P)(1−p(P)) ,所以样本方差 σ=Lp(1−p)=Lp。构造了一个类似PMI的指标,用来衡量合并之后的得分。基本流程如下图:
所以形成一个自底向上的树形结构,配合阈值 α控制合并什么时候结束。计算merge得分的公式为:
其中 u0(P1,P2)表示的是 P1和 P2同时出现次数的期望,具体计算方式为:
如果 P1和 P2无关得分接近于0,如果越相关这个数值将越大;如果:
可以发现随着合并:
对于一个论文标题「Markov Blanket Feature Selection for Support Vector Machines」,不同的分割方法可能会将它划分到不同的 Topic 里面,例如仅仅根据「Vector」,可能会把这篇文章划分到数学、物理的 Topic 中。但是显然「Support Vector Machines」是一个整体,它是属于计算机的 Topic。根据上述公式的迭代,则可以将这个标题进行如下的 Phrase 分割。
1.2 主题模型
论文中使用的是LDA,和原始的不同之处就在于为phrase添加的属于同一个topic的约束。具体对比如下图:
二、SegPhrase:弱监督、高质量的 Phrase Mining
论文:Mining Quality Phrases from Massive Text Corpora
TopMine 的方法完全是无监督的,如果有少量的 Label 数据可能会在很大程度上提高 Topic Model 的结果。SegPhrase框架只需要有限的培训,但是生成的短语的质量却接近于人类的判断力。而且,该方法具有可伸缩性:随着语料库大小的增加,计算时间和所需空间都会线性增长。论文在大型文本语料库上的实验证明了该新方法的质量和效率。
segphrase已有GitHub开源工具:https://github.com/shangjingbo1226/SegPhrase
2.1 挖掘流程
1.根据用户需求生成常用短语候选。
2.根据有关一致性和信息要求的特征来估计短语质量。
3.通过短语分段估计校正的频率。
4.将基于整流频率的基于细分的特征添加到短语质量分类器的特征集中。重复步骤2和3。
5.过滤低整流频率的短语,以满足后处理步骤的完整性要求。
2.1.1 频繁的短语检测
利用两个属性有效地挖掘这些常用短语:
1. Downdown Closure属性:如果短语不频繁,则其任何超短语都将保证不频繁。 因此,那些较长的短语将被过滤且永远不会扩展。
2. Prefix属性:如果一个短语很频繁,则其任何前缀单元也应该很频繁。 这样,所有常用短语都可以通过扩展其前缀来生成。
流程如下:
使用C [·]索引语料库字符串中的一个单词,| C | 表示语料库大小。⊕运算符用于连接两个单词或短语。返回键值字典f。 它的关键字是包含所有常用短语P和单词U \ P的词汇表U。其值是原始频率。
2.1.2 短语质量评估
为P中的每个候选项计算多个特征。对这些特征进行分类器训练,以预测所有未标记短语的质量Q。 对于不在P中的短语,其质量仅为0。
特征包含一致性特征和信息特征。
2.1.3 短语分割(这里还没太看明白)
检查每个单词序列出现的上下文,并决定是否将其视为短语,分段直接解决了完整性要求,并通过纠正间接地满足了一致性要求频率。
2.2 实验
2.2.1 数据集
实验中使用了两个真实的数据集。
•Academia datase 是计算机科学主要期刊和论文集的集合。 我们在实验中同时使用标题和摘要。
•Yelp datase 提供了对250家企业的评论。 每个单独的评论均视为文档。
实验对比了以下短语提取方法。
•TF-IDF:根据短语的原始频率和逆文档频率对短语进行排名。
•C-Value:根据自上而下的方案中用作短语超短语一部分的词组的频率,提出了一种排名度量;
•ConExtr基于关于n-gram和前缀/后缀(n-1)-gram之间关系的假设来处理短语市场市场问题;
•KEA4是长文档的有监督的关键词提取方法。
•TopMine5是主题短语提取方法。我们使用其词组挖掘模块进行比较;
•ClassPhrase根据短语的估计质量对短语进行排名;
•SegPhrase 将ClassPhrase与短语分割相结合,以基于归一化的校正频率过滤过高估计的短语;
•SegPhrase +与SegPhrase类似,但添加了细分功能以完善质量估算。
2.2.2 实验结果
可以看到SegPhrase的PR曲线明显优于TopMine。
2.2.3 时间效率
框架主要是用C ++实现的,而一小部分预处理是用Python实现的。SegPhrase +的总运行时间在不同比例的数据上的线性曲线验证了线性时间复杂度。
其中,特征提取和短语分割占据了大部分运行时间。然而框架的几乎所有组件都可以并行化,例如特征提取,短语分割和质量估计,它们是执行时间中最昂贵的部分。这是因为句子可以一个接一个地进行而不会互相影响。因此,该方法对于使用并行和分布式技术的大规模语料库可能非常有效。在以上的实现中,此方法是最快的方法之一。
在SegPhrase的git上,作者特意标注道:最新工具AutoPhrase具有更高的效率,并支持更多语言
三、AutoPhrase:自动的 Phrase Mining
论文:Automated Phrase Mining from Massive Text Corpora
AutoPhrase支持多种语言(包含简体中文和繁体中文)基本思想是通过分别在训练和解析过程中添加编码/解码层来重用英语实现。在训练阶段,在中文单词片段和英文字母之间创建一个字典,将输入数据编码为英文伪单词。在解析阶段,在识别出编码后的新文档中的优质短语之后,进行解码以恢复可读的中文。
AutoPhrase已有GitHub开源工具:https://github.com/shangjingbo1226/AutoPhrase
3.1 主要创新
对领域和语言专家的手动工作的依赖,就成为及时分析特定领域中大量新兴文本语料库的障碍。理想的自动短语挖掘方法应该是独立于域的,而无需花费太多人力或对语言分析器的依赖。自动短语挖掘框架AutoPhrase,它超越了SegPhrase,以进一步摆脱附加的手动标记工作并增强性能,主要使用以下两种新技术。
3.1.1 Robust Positive-Only Distant Training(强健正面的远程训练)
公共知识库(如维基百科)中的高质量短语,免费并且数量很多。利用已有的知识库(Wikipedia)做远程监督训练,可以避免手工标注。
主要流程:
1. 从一般知识库中构建积极标签的样本
2. 从给定的领域语料库中构建消极标签的样本
3. 训练大量的基本分类器
4. 将这些分类器的预测聚合在一起
3.1.2 POS-Guided Phrasal Segmentation. (POS-Guided短语分割)
即:利用词性信息来增加抽取的准确性
语言处理器应该权衡:性能 和 领域独立能力
对于领域独立能力,如果没有语言领域知识,准确性会受限制;
对于准确性,依赖复杂的、训练有素的语言分析器,就会降低领域独立能力
解决办法: 在文档集合的语言中加入一个预先训练的词性标记,以进一步提高性能
3.2 实验
3.2.1 数据集
实验选取了不同的领域和语言中有五个大型文本集合,包括:DBLP——的英文计算机科学论文摘要,Yelp——英文商业评论和wikipedia的英文(EN),西班牙语(ES)和中文(CN)文章。
3.2.2 实验效果
可以看到在实验数据集上,AutoPhrase的PR曲线明显优于SegPhrase。
3.2.3 时间效率
在框架中,最耗时的组件的时间复杂度(例如频繁的n-gram,特征提取,POS引导的短语分割)均为O(|Ω|),并假设短语是一个小常数(例如n≤6),其中|Ω| 是语料库中的单词总数。 因此,AutoPhrase与语料库大小成线性关系,因此非常有效且可扩展。 同时,每个组件都可以以几乎无锁的方式通过短语或句子分组来并行化。
3.3 与SegPhrase比较优势(引用自作者git)
l Minimized Human Effort(减少人为工作). We develop a robust positive-only distant training method to estimate the phrase quality by leveraging exsiting general knowledge bases.
l Support Multiple Languages(支持多种语言:英语,西班牙语和中文): English, Spanish, and Chinese. The language in the input will be automatically detected.
l High Accuracy(精度高). We propose a POS-guided phrasal segmentation model incorporating POS tags when POS tagger is available. Meanwhile, the new framework is able to extract single-word quality phrases.
l High Efficiency(高效率). A better indexing and an almost lock-free parallelization are implemented, which lead to both running time speedup and memory saving.
Jingbo Shang, Jialu Liu, Meng Jiang, Xiang Ren, Clare R Voss, Jiawei Han, "Automated Phrase Mining from Massive Text Corpora", accepted by IEEE Transactions on Knowledge and Data Engineering, Feb. 2018.
Jialu Liu*, Jingbo Shang*, Chi Wang, Xiang Ren and Jiawei Han, "Mining Quality Phrases from Massive Text Corpora”, Proc. of 2015 ACM SIGMOD Int. Conf. on Management of Data (SIGMOD'15), Melbourne, Australia, May 2015. (* equally contributed, slides)