CN110516059B - 基于机器学习的问题答复方法、问答模型训练方法及装置 - Google Patents
基于机器学习的问题答复方法、问答模型训练方法及装置 Download PDFInfo
- Publication number
- CN110516059B CN110516059B CN201910816075.XA CN201910816075A CN110516059B CN 110516059 B CN110516059 B CN 110516059B CN 201910816075 A CN201910816075 A CN 201910816075A CN 110516059 B CN110516059 B CN 110516059B
- Authority
- CN
- China
- Prior art keywords
- answer
- question
- sample
- model
- word
- 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/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- 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)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
本申请公开了一种基于机器学习的问题答复方法、问答模型训练方法及装置,涉及人工智能领域。上述训练方法包括:通过获取训练样本,每组训练样本包括问题样本、答案样本和标定位置,答案样本是由正确答案样本和错误答案样本拼接在一起形成的答案文档;通过问答模型对问题样本与答案样本进行编码,得到样本的向量序列;通过问答模型预测正确答案样本在样本的向量序列中的位置,并确定正确答案样本的位置与标定位置之间的损失;根据损失对问答模型中的模型参数进行调整,训练问答模型对正确答案样本的位置预测能力。该方法采用拼接在一起的答案样本对问答模型进行训练,训练问答模型的阅读理解能力,使问答模型能够在多个答案中准确的找到正确答案。
Description
技术领域
本申请涉及人工智能领域,特别涉及一种基于机器学习的问题答复方法、问答模型训练方法及装置。
背景技术
在车载语音系统、智能音箱、智能客服、儿童陪伴机器人等产品中,通常采用经典的问答模型实现问答功能,其中,上述问答模型是由构建的问答知识库对神经网络模型训练得到的。当上述产品采集得到用户询问的问题时,问答模型能够给出问答知识库中最匹配的答案。
相关技术提供的问答模型训练方法,是将问答对作为输入,输出二分类标签,通过二分类标签表明该问答对是正样本或者负样本。比如,将一个问答对<Q,A>作为输入,对神经网络模型进行训练,得到问答对<Q,A>的二分类标签为正样本,表示问答对中问题Q的正确答案为A;又比如,将一个问答对<Q,B>作为输入,对神经网络模型进行训练,得到问答对<Q,B>的二分类标签为负样本,表示问答对中问题Q的错误答案为B。
显然的,在上述问答模型训练方法中,正负样本是割裂开的,二者之间没有建立关联,因此,上述训练方法训练得到的问答模型在对问题进行答复时,若正样本与负样本中给出的答案相似时,容易给出错误答案。
发明内容
本申请实施例提供了一种基于机器学习的问题答复方法、问答模型训练方法及装置,可以解决当正样本与负样本中给出的答案相似时,经典的问答模型容易给出错误答案的问题。所述技术方案如下:
根据本申请的一个方面,提供了一种基于机器学习的问题答复方法,该方法包括:
获取问题;
获取候选答案,候选答案是由正确答案和错误答案拼接在一起形成的答案文档;
调用问答模型对问题与候选答案进行编码,得到向量序列;预测正确答案在向量序列中的位置;输出正确答案的位置对应的子向量序列;
对输出的子向量序列进行解码得到正确答案。
根据本申请的另一个方面,提供了一种问答模型训练方法,该方法包括:
获取训练样本,每组训练样本包括问题样本、答案样本和标定位置;其中,答案样本是由正确答案和错误答案拼接在一起形成的答案文档;
通过问答模型对问题样本与答案样本进行编码,得到样本的向量序列;
通过问答模型预测正确答案样本在样本的向量序列中的位置,并确定正确答案样本的位置与标定位置之间的损失;
根据损失对问答模型中的模型参数进行调整,训练问答模型对正确答案样本的位置预测能力。
根据本申请的另一方面,提供了一种基于机器学习的问题答复装置,该装置包括:
获取模块,用于获取问题;获取候选答案,候选答案是由正确答案和错误答案拼接在一起形成的答案文档;
调用模块,用于调用问答模型对问题与候选答案进行编码,得到向量序列;预测正确答案在向量序列中的位置;输出正确答案的位置对应的子向量序列;
解码模块,用于对输出的子向量序列进行解码得到正确答案。
根据本申请的另一方面,提供了一种问答模型训练装置,该装置包括:
获取模块,用于获取训练样本,每组训练样本包括问题样本、答案样本和标定位置;其中,答案样本是由正确答案和错误答案拼接在一起形成的答案文档;
编码模块,用于通过问答模型对问题样本与答案样本进行编码,得到样本的向量序列;
预测模块,用于通过问答模型预测正确答案样本在样本的向量序列中的位置,并确定正确答案样本的位置与标定位置之间的损失;
训练模块,用于根据损失对问答模型中的模型参数进行调整,训练问答模型对正确答案的预测能力。
根据本申请的另一方面,提供了一种电子设备,该电子设备包括:
存储器;
与存储器相连的处理器;
其中,处理器被配置为加载并执行可执行指令以实现如上述一个方面及其可选实施例所述的基于机器学习的问题答复方法,以及如上述另一方面及其可选实施例所述的问答模型训练方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,上述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上述一个方面及其可选实施例所述的基于机器学习的问题答复方法,以及如上述另一方面及其可选实施例所述的问答模型训练方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
获取训练样本,每组训练样本包括问题样本、答案样本和标定位置;其中,答案样本是由正确答案和错误答案拼接在一起形成的答案文档;通过问答模型对问题样本与答案样本进行编码,得到样本的向量序列;通过问答模型预测正确答案样本在样本的向量序列中的位置,并确定正确答案样本的位置与标定位置之间的损失;根据损失对问答模型中的模型参数进行调整,训练问答模型对正确答案样本的位置预测能力。
上述问答模型训练方法采用拼接在一起的答案样本对问答模型进行训练,通过问答模型对不同答案进行交叉编码得到样本的向量序列,预测出交叉编码后的样本的向量序列中正确答案样本的位置,训练问答模型的阅读理解能力,使该问答模型能够在多个答案中准确的找到正确答案;且上述答案样本中包括正确答案样本和错误答案样本,对不同答案进行交叉编码,使问答模型更充分的学习了正负样本的相关性,从而拥有更好的对不同答案的区别能力;还提高了问答模型的鲁棒性,也即问答模型对于正确答案预测的稳定性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是一个经典的问答模型框架的结构示意图;
图2是本申请一个示例性实施例提供的问答模型框架的结构示意图;
图3是本申请一个示例性实施例提供的计算机系统的结构示意图;
图4是本申请一个示例性实施例提供的智能音箱的结构示意图;
图5是本申请一个示例性实施例提供的问答模型训练方法的流程图;
图6是本申请另一个示例性实施例提供的问答模型训练方法的流程图;
图7是本申请另一个示例性实施例提供的问答模型训练方法的流程图;
图8是本申请另一个示例性实施例提供的问答模型框架的结构示意图;
图9是本申请一个示例性实施例提供的基于机器学习的问题答复方法的流程图;
图10是本申请一个示例性实施例提供的基于机器学习的问题答复装置的框图;
图11是本申请一个示例性实施例提供的问答模型训练装置的框图;
图12是本申请一个示例性实施例提供的电子设备的结构示意图;
图13是本申请一个示例性实施例提供的服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在车载语音系统、智能音箱、智能客服、儿童陪伴机器人等产品中,设置有问答模型,当用户询问一个问题时,由上述问答模型给出正确答案。对于上述场景的实现,需要构建一个问答知识库,还需要训练一个上述问答模型,训练得到的上述问答模型能够在给出问题后,从问答知识库中找出最匹配的答案。
最经典的问答模型训练方法,是将正负样本作为独立的个体对问答模型进行训练,比如,如图1所示的问答模型框架,在训练过程中,将问答对<Q,A>中的问题Q输入问题编码器102,将问答对<Q,A>中的答案A输入答案编码器104,将编码后的问题Q和答案A输入输出层106,由输出层输出二分类标签,从而对问答模型的分类能力进行训练,其中,二分类标签用于表示答案A是正样本或者负样本。该问答模型训练方法,正负样本之间是割裂开的,没有考虑到正负样本之间的关联性,会导致训练得到的问答模型对正负样本的区别性差,尤其当出现相似问题或者相似答案时,问答模型很可能会给出错误的答案。
本申请提供的问答模型框架,是基于阅读理解的问答模型框架,如图2所示,在问答模型的训练过程中,将容易混淆的正确答案样本与错误答案样本进行拼接,形成一个答案文档作为答案样本,该答案文档中包括拼接在一起的错误答案1、……、错误答案i、正确答案、……、错误答案k,其中,i小于k,i、k为大于1的正整数;将问题样本输入问题编码器202进行编码;将答案样本输入文档编码器204进行编码;将编码后的问题样本和答案样本输入输出层206,使输出层206基于编码后的问题样本从编码后的答案样本中找出正确答案样本,输出正确答案样本的位置,即正确答案样本的起始位置和终止位置,从而训练问答模型的阅读理解能力。该问答模型训练方法中,将正确答案样本与错误答案样本拼接在一起进行学习,充分的考虑了正负样本之间的关联性,使训练得到的问答模型能够更好的区分容易混淆的正确答案与错误答案。示意性的,对本申请提供的问答模型的详细说明请参考以下实施例。
请参考图3,示出了本申请一个示例性实施例提供的计算机系统的结构示意图,该计算机系统包括终端320和服务器340。
终端320与服务器340之间通过有线或者无线网络相互连接。
可选地,终端320可以包括笔记本电脑、台式电脑、智能手机、平板电脑、智能音箱、智能机器人中的至少一种。
终端320包括第一存储器和第一处理器。第一存储器中存储有第一程序;上述第一程序被第一处理器调用执行以实现本申请提供的基于机器学习的问题答复方法。第一存储器可以包括但不限于以下几种:随机存取存储器(Random Access Memory,RAM)、只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM)、以及电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)。
第一处理器可以是一个或者多个集成电路芯片组成。可选地,第一处理器可以是通用处理器,比如,中央处理器(Central Processing Unit,CPU)或者网络处理器(NetworkProcessor,NP)。可选地,第一处理器用于通过调用服务器340提供的问答模型344来实现本申请提供的基于机器学习的问题答复方法。
可选地,终端320中包括显示器;显示器用于显示问题或者答案。
可选地,终端320中包括麦克风;麦克风用于采集语音形式的问题。
可选地,终端320中包括扬声器;扬声器用于播放语音形式的答案。
服务器340包括第二存储器和第二处理器。第二存储器中存储有第二程序,上述第二程序被第二处理器调用来实现本申请提供的基于机器学习的问题答复方法中服务器侧执行的步骤。第二存储器中存储有问答模型344,上述问答模型344被第二处理器调用以实现上述基于机器学习的问题答复方法中服务器侧执行的步骤。可选地,第二存储器可以包括但不限于以下几种:RAM、ROM、PROM、EPROM、EEPROM。
第二存储器中还存储有问答知识库342和解码器346。当第二处理器执行基于机器学习的问题答复方法中服务器侧的步骤时,第二处理器调用问答模型344从问答知识库342中寻找得到问题的正确答案对应的向量序列,并通过解码器346对向量序列进行解码得到问题的正确答案。
可选地,第二处理器通过调用第二存储器中存储问答模型以实现上述基于机器学习的问题答复方法中服务器侧执行的步骤。可选地,第二处理器可以是通用处理器,比如,CPU或者NP。
在一些实施例中,终端320的第一存储器中还存储有问答模型,上述问答模型被第一处理器调用以实现上述基于机器学习的问题答复方法。因此,终端320可以独立实现本申请提供的基于机器学习的问题答复方法。需要说明的是,终端320中还可以包括问答知识库和解码器,以支持终端320独立实现上述基于机器学习的问题答复方法。
示意性的,本申请提供的基于机器学习的问题答复方法可以应用于车载语音系统、智能音箱、智能客服、儿童陪伴机器人、智能问答软件、百科问答软件等问答产品(终端)中。
以基于机器学习的问题答复方法应用于智能音箱中为例进行说明,如图4所示,智能音箱包括:人工智能(Artificial Intelligence,AI)处理器3201,麦克风阵列3202,存储模块3203,数据传输模块3204,功放模块3205,按键3206,发光二极管(Light EmittingDiode,LED)3207。
麦克风阵列3202用于采集声音信号,该麦克风阵列3202可以是环形麦克风阵列。麦克风阵列3202采集的声音信号传输至AI处理器3201中进行处理,识别得到问题文本。数据传输模块3204用于AI处理器3201与后台服务器进行数据传输;数据传输模块3204将AI处理器3201识别得到的问题文本输出至后台服务器。后台服务器中存储有本申请提供的问答模型以及问答知识库,后台服务器基于接收到的问题文本通过问答模型从问答知识库中确定出正确答案,并将正确答案反馈至智能音箱。智能音箱通过数据传输模块3204接收后台服务器反馈的正确答案,通过AI处理器3201将正确答案转化为合成语音,最终,通过功放模块3205对合成语音进行播放。
其中,存储模块3203用于存储采集的声音信号;存储模块3203中还存储有程序,该程序可以被AI处理器3201调用以执行基于机器学习的问题答复方法中终端侧的步骤。按键3206可以用于控制智能音箱的开关,或调整智能音箱的音量等。发光二极管3207用于指示智能音箱的工作状态,比如,发光二极管3207处于发光状态,表示智能音箱正在工作,发光二极管3207处于熄灭状态,表示智能音箱未工作。
请参考图5,示出了本申请一个示例性实施例提供的问答模型训练方法的流程图,该方法应用于电子设备中,上述电子设备可以是终端或者服务器,该方法包括:
步骤401,电子设备获取训练样本。
每组训练样本包括问题样本、答案样本和标定位置。一个问题样本是采集得到的一个历史问题;一个历史问题对应一个正确答案、以及若干个错误答案,由正确答案样本和错误答案样本拼接在一起形成的答案文档即是答案样本。答案样本中包括一个正确答案和至少一个错误答案,上述至少一个错误答案可以是与历史问题相关的答案或者不相关的答案。
示意性的,答案之间的拼接形式可以是语句的连接,比如,答案“这是一个由神经网络模型训练得到的问答模型。”、与答案“这个问答模型能够实现对问题的快速响应。”进行拼接,得到拼接后的答案样本为“这是一个由神经网络模型训练得到的问答模型。这个问答模型能够实现对问题的快速响应。”
标定位置是正确答案样本在答案样本中句子的位置;其中,标定位置可以包括起始标定位置和终止标定位置,起始标定位置是正确答案样本在答案样本中句子的起始位置,终止标定位置是正确答案样本在答案样本中句子的终止位置。比如,两个拼接在一起的句子“今天天气晴朗。今天是本月最后一天。”,对上述两个句子进行分词得到顺序排列的分词结果:“今天”、“天气”、“晴朗”、“今天”、“是”、“本月”、“最后”、“一天”;每一个分词经过词嵌入、编码之后,得到对应的词向量,并按照上述分词结果的排列顺序形成样本的向量序列;若上述第一个句子是正确答案样本,那么正确答案样本的起始标定位置为1,即样本的向量序列中的第一个词向量,终止标定位置为3,即样本的向量序列中的第三个词向量;因此,上述第一个词向量至第三个词向量组成的子向量序列即为正确答案样本对应的向量序列。
可选地,答案样本中的至少两个答案的拼接顺序是随机的。比如,答案样本1中包括正确答案A、以及错误答案B、C、D、E、F,答案样本1的拼接顺序可以是CADBFE;答案样本2中包括正确答案a、以及错误答案bcdef,答案样本2的拼接顺序可以是edcafb;答案样本1与答案样本2之间的拼接顺序毫无关联,因此,答案样本中至少两个答案的拼接顺序是无规律,上述随机的拼接顺序能够避免问答模型对于正确答案的位置过于敏感。
步骤402,电子设备通过问答模型对问题样本与答案样本进行编码,得到样本的向量序列。
其中,问答模型中包括编码器,该编码器可以包括卷积神经网络(ConvolutionalNeural Networks,CNN)、循环神经网络(Recurrent Neural Networks,RNN)、长短期记忆网络(Long Short-Term Memory,LSTM)、语义表示模型(Embeddings from Language MOdels,ELMO)、双向转换编码器(Bidirectional Encoder Representation from Transformer,BERT)中的至少一种;电子设备通过问答模型的编码器对问题样本与答案样本进行编码得到样本的向量序列。
可选地,对问题样本与答案样本进行编码,首先,电子设备通过问答模型对问题样本与答案样本进行词嵌入,得到样本的词向量序列;其次,电子设备通过问答模型对样本的词向量序列中的每一个词向量进行交叉编码,得到编码后的样本的向量序列。
步骤403,电子设备通过问答模型预测正确答案样本在样本的向量序列中的位置,并确定上述正确答案样本的位置与标定位置之间的损失。
可选地,上述正确答案样本的位置包括正确答案样本的起始位置和终止位置;其中,起始位置是问答模型预测得到的正确答案样本在样本的向量序列中句子的起始位置,终止位置是问答模型预测得到的正确答案样本在样本的向量序列中句子的终止位置。
示意性的,问答模型的输出层中包括归一化函数,归一化函数也就是softmax函数;电子设备调用问答模型中的softmax函数对样本的向量序列中的每一个词向量进行概率计算,根据得到的概率值预测出正确答案样本的句子起始位置和句子终止位置,即预测出正确答案样本的句子中第一个分词对应的词向量和最后一个分词对应的词向量的位置。
电子设备中的问答模型中还包括损失函数(Loss Function),通过损失函数确定出预测得到的正确答案样本的位置与标注位置之间的损失,即预测得到的正确答案样本的位置与标准位置之间的一致性。
可选地,损失函数可以包括0-1损失(Zero-one Loss)函数、感知损失(PerceptronLoss)函数、铰链损失(Hinge Loss)函数、交叉熵损失函数、平方误差损失(Square Loss)函数、绝对值损失(Absolute Loss)函数、指数误差(Exponential Loss)函数和正则函数中的任意一种。
步骤404,电子设备通过上述损失对问答模型中的模型参数进行调整,训练问答模型对正确答案样本的位置预测能力。
电子设备通过上述损失对问答模型中的模型参数进行调整,使模型参数调整后的问答模型预测得到的正确答案样本在样本的向量序列中的位置与标定位置之间的损失更小。
示意性的,电子设备采用反向传播算法将上述损失反向传播,在反向传播的过程中,根据上述损失对问答模型中的模型参数的值进行调整。
综上所述,本实施例提供的问答模型训练方法,采用拼接在一起的答案样本对问答模型进行训练,通过问答模型对不同答案进行交叉编码得到样本的向量序列,预测出交叉编码后的样本的向量序列中正确答案样本的位置,训练问答模型的阅读理解能力,使该问答模型能够在多个答案中准确的找到正确答案;且上述答案样本中包括正确答案样本和错误答案样本,对不同答案进行交叉编码,使问答模型更充分的学习了正负样本的相关性,从而拥有更好的对不同答案的区别能力;还提高了问答模型的鲁棒性,也即问答模型对于正确答案预测的稳定性。
基于图5,步骤402中问题样本与答案样本的编码,可以采用以下两种方式中的任意一种:
第一种编码方式,将问题样本与答案样本分别编码;
第二种编码方式,将问题样本与答案样本拼接在一起进行编码。
对于第一种编码方式,请参考图6,将步骤402替换为4022至步骤4026,示意性步骤如下:
步骤4022,电子设备通过问答模型对问题样本进行词嵌入,得到问题样本的词向量序列。
在对问题样本中每一个分词进行词嵌入之前,电子设备通过问答模型对问题样本进行分词处理,得到问题样本的分词序列。其次,电子设备通过问答模型对分词序列中的每一个分词进行词嵌入。其中,分词序列中分词是按照分词在句子中位置的先后顺序进行排列的。
可选地,电子设备通过问答模型对问题样本进行词嵌入的过程可以包括以下示意性步骤:
1)电子设备通过问答模型对问题样本中每一个分词进行表征,得到样本分词的字符向量(Token Embedding);也就是说,通过一个参数化函数将上述每一个分词映射为字符向量。电子设备通过问答模型对问题样本中每一个分词所在句子进行表征,得到样本分词的段表征向量(Segment Embedding);段表征向量用于区别出不同的句子。电子设备通过问答模型对问题样本中每一个分词所在句子中的位置进行表征,得到样本分词的位置表征向量(Position Embedding)。
2)电子设备通过问答模型对上述样本分词的字符向量、样本分词的段表征向量和样本分词的位置表征向量相加,得到问题样本中每一个分词的词向量。
3)电子设备通过问答模型对问题样本的词向量进行排列得到问题样本的词向量序列。
电子设备通过问答模型将问题样本中分词的词向量按照分词序列中分词的排列顺序对应排列,得到顺序排列后的问题样本的词向量序列。
步骤4024,电子设备通过问答模型对答案样本进行词嵌入,得到答案样本的词向量序列。
参考步骤4022中对问题样本进行词嵌入的过程,电子设备通过问答模型对答案样本进行词嵌入可以包括以下示意性步骤:
1)电子设备通过问答模型对答案样本中每一个分词进行表征,得到样本分词的字符向量;对答案样本中每一个分词所在句子进行表征,得到样本分词的段表征向量;对答案样本中每一个分词在所在句子中的位置进行表征,得到样本分词的位置表征向量。
2)电子设备通过问答模型对上述样本分词的字符向量、样本分词的段表征向量和样本分词的位置表征向量相加,得到答案样本中每一个分词的词向量。
3)电子设备通过问答模型对答案样本的词向量进行排列得到答案样本的词向量序列。
步骤4026,电子设备通过问答模型对问题样本的词向量序列和答案样本的词向量序列中的每一个词向量进行交叉编码,得到编码后的样本的向量序列。
可选地,问答模型中包括注意力机制;电子设备基于问答模型的注意力机制对问题样本的词向量序列和答案样本的词向量序列中的每一个词向量进行交叉编码,得到编码后的样本的向量序列。
在本实施例中,问题样本与答案样本是分别进行编码的,因此,电子设备基于问答模型的注意力机制对问题样本的词向量序列中的每一个词向量进行交叉编码,得到问题样本对应的向量序列;对答案样本的词向量序列中的每一个词向量进行交叉编码,得到答案样本对应的向量序列。
需要说明的是,电子设备是基于问题样本对应的向量序列预测出正确答案样本在答案样本对应的向量序列中的位置。
综上所述,本实施例提供的问答模型训练方法,采用拼接在一起的答案样本对问答模型进行训练,通过问答模型对不同答案进行交叉编码得到样本的向量序列,预测出交叉编码后的样本的向量序列中正确答案样本的位置,训练问答模型的阅读理解能力,使该问答模型能够在多个答案中准确的找到正确答案;且上述答案样本中包括正确答案样本和错误答案样本,对不同答案进行交叉编码,使问答模型更充分的学习了正负样本的相关性,从而拥有更好的对不同答案的区别能力;还提高了问答模型的鲁棒性,也即问答模型对于正确答案预测的稳定性。
对于第二种编码方式,训练样本中包括问题样本与答案样本拼接在一起形成的混合样本文档,电子设备是对混合样本文档进行编码,请参考图7,将步骤402替换为4028,示意性步骤如下:
步骤4028,电子设备通过问答模型对混合样本文档中的每一个分词进行交叉编码,得到样本的向量序列。
其中,混合样本文档中问题样本与答案样本顺序拼接在一起,问题样本可以拼接在答案样本的首部,或者可以拼接在答案样本的尾部。比如,问题样本为“今天天气如何?”,答案样本为“今天天气晴朗。今天是本月最后一天。”;混合样本文档可以为“今天天气如何?今天天气晴朗。今天是本月最后一天。”,或者,“今天天气晴朗。今天是本月最后一天。今天天气如何?”。
可选地,问答模型中包括分词函数,电子设备通过问答模型中的分词函数对混合样本文档进行分词处理,得到混合样本文档的分词序列;其中,分词序列中分词是按照分词在句子中位置的先后顺序进行排列的。
参考步骤4022,可选地,电子设备通过问答模型对混合样本文档的分词序列中每一个分词进行表征,得到样本分词的字符向量;对混合样本文档的分词序列中每一个分词所在句子进行表征,得到样本分词的段表征向量;对混合样本文档的分词序列中每一个分词在所在句子中的位置进行表征,得到样本分词的位置表征向量。电子设备通过问答模型对上述样本分词的字符向量、样本分词的段表征向量和样本分词的位置表征向量相加,得到混合样本文档的分词序列中每一个分词的词向量。电子设备通过问答模型对混合样本文档的词向量进行排列得到混合样本文档的词向量序列。
电子设备通过问答模型对混合样本文档的词向量序列中每一个词向量进行交叉编码,得到样本的向量序列。可选地,电子设备基于问答模型的注意力机制对混合样本文档的词向量序列中每一个词向量进行交叉编码,得到向量序列。
综上所述,本实施例提供的问答模型训练方法,采用拼接在一起的答案样本对问答模型进行训练,通过问答模型对不同答案进行交叉编码得到样本的向量序列,预测出交叉编码后的样本的向量序列中正确答案样本的位置,训练问答模型的阅读理解能力,使该问答模型能够在多个答案中准确的找到正确答案;且上述答案样本中包括正确答案样本和错误答案样本,对不同答案进行交叉编码,使问答模型更充分的学习了正负样本的相关性,从而拥有更好的对不同答案的区别能力;还提高了问答模型的鲁棒性,也即问答模型对于正确答案预测的稳定性。
该问答模型训练方法中,还将问题样本与答案样本拼接在一起进行学习,从而使问答模型能够更好的学习问题与答案之间的关联性。
还需要说明的是,基于图7,问答模型可以采用BERT模型实现,BERT模型中输入的训练样本为问题样本与答案样本拼接在一起形成的混合样本文档,如图8,电子设备通过问答模型对混合样本文档进行词嵌入,将混合样本文档词嵌入后得到的词向量序列输入至BERT模型502中,通过BERT模型502对词向量序列进行交叉编码,得到样本的向量序列;还通过BERT模型502预测得到正确答案样本在样本的向量序列中的位置。
上述混合样本文档中包括拼接在一起的问题、错误答案1、……、错误答案i、正确答案、……、错误答案k。对于上述混合样本文档的词嵌入如图8中所示,词向量是由样本分词的位置表征向量、样本分词的字符向量和样本分词的段表征向量相加得到的,对应的,将混合样本文档分别映射为:位置表征向量Q、位置表征向量1、……、位置表征向量i、……、位置表征向量T、……、位置表征向量k;字符向量Q、字符向量1、……、字符向量i、……、字符向量T、……、字符向量k;段表征向量Q、段表征向量1、……、段表征向量i、……、段表征向量T、……、段表征向量k;将上述三种向量对应相加,即得到混合样本文档对应的词向量序列。其中,上述三种向量Q为问题对应的向量,上述三种向量1、…、向量i、…、向量k为错误答案样本对应的向量,上述三种向量T为正确答案样本对应的向量。
在车载语音系统、智能音箱、智能客服、儿童陪伴机器人、智能问答软件、百科问答软件等问答产品中,运用上述训练得到的问答模型进行问题答复,可以得到准确性高的正确答案,示意性的,请参考图9,示出了本申请一个示例性实施例提供的基于机器学习的问题答复方法的流程图,该方法包括:
步骤601,电子设备获取问题。
可选地,电子设备上设置有文本输入控件;电子设备通过文本输入控件获取用户输入的文本形式的问题。
或者,电子设备上设置有麦克风;电子设备通过麦克风采集用户的问题语音,电子设备将问题语音转换为文本形式的问题。
步骤602,电子设备获取候选答案。
存储器中存储有问答知识库,电子设备从问答知识库中获取候选答案;其中,候选答案是由正确答案和错误答案拼接在一起形成的答案文档。其中,答案文档中包括一个正确答案和至少一个错误答案。
需要说明的是,存储器可以是终端中的存储器,也可以是服务器中的服务器,因此,问答知识库可以存储在终端中,也可以存储在服务器中。电子设备根据问答知识库在存储器中的存储地址获取问答知识库中的候选答案。
步骤603,电子设备调用问答模型对问题与候选答案进行编码,得到向量序列。
可选地,电子设备调用问答模型对问题与候选答案分别进行编码,示意性步骤如下:
1)电子设备调用问答模型对问题进行词嵌入,得到问题的第一词向量序列;调用问答模型对候选答案进行词嵌入,得到候选答案的第二词向量序列。
电子设备通过问答模型对问题中每一个分词进行表征,得到分词的字符向量;对问题中每一个分词所在句子进行表征,得到分词的段表征向量;对问题中每一个分词在所在句子中的位置进行表征,得到分词的位置表征向量;对问题中每一个分词的字符向量、段表征向量和位置表征向量相加,得到问题中每一个分词的第一词向量;对第一词向量进行排列得到第一词向量序列。其中,第一词向量序列中第一词向量是按照对应的分词在句子中位置的先后顺序排列的。
电子设备通过问答模型对候选答案中每一个分词进行表征,得到分词的字符向量;对候选答案中每一个分词所在句子进行表征,得到分词的段表征向量;对候选答案中每一个分词在所在句子中的位置进行表征,得到分词的位置表征向量;对候选答案中每一个分词的字符向量、段表征向量和位置表征向量相加,得到候选答案中每一个分词的第二词向量;对第二词向量进行排列得到第二词向量序列。其中,第二词向量序列中第二词向量是按照对应的分词在句子中位置的先后顺序排列的。
2)电子设备调用问答模型对第一词向量序列和第二词向量序列中的每一个词向量进行交叉编码,得到编码后的向量序列。
可选地,电子设备基于问答模型的注意力机制对第一词向量序列和第二词向量序列中的每一个词向量进行交叉编码,得到编码后的向量序列。
可选地,向量序列包括问题的向量序列和候选答案的向量序列。电子设备基于问答模型的注意力机制对第一词向量序列中的每一个词向量进行交叉编码,得到问题的向量序列;且基于问答模型的注意力机制对第二词向量序列中的每一个词向量进行交叉编码,得到候选答案的向量序列。
可选地,电子设备调用问答模型对问题和候选答案拼接在一起形成的混合文档进行编码,示意性步骤如下:
1)电子设备将问题与候选答案进行拼接形成混合文档。
可选地,电子设备将问题拼接在候选答案的首部或者尾部,形成混合文档。比如,候选答案是多个答案拼接在一起形成的答案文档,该答案文档为“候选答案D候选答案H候选答案P候选答案A候选答案N”,将“问题Q”拼接在候选答案的首部,则形成混合文档“问题Q候选答案D候选答案H候选答案P候选答案A候选答案N”;将“问题Q”拼接在候选答案的尾部,则形成混合文档“候选答案D候选答案H候选答案P候选答案A候选答案N问题Q”。
2)电子设备通过问答模型对混合文档中的每一个分词进行交叉编码,得到向量序列。
可选的,问答模型中包括分词函数;电子设备通过问答模型中的分词函数对混合文档进行分词处理,得到分词序列。对混合文档的编码,首先,电子设备通过问答模型对混合文档的分词序列进行词嵌入,此过程可以参考上述对问题或者候选答案的词嵌入处理,在此不再加以赘述。经过对混合文档的分词序列的词嵌入,得到词向量序列,电子设备基于问答模型的注意力机制对词向量序列中每一个词向量进行交叉编码,得到向量序列。
可选地,问答模型中包括BERT模型;上述对问题和候选答案拼接在一起形成的混合文档进行编码的过程可以由BERT模型来实现。
步骤604,电子设备调用问答模型预测正确答案在向量序列中的位置。
电子设备调用问答模型预测正确答案对应的子向量序列在向量序列中的位置。可选地,上述位置包括正确答案的起始位置和终止位置,其中,正确答案的句子中第一个分词交叉编码后的词向量的位置即为上述起始位置,正确答案的句子中最后一个分词交叉编码后的词向量的位置即为上述终止位置。
示意性的,问答模型的输出层中包括归一化函数,归一化函数也就是softmax函数;电子设备调用问答模型中的softmax函数对向量序列中的每一个词向量进行概率计算,根据每一个词向量的概率值预测得到正确答案在向量序列中的位置。
需要说明的是,从正确答案的起始位置至终止位置对应的向量序列中的词向量形成一个子向量序列,即预测得到的正确答案经过交叉编码后的词向量序列。
步骤605,电子设备调用问答模型输出正确答案的位置对应的子向量序列。
可选地,电子设备调用问答模型将起始位置至终止位置对应的子向量序列进行输出。
步骤606,电子设备对输出的子向量序列进行解码得到正确答案。
可选地,电子设备中包括解码器;通过解码器对问答模型输出的子向量序列进行解码得到正确答案。
或者,问答模型中包括解码器;电子设备通过问答模型中的解码器对预测得到的子向量序列进行解码得到正确答案。
上述解码得到的正确答案是文本形式的正确答案;可选地,电子设备中包括显示器,通过显示器对文本形式的正确答案进行显示;或者,电子设备中包括扬声器,电子设备将文本形式的正确答案转换为语音形式的正确答案,通过扬声器播放语音形式的正确答案。
综上所述,本实施例提供的基于机器学习的问题答复方法,通过获取问题;获取候选答案,候选答案是由正确答案和错误答案拼接在一起形成的答案文档;调用问答模型对问题与候选答案进行编码,得到向量序列;预测正确答案在向量序列中的位置;输出位置对应的子向量序列;对输出的子向量序列进行解码得到正确答案。该方法通过对正确答案与错误答案的充分学习,得到正确答案与错误答案之间的相关性,从而对正确答案与错误答案更好的区别,得到准确的正确答案的预测结果。
请参考图10,示出了本申请一个示例性实施例提供的基于机器学习的问题答复装置的框图,该装置通过软件、硬件或者二者的结合实现成为终端或者服务器的部分或者全部,该装置包括:
获取模块701,用于获取问题;获取候选答案,候选答案是由正确答案和错误答案拼接在一起形成的答案文档;
调用模块702,用于调用问答模型对问题与候选答案进行编码,得到向量序列;预测正确答案在向量序列中的位置;输出正确答案的位置对应的子向量序列;
解码模块703,用于对输出的子向量序列进行解码得到正确答案。
在一些实施例中,调用模块702,包括:
词嵌入子模块7021,用于调用问答模型对问题进行词嵌入,得到问题的第一词向量序列;调用问答模型对候选答案进行词嵌入,得到候选答案的第二词向量序列;
编码子模块7022,用于调用问答模型对第一词向量序列和第二词向量序列中的每一个词向量进行交叉编码,得到编码后的向量序列。
在一些实施例中,词嵌入子模块7021,用于通过问答模型对候选答案中每一个分词进行表征,得到分词的字符向量;对候选答案中每一个分词所在句子进行表征,得到分词的段表征向量;对候选答案中每一个分词在所在句子中的位置进行表征,得到分词的位置表征向量;
词嵌入子模块7021,用于通过问答模型对候选答案中每一个分词的字符向量、段表征向量和位置表征向量相加,得到候选答案中每一个分词的第二词向量;通过问答模型对第二词向量进行排列得到第二词向量序列。
在一些实施例中,编码子模块7022,用于基于问答模型的注意力机制对第一词向量序列和第二词向量序列中的每一个词向量进行交叉编码,得到编码后的向量序列。
在一些实施例中,调用模块702,包括:
拼接子模块7023,用于将问题与候选答案进行拼接形成混合文档;
编码子模块7022,用于通过问答模型对混合文档中的每一个分词进行交叉编码,得到向量序列。
在一些实施例中,问答模型包括双向转换编码器BERT模型。
在一些实施例中,位置包括正确答案的起始位置和终止位置;
调用模块702,包括:
输出子模块7024,用于调用问答模型将起始位置至终止位置对应的子向量序列进行输出。
综上所述,本实施例提供的基于机器学习的问题答复装置,通过获取问题;获取候选答案,候选答案是由正确答案和错误答案拼接在一起形成的答案文档;调用问答模型对问题与候选答案进行编码,得到向量序列;预测正确答案在向量序列中的位置;输出位置对应的子向量序列;对输出的子向量序列进行解码得到正确答案。该装置通过对正确答案与错误答案的充分学习,得到正确答案与错误答案之间的相关性,从而对正确答案与错误答案更好的区别,得到准确的正确答案的预测结果。
请参考图11,示出了本申请一个示例性实施例提供的问答模型训练装置的框图,该装置通过软件、硬件或者二者的结合实现成为终端或者服务器的部分或者全部,该装置包括:
获取模块704,用于获取训练样本,每组训练样本包括问题样本、答案样本和标定位置;其中,答案样本是由正确答案样本和错误答案样本拼接在一起形成的答案文档;
编码模块705,用于通过问答模型对问题样本与答案样本进行编码,得到样本的向量序列;
预测模块706,用于通过问答模型预测正确答案样本在样本的向量序列中的位置,并确定正确答案样本的位置与标定位置之间的损失;
训练模块707,用于根据损失对问答模型中的模型参数进行调整,训练问答模型对正确答案样本的位置预测能力。
在一些实施例中,编码模块705,包括:
词嵌入子模块7051,用于通过问答模型对问题样本进行词嵌入,得到问题样本的词向量序列;通过问答模型对答案样本进行词嵌入,得到答案样本的词向量序列;
编码子模块7052,用于通过问答模型对问题样本的词向量序列和答案样本的词向量序列中的每一个词向量进行交叉编码,得到编码后的样本的向量序列。
在一些实施例中,答案样本中的至少两个答案的拼接顺序是随机的。
在一些实施例中,词嵌入子模块7051,用于通过问答模型对答案样本中每一个分词进行表征,得到样本分词的字符向量;对答案样本中每一个分词所在句子进行表征,得到样本分词的段表征向量;对答案样本中每一个分词在所在句子中的位置进行表征,得到样本分词的位置表征向量;
词嵌入子模块7051,用于通过问答模型对上述样本分词的字符向量、样本分词的段表征向量和样本分词的位置表征向量相加,得到答案样本中每一个分词的词向量;通过问答模型对答案样本的词向量进行排列得到答案样本的词向量序列。
在一些实施例中,编码子模块7052,用于基于问答模型的注意力机制对问题样本的词向量序列和答案样本的词向量序列中的每一个词向量进行交叉编码,得到编码后的样本的向量序列。
在一些实施例中,训练样本还包括问题样本与答案样本拼接在一起形成的混合样本文档;
编码子模块7052,用于通过问答模型对混合样本文档中的每一个分词进行交叉编码,得到样本的向量序列。
在一些实施例中,问答模型包括双向转换编码器BERT模型。
在一些实施例中,正确答案样本的位置包括正确答案样本的起始位置和终止位置。
综上所述,本实施例提供的问答模型训练装置,采用拼接在一起的答案样本对问答模型进行训练,通过问答模型对不同答案进行交叉编码得到样本的向量序列,预测出交叉编码后的样本的向量序列中正确答案样本的位置,训练问答模型的阅读理解能力,使该问答模型能够在多个答案中准确的找到正确答案;且上述答案样本中包括正确答案样本和错误答案样本,对不同答案进行交叉编码,使问答模型更充分的学习了正负样本的相关性,从而拥有更好的对不同答案的区别能力;还提高了问答模型的鲁棒性,也即问答模型对于正确答案预测的稳定性。
请参考图12,示出了本申请一个示例性实施例提供的终端800的结构框图。该终端800可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group AudioLayer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts GroupAudio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端800包括有:处理器801和存储器802。
处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例提供的基于机器学习的问题答复方法,以及问答模型训练方法。
在一些实施例中,终端800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、显示屏805、音频电路806、定位组件807和电源808中的至少一种。
外围设备接口803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置终端800的前面板;在另一些实施例中,显示屏805可以为至少一个,分别设置在终端800的不同表面或呈折叠设计;在一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
音频电路806可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路806还可以包括耳机插孔。
定位组件807用于定位终端800的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件807可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源808用于为终端800中的各个组件进行供电。电源808可以是交流电、直流电、一次性电池或可充电电池。当电源808包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
本领域技术人员可以理解,图12中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
请参考图13,示出了本申请一个实施例提供的服务器的结构示意图。该服务器用于实施上述实施例中提供的基于机器学习的问题答复方法,以及问答模型训练方法。具体来讲:
所述服务器900包括中央处理单元(CPU)901、包括随机存取存储器(RAM)902和只读存储器(ROM)903的系统存储器904,以及连接系统存储器904和中央处理单元901的系统总线905。所述服务器900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)906,和用于存储操作系统913、应用程序914和其他程序模块915的大容量存储设备907。
所述基本输入/输出系统906包括有用于显示信息的显示器908和用于用户输入信息的诸如鼠标、键盘之类的输入设备909。其中所述显示器908和输入设备909都通过连接到系统总线905的输入输出控制器910连接到中央处理单元901。所述基本输入/输出系统906还可以包括输入输出控制器910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器910还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备907通过连接到系统总线905的大容量存储控制器(未示出)连接到中央处理单元901。所述大容量存储设备907及其相关联的计算机可读介质为服务器900提供非易失性存储。也就是说,所述大容量存储设备907可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器904和大容量存储设备907可以统称为存储器。
根据本申请的各种实施例,所述服务器900还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器900可以通过连接在所述系统总线905上的网络接口单元911连接到网络912,或者说,也可以使用网络接口单元911来连接到其他类型的网络或远程计算机系统(未示出)。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种基于机器学习的问题答复方法,其特征在于,所述方法包括:
获取问题;
获取候选答案,所述候选答案是由正确答案和错误答案拼接在一起形成的答案文档;
调用问答模型对所述问题与所述候选答案进行编码,得到向量序列;预测所述正确答案在所述向量序列中的位置;输出所述正确答案的位置对应的子向量序列;
对输出的所述子向量序列进行解码得到所述正确答案。
2.根据权利要求1所述的方法,其特征在于,所述调用问答模型对所述问题与所述候选答案进行编码,得到向量序列,包括:
调用所述问答模型对所述问题进行词嵌入,得到所述问题的第一词向量序列;调用所述问答模型对所述候选答案进行词嵌入,得到所述候选答案的第二词向量序列;
调用所述问答模型对所述第一词向量序列和所述第二词向量序列中的每一个词向量进行交叉编码,得到编码后的所述向量序列。
3.根据权利要求2所述的方法,其特征在于,所述调用所述问答模型对所述候选答案进行词嵌入,得到所述候选答案的第二词向量序列,包括:
通过所述问答模型对所述候选答案中每一个分词进行表征,得到分词的字符向量;对所述候选答案中每一个分词所在句子进行表征,得到分词的段表征向量;对所述候选答案中每一个分词在所在句子中的位置进行表征,得到分词的位置表征向量;
通过所述问答模型对所述候选答案中每一个分词的所述字符向量、所述段表征向量和所述位置表征向量相加,得到所述候选答案中每一个分词的第二词向量;
通过所述问答模型对所述第二词向量进行排列得到所述第二词向量序列。
4.根据权利要求1所述的方法,其特征在于,所述调用问答模型对所述问题与所述候选答案进行编码,得到向量序列,包括:
将所述问题与所述候选答案进行拼接形成混合文档;
通过所述问答模型对所述混合文档中的每一个分词进行交叉编码,得到所述向量序列。
5.根据权利要求4所述的方法,其特征在于,所述问答模型包括双向转换编码器BERT模型。
6.根据权利要求1至5任一所述的方法,其特征在于,所述问答模型是通过如下方式训练得到的:
获取训练样本,每组训练样本包括问题样本、答案样本和标定位置;其中,所述答案样本是由正确答案样本和错误答案样本拼接在一起形成的答案文档;
通过所述问答模型对所述问题样本与所述答案样本进行编码,得到样本的向量序列;
通过所述问答模型预测所述正确答案样本在所述样本的向量序列中的位置,并确定所述正确答案样本的位置与所述标定位置之间的损失;
根据所述损失对所述问答模型中的模型参数进行调整,训练所述问答模型对所述正确答案样本的位置预测能力。
7.根据权利要求6所述的方法,其特征在于,所述通过所述问答模型对所述问题样本和所述答案样本进行编码,得到样本的向量序列,包括:
通过所述问答模型对所述问题样本进行词嵌入,得到所述问题样本的词向量序列;通过所述问答模型对所述答案样本进行词嵌入,得到所述答案样本的词向量序列;
通过所述问答模型对所述问题样本的词向量序列和所述答案样本的词向量序列中的每一个词向量进行交叉编码,得到编码后的所述样本的向量序列。
8.根据权利要求7所述的方法,其特征在于,所述答案样本中的至少两个答案的拼接顺序是随机的。
9.根据权利要求7所述的方法,其特征在于,所述通过所述问答模型对所述答案样本进行词嵌入,得到所述答案样本的词向量序列,包括:
通过所述问答模型对所述答案样本中每一个分词进行表征,得到样本分词的字符向量;对所述答案样本中每一个分词所在句子进行表征,得到样本分词的段表征向量;对所述答案样本中每一个分词在所在句子中的位置进行表征,得到样本分词的位置表征向量;
通过所述问答模型对所述样本分词的字符向量、所述样本分词的段表征向量和所述样本分词的位置表征向量相加,得到所述答案样本中每一个分词的词向量;
通过所述问答模型对所述答案样本的词向量进行排列得到所述答案样本的词向量序列。
10.根据权利要求6所述的方法,其特征在于,所述训练样本还包括所述问题样本与所述答案样本拼接在一起形成的混合样本文档;
所述通过问答模型对所述问题样本与所述答案样本进行编码,得到样本的向量序列,包括:
通过所述问答模型对所述混合样本文档中的每一个分词进行交叉编码,得到所述样本的向量序列。
11.一种问答模型训练方法,其特征在于,所述方法包括:
获取训练样本,每组训练样本包括问题样本、答案样本和标定位置;其中,所述答案样本是由正确答案样本和错误答案样本拼接在一起形成的答案文档;
通过所述问答模型对所述问题样本与所述答案样本进行编码,得到样本的向量序列;
通过所述问答模型预测所述正确答案样本在所述样本的向量序列中的位置,并确定所述正确答案样本的位置与所述标定位置之间的损失;
根据所述损失对所述问答模型中的模型参数进行调整,训练所述问答模型对所述正确答案样本的位置预测能力。
12.一种基于机器学习的问题答复装置,其特征在于,所述装置包括:
获取模块,用于获取问题;获取候选答案,所述候选答案是由正确答案和错误答案拼接在一起形成的答案文档;
调用模块,用于调用问答模型对所述问题与所述候选答案进行编码,得到向量序列;预测所述正确答案在所述向量序列中的位置;输出所述正确答案的位置对应的子向量序列;
解码模块,用于对输出的所述子向量序列进行解码得到所述正确答案。
13.一种问答模型训练装置,其特征在于,所述装置包括:
获取模块,用于获取训练样本,每组训练样本包括问题样本、答案样本和标定位置;其中,所述答案样本是由正确答案样本和错误答案样本拼接在一起形成的答案文档;
编码模块,用于通过所述问答模型对所述问题样本与所述答案样本进行编码,得到样本的向量序列;
预测模块,用于通过所述问答模型预测所述正确答案样本在所述样本的向量序列中的位置,并确定所述正确答案样本的位置与所述标定位置之间的损失;
训练模块,用于根据所述损失对所述问答模型中的模型参数进行调整,训练所述问答模型对所述正确答案样本的位置预测能力。
14.一种电子设备,所述电子设备包括:
存储器;
与所述存储器相连的处理器;
其中,所述处理器被配置为加载并执行可执行指令以实现如权利要求1至10任一所述的基于机器学习的问题答复方法,以及如权利要求11所述的问答模型训练方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集;所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由处理器加载并执行以实现如权利要求1至10任一所述的基于机器学习的问题答复方法,以及如权利要求11所述的问答模型训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910816075.XA CN110516059B (zh) | 2019-08-30 | 2019-08-30 | 基于机器学习的问题答复方法、问答模型训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910816075.XA CN110516059B (zh) | 2019-08-30 | 2019-08-30 | 基于机器学习的问题答复方法、问答模型训练方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110516059A CN110516059A (zh) | 2019-11-29 |
CN110516059B true CN110516059B (zh) | 2023-06-09 |
Family
ID=68629795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910816075.XA Active CN110516059B (zh) | 2019-08-30 | 2019-08-30 | 基于机器学习的问题答复方法、问答模型训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110516059B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111046158B (zh) * | 2019-12-13 | 2020-12-15 | 腾讯科技(深圳)有限公司 | 问答匹配方法及模型训练方法、装置、设备、存储介质 |
CN111078853B (zh) * | 2019-12-13 | 2023-05-02 | 上海智臻智能网络科技股份有限公司 | 问答模型的优化方法、装置、计算机设备和存储介质 |
CN111125335B (zh) | 2019-12-27 | 2021-04-06 | 北京百度网讯科技有限公司 | 问答处理方法、装置、电子设备和存储介质 |
CN111160568B (zh) * | 2019-12-27 | 2021-04-06 | 北京百度网讯科技有限公司 | 机器阅读理解模型训练方法、装置、电子设备和存储介质 |
CN111241304B (zh) * | 2020-01-16 | 2024-02-06 | 平安科技(深圳)有限公司 | 基于深度学习的答案生成方法、电子装置及可读存储介质 |
CN111309887B (zh) * | 2020-02-24 | 2023-04-14 | 支付宝(杭州)信息技术有限公司 | 一种训练文本关键内容提取模型的方法和系统 |
CN111428019B (zh) * | 2020-04-02 | 2023-07-28 | 出门问问信息科技有限公司 | 用于知识库问答的数据处理方法及设备 |
CN111737559B (zh) * | 2020-05-29 | 2024-05-31 | 北京百度网讯科技有限公司 | 资源排序方法、训练排序模型的方法及对应装置 |
CN111858879B (zh) * | 2020-06-18 | 2024-04-05 | 达观数据有限公司 | 一种基于机器阅读理解的问答方法及系统、存储介质、计算机设备 |
CN111783428B (zh) * | 2020-07-07 | 2024-01-23 | 杭州叙简科技股份有限公司 | 基于深度学习的应急管理类客观题自动生成系统 |
CN112749262B (zh) * | 2020-07-24 | 2023-11-10 | 腾讯科技(深圳)有限公司 | 基于人工智能的问答处理方法、装置、电子设备及存储介质 |
CN111897934B (zh) * | 2020-07-28 | 2024-03-29 | 腾讯科技(深圳)有限公司 | 问答对生成方法及装置 |
CN113779205B (zh) * | 2020-09-03 | 2024-05-24 | 北京沃东天骏信息技术有限公司 | 一种智能应答方法和装置 |
CN112115247B (zh) * | 2020-09-07 | 2023-10-10 | 中国人民大学 | 一种基于长短时记忆信息的个性化对话生成方法和系统 |
CN113010655B (zh) * | 2021-03-18 | 2022-12-16 | 华南理工大学 | 一种机器阅读理解的回答与干扰项生成方法、装置 |
CN113656570B (zh) * | 2021-08-25 | 2024-05-10 | 平安科技(深圳)有限公司 | 基于深度学习模型的视觉问答方法及装置、介质、设备 |
CN114297357B (zh) * | 2021-12-27 | 2022-08-19 | 北京中科闻歌科技股份有限公司 | 一种基于量子计算的问答模型构建方法、装置及电子设备 |
CN116737888B (zh) * | 2023-01-11 | 2024-05-17 | 北京百度网讯科技有限公司 | 对话生成模型的训练方法和答复文本的确定方法、装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8628331B1 (en) * | 2010-04-06 | 2014-01-14 | Beth Ann Wright | Learning model for competency based performance |
CN108595629A (zh) * | 2018-04-24 | 2018-09-28 | 北京慧闻科技发展有限公司 | 用于答案选择系统的数据处理方法及应用 |
CN108959396A (zh) * | 2018-06-04 | 2018-12-07 | 众安信息技术服务有限公司 | 机器阅读模型训练方法及装置、问答方法及装置 |
CN110059152A (zh) * | 2018-12-25 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 一种文本信息预测模型的训练方法、装置及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4650072B2 (ja) * | 2005-04-12 | 2011-03-16 | 富士ゼロックス株式会社 | 質問応答システム、およびデータ検索方法、並びにコンピュータ・プログラム |
US8346701B2 (en) * | 2009-01-23 | 2013-01-01 | Microsoft Corporation | Answer ranking in community question-answering sites |
US20170262529A1 (en) * | 2010-10-01 | 2017-09-14 | Google Inc. | Sponsor answers and user-approved, system-suggested links in a social search engine |
-
2019
- 2019-08-30 CN CN201910816075.XA patent/CN110516059B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8628331B1 (en) * | 2010-04-06 | 2014-01-14 | Beth Ann Wright | Learning model for competency based performance |
CN108595629A (zh) * | 2018-04-24 | 2018-09-28 | 北京慧闻科技发展有限公司 | 用于答案选择系统的数据处理方法及应用 |
CN108959396A (zh) * | 2018-06-04 | 2018-12-07 | 众安信息技术服务有限公司 | 机器阅读模型训练方法及装置、问答方法及装置 |
CN110059152A (zh) * | 2018-12-25 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 一种文本信息预测模型的训练方法、装置及设备 |
Non-Patent Citations (1)
Title |
---|
Read+ Verify: Machine Reading Comprehension with Unanswerable Questions;Minghao Hu等;arxiv;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110516059A (zh) | 2019-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110516059B (zh) | 基于机器学习的问题答复方法、问答模型训练方法及装置 | |
CN110457457B (zh) | 对话生成模型的训练方法、对话生成方法及装置 | |
WO2023125335A1 (zh) | 问答对生成的方法和电子设备 | |
CN110556127B (zh) | 语音识别结果的检测方法、装置、设备及介质 | |
CN111564152B (zh) | 语音转换方法、装置、电子设备及存储介质 | |
CN112069309B (zh) | 信息获取方法、装置、计算机设备及存储介质 | |
CN111414736B (zh) | 故事生成模型训练方法、装置、设备及存储介质 | |
CN108922531B (zh) | 槽位识别方法、装置、电子设备及存储介质 | |
CN110162604B (zh) | 语句生成方法、装置、设备及存储介质 | |
CN111602133B (zh) | 针对自然语言处理系统的词嵌入的压缩 | |
CN112052333B (zh) | 文本分类方法及装置、存储介质和电子设备 | |
US20150364127A1 (en) | Advanced recurrent neural network based letter-to-sound | |
WO2022253061A1 (zh) | 一种语音处理方法及相关设备 | |
CN111524501A (zh) | 语音播放方法、装置、计算机设备及计算机可读存储介质 | |
CN116863935B (zh) | 语音识别方法、装置、电子设备与计算机可读介质 | |
CN111324699A (zh) | 语义匹配的方法、装置、电子设备及存储介质 | |
US20240078385A1 (en) | Method and apparatus for generating text | |
CN110931000A (zh) | 语音识别的方法和装置 | |
KR20200080400A (ko) | 페르소나에 기반하여 문장을 제공하는 방법 및 이를 지원하는 전자 장치 | |
KR20190122457A (ko) | 음성 인식을 수행하는 전자 장치 및 전자 장치의 동작 방법 | |
CN110555102A (zh) | 媒体标题识别方法、装置及存储介质 | |
CN111950255B (zh) | 诗词生成方法、装置、设备及存储介质 | |
CN113763931B (zh) | 波形特征提取方法、装置、计算机设备及存储介质 | |
CN111414737B (zh) | 故事生成模型训练方法、装置、设备及存储介质 | |
CN110990549A (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 |