CN112580310B - 一种缺失字/词的补全方法及电子设备 - Google Patents

一种缺失字/词的补全方法及电子设备 Download PDF

Info

Publication number
CN112580310B
CN112580310B CN202011582902.2A CN202011582902A CN112580310B CN 112580310 B CN112580310 B CN 112580310B CN 202011582902 A CN202011582902 A CN 202011582902A CN 112580310 B CN112580310 B CN 112580310B
Authority
CN
China
Prior art keywords
missing
word
sentence
words
language model
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
CN202011582902.2A
Other languages
English (en)
Other versions
CN112580310A (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.)
Iflytek Beijing Co ltd
Hebei Xunfei Institute Of Artificial Intelligence
iFlytek Co Ltd
Original Assignee
Iflytek Beijing Co ltd
Hebei Xunfei Institute Of Artificial Intelligence
iFlytek 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 Iflytek Beijing Co ltd, Hebei Xunfei Institute Of Artificial Intelligence, iFlytek Co Ltd filed Critical Iflytek Beijing Co ltd
Priority to CN202011582902.2A priority Critical patent/CN112580310B/zh
Publication of CN112580310A publication Critical patent/CN112580310A/zh
Application granted granted Critical
Publication of CN112580310B publication Critical patent/CN112580310B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/117Tagging; Marking up; Designating a block; Setting of attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Machine Translation (AREA)

Abstract

本申请提供一种缺失字/词的补全方法,该方法包括用语言模型识别缺失句中缺失位置,其中语言模型为以伪数据作为输入而进行预训练所得到的模型,缺失句表征存在成分缺失错误的语句;用语言模型生成缺失位置处所缺失的多个候选字/词;对多个候选字/词进行排序,以确定缺失位置处所缺失的缺失字/词。本申请还提供相应的电子设备。通过上述方法,本申请能实现更加快速准确地对文本中字、词缺失问题进行纠正补全。

Description

一种缺失字/词的补全方法及电子设备
技术领域
本申请的所公开实施例涉及信息处理技术领域,且更具体而言,涉及一种缺失字/词的补全方法及电子设备。
背景技术
语言初学者在写文章时往往容易产生缺词漏词等现象,而我们日常生活写作中,也经常会因为疏忽大意等原因导致字、词缺失问题。字、词缺失是语法错误中常见的一种类型,这类错误因为需要根于原句语义进行补充字、词,难度往往比别字、乱序等类型错误校对难度更大。
发明内容
根据本申请的实施例,本申请提出一种缺失字/词的补全方法及电子设备来解决上述问题。
根据本申请的第一方面,公开一种缺失字/词的补全方法,包括用语言模型识别缺失句中缺失位置,其中所述语言模型为以伪数据作为输入而进行预训练所得到的模型,所述缺失句表征存在成分缺失错误的语句;用所述语言模型生成所述缺失位置处所缺失的多个候选字/词;以及对所述多个候选字/词进行排序,以确定所述缺失位置处所缺失的缺失字/词。
根据本申请的第二方面,公开一种电子设备,包括处理器和存储器,所述存储器存储有指令,所述指令在执行时使得所述处理器执行如第一方面所述的缺失字/词的补全方法。
本申请的有益效果是:通过用语言模型识别缺失句中缺失位置,生成缺失位置处所缺失的多个候选字/词,并对多个候选字/词进行排序,从而确定缺失位置处所缺失的缺失字/词,实现快速准确地对文本中字、词缺失问题进行纠正补全,其中语言模型是以伪数据作为输入而进行预训练得到的,缓解训练数据不足。
附图说明
下面将结合附图及实施方式对本申请作进一步说明,附图中:
图1是本申请实施例的补全方法的流程图;
图2是本申请实施例的语言模型采用BERT模型的基础模型框图;
图3是本申请实施例的补全方法的对候选字排序的部分流程图;
图4是本申请实施例的电子设备的结构示意图;
图5是本申请实施例的存储介质的示意图。
具体实施方式
目前,缺失字词补全方法通常采用Seq2Seq生成模型,输入一个包含缺失错误的句子,通过训练数据自动生成一个补全后的正确句子。然而,使用生成模型的方法解码速度比较慢,需要从开头开始生成一完整的句子,而预测速度与句子长度相关,长句子预测比较慢。另外,使用生成模型的方法,是直接生成一个正确句子,无法方便地给出错误位置和类型,从而对错误的定位不直观,需要人为对比分析才能找到错误的位置和修改方式。例如,对于一个错误的句子,“人战胜了饥饿,才努力为了下一代更好的、更健康的东西。”,使用生成模型的方法,将直接给出正确的表述:“人战胜了饥饿,才能努力为了下一代做更好的、更健康的东西。”,而不会给出明确的错误位置和修改意见。此外,生成模型对训练数据要求比较高,而目前已标注的训练语料不充足,且获取真实数据成本较高。
为此,本申请提供了一种缺失字/词的补全方法,使用语言模型,识别缺失字词的位置,并确定所缺失的字词,从而实现缺失字词的补全,即实现快速准确地对文本中字、词缺失问题进行纠正补全,其中语言模型是以伪数据作为输入而进行预训练得到的,缓解训练数据不足。
为使本领域的技术人员更好地理解本申请的技术方案,下面结合附图和具体实施方式对本申请的技术方案做进一步详细描述。
请参阅图1,为本申请实施例的缺失字/词的补全方法的流程图。该方法包括:
步骤110:用语言模型识别缺失句中缺失位置。
其中,语言模型为以伪数据作为输入而进行预训练所得到的模型。
在一些示例中,语言模型可以为BERT(Bidirectional Encoder Representationsfrom Transformer,双向Transformer的Encoder)模型,具体地,使用BERT模型对应的Transformer Encoder结构作为基础模型,如图2所示,其包括embedding(嵌入)层和encoder(编码)层,输入文本inputs经过Input Embedding,即线性变换,得到wordembedding(词向量),随后,与Positional Encoding所输出的位置向量(positionembedding)进行相加,相加的结果作为encoder层的输入。本领域技术人员可理解,该encoder层采用基于注意力(Attention)机制,并且包括多次encoding过程,详细如图2所示,为了简洁,在此不进行详细描述。
伪数据为将预设数据经过随机操作而得到的数据,例如,某个正确语句经过随机修改,得到的随机修改后的语句即为伪数据。
在得到BERT模型的过程中,将伪数据输入到模型中,进行预训练,直到模型在验证集中效果收敛为止,也就是说,采用early stoping等技术,判断模型在验证集中已处于最好的效果,从而获得预训练后的模型,即BERT模型。
缺失句表征存在成分缺失错误的语句。成分缺失错误主要包括缺字和缺词两种类型。缺字类型是指语句中缺少某个字,例如,语句“人们战了饥饿”,“战”与“了”之间缺少“胜”一字。缺词类型是指语句中缺少某个词,例如,“人们了饥饿”,“们”与“了”之间缺少“战胜”一词。
步骤120:用语言模型生成缺失位置处所缺失的多个候选字/词。
使用语言模型生成缺失位置处所缺失的多个候选字/词,将缺失句及缺失位置输入到语言模型中进行预测,从而可获得缺失位置处所缺失的候选字/词。
步骤130:对多个候选字/词进行排序,以确定缺失位置处所缺失的缺失字/词。
对上述获得的候选字/词进行排序,将排序在前或在后的候选字/词确定为缺失位置处所缺失的缺失字/词。
本实施例中,通过用语言模型识别缺失句中缺失位置,生成缺失位置处所缺失的多个候选字/词,并对多个候选字/词进行排序,从而确定缺失位置处所缺失的缺失字/词,实现快速准确地对文本中字、词缺失问题进行纠正补全,其中语言模型是以伪数据作为输入而进行预训练得到的,缓解训练数据不足。
如上述,用语言模型识别缺失句中缺失位置,得到识别后的缺失句,在一些实施例中,识别后的缺失句由列表表征,列表包括至少一个内容元组和一个结束元组,每个内容元组表征缺失句中的一个字/词,结束元组表征缺失句结束。
例如,识别后的缺失句1,由列表1表征,其形式如下所示:
列表1:[内容元组1,内容元组2,内容元组3,内容元组4,内容元组5,结束元组],
其中,内容元组1、内容元组2、内容元组3、内容元组4和内容元组5分别表征缺失句1中的一个字,结束元组表征缺失句1的结束。
其中,每个内容元组包括每个字/词以及第一标签,第一标签表征每个字/词之前是否缺失及缺失字/词的数量。结束元组包括结束符以及第二标签,在结束元组中,该第一标签表征结束符之前是否缺失及缺失字/词的数量。可以看出,每个内容元组中均包括第一标签,结束元组中包括第二标签,该第一标签表征相应的字/词之前是否缺失及缺失字/词的数量,该第二标签表征结束符之前是否缺失及缺失字/词的数量。
继续以上述缺失句1为例进行说明,在缺失句1中,内容元组1为(**,第一标签)、内容元组2为(**,第一标签)…结束元组为(结束符,第二标签),其中**表示各个元组中相应的字。
第一标签的标签值可以设置为O和M,其中O表示在相应的字/词或结束符之前不存在缺失,M表示在相应的字/词或结束符之前存在缺失,此时,为了进一步表示缺失字/词的数量,第一标签的标签值可以设置为Mx,其中x表示缺失字/词的数量,取值为1,2,3…等,并且x的最大取值根据缺失句的实际情况来确定。例如,标签值为M2,则表示相应的字/词或结束符之前存在缺失,且缺失2个字。
第二标签的标签值也可以设置为O和M,其中O表示在结束符之前不存在缺失,M表示在结束符之前存在缺失,此时,为了进一步表示缺失字/词的数量,第二标签的标签值可以设置为Mx,其中x表示缺失字/词的数量,取值为1,2,3…等,并且x的最大取值根据缺失句的实际情况来确定。例如,标签值为M2,则表示相应的字/词或结束符之前存在缺失,且缺失2个字。
在一示例中,可以采用序列标注方法对每个元组的第一标签或第二标签的标签值进行预测。
结束符可以采用特殊符号或字符串来实现,在一示例中,该结束符可以为<EOS>。
继续以上述缺失句1为例进行说明,其列表1如下所示:
列表1:[(**,标签值1),(**,标签值2),(**,标签值3),(**,标签值4),(<EOS>,标签值5)]。
下面以实际语句为例进行说明,例如,上述语句“人们了饥饿”,用语言模型识别后,该语句如下表示:
列表:[(人,O),(们,O),(了,M2),(饥,O),(饿,O),(<EOS>,O)],或者[(“人”,“O”),(“们”,“O”),(“了”,“M2”),(“饥”,“O”),(“饿”,“O”),(“<EOS>”,“O”)]。
从该列表中,可以看出,该语句中,在“了”之前存在缺失,且缺失2个字(即“战胜”),其他字或结束符之前不存在缺失。
在另一些实施例中,每个内容元组进一步包括第三标签,表征每个字/词的词性,结束元组进一步包括第四标签,表征结束符的词性。可以看出,每个内容元组中均包括第三标签,该第二标签表征相应的字/词或结束符的词性,结束元组中包括第四标签,该第四标签表征结束符的词性。
继续以上述缺失句1为例进行说明,在缺失句1中,内容元组1为(**,第三标签,第一标签)、内容元组2为(**,第三标签,第一标签)…结束元组为(结束符,第四标签,第二标签),其中**表示各个元组中相应的字。
第三标签和第四标签的标签值可以根据相应的字/词或结束符在整个语句中的成分而设置,例如,标签值为n,表示相应的字/词为名词,标签值为u,表示相应的字/词为助词,标签值为v,表示相应的字/词为动词,标签值为None,表示没有词性,该标签值一般用于结束符,等等,在此不作限定。
下面以实际语句为例进行说明,例如,上述语句“人们了饥饿”,用语言模型识别后,该语句如下表示:
列表:[(人,n,O),(们,n,O),(了,u,M2),(饥,n,O),(饿,n,O),(<EOS>,None,O)],或者[(“人”,“n”,“O”),(“们”,“n”,“O”),(“了”,“u”,“M2”),(“饥”,“n”,“O”),(“饿”,“n”,“O”),(“<EOS>”,None,“O”)]。
从该列表中,可以看出,该语句中,在助词“了”之前存在缺失,且缺失2个字(即“战胜”),其他字或结束符之前不存在缺失。
如上述,使用语言模型生成缺失位置处所缺失的多个候选字/词,将缺失句及缺失位置输入到语言模型中进行预测,从而可获得缺失位置处所缺失的候选字/词。具体地,在一些实施例中,首先,在缺失位置处填充至少一个占位符,其中占位符的数量与缺失字/词的数量对应,也就是说,缺失了多少个字/词,就填充多少个占位符。然后,将填充后的缺失句输入到语言模型,预测至少一个占位符所对应的预测信息,从而获得多个候选字。
占位符可以为特殊符号或字符串,在一些示例中,占位符可以为[MASK]。
下面继续以实际语句为例进行说明,例如,上述语句“人们了饥饿”。如上述,该语句中,在“了”之前存在缺失,且缺失2个字(即“战胜”),其他字或结束符之前不存在缺失,即“了”之前存在缺失位置。首先,在该缺失位置处填充2个占位符,例如[MASK],经过填充后,该语句具体如下所示:
人们[MASK][MASK]了饥饿
随后,将上述填充后的语句输入到语言模型中,例如BERT模型中,预测上述语句中两个占位符[MASK]对应的预测信息,从而获得多个候选字/词,例如,“克服”、“战胜”、“克胜”或者“战服”等等。
在一些实施例中,至少一个占位符为两个占位符,例如上述的实际语句的示例中,“了”之前存在缺失位置,在该缺失位置处填充2个占位符。
此时,每个占位符所对应的预测信息包括字矩阵及概率向量,其中字矩阵中的字表征该占位符所对应的字,概率向量中的概率值表征该占位符所对应的字的预测概率。
下面继续以实际语句为例进行说明,例如,上述语句“人们了饥饿”,经过填充后的语句如上所示。
经过预测后,该语句中,第一个占位[MASK]对应的预测信息包括字矩阵W1可为[胜,战,服,克,的],以及概率向量x1为(0.1,0.4,0.02,0.47,0.01),也就是说,预测到第一个占位符[MASK]为“胜”的概率是0.1,为“战”的概率是0.4,为“服”的概率是0.02,为“克”的概率是0.47,为“的”字的概率是0.01。
该语句中,第二个占位符[MASK]对应的预测信息包括字矩阵W2可为[服,战,胜,克,的],以及概率向量x2可能是(0.4,0.02,0.5,0.07,0.01)。也就是说,预测到第二个占位符[MASK]为“服”的概率是0.4,为“战”的概率是0.02,为“胜”的概率是0.5,为“克”的概率是0.07,为“的”字的概率是0.01。
在至少一个占位符为两个占位符的实施例中,此时,使用语言模型生成缺失位置处所缺失的多个候选字/词。具体地,在一些实施例中,首先,将每个占位符用预测符进行替换,其中预测符表征每个占位符所对应的预测信息中字矩阵与概率向量的乘积,然后,将替换后的缺失句输入到语言模型,得到语言模型的输出,并将语言模型的输出以及替换后的缺失句输入到循环神经网络,预测缺失位置处所缺失的词,从而获得多个候选词。
预测符可以为特殊符号或字符串,在一些示例中,预测符可以为[SOFT],例如,[SOFT1]表示第一个预测符,[SOFT2]表示第二个预测符。预测符表征每个占位符所对应的预测信息中字矩阵与概率向量的乘积,即字矩阵*概率向量。
可以将语言模型的输出以及替换后的缺失句输入到循环神经网络LSTM(LongShort Term Memory,长短期记忆)模型。该LSTM模型其通过每个时刻都会把隐藏层的值保存下来以用于下一个时刻,从而保证每一个当前时刻都能记录上一时刻的信息。LSTM模型的每一个时刻的输入为预测符以及对应位置所预测的字表示,也就是说,LSTM模型的每一个时刻的输入为替换后的缺失句以及该替换后的缺失句经过语言模型后得到的语言模型的输出,即对应位置所预测的字表示为语言模型的输出。在LSTM模型中,这两个预测符所处的位置为生成模型,因此,可以采用beam search方式,得到多个候选词。
本实施例中,通过用预测符替换两个占位符,将替换后的缺失句输入到语言模型,得到其输出,从而将语言模型的输出以及替换后的缺失句输入到循环神经网络,解决了用语言模型直接一起预测两个占位符时可能会出现的Multi-modality问题。
下面继续以上述语句“人们了饥饿”为例进行说明,该语句经过填充后如上所示,经过预测后,每个占位符对应的预测信息如上所述。首先,将第一个占位符[MASK]替换为预测符[SOFT1],将第二个占位符[MASK]替换为预测符[SOFT2],其中,预测符[SOFT1]=W1*x1,预测符[SOFT2]=W2*x2,即替换后的语句具体如下所示:
人们[SOFT1][SOFT2]了饥饿
随后,将替换后的语句输入到语言模型中,例如,BERT模型中,得到语言模型的输出,即对应位置所预测的字表示,将语言模型的输出以及替换后的上述语句输入到循环神经网络,例如LSTM模型。在LSTM模型中,例如,第一个时刻,其输入为预测符SOFT1和“们”,输出的预测字为“战”;将预测符SOFT2和“战”送入LSTM模型的第二个输入位置,根据上一时刻的信息为“战”,预测出预测符SOFT2为“胜”,即预测出这两个预测符处所缺失的词“战胜”。依次类推,根据不同的输入,还可以预测缺失位置(即这两个预测符)处所缺失的词,例如“克服”,从而得到多个候选词,例如“战胜”、“克服”等。可以看出,避免了使用BERT模型直接预测这两个预测符处所缺失的词为“克胜”的情况,即解决了直接一起预测两个占位符可能会出现的Multi-modality问题。
如上述,在步骤130中,对多个候选字/词进行排序,以确定缺失位置处所缺失的缺失字/词。在一些实施例中,可以根据每个候选字/词的分数进行排序,也就是说,对预测所获得的多个候选词进行打分操作,从而根据相应的分数进行排序。具体地,如图3所示,上述步骤130可以包括:
步骤S131:将每个候选字/词填充到所述缺失句中所述缺失位置处,以构成完整句。
继续以上述语句“人们了饥饿”为例进行说明,如上所述,经过语言模型和循环神经网络后,预测得到多个候选词,例如“战胜”、“克服”等。将这些候选词填充到该语句“人们了饥饿”,分别得到了完整句1“人们战胜了饥饿”,以及完整句2“人们克服了饥饿”等。
步骤S132:使用语言模型,确定每个完整句的第一分数。
其中第一分数由完整句中每个字的概率值之和表征,完整句中每个字的概率值是使用预训练后的语言模型对填充后的候选字/词进行预测而得到的。
使用语言模型,例如BERT语言模型,确定每个完整句的第一分数,其由完整句中每个字的概率值之和表征,具体地,其计算公式如下:
scoreBERT=log(P(w1))+...+log(P(wn))
其中,P(wn)表示相应字的概率值,例如,P(w1)表示完整句中第一个字的概率。log(P(wn))表示对相应字的概率取log运算,可以看出,第一分数为完整句中每个字的概率值取log运算后的总和,即由完整句中每个字的概率值之和表征。
每个字的概率值是使用语言模型,例如BERT模型,对填充后的候选字/词进行预训练而得到的。
以上述语句“人们了饥饿”为例进行说明,如上所述,该语句经过上述操作,得到了完整句1和完整句2等,例如,完整句1的第一分数scoreBERT=log(P(w1))+log(P(w2))+log(P(w3))+log(P(w4))+log(P(w5))+log(P(w6))+log(P(w7)),其中P(w1)...P(w7)分别表示该完整句1中“人”、“们”...“饿”的概率。同样地,也可以得到完整句2等的第一分数。
步骤S133:使用另一语言模型,确定每个完整句的第二分数。
其中,另一语言模型为以五元组的词级别为训练对象的模型,第二分数为依据使用另一语言模型对所述缺失句及相应完整句进行训练而得到的概率值。
另一语言模型以五元组的词级别为训练对象,其中五元组的词级别,表示以某个语句中连续的5个字/词为单位,从而进行训练,例如,该语言模型可为N-Gram模型,确定每个完整句的第二分数,具体地,该语言模型对缺失句及相应的完整句进行训练,从而得到该完整句的第二分数,其计算公式具体如下:
scorengram=log(P(w1))+log(P(w2|w1)+...+log(P(wn|wn-4,wn-3,wn-2,wn-1))
其中,由于以五元组的词级别为训练对象,故n=5,P(w1)为第1个字的概率值,P(w2|w1)为在第1个字存在的基础上第二个字的条件概率值,P(wn|wn-4,wn-3,wn-2,wn-1)为在第1个字、第2个字、第3个字、第4个字存在的基础上第5个字的条件概率值。上述概率值通过N-Gram模型进行训练即可得到。
以上述语句“人们了饥饿”为例进行说明,如上所述,该语句经过上述操作,得到了完整句1和完整句2等,例如,完整句1的第二分数可以由上述计算公式得到。
步骤S134:根据第一分数和第二分数,得到每个候选字/词对应的分数,从而根据每个候选字/词对应的分数进行排序。
根据第一分数和第二分数,得到每个候选字/词对应的分数,例如,将第一分数和第二分数进行运算,例如相加、平均、加权平均等,得到每个候选字/词对应的分数,从而根据得到的每个候选字/词对应的分数进行排序。
在一示例中,第一分数和第二分数进行加权平均操作,例如,第一分数的加权为a,第二分数的加权为(1-a),其中a为0-1之间的一个超参数。具体地,完整句的分数的计算公式如下:
score=α*scoreBERT+(1-α)*scorengram
在一些示例中,a可以为0.5。
经过上述步骤,可以得到每个完整句的分数,从而将分数最大的完整句中的候选字/词作为缺失句中所需补全的字/词。例如,在上述以上述语句“人们了饥饿”为例进行说明的示例中,可以得到,完整句1的分数大于完整句2的分数,从而,“战胜”为上述缺失语句“人们了饥饿”中所需的补全的词。
如上述,语言模型为以伪数据作为输入而进行预训练所得到的模型。下面以BERT模型为例进行说明。
在一些实施例中,伪数据的生成包括:生成均匀分布于预设区间的第一随机数,以对预设集合中每个正确语句进行随机修改,从而得到每个正确语句的伪数据。其中预设集合为预采集的包括多个正确语句的正确文本。在一些示例中,该预设集合可以为***文本、新闻文本对应的集合。
每个正确语句的伪数据由预设列表表征,预设列表包括至少一个二元组和/或至少一个三元组,每个二元组包括一个字以及表征字之前未缺失的第一标签值,每个三元组包括一个字、表征字之前缺失及缺失字数量的第二标签值以及字之前所缺失的缺失字/词。
其中,第一标签值和第二标签值与上述实施例中识别后的缺失句中的第一标签的标签值的设置是一致的,详见上述实施例的描述,为了简洁,在此不再进行说明。
以正确语句“人们战胜了饥饿”为例进行说明,其伪数据可以为“人们了饥饿”、“人们战了饥饿”等等。
伪数据“人们了饥饿”可由预设列表表征,具体如下:
预设列表1:[(“人”,“O”),(“们”,“O”),(“了”,“M2”,“战胜”),(“饥”,“O”),(“饿”,“O”),(“<EOS>”,“O”)]
其中,(“人”,“O”),(“们”,“O”),(“饥”,“O”),(“饿”,“O”),(“<EOS>”,“O”)分别为二元组,包括相应的字以及表征该字之前未缺失的第一标签值“O”,(“了”,“M2”,“战胜”)为三元组,包括“了”字,表征“了”字之前缺失及缺失数量的第二标签值“M2”,以及“了”字之前所缺失的词“战胜”。
本实施例中,通过生成均匀分布于预设区间的第一随机数,以对预设集合中每个正确语句进行随机修改,从而得到每个正确语句的伪数据,进而,将生成的伪数据输入到诸如BERT模型的语言模型,进行预训练,可以极大地加快收敛速度,使得需要重新学习的参数量就会比较小,从而缓解训练数据不足的问题。
进一步地,在一些实施例中,可对预设集合中每个正确语句进行随机修改,具体地,当第一随机数小于第一预设值时,对正确语句生成相应的缺失伪数据。当第一随机数大于或等于所述第一预设值时,保持正确语句不变。
缺失伪数据为正确语句中缺字或缺词操作所产生的,例如,“人们了饥饿”和“人们战了饥饿”均为正确语句“人们战胜了饥饿”的缺失伪数据。
第一随机数为均匀分布在0-1之间的随机数r1,假设第一预设值为0.05,当r1<0.05时,则生成缺失伪数据,对该正确语句进行随机修改,即执行缺字操作或缺词操作。当r1>=0.05时,则保持该正确语句不变。
进一步地,在一些实施例中,对正确语句生成相应的缺失伪数据包括:随机生成均匀分布于所述预设区间的第二随机数,以对正确语句执行缺字操作或缺词操作。
其中,若第二随机数小于第二预设值,则对正确语句执行所述缺字操作,若第二随机数大于或等于第二预设值,则对正确语句执行所述缺词操作。
第二随机数为从(0,1)均匀分布中随机生成的概率r2,假设第二预设值为0.7,当r2<0.7时,执行缺字操作,当r2>=0.7时,执行缺词操作。
执行缺字操作的过程如下:对正确语句中的每个字随机生成均匀分布于预设区间(即0-1)内的第一概率值(即第一随机数),若相应的字的第一概率值小于第一预设值,例如0.05,则删除句中相应的字。
以正确语句“人们战胜了饥饿”为例进行说明,其中,对“人”、“们”、“战”、“胜”、“了”、“饥”、“饿”所随机生成的第一概率值分别为0.2、0.5、0.1、0.8、0.33、0.6、0.02,第一预设值为0.05,可以看出,“饿”字的概率为0.02<0.05,则删除“饿”字,生成相应的缺失伪数据“人们战胜了饥”。
执行缺词操作的过程如下:对正确语句中的每个词随机生成均匀分布于预设区间(即0-1)内的第二概率值(即第一随机数),若相应的词的第二概率值小于第一预设值,例如0.05,则删除正确语句中相应的词。
以正确语句“人们战胜了饥饿”为例进行说明,其中,对“人们”、“战胜”、“了”、“饥饿”所随机生成的第二概率值分别为0.2、0.01、0.5、0.3,第一预设值为0.05,可以看出,“战胜”字的概率为0.01<0.05,则删除其中的“战胜”,生成相应的缺失伪数据“人们了饥饿”。
如图4所示,为本申请实施例的电子设备的结构示意图。电子设备包括存储器210和处理器220,存储器210和处理器220相互连接。
存储器210可以包括只读存储器和/或随机存取存储器等,并向处理器220提供指令和数据。存储器210的一部分还可以包括非易失性随机存取存储器(NVRAM)。存储器210存储有指令,该指令被处理器220执行时,实现本申请上述实施例中任一个以及任意不冲突的组合所提供的补全方法。
处理器220可以是一种集成电路芯片,具有信号处理能力。在实现过程中,上述方法的各步骤可以通过处理器220中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器220可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。
本发明还提供一种非易失性存储介质的实施例,如图5所示,该非易失性存储介质500存储有处理器可运行的指令501,该指令501用于执行上述实施例中的方法。具体地,该存储介质500具体可如图4所示的存储器210或为存储器210的一部分。
所属领域的技术人员易知,可在保持本申请的教示内容的同时对装置及方法作出诸多修改及变动。因此,以上公开内容应被视为仅受随附权利要求书的范围的限制。

Claims (11)

1.一种缺失字/词的补全方法,其特征在于,包括:
用语言模型识别缺失句中缺失位置,其中所述语言模型为以伪数据作为输入而进行预训练所得到的模型,所述缺失句表征存在成分缺失错误的语句;
用所述语言模型生成所述缺失位置处所缺失的多个候选字/词;以及
对所述多个候选字/词进行排序,以确定所述缺失位置处所缺失的缺失字/词;其中,
对所述多个候选字/词进行排序包括:
将每个候选字/词填充到所述缺失句中所述缺失位置处,以构成完整句;
使用所述语言模型,确定每个所述完整句的第一分数,其中所述第一分数由所述完整句中每个字的概率值之和表征,所述完整句中每个字的概率值是使用预训练后的所述语言模型对填充后的候选字/词进行预测而得到的;
使用另一语言模型,确定每个所述完整句的第二分数,其中所述第二分数为依据使用所述另一语言模型对所述缺失句及相应完整句进行训练而得到的概率值;
根据所述第一分数和所述第二分数,得到每个候选字/词对应的分数,从而根据每个所述每个候选字/词对应的分数进行排序。
2.如权利要求1中所述的补全方法,其特征在于,识别后的所述缺失句由列表表征,所述列表包括至少一个内容元组和一个结束元组,每个所述内容元组表征所述缺失句中的一个字/词,所述结束元组表征所述缺失句结束;
其中,每个所述内容元组包括:
每个字/词;以及
第一标签,表征所述每个字/词之前是否缺失及缺失字/词的数量;
所述结束元组包括:
结束符;以及
第二标签,表征所述结束符之前是否缺失及缺失字/词的数量。
3.如权利要求2中所述的补全方法,其特征在于,每个所述内容元组进一步包括第三标签,表征所述每个字/词的词性;
所述结束元组进一步包括第四标签,表征所述结束符的词性。
4.如权利要求2中所述的补全方法,其特征在于,所述用所述语言模型生成所述缺失位置处所缺失的多个候选字/词包括:
在所述缺失位置处填充至少一个占位符,其中所述占位符的数量与缺失字/词的数量对应;
将所述填充后的缺失句输入到所述语言模型,预测所述至少一个占位符所对应的预测信息,从而获得多个候选字。
5.如权利要求4中所述的补全方法,其特征在于,所述至少一个占位符为两个占位符;
每个所述占位符所对应的预测信息包括字矩阵及概率向量,其中所述字矩阵中的字表征所述占位符所对应的字,所述概率向量中的概率值表征所述占位符所对应的字的预测概率;
所述用所述语言模型生成所述缺失位置处所缺失的多个候选字/词包括:
将每个占位符用预测符进行替换,其中所述预测符表征每个所述占位符所对应的所述预测信息中所述字矩阵与所述概率向量的乘积;
将替换后的所述缺失句输入到所述语言模型,得到所述语言模型的输出,并将所述语言模型的输出以及替换后的所述缺失句输入到循环神经网络,预测所述缺失位置处所缺失的词,从而获得多个候选词。
6.如权利要求1中所述的补全方法,其特征在于,
所述另一语言模型为以五元组的词级别为训练对象的模型。
7.如权利要求1-6中任一项所述的补全方法,其特征在于,所述伪数据的生成包括:
生成均匀分布于预设区间的第一随机数,以对预设集合中每个正确语句进行随机修改,从而得到每个正确语句的所述伪数据,其中所述预设集合为预采集的包括多个所述正确语句的正确文本;
所述每个正确语句的伪数据由预设列表表征,所述预设列表包括至少一个二元组和/或至少一个三元组,每个所述二元组包括一个字以及表征所述字之前未缺失的第一标签值,每个所述三元组包括一个字、表征所述字之前缺失及缺失字数量的第二标签值以及所述字之前所缺失的缺失字/词。
8.如权利要求7中所述的补全方法,其特征在于,所述对预设集合中每正确语句进行随机修改包括:
当所述第一随机数小于第一预设值时,对所述正确语句生成相应的缺失伪数据;
当所述第一随机数大于或等于所述第一预设值时,保持所述正确语句不变。
9.如权利要求8中所述的补全方法,其特征在于,所述对所述正确语句生成相应的缺失伪数据包括:
随机生成均匀分布于所述预设区间的第二随机数,以对所述正确语句执行缺字操作或缺词操作;
其中,若所述第二随机数小于第二预设值,则对所述正确语句执行所述缺字操作,若所述第二随机数大于或等于所述第二预设值,则对所述正确语句执行所述缺词操作。
10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有指令,所述指令在执行时使得所述处理器执行如权利要求1-9任一项所述的缺失字/词的补全方法。
11.一种非易失性计算机存储介质,其特征在于,存储有指令,所述指令在执行时使得处理器执行如权利要求1-9任一项所述的缺失字/词的补全方法。
CN202011582902.2A 2020-12-28 2020-12-28 一种缺失字/词的补全方法及电子设备 Active CN112580310B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011582902.2A CN112580310B (zh) 2020-12-28 2020-12-28 一种缺失字/词的补全方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011582902.2A CN112580310B (zh) 2020-12-28 2020-12-28 一种缺失字/词的补全方法及电子设备

Publications (2)

Publication Number Publication Date
CN112580310A CN112580310A (zh) 2021-03-30
CN112580310B true CN112580310B (zh) 2023-04-18

Family

ID=75140266

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011582902.2A Active CN112580310B (zh) 2020-12-28 2020-12-28 一种缺失字/词的补全方法及电子设备

Country Status (1)

Country Link
CN (1) CN112580310B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11880650B1 (en) * 2020-10-26 2024-01-23 Ironclad, Inc. Smart detection of and templates for contract edits in a workflow
CN113051915A (zh) * 2021-04-22 2021-06-29 北京正智科技有限公司 一种语句处理的方法、设备和计算机可读存储介质
CN113434632A (zh) * 2021-06-25 2021-09-24 平安科技(深圳)有限公司 基于语言模型的文本补全方法、装置、设备及存储介质
CN117056859B (zh) * 2023-08-15 2024-05-10 丁杨 一种对文言文中缺失文字的补全方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107169366A (zh) * 2016-03-08 2017-09-15 环达电脑(上海)有限公司 智能设备个人数据信息安全的保护方法
CN108124477A (zh) * 2015-02-02 2018-06-05 微软技术授权有限责任公司 基于伪数据改进分词器以处理自然语言
CN108334487A (zh) * 2017-07-14 2018-07-27 腾讯科技(深圳)有限公司 缺失语意信息补全方法、装置、计算机设备和存储介质
CN108960409A (zh) * 2018-06-13 2018-12-07 南昌黑鲨科技有限公司 标注数据生成方法、设备及计算机可读存储介质
CN109726389A (zh) * 2018-11-13 2019-05-07 北京邮电大学 一种基于常识和推理的中文缺失代词补全方法
CN110413658A (zh) * 2019-07-23 2019-11-05 中经柏诚科技(北京)有限责任公司 一种基于关联规则的事实证据链构建方法
CN111639489A (zh) * 2020-05-15 2020-09-08 民生科技有限责任公司 中文文本纠错***、方法、装置及计算机可读存储介质
CN111708882A (zh) * 2020-05-29 2020-09-25 西安理工大学 基于Transformer的中文文本信息缺失的补全方法
CN111738018A (zh) * 2020-06-24 2020-10-02 深圳前海微众银行股份有限公司 一种意图理解方法、装置、设备及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108124477A (zh) * 2015-02-02 2018-06-05 微软技术授权有限责任公司 基于伪数据改进分词器以处理自然语言
CN107169366A (zh) * 2016-03-08 2017-09-15 环达电脑(上海)有限公司 智能设备个人数据信息安全的保护方法
CN108334487A (zh) * 2017-07-14 2018-07-27 腾讯科技(深圳)有限公司 缺失语意信息补全方法、装置、计算机设备和存储介质
CN108960409A (zh) * 2018-06-13 2018-12-07 南昌黑鲨科技有限公司 标注数据生成方法、设备及计算机可读存储介质
CN109726389A (zh) * 2018-11-13 2019-05-07 北京邮电大学 一种基于常识和推理的中文缺失代词补全方法
CN110413658A (zh) * 2019-07-23 2019-11-05 中经柏诚科技(北京)有限责任公司 一种基于关联规则的事实证据链构建方法
CN111639489A (zh) * 2020-05-15 2020-09-08 民生科技有限责任公司 中文文本纠错***、方法、装置及计算机可读存储介质
CN111708882A (zh) * 2020-05-29 2020-09-25 西安理工大学 基于Transformer的中文文本信息缺失的补全方法
CN111738018A (zh) * 2020-06-24 2020-10-02 深圳前海微众银行股份有限公司 一种意图理解方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112580310A (zh) 2021-03-30

Similar Documents

Publication Publication Date Title
CN112580310B (zh) 一种缺失字/词的补全方法及电子设备
US20210019599A1 (en) Adaptive neural architecture search
US11232263B2 (en) Generating summary content using supervised sentential extractive summarization
CN110232923B (zh) 一种语音控制指令生成方法、装置及电子设备
US20220222447A1 (en) Translation method and apparatus, electronic device, and computer-readable storage medium
WO2021159803A1 (zh) 文本摘要生成方法、装置、计算机设备及可读存储介质
US20230205994A1 (en) Performing machine learning tasks using instruction-tuned neural networks
CN112686051B (zh) 语义识别模型训练方法、识别方法、电子设备、存储介质
Ali et al. Genetic approach for Arabic part of speech tagging
CN112101042A (zh) 文本情绪识别方法、装置、终端设备和存储介质
US20240028893A1 (en) Generating neural network outputs using insertion commands
CN116579327B (zh) 文本纠错模型训练方法、文本纠错方法、设备及存储介质
CN114239589A (zh) 语义理解模型的鲁棒性评估方法、装置及计算机设备
Harmon et al. The competition–compensation account of developmental language disorder
WO2013191662A1 (en) Method for correcting grammatical errors of an input sentence
CN112527967A (zh) 文本匹配方法、装置、终端和存储介质
CN113486169B (zh) 基于bert模型的同义语句生成方法、装置、设备及存储介质
US8977538B2 (en) Constructing and analyzing a word graph
CN112016281B (zh) 错误医疗文本的生成方法、装置及存储介质
CN110866390B (zh) 中文语法错误的识别方法、装置、计算机设备和存储介质
JPWO2020208449A5 (zh)
CN112052651A (zh) 诗词生成方法、装置、电子设备及存储介质
US12039264B2 (en) Artificial intelligence based system and method for smart sentence completion in mobile devices
CN109190115B (zh) 一种文本匹配方法、装置、服务器及存储介质
CN111160006B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 065000 608-609, Xinya R & D building, No.106, No.1 Road, Langfang Economic and Technological Development Zone, Hebei Province

Applicant after: Hebei Xunfei Institute of Artificial Intelligence

Applicant after: iFLYTEK (Beijing) Co.,Ltd.

Applicant after: IFLYTEK Co.,Ltd.

Address before: 065000 608-609, Xinya R & D building, No.106, No.1 Road, Langfang Economic and Technological Development Zone, Hebei Province

Applicant before: Hebei Xunfei Institute of Artificial Intelligence

Applicant before: Zhongke Xunfei Internet (Beijing) Information Technology Co.,Ltd.

Applicant before: IFLYTEK Co.,Ltd.

GR01 Patent grant
GR01 Patent grant