提取文本关键词的方法、设备和计算机可读存储介质与流程

文档序号:22967357发布日期:2020-11-19 21:41阅读:208来源:国知局
提取文本关键词的方法、设备和计算机可读存储介质与流程

本申请涉及自然语言处理领域,特别涉及一种提取文本关键词的方法、设备和计算机可读存储介质。



背景技术:

自然语言处理(naturelanguageprocessing,nlp)是人工智能(artificialintelligence,ai)领域的一个重要方向,而文本中关键词的提取又是nlp的典型应用。提取文本关键词的实际应用场景非常广泛,例如,对于海量文本数据的处理和分析,关键一步是将文本中的最重要的信息提取出来,而重要信息往往通过几个关键词就可以表征;又如,在百度文库等检索系统中,通过提取文章关键词与检索词进行匹配或相似度计算等,可以提高所召回结果的准确性,等等。

现有的提取文本关键词的方法是将待提取文本进行分词后选取候选关键词,根据语料学习得到主题模型,再由主题模型计算文本的主题分布和候选关键词分布,最后计算主题和候选关键词的相似度,选取相似度较高的前n个词作为关键词。

然而,上述现有的提取文本关键词方法获取的是全局主题信息,最后得到的关键词不一定就是文本真实的关键词,因而还是存在精度不高的问题。



技术实现要素:

本申请实施例提供了一种提取文本关键词的方法、设备和计算机可读存储介质,以解决现有提取文本关键词时精度不高的问题。该技术方案如下:

一方面,提供了一种提取文本关键词的方法,该方法包括:

通过统计模型,获取目标文本的全局主题词,以得到所述目标文本的全局主题特征q1;

挖掘所述目标文本的频繁序列模式,以得到所述目标文本的关键词局部特征q2;

提取所述目标文本的候选关键词,构成候选关键词集;

以特征集q作为贝叶斯模型的输入,根据所述贝叶斯模型在满足第一条件时从所述候选关键词集确定的关键词a,将所述关键词a作为所述目标文本的关键词,所述特征集q包括所述目标文本的全局主题特征q1和关键词局部特征q2,所述第一条件为所述贝叶斯模型求取条件概率p(a|q)不小于第一预设阈值,所述a为所述候选关键词集。

一方面,提供了一种提取文本关键词的装置,该装置包括:

第一特征获取模块,用于通过统计模型,获取目标文本的全局主题词,以得到所述目标文本的全局主题特征q1;

第二特征获取模块,用于挖掘所述目标文本的频繁序列模式,以得到所述目标文本的关键词局部特征q2;

提取模块,用于提取所述目标文本的候选关键词,构成候选关键词集;

关键词确定模块,用于以特征集q作为贝叶斯模型的输入,根据所述贝叶斯模型在满足第一条件时从所述候选关键词集确定的关键词a,将所述关键词a作为所述目标文本的关键词,所述特征集q包括所述目标文本的全局主题特征q1和关键词局部特征q2,所述第一条件为所述贝叶斯模型求取条件概率p(a|q)不小于第一预设阈值,所述a为所述候选关键词集。

一方面,提供了一种计算机设备,该计算设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,该计算机程序代码由该一个或多个处理器加载并执行以实现该提取文本关键词的方法所执行的操作。

一方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序由处理器加载并执行以实现该提取文本关键词的方法所执行的操作。

从上述本申请提供的技术方案可知,一方面,由于一个文本的关键词不仅与全局信息相关,还与局部信息相关,因此,本申请实施例基于目标文本的全局主题特征q1和关键词局部特征q2等更多维度的提取而得到目标文本的关键词,其精度要高于现有技术仅仅基于全局信息获取的文本关键词的精度;另一方面,由于目标文本的全局主题特征q1与目标文本的关键词局部特征q2的相关度很小即满足贝叶斯模型的特征独立性的假设,因此,能够应用贝叶斯模型这一经典模型提取关键词,在计算效率上有了提高的可能。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的提取文本关键词的方法的流程图;

图2是本申请实施例提供的某个前缀对应的后缀以及<a>、<b>、<c>、<d>、<e>和<f>的支持度等信息的示意图;

图3是本申请实施例提供的分别从长度为1的频繁序列开始,挖掘频繁序列的示意图;

图4是本申请实施例提供的一种提取文本关键词的装置的结构示意图;

图5是本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

本申请实施例基于计算机设备作为执行主体来进行介绍。此处的计算机设备可以是服务器,也可以是终端,其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器,而终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。上述终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。

本申请实施例实施的载体即云服务器,其具体是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术的服务器,其中,云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云技术需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,每个物品都存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾,通过云计算来实现。

如前所述,云技术需要大量的数据资源以及基于大量数据资源的计算能力,这必然涉及大数据和人工智能云服务等作为支撑基础,其中的大数据是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产,而随着云技术时代的来临,大数据也吸引了越来越多的关注,大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据,适用于大数据的技术包括大规模并行处理数据库、数据挖掘、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。

另一方面,人工智能(artificialintelligence,ai)与上述的大数据和/或云技术相结合,产生了人工智能云服务即aiaas(aiasaservice)。aiaas是目前主流的一种人工智能平台的服务方式,具体而言,aiaas平台将几类常见的ai服务进行拆分,并在云端提供独立或者打包的服务。ai是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换言之,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器;另外,ai也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能,涉及领域广泛,既有硬件层面的技术也有软件层面的技术,其中,软件层面的技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。aiaas类似于开了一个ai主题商城:所有的开发者都可以通过api接口的方式来接入使用平台提供的一种或者是多种人工智能服务,部分资深的开发者还可以使用平台提供的ai框架和ai基础设施来部署和运维自已专属的云人工智能服务。

本申请实施例涉及的自然语言处理(naturelanguageprocessing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。

本申请实施例提供的方法涉及人工智能的机器学习及自然语言处理等技术,具体通过如下实施例进行说明。参见图1,是本申请实施例提供的一种提取文本关键词的方法,该方法主要包括以下步骤s101至s104,详细说明如下:

步骤s101:通过统计模型,获取目标文本的全局主题词,以得到目标文本的全局主题特征q1。

在本申请实施例中,目标文本的全局主题词反映了一个目标文本的主题,该主题的特征即目标文本的全局主题特征q1。作为本申请一个实施例,步骤s101可通过如下步骤s1011至步骤s1013实现:

步骤s1011:采用狄利克雷分布lda模型,提取目标文本的主题分布向量。

狄利克雷分布lda模型是一种统计模型,其可以确定一个文本中词语的分布特征,而词语的分布特征能够从某种程度上反映文本的主题分布,lda模型使用如下公式表示:

其中,表示文本的主题分布,p()表示概率,表示文本中的词语,表示文本中隐含的主题。

本申请实施例中,采用期望最大化算法对lda模型进行训练,经过较少的迭代即可使模型收敛,从而得到文本-主题的分布矩阵。文章的主题分布表示词语所在文本属于每个主题词的概率,语义相近的词语具有相似的主题分布,主题分布即为文本主题分布向量,也就获取了每个目标文本的主题分布向量。

步骤s1012:对目标文本进行分词以得到目标文本的词语,并通过词嵌入获取词语的词向量。

在语言学领域,词是语言中有意义的能够单说或用于造句的最小单位,分词是对语言信息进行处理的基础和关键。具体到本申请的技术方案,对目标文本中的句子进行分词是获取词语的词向量的前提。作为本申请一个实施例,对目标文本进行分词以得到目标文本的词语可以是:若词典中最长词条的长度为n,则以n作为减字开始的长度标准,将目标文本的任意一个句串s从左向右截取长度为n的字符串,在词典中查找是否存在该字符串的词条,若存在,则将标记为切分出的词,再从句串s的n+1位置开始扫描;反之,若词典中不存在该字符串的词条,则将截取长度减1后,再从句串s中截取此长度的字符串,重复上述匹配过程,直至截取长度减小到1为止,最终,句串s被切分成、…、、…、的词序列,每一个均为词典中的词条或者是原子。作为本申请另一实施例,对目标文本进行分词以得到目标文本的词语还可以是计算任意两个字符串x和字符串y的互信息p(x,y),若p(x,y)>0且大于预设阈值,则将字符串x和字符串y判定为一个词,若p(x,y)<0,则字符串x和字符串y不会组成一个词即字符串x和字符串y为两个不同的词。需要说明的是,当p(x,y)=0,则表明字符串x和字符串y之间的关系不明,需要采用其他方式来判断是否为一个词。

在通过分词的处理得到目标文本的词语后,后续是通过词嵌入获取词语的词向量。所谓词向量,是指对词典d中的任意一个词w,确定一个固定长度的实值向量,该实值向量即词w的词向量,m为词向量的长度。词向量具有良好的语义特性,是表示词语特征的常用方式。词向量每一维的值代表一个具有一定的语义和语法上解释的特征,因此,可以将词向量的每一维称为一个词语特征。在本申请实施例中,是通过word2vec模型这种词嵌入方式获取目标文本的词语的词向量,word2vec模型获取词语的词向量的过程,本质上是一种降维操作,即,将词语从one-hotencoder(hot表示降维之前的向量中唯一的一个使用“1”表示的分量)形式的向量降维到word2vec形式表示的向量。

步骤s1013:计算词语的词向量与目标文本的主题分布向量的相似度,将词语中词向量与主题分布向量的相似度大于预设阈值的词语确定为目标文本的全局主题词。

在本申请实施例中,若使用a表示任意一个词向量,b表示目标文本的主题分布向量,则计算词语的词向量与目标文本的主题分布向量的相似度时,可以采用计算ab的余弦相似度来计算词语的词向量与目标文本的主题分布向量的相似度,具体地,若采用表示ab的余弦相似度,则:

其中,表示词向量a的第i个分量,表示主题分布向量b的第i个分量,n表示词向量a或主题分布向量b的维度。

在计算出词语的词向量与目标文本的主题分布向量的相似度后,将计算出来的任意一个相似度与预设阈值比较,只要该相似度大于预设阈值,则将此时对应的词语确定为目标文本的全局主题词。例如,假设“芯片”对应的词向量与目标文本的主题分布向量的相似度大于预设阈值,则将“芯片”确定为目标文本的一个全局主题词。

为了进一步使得目标文本的全局主题特征q1与后续得到的目标文本的关键词局部特征q2相关度更小,从而能够更好地满足贝叶斯模型的特征独立这一强假设条件,在本申请实施例中,可以将目标文本的全局主题词进行聚类,聚类后得到的主题标签作为目标文本的全局主题特征q1。例如,将目标文本的全局主题词“芯片”、“5g”等聚类为“科技”这一主题标签,将“科技”这一主题标签作为目标文本的全局主题特征q1。

步骤s102:挖掘目标文本的频繁序列模式,以得到目标文本的关键词局部特征q2。

在阐述步骤s102的技术方案之前,首先对项集和序列等相关概念做一个说明。所谓项集,是由若干项组成,这些项没有时间上的先后关系。与项集不同,序列是由若干项集组成的序列,序列中的项具有时间上的先后关系,例如序列<a(abc)(ac)d(cf)>是由a、abc、ac、d和cf共5个项集组成,并且,项集a在项集abc、ac、d和cf之前,项集abc在项集ac、d和cf之前,项集ac在项集d和cf之前,项集d在项集cf之前。

作为本申请一个实施例,步骤s102由以下步骤s1至步骤s4实现,说明如下:

步骤s1:将目标文本的字词序列化为序列,得到序列数据集s,记i为一个序列的长度。

所谓将目标文本的字词序列化为序列,是指将目标文本的字词序列化为如前述实施例<a(abc)(ac)d(cf)>这样的序列。

步骤s2:从字词序列中寻找长度为1的序列前缀和对应投影数据集。

所谓序列前缀,是指一个序列前面部分的子序列。例如,对于序列b=<a(abc)(ac)d(cf)>,而序列a=<a(abc)a>,则a是b的前缀。当然b的前缀不止一个,例如,<a>、<aa>和<a(ab)>都是b的前缀。而前缀投影是指序列的后缀,前缀加上后缀就可以构成一个序列。对于某一个前缀,序列里前缀后面剩下的子序列即为后缀。若前缀最后的项是项集的一部分,则用一个占位符“_”来占位表示,下表是序列<a(abc)(ac)d(cf)>的前缀及其投影的举例说明:

在本申请实施例中,相同前缀对应的所有后缀的结合被称为前缀对应的投影数据集。

本申请挖掘目标文本的频繁序列模式的方案是从长度为1的前缀开始挖掘序列模式,搜索对应的投影数据库,得到长度为1的前缀对应的频繁序列,然后递归的挖掘长度为2的前缀所对应的频繁序列,……,以此类推,一直递归到不能挖掘到更长的前缀挖掘为止。因此,要从字词序列中寻找长度为1的序列前缀和对应投影数据集。

步骤s3:将支持度小于1/α的前缀对应的项从序列数据集s删除,得到所有频繁1项序列,其中,α为最小支持度阈值。

在本实施例中,最小支持度阈值α用于衡量一个序列是否为频繁序列,具体而言,在一个序列数据集中,若其支持度大于1/α,即若该序列在序列数据集中至少出现1/α次,则该序列可以称为频繁序列。例如,若最小支持度阈值α=50%,则对于如下表中的序列数据集:

<(ab)c>是频繁序列,而长度为1的前缀包括<a>、<b>、<c>、<d>、<e>、<f>和<g>,以下说明如何对这6个前缀分别递归搜索寻找各个前缀对应的频繁序列。如附图2所示,示出了每个前缀对应的后缀以及<a>、<b>、<c>、<d>、<e>和<f>的支持度等信息。由于g只出现在编号为40的序列中,支持度为1,因此无法继续挖掘。长度为1的频繁序列为<a>、<b>、<c>、<d>、<e>和<f>。去除所有序列中的g,则编号为40的序列变成<e(af)cbc>。

步骤s4:对于每个长度为i且满足支持度要求的序列的前缀进行如下递归挖掘:步骤s41、确定序列的前缀对应的投影数据集,若投影数据集为空,则递归返回;步骤s42、统计投影数据集中各项的支持度,若所有项的支持度都小于1/α,则递归返回;步骤s43、将支持度大于1/α的单项和当前的前缀进行合并,得到新的前缀;步骤s44、令i增加1,前缀为合并单项后的各个前缀,分别递归执行步骤s41至步骤s44,直至得到目标文本所有频繁序列模式。

附图3给出了分别从长度为1的频繁序列开始,挖掘频繁序列的示意图。以前缀d为例,其他前缀的递归挖掘方法和前缀d一样。如附图3所示,首先对前缀d的后缀进行支持度计数,得到{a:1,b:2,c:3,d:0,e:1,f:1,_f:1},注意:f和_f是不一样的,因为前者是在和前缀d不同的项集,而后者是和前缀d同项集。由于此时a、d、e、f和_f的支持度均小于1/α,因此,递归得到的前缀为d的2项频繁序列为<db>和<dc>,接着分别递归db和dc为前缀所对应的投影序列。首先是db前缀,此时对应的投影后缀只有<_c(ae)>、_c、a和e支持度均小于1/α,因此,无法找到以db为前缀的频繁序列。递归另外一个前缀dc,以dc为前缀的投影序列为<_f>、<(bc)(ae)>和<b>,进行支持度计数,结果为{b:2,a:1,c:1,e:1,_f:1},只有b的支持度不小于1/α,因此得到前缀为dc的三项频繁序列为<dcb>。继续递归以<dcb>为前缀的频繁序列。由于前缀<dcb>对应的投影序列<(_c)ae>支持度小于1/α,因此不能产生4项频繁序列。至此以d为前缀的频繁序列挖掘结束,产生的频繁序列为<d>、<db>、<dc>和<dcb>。同样的方法可以得到其他以<a>、<b>、<c>、<e>和<f>为前缀的频繁序列。

为了更好地说明步骤s102的技术方案,以下以目标文本包含的句子是以下三个句子为例:

首先假定的最小支持度阈值α=0.5,统计所有词语出现样本数即支持度,同时过滤不符合最小支持度阈值α的词,即,在以上3个句话中词语至少出现2个才能符合该最小支持度阈值α,符合最小支持度阈值α的词语及其支持度如下:

对满足最小支持度阈值α的词语进行停用词过滤,即去除“的”、“了”……等没有实际意义的词。剩余词语在文本中的出现形式如下:

将符合最小支持度阈值α的词序列元素构造一项前缀与其对应后缀,结果为:

以二项前缀是“kelee”为例,继续挖掘满足最小支持度阈值α的二项前缀和对应后缀为:

继续挖掘满足最小支持度阈值α的三项前缀和对应后缀为:

至此,迭代结束。然后,对目标文本所有频繁序列模式之间的包含关系进行判断;若所有频繁序列模式中任一频繁序列模式fs1是所有频繁序列模式中另一频繁序列模式fs2的子序列模式,则删除频繁序列模式fs1,保留频繁序列模式fs2。此处对子序列定义为:若某个序列a所有的项集在序列b中的项集都可以找到,则a是b的子序列。根据该定义,对于序列和序列,,如果存在数字序列,满足,...,则称a是b的子序列,而b是a的超序列。对于挖掘得到的各个频繁序列模式,若超序列模式本身含有更多的参考信息,即超序列模式包含子序列模式未包含的上下文辅助词,则保留超序列模式,删除子序列模式。以超序列模式“kelee坠机事故”与子序列模式“kelee坠机”为例,超序列模式在子序列模式的基础上还包括了上下文辅助信息“事故”,因此,保留超序列模式“kelee坠机事故”,删除子序列模式“kelee坠机”。

步骤s103:提取目标文本的候选关键词,构成候选关键词集。

具体而言,提取目标文本的候选关键词,构成候选关键词集可以是:对目标文本进行分词,得到目标文本包含的词语,将目标文本包含的词语进行去重,去重后的词语作为目标文本的候选关键词,构成候选关键词集。至于对目标文本进行分词的方法,可以是前述实施例提及的方法,此处不做赘述,而将目标文本包含的词语进行去重,是指去除重复的词语,即,将分词后得到的相同的词语,只记录其中的一个。

需要说明的是,由于经上述步骤s102获取的目标文本的全局主题特征q1,其实现方式或算法本质与经上述步骤s103得到的目标文本的关键词局部特征q2的实现方式或算法本质完全不同,因此,目标文本的全局主题特征q1和目标文本的关键词局部特征q2的相关度极小,甚至没有什么相关性,这符合了利用贝叶斯模型解决问题的强假设条件。

步骤s104:以特征集q作为贝叶斯模型的输入,根据贝叶斯模型在满足第一条件时从候选关键词集确定的关键词a,将所述关键词a作为目标文本的关键词,其中,特征集q包括目标文本的全局主题特征q1和关键词局部特征q2,第一条件为贝叶斯模型求取条件概率p(a|q)不小于第一预设阈值,a为候选关键词集。

作为公知技术,贝叶斯模型为。在特征集q作为贝叶斯模型的输入、a为候选关键词集时,当条件概率p(a|q)不小于第一预设阈值,此时对应的候选关键词集中的候选关键词就是目标文本的关键词。进一步地,由于对目标文本而言,在a为候选关键词集时,p(a)的值是确定的,因此,要使得条件概率p(a|q)不小于第一预设阈值,实际是要使得不小于一个预设阈值。

作为本申请一个实施例,步骤s104的实现可通过如下步骤s1041和步骤s1042实现:

步骤s1041:将贝叶斯模型中的部分转换为每个候选关键词与全局主题特征q1的互信息以及每个候选关键词与关键词局部特征q2的互信息之和,其中,a中的元素。

由于,而,因此,,对取对数,得到,从而,将部分转换为每个候选关键词与全局主题特征q1的互信息以及每个候选关键词与关键词局部特征q2的互信息之和,即=

从上述步骤s1041可知,将贝叶斯模型中的部分转化为每个候选关键词与全局主题特征q1以及每个候选关键词与关键词局部特征q2的互信息的计算,因此,提高了贝叶斯模型计算的效率,同时减少了目标文本的关键词提取过程的噪声影响。

步骤s1042:比较与第二预设阈值,将不小于第二预设阈值时的确定为关键词a

设定第二预设阈值,将与第二预设阈值比较,当不小于第二预设阈值时,此时得到的确定为目标文本的关键词a

从上述附图1示例的技术方案可知,一方面,由于一个文本的关键词不仅与全局信息相关,还与局部信息相关,因此,本申请实施例基于目标文本的全局主题特征q1和关键词局部特征q2等更多维度的提取而得到目标文本的关键词,其精度要高于现有技术仅仅基于全局信息获取的文本关键词的精度;另一方面,由于目标文本的全局主题特征q1与目标文本的关键词局部特征q2的相关度很小即满足贝叶斯模型的特征独立性的假设,因此,能够应用贝叶斯模型这一经典模型提取关键词,在计算效率上有了提高的可能。

请参阅附图4,是本申请实施例提供的一种提取文本关键词的装置的结构示意图,该装置可以集成在终端等计算机设备中,该装置包括第一特征获取模块401、第二特征获取模块402、提取模块403和关键词确定模块404,其中:

第一特征获取模块401,用于通过统计模型,获取目标文本的全局主题词,以得到目标文本的全局主题特征q1;

第二特征获取模块402,用于挖掘目标文本的频繁序列模式,以得到目标文本的关键词局部特征q2;

提取模块403,用于提取目标文本的候选关键词,构成候选关键词集;

关键词确定模块404,用于以特征集q作为贝叶斯模型的输入,根据贝叶斯模型在满足第一条件时从候选关键词集确定的关键词a,将关键词a作为目标文本的关键词,其中,特征集q包括目标文本的全局主题特征q1和关键词局部特征q2,第一条件为贝叶斯模型求取条件概率p(a|q)不小于第一预设阈值,a为候选关键词集。

在一种可能实现方式中,第一特征获取模块401还可以包括主题分布向量提取单元、词向量提取单元和相似度计算单元,其中:

分布向量提取单元,用于采用狄利克雷分布lda模型,提取目标文本的主题分布向量;

词向量提取单元,用于对目标文本进行分词以得到目标文本的词语,并通过词嵌入获取词语的词向量;

相似度计算单元,用于计算词语的词向量与目标文本的主题分布向量的相似度,将词语中词向量与主题分布向量的相似度大于预设阈值的词语确定为目标文本的全局主题词。

在一种可能实现方式中,附图4示例的装置还可以包括聚类模块,用于将目标文本的全局主题词进行聚类,聚类后得到的主题标签作为目标文本的全局主题特征q1。

在一种可能实现方式中,第二特征获取模块402还可以包括序列化单元单元、前缀投影确定单元、删除单元和递归挖掘单元,其中:

序列化单元,用于将目标文本的字词序列化为序列,得到序列数据集s,记i为一个序列的长度;

前缀投影确定单元,用于从字词序列中寻找长度为1的序列前缀和对应投影数据集;

删除单元,用于将支持度小于1/α的前缀对应的项从序列数据集s删除,得到所有频繁1项序列,其中,α为最小支持度阈值;

递归挖掘单元,用于对于每个长度为i且满足支持度要求的序列的前缀进行如下递归挖掘:步骤s41、确定序列的前缀对应的投影数据集,若投影数据集为空,则递归返回;步骤s42、统计投影数据集中各项的支持度,若所有项的支持度都小于1/α,则递归返回;步骤s43、将支持度大于1/α的单项和当前的前缀进行合并,得到新的前缀;步骤s44、令i增加1,前缀为合并单项后的各个前缀,分别递归执行步骤s41至步骤s44,直至得到所述目标文本所有频繁序列模式。

在一种可能实现方式中,附图4示例的装置还可以包括判断模块和保留模块,其中:

判断模块,用于对目标文本所有频繁序列模式之间的包含关系进行判断;

保留模块,用于若所有频繁序列模式中任一频繁序列模式fs1是所有频繁序列模式中另一频繁序列模式fs2的子序列模式,则删除频繁序列模式fs1,保留频繁序列模式fs2。

在一种可能实现方式中,提取模块403还可以包括分词单元和去重单元,其中:

分词单元,用于对目标文本进行分词,得到目标文本包含的词语;

去重单元,用于将目标文本包含的词语进行去重,去重后的词语作为目标文本的候选关键词。

在一种可能实现方式中,关键词确定模块404还可以包括转换单元和过滤单元,其中:

转换单元,用于将贝叶斯模型中的部分转换为每个候选关键词与目标文本的全局主题特征q1的互信息以及每个候选关键词与目标文本的关键词局部特征q2的互信息之和,其中,a中的元素;

过滤单元,用于比较与第二预设阈值,将不小于第二预设阈值时的确定为目标文本的关键词a

需要说明的是,上述实施例提供的提取文本关键词的装置在提取文本关键词时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的提取文本关键词的装置与提取文本关键词的方法实施例属于同一构思,其具体实现过程以及技术效果详见方法实施例,此处不再赘述。

本申请实施例还提供一种计算机设备,该计算机设备可以为终端或者服务器等设备,如图5所示,其示出了本申请实施例所涉及的计算机设备的结构示意图,具体来讲:

该计算机设备可以包括一个或者一个以上处理核心的处理器501、一个或一个以上计算机可读存储介质的存储器502、电源503和输入单元504等部件。本领域技术人员可以理解,图5中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:

处理器501是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器502内的软件程序和/或模块,以及调用存储在存储器502内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器501可包括一个或多个处理核心;优选的,处理器501可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器501中。

存储器502可用于存储软件程序以及模块,处理器501通过运行存储在存储器502的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器502还可以包括存储器控制器,以提供处理器501对存储器502的访问。

计算机设备还包括给各个部件供电的电源503,可选地,电源503可以通过电源管理系统与处理器501逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源503还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

该计算机设备还可包括输入单元504,该输入单元504可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。

尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器501会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现各种功能,如下:通过统计模型,获取目标文本的全局主题词,以得到目标文本的全局主题特征q1;挖掘目标文本的频繁序列模式,以得到目标文本的关键词局部特征q2;提取目标文本的候选关键词,构成候选关键词集;以特征集q作为贝叶斯模型的输入,根据贝叶斯模型在满足第一条件时从候选关键词集确定的关键词a,将关键词a作为目标文本的关键词,其中,特征集q包括目标文本的全局主题特征q1和关键词局部特征q2,第一条件为贝叶斯模型求取条件概率p(a|q)不小于第一预设阈值,a为候选关键词集征集q包括目标文本的全局主题特征q1和关键词局部特征q2,a为候选关键词集。

以上个操作的具体实施例可参见前面的实施例,在此不再赘述。

由以上可知,一方面,由于一个文本的关键词不仅与全局信息相关,还与局部信息相关,因此,本申请实施例基于目标文本的全局主题特征q1和关键词局部特征q2等更多维度的提取而得到目标文本的关键词,其精度要高于现有技术仅仅基于全局信息获取的文本关键词的精度;另一方面,由于目标文本的全局主题特征q1与目标文本的关键词局部特征q2的相关度很小即满足贝叶斯模型的特征独立性的假设,因此,能够应用贝叶斯模型这一经典模型提取关键词,在计算效率上有了提高的可能。

本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。

为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种提取文本关键词的方法中的步骤。例如,该指令可以执行如下步骤:通过统计模型,获取目标文本的全局主题词,以得到目标文本的全局主题特征q1;挖掘目标文本的频繁序列模式,以得到目标文本的关键词局部特征q2;提取目标文本的候选关键词,构成候选关键词集;以特征集q作为贝叶斯模型的输入,根据贝叶斯模型在满足第一条件时从候选关键词集确定的关键词a,将关键词a作为目标文本的关键词,其中,特征集q包括目标文本的全局主题特征q1和关键词局部特征q2,第一条件为贝叶斯模型求取条件概率p(a|q)不小于第一预设阈值,a为候选关键词集征集q包括目标文本的全局主题特征q1和关键词局部特征q2,a为候选关键词集。

以上各个操作的具体实施方式可参见前面的实施例,在此不再赘述。

其中,该计算机可读存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)、磁盘或光盘等。

由于该计算机可读存储介质中所存储的指令,可以执行本申请实施例所提供的任一种提取文本关键词的方法中的步骤,因此,可以实现本申请实施例所提供的任一种提取文本关键词的方法所能实现的有益效果,详见前面的实施例,在此不再赘述。

以上对本申请实施例所提供的一种提取文本关键词的方法、设备和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1