简介在自然语言处理领域,处理海量文本文件的关键是提取用户最关心的问题。不管是长文还是短文,往往都可以通过几个关键词窥探到整篇文章的主题。同时,无论是基于文本的推荐还是基于文本的搜索,都非常依赖文本关键词,而关键词提取的准确性直接关系到推荐系统或搜索系统的最终效果。因此,关键词抽取是文本挖掘领域中非常重要的一个环节。文本的关键词抽取方法分为监督式、半监督式和无监督式三种:关键词。既然是分类问题,就需要提供标注好的训练语料,使用训练语料训练关键词抽取模型,根据模型对需要抽取关键词的文档进行关键词抽取。半监督关键词抽取算法只需要少量的训练数据,利用这些训练数据建立关键词抽取模型,然后利用该模型从新文本中抽取关键词,人工过滤这些关键词,将过滤后的关键词进行过滤添加训练集并重新训练模型。无监督方法不需要人工标注语料,利用一些方法在文本中寻找更重要的词作为关键词进行关键词抽取。有监督的文本关键词提取算法需要较高的人力成本,因此现有的文本关键词提取主要采用无监督的关键词提取,适用性强。其文本关键词抽取流程如下:图1无监督文本关键词抽取流程图无监督关键词抽取算法可分为三类,基于统计特征的关键词抽取、基于词图模型的关键词抽取和主题模型关键词抽取。1.基于统计特征的关键词提取算法基于统计特征的关键词提取算法的思想是利用文档中词的统计信息来提取文档的关键词。通常先对文本进行预处理,得到一组候选词,然后通过特征值量化从候选集中得到关键词。基于统计特征的关键词提取方法的关键是采用什么样的特征值量化指标。目前常用的有以下三种:(1)基于词权的特征量化。基于词权的特征量化主要包括词性、词频、反向文档频率、相对词频、词长等。(2)基于词的文档位置特征量化这种特征量化方法是基于假设句子在文章的不同位置对文档有不同的重要性。通常文章的前N个词、后N个词、段首、段尾、标题、引言等词具有代表性,这些词可以表达整个主题为关键字。(3)基于词关联信息的特征量化是指词与词、词与文档之间的信息关联程度,包括互信息、命中值、贡献度、依赖度、TF-IDF值等。我们介绍了几种常用的特征值量化指标。1.1词性词性是分词和语法分析后得到的结果。在现有的关键词中,绝大多数关键词都是名词或动名词。一般来说,名词比其他词类更能表达文章的中心思想。但作为特征量化的指标,词性一般与其他指标结合使用。1.2词频词频表示一个词在文本中出现的频率。一般来说,我们认为如果一个词在文本中出现的频率更高,那么这个词就更有可能是文章的核心词。词频只是计算一个词在文本中出现的次数。但是,仅通过词频得到的关键词具有很大的不确定性,而且对于较长的文本,这种方法会有很大的噪音。1.3位置信息一般来说,一个词出现的位置对于一个词来说具有很大的价值。比如标题和摘要本身就是作者总结的文章的中心思想,所以出现在这些地方的词具有一定的代表性,更容易成为关键词。但是由于每个作者的习惯和写作方法不同,关键句的位置也会不同,所以这也是一种很宽泛的获取关键词的方法,一般不会单独使用。1.4互信息互信息是信息论中的一个概念,是衡量变量之间相互依赖程度的指标。互信息不限于实值随机变量,它更普遍,决定了联合分布p(X,Y)与分解边际分布的乘积p(X)p(Y)的相似程度。互信息的计算公式如下:其中,p(x,y)为X和Y的联合概率分布函数,p(x)和p(y)分别为X和Y的边际概率分布函数.在使用互信息作为关键词提取的特征量化时,利用文本和文本标题构建PAT树,然后计算左右字符串的互信息。1.5词跨度词跨度是指文本中一个词或短语第一次出现和最后一次出现之间的距离。词跨度越大,这个词对文本的重要性就越大,越能反映文本的主题。单词span的计算公式如下:其中,表示单词i在文本中第一次出现的位置,表示单词i在文本中第一次出现的位置,sum表示总数文本中的单词。使用wordspan作为提取关键词的方法是因为在现实中,文本中总是有很多噪音(指那些不是关键词的词),使用wordspan可以减少这些噪音。1.6TF-IDF值一个词的TF是指该词在文档中出现的频率。假设一个词w在文本中出现了m次,文本中的词总数为n,那么根据语料out得到一个词的IDF,表示该词在整个语料中出现的频率。假设在整个语料库中,包含单词w的文本一共有M个,语料库中一共有N个文本,那么可以由此得到单词w的TF-IDF值:IDF的优点是实现简单,比较容易理解。但是,TFIDF算法提取关键词的缺点也很明显。它对语料库的依赖性很强,需要选择质量高、与处理文本一致的语料库进行训练。此外,对于IDF来说,它是一种试图抑制噪声的加权,它倾向于文本中频率较低的词,这使得TF-IDF算法的准确率不高。TF-IDF算法的另一个缺点是不能反映词的位置信息。在提取关键词时,词的位置信息,如文本的标题、文本的首句和末尾句等,包含了更重要的信息。给予更高的权重。基于统计特征的关键词提取算法通过上述一些特征量化指标对关键词进行排序,得到TopK词作为关键词。基于统计特征的关键词重点在于特征量化指标的计算,不同的量化指标得到的劣势是不一样的。同时,不同的量化指标也各有优缺点。在实际应用中,通常结合不同的量化指标来获取Topk词作为关键词。2.基于词图模型的关键词抽取算法基于词图模型的关键词抽取首先需要构建文档的语言网络图,然后分析语言的网络图,在这个图上找到重要的词或短语.短语是文档的关键字。语言网络图中的节点基本上是单词。根据词的连接方式不同,语言网络的主要形式分为共现网络图、语法网络图、语义网络图和其他网络图四种。在构建语言网络图的过程中,以预处理后的词作为节点,以词之间的关系作为边。在语言网络图中,边之间的权重一般用词之间的关联程度来表示。在使用语言网络图获取关键词时,需要评估每个节点的重要性,然后根据重要性对节点进行排序,选取TopK节点代表的词作为关键词。有几种方法可以计算节点的重要性。2.1综合特征法综合特征法又称社会网络中心性分析法。该方法的核心思想是节点的重要性等于节点的重要性,并且是建立在不破坏网络完整性的基础上的。该方法是从网络的局部性质和全局性质的角度定量分析网络结构的拓扑性质。常用的定量计算方法如下。(1)度一个节点的度是指直接指向该节点的节点数,它代表了该节点在本地的影响力。对于无权网络,节点的度为:对于加权网络,节点的度也称为节点的强度,计算公式为:(2)接近度节点的接近度是指的倒数一个节点到其他节点的最短路径之和,表示信息传播的紧密程度,其计算公式为:(3)特征向量Eigenvector的思想是一个节点的中心化测试值由周围所有节点决定,即一个节点的中心化指数应该等于其相邻节点的中心化指数的线性叠加,这意味着获得间接影响。特征向量的计算公式如下:(4)聚类系数节点的聚类系数是其相邻节点之间的连接数与它们之间所有可能连接数的比值,用于描述类图的顶点之间的聚类度的系数,计算公式如下:(5)平均最短路径一个节点的平均最短路径也称为紧凑中心性,它是所有节点之和的平均值节点的最短路径,表示节点传播信息时对其他节点的影响。依赖程度。一个节点离其他节点越近,它在传播信息时就越不需要依赖其他节点。一个节点到网络中每一点的距离都很短,所以这个点不会受到其他节点的影响。计算公式如下:由于每个算法的侧重点不同,在实际问题中选择的量化分析方法也会不同。同时,对于关键词的抽取,也可以结合上一节提出的统计方法,获取词性等词权值,构建词搭配网络,再利用上述方法获取关键词.2.2系统科学方法系统科学方法进行中心性分析的思想是,一个节点的重要性等于该节点被删除后对整个语言网络图的破坏程度。删除重要节点后,网络的连通性会发生变化。如果我们删除网络图中的某个节点,则该图的某些指定特征发生了变化,根据特征变化的大小可以得到该节点的重要性,从而对节点进行过滤。2.3随机游走法随机游走算法是网络图中非常著名的算法。它从给定的图和起点随机选择邻居节点移动到邻居节点,然后以当前节点为起点迭代上述过程。随机游走算法的一个著名应用是著名的PageRank算法。PageRank算法是整个Google搜索的核心算法。它是一种通过网页之间的超链接来计算网页重要性的技术。关键思想是重要性。转移。在关键词抽取领域,Mihalcea等人提出的TextRank算法。在文本关键词提取领域借鉴了这个思路。PageRank算法把整个互联网看成一个有向图,网页是图中的节点,网页之间的链接是图中的边。根据重要性传递的思路,如果一个大型网站A包含一个指向网页B的超链接,那么网页B的重要性排名会根据A的重要性递增。网页重要性的传递思路为如下图所示。图2PageRank简要说明(来自PageRank论文)在PageRank算法中,最重要的是初始网页重要性(PR值)的计算,因为对于上图中的网页A,其重要性我们无法预测.然而,在原始论文中给出了一种迭代方法来找到这种重要性。文中指出,求矩阵特征值的幂法与矩阵初值无关。然后可以给每个网页随机赋予一个初始值,然后通过迭代得到收敛值,收敛值与初始值无关。PageRank计算网页i的PR值如下:其中,d为阻尼系数,通常为0.85。是指向网页i的网页集合。指网页j中链接指向的集合,指集合中元素的个数。TextRank在建图时将节点从网页改为句子,并为节点之间的边引入权重,权重代表两个句子的相似度。计算公式如下:式中为图中节点和边的权值。其他符号与PageRank公式相同。TextRank算法除了提取文本关键词,还可以提取文本摘要,效果不错。但是,TextRank计算复杂度高,应用不广泛。3.基于主题模型的关键词提取基于主题模型的关键词提取算法主要利用主题模型中主题分布的性质来提取关键词。算法步骤如下:从文章中获取候选关键词。即对文本进行切分,也可以根据词性选择候选关键词。主题模型源自大规模预测学习。根据得到的隐式主题模型,计算出文章的主题分布和候选关键词分布。计算并排序文档与候选关键词的主题相似度,选取前n个词作为关键词。该算法的关键在于主题模型的构建。主题模型是一个文档生成模型。对于一篇文章,我们的思路是先确定几个主题,然后根据主题想到词汇来描述主题,然后根据语法规则将词汇组成句子和段落,最后生成一篇文章。主题模型也是基于这个思想。它认为文档是一些主题的混合分布,主题是词的概率分布。pLSA模型是第一个按照这个思路构建的模型。同样,我们反过来想,我们找到了文档的主题,那么主题中的代表词就可以代表这篇文档的核心意思,也就是文档的关键词。pLSA模型认为文档中的每个词都以一定的概率选择一个主题,然后按照一定的概率从主题中选择词。这个词的计算公式是:一些贝叶斯研究的作者改进了pLSA模型。他们认为主题对应文章的概率和词对应主题的概率不是一定的,还要服从于一定的概率,所以就有了现阶段常用的主题模型——LDA主题模型.LDA由D.M.Blei于2003年提出,LDA采用词袋模型的方法来简化问题的复杂度。在LDA模型中,每篇文档都是一些主题组成的概率分布,每个主题又是很多词组成的概率分布。同时,话题构成的概率分布和词的构成概率分布都不是一定的,这些分布也服从狄利克雷先验分布。文档的生成模型可以用下图模型表示:其中和是先验分布的超参数,第k个主题下所有词的分布,文档的主题分布,w是第k个主题下的词document,而z是对应w的Theme。图3.Blei论文中的图形模型LDA挖掘了文本的深层语义,即文本的主题。用文本的主题来表示文本的意思,也在一定程度上降低了文本向量的维度。很多人用这种方法对文本进行分类分析,取得了很好的效果。具体的LDA算法请参考。LDA关键词抽取算法利用文档隐含的语义信息来抽取关键词,但是主题模型抽取的关键词比较宽泛,不能很好地反映文档的主题。另外,LDA模型的时间复杂度较高,需要大量的实战训练。4.应用现阶段,从文本中提取关键词在基于文本的搜索、推荐和数据挖掘等领域有着广泛的应用。同时,在实际应用中,由于应用环境的复杂性,对于不同类型的文本,如长文本和短文本,采用相同的文本关键词提取方法得到的结果是不一样的。因此,在实际应用中,针对不同的条件和环境采用的算法会有所不同,没有哪一种算法在所有环境下都具有良好的效果。与上述算法相比,一些组合算法在工程中得到广泛应用,以弥补单一算法的不足,如将TF-IDF算法与TextRank算法相结合,或者将TF-IDF与词性相结合得到关键词等。.同时,工程化也非常依赖文本预处理和分词的准确性。对于文本中的错别字、变形词等信息,需要在预处理阶段解决。分词算法的选择、未注册词和歧义词的识别都会在一定程度上对关键词的提取产生很大的影响。关键词提取是一项看似简单的工作,但在实际应用中却非常棘手。基于已有的工程优化算法,大观数据在这方面做了很大的努力,并取得了较好的效果。5.小结本文介绍了三种常用的无监督关键词提取算法,并介绍了它们的优缺点。关键词抽取在文本挖掘领域有着广泛的应用,现有的方法也存在一定的问题。关于关键词提取的问题,我们会继续努力,欢迎大家积极交流。参考文献[1]TextRank算法提取关键词和文摘http://xiaosheng.me/2017/04/08/article49/[2]PageL,BrinS,MotwaniR,etal.PageRank引文排名:为网络带来秩序[R]。斯坦福信息实验室,1999.[3]刘知远。基于文档主题结构的关键词抽取方法研究[D].北京:清华大学,2011.[4]tf-idf,https://zh.wikipedia.org/zh-hans/Tf-idf[5]机器领域LDA主题模型详解http://zhuanlan.51cto.com/art/201712/559686.htm?mobile[6]BleiDM,NgAY,JordanMI.Latentdirichletallocation[J].机器学习研究杂志,2003,3(Jan):993-1022.[7]赵京生、朱乔明、周国栋等。关键词自动抽取综述[J].软件学报,2017,28(9):2431-2449.【本文为专栏作者“大观数据”原创稿件,转载可通过专栏联系】点此查看该作者更多好文
