不管是基于文本的推荐还是基于文本的搜索,对于文本关键词的依赖也很大,关键词提取的准确程度直接关系到推荐系统或者搜索系统的最终效果。因此,关键词提取在文本挖掘领域是一个很重要的部分。

简介

在自然打量处理范畴,处理海量的文本文件最要害的是要把用户最关怀的问题提取出来。而无论是关于长文本仍是短文本,往往能够经过几个要害词窥视整个文本的主题思维。一起,不管是依据文本的引荐仍是依据文本的查找,关于文本要害词的依托也很大,要害词提取的精确程度直接联络到引荐体系或许查找体系的终究作用。因而,要害词提取在文本发掘范畴是一个很重要的部分。

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第1张

关于文本的要害词提取办法分为有监督、半监督和无监督三种:

  • 有监督的要害词抽取算法是将要害词抽取算法看作是二分类问题,判别文档中的词或许短语是或许不是要害词。既然是分类问题,就需求供给现已标示好的练习语料,运用练习语料练习要害词提取模型,依据模型对需求抽取要害词的文档进行要害词抽取。
  • 半监督的要害词提取算法只需求少数的练习数据,运用这些练习数据构建要害词抽取模型,然后运用模型对新的文本进行要害词提取,关于这些要害词进行人工过滤,将过滤得到的要害词参加练习集,从头练习模型。
  • 无监督的办法不需求人工标示的语料,运用某些办法发现文本中比较重要的词作为要害词,进行要害词抽取。

有监督的文本要害词提取算法需求昂扬的人工成本,因而现有的文本要害词提取首要选用适用性较强的无监督要害词抽取。其文本要害词抽取流程如下:

无监督文本要害词抽取流程图 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取)  算法 自然语言 文本 第2张

图 1 无监督文本要害词抽取流程图

无监督要害词抽取算法能够分为三大类,依据核算特征的要害词抽取、依据词图模型的要害词抽取和依据主题模型的要害词抽取。

1. 依据核算特征的要害词抽取算法

依据核算特征的要害词抽取算法的思维是运用文档中词语的核算信息抽取文档的要害词。一般将文本经过预处理得到候选词语的调集,然后选用特征值量化的办法从候选调集中得到要害词。依据核算特征的要害词抽取办法的要害是选用什么样的特征值量化目标的办法,现在常用的有三类:

(1) 依据词权重的特征量化

依据词权重的特征量化首要包括词性、词频、逆向文档频率、相对词频、词长等。

(2) 依据词的文档方位的特征量化

这种特征量化办法是依据文章不同方位的语句对文档的重要性不同的假定来进行的。一般,文章的前N个词、后N个词、段首、段尾、标题、导言等方位的词具有代表性,这些词作为要害词能够表达整个的主题。

(3) 依据词的相关信息的特征量化

词的相关信息是指词与词、词与文档的相关程度信息,包括互信息、hits值、贡献度、依存度、TF-IDF值等。

咱们介绍几种常用的特征值量化目标。

1.1 词性

词性是经过分词、语法剖析后得到的成果。现有的要害词中,绝大多数要害词为名词或许动名词。一般情况下,名词与其他词性比较更能表达一篇文章的首要思维。可是,词性作为特征量化的目标,一般与其他目标结合运用。

1.2 词频

词频表明一个词在文本中呈现的频率。一般咱们以为,假如一个词在文本中呈现的越是频频,那么这个词就越有或许作为文章的中心词。词频简略地核算了词在文本中呈现的次数。可是,只依托词频所得到的要害词有很大的不确认性,关于长度比较长的文本,这个办法会有很大的噪音。

1.3 方位信息

一般情况下,词呈现的方位关于词来说有着很大的价值。例如,标题、摘要自身便是作者归纳出的文章的中心思维,因而呈现在这些当地的词具有必定的代表性,更或许成为要害词。可是,由于每个作者的习气不同,写作办法不同,要害语句的方位也会有所不同,所以这也是一种很广泛的得到要害词的办法,一般情况下不会独自运用。

1.4 互信息

互信息是信息论中的概念,是变量之间相互依托的衡量。互信息并不局限于实值随机变量,它愈加一般且决议着联合散布 p(X,Y) 和分化的边际散布的乘积 p(X)p(Y) 的类似程度。互信息的核算公式如下:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第3张

其间,p(x,y)是X和Y的联合概率散布函数,p(x)和p(y)分别为X和Y的边际概率散布函数。

当运用互信息作为要害词提取的特征量化时,运用文本的正文和标题结构PAT树,然后核算字符串左右的互信息。

1.5 词跨度

词跨度是指一个词或许短语在文中***呈现和末次呈现之间的间隔,词跨度越大阐明这个词对文本越重要,能够反映文本的主题。一个词的跨度核算公式如下:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第4张

其间, 表明词i在文本中***呈现的方位, 表明词i在文本中***次呈现的方位,sum表明文本中词的总数。

词跨度被作为提取要害词的办法是由于在实践中,文本中总是有许多噪声(指不是要害词的那些词),运用词跨度能够削减这些噪声。

1.6 TF-IDF值

一个词的TF是指这个词在文档中呈现的频率,假定一个词w在文本中呈现了m次,而文本中词的总数为n,那么

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第5张

一个词的IDF是依据语料库得出的,表明这个词在整个语料库中呈现的频率。假定整个语料库中,包括词w的文本一共有M篇,语料库中的文本一共有N篇,则

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第6张

由此可得词w的TF-IDF值为:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第7张

TF-IDF的长处是完成简略,相对简略了解。可是,TFIDF算法提取要害词的缺陷也很明显,严峻依托语料库,需求选取质量较高且和所处理文本相符的语料库进行练习。别的,关于IDF来说,它自身是一种企图按捺噪声的加权,自身倾向于文本中频率小的词,这使得TF-IDF算法的精度不高。TF-IDF算法还有一个缺陷便是不能反响词的方位信息,在对要害词进行提取的时分,词的方位信息,例如文本的标题、文本的首句和尾句等含有较重要的信息,应该赋予较高的权重。

依据核算特征的要害词提取算法经过上面的一些特征量化目标将要害词进行排序,获取TopK个词作为要害词。

依据核算特征的要害词的要点在于特征量化目标的核算,不同的量化目标得到的记过也不尽相同。一起,不同的量化目标也有其各自的优缺陷,在实践运用中,一般是选用不同的量化目标相结合的办法得到Topk个词作为要害词。

2. 依据词图模型的要害词抽取算法

依据词图模型的要害词抽取首先要构建文档的打量网络图,然后对打量进行网络图剖析,在这个图上寻觅具有重要作用的词或许短语,这些短语便是文档的要害词。打量网络图中节点基本上都是词,依据词的链接办法不同,打量网络的首要办法分为四种:共现网络图、语法网络图、语义网络图和其他网络图。

在打量网络图的构建进程中,都是以预处理往后的词作为节点,词与词之间的联络作为边。打量网络图中,边与边之间的权重一般用词之间的相关度来表明。在运用打量网络图取得要害词的时分,需求评价各个节点的重要性,然后依据重要性将节点进行排序,选取TopK个节点所代表的词作为要害词。节点的重要性核算办法有以下几种办法。

2.1 归纳特征法

归纳特征法也叫社会网络中心性剖析办法,这种办法的中心思维是节点中重要性等于节点的显著性,以不损坏网络的整体性为根底。此办法便是从网络的部分特点和大局特点视点去定量剖析网络结构的拓扑性质,常用的定量核算办法如下。

(1) 度

节点的度是指与该节点直接向量的节点数目,表明的是节点的部分影响力,关于非加权网络,节点的度为:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第8张

关于加权网络,节点的度又称为节点的强度,核算公式为:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第9张

(2) 挨近性

节点的挨近性是指节点到其他节点的最短途径之和的倒数,表明的是信息传达的严密程度,其核算公式为:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第10张

(3) 特征向量

特征向量的思维是节点的中心化测验值由周围避实就虚衔接的节点决议,即一个节点的中心化目标应该等于其相邻节点的中心化目标之线性叠加,表明的是经过与具有高度值的相邻节点所取得的直接影响力。特征向量的核算公式如下:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第11张

(4) 集聚系数

节点的集聚系数是它的相邻的节点之间的衔接数与他们避实就虚或许存在链接的数量的比值,用来描绘图的极点之间阶层成团的程度的系数,核算公式如下:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第12张

(5) 均匀最短途径

节点的均匀最短途径也叫严密中心性,是节点的避实就虚最短途径之和的均匀值,表明的是一个节点传达信息时对其他节点的依托程度。假如一个节点离其他节点越近,那么他传达信息的时分也就越不需求依托其他人。一个节点到网络中各点的间隔都很短,那么这个点就不会受制于其他节点。核算公式如下:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第13张

由于每个算法的偏重方向的不同,在实践的问题中所选取的定量剖析办法也会不一样。一起,关于要害词提取来说,也能够和上一节所提出的核算法得到词的权重,例如词性等相结合构建词调配网络,然后运用上述办法得到要害词。

2.2 体系科学法

体系科学法进行中心性剖析的思维是节点重要性等于这个节点被删去后关于整个打量网络图的损坏程度。重要的节点被删去后会对网络的连通性等发生改动。假如咱们在网络图中删去某一个节点,图的某些指定特性发生了改动,能够依据特性改动的巨细取得节点的重要性,从而对节点进行挑选。

2.3 随机游走法

随机游走算法是网络图中一个非常闻名的算法,它从给定图和起点,随机地挑选街坊节点移动到街坊节点上,然后再把现在的节点作为起点,迭代上述进程。

随机游走算法一个很知名的运用是大名鼎鼎的PageRank算法,PageRank算法是整个Google查找的中心算法,是一种经过网页之间的超链接来核算网页重要性的技能,其要害的思维是重要性传递。在要害词提取范畴, Mihalcea 等人所提出的TextRank算法便是在文本要害词提取范畴学习了这种思维。

PageRank算法将整个互联网看作一张有向图,网页是图中的节点,而网页之间的链接便是图中的边。依据重要性传递的思维,假如一个大型网站A含有一个超链接指向了网页B,那么网页B的重要性排名会依据A的重要性来广大。网页重要性的传递思维如下图所示,

PageRank简略描绘(来自PageRank论文) 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取)  算法 自然语言 文本 第14张

图 2 PageRank简略描绘(来自PageRank论文)

在PageRank算法中,最首要的是关于初始网页重要性(PR值)的核算,由于关于上图中的网页A的重要性咱们是无法预知的。可是,在原始论文中给出了一种迭代办法求出这个重要性,论文中指出,幂法求矩阵特征值与矩阵的初始值无关。那么,就能够为每个网页随机给一个初始值,然后迭代得到收敛值,而且收敛值与初始值无关。

PageRank求网页i的PR值核算如下:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第15张

其间,d为阻尼系数,一般为0.85。 是指向网页i的网页调集。 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第16张是指网页j中的链接指向的调集, 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第17张是指调集中元素的个数。

TextRank在构建图的时分将节点由网页改成了语句,并为节点之间的边引入了权值,其间权值表明两个语句的类似程度。其核算公式如下:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第18张

公式中的 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第19张为图中节点 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第20张 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第21张的边的权重。其他符号与PageRank公式相同。

TextRank算法除了做文本要害词提取,还能够做文本摘要提取,作用不错。可是TextRank的核算复杂度很高,运用不广。

3. 依据主题模型的要害词抽取

依据主题模型的要害词提取算法首要运用的是主题模型中关于主题的散布的性质进行要害词提取。算法过程如下:

  • 从文章中获取候选要害词。行将文本分词,也能够再依据词性选取候选要害词。
  • 依据大规模意料学习得到主题模型。
  • 依据得到的隐含主题模型,核算文章的主题散布和候选要害词散布。
  • 核算文档和候选要害词的主题类似度并排序,选取前n个词作为要害词。

算法的要害在于主题模型的构建。主题模型是一种文档生成模型,关于一篇文章,咱们的构思思路是先确认几个主题,然后依据主题想好描绘主题的词汇,将词汇依照语法规矩组成语句,阶段,***生成一篇文章。主题模型也是依据这个思维,它以为文档是一些主题的混合散布,主题又是词语的概率散布,pLSA模型便是***个依据这个主意构建的模型。同样地,咱们反过来想,咱们找到了文档的主题,然后主题中有代表性的词就能表明这篇文档的中心意思,便是文档的要害词。

pLSA模型以为,一篇文档中的每一个词都是经过必定概率选取某个主题,然后再依照必定的概率从主题中选取得到这个词语,这个词语的核算公式为:

 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第22张

一些贝叶斯学派的研讨者关于pLSA模型进行了改善,他们以为,文章对应主题的概率以及主题对应词语的概率不是必定的,也遵守必定的概率,所以就有了现阶段常用的主题模型--LDA主题模型。

LDA是D.M.Blei在2003年提出的。LDA选用了词袋模型的办法简化了问题的复杂性。在LDA模型中,每一篇文档是一些主题构成的概率散布,而每一个主题又是许多单词构成的一个概率散布。一起,无论是主题构成的概率散布仍是单词构成的概率散布也不是必定的,这些散布也遵守Dirichlet 先验散布。

文档的生成模型能够用如下图模型表明:

其间 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第23张 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第24张为先验散布的超参数, 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第25张为第k个主题下的避实就虚单词的散布, 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取) 算法 自然语言 文本 第26张为文档的主题散布,w为文档的词,z为w所对应的主题。

Blei在论文中的图模型 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取)  算法 自然语言 文本 第27张

图 3 Blei在论文中的图模型

LDA发掘了文本的深层语义即文本的主题,用文本的主题来表明文本的意义也从必定程度上降低了文本向量的维度,许多人用这种办法对文本做分类,取得了不错的作用。详细LDA的算法请参阅。

LDA要害词提取算法运用文档的隐含语义信息来提取要害词,可是主题模型提取的要害词比较广泛,不能很好的反响文档主题。别的,关于LDA模型的时刻复杂度较高,需求很多的实践练习。

4. 运用

现在阶段,文本的要害词提取在依据文本的查找、引荐以及数据发掘范畴有着很广泛的运用。一起在实践运用中,由于运用环境的复杂性,关于不同类型的文本,例如长文本和短文本,用同一种文本要害词提取办法得到的作用并不相同。因而,在实践运用中针对不同的条件环境所选用的算法会有所不同,没有某一类算法在避实就虚的环境下都有很好的作用。

相关于上文中所说到的算法,一些组合算法在工程上被很多运用以补偿单算法的缺乏,例如将TF-IDF算法与TextRank算法相结合,或许归纳TF-IDF与词性得到要害词等。一起,工程上关于文本的预处理以及文本分词的精确性也有很大的依托。关于文本的错别字,变形词等信息,需求在预处理阶段予以处理,分词算法的挑选,未登录词以及歧义词的识别在必定程度上关于要害词提取会有很大的影响。

要害词提取是一个看似简略,在实践运用中却非常扎手的使命,从现有的算法的根底上进行工程优化,豁达数据在这方面做了很大的尽力而且取得了不错的作用。

5. 总结

本文介绍了三种常用的无监督的要害词提取算法,并介绍了其优缺陷。要害词提取在文本发掘范畴具有很宽广的运用,现有的办法也存在必定的问题,咱们仍然会在要害词提取的问题上持续尽力研讨,也欢迎我们活跃沟通。

参阅文献

[1] TextRank算法提取要害词和摘要http://xiaosheng.me/2017/04/08/article49/

[2] Page L, Brin S, Motwani R, et al. The PageRank citation ranking: Bringing order to the web[R]. Stanford InfoLab, 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] Blei D M, Ng A Y, Jordan M I. Latent dirichlet allocation[J]. Journal of machine Learning research, 2003, 3(Jan): 993-1022.

[7] 赵京胜, 朱巧明, 周国栋, 等. 主动要害词抽取研讨总述[J]. 软件学报, 2017, 28(9): 2431-2449.

【本文为51CTO专栏作者“豁达数据”的原创稿件,转载可经过51CTO专栏获取联络】

戳管中窥豹,看该作者更多好文

转载请说明出处
知优网 » 怎么做好文本关键词提取?从豁达数据使用的三种算法说起(文本分析关键词提取)

发表评论

您需要后才能发表评论