3.3.1 领域短语挖掘
短语挖掘一般应用于构建某一垂直领域的知识图谱,用于发现领域相关的短语,进而找到其中垂直领域下相关的实体。本节将围绕领域短语挖掘展开,首先介绍领域短语挖掘的定义以及与相关任务,接着介绍领域短语挖掘的两类方法:无监督学习方法和监督学习方法。
1.领域短语挖掘的定义
领域短语挖掘的输入是领域语料,输出是领域短语。早期这项工作称为词汇挖掘(Gosary Extractio),现在也使用短语挖掘(Phrase Mining)来描述。这里的短语指一个单词(Single-word Phrase,如USA)或多个连续的单词(Multi-word Phrase,如support vector machine)组成的单词序列。与英文通过单词和空格进行连接不同,中文直接通过多个字组成序列。
领域短语挖掘和关键词抽取的区别在于,关键词抽取是从语料中提取最重要、最有代表性的短语,抽取的短语数量一般比较少,比如,写论文的时候在摘要下面一般会附上五六个关键词。领域短语挖掘和新词发现的区别在于,新词发现的主要目标是发现词汇库中不存在的新词汇,而领域短语挖掘不区别新短语和词汇库中已有的短语。新词发现可以通过在领域短语挖掘的基础上进一步过滤已有词汇来实现。
2.领域短语挖掘的方法
早期的短语挖掘主要基于规则来挖掘名词性短语。最直接的方法是通过预定义的词性标签(POS Tag)规则来识别文档中的高质量名词短语。但规则一般是针对特定领域人工定义的,存在一定的局限性。一方面,人工定义的规则通常只适用于特定领域,难以适用于其他领域。另一方面,人工定义规则代价高昂,难以穷举所有的规则,因此在召回率上存在一定的局限性。为了避免人工定义规则的高昂代价,可利用标注好词性的语料来自动学习规则,如使用马尔可夫模型来完成这一任务。但是,词性标注不能做到百分百的准确,这会在一定程度上影响后续规则学习的准确率。
近年来,利用短语的统计指标特征来挖掘词汇成为主流方法之一。基于统计指标的领域短语挖掘方法可以分为无监督学习和监督学习两大类方法。无监督学习适用于缺乏标注数据的场景,监督学习适用于有标注数据的场景。
无监督学习方法主要通过计算候选短语的统计指标特征来挖掘领域短语,主要流程如图3-25所示,包括以下几步。
图3-25 无监督学习 领域短语挖掘流程
1)候选短语生成:这里的候选短语就是高频的N-Gram(连续的N个字/词序列)。首先设定N-Gram出现的最低阈值(阈值和语料的大小成正比,语料越大,阈值越大),通过频繁模式挖掘得到出现次数大于或等于阈值的N-Gram作为候选短语。
2)统计特征计算:根据语料计算候选短语的统计指标特征,如TF-IDF(频率-逆文档频率)等。
3)质量评分:将这些特征的值融合(如加权求和等)得到候选短语的最终分数,用该分数来评估短语的质量。
4)排序输出:对所有候选短语按照分数由高到低排序,通常取前k个短语或者取根据阈值筛选出的短语作为输出。
基于监督学习的领域短语挖掘在无监督学习的基础上增加了两个步骤,如图3-26所示,样本标注和分类器学习。前者负责构造训练样本,后者根据样本训练一个二元分类器以预测候选短语是否为高质量短语。
图3-26 监督学习领域短语挖掘流程
(1)样本标注
样本标注可以是人工标注或者远程监督标注。人工标注是指由人手动标注候选短语是否为高质量的。远程监督标注一般用已有的在线知识库作为高质量短语的来源,如果候选短语是在线知识库的一个词条,则其被视作高质量短语,否则被视作负样本。
(2)分类器学习
根据正负样本学习一个二元分类器。分类器模型可以是决策树、随机森林或者支持向量机。对于每个样本,使用统计指标(TF-IDF等)构造相应的特征向量。
上述方法根据原始词频的相关统计特征来判定候选短语的质量,因此词频统计的准确性会对最终的打分产生显著影响。直接的统计方法会从文本中枚举所有的N-Gram并统计其相应的出现次数作为词频。这就导致了子短语的词频一定大于父短语,比如在人工智能语料中“向量机”和“支持向量”的词频一定大于或等于“支持向量机”。但事实上“支持向量机”的质量更高,因此基于原始词频的质量估计有偏差,不足以采信。导致这一估计偏差的根本原因在于,一旦认定某个父短语(比如“支持向量机”)是高质量短语,那么它的一次出现就不应该重复累积到其任何子短语上。
因此,基于N-Gram的原始频次统计方法需要修正与优化。考虑到在构建了高质量候选短语的判定模型之后,可以尝试利用模型来识别高质量短语。再根据已经发现的高质量短语对语料进行切割,在切割的基础上重新统计词频,改进词频统计的精度。
基于监督学习的领域短语挖掘方法经过优化后,采取迭代式计算框架,在迭代的每一轮先后进行语料切割和统计指标更新。由于切割可以提升频次统计的精度,基于相应统计特征构建的高质量短语识别模型也就更加精准,从而能更好地识别高质量短语。而高质量短语的精准识别又可以进一步更好地指导语料切割。语料切割与高质量短语识别两者之间相互增强。经过多次迭代,直至候选短语得分收敛。最终,依据每个候选短语的最后得分识别语料中的高质量短语。这一迭代式短语挖掘过程如图3-27所示。在图3-27所示的过程中,语料切割后通常还会根据切割出的短语词频对候选短语进行过滤。
图3-27 加入语料切割迭代增强领域短语挖掘质量的过程
3.统计指标特征
词频-逆文本频率(Term Frequency-Inverse Document Frequency, TF-IDF)是一种统计方法,用以评估一个词对于一篇文章的重要性。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。它由两部分组成,TF和IDF。
词频(Term Frequency, TF)表示一个给定词语t在一篇给定文本d中出现的频率。TF越高,则词语t对文本d来说越重要;TF越低,则词语t对文本d来说越不重要。对于在某一文本dj里的词语ti来说,ti的词频可表示为:
其中ni,j是词语ti在文本dj中的出现次数,分母则是在文本dj中所有词语的出现次数之和。
逆文件频率(Inverse Document Frequency, IDF)的主要思想是:如果包含词语t的文本越少,则IDF越大,说明词语t在整个文本集层面上具有很好的类别区分能力。某一特定词语的IDF,可以由总文本数除以包含该词语的文本数,再将得到的商取对数得到:
其中|D|是语料库中所有文本总数,分母是包含词语ti的所有文本数。
有了IDF的定义,就可以计算某一个词的TF-IDF值:
大多数情况下文本共有词汇越多越有可能是重复问题,TF-IDF更是代表了单词在文本中的重要程度,可以帮助排除“is”这种无意义共有单词的影响。