CN111460099B - 关键词提取方法、装置及存储介质 - Google Patents
关键词提取方法、装置及存储介质 Download PDFInfo
- Publication number
- CN111460099B CN111460099B CN202010235858.1A CN202010235858A CN111460099B CN 111460099 B CN111460099 B CN 111460099B CN 202010235858 A CN202010235858 A CN 202010235858A CN 111460099 B CN111460099 B CN 111460099B
- Authority
- CN
- China
- Prior art keywords
- candidate
- word
- words
- candidate word
- keyword extraction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明揭露了一种关键词提取方法,该方法包括:接收携带目标文本的关键词提取请求;对所述目标文本进行切词、词性标注、二次切分及序列拼接生成候选词集合;计算所述候选词集合中各候选词的评分;筛选出评分大于或等于预设评分阈值的候选词作为所述目标文本的关键词。本发明还揭露了一种电子装置及计算机存储介质。利用本发明,可以提高关键词提取的准确性。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种关键词提取方法、电子装置及计算机可读存储介质。
背景技术
在对文章进行内容上的梳理与分析时,对文章中的关键词进行提取,进而可以通过少量信息判断文章的内容,并且关键词提取还可以帮助对新闻流的分析与信息提取。进而帮助其他算法更加清晰的对新闻流进行分析。
对于关键词的发掘技术主要有以下几种:1)RAKE算法,是一种在英文场景下基于贪婪算法的一种关键词发掘算法,主要是通过语言本身的间隔词切分候选集,在利用词语本身在文章中的共现性计算词语权重,进而达到关键词发掘的效果;2)词典切词+TextRank算法,是一种将文章切分成词语之后之后,利用词语在文章中的共现性生成指向关系与权重,进而得到有向图与转移矩阵,再从中提取词语在文章中的权重的方法;3)基于TF-iDF计算的关键词发现;4)基于LDA方法实现的类别关键词提取。
然而,这几种技术分别有自己的不足之处:
对于RAKE来说,短板主要为:设计之初应对英文环境,假设完全不符合中文语言特征;以单个字为基础单位,效果并不理想;英文环境中一般通过动词与谓语以及标点符号进行分割,中文动词与谓语特征并不唯一且动词与名词在很多场景词下分别并不明晰;基于贪婪算法,结果更偏好最长词而不是最优词。在处理中文文本中,中文使用停用词来划分短语的效果远不及英文,一句话根本分不了几个关键词,几乎全部粘连在一起,因此效果不好;
对于Text Rank来说,短板主要来自于对于切词器的依赖,词语需要被加入词典才能被正确切出,而很多热词本身是全新的词语,则会在生成候选集的时候被错误切分,导致结果受到影响。并且Text Rank由于需要将文章内容转化成图结构,以计算转移矩阵,对运算量的要求相对较大。进而并不适合在大量新闻流或文章流中发现关键词;
对于TF-iDF,瓶颈则来自于两个部分,首先是中文中的切词结果会影响候选集的效果,如果无法正确切出候选集,那么后面的关键词提取也无从谈起了。而切词器本身则高度依赖于提前准备的自定义辞典。因此TF-iDF算法对于新鲜词语的应对能力几乎为零。另外TF-iDF本身是针对词语在大量文章中计算iDF,iDF的计算则依赖于海量文章,预训练成本太高且需要经常迭代;
基于LDA的关键词发现如同上面的Text-Rank算法,依旧对于切词效果有着严重依赖,无法准确切词就无法准确提取。并且LDA需要大量数据进行分类,并且还有类别数量的选择,都会对结果有着巨大影响。
因此,如何实现快速准确提取关键词成为了亟待解决的问题。
发明内容
鉴于以上内容,本发明提供一种关键词提取方法、电子装置及计算机可读存储介质,其主要目的在于提高关键词提取的准确性。
为实现上述目的,本发明提供一种关键词提取方法,该方法包括:
接收步骤,接收用户通过客户端发出的关键词提取请求,根据所述关键词提取请求获取目标文本;
预处理步骤,对所述目标文本进行切词,基于切词结果将所述目标文本转换为词语序列,并对所述词语序列中的词语进行词性标注,对词性标注后的所述词语序列进行二次切分生成候选序列,对所述候选序列中的词语进行拼接生成候选词集合;
评分步骤,根据所述候选序列生成词语共现矩阵,基于所述共现矩阵对所述候选词集合中各候选词进行特征提取,基于提取的特征计算所述候选词集合中各候选词的评分;及
提取步骤,从所述候选词集合中筛选出评分大于或等于预设评分阈值的候选词作为所述目标文本的关键词,将所述关键词返回至所述客户端。
此外,为实现上述目的,本发明还提供一种电子装置,该装置包括:存储器、处理器,所述存储器中存储有可在所述处理器上运行的关键词提取程序,所述关键词提取程序被所述处理器执行时可实现如上所述关键词提取方法中的任意步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中包括关键词提取程序,所述关键词提取程序被处理器执行时,可实现如上所述关键词提取方法中的任意步骤。
本发明提出的关键词提取方法、电子装置及计算机可读存储介质,通过对目标文本极性切分-词性标注-二次切分-序列拼接得到候选词集合,相较于传统的RAKE算法,更适用于中文场景,使得提取到的候选词集合更准确,为提取关键词奠定基础;通过优化RAKE算法,增加词长惩罚,中和了RAKE算法本身贪婪算法对长词的偏好,保证真正有意义的长词被筛选出来、过滤掉无意义的词,提高了候选词的准确性,为提取关键词奠定基础;综上,基于筛选出的候选词集合中各候选词的评分确定目标文本的关键词,提高了关键词提取的准确性。
附图说明
图1为本发明关键词提取方法较佳实施例的流程图;
图2为本发明电子装置较佳实施例的示意图;
图3为图2中关键词提取程序较佳实施例的程序模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种关键词提取方法。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。
参照图1所示,为本发明关键词提取方法较佳实施例的流程图。
在本发明关键词提取方法一实施例中,该方法包括:步骤S1-步骤S6。
步骤S1,接收用户通过客户端发出的关键词提取请求,根据所述关键词提取请求获取目标文本。
本实施例中,以电子装置作为执行主体对方案进行说明。电子装置接收用户通过客户端发出的提取关键词的请求,请求中携带待提取关键词的目标文本。
步骤S2,对所述目标文本进行切词,基于切词结果将所述目标文本转换为词语序列,并对所述词语序列中的词语进行词性标注,对词性标注后的所述词语序列进行二次切分生成候选序列,对所述候选序列中的词语进行拼接生成候选词集合。
上述对目标文本进行切词的步骤利用切词器分词完成,例如,可利用jieba等分词器达成,不加载自定义辞典且不使用切词器本身的新词发现功能,尽可能将文章切成小的单位,进而生成由词语构成的词语序列。
例如,在“当地时间8月19日,法国巴黎圣母院维修工程重新启动。巴黎圣母院4月15日突发火灾,屋顶和塔尖被烧毁”这一文本中,经过切词器,文章会被转换为“「当地|时间|8|月|19|日|,|法国|巴黎|圣母|院|维修|工程|重新|启动|。|巴黎|圣母|院|4|月|15|日|突发|火灾|,|屋顶|和|尖塔|被|烧毁」”的词语序列。
需要说明的是,传统的RAKE算法本身并不对文本进行分词处理,而是直接使用英文中的空格作为分割。然而在中文文本中,若直接套用字级别的处理效果会非常差,因此本实施例通过增加切词模块,使得文本生成的序列更加满足中文场景下的语言特征,进而达到更好的效果。
在本实施例中,所述对所述词语序列中的词语进行词性标注,包括:
分别识别所述词语序列中各词语的词性,对预设类型词性的词语进行词性标注。
上述预设类型词性包括:数词、量词、连词、介词等有明显特征的词性。鉴于动词、名词等词性受上下文影响较大且相对不准确,故不进行标注。在其他实施例中,可以对预设类型词性进行扩充,例如,增加动词词性,鉴于在实际操作的中文场景中,动词词性标注准确率较低,因此,会降低生成的候选词集合的质量,具体可以根据实际需求进行调整。
例如,在“「当地|时间|8|月|19|日|,|法国|巴黎|圣母|院|维修|工程|重新|启动|。|巴黎|圣母|院|4|月|15|日|突发|火灾|,|屋顶|和|尖塔|被|烧毁」”这一词语序列中,“8、月、19、日、4、月、15、日、和、被”都会被打上对应的词性标记。
在本实施例中,所述对词性标注后的所述词语序列进行二次切分生成候选序列,包括:
使用中文中的关联词、停用词、数词+量词的组合、标点符号及明确词性的词语对所述词语序列进行切分,生成所述候选序列。
例如,在“「当地|时间|8|月|19|日|,|法国|巴黎|圣母|院|维修|工程|重新|启动|。|巴黎|圣母|院|4|月|15|日|突发|火灾|,|屋顶|和|尖塔|被|烧毁」”这段词语序列中,经过二次切分会生成候选序列:“「当地|时间」、「法国|巴黎|圣母|院|维修|工程|重新|启动」、「巴黎|圣母|院」、「突发|火灾」、「屋顶」、「尖塔」、「烧毁」”。
经过以上步骤生成目标文本的候选序列后,便可依据候选序列生成候选词集合。例如“「当地|时间」、「法国|巴黎|圣母|院|维修|工程|重新|启动」、「巴黎|圣母|院」、「突发|火灾」、「屋顶」、「尖塔」、「烧毁」”会分别生成“当地时间、法国巴黎圣母院维修工程重新启动、巴黎圣母院、突发火灾、屋顶、尖塔、烧毁”这些候选词,这些候选词形成候选词序列,即,候选词集合。
步骤S3,根据所述候选序列生成词语共现矩阵,基于所述共现矩阵对所述候选词集合中各候选词进行特征提取,基于提取的特征计算所述候选词集合中各候选词的评分。
上述根据所述候选序列生成词语共现矩阵的步骤中,共现矩阵中的词语维度根据所述候选序列中最小语义单元确定,共线矩阵中的共现频率根据所述候选词序列中各候选词确定。
例如,在候选序列「当地|时间」、「法国|巴黎|圣母|院|维修|工程|重新|启动」、「巴黎|圣母|院」、「突发|火灾」、「屋顶」、「尖塔」、「烧毁」中,对应的词语共现矩阵如下表所示:
在确定候选序列对应的共线矩阵后,提取候选词的特征。在本实施例中,所述基于所述共现矩阵对所述候选词集合中各候选词进行特征提取,包括:
确定所述候选词集合中各候选词对应的最小语义单元集合;及
根据所述共现矩阵提取各候选词对应的所述最小语义单元集合中各最小语义单元的特征,作为各候选词的特征。
在本实施例中,上述候选词的特征包括:出现频次freq(word)与共现次数deg(word),其中,freq(word)为单词与自身的共现次数,deg(word)为单词与所有词共现次数之和,其中,word表示最小语义单元。
提取到各候选词的特征后,利用提取的特征计算各候选词的评分,所述基于提取的特征计算所述候选词集合中各候选词的评分,包括:
从所述候选词集中剔除相同的候选词并记录候选词的出现频数;
基于预设评分算法计算所述候选词集合中的各候选词的打分。
在本实施例中,上述预设评分算法为优化后的RAKE算法。
RAKE原生的评分算法是根据单个语义单元在文本中的出现频次freq(word)和词语共现次数deg(word)进行评分,评分公式为:
原生的评分算法是一种基于贪婪算法思想的计算方式,因此分数会偏向于尽可能长的候选集,进而增加打分结果,使得RAKE算法本身更加偏向于长文段而不是真正有意义的文段。
因此,本实施例在原生的评分算法上增加了惩罚函数,该函数的逻辑是根据长短给予基础惩罚,在根据出现次数为词语增加增益,使得优质长词能被保留而杂志可以被过滤。优化后的RAKE算法的评分公式为:
其中,c为常数项,可以根据效果调整,candidate表示所述候选词集合中的某一个候选词,例如,巴黎圣母院,word表示某一个候选词的单个语义单元,例如,巴黎圣母院这一candidate的单个语义单元word包括:巴黎、圣母、院。
本实施例中的惩罚函数的公式为:
其中,α、β均为常数,可根据实际效果进行调整。
惩罚函数的思路是通过设定α,为候选集设定一定偏好词长,根据与偏好词长的差异的增大提高惩罚等级,使得最终得到的惩罚系数变小,进而降低最终评分,而β在评分之中起到了惩罚严格程度的约束效果,当β变小时,对于同一惩罚等级的词,给予更好的惩罚严厉程度,使得最终的惩罚系数变小,进而降低最终评分。
本实施例中的惩罚函数符合正态分布。在其他实施例中,惩罚函数可以根据需要替换为其他分布的拟合曲线,例如,偏态分布或者beta分布曲线。
例如,在上述候选词集合中,根据原始的RAKE评分算法,评分如下:
巴黎圣母院:16.5
法国巴黎圣母院维修工程重新启动:56.5
由此可见,长词的评分远大于巴黎圣母院,当该长词并不是一个优质候选词时,会出现长词埋没优质词的情况。
使用优化后的评分算法时,假设c=1,α=3,β=3,评分如下:
通过加入惩罚函数,可以保证“巴黎圣母院”的评分高于“法国巴黎圣母院维修工程重新启动”的评分。
步骤S4,从所述候选词集合中筛选出评分大于或等于预设评分阈值的候选词作为所述目标文本的关键词,将所述关键词返回至所述客户端。
可以理解的是,候选词的评分高低反映了候选词在文本中的重要程度,评分越高,候选词越重要。通过设置预设评分阈值对候选词进行筛选,提高关键词提取的准确性。例如,预设评分阈值为5。
在计算出候选词集合中各候选词分评分后,根据评分高低顺序对所述候选词集合中的关键词进行排序,提取出评分大于或等于预设评分阈值的候选词作为所述目标文本的关键词,根据评分筛选出的关键词以评分从高到低的顺序输出至客户端。
在其他实施例中,还可以根据候选词的评分,筛选出预设数量(例如,前十)或者预设比例(例如,8%)的评分较高的候选词作为目标文本的关键词。
在其他实施例中,在步骤S4之前,该方法还包括:
基于预设过滤规则对所述候选集中的候选词进行过滤,得到过滤后的候选词集合。
为了提高筛选出的候选词的纯净度,在本实施例中,所述基于预设过滤规则对所述候选集中的候选词进行过滤,得到过滤后的候选词集合,包括:
将所述候选集中的候选词与预设黑名单进行比对,从所述候选集中的过滤掉与所述预设黑名单匹配的候选词,得到初步过滤结果;
分别所述初步过滤结果中各候选词的词频,从所述初步过滤结果中筛选出词频大于或等于预设词频阈值的候选词,得到过滤后的候选词集合。
黑名单机制可以通过成本最低的方法实现对结果的初步过滤。黑名单主要分为两个部分,分别是:媒体词黑名单及类别性黑名单。
1)媒体词黑名单,即媒体名、记者、编辑与作者的名字,由于新闻的特性,这些词语会在文章中高频出现,为了保证最终效果,可将其加入黑名单中过滤。
2)类别性黑名单,可以根据文章本身的类别或者来源进行高频词过滤,例如在股评类文章中,净利润,总营收,应收账款等词语可以加入黑名单进行过滤。
除了上述的黑名单外,还基于计算好的词语iDF表对初步过滤结果进行过滤。可以理解的是,低iDF意味着词语在大量文本中高频出现,因此词语的意义更小,甚至可以根据iDF判断候选词是否为文本中的停用词。
需要说明的是,若对筛选结果的纯净度要求不高,也可以不进行该过滤步骤。
在其他实施例中,根据评分筛选出关键词的同时,还采用一种或多种其他关键词提取算法得到关键词提取结果,例如,BiLSTM+CRF、TextRank。取多种关键词提取算法的提取结果的并集(使提取的关键词更全面)或交集(使提取的关键词更准确),可以实现优化关键词的提取结果,但是会增加计算量,具体可根据实际需求进行调整。
上述实施例提出的关键词提取方法,通过对目标文本极性切分-词性标注-二次切分-序列拼接得到候选词集合,相较于传统的RAKE算法,更适用于中文场景,使得提取到的候选词集合更准确,为提取关键词奠定基础;通过优化RAKE算法,增加词长惩罚,中和了RAKE算法本身贪婪算法对长词的偏好,保证真正有意义的长词被筛选出来、过滤掉无意义的词,提高了候选词的准确性,为提取关键词奠定基础;综上,基于筛选出的候选词集合中各候选词的评分确定目标文本的关键词,提高了关键词提取的准确性。
本发明还提出一种电子装置。参照图2所示,为本发明电子装置较佳实施例的示意图。
在本实施例中,电子装置1可以是服务器、智能手机、平板电脑、便携计算机、桌上型计算机等具有数据处理功能的终端设备,所述服务器可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器。
该电子装置1包括存储器11、处理器12及网络接口13。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是所述电子装置1的内部存储单元,例如该电子装置1的硬盘。存储器11在另一些实施例中也可以是所述电子装置1的外部存储设备,例如该电子装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括该电子装置1的内部存储单元也包括外部存储设备。
存储器11不仅可以用于存储安装于该电子装置1的应用软件及各类数据,例如,关键词提取程序10等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如,关键词提取程序10等。
网络接口13可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该电子装置1与其他电子设备之间建立通信连接,例如,客户端(图中未标识)。电子装置1的组件11-13通过通信总线相互通信。
图2仅示出了具有组件11-13的电子装置1,本领域技术人员可以理解的是,图2示出的结构并不构成对电子装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
可选地,该电子装置1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。
可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。其中,显示器也可以称为显示屏或显示单元,用于显示在电子装置1中处理的信息以及用于显示可视化的用户界面。
在图2所示的电子装置1实施例中,作为一种计算机存储介质的存储器11中存储关键词提取程序10的程序代码,处理器12执行关键词提取程序10的程序代码时,实现如下步骤:
接收步骤,接收用户通过客户端发出的关键词提取请求,根据所述关键词提取请求获取目标文本。
本实施例中,以电子装置1作为执行主体对方案进行说明。电子装置1接收用户通过客户端发出的提取关键词的请求,请求中携带待提取关键词的目标文本。
预处理步骤,对所述目标文本进行切词,基于切词结果将所述目标文本转换为词语序列,并对所述词语序列中的词语进行词性标注,对词性标注后的所述词语序列进行二次切分生成候选序列,对所述候选序列中的词语进行拼接生成候选词集合。
上述对目标文本进行切词的步骤利用切词器分词完成,例如,可利用jieba等分词器达成,不加载自定义辞典且不使用切词器本身的新词发现功能,尽可能将文章切成小的单位,进而生成由词语构成的词语序列。
例如,在“当地时间8月19日,法国巴黎圣母院维修工程重新启动。巴黎圣母院4月15日突发火灾,屋顶和塔尖被烧毁”这一文本中,经过切词器,文章会被转换为“「当地|时间|8|月|19|日|,|法国|巴黎|圣母|院|维修|工程|重新|启动|。|巴黎|圣母|院|4|月|15|日|突发|火灾|,|屋顶|和|尖塔|被|烧毁」”的词语序列。
需要说明的是,传统的RAKE算法本身并不对文本进行分词处理,而是直接使用英文中的空格作为分割。然而在中文文本中,若直接套用字级别的处理效果会非常差,因此本实施例通过增加切词模块,使得文本生成的序列更加满足中文场景下的语言特征,进而达到更好的效果。
在本实施例中,所述对所述词语序列中的词语进行词性标注,包括:
分别识别所述词语序列中各词语的词性,对预设类型词性的词语进行词性标注。
上述预设类型词性包括:数词、量词、连词、介词等有明显特征的词性。鉴于动词、名词等词性受上下文影响较大且相对不准确,故不进行标注。在其他实施例中,可以对预设类型词性进行扩充,例如,增加动词词性,鉴于在实际操作的中文场景中,动词词性标注准确率较低,因此,会降低生成的候选词集合的质量,具体可以根据实际需求进行调整。
例如,在“「当地|时间|8|月|19|日|,|法国|巴黎|圣母|院|维修|工程|重新|启动|。|巴黎|圣母|院|4|月|15|日|突发|火灾|,|屋顶|和|尖塔|被|烧毁」”这一词语序列中,“8、月、19、日、4、月、15、日、和、被”都会被打上对应的词性标记。
在本实施例中,所述对词性标注后的所述词语序列进行二次切分生成候选序列,包括:
使用中文中的关联词语、停用词、数词+量词的组合、标点符号及明确词性的词语对所述词语序列进行切分,生成所述候选序列。
例如,在“「当地|时间|8|月|19|日|,|法国|巴黎|圣母|院|维修|工程|重新|启动|。|巴黎|圣母|院|4|月|15|日|突发|火灾|,|屋顶|和|尖塔|被|烧毁」”这段词语序列中,经过二次切分会生成候选序列:“「当地|时间」、「法国|巴黎|圣母|院|维修|工程|重新|启动」、「巴黎|圣母|院」、「突发|火灾」、「屋顶」、「尖塔」、「烧毁」”。
经过以上步骤生成目标文本的候选序列后,便可依据候选序列生成候选词集合。例如“「当地|时间」、「法国|巴黎|圣母|院|维修|工程|重新|启动」、「巴黎|圣母|院」、「突发|火灾」、「屋顶」、「尖塔」、「烧毁」”会分别生成“当地时间、法国巴黎圣母院维修工程重新启动、巴黎圣母院、突发火灾、屋顶、尖塔、烧毁”这些候选词,这些候选词形成候选词序列,即,候选词集合。
评分步骤,根据所述候选序列生成词语共现矩阵,基于所述共现矩阵对所述候选词集合中各候选词进行特征提取,基于提取的特征计算所述候选词集合中各候选词的评分。
上述根据所述候选序列生成词语共现矩阵的步骤中,共现矩阵中的词语维度根据所述候选序列中最小语义单元确定,共线矩阵中的共现频率根据所述候选词序列中各候选词确定。
例如,在候选序列「当地|时间」、「法国|巴黎|圣母|院|维修|工程|重新|启动」、「巴黎|圣母|院」、「突发|火灾」、「屋顶」、「尖塔」、「烧毁」中,对应的词语共现矩阵如下表所示:
在确定候选序列对应的共线矩阵后,提取候选词的特征。在本实施例中,所述基于所述共现矩阵对所述候选词集合中各候选词进行特征提取,包括:
确定所述候选词集合中各候选词对应的最小语义单元集合;及
根据所述共现矩阵提取各候选词对应的所述最小语义单元集合中各最小语义单元的特征,作为各候选词的特征。
在本实施例中,上述候选词的特征包括:出现频次freq(word)与共现次数deg(word),其中,freq(word)为单词与自身的共现次数,deg(word)为单词与所有词共现次数之和,其中,word表示最小语义单元。
提取到各候选词的特征后,利用提取的特征计算各候选词的评分,所述基于提取的特征计算所述候选词集合中各候选词的评分,包括:
从所述候选词集中剔除相同的候选词并记录候选词的出现频数;
基于预设评分算法计算所述候选词集合中的各候选词的打分。
在本实施例中,上述预设评分算法为优化后的RAKE算法。
RAKE原生的评分算法是根据单个语义单元在文本中的出现频次freq(word)和词语共现次数deg(word)进行评分,评分公式为:
原生的评分算法是一种基于贪婪算法思想的计算方式,因此分数会偏向于尽可能长的候选集,进而增加打分结果,使得RAKE算法本身更加偏向于长文段而不是真正有意义的文段。
因此,本实施例在原生的评分算法上增加了惩罚函数,该函数的逻辑是根据长短给予基础惩罚,在根据出现次数为词语增加增益,使得优质长词能被保留而杂志可以被过滤。优化后的RAKE算法的评分公式为:
其中,c为常数项,可以根据效果调整,candidate表示所述候选词集合中的某一个候选词,例如,巴黎圣母院,word表示某一个候选词的单个语义单元,例如,巴黎圣母院这一candidate的单个语义单元word包括:巴黎、圣母、院。
本实施例中的惩罚函数的公式为:
其中,α、β均为常数,可根据实际效果进行调整。
惩罚函数的思路是通过设定α,为候选集设定一定偏好词长,根据与偏好词长的差异的增大提高惩罚等级,使得最终得到的惩罚系数变小,进而降低最终评分,而β在评分之中起到了惩罚严格程度的约束效果,当β变小时,对于同一惩罚等级的词,给予更好的惩罚严厉程度,使得最终的惩罚系数变小,进而降低最终评分。
本实施例中的惩罚函数符合正态分布。在其他实施例中,惩罚函数可以根据需要替换为其他分布的拟合曲线,例如,偏态分布或者beta分布曲线。
例如,在上述候选词集合中,根据原始的RAKE评分算法,评分如下:
巴黎圣母院:16.5
法国巴黎圣母院维修工程重新启动:56.5
由此可见,长词的评分远大于巴黎圣母院,当该长词并不是一个优质候选词时,会出现长词埋没优质词的情况。
使用优化后的评分算法时,假设c=1,α=3,β=3,评分如下:
通过加入惩罚函数,可以保证“巴黎圣母院”的评分高于“法国巴黎圣母院维修工程重新启动”的评分。
提取步骤,从所述候选词集合中筛选出评分大于或等于预设评分阈值的候选词作为所述目标文本的关键词,将所述关键词返回至所述客户端。
可以理解的是,候选词的评分高低反映了候选词在文本中的重要程度,评分越高,候选词越重要。通过设置预设评分阈值对候选词进行筛选,提高关键词提取的准确性。例如,预设评分阈值为5。
在计算出候选词集合中各候选词分评分后,根据评分高低顺序对所述候选词集合中的关键词进行排序,提取出评分大于或等于预设评分阈值的候选词作为所述目标文本的关键词,根据评分筛选出的关键词以评分从高到低的顺序输出至客户端。
在其他实施例中,还可以根据候选词的评分,筛选出预设数量(例如,前十)或者预设比例(例如,8%)的评分较高的候选词作为目标文本的关键词。
在其他实施例中,在提取步骤之前,所述关键词提取程序10被所述处理器12执行时还实现以下步骤:
基于预设过滤规则对所述候选集中的候选词进行过滤,得到过滤后的候选词集合。
为了提高筛选出的候选词的纯净度,在本实施例中,所述基于预设过滤规则对所述候选集中的候选词进行过滤,得到过滤后的候选词集合,包括:
将所述候选集中的候选词与预设黑名单进行比对,从所述候选集中的过滤掉与所述预设黑名单匹配的候选词,得到初步过滤结果;
分别所述初步过滤结果中各候选词的词频,从所述初步过滤结果中筛选出词频大于或等于预设词频阈值的候选词,得到过滤后的候选词集合。
黑名单机制可以通过成本最低的方法实现对结果的初步过滤。黑名单主要分为两个部分,分别是:媒体词黑名单及类别性黑名单。
1)媒体词黑名单,即媒体名、记者、编辑与作者的名字,由于新闻的特性,这些词语会在文章中高频出现,为了保证最终效果,可将其加入黑名单中过滤。
2)类别性黑名单,可以根据文章本身的类别或者来源进行高频词过滤,例如在股评类文章中,净利润,总营收,应收账款等词语可以加入黑名单进行过滤。
除了上述的黑名单外,还基于计算好的词语iDF表对初步过滤结果进行过滤。可以理解的是,低iDF意味着词语在大量文本中高频出现,因此词语的意义更小,甚至可以根据iDF判断候选词是否为文本中的停用词。
需要说明的是,若对筛选结果的纯净度要求不高,也可以不进行该过滤步骤。
上述实施例提出的电子装置1,通过对目标文本极性切分-词性标注-二次切分-序列拼接得到候选词集合,相较于传统的RAKE算法,更适用于中文场景,使得提取到的候选词集合更准确,为提取关键词奠定基础;通过优化RAKE算法,增加词长惩罚,中和了RAKE算法本身贪婪算法对长词的偏好,保证真正有意义的长词被筛选出来、过滤掉无意义的词,提高了候选词的准确性,为提取关键词奠定基础;综上,基于筛选出的候选词集合中各候选词的评分确定目标文本的关键词,提高了关键词提取的准确性。
可选地,在其他的实施例中,关键词提取程序10还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器12所执行,以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。
例如,参照图3所示,为图2中关键词提取程序10的程序模块示意图。
在所述关键词提取程序10一实施例中,关键词提取程序10包括:模块110-140,其中:
接收模块110,用于接收用户通过客户端发出的关键词提取请求,根据所述关键词提取请求获取目标文本;
预处理模块120,用于对所述目标文本进行切词,基于切词结果将所述目标文本转换为词语序列,并对所述词语序列中的词语进行词性标注,对词性标注后的所述词语序列进行二次切分生成候选序列,对所述候选序列中的词语进行拼接生成候选词集合;
评分模块130,用于根据所述候选序列生成词语共现矩阵,基于所述共现矩阵对所述候选词集合中各候选词进行特征提取,基于提取的特征计算所述候选词集合中各候选词的评分;及
提取模块140,用于从所述候选词集合中筛选出评分大于或等于预设评分阈值的候选词作为所述目标文本的关键词,将所述关键词返回至所述客户端。
所述模块110-140所实现的功能或操作步骤均与上文类似,此处不再详述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质中包括关键词提取程序10,所述关键词提取程序10被处理器执行时实现如下操作:
接收步骤,接收用户通过客户端发出的关键词提取请求,根据所述关键词提取请求获取目标文本;
预处理步骤,对所述目标文本进行切词,基于切词结果将所述目标文本转换为词语序列,并对所述词语序列中的词语进行词性标注,对词性标注后的所述词语序列进行二次切分生成候选序列,对所述候选序列中的词语进行拼接生成候选词集合;
评分步骤,根据所述候选序列生成词语共现矩阵,基于所述共现矩阵对所述候选词集合中各候选词进行特征提取,基于提取的特征计算所述候选词集合中各候选词的评分;及
提取步骤,从所述候选词集合中筛选出评分大于或等于预设评分阈值的候选词作为所述目标文本的关键词,将所述关键词返回至所述客户端。
本发明之计算机可读存储介质的具体实施方式与上述关键词提取方法的具体实施方式大致相同,在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种关键词提取方法,适用于电子装置,其特征在于,该方法包括:
接收步骤,接收用户通过客户端发出的关键词提取请求,根据所述关键词提取请求获取目标文本;
预处理步骤,对所述目标文本进行切词,基于切词结果将所述目标文本转换为词语序列,并对所述词语序列中的词语进行词性标注,对词性标注后的所述词语序列进行二次切分生成候选序列,对所述候选序列中的词语进行拼接生成候选词集合;
评分步骤,根据所述候选序列生成词语共现矩阵,基于所述共现矩阵对所述候选词集合中各候选词进行特征提取,基于提取的特征计算所述候选词集合中各候选词的评分;及
提取步骤,从所述候选词集合中筛选出评分大于或等于预设评分阈值的候选词作为所述目标文本的关键词,将所述关键词返回至所述客户端;
其中,所述基于提取的特征计算所述候选词集合中各候选词的评分,包括:从所述候选词集中剔除相同的候选词并记录候选词的出现频数,并基于预设评分算法计算所述候选词集合中的各候选词的打分,所述预设评分算法的公式为:
其中,c、α、β均为常数,Scorecandidate表示所述候选词集合中的某一个候选词的评分,candidate表示所述候选词集合中的某一个候选词,word表示某一个候选词的单个语义单元,freqword表示一个候选词的单个语义单元的出现频次,Punishcandidate表示一个候选词的惩罚函数。
2.根据权利要求1所述的关键词提取方法,其特征在于,所述对所述词语序列中的词语进行词性标注,包括:
分别识别所述词语序列中各词语的词性,对预设类型词性的词语进行词性标注。
3.根据权利要求1所述的关键词提取方法,其特征在于,所述对词性标注后的所述词语序列进行二次切分生成候选序列,包括:
使用关联词、停用词、数词+量词的组合、标点符号对所述词语序列进行切分,生成所述候选序列。
4.根据权利要求1所述的关键词提取方法,其特征在于,所述基于所述共现矩阵对所述候选词集合中各候选词进行特征提取,包括:
确定所述候选词集合中各候选词对应的最小语义单元集合;及
根据所述共现矩阵提取各候选词对应的所述最小语义单元集合中各最小语义单元的特征,作为各候选词的特征。
5.根据权利要求1所述的关键词提取方法,其特征在于,在提取步骤之前,该方法还包括:
基于预设过滤规则对所述候选词集合中的候选词进行过滤,得到过滤后的候选词集合。
6.根据权利要求5所述的关键词提取方法,其特征在于,所述基于预设过滤规则对所述候选词集合中的候选词进行过滤,得到过滤后的候选词集合,包括:
将所述候选词集合中的候选词与预设黑名单进行比对,从所述候选词集合中的过滤掉与所述预设黑名单匹配的候选词,得到初步过滤结果;及
分别所述初步过滤结果中各候选词的词频,从所述初步过滤结果中筛选出词频大于或等于预设词频阈值的候选词,得到过滤后的候选词集合。
7.一种电子装置,其特征在于,该装置包括存储器及处理器,所述存储器中存储有可在所述处理器上运行的关键词提取程序,所述关键词提取程序被所述处理器执行时可实现如权利要求1至6中任意一项所述的关键词提取方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包括关键词提取程序,所述关键词提取程序被处理器执行时,可实现如权利要求1至6中任意一项所述的关键词提取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010235858.1A CN111460099B (zh) | 2020-03-30 | 2020-03-30 | 关键词提取方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010235858.1A CN111460099B (zh) | 2020-03-30 | 2020-03-30 | 关键词提取方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111460099A CN111460099A (zh) | 2020-07-28 |
CN111460099B true CN111460099B (zh) | 2023-04-07 |
Family
ID=71681523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010235858.1A Active CN111460099B (zh) | 2020-03-30 | 2020-03-30 | 关键词提取方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111460099B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732893B (zh) * | 2021-01-13 | 2024-01-19 | 上海明略人工智能(集团)有限公司 | 文本信息的提取方法和装置、存储介质和电子设备 |
CN113761902B (zh) * | 2021-11-10 | 2022-02-11 | 中科雨辰科技有限公司 | 目标关键词提取系统 |
CN114818727A (zh) * | 2022-04-19 | 2022-07-29 | 北京金山数字娱乐科技有限公司 | 关键句抽取方法及装置 |
CN115909354B (zh) * | 2022-11-11 | 2023-11-10 | 北京百度网讯科技有限公司 | 文本生成模型的训练方法、文本获取方法及装置 |
CN117216192B (zh) * | 2023-09-25 | 2024-06-25 | 零一裂变(深圳)科技有限公司 | 一种企业咨询管理系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017084267A1 (zh) * | 2015-11-18 | 2017-05-26 | 乐视控股(北京)有限公司 | 一种关键词提取方法和装置 |
CN107704503A (zh) * | 2017-08-29 | 2018-02-16 | 平安科技(深圳)有限公司 | 用户关键词提取装置、方法及计算机可读存储介质 |
CN110852100A (zh) * | 2019-10-30 | 2020-02-28 | 北京大米科技有限公司 | 关键词提取方法、装置、电子设备及介质 |
-
2020
- 2020-03-30 CN CN202010235858.1A patent/CN111460099B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017084267A1 (zh) * | 2015-11-18 | 2017-05-26 | 乐视控股(北京)有限公司 | 一种关键词提取方法和装置 |
CN107704503A (zh) * | 2017-08-29 | 2018-02-16 | 平安科技(深圳)有限公司 | 用户关键词提取装置、方法及计算机可读存储介质 |
CN110852100A (zh) * | 2019-10-30 | 2020-02-28 | 北京大米科技有限公司 | 关键词提取方法、装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111460099A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111460099B (zh) | 关键词提取方法、装置及存储介质 | |
WO2019091026A1 (zh) | 知识库文档快速检索方法、应用服务器及计算机可读存储介质 | |
CN105893533B (zh) | 一种文本匹配方法及装置 | |
CN109299480B (zh) | 基于上下文语境的术语翻译方法及装置 | |
TWI536181B (zh) | 在多語文本中的語言識別 | |
US7558725B2 (en) | Method and apparatus for multilingual spelling corrections | |
CN107247707B (zh) | 基于补全策略的企业关联关系信息提取方法和装置 | |
US11645475B2 (en) | Translation processing method and storage medium | |
US9507867B2 (en) | Discovery engine | |
CN111881307A (zh) | 一种演示文稿生成方法、装置、计算机设备及存储介质 | |
US20130304730A1 (en) | Automated answers to online questions | |
US20040002849A1 (en) | System and method for automatic retrieval of example sentences based upon weighted editing distance | |
CN110008309B (zh) | 一种短语挖掘方法及装置 | |
JP2015523659A (ja) | 多言語混合検索方法およびシステム | |
US7555428B1 (en) | System and method for identifying compounds through iterative analysis | |
US9317608B2 (en) | Systems and methods for parsing search queries | |
CN110991181B (zh) | 用于增强已标注样本的方法和设备 | |
US11379527B2 (en) | Sibling search queries | |
US9501559B2 (en) | User-guided search query expansion | |
Jain et al. | Context sensitive text summarization using k means clustering algorithm | |
CN111985244A (zh) | 一种针对文档内容的洗稿检测方法及装置 | |
US9690797B2 (en) | Digital information analysis system, digital information analysis method, and digital information analysis program | |
CN111444713A (zh) | 新闻事件内实体关系抽取方法及装置 | |
CN113806491B (zh) | 一种信息处理的方法、装置、设备和介质 | |
CN113934910A (zh) | 一种自动优化、更新的主题库构建方法,及热点事件实时更新方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |