CN111814451A - 文本处理方法、装置、设备和存储介质 - Google Patents
文本处理方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN111814451A CN111814451A CN202010437018.3A CN202010437018A CN111814451A CN 111814451 A CN111814451 A CN 111814451A CN 202010437018 A CN202010437018 A CN 202010437018A CN 111814451 A CN111814451 A CN 111814451A
- Authority
- CN
- China
- Prior art keywords
- text
- retended
- sentence
- texts
- source text
- 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.)
- Pending
Links
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000003672 processing method Methods 0.000 title claims abstract description 8
- 238000000034 method Methods 0.000 claims abstract description 63
- 238000010801 machine learning Methods 0.000 claims abstract description 46
- 238000006243 chemical reaction Methods 0.000 claims abstract description 14
- 238000009826 distribution Methods 0.000 claims description 17
- 239000013598 vector Substances 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 13
- 238000012549 training Methods 0.000 claims description 13
- 230000003190 augmentative effect Effects 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 claims description 2
- 238000013102 re-test Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 27
- 230000006870 function Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 150000001875 compounds Chemical class 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000003416 augmentation Effects 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- 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/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开涉及一种文本处理方法、装置、设备和存储介质。在此描述的方法包括通过对源文本进行句子转换来生成与源文本相对应的第一组复述文本,其中源文本包括句子或者句子的一部分。方法还包括通过机器学习生成模型生成与源文本相对应的第二组复述文本。此外,方法还包括至少基于第一组复述文本和第二组复述文本来获得与源文本相对应的一组目标文本。在本公开的实施例中,同时使用基于规则的句子转换和基于机器学习模型的文本复述,来生成作为对源文本的复述的目标文本。因此,根据本公开的实施例,不仅能够保证文本复述的多样性,而且能够保证文本复述的质量。
Description
技术领域
本公开总体上涉及计算机领域,更特别地涉及一种文本处理方法、装置、设备和计算机可读存储介质。
背景技术
文本生成是自然语言处理(NLP)技术中的一个重要分支,其能够根据输入数据自动生成自然语言文本。文本生成是自然语言理解的高级阶段,是实现智能文本处理的重要手段。文本生成技术可以应用于机器翻译、对话系统、文本摘要、文章写作、文本复述、图像加注,等等。
文本复述(paraphrase)作为文本生成技术中的一种,能够以一种或多种不同的方式表达源文本,而不改变源文本的语义,或者所表达的思想与源文本基本一致,也称为“改写”。文本复述技术应用很广泛,例如,在机器翻译系统中,可以利用文本复述技术对复杂输入文本进行简化,在信息检索系统中,利用文本复述技术对用户查询进行改写,等等。
发明内容
根据本公开的一些实施例,提供了一种文本处理方法、装置、设备以及计算机可读存储介质。
在本公开的第一方面,提供了一种文本处理方法。方法包括通过对源文本进行句子转换来生成与源文本相对应的第一组复述文本,其中源文本包括句子或者句子的一部分。方法还包括通过机器学习生成模型生成与源文本相对应的第二组复述文本。此外,方法还包括至少基于第一组复述文本和第二组复述文本来获得与源文本相对应的一组目标文本。
在本公开的第二方面,提供了一种文本处理装置。装置包括第一文本生成模块、第二文本生成模块以及目标文本获得模块。第一文本生成模块被配置为通过对源文本进行句子转换,来生成与源文本相对应的第一组复述文本,其中源文本包括句子或者句子的一部分。第二文本生成模块被配置为通过机器学习生成模型生成与源文本相对应的第二组复述文本。目标文本获得模块被配置为至少基于第一组复述文本和第二组复述文本,获得与源文本相对应的一组目标文本。
在本公开的第三方面,提供了一种电子设备,包括存储器和处理器,其中存储器用于存储计算机可执行指令,计算机可执行指令被处理器执行以实现根据本公开的第一方面的方法。
在本公开的第四方面,提供了一种计算机可读存储介质,其上存储有计算机可执行指令,其中计算机可执行指令被处理器执行实现根据本公开的第一方面和的方法。
在本公开的实施例中,同时使用基于规则的句子转换和基于机器学习模型的文本复述,来生成作为对源文本的复述的目标文本。因此,根据本公开的实施例,不仅能够保证文本复述的多样性,而且能够保证文本复述的质量。
附图说明
结合附图并参考以下详细说明,本公开各实现方式的特征、优点及其他方面将变得更加明显。在此以示例性而非限制性的方式示出了本公开的若干实现方式,在附图中:
图1示出了根据本公开的实施例的语料扩充的示例环境;
图2示出了根据本公开的实施例的文本处理方法的流程图;
图3示出了根据本公开的实施例的文本复述系统的架构的示意图;
图4示出了根据本公开的实施例的用于检索相似句子的方法的流程图;
图5A示出了根据本公开的实施例的句子转换过程的示意图;
图5B示出了根据本公开的实施例的句式转换规则的匹配图;
图5C示出了根据本公开的实施例的同义词替换的示意图;
图6示出了根据本公开的实施例的机器学习生成模型的架构的示意图;
图7示出了使用本公开的实施例的文本复述方法来训练机器人的示意图;
图8示出了根据本公开的实施例的文本处理装置的框图;以及
图9示出了其中可以实施本公开的一个或多个实施例的计算设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实现。虽然附图中显示了本公开的优选实现,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实现所限制。相反,提供这些实现是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“实施例”和“一些实施例”表示“至少一些实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
文本复述的目的是将一句话换一种方式表达而不改变语义,传统的文本复述主要包括基于规则的复述方法或者基于机器学习的复述方法。基于规则的复述方法利用构建好的规则来生成新的句子,其具有冷启动、可控制等优势,然后,由于规则覆盖有限,因而这种方法无法泛化并且多样性较差。基于机器学习的复述方法从大量的样本中学到文本复述构建的规律,然而,这种方法所生成的复述文本质量不稳定,生成效果不佳。因此,传统的文本复述方法无法同时保证文本复述的多样性和生成质量。
为此,本公开的实施例提出了一种结合基于规则的复述方法和基于机器学习的复述方法的混合型文本复述方案。在本公开的实施例中,同时使用基于规则的句子转换和基于机器学习模型的文本复述,来生成作为对源文本的复述的目标文本。因此,根据本公开的实施例,不仅能够保证文本复述的多样性,而且能够保证文本复述的质量,使得文本复述方案更加完整和鲁棒。此外,本公开的一些实施例中还提出了一种改进的机器学习生成模型。以下将参考附图1-9描述了本公开的一些示例实施例。
图1示出了根据本公开的实施例的语料扩充的示例环境100。本公开的实施例的文本复述方案能够生成源文本的一个或多个目标文本,因而可用于语料扩充,语料扩充是指基于现有的语料生成更多的语料,由此提高模型训练效果。语料生成根据一批原始语料来生成更多的相似语料,用来丰富语料库,以提高例如文本分类和对话意图识别等任务的准确率,并且显著减少用户手动编写相似语料的人力和时间成本。
如图1的环境100所示,原始语料库110中包括一些已经标注和/或人工整理的语料,例如原句111“有什么好看的电影推荐”(也称为“源文本”)。根据本公开的实施例,可以通过对原始语料库110中的语料进行文本复述,来扩充得到具有更多语料的扩充语料库120。如图1所示,原句111通过扩充生成了多个复述句121(也称为“目标文本”),多个复述句121中除了包括原句111之外,还包括与原句111语义相同但是表达形式不同的多个复述句。根据本公开的实施例,多个复述句121中既包括基于规则生成的复述句,如改变了句式结构的复述句“好看的电影有什么推荐”,也包括机器学习模型生成的复述句,如机器生成的复述句“最近有啥电影好看推荐一下”。通过这种方式,所生成的复述句不仅多样性较好,而且质量也较佳。因此,本公开的实施例的自动扩充的语料能够取得较好的多样性和质量。
在一些实施例中,本公开的实施例的方法可以为机器人平台扩充语料,包括单句扩充和批量扩充。单句扩充根据已有的单个类别的单条语料进行扩充,而批量扩充是根据已有的某领域的多个类别的语料同时进行生成。批量扩充的特点在于采用所有语料作为输入来生成符合已有样本空间分布的句子而不是使用单句来进行复述,比如餐饮语料下生成的是有关餐饮领域的语料,而不可能是其他领域的语料。应当理解,虽然在图1中以语料扩充作为文本复述的一个示例应用场景,本公开的文本复述方法还可以应用于其他的场景,例如文本增强等。文本增强功能可作为通用功能为常见自然语言处理任务提供丰富的文本,如文本安全识别、客服文本分类等任务,从而提高模型的准确率。
图2示出了根据本公开的实施例的文本处理方法200的流程图,方法200可以由单个计算设备或者多个计算设备来执行。在框202,通过对源文本进行句子转换,来生成与源文本相对应的第一组复述文本,其中源文本为一个或多个句子,或者也可以是一个句子中的一部分。例如,源文本可以是文本复述的种子句,例如原句和/或根据原句检索到的相关句子,基于预先制定的规则对原句进行句式转换和/或同义词替换等,从而根据规则生成包括至少一个复述句的一组复述句。
在框204,通过机器学习生成模型生成与源文本相对应的第二组复述文本。例如,使用训练句子对训练机器学习生成模型(诸如深度学习模型),然后将原句输入经训练的机器学习生成模型,生成包括至少一个复述句的另一组复述句。
在框206,至少基于第一组复述文本和第二组复述文本,获得与源文本相对应的一组目标文本。例如,在获得根据规则生成的一组复述句和根据机器学习模型生成的另一组复述句之后,可以将两组复述句进行组合以形成最终的一组目标文本。备选地,还可以将两组复述句分别互相作为对方的输入文本,再次进行各自的文本生成,并且重复此过程直到满足停止条件。备选地或者附加地,在获得若干组复述句之后,还可以对所有的复述句进行排序和筛选,从而选择质量较好的一个或多个复述句最作为最终的目标文本。
因此,根据本公开的各种实施例的方法200,同时使用基于规则的句子转换和基于机器学习模型的模型生成,来生成作为对源文本的复述的目标文本。因此,根据本公开的实施例所生成的复述文本,不仅能够保证复述文本的多样性,而且能够保证文本生成的质量。
图3示出了根据本公开的实施例的文本复述系统300的架构的示意图,文本复述系统300能够基于输入的原句310,输出一个或多个复述句350。如图3所示,文本复述系统300包括检索模块320、基于规则的生成模块331、机器学习生成模型332以及排序筛选模块340。以下参考图4描述了检索模块320的示例检索过程,参考图5A-5C描述了基于规则的生成模块331的示例句子转换过程,并且参考图6描述了机器学习生成模型332的示例架构。
参考图3,针对待复述的原句310,检索模块320首先在预先构建的文本库中检索相关句子,并对检索返回的相关句子进行排序,将符合条件的句子作为种子句。种子句然后分别输入基于规则的生成模块331和机器学习生成模型332以进行复述句生成。基于规则的生成模块331基于预先制定的规则来生成复述句,其主要涉及句法规则和/或词级扩展等。机器学习生成模型332是个经训练的模型,能够用来生成复述句,在本公开的实施例中,机器学习生成模型332为一种改进的有监督的变分自编码器。在一些实施例中,基于规则的生成模块331和机器学习生成模型332生成的复述句可以作为彼此的输入再次生成复述句,此过程可以持续预定轮次,或者持续直到不能生成更多的复述句等。通过这种方式,能够获得更多的复述句。最后,将基于规则的生成模块331和机器学习生成模型332产生的复述句一起输入到排序筛选模块340,并将符合条件的复述句350最后最终的输出。
针对基于规则的生成模块331和机器学习生成模型332生成的每个复述句,排序筛选模块340可以计算其语言困惑度得分和/或语义相似度得分,并且基于得分对所有的复述句进行排名,并且将得分较高的一个或多个复述句作为最终的输出结果。例如,可以在百科语料上训练一个语言模型,并通过语言模型来对每个复述句的语言困惑度进行打分,困惑度越低则表示句子越通顺。再例如,可以利用来自变换器的双向编码器表示(BERT)模型对每个复述句与原句310进行句向量编码,并且利用余弦相似度计算它们之间的语义相似度,两个句子的语义相似度得分越高,说明语义上越相似。应当理解,任何现有的或者将来开发的语义相似度计算方法或工具可以与本公开的实施例结合使用,以确定两个句子或者两段文本之间的语义相似度。通过这种方式,可以使得最终生成的复述句更真实并且保留原句的语义。
现在参考图4,其示出了检索模块320检索相似句子的方法400的流程图。在框402,检索模块320获得待复述的原句310。在框404,检索模块320在数据库中检索与原句相关的句子。例如,可以从网络中的问答社区中收集问题文本库,并且建立索引,原句310可以为一个问句,则可以通过全文搜索引擎(ES)在问题文本库中检索与原句310相关的问句,并对检索结果进行排序以获得一组问句。
在框406,检索模块320根据语义相似度筛选这一组问句以生成种子句。例如,可以基于原句310与一组问句中的每个问句的语义相似度,从一组问句中选择得分较高的一个或多个问句作为用于复述的种子句。在一些实施例,还可以对一组问句进行过滤,例如去除长度相差较大的句子以及复杂句等。接下来,检索模块320所获得的种子句被输入给基于规则的生成模块331和机器学习生成模型332以用于生成复述句。
图5A示出了根据本公开的实施例的基于规则的生成模块331执行的句子转换过程500的示意图,句子转换过程500主要涉及词法规则生成和词汇扩展两种生成方式。在框502,从检索模块320获得种子句,或者直接获得原句310作为种子句,例如,种子句503“如何注册聊天账号”。在框504,对种子句进行分词和词性标注。例如,将种子句503中的“如何”自动标注为代词r,将“注册”自动标注为动词v,将“聊天账号”自动标注为名词短语np,如505所示。
在框506,对标注后的结果进行句式转换。基于505中的词性标注结果,可以得到种子句503的句式为“如何[v][np]”;然后,根据转换规则507,可以将其转换成句式“[np]如何[v]”。可以生成包括多个句式转换规则的规则匹配库或规则对象库。例如,可以构建对象级别正则,传统正则方法基于字符串的格式匹配,对象级别则加入了词语及其对应的词性,对象级别的正则分别对着这两种信息进行正则匹配。在一些实施例中,可以对所有转换规则构建用于匹配的图,匹配图用于完成用户定义的句式之间的转换关系。
图5B示出了的句式转换规则的匹配图。图5B的匹配图包括5个节点,节点531、532、533、534、535,每个节点代表一个句式。节点之间的有向边表示这些句式之间的转换关系,例如,边542表示节点531和节点532的句式可以互相转换。而边541表示节点531的句式“如何[v][np]”可以转换成节点533的句式“[np]如何[v]”,反向不是一定能转换,例如句子“我想知道如何注册”是无法转换成“如何注册我想知道”。此外,根据图5B中的匹配图,也可以获得如下句式转换规则:
如何[v][np],[v][np]相关咨询=>[np]如何[v],[np]要怎么[v]
[np]要怎么[v]=>[np]该如何[v]
备选地或者附加地,还可以执行短语级的复述,并且生成短语复述的规则和模板,例如“在我看来”与“我觉得”之间的转换属于短语复述模板。
返回图5A,在框508,生成完整的句子并对句子中的至少一个词语进行同义词替换。例如,根据507中所示出的句式转换规则,种子句503被转换成“聊天账号如何注册”,此外,还可以将其中“账号”替换成同义词“账户”,从而生成句子“聊天账户如何注册”,如509所示。
在一些实施例中,可以通过计算词汇之间的语义相似度来进行同义词替换。图5C示出了根据本公开的实施例的同义词替换的示意图。同义词替换是一种简单的基于词汇的文本增强方式,在样本有限的情况下进行同义词替换能够提高分类的准确率。例如,可以不考虑句子中的停用词,在句子中随机抽取一个或多个词语,然后从同义词词典中随机抽取同义词并进行替换。如图5C所示,同义词都有一个得分来表示同义词与原始词的相近程度(例如图5C中每个词语后的数值),在一些实施例中,可以计算所有同义词的相似度(原始词相似度计为1),连乘可以得到生成句子的相似度,可以取相似度最大的若干条结果作为同义词替换结果。此外,同义词之间的得分值可以为词向量之间的余弦相似度。在计算一个词语的同义词时,可以遍历所有词,与原始词之间得分最高的词作为同义词,为了优化检索效率,可以利用词向量表来构建K维度(KD)树以便提高检索效率。
图6示出了根据本公开的实施例的机器学习生成模型332的示例架构的示意图。如图6所示,机器学习生成模型332为包括编码器610和解码器630的改进的变分自编码器。变分自编码器是一种深度学习模型,不同于传统的变分自编码器,本公开的实施例的机器学习生成模型332的架构是用来生成原句的复述句,也就是说,机器学习生成模型332的输入还包括原句,此外,本公开的实施例的机器学习生成模型332还引入了拷贝机制,因而能够解决未登录词的问题。
在图6的架构中,以一对原句601和复述句602作为编码器610的输入、以原句601作为解码器630的输入并以复述句602作为解码器630的输出,来训练变分自编码器中的编码器610和解码器630,使得解码器630的预测输出与真实输出相同并且编码器610的输出符合标准正态分布。
编码器610包括长短时记忆网络(LSTM)的原句编码器611和LSTM的复述句编码器612,其中原句编码器611用于对原句中的各个词语601进行编码,并将编码传给复述句编码器612。复述句编码器612用于对复述句中的各个词语602进行编码,编码器610的输出为均值621和方差622,通过模型训练使得编码器610的输出的分布符合标准正态分布。
解码器630包括LSTM的原句编码器631和LSTM的复述句解码器632。从标准正态分布中随机采样一个预定维度向量,例如隐变量623,并输入到复述句解码器632中。通过随机采样,能够使得机器学习生成模型332所生成的复述句多样性更好。原句编码器631用于对原句中的各个词语601进行编码,并且生成注意力分布633,进而获得上下文向量634。原句词语的编码向量也送入复述句解码器632,复述句解码器632根据原句的编码向量和隐向量623,生成词汇分布635,并且结合上下文向量634计算出从词汇表生成词语的生成概率636,进而确定从原句拷贝词语的拷贝概率(生成概率和拷贝概率之和为1)。最后,通过在框637将词汇分布635乘以生成概率,并且在638将注意力分布633乘以拷贝概率,可以获得最终分布639,即模型的预测输出。因此,通过在解码器630中引入指针生成网络中的拷贝机制,能够将注意力中权重分布作为概率指引来拷贝输入中的词语作为输出,由此解决训练语料的词汇表中不存在的未登录词(OOV)的问题。
在机器学习生成模型332的训练阶段,机器学习生成模型332训练的损失函数可以包括两个部分,第一部分是重构误差,也即模型的预测输出(即生成句)与实际输出(真实的复述句)之间的损失,第二部分是Kullback-Leibler(KL)散度,使得编码器610的输出趋向于标准正态分布Z~N(0,1),从而保证模型具有足够的生成能力。原句编码器611、复述句编码器612、原句编码器631以及复述句编码器632中的四个LSTM的参数是不共享的。
在机器学习生成模型332的使用阶段,首先从标准正态分布中随机采样一个隐变量z,然后把隐变量z和复述句解码器632中的每一个词向量拼接。原句编码器631对原句进行编码,并将编码传给复述句解码器632,复述句解码器632逐步地解码,每一步都形成词表大小的向量,并通过softmax函数转化为概率,最终生成对应的复述句。在输出时,可以选择概率最高的若干个词语作为候选,预测作为下个词语的输入,在这个过程中可以使用集束搜索来提高效率,直到生成句子结束。因此,本公开的实施例所提出的机器学习生成模型332能够生成更多样性的复述句,并且也能够解决OOV词语的问题。以这种方式,根据本公开的实施例的机器学习生成模型332生成的复述句不仅可以具有OOV词语,多样性也较好。
因此,本公开的实施例的文本复述系统300采用了一种基于规则和机器学习模型的混合型文本复述方式,同时从语言通顺度和/或语义相似度出发进行排序筛选,从而能够为用户提供了更好的复述生成结果。此外,根据本公开的实施例所生成的复述句可以用来丰富训练语料库,进而提高智能对话交互系统等系统的准确性。
图7示出了使用本公开的实施例的文本复述方法来训练机器人的示意图。如图7所示,语料库中包括一个问答对710,其包括问题711和对应的答案712。为了扩充语料以提升模型训练效果,可以使用本公开的实施例的文本复述方法生成问题711的多个复述句,例如问题713、714、715,其中问题713、714、715与问题711的语义相同但是表达形式不同。然后,可以基于所生成的问题713、714、715分别与答案712相结合,由此生成四个问答对720。接下来,在框730使用这四个问答对720来训练机器人模型。由于机器人模型使用了更多的问答对进行训练,因而所训练的机器人模型效果更好。
在上文中已经参见图1至图7详细描述了根据本公开的方法的示例,在下文中将描述相应的装置和设备的实现方式。
根据本公开的示例性实现方式,提供了一种文本处理装置800,文本处理装置800包括第一文本生成模块810、第二文本生成模块820以及目标文本获得模块830。第一文本生成模块810被配置为通过对源文本进行句子转换,来生成与源文本相对应的第一组复述文本,其中源文本包括句子或者句子的一部分。第二文本生成模块820被配置为通过机器学习生成模型生成与源文本相对应的第二组复述文本。目标文本获得模块830被配置为至少基于第一组复述文本和第二组复述文本,获得与源文本相对应的一组目标文本。
在一些实施例中,其中目标文本获得模块830包括:第三文本生成模块,被配置为通过对第二组复述文本进行句子转换,来生成与第二组复述文本相对应的第三组复述文本;第四文本生成模块,被配置为通过机器学习生成模型生成与第一组复述文本相对应的第四组复述文本;以及目标文本确定模块,被配置为基于第一组复述文本、第二组复述文本、第三组复述文本以及第四组复述文本,确定与源文本相对应的一组目标文本。
在一些实施例中,其中目标文本确定模块包括:组合模块,被配置为通过组合第一组复述文本、第二组复述文本、第三组复述文本以及第四组复述文本,来获得多个复述文本;得分确定模块,被配置为确定多个复述文本中的复述文本的以下至少一项的得分:指示复述文本的通顺程度的语言困惑度、以及复述文本与源文本之间的语义相似度;以及目标文本选择模块,被配置为基于所确定的得分,从多个复述文本中选择一组目标文本。
在一些实施例中,其中源文本是个问句,并且装置800还包括:检索模块,被配置为在问题文本库中检索与源文本相关的一组问句;以及问句选择模块,被配置为基于源文本与一组问句中的每个问句的语义相似度,从一组问句中选择一个或多个问句。
在一些实施例中,其中第一文本生成模块810包括:词性分析模块,被配置为对源文本进行分词和词性标注;句式转换模块,被配置为对标注后的源文本进行句式转换;以及同义词替换模块,被配置为对转换后的源文本中的至少一个词语进行同义词替换。
在一些实施例中,其中机器学习生成模型为包括编码器和解码器的变分自编码器,并且装置800还包括:训练模块,被配置为以一对原句和复述句作为编码器的输入、以原句作为解码器的输入并以复述句作为解码器的输出,来训练变分自编码器,使得编码器的输出符合标准正态分布。
在一些实施例中,其中第二文本生成模块820包括:随机采样模块,被配置为从标准正态分布中随机采样一个预定维度向量;以及解码模块,被配置为基于源文本和预定维度向量,通过解码器生成与源文本相对应的复述文本。
在一些实施例中,其中解码模块包括:生成概率确定模块,被配置为通过解码器中的指针生成网络来确定从词汇表生成词语的生成概率,指针生成网络用于实现词语的拷贝;拷贝概率确定模块,被配置为基于生成概率,确定从源文本拷贝词语的拷贝概率;以及复述文本生成模块,被配置为根据生成概率和拷贝概率,生成复述文本。
在一些实施例中,装置800还包括:语料扩充模块,被配置为通过所获得的一组目标文本来扩充训练语料;以及目标模型训练模块,被配置为使用经扩充的训练语料来训练目标模型。
在一些实施例中,其中源文本为问答对中的问题,并且装置800还包括:问答对生成模块,被配置为基于一组目标文本和问答对中的答案,生成多个问答对;以及机器人训练模块,被配置为使用所生成的多个问答对来训练机器人模型。
因此,本公开的一些实施例提出了一种基于规则和机器学习模型的混合型一体化文本复述系统,并且结合了语言通顺度和文本相似度的排序机制提高了文本生成质量,能够针对用户的领域语料进行扩充,来提高目标任务的准确率,进而提升了用户的语料整理体验。
图9示出了示出了其中可以实施本公开的一个或多个实施例的计算设备/服务器900的框图。应当理解,图9所示出的计算设备/服务器900仅仅是示例性的,而不应当构成对本文所描述的实施例的功能和范围的任何限制。
如图9所示,计算设备/服务器900是通用计算设备的形式。计算设备/服务器900的组件可以包括但不限于一个或多个处理器或处理单元910、存储器920、存储设备930、一个或多个通信单元940、一个或多个输入设备950以及一个或多个输出设备960。处理单元910可以是实际或虚拟处理器并且能够根据存储器920中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高计算设备/服务器900的并行处理能力。
计算设备/服务器900通常包括多个计算机存储介质。这样的介质可以是计算设备/服务器900可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器920可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(RAM))、非易失性存储器(例如,只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存)或它们的某种组合。存储设备930可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如闪存驱动、磁盘或者任何其他介质,其可以能够用于存储信息和/或数据(例如用于训练的训练数据)并且可以在计算设备/服务器900内被访问。
计算设备/服务器900可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图9中示出,可以提供用于从可拆卸、非易失性磁盘(例如“软盘”)进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。存储器920可以包括计算机程序产品925,其具有一个或多个程序模块,这些程序模块被配置为执行本公开的各种实施例的各种方法或动作。
通信单元940实现通过通信介质与其他计算设备进行通信。附加地,计算设备/服务器900的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,计算设备/服务器900可以使用与一个或多个其他服务器、网络个人计算机(PC)或者另一个网络节点的逻辑连接来在联网环境中进行操作。
输入设备950可以是一个或多个输入设备,例如鼠标、键盘、追踪球等。输出设备960可以是一个或多个输出设备,例如显示器、扬声器、打印机等。计算设备/服务器900还可以根据需要通过通信单元940与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与计算设备/服务器900交互的设备进行通信,或者与使得计算设备/服务器900与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口(未示出)来执行。
根据本公开的示例性实现方式,提供了一种计算机可读存储介质,其上存储有计算机可执行指令,其中计算机可执行指令被处理器执行以实现上文描述的方法。根据本公开的示例性实现方式,还提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括计算机可执行指令,而计算机可执行指令被处理器执行以实现上文描述的方法。
这里参照根据本公开实现的方法、装置、设备和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程信息呈现装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程信息呈现装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程信息呈现装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
可以把计算机可读程序指令加载到计算机、其他可编程信息呈现装置、或其他设备上,使得在计算机、其他可编程信息呈现装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程信息呈现装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各个实现方式。
Claims (13)
1.一种文本处理方法,包括:
通过对源文本进行句子转换,来生成与所述源文本相对应的第一组复述文本,所述源文本包括句子或者句子的一部分;
通过机器学习生成模型生成与所述源文本相对应的第二组复述文本;以及
至少基于所述第一组复述文本和所述第二组复述文本,获得与所述源文本相对应的一组目标文本。
2.根据权利要求1所述的方法,其中获得与所述源文本相对应的一组目标文本包括:
通过对所述第二组复述文本进行句子转换,来生成与所述第二组复述文本相对应的第三组复述文本;
通过所述机器学习生成模型生成与所述第一组复述文本相对应的第四组复述文本;以及
基于所述第一组复述文本、所述第二组复述文本、所述第三组复述文本以及所述第四组复述文本,确定与所述源文本相对应的所述一组目标文本。
3.根据权利要求2所述的方法,其中确定与所述源文本相对应的所述一组目标文本包括:
通过组合所述第一组复述文本、所述第二组复述文本、所述第三组复述文本以及所述第四组复述文本,来获得多个复述文本;
确定所述多个复述文本中的复述文本的以下至少一项的得分:指示所述复述文本的通顺程度的语言困惑度、以及所述复述文本与所述源文本之间的语义相似度;以及
基于所确定的得分,从所述多个复述文本中选择所述一组目标文本。
4.根据权利要求1所述的方法,其中所述源文本是个问句,并且所述方法还包括:
在问题文本库中检索与所述源文本相关的一组问句;以及
基于所述源文本与所述一组问句中的每个问句的语义相似度,从所述一组问句中选择一个或多个问句。
5.根据权利要求1所述的方法,其中生成与所述源文本相对应的第一组复述文本包括:
对所述源文本进行分词和词性标注;
对标注后的源文本进行句式转换;以及
对转换后的源文本中的至少一个词语进行同义词替换。
6.根据权利要求1所述的方法,其中所述机器学习生成模型为包括编码器和解码器的变分自编码器,并且所述方法还包括:
以一对原句和复述句作为所述编码器的输入、以所述原句作为所述解码器的输入并以所述复述句作为所述解码器的输出,来训练所述变分自编码器,使得所述编码器的输出符合标准正态分布。
7.根据权利要求6所述的方法,其中通过机器学习生成模型生成与所述源文本相对应的第二组复述文本包括:
从所述标准正态分布中随机采样一个预定维度向量;以及
由所述解码器基于所述源文本和所述预定维度向量,来生成与所述源文本相对应的复述文本。
8.根据权利要求7所述的方法,其中通过所述解码器生成与所述源文本相对应的复述文本包括:
通过所述解码器中的指针生成网络来确定从词汇表生成词语的生成概率,所述指针生成网络用于实现词语的拷贝;
基于所述生成概率,确定从所述源文本拷贝词语的拷贝概率;以及
根据所述生成概率和所述拷贝概率,生成所述复述文本。
9.根据权利要求1-8中任一项所述的方法,还包括:
通过所获得的一组目标文本来扩充训练语料;以及
使用经扩充的训练语料来训练目标模型。
10.根据权利要求1-8中任一项所述的方法,其中所述源文本为问答对中的问题,并且所述方法还包括:
基于所述一组目标文本和所述问答对中的答案,生成多个问答对;以及
使用所生成的多个问答对来训练机器人模型。
11.一种文本处理装置,包括:
第一文本生成模块,被配置为通过对源文本进行句子转换,来生成与所述源文本相对应的第一组复述文本,所述源文本包括句子或者句子的一部分;
第二文本生成模块,被配置为通过机器学习生成模型生成与所述源文本相对应的第二组复述文本;以及
目标文本获得模块,被配置为至少基于所述第一组复述文本和所述第二组复述文本,获得与所述源文本相对应的一组目标文本。
12.一种电子设备,包括:
处理器;以及
存储器,存储有计算机可执行指令,所述计算机可执行指令当被所述处理器执行时,被配置以实现根据权利要求1至10中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机可执行指令,其中所述计算机可执行指令被处理器执行以实现根据权利要求1至10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010437018.3A CN111814451A (zh) | 2020-05-21 | 2020-05-21 | 文本处理方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010437018.3A CN111814451A (zh) | 2020-05-21 | 2020-05-21 | 文本处理方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111814451A true CN111814451A (zh) | 2020-10-23 |
Family
ID=72848377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010437018.3A Pending CN111814451A (zh) | 2020-05-21 | 2020-05-21 | 文本处理方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111814451A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918627A (zh) * | 2019-01-08 | 2019-06-21 | 平安科技(深圳)有限公司 | 文本生成方法、装置、电子设备及存储介质 |
CN112397201A (zh) * | 2020-12-10 | 2021-02-23 | 杭州师范大学 | 一种面向智能问诊系统的复述句生成优化方法 |
CN113822034A (zh) * | 2021-06-07 | 2021-12-21 | 腾讯科技(深圳)有限公司 | 一种复述文本的方法、装置、计算机设备及存储介质 |
CN115146623A (zh) * | 2022-07-26 | 2022-10-04 | 北京有竹居网络技术有限公司 | 文本词替换方法、装置、存储介质及电子设备 |
CN115329784A (zh) * | 2022-10-12 | 2022-11-11 | 之江实验室 | 基于预训练模型的句子复述生成系统 |
CN115631251A (zh) * | 2022-09-07 | 2023-01-20 | 北京百度网讯科技有限公司 | 基于文本生成图像的方法、装置、电子设备和介质 |
CN112397201B (zh) * | 2020-12-10 | 2024-05-28 | 杭州师范大学 | 一种面向智能问诊系统的复述句生成优化方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180054308A (ko) * | 2016-11-15 | 2018-05-24 | 한국과학기술원 | 함의 문장 생성 기술을 활용한 문장 표절 판단 장치, 이를 구현하기 위한 프로그램 및 기록 매체 |
CN108287822A (zh) * | 2018-01-23 | 2018-07-17 | 北京容联易通信息技术有限公司 | 一种中文相似问题生成系统与方法 |
CN110766435A (zh) * | 2018-12-19 | 2020-02-07 | 北京嘀嘀无限科技发展有限公司 | 向量训练方法、装置、电子设备以及计算机可读存储介质 |
CN111027331A (zh) * | 2019-12-05 | 2020-04-17 | 百度在线网络技术(北京)有限公司 | 用于评估翻译质量的方法和装置 |
CN111061847A (zh) * | 2019-11-22 | 2020-04-24 | 中国南方电网有限责任公司 | 对话生成及语料扩充方法、装置、计算机设备和存储介质 |
-
2020
- 2020-05-21 CN CN202010437018.3A patent/CN111814451A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180054308A (ko) * | 2016-11-15 | 2018-05-24 | 한국과학기술원 | 함의 문장 생성 기술을 활용한 문장 표절 판단 장치, 이를 구현하기 위한 프로그램 및 기록 매체 |
CN108287822A (zh) * | 2018-01-23 | 2018-07-17 | 北京容联易通信息技术有限公司 | 一种中文相似问题生成系统与方法 |
CN110766435A (zh) * | 2018-12-19 | 2020-02-07 | 北京嘀嘀无限科技发展有限公司 | 向量训练方法、装置、电子设备以及计算机可读存储介质 |
CN111061847A (zh) * | 2019-11-22 | 2020-04-24 | 中国南方电网有限责任公司 | 对话生成及语料扩充方法、装置、计算机设备和存储介质 |
CN111027331A (zh) * | 2019-12-05 | 2020-04-17 | 百度在线网络技术(北京)有限公司 | 用于评估翻译质量的方法和装置 |
Non-Patent Citations (2)
Title |
---|
DIVESH R. KUBAL .ETAL: "A Hybrid Deep Learning Architecture for Paraphrase Identification", IEEE, 31 December 2018 (2018-12-31) * |
柔特 等: "基于语序变换的藏文复述句生成方法", 计算机工程, no. 04, 30 April 2018 (2018-04-30) * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918627A (zh) * | 2019-01-08 | 2019-06-21 | 平安科技(深圳)有限公司 | 文本生成方法、装置、电子设备及存储介质 |
CN112397201A (zh) * | 2020-12-10 | 2021-02-23 | 杭州师范大学 | 一种面向智能问诊系统的复述句生成优化方法 |
CN112397201B (zh) * | 2020-12-10 | 2024-05-28 | 杭州师范大学 | 一种面向智能问诊系统的复述句生成优化方法 |
CN113822034A (zh) * | 2021-06-07 | 2021-12-21 | 腾讯科技(深圳)有限公司 | 一种复述文本的方法、装置、计算机设备及存储介质 |
CN113822034B (zh) * | 2021-06-07 | 2024-04-19 | 腾讯科技(深圳)有限公司 | 一种复述文本的方法、装置、计算机设备及存储介质 |
CN115146623A (zh) * | 2022-07-26 | 2022-10-04 | 北京有竹居网络技术有限公司 | 文本词替换方法、装置、存储介质及电子设备 |
CN115631251A (zh) * | 2022-09-07 | 2023-01-20 | 北京百度网讯科技有限公司 | 基于文本生成图像的方法、装置、电子设备和介质 |
CN115631251B (zh) * | 2022-09-07 | 2023-09-22 | 北京百度网讯科技有限公司 | 基于文本生成图像的方法、装置、电子设备和介质 |
CN115329784A (zh) * | 2022-10-12 | 2022-11-11 | 之江实验室 | 基于预训练模型的句子复述生成系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10614106B2 (en) | Automated tool for question generation | |
Bakhtin et al. | Real or fake? learning to discriminate machine from human generated text | |
CN108363790B (zh) | 用于对评论进行评估的方法、装置、设备和存储介质 | |
CN107798140B (zh) | 一种对话系统构建方法、语义受控应答方法及装置 | |
CN111814451A (zh) | 文本处理方法、装置、设备和存储介质 | |
Svoboda et al. | New word analogy corpus for exploring embeddings of Czech words | |
CN112328800A (zh) | 自动生成编程规范问题答案的系统及方法 | |
Abdurakhmonova et al. | Linguistic functionality of Uzbek Electron Corpus: uzbekcorpus. uz | |
CN113971394A (zh) | 文本复述改写系统 | |
Atef et al. | AQAD: 17,000+ arabic questions for machine comprehension of text | |
Dekker et al. | Synthetic Data for English Lexical Normalization: How Close Can We Get to Manually Annotated Data? | |
Garbacea et al. | Why is constrained neural language generation particularly challenging? | |
Iwatsuki et al. | Using formulaic expressions in writing assistance systems | |
Rikters | Hybrid machine translation by combining output from multiple machine translation systems | |
CN115906818A (zh) | 语法知识预测方法、装置、电子设备和存储介质 | |
Acharjee et al. | Sequence-to-sequence learning-based conversion of pseudo-code to source code using neural translation approach | |
Emami et al. | Designing a Deep Neural Network Model for Finding Semantic Similarity Between Short Persian Texts Using a Parallel Corpus | |
Bulfamante | Generative enterprise search with extensible knowledge base using AI | |
Guerram et al. | A domain independent approach for ontology semantic enrichment | |
Sharma et al. | From Templates to Transformers: A survey of Multimodal Image Captioning Decoders | |
Alissa et al. | Text simplification using transformer and BERT | |
Todosiev et al. | The Conceptual Modeling System Based on Metagraph Approach | |
Rücklé | Representation learning and learning from limited labeled data for community question answering | |
Ehsani et al. | Designing a Persian question answering system based on rhetorical structure theory | |
Yi | Controllable Ancient Chinese Lyrics Generation Based on Phrase Prototype Retrieving |
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 |