CN110688450B - 一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习的关键词生成模型及电子设备 - Google Patents

一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习的关键词生成模型及电子设备 Download PDF

Info

Publication number
CN110688450B
CN110688450B CN201910903972.4A CN201910903972A CN110688450B CN 110688450 B CN110688450 B CN 110688450B CN 201910903972 A CN201910903972 A CN 201910903972A CN 110688450 B CN110688450 B CN 110688450B
Authority
CN
China
Prior art keywords
word
monte carlo
carlo tree
keyword generation
rule
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
Application number
CN201910903972.4A
Other languages
English (en)
Other versions
CN110688450A (zh
Inventor
马伟诚
宋彦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Innovation Workshop Guangzhou Artificial Intelligence Research Co ltd
Original Assignee
Innovation Workshop Guangzhou Artificial Intelligence Research Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Innovation Workshop Guangzhou Artificial Intelligence Research Co ltd filed Critical Innovation Workshop Guangzhou Artificial Intelligence Research Co ltd
Priority to CN201910903972.4A priority Critical patent/CN110688450B/zh
Publication of CN110688450A publication Critical patent/CN110688450A/zh
Application granted granted Critical
Publication of CN110688450B publication Critical patent/CN110688450B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/313Selection or weighting of terms for indexing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/355Class or cluster creation or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及语言处理技术领域,尤其涉及基于蒙特卡洛树搜索的关键词生成方法及基于强化学习的关键词生成模型,包括步骤:S1、提供训练集;S2、建立蒙特卡洛树;S3、将关于文本表征向量输入至解码器中获得下一个字的表征向量;S4、将与下一个字对应的上一个字输入至蒙特卡洛树中确定下一个字的搜索空间,获得与下一个字相关的候选字;S5、将下一个字的表征向量输入至蒙特卡洛树中计算每个候选字的综合得分;S6、将综合得分最高的候选字接续在训练文本后,以生成关键词;及S7、重复步骤S3‑S6,直至达到预设的停止条件。本发明提供的基于蒙特卡洛树搜索的关键词生成方法及基于强化学习的关键词生成模型成词准确性高及成本低。

Description

一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习 的关键词生成模型及电子设备
【技术领域】
本发明涉及语言处理技术领域,尤其涉及一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习的关键词生成模型及电子设备。
【背景技术】
关键词提取任务的目标是从一段文本内容中总结出与文本主题紧密相关的词语。现存关键词提取模型主要分为有监督关键词提取模型与无监督关键词提取模型两类。有监督关键词提取模型在训练过程中要求数据有可信的标注。它们通过比对自身生成的短语以及标注的短语达到训练效果。其流程多采用先将输入的文字进行编码,然后利用编码器的输出对原文中每一个字进行标注或者直接从字库选字构成词语。无监督关键词提取模型在训练时不需要数据有标注。这一类关键词提取模型多以单字共同出现的信息以及主题模型提供的信息对关键词进行标注。
有监督关键词提取模型的训练效果受训练集中的文字影响较大,在测试时如果遇到与训练数据中的文字相似度均不高的文本,容易生成出不适当的关键词。
针对存在的上述缺陷,很多现有的有监督关键词提取模型采用了增大训练数据量或者延长训练过程的方式进行弥补。然而,由于互联网信息量的爆炸性增长,这种方式带来的收益往往会随时间推移迅速降低。特别是在一些数据更新较快的领域,如医疗与经济领域,一味依赖数据量及运算量的增加来获取更好的关键词提取模型是不可取的。
另一些有监督关键词生成模型,如现今最先进的关键词生成模型covRNN及seq2seq-keyphrase等,将关键词的生成及抽取结合起来,不仅试图根据文本主题生成相关词语,同时还从文本中选出与标注词语相近的词语,有效地提升了关键词提取任务的召回率(即提取出的正确的关键词占所有标注的关键词的百分比)。然而其关键词生成部分仍然受上述缺陷的限制。
相较于有监督关键词提取模型,无监督关键词提取模型的抽取结果是直接从原文中进行选取的,所以成词率较高。然而由于无监督模型缺少正确标注的导向,它们往往具有如下缺陷:
在自然语言中,共同出现的一组字经常会包含无语义的成分(如语气词,助动词等)。无监督关键词提取模型有几率将这些词语标记为关键词,因此导致关键词提取不准确。同时,由于无监督关键词提取模型的选词范围被限定在原文中,如关键词未在原文中出现,则不可能会被无监督模型标记出来。这一特点在医疗,经济等专业性较强的领域尤为突出,因此无监督关键词提取模型同样存在提取不准确的问题。
尽管很多近期的无监督关键词提取模型针对上述前两点缺陷进行了弥补,例如应用语法信息加上模式识别的方法排除非名词性候选项,或者引入百科内容来将不同的说法链接到同一事物主体等等,无监督关键词提取方法的表现仍然普遍低于有监督关键词提取模型。
还有一种新兴的关键词提取方法是利用强化学习的方式训练生成模型。不同于传统有监督关键词提取模型,基于强化学习的关键词提取方法会尝试所有可能的生成过程,并对满足标注的生成结果进行奖励,增大其被选中的概率,从而优化模型的输出。这种方式避免了正确的字一直无法被选到的尴尬,大大提升了有监督关键词生成模型的效果的上限。Keyphrase-generation-rl模型结合了关键词抽取与关键词生成模型,并在强化学习框架中进行训练,最终在多个数据集上取得了不俗的表现。不过,基于强化学习的关键词提取模型的下限仍然不高,容易生成与输入文本内容无关的词语甚至没有语义的文字的堆积。另外,由于强化学习框架需要尝试所有生成可能性之后才会有良好的表现,其需要的训练数据量及训练时长远远超过了基于传统有监督学习的关键词提取模型。这就使得重新训练模型的难度及代价更高,不利于在快速发展的领域的应用。在强化学习的基础上,对关键词生成模型的输出进行规范化是很有必要的。
综上,针对现有的关键词生成模型中存在的诸多问题,急需提出一种新的关键词生成模型以更好的满足日益增长的技术需求。
【发明内容】
针对现有的基于强化学习框架的关键词提取模型中存在的成词准确性低以及成本高的缺陷,本发明提供一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习的关键词生成模型及电子设备。
为了解决上述技术问题,本发明提供一种基于蒙特卡洛树搜索的关键词生成方法,其包括如下步骤:S1、人为选取标签数据,提供包括标签数据和训练文本的训练集;S2、使用所述标签数据建立蒙特卡洛树,将每个节点的访问次数设置为零;S3、将关于所述训练文本的文本表征向量输入至解码器中进行解码以获得连接在所述训练文本末尾的下一个字的表征向量;S4、将与所述下一个字对应的上一个字输入至蒙特卡洛树中以确定下一个字的搜索空间,根据所述搜索空间获得与所述下一个字相关的候选字;S5、将所述下一个字的表征向量输入至蒙特卡洛树中根据搜索空间计算每个候选字的综合得分;及S6、将综合得分最高的候选字接续在训练文本后,以生成关键词;及S7、重复上述步骤S3-S6,直至达到预设的停止条件。
优选地,所述步骤S5具体包括如下步骤:步骤S51、计算所述下一个字的表征向量与所述每个候选字的相似度;步骤S52、计算每个候选字的exploration值和exploitation值;其中,所述exploration值代表选中该字并且得到正确结果的概率值,所述exploitation值代表训练至今该字被选到过的概率值;步骤S53、将所述每个候选字的相似度以及每个候选字的exploration值和exploitation值进行联合计算以获得每个候选字的综合得分。
优选地,所述基于蒙特卡洛树搜索的关键词生成方法还包括步骤S30、将所述训练文本输入至编码器中以获得关于所述训练文本的文本表征向量,所述步骤S30在所述步骤S2和步骤S3之间。
优选地,基于蒙特卡洛树搜索的关键字生成方法还包括步骤:步骤S20,对所述训练文本进行预处理;所述步骤S20在所述步骤S2和所述步骤S30之间。
优选地,所述步骤S30中的编码器和所述步骤S3中的解码器来源于transformer网络框架。
优选地,所述步骤S7中预设的停止条件为生成了句子结束符或者生成的关键词达到最大长度。
优选地,基于蒙特卡洛树搜索的关键字生成方法还包括步骤:步骤S70,对所述综合得分最高的候选字进行奖励;其奖励规则如下:规则1:若生成的词语在训练集的标签数据中出现过,给予该词语奖励预设分值;规则2:若生成的词语存在于当前训练文本的标签中,给予与该词语的奖励分值和所述词语的长度值相同;规则3:对于生成的词语的每个字来说,若其存在于当前训练文本的标签中对应位置的字的集合中,给予奖励预设分值;规则4:从所述生成词语的第一位开始,执行全局奖励,按位衰减后加在每一位获得的奖励之上;所述规则1和规则3中的奖励的预设分值小于所述规则2中的奖励分值,所述步骤S70在所述步骤S6和步骤S7之间。
为了解决上述技术问题,本发明还提供一种基于强化学习的关键词生成模型,用于实现上述的基于蒙特卡洛树搜索的关键词生成方法,所述基于强化学习的关键词生成模型包括输入模块、编码器、解码器、蒙特卡洛树搜索模块和计算模块;其中,所述输入模块用于将所述训练文本输入至所述编码器中;所述编码器用于对所述训练文本进行编码以获得所述训练文本的文本表征向量;所述解码器用于对所述训练文本的文本表征向量进行解码以获得连接在所述训练文本末尾的下一个字的表征向量;所述蒙特卡洛树搜索模块用于与所述下一个字对应的上一个字输入以确定所述下一个字的搜索空间,同时根据所述搜索空间获取与所述下一个字相关的候选字;所述计算模块用于计算每个候选字的综合得分。
优选地,所述基于强化学习的关键词生成模型的奖励函数的奖励规则如下:规则1:若生成的词语在训练集的标签数据中出现过,给予该词语奖励预设分值;规则2:若生成的词语存在于当前训练文本的标签中,给予与该词语的奖励分值和所述词语的长度值相同;规则3:对于生成的词语的每个字来说,若其存在于当前训练文本的标签中对应位置的字的集合中,给予奖励预设分值;规则4:从所述生成词语的第一位开始,执行全局奖励,按位衰减后加在每一位获得的奖励之上;所述规则1和规则3中的奖励的预设分值小于所述规则2中的奖励分值。
为了解决上述技术问题,本发明还提供一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被设置为运行时执行上述所述的基于蒙特卡洛树搜索的关键词生成方法;所述处理器被设置为通过所述计算机程序执行如上所述的基于蒙特卡洛树搜索的关键词生成方法。
与现有技术相比,本发明提供的基于蒙特卡洛树搜索的关键词生成方法以及基于强化学习的关键词生成模型具有如下有益效果:
提供包括标签数据和训练文本的训练集;使用所述标签数据建立蒙特卡洛树,将关于所述训练文本的文本表征向量输入至解码器中进行解码以获得连接在所述训练文本末尾的下一个字的表征向量;将与所述下一个字对应的上一个字输入至蒙特卡洛树中以确定下一个字的搜索空间,根据所述搜索空间获得与所述下一个字相关的候选字;将所述下一个字的表征向量输入至蒙特卡洛树中根据搜索空间计算每个候选字的综合得分;将综合得分最高的候选字接续在训练文本后,以生成关键词,使用蒙特卡洛树搜索缩小了关键词生成的选字范围,提升了关键词的成词率,能很好的提高生成关键词的效率,同时,能很好的避免了生成无意义的汉字片段,提高生成的关键词的准确性。
所述步骤S30中的编码器和所述步骤S3中的解码器来源于transformer网络框架,使用transformer网络框架进行文本编码,解决了传统的基于RNN的模型的梯度消失与梯度爆炸问题。
使用规定的奖励规则对生成的词语进行奖励,采用了强化学习框架,使得生成词语的自由度更高,增加了生成出未在文中中出现过的关键词的几率。
本发明提供的基于强化学习的关键词生成模型,具有如下有益效果:
1.利用蒙特卡洛树搜索压缩关键词提取模型生成端的搜索空间,提升生成模型的成词率。
2.使用蒙特卡洛树搜索压缩后的搜索空间中预测出正确的字的概率上升,使得强化学习模型更容易得到充分的训练,减轻了这一类模型对于大量有标注的数据以及计算资源的依赖性。
3.结合了强化学习框架与蒙特卡洛树搜索方法,将标签信息中的词语的结构信息融入模型训练过程,促使模型生成有意义的词语。
4.较之传统强化学习模型,训练过程更加轻量,易于重新训练或者加入新的信息。在某些特定领域,由于公开可用的数据集暂时较少,基于传统强化学习技术的关键词提取模型很难得到充分训练,本发明提出的模型则可以在这些领域实现高效启动,得到更好的结果。
5.特定领域的数据增长变化非常迅速,需要经常重新训练模型,本发明提出的模型在这方面更加灵活,输入在线学习方式,可以有效适应数据变化。
6.在一些关键词词库较为确定的领域如医疗及金融,本发明提出的模型可以产生结构更佳的关键词,且不易出现遗漏现象,较之之前的方法有更好的效果。
【附图说明】
图1是本发明第一实施例中基于蒙特卡洛树搜索的关键词生成方法的流程示意图;
图2是本发明中第一实施例中步骤S2中通过标签数据建立的蒙特卡洛树的结构示意图;
图3是本发明中第一实施例中基于蒙特卡洛树搜索的关键词生成方法的变形实施例的流程示意图;
图4是本发明第一实施例中步骤S30的细节流程图;
图5是本发明第一实施例中的使用的编码器的结构示意图;
图6是本发明第一实施例中的使用的编码器的另一结构示意图;
图7是本发明第一实施例中基于蒙特卡洛树搜索的关键词生成方法的变形实施例的流程示意图;
图8是本发明第一实施例中步骤S6的细节流程图;
图9是本发明中第一实施例中基于蒙特卡洛树搜索的关键词生成方法的另一变形实施例的流程示意图;
图10是本发明第二实施例中提供的基于强化学习的关键词生成模型的模块示意图;
图11是本发明第三实施例中提供的电子设备的模块示意图;
图12是适于用来实现本发明实施例的服务器的计算机系统的结构示意图。
附图标记说明:
10、基于强化学习的关键词生成模型;101、输入层;102、转化层;103、输出层;60、电子设备;601、存储器;602、处理器;800、计算机系统;801、中央处理单元(CPU);802、存储器(ROM);803、RAM;804、总线;805、I/O接口;806、输入部分;807、输出部分;808、存储部分;809、通信部分;810、驱动器;811、可拆卸介质。
【具体实施方式】
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图及实施实例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,本发明第一实施例提供一种基于蒙特卡洛树搜索的关键词生成方法,其包括如下步骤:
S1、提供包括标签数据和训练文本的训练集;
S2、使用所述标签数据建立蒙特卡洛树;
S3、将关于所述训练文本的文本表征向量输入至解码器中进行解码以获得连接在所述训练文本末尾的下一个字的表征向量;
S4、将与所述下一个字对应的上一个字输入至蒙特卡洛树中以确定下一个字的搜索空间,根据所述搜索空间获得与所述下一个字相关的候选字;
S5、将所述下一个字的表征向量输入至蒙特卡洛树中根据搜索空间计算每个候选字的综合得分;及
S6、将综合得分最高的候选字接续在训练文本后,以生成关键词;及
S7、重复上述步骤S3-S6,直至达到预设的停止条件。在所述步骤S1中,训练集中的训练文本通常为从维基百科、新闻语料、医疗问答语料和财报数据等纯文本文件选取获得,其一般为段落性文章。
标签数据为人为选取的若干个关键词通过分隔符连接起来的字符串。所述分隔符一般可以为分号。关键词可以是如下的类型:先天性心脏病;支气管炎;支原体感染;黄痰;……。
请参阅图2,在所述步骤S2中,使用所述标签数据建立蒙特卡洛树。例如,本实施例中的标签数据包括:
先天性心脏病;黄枳;黄疸;肺炎;肺结核;支气管炎;支原体感染。基于该标签数据建立的蒙特卡洛树结构如图2中所示。在步骤S2中,使用所述标签数据建立蒙特卡洛树的同时将每个节点的访问次数设置为零。其中图2中的Access代表的是访问次数,Succeed代表的是:对应节点的字正确被选为关键字的次数。
蒙特卡洛树搜索(Monte Carlo tree search,MCTS)是一种用于某些决策过程的启发式搜索算法,最引人注目的是在游戏中的使用。一个主要例子是电脑围棋程序,它也用于其他棋盘游戏、即时电子游戏以及不确定性游戏。蒙特卡洛树搜索的每个循环包括四个步骤:选择(Selection):从根节点R开始,递归选择最优的子节点直到达到叶子节点L;扩展(Expansion):如果L不是一个终止节点(也就是,不会导致博弈游戏终止)那么就创建一个或者更多的子节点,选择其中一个C;模拟(Simulation):从C开始运行一个模拟的输出,直到博弈游戏结束:反向传播(Backpropagation):用模拟的结果输出更新当前行动序列。其中每个节点必须包含两个重要的信息用于作为蒙特卡洛搜索算法的决策参数:一个是根据模拟结果确定的节点估值,另一个该节点己经被访问的次数。
其中,将蒙特卡洛树应用于关键词生成方法的过程中,在所述蒙特卡洛树中,不同层级的节点代表不同的关键字端口。
请参阅图3,所述基于蒙特卡洛树搜索的关键词生成方法还包括步骤S30、将所述训练文本输入至编码器中以获得关于所述训练文本的文本表征向量,所述步骤S30在所述步骤S2和步骤S3之间。在所述步骤S3中,将所述训练文本输入至编码器。在本步骤中,所述文本表征向量能代表训练文本的段意。所述编码器来源于transformer网络框架。
具体地,请参阅图4,所述步骤S30包括如下步骤:
步骤S301、将所述训练文本中的每个句子进行分词;
步骤S302、将分词之后的每个句子中的每个词转化为输入词向量;
步骤S303、在所述每个句子的句首添加一个[CLS]字符且将所述[CLS]转化为初始字符向量;
步骤S304、将所述步骤S302中的输入词向量和所述步骤S303中的初始字符向量输入至所述Transformer网络框架以获得与每个句子对应的输入句向量。
其中,在所述步骤S301中,将所述训练文本中的每个句子进行分词通常通过现有的分词算法对每个句子实现分词。现有的分词算法有基于词典的分词算法、基于理解的分词算法和基于统计的机器学习算法等。其中基于统计的机器学习算法包括HMM、CRF、SVM深度学习等算法。比如,stanford分词工具、Hanlp分词工具是基于CRF算法实现的。本实施例中,采用stanford分词工具对每个句子进行分词。
在步骤S302中,通过随机化的方式或者函数映射的方法将所述训练文本中的每个词转化为输入词向量。可以理解,通过随机化的方式,也即将所述训练文本中的每个词随机赋予一个初始值,该值是可以通过人为设定的。当然,也可以通过函数映射的方式将训练文本中的每个词转化为输入词向量。可选地,通过Google在2013年发布的word2vec模型将词级训练文本中的每个词转化为输入词向量。
在步骤S303中,将所述[CLS]字符转化为初始字符向量的方式和所述步骤S302中将每个词转化为输入词向量的方式相同。
请参阅图5,所述Transformer网络框架的编码器包括:输入层101、转化层102和输出层103,其中,
所述输入层101供所述步骤S302中的输入词向量和所述步骤S303中的初始字符向量输入。如图5中所示,所述训练文本中的其中一个句子为“我爱吃苹果”,对其进行分词之后对应为:“我”、“爱”、“吃”、“苹果”。因此,输入层101中输入的为“我”、“爱”、“吃”、“苹果”对应的输入词向量以及“CLS”对应的初始字符向量。
所述转化层102用于将输入的输入词向量或初始字符向量转化为输出词向量;所述转化层102的层数为多个,如图5中所示的Layer 1转化层102至Layer N转化层102。其中,每一层转化层102包括一个Multi-head Selfattention(多头自注意力机制)和一个Feedforward(前馈神经网络)。其中的每个词的输入词向量通过Multi-head Self attention(多头自注意力机制)以及Feedforward(前馈神经网络)与句子中的其他词产生联系,从而最终被表达成一个含有上下文信息的输出词向量。
所述输出层103用于将输出词向量输出,其中与[CLS]的初始字符向量对应的输出词向量即为训练文本中该句的输入句向量(sentence representation)。
请参阅图6,当获得了训练文本中每个句子的输入句向量之后(sentencerepresentation),再将代表每个句子的输入句向量输入至Transformer网络框架的编码器以获得训练文本的文本表征向量。如图6中所示,训练文本由4句话组成,其中,“Sen1”、“Sen2”、“Sen3”、“Sen4”分别代表每个句子的输入句向量。
将所述输入句向量输入至所述Transformer网络框架的编码器中之前在所述训练文本的段首添加一个[CLS]字符,同时将所述[CLS]字符转化为输入句向量,同时将所述[CLS]字符的输入句向量输入至所述Transformer网络框架的编码器中,所述[CLS]字符经所述Transformer网络框架的编码器输出之后代表所述训练文本的段落向量,也即,所述训练文本的文本表征向量。
需要说明的是,在所述步骤S30中,当训练文本输入结束之后,同时会在训练文本的末尾输入一个特殊字符代表训练输入结束,同时也代表进入提取训练文本的关键词的步骤,提取获得的关键词连接在训练文本的末尾。
请参阅图7,基于蒙特卡洛树搜索的关键字生成方法还包括步骤:步骤S20,对所述训练文本进行预处理,所述步骤S20在所述步骤S2和所述步骤S30之间。在本步骤中,预处理的目的是将训练文本中的语气词、助词以及一些无法显示的特殊字符或者格式字符等,避免噪声对训练文本产生影响,提高训练文本的有效性。
在上述步骤S3中,将所述训练文本的文本表征向量输入至解码器中进行解码以获得连接在所述训练文本末尾的下一个字的表征向量,所述解码器同样来源于现有的Transformer网络框架。
在所述步骤S4中,将与所述下一个字对应的上一个字输入至蒙特卡洛树中以确定下一个字的搜索空间,根据所述搜索空间获得与所述下一个字相关的候选字。比如,请再次参阅图2,在所述蒙特卡洛树中,当上一个字为“肺”字时,其候选字对应为:“炎”和“结”两个字。
请参阅图8,在所述步骤S5中,将所述下一个字的表征向量输入至蒙特卡洛树中根据搜索空间计算每个候选字的综合得分,所述步骤S5具体包括如下步骤:
步骤S51、计算所述下一个字的表征向量和所述每个候选字的相似度;
步骤S52、计算每个候选字的exploration值和exploitation值;其中,所述exploration值代表选中该字并且得到正确结果的概率值,所述exploration值和节点的正确被选为关键字的次数相关联,所述exploitation值代表训练至今该字被选到过的概率值,其和对应节点处的字被选中作为关键字的次数相关;
步骤S53、将所述每个候选字的相似度以及每个候选字的exploration值和exploitation值进行联合计算以获得每个候选字的综合得分。
在步骤S51中,计算所述下一个字的表征向量和所述每个候选字的相似度,也即可以理解为计算下一个字的表征向量和所述每个候选字的表征向量的距离,距离越近相似度则越大。可以通过计算如下几个指标中的一个或者多个进行衡量:
皮尔逊相关系数、欧几里德距离、Cosine相似度、Tanimoto系数、曼哈顿距离等。
在所述步骤S7中,每次循环的过程中,对应更新每个节点的被访问次数以及该节点被成功选中作为关键词的次数。预设的停止条件为生成了句子结束符或者生成的关键词达到最大长度。其中,句子结束符为人为设定的特殊字符。最大长度也为人为设定的字符串的长度。
请参阅图9,基于蒙特卡洛树搜索的关键字生成方法还包括步骤:
步骤S70,对所述综合得分最高的候选字进行奖励;在一些具体实施例中,其奖励规则如下:
规则1:若生成的词语在训练集的标签数据中出现过,给予该词语奖励预设分值;所述预设分值可以为1分、2分或者其他数值。
规则2:若生成的词语存在于当前训练文本的标签中,给予与该词语的奖励分数的数值和所述词语的长度值相同;在此处,当前训练文本的标签为人工提取的代表当前训练文本段意的标签。比如,当生成的关键词为三个字时,代表其长度为3,那么给予的对应的奖励分数为3分。
规则3:对于生成的词语的每个字来说,若其存在于当前训练文本的标签中对应位置的字的集合中,给予奖励1分。在该条规则中,比如,人工提取的当前训练文本的标签有4个关键词,每个关键词对应为5位,那么,每个关键词的相同位数上的字对应生成一个集合,如果生成的关键词出现在这个集合中,则给予奖励预设分值。所述预设分值可以为1分、2分或者其它数值。
规则4:从所述生成词语的第一位开始,执行全局奖励,按位衰减后在每一位获得的奖励之上。在本条规则中,针对每个关键词,对第一位进行奖励之后对第二位以及后续的每位的关键字进行奖励时,算后一位的奖励时,会将前一位的奖励分数乘以1个小于1的系数加后一位的奖励分数中,以代表该位关键字之前的总的奖励分数。
所述规则1和规则3中的奖励的预设分值小于所述规则2中的奖励分值,步骤S70在步骤S6和步骤S7之间。
其中,上述奖励的分值可根据实际需求做对应调整,在此不做具体的限定。
请参阅图10,本发明的第二实施例提供一种基于强化学习的关键词生成模型20,所述基于强化学习的关键词生成模型包括输入模块201、编码器202、解码器203、蒙特卡洛树搜索模块204和计算模块205;其中,
所述输入模块201用于将所述训练文本输入至所述编码器202中;
所述编码器202用于对所述训练文本进行编码以获得所述训练文本的文本表征向量;
所述解码器203用于对所述训练文本的文本表征向量进行解码以获得连接在所述训练文本末尾的下一个字的表征向量;
所述蒙特卡洛树搜索模块204用于与所述下一个字对应的上一个字输入以确定所述下一个字的搜索空间,同时根据所述搜索空间获取与所述下一个字相关的候选字;
所述计算模块205用于计算每个候选字的综合得分。
所述基于强化学习的关键词生成模型20的奖励函数的奖励规则如下:
规则1:若生成的词语在训练集的标签数据中出现过,给予该词语奖励预设分值;该预设分值可以为1分、1分或者其他数值。
规则2:若生成的词语存在于当前训练文本的标签中,给予与该词语的奖励分数的数值和所述词语的长度值相同;在此处,当前训练文本的标签为人工提取的代表当前训练文本段意的标签。比如,当生成的关键词为三个字时,代表其长度为3,那么给予的对应的奖励分数为3分。
规则3:对于生成的词语的每个字来说,若其存在于当前训练文本的标签中对应位置的字的集合中,给予奖励预设分值。在该条规则中,比如,人工提取的当前训练文本的标签有4个关键词,每个关键词对应为5位,那么,每个关键词的相同位数上的字对应生成一个集合,如果生成的关键词出现在这个集合中,则给予奖励预设分值。该预设分值可以为1分、2分或者其它数值。
规则4:从所述生成词语的第一位开始,执行全局奖励,按位衰减后加在每一位获得的奖励之上。在本条规则中,针对每个关键词,对第一位进行奖励之后对第二位以及后续的每位的关键字进行进行奖励时,算后一位的奖励时,会将前一位的奖励分数乘以1个小于1的系数加后一位的奖励分数中,以代表该位关键字的总的奖励分数。
所述规则1和规则3中的奖励的预设分值小于所述规则2中的奖励分值。其中,上述奖励的分值可根据实际需求做对应调整,在此不做具体的限定。
请参阅图11,本发明的第三实施例提供一种电子设备60,包括存储器601和处理器602,所述存储器601中存储有计算机程序,所述计算机程序被设置为运行时执行如第一实施例所述的结合类词信息的语言模型预训练方法;
所述处理器602被设置为通过所述计算机程序执行如第一实施例所述的结合类词信息的语言模型预训练方法。
下面参考图12,其示出了适于用来实现本申请实施例的终端设备/服务器的计算机系统800的结构示意图。图8示出的终端设备/服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图12所示,计算机系统800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有计算机系统800操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是—但不限于—电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“如“语言或类似的程序设计语言。程序代码可以完全地在管理端计算机上执行、部分地在管理端计算机上执行、作为一个独立的软件包执行、部分在管理端计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)域连接到管理端计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
与现有技术相比,本发明提供的基于乱序重排的自然语言模型预训练方法及顺序恢复网络具有如下有益效果:
使用蒙特卡洛树搜索缩小了关键词生成的选字范围,提升了关键词的成词率,能很好的提高生成关键词的效率,同时,能很好的避免了生成无意义的汉字片段,提高生成的关键词的准确性。
所述步骤S3中的编码器和所述步骤S4中的解码器来源于transformer网络框架,使用transformer网络框架进行文本编码,解决了传统的基于RNN的模型的梯度消失与梯度爆炸问题。
本发明提供的基于蒙特卡洛树搜索的关键词生成方法,具有如下有益效果:
使用规定的奖励规则对生成的词语进行奖励,采用了强化学习框架,使得生成词语的自由度更高,增加了生成出未在文中中出现过的关键词的几率。
本发明提供的基于强化学习的关键词生成模型,具有如下有益效果:
1.利用蒙特卡洛树搜索压缩关键词提取模型生成端的搜索空间,提升生成模型的成词率。
2.使用蒙特卡洛树搜索压缩后的搜索空间中预测出正确的字的概率上升,使得强化学习模型更容易得到充分的训练,减轻了这一类模型对于大量有标注的数据以及计算资源的依赖性。
3.结合了强化学习框架与蒙特卡洛树搜索方法,将标签信息中的词语的结构信息融入模型训练过程,促使模型生成有意义的词语。
4.较之传统强化学习模型,训练过程更加轻量,易于重新训练或者加入新的信息。在某些特定领域,由于公开可用的数据集暂时较少,基于传统强化学习技术的关键词提取模型很难得到充分训练,本发明提出的模型则可以在这些领域实现高效启动,得到更好的结果。
5.特定领域的数据增长变化非常迅速,需要经常重新训练模型,本发明提出的模型在这方面更加灵活,输入在线学习方式,可以有效适应数据变化。
6.在一些关键词词库较为确定的领域如医疗及金融,本发明提出的模型可以产生结构更佳的关键词,且不易出现遗漏现象,较之之前的方法有更好的效果。
以上所述仅为本发明较佳实施例而已,并不用以限制本发明,凡在本发明原则之内所作的任何修改,等同替换和改进等均应包含本发明的保护范围之内。

Claims (10)

1.一种基于蒙特卡洛树搜索的关键词生成方法,其特征在于:其包括如下步骤:
S1、人为选取标签数据,提供包括标签数据和训练文本的训练集;
S2、使用所述标签数据建立蒙特卡洛树,将每个节点的访问次数设置为零;
S3、将关于所述训练文本的文本表征向量输入至解码器中进行解码以获得连接在所述训练文本末尾的下一个字的表征向量;
S4、将与所述下一个字对应的上一个字输入至蒙特卡洛树中以确定下一个字的搜索空间,根据所述搜索空间获得与所述下一个字相关的候选字;
S5、将所述下一个字的表征向量输入至蒙特卡洛树中根据搜索空间计算每个候选字的综合得分;及
S6、将综合得分最高的候选字接续在训练文本后,以生成关键词;及
S7、重复上述步骤S3-S6,直至达到预设的停止条件。
2.如权利要求1所述的基于蒙特卡洛树搜索的关键词生成方法,其特征在于:所述步骤S5具体包括如下步骤:
步骤S51、计算所述下一个字的表征向量与所述每个候选字的相似度;
步骤S52、计算每个候选字的exploration值和exploitation值;其中,所述exploration值代表选中该字并且得到正确结果的概率值,所述exploitation值代表训练至今该字被选到过的概率值;
步骤S53、将所述每个候选字的相似度以及每个候选字的exploration值和exploitation值进行联合计算以获得每个候选字的综合得分。
3.如权利要求1所述的基于蒙特卡洛树搜索的关键词生成方法,其特征在于:所述基于蒙特卡洛树搜索的关键词生成方法还包括步骤S30、将所述训练文本输入至编码器中以获得关于所述训练文本的文本表征向量,所述步骤S30在所述步骤S2和步骤S3之间。
4.如权利要求3所述的基于蒙特卡洛树搜索的关键词生成方法,其特征在于:基于蒙特卡洛树搜索的关键字生成方法还包括步骤:
步骤S20,对所述训练文本进行预处理;所述步骤S20在所述步骤S2和所述步骤S30之间。
5.如权利要求3所述的基于蒙特卡洛树搜索的关键词生成方法,其特征在于:所述步骤S30中的编码器和所述步骤S3中的解码器来源于transformer网络框架。
6.如权利要求1所述的基于蒙特卡洛树搜索的关键词生成方法,其特征在于:所述步骤S7中预设的停止条件为生成了句子结束符或者生成的关键词达到最大长度。
7.如权利要求1所述的基于蒙特卡洛树搜索的关键词生成方法,其特征在于:基于蒙特卡洛树搜索的关键字生成方法还包括步骤:
步骤S70,对所述综合得分最高的候选字进行奖励;其奖励规则如下:
规则1:若生成的词语在训练集的标签数据中出现过,给予该词语奖励预设分值;
规则2:若生成的词语存在于当前训练文本的标签中,给予与该词语的奖励分值和所述词语的长度值相同;
规则3:对于生成的词语的每个字来说,若其存在于当前训练文本的标签中对应位置的字的集合中,给予奖励预设分值;
规则4:从所述生成词语的第一位开始,执行全局奖励,按位衰减后加在每一位获得的奖励之上;
所述规则1和规则3中的奖励的预设分值小于所述规则2中的奖励分值,所述步骤S70在所述步骤S6和步骤S7之间。
8.一种基于强化学习的关键词生成模型,用于实现权利要求1-7中任一项所述的基于蒙特卡洛树搜索的关键词生成方法,其特征在于:所述基于强化学习的关键词生成模型包括输入模块、编码器、解码器、蒙特卡洛树搜索模块和计算模块;其中,
所述输入模块用于将所述训练文本输入至所述编码器中;
所述编码器用于对所述训练文本进行编码以获得所述训练文本的文本表征向量;
所述解码器用于对所述训练文本的文本表征向量进行解码以获得连接在所述训练文本末尾的下一个字的表征向量;
所述蒙特卡洛树搜索模块用于与所述下一个字对应的上一个字输入以确定所述下一个字的搜索空间,同时根据所述搜索空间获取与所述下一个字相关的候选字;
所述计算模块用于计算每个候选字的综合得分。
9.如权利要求8所述的基于强化学习的关键词生成模型,其特征在于:所述基于强化学习的关键词生成模型的奖励函数的奖励规则如下:
规则1:若生成的词语在训练集的标签数据中出现过,给予该词语奖励预设分值;
规则2:若生成的词语存在于当前训练文本的标签中,给予与该词语的奖励分值和所述词语的长度值相同;
规则3:对于生成的词语的每个字来说,若其存在于当前训练文本的标签中对应位置的字的集合中,给予奖励预设分值;
规则4:从所述生成词语的第一位开始,执行全局奖励,按位衰减后加在每一位获得的奖励之上;
所述规则1和规则3中的奖励的预设分值小于所述规则2中的奖励分值。
10.一种电子设备,包括存储器和处理器,其特征在于:所述存储器中存储有计算机程序,所述计算机程序被设置为运行时执行所述权利要求1至7任一项中所述的基于蒙特卡洛树搜索的关键词生成方法;
所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项中所述的基于蒙特卡洛树搜索的关键词生成方法。
CN201910903972.4A 2019-09-24 2019-09-24 一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习的关键词生成模型及电子设备 Active CN110688450B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910903972.4A CN110688450B (zh) 2019-09-24 2019-09-24 一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习的关键词生成模型及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910903972.4A CN110688450B (zh) 2019-09-24 2019-09-24 一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习的关键词生成模型及电子设备

Publications (2)

Publication Number Publication Date
CN110688450A CN110688450A (zh) 2020-01-14
CN110688450B true CN110688450B (zh) 2023-11-17

Family

ID=69110160

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910903972.4A Active CN110688450B (zh) 2019-09-24 2019-09-24 一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习的关键词生成模型及电子设备

Country Status (1)

Country Link
CN (1) CN110688450B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111522928B (zh) * 2020-04-20 2023-06-23 北京百度网讯科技有限公司 一种知识抽取方法、装置、设备和介质
CN112507721B (zh) * 2020-11-27 2023-08-11 北京百度网讯科技有限公司 生成文本主题的方法、装置、设备和计算机可读存储介质
CN113946604B (zh) * 2021-10-26 2023-01-20 网易有道信息技术(江苏)有限公司 分阶段围棋教学方法、装置、电子设备及存储介质
TWI823242B (zh) * 2022-01-27 2023-11-21 中國信託商業銀行股份有限公司 文字生成方法及其裝置
CN116578934B (zh) * 2023-07-13 2023-09-19 烟台国工智能科技有限公司 一种基于蒙特卡洛树搜索的逆合成分析方法及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109447152A (zh) * 2018-10-29 2019-03-08 中国石油大学(华东) 一种基于蒙特卡洛树搜索和神经网络的故障预测方法
CN109543017A (zh) * 2018-11-21 2019-03-29 广州语义科技有限公司 法律问题关键词生成方法及其系统
CN110119765A (zh) * 2019-04-18 2019-08-13 浙江工业大学 一种基于Seq2seq框架的关键词提取方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109447152A (zh) * 2018-10-29 2019-03-08 中国石油大学(华东) 一种基于蒙特卡洛树搜索和神经网络的故障预测方法
CN109543017A (zh) * 2018-11-21 2019-03-29 广州语义科技有限公司 法律问题关键词生成方法及其系统
CN110119765A (zh) * 2019-04-18 2019-08-13 浙江工业大学 一种基于Seq2seq框架的关键词提取方法

Also Published As

Publication number Publication date
CN110688450A (zh) 2020-01-14

Similar Documents

Publication Publication Date Title
CN110688450B (zh) 一种基于蒙特卡洛树搜索的关键词生成方法、基于强化学习的关键词生成模型及电子设备
Yao et al. An improved LSTM structure for natural language processing
US20210390271A1 (en) Neural machine translation systems
CN108417210B (zh) 一种词嵌入语言模型训练方法、词语识别方法及系统
US11972365B2 (en) Question responding apparatus, question responding method and program
JP6493866B2 (ja) 情報処理装置、情報処理方法、およびプログラム
WO2021139229A1 (zh) 文本修辞句的生成方法、装置、设备及可读存储介质
US7263488B2 (en) Method and apparatus for identifying prosodic word boundaries
CN109840287A (zh) 一种基于神经网络的跨模态信息检索方法和装置
CN111344779A (zh) 训练和/或使用编码器模型确定自然语言输入的响应动作
CN112541356B (zh) 一种生物医学命名实体识别的方法和系统
US20070094004A1 (en) Conversation controller
US11531693B2 (en) Information processing apparatus, method and non-transitory computer readable medium
CN112185361B (zh) 一种语音识别模型训练方法、装置、电子设备及存储介质
US20240104353A1 (en) Sequence-to sequence neural network systems using look ahead tree search
Ruan et al. Emotion-regularized conditional variational autoencoder for emotional response generation
CN116628186A (zh) 文本摘要生成方法及系统
US11893344B2 (en) Morpheme analysis learning device, morpheme analysis device, method, and program
CN115017870A (zh) 一种闭环的话术扩写方法、装置、计算机设备及存储介质
Göker et al. Neural text normalization for turkish social media
CN112232057A (zh) 基于文本扩展的对抗样本生成方法、装置、介质和设备
EP4388458A1 (en) Large scale retrieval for sequence generation
CN116595970A (zh) 语句同义改写方法、装置和电子设备
CN113468311B (zh) 一种基于知识图谱的复杂问句问答方法、装置及存储介质
CN115759108A (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