阅读任务处理方法、模型训练方法、装置和计算机设备与流程

文档序号:21037596发布日期:2020-06-09 20:30阅读:274来源:国知局
阅读任务处理方法、模型训练方法、装置和计算机设备与流程

本申请涉及人工智能技术领域,特别是涉及一种阅读任务处理方法、模型训练方法、装置和计算机设备。



背景技术:

随着人工智能技术不断发展,人工智能技术在多个领域展开研究和应用。而自然语言处理(naturelanguageprocessing,nlp)是人工智能技术中的一个重要方向,常常被应用于文本处理方向,如文本优化和机器阅读理解。

传统机器阅读理解的方案中,通常是将阅读文本和针对阅读文本设置对话类型的待对话文本(即提问的文本)一并输入至序列到序列(seq2seq)模型,然后得到对应的答复文本。然而,对于单轮次的对话而言,采用上述机器阅读理解的方案可以得到较为准确的答复文本,然而当出现基于阅读文本的多轮对话时,所得到的答复文本的准确性较低。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够提高多轮对话时答复文本的准确性的阅读任务处理方法、训练方法、装置和计算机设备。

一种阅读任务处理方法,所述方法包括:

获取阅读文本以及与所述阅读文本关联的待对话文本和历史对话文本;所述历史对话文本中包括至少一轮历史对话的文本;

计算所述待对话文本借鉴所述历史对话文本时对应的可借鉴指数;

根据所述待对话文本和所述可借鉴指数达到借鉴条件时所对应的历史对话文本,在所述阅读文本中确定关键信息;

根据提取的关键信息获得用于答复所述待对话文本的答复文本。

在一个实施例中,所述通过所述历史流关注模型的历史流模块对集成操作后的文本表示和所述可借鉴指数进行流操作包括:

对集成操作后的文本表示和所述可借鉴指数进行融合,得到融合向量;

将所述融合向量输入所述历史流关注模型的历史流模块;所述历史流模块包括循环神经网络;

通过所述循环神经网络对所述融合向量进行处理,输出所述阅读文本的文本表示。

在一个实施例中,所述基于所述第一语境表示和所述阅读文本的第三语境表示,计算所述待对话文本对所述阅读文本的文本表示包括:

通过以下计算式基于所述第一语境表示和所述阅读文本的第三语境表示,计算所述待对话文本对所述阅读文本的文本表示;

其中,i用于表示历史对话文本中的第i轮对话文本,j用于表示阅读文本中第j个词,k用于表示待对话文本中的第k个词,为注意力权重,均为待对话文本的第一语境表示,为阅读文本的第三语境表示,w为学习矩阵。

在一个实施例中,所述语言模型中的网络层具有不同的等级;所述方法还包括:

按照对应的等级为所述语言模型中的各网络层设置对应的学习率;其中,所述等级与所述学习率呈正相关关系。

在一个实施例中,所述根据提取的关键信息获得用于答复所述待对话文本的答复文本包括:

基于所述待对话文本中各分词的上下文信息,确定所述待对话文本中各分词对应的处理标记;

依据所述处理标记和所述关键信息修改所述待对话文本,得到答复文本。

一种阅读任务处理装置,所述装置包括:

获取单元,用于获取阅读文本以及与所述阅读文本关联的待对话文本和历史对话文本;

计算单元,用于计算所述待对话文本借鉴所述历史对话文本时对应的可借鉴指数;

确定单元,用于根据所述待对话文本和所述可借鉴指数达到借鉴条件时所对应的历史对话文本,在所述阅读文本中确定关键信息;

生成单元,用于根据提取的关键信息获得用于答复所述待对话文本的答复文本。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取阅读文本以及与所述阅读文本关联的待对话文本和历史对话文本;所述历史对话文本中包括至少一轮历史对话的文本;

计算所述待对话文本借鉴所述历史对话文本时对应的可借鉴指数;

根据所述待对话文本和所述可借鉴指数达到借鉴条件时所对应的历史对话文本,在所述阅读文本中确定关键信息;

根据提取的关键信息获得用于答复所述待对话文本的答复文本。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取阅读文本以及与所述阅读文本关联的待对话文本和历史对话文本;所述历史对话文本中包括至少一轮历史对话的文本;

计算所述待对话文本借鉴所述历史对话文本时对应的可借鉴指数;

根据所述待对话文本和所述可借鉴指数达到借鉴条件时所对应的历史对话文本,在所述阅读文本中确定关键信息;

根据提取的关键信息获得用于答复所述待对话文本的答复文本。

上述阅读任务处理方法、装置、计算机设备和存储介质,在处理阅读任务时,获取阅读文本以及与阅读文本关联的待对话文本和历史对话文本,计算待对话文本借鉴历史对话文本时对应的可借鉴指数,通过可借鉴指数高的历史对话文本与待对话文本一起从阅读文本中查找关键信息,利用该关键信息来获得用于答复待对话文本的答复文本,所得到的答复文本充分考虑了借鉴指数高的历史对话文本,使历史对话文本参与到当前的答复中,从而使答复文本更加准确。

一种机器学习模型训练方法,所述方法包括:

获取训练样本和对应的标签;所述训练样本包括阅读样本以及与所述阅读样本关联的待对话样本和历史对话样本;

通过机器学习模型的嵌入模块对所述训练样本进行特征提取,分别得到所述待对话样本的第一训练语境表示、所述历史对话样本的第二训练语境表示和所述阅读样本的第三训练语境表示;

通过所述机器学习模型的历史流关注模型对所述第一训练语境表示和所述第二训练语境表示进行处理,得到所述待对话样本借鉴所述历史对话样本时对应的可借鉴指数;所述可借鉴指数用于衡量所述待对话样本依赖所述历史对话样本的程度;

通过所述历史流关注模型对所述第一训练语境表示、所述第三训练语境表示和达到借鉴条件所对应的所述第二训练语境表示进行处理,获得所述阅读样本的训练关键信息;

计算所述训练关键信息与所述标签之间的损失值;

根据所述损失值调整所述嵌入模块的参数和所述历史流关注模型的参数,直至参数调整后所对应的损失值达到预设条件时停止训练。

一种机器学习模型训练装置,所述装置包括:

获取单元,用于获取训练样本和对应的标签;所述训练样本包括阅读样本以及与所述阅读样本关联的待对话样本和历史对话样本;

提取单元,用于通过机器学习模型的嵌入模块对所述训练样本进行特征提取,分别得到所述待对话样本的第一训练语境表示、所述历史对话样本的第二训练语境表示和所述阅读样本的第三训练语境表示;

第一处理单元,用于通过所述机器学习模型的历史流关注模型对所述第一训练语境表示和所述第二训练语境表示进行处理,得到所述待对话样本借鉴所述历史对话样本时对应的可借鉴指数;所述可借鉴指数用于衡量所述待对话样本依赖所述历史对话样本的程度;

第二处理单元,用于通过所述历史流关注模型对所述第一训练语境表示、所述第三训练语境表示和达到借鉴条件所对应的所述第二训练语境表示进行处理,获得所述阅读样本的训练关键信息;

计算单元,用于计算所述训练关键信息与所述标签之间的损失值;

调整单元,用于根据所述损失值调整所述嵌入模块的参数和所述历史流关注模型的参数,直至参数调整后所对应的损失值达到预设条件时停止训练。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取训练样本和对应的标签;所述训练样本包括阅读样本以及与所述阅读样本关联的待对话样本和历史对话样本;

通过机器学习模型的嵌入模块对所述训练样本进行特征提取,分别得到所述待对话样本的第一训练语境表示、所述历史对话样本的第二训练语境表示和所述阅读样本的第三训练语境表示;

通过所述机器学习模型的历史流关注模型对所述第一训练语境表示和所述第二训练语境表示进行处理,得到所述待对话样本借鉴所述历史对话样本时对应的可借鉴指数;所述可借鉴指数用于衡量所述待对话样本依赖所述历史对话样本的程度;

通过所述历史流关注模型对所述第一训练语境表示、所述第三训练语境表示和达到借鉴条件所对应的所述第二训练语境表示进行处理,获得所述阅读样本的训练关键信息;

计算所述训练关键信息与所述标签之间的损失值;

根据所述损失值调整所述嵌入模块的参数和所述历史流关注模型的参数,直至参数调整后所对应的损失值达到预设条件时停止训练。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取训练样本和对应的标签;所述训练样本包括阅读样本以及与所述阅读样本关联的待对话样本和历史对话样本;

通过机器学习模型的嵌入模块对所述训练样本进行特征提取,分别得到所述待对话样本的第一训练语境表示、所述历史对话样本的第二训练语境表示和所述阅读样本的第三训练语境表示;

通过所述机器学习模型的历史流关注模型对所述第一训练语境表示和所述第二训练语境表示进行处理,得到所述待对话样本借鉴所述历史对话样本时对应的可借鉴指数;所述可借鉴指数用于衡量所述待对话样本依赖所述历史对话样本的程度;

通过所述历史流关注模型对所述第一训练语境表示、所述第三训练语境表示和达到借鉴条件所对应的所述第二训练语境表示进行处理,获得所述阅读样本的训练关键信息;

计算所述训练关键信息与所述标签之间的损失值;

根据所述损失值调整所述嵌入模块的参数和所述历史流关注模型的参数,直至参数调整后所对应的损失值达到预设条件时停止训练。

上述模型训练方法、装置、计算机设备和存储介质,利用阅读样本以及与所述阅读样本关联的待对话样本和历史对话样本,对机器学习模型的嵌入模块和历史流关注模型进行训练,在训练过程中,利用训练关键信息与标签之间的损失值来调整嵌入模块的参数和历史流关注模型的参数。由于训练过程中利用了待对话样本借鉴历史对话样本时对应的可借鉴指数,从而训练后的机器学习模型可以学习到在答复待对话文本时如何借鉴历史对话文本,以提升机器学习模型在处理阅读任务时的答复准确率。

附图说明

图1为一个实施例中阅读任务处理方法的应用环境图;

图2为一个实施例中阅读任务处理方法的流程示意图;

图3为一个实施例中计算可借鉴指数的示意图;

图4为一个实施例中集成操作和流操作的示意图;

图5为另一个实施例中集成操作和流操作的示意图;

图6为一个实施例中注意力区域随不同对话轮次进行相应流动的示意图;

图7为一个实施例中通过机器学习模型进行阅读任务处理的示意图;

图8为一个实施例中阅读任务处理方法的应用场景示意图;

图9为一个实施例中模型训练方法的流程示意图;

图10为一个实施例中阅读任务处理装置的结构框图;

图11为另一个实施例中阅读任务处理装置的结构框图;

图12为一个实施例中模型训练装置的结构框图;

图13为一个实施例中计算机设备的内部结构图;

图14为另一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

人工智能(artificialintelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

其中,自然语言处理(naturelanguageprocessing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。

随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。

本申请实施例提供的方案涉及人工智能的自然语言处理等技术,具体通过如下实施例进行说明:

本申请提供的阅读任务处理方法,可以应用于如图1所示的应用环境中。其中,终端102与服务器104通过网络进行通信。阅读任务处理方法可应用于终端102或服务器104,当阅读任务处理方法应用于终端102时,终端102可从本地或服务器104获取阅读文本以及与阅读文本关联的待对话文本和历史对话文本;历史对话文本中包括至少一轮历史对话的文本;计算待对话文本借鉴历史对话文本时对应的可借鉴指数;根据待对话文本和可借鉴指数达到借鉴条件时所对应的历史对话文本,在阅读文本中确定关键信息;根据提取的关键信息获得用于答复待对话文本的答复文本。然后,终端102可以将答复文本进行显示。

当阅读任务处理方法应用于服务器104时,服务器104从本地或终端102获取阅读文本以及与阅读文本关联的待对话文本和历史对话文本;历史对话文本中包括至少一轮历史对话的文本;计算待对话文本借鉴历史对话文本时对应的可借鉴指数;根据待对话文本和可借鉴指数达到借鉴条件时所对应的历史对话文本,在阅读文本中确定关键信息;根据提取的关键信息获得用于答复待对话文本的答复文本。然后,服务器104可以将答复文本发送至终端102进行显示。

其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一个实施例中,如图2所示,图2为一个实施例中阅读任务处理方法的流程示意图,以该方法应用于图1中的终端102为例进行说明,包括以下步骤:

s202,获取阅读文本以及与阅读文本关联的待对话文本和历史对话文本;历史对话文本中包括至少一轮历史对话的文本。

其中,阅读文本可以是用于阅读的一篇或一段文章内容,该文章内容可以是各种领域的文章,如科技、体育、休闲娱乐、美食和文学等领域的文章。此外,该阅读文本也可以是具有实时性的资讯类文章,也可以是非实时性的文章。通过该阅读文本,可以用于设置一个或多个提问,提问的解答内容(也即答案)可以从该阅读文本中查找或推导出来。

对应的,待对话文本可以是由至少一句话或一段话构成的文本。具体地,该待对话文本是根据阅读文本中的内容所设置的、且当前需要进行答复但未答复的提问文本(也称问题文本),对应的答案可以在阅读文本中查找到,或者根据阅读文本进行推导出来。其中,该答案经过处理可以得到回复问题文本的答复文本,或者直接将该答案作为回复问题文本的答复文本。

历史对话文本可以指历史对话的文本,包括历史已进行答复的提问文本和对应的答复文本。例如,历史已进行答复的提问文本为“你今年多大了”,答复文本为“我今年18岁了”,上述的一问一答共同组成一段对话文本。需要说明的是,待对话文本是当前需要进行答复但未答复的提问文本。而历史对话文本中的提问文本是历史已进行答复的文本。

作为一个示例,阅读文本为:“有一天,rose带着她的狗狗去森林旅行,一进入树林时,rose和她的狗狗发现树林阴暗而寒冷,她有点害怕,想要回去,但他们还是继续往前走着...”。历史对话文本为:“这是一个关于什么的故事”,“这是一个关于rose和她狗狗的故事”。待对话文本为:“他们在干嘛”。

在一个实施例中,终端从本地的数据库或服务器获取阅读文本和对应的待对话文本。

在另一个实施例中,终端获取输入的任务指令,该任务指令中可以携带问题等级。终端从本地的数据库或服务器获取任务指令指定的阅读文本,并且获取与问题等级对应的待对话文本。其中,不同的问题等级,对应的待对话文本具有差异,问题等级越高,待对话文本所对应的难度系数越大。例如,针对不同年龄、学历或专业程度,为不同用户或选手设置不同难度的问题。

在一个实施例中,获得待对话文本的方法包括:待对话文本可以由人工设置,也可以由终端按照设定的规则并基于阅读文本的内容自动生成。

在一个实施例中,嵌入模块为语言模型;语言模型包括至少两个网络层;上述通过机器学习模型的嵌入模块对待对话文本进行编码,得到第一语境表示包括:通过各网络层对待对话文本进行编码,得到各网络层的输出结果;获取各网络层对应的权重值;利用所获取的权重值对相应网络层的输出结果进行加权以及求和,得到第一语境表示。

在一个实施例中,语言模型中的网络层具有不同的等级;该方法还包括:终端按照对应的等级为语言模型中的各网络层设置对应的学习率;其中,等级与学习率呈正相关关系。

s204,计算待对话文本借鉴历史对话文本时对应的可借鉴指数。

对于多轮对话,若要获得待对话文本的答复文本,可能会依赖于上一轮对话文本。对应的,可借鉴指数用于衡量待对话文本依赖历史对话文本的程度,即答复该待对话文本时,依赖历史对话文本的程度。举例来说,历史对话文本包括:对话文本1、对话文本2和对话文本3。待对话文本为当前需要答复的问题文本4,若问题文本4分别借鉴对话文本1、对话文本2和对话文本3时对应的可借鉴指数为10%、20%和80%,表示在答复问题文本4时,对话文本3的借鉴意义最大。

在一个实施例中,终端计算待对话文本和历史对话文本之间的相似度,将该相似度作为待对话文本借鉴历史对话文本时对应的可借鉴指数。

其中,上述相似度可以是语义相似度。语义相似度可以通过基于语义网络算法或基于字符串相关度算法进行计算。

在一个实施例中,s204具体可以包括:终端获取待对话文本的第一语境表示和历史对话文本第二语境表示;根据第一语境表示和第二语境表示,计算待对话文本和历史对话文本之间的相似度;将计算所得的相似度确定为对应的历史对话文本应用于待对话文本的可借鉴指数。

其中,第一语境表示可以指待对话文本在阅读文本中所表达的语义,该第一语境表示的表示形式可以是矩阵或向量。同理,第二语境表示可以指历史对话文本(包括历史对话中的问题文本和答复文本)在阅读文本中所表达的语义,该第二语境表示的表示形式可以是矩阵或向量。在后续实施例中,以语境表示为矩阵为例进行阐述。

在一个实施例中,终端计算待对话文本的第一语境表示,以及计算历史对话文本第二语境表示,然后计算待对话文本的第一语境表示与历史对话文本中各轮对话文本的第二语境表示之间的余弦相似度,然后将该余弦相似度作为待对话文本与历史对话文本中各轮对话文本之间的语义相似度。

对于两个语境表示之间的余弦相似度,可以将两个语境表示视为空间中的两条线段,都是从原点出发指向不同的方向,两条线段之间形成一个夹角。夹角大小不同,对应的两个语境表示所代表的文本之间相似度存在差异,具体如下:

1)若夹角为0度,表示方向相同,对应的两个语境表示所代表的文本完全相等。当处于夹角0~90度时,对应的两个语境表示所代表的文本相似,且角度越大,相似度越小。

2)若夹角为90度,意味着形成直角,表示方向完全不相似,对应的两个语境表示所代表的文本完全不相等。

3)若夹角为180度,意味着方向正好相反。

因此,终端可以通过夹角的大小,来判断两个语境表示之间的相似程度,夹角越小表示越相似。其中,余弦相似度的表达式可以是:

其中,为待对话文本的第一语境表示中的元素,为历史对话文本中各轮对话文本的第二语境表示中的元素。分别将待对话文本的第一语境表示中的元素和历史对话文本中各轮对话文本的第二语境表示中的元素带入上式,即可得到待对话文本的第一语境表示与历史对话文本中各轮对话文本的第二语境表示之间的余弦相似度。

在一个实施例中,上述获取待对话文本的第一语境表示和历史对话文本第二语境表示的步骤,具体可以包括:终端将待对话文本和历史对话文本输入机器学习模型;通过机器学习模型的嵌入模块对待对话文本进行编码,得到第一语境表示;以及,通过嵌入模块对各历史对话文本进行编码,得到第二语境表示。

在一个实施例中,上述获取待对话文本的第一语境表示和历史对话文本第二语境表示的步骤,具体可以包括:终端将阅读文本、待对话文本和历史对话文本输入机器学习模型;通过机器学习模型的嵌入模块结合阅读文本对待对话文本进行编码,得到第一语境表示;以及,通过嵌入模块结合阅读文本对各历史对话文本进行编码,得到第二语境表示。其中,第一语境表示包含待对话文本在阅读文本中的上下文信息。第二语境表示包含历史对话文本在阅读文本中的上下文信息。

实际应用中,嵌入模块可以是语言模型,具体可以是词向量生成模型,该词向量生成模型可以是通过多次训练得到的word2vec模型(即用来产生词向量的网络模型)。如此,word2vec模型可以将待对话文本和阅读文本中子文本的各分词转化为对应的词向量,而且所得的词向量保留原始的文本中每个分词的含义。

在一个实施例中,上述根据第一语境表示和第二语境表示,计算待对话文本和历史对话文本之间的相似度的步骤,具体可以包括:终端对第一语境表示中的各向量进行合并处理,得到用于表示待对话文本语义的第一语义向量;对第二语境表示中的各向量进行合并处理,得到用于表示历史对话文本语义的第二语义向量;计算第一语义向量与各第二语义向量之间的相似度;将计算所得的相似度作为待对话文本和历史对话文本的相似度。

其中,语义向量可以是单词、词组或短语被映射到实数的向量。对于两个语义向量之间的余弦相似度,可以将两个语义向量视为空间中的两条线段,都是从原点出发指向不同的方向,两条线段之间形成一个夹角。

在一个实施例中,第一语义向量由历史流关注模型的选择模块合并第一语境表示中的各向量所得;第二语义向量是由选择模块通过合并第二语境表示中的各向量所得;上述计算第一语义向量与各第二语义向量之间的相似度的步骤,具体可以包括:终端通过选择模块计算第一语义向量与各第二语义向量之间的相似度。

其中,上述选择模块可称为历史选择(historyselection)模块,用于计算历史对话文本对答复待对话文本时的影响,即答复待对话文本时依赖历史对话文本的程度值。上述合并可以指计算平均值或期望的过程。例如合并第一语境表示中的各向量可以指计算第一语境表示中的各向量的平均值,从而得到第一语义向量。

具体地,终端机器学习模型中的选择模块计算第一语境表示的平均值,得到可以表达整个待对话文本的第一语义向量;以及,终端通过机器学习模型中的选择模块计算第二语境表示的平均值,得到可以表达整个历史对话文本的第二语义向量。然后,终端计算第一语义向量和第二语义向量之间的相似度,从而得到待对话文本借鉴历史对话文本时对应的可借鉴指数。

作为一个示例,如图3所示,图3为historyselection模块的示意图,对于待对话文本和历史对话文本,获取待对话文本的第一语境表示,获取历史对话文本的第二语境表示,然后对第一语境表示求平均值,得到待对话文本的第一语义向量;以及,对第二语境表示求平均值,得到历史对话文本的第二语义向量。然后,对待对话文本的第一语义向量和历史对话文本的第二语义向量做一步注意力(attention)操作,得到待对话文本与历史对话文本中各轮对话文本之间的相似度,即对话文本借鉴历史对话文本中各轮对话文本时对应的可借鉴指数

s206,根据待对话文本和可借鉴指数达到借鉴条件时所对应的历史对话文本,在阅读文本中确定关键信息。

其中,借鉴条件可以是预设阈值或预设排名。关键信息可以是待对话文本的答案信息在阅读文本出现的位置(包括开始位置和结束位置),如在阅读文本的第xx段y1行至第y2行;此外,该关键信息还可以是待对话文本的答案信息,如“本文主人公rose多大年纪了”,阅读文本中出现了关于rose年龄的词,如“20岁”,则关于年龄词“20岁”即为关键信息。

在一个实施例中,待对话文本为当前轮的问题文本;s206具体可以包括:终端基于第一语境表示和阅读文本的第三语境表示,计算待对话文本对阅读文本的文本表示;对文本表示进行集成操作;通过历史流关注模型的历史流模块对集成操作后的文本表示和可借鉴指数进行流操作,得到阅读文本的答复文本表示;答复文本表示包含有待对话文本的查询信息和历史对话文本在阅读文本的注意力区域;根据查询信息和可借鉴指数达到借鉴条件所对应的注意力区域,在阅读文本中确定关键信息。

其中,上述历史对话文本在阅读文本的注意力区域可以是:历史对话文本中问题文本的答案信息在阅读文本出现的位置。上述第三语境表示可以指阅读文本相对待对话文本所表达的语义,该待对话文本的表示形式可以是矩阵或向量。集成操作可以是自注意力(self-attention)操作,对应图4灰色框内的箭头。流操作可以指沿着对话进程(如每一轮的对话轮次)构建信息流,对应图4白色框的箭头。终端可以通过历史流模块执行流操作,该历史流模块包括循环神经网络。循环神经网络可以是单向rnn(recurrentneuralnetwork,循环神经网络)、或gru(gatedrecurrentunit,门控循环单元)、或单向transformer网络。

作为一个示例,对于待处理的第i个问题文本(即待对话文本)、历史对话文本(即历史各轮对话的问题文本和对应的答复文本)和阅读文本,将第i个问题文本和阅读文本通过嵌入模块(该嵌入模块可以是语言模型)获得各自对应的语境表示(即第一语境表示、第二语境表示和第三语境表示)。接下来,将这些语境表示通过历史流(historyflow)模块(如图5所示)来建模当前待处理的第i个问题文本和历史对话文本之间的交互,获得并更新由历史对话文本传递过来的知识(该知识即为模型在阅读文本上的注意力区域)。

如图5所示,首先将第i个问题文本(i-thques)的语境表示与阅读文本(context)的语境表示进行一步attention操作,得到一个更新的文本表示接下来会经过2次相同的集成-流操作,该集成-流操作如图4所示。其中,集成-流操作包括集成操作和流操作。

集成操作是指对做一步self-attention操作,对应图4中的灰色框中的箭头;流操作的输入是。其中是指第i到第0轮问题文本的语境表示;可借鉴指数={},指的是第i轮问题文本分别与第i-1到第0轮对话文本的可借鉴指数,如的值越高,那么第i轮问题文本就越有可能借鉴第2轮对话文本中的知识。其中,可借鉴指数由historyselection模块生成。流操作对应图4中的白色框中的箭头,是在对话轮次方向上的一个单向gru,具体地,阅读文本中的每个词j,在每轮对话中都会有一个独特的向量表示,而且会有一个对应于第i轮问题文本的可借鉴指数。例如当前处于第i轮对话时,对于阅读文本中的某个词j,它会有i+1个向量表示,将这些向量表示通过单向的gru,即刻将历史对话文本的知识传递到当前轮(即第i轮)问题文本中。

在一个实施例中,上述基于第一语境表示和阅读文本的第三语境表示,计算待对话文本对阅读文本的文本表示的步骤,具体可以包括:终端通过以下计算式基于第一语境表示和阅读文本的第三语境表示,计算待对话文本对阅读文本的文本表示;

其中,i用于表示历史对话文本中的第i轮对话文本,j用于表示阅读文本中第j个词,k用于表示待对话文本中的第k个词,为注意力权重,均为待对话文本的第一语境表示,为阅读文本的第三语境表示,w为学习矩阵。

在一个实施例中,文本表示包括阅读文本中各词对待对话文本的表示向量;对文本表示进行集成操作包括:终端将各表示向量分别输入机器学习模型中的编解码模型;编解码模型包括编码层和解码层;编解码模型是基于自注意力机制的模型;利用编码层对相应的表示向量进行编码,得到对应的编码向量;通过解码层对编码向量进行解码,得到集成操作后的文本表示。

在一个实施例中,上述通过历史流关注模型的历史流模块对集成操作后的文本表示和可借鉴指数进行流操作包括:终端对集成操作后的文本表示和可借鉴指数进行融合,得到融合向量;将融合向量输入所述历史流关注模型的历史流模块,该历史流模块包括循环神经网络;通过循环神经网络对融合向量进行处理,输出阅读文本的文本表示。

在一个实施例中,上述对集成操作后的文本表示和可借鉴指数进行融合的步骤,具体可以包括:终端将集成操作后的文本表示与对应的可借鉴指数进行相乘,从而得到融合向量。

例如,如图3所示,该historyselection模块的输入是当前轮的问题文本和历史对话文本(包括历史轮次的问题文本和答复文本)的语境表示。首先将输入的语境表示merge(取平均)为一个可以表达各自文本含义的语义向量,然后让当前问题文本对应的语义向量与各个历史对话文本的语义向量做一步attention操作,获得相似度{},该相似度{}即为可借鉴指数。

historyflow模块的最终输出是阅读文本的答复文本表示,这个答复文本表示已经蕴含了当前轮次问题文本的查询信息,以及从历史对话文本中传递过来的知识信息,该知识信息可以是模型在阅读文本上的注意力区域,由于答复某一个问题文本时往往并不需要通览全文,只需要关注阅读文本中的某个部分即可,那么随着各轮对话的进行,这个关注点(即注意力区域)会不断的“流动”,如图6所示。最后,让这个阅读文本的答复文本表示通过一个预测层(predictionlayer)得到答案开始位置和结束位置的预测结果。其中,预测层可以是经典的指针网络(pointernetwork)。

在一个实施例中,终端从历史对话文本中选取可借鉴指数达到预设阈值的目标对话文本;或者,按照可借鉴指数对历史对话文本中的各轮对话文本进行排序,并将排序名次达到预设名次的对应轮对话文本作为目标对话文本。s206具体可以包括:终端根据待对话文本和目标对话文本,在阅读文本中确定关键信息。

作为一个示例,如图7所示,该机器学习模型是由语言模型(即上述的嵌入模块)和历史流关注模型组成;其中,历史流关注模型由选择模块(即历史选择模块)、历史流模块和预测层构成。阅读文本、当前轮的问题文本(即待对话文本)以及历史对话文本(即历史对话轮的问题文本和对应的答复文本)先经过语言模型,分别得到阅读文本对应的语境表示、当前待处理的问题文本对应的语境表示和历史对话文本的语境表示。然后,通过历史选择模块建模当前问题文本和历史对话文本的交互,该历史选择模块的输出是一串可借鉴指数,表示某个历史对话文本对当前轮的问题文本的可借鉴价值。随后,通过历史流模块建模当前轮的问题文本和阅读文本之间的交互,得到阅读文本的答复文本表示,并更新随着每轮对话传递过来的知识。最后,让这个阅读文本的答复文本表示通过一个预测层(该预测层可以是经典的pointernetwork),从而得到对答案开始位置和结束位置的预测结果,从而得到对应的答案。

在一个实施例中,终端获取训练样本,该训练样本包括用于训练的阅读样本以及与阅读样本关联的待对话样本和历史对话样本,然后利用该训练样本对机器学习模型进行训练。

其中,该机器学习模型是由语言模型(即上述的嵌入模块)和ahf(attentivehistoryflow,历史流关注)模型组成,而ahf模型包括历史选择模块、历史流模块和预测层。

在训练时,可以先对机器学习模型中的历史选择模块、历史流模块和预测层进行训练,然后再结合嵌入模块一起进行训练。

在训练过程中,使用的方法以语言模型微调(finetune)方法为基础,即在训练机器学习模型时,把语言模型和ahf模型一起加载到计算图中进行学习,针对此过程,提出了4种创新的训练技巧:

1)不是仅使用语言模型的最后一层的输出作为词嵌入,而是使用语言模型中每一层的输出,并给每一层设置一个可学习的权重,最后的词嵌入是每一层输出的加权和;

2)考虑到语言模型每一层蕴含的知识的级别不同,越低的层往往蕴含越低级的信息,更高的层学到的知识通常和具体任务比较相关,因此,给每个层赋予了不同的学习率,低层的学习率较低,高层的学习率较高,学习率与模型层数呈线性关系;

3)机器学习模型中,ahf模型的最优学习率和语言模型的最优学习率相差两三个数量级,通过实验发现,若让ahf模型和语言模型同时梯度下降,这样获得的效果不如先把ahf模型单独训练,训练到一定程度后(损失值下降速度明显变缓),再将ahf模型和语言模型一起更新参数;

4)由于语言模型预训练时用到的数据量远远高于finetune具体任务时的数据量,若把语言模型拿来finetune,语言模型会忘记很多它在预训练时学习到的知识(即灾难遗忘)。因此先让语言模型采用与目标任务相关的大量训练样本(比如wiki数据,该wiki数据可以通过爬虫爬取)进行粗调,然后再在目标任务上finetune(微调)。

此外,在训练过程中,终端还可以针对多轮对话的数据进行增强处理,具体方式为:

a)单轮变多轮

单轮阅读理解的样本数量明显多于多轮的,因此可以把单轮的训练样本转变成多轮来使用。虽然这样做获得的多轮训练样本,每轮的历史对话样本之间没有关系,但依然可以训练机器学习模型准确生成可借鉴指数的能力,即在答复当前的问题文本时,可以判断历史对话样本是否有借鉴意义。

b)打乱历史对话样本的顺序

对话往往是循序渐进的,当历史对话样本次序被打乱之后,相当于给模型新增了一个句子排序任务,有利于锻炼模型的性能。

s208,根据提取的关键信息获得用于答复待对话文本的答复文本。

在一个实施例中,s208具体可以包括:终端基于待对话文本中各分词的上下文信息,确定待对话文本中各分词对应的处理标记;依据处理标记和关键信息修改待对话文本,得到答复文本。

在一个实施例中,终端基于待对话文本中各分词的上下文信息,确定待对话文本中各分词对应的处理标记。

其中,上下文信息可以是待对话文本中各分词在待对话文本中所表达的语义。处理标记可以是对分词进行相应文字编辑的标记,如插入(insert,i)、替换(substitute,s)、删除(delete,d)和保留(keep,k)等处理的标记。因此,在利用关键信息对待对话文本进行处理时,不同的处理标记对应不同的处理方式。

在一个实施例中,终端可以将待对话文本输入标注模型,以使该标注模型基于各分词在待对话文本中的上下文信息,为待对话文本中的各分词标注上对应的处理标记。

其中,标注模型可以是自然语言处理中的标记模型,如命名体识别模型等。实际应用中,标注模型可以是crf(conditionalrandomfields,条件随机场)单模型或是由各种神经网络单元组合的网络模型。该标注模型可以是一个独立的网络模型,也可以属于由多个子模型构建的机器学习模型(即为该机器学习模型中的一个子模型)。

例如,终端将待对话文本“本文主人公rose是否成年,今年多大年纪了”输入至标注模型后,通过标注模型进行数据处理,确定各个分词对应的处理标记,即分词“本文”对应删除标记“d”;分词“主人公”对应删除标记“d”;分词“rose”对应删除标记“d”;分词“是否成年”对应替换标记“s”;分词“今年”对应插入标记“i”;分词“多大年纪”和“是否成年了”均对应替换标记“s”;分词“了”对应保留标记“k”。

在一个实施例中,终端获取待对话文本中各分词对应的词向量;对各分词对应的词向量进行编码,得到对应的编码向量;编码向量包含分词在待对话文本中的上下文信息;根据编码向量,确定对应分词的处理标记。

在一个实施例中,终端可以通过词向量生成模型对待对话文本中的分词进行向量化处理,得到待对话文本中的各分词的词向量。

在一个实施例中,对各分词对应的词向量进行编码,得到对应的编码向量的步骤,具体可以包括:终端将各分词对应的词向量分别输入至标注模型;通过标注模型的编码层对输入的词向量进行编码,得到对应的编码向量。

其中,标注模型包含有编码层和分类层。

在一个实施例中,根据编码向量,确定对应分词的处理标记的步骤,具体可以包括:终端通过标注模型的分类层对编码向量进行分类,得到各分词对应的分类结果;根据各分类结果生成对应的处理标记。

在一个实施例中,终端可以将关键信息和待对话文本输入标注模型,以使该标注模型通过基于各分词在待对话文本中的上下文信息,以及关键信息与待对话文本的各分词之间的关系,为待对话文本中的各分词标注上对应的处理标记。

在一个实施例中,终端将处理标记和关键信息对待对话文本进行修改,得到答复待对话文本的答复文本。其中,终端可以是对待对话文本中的分词进行删除、替换、保留和插入操作,可以得到答复文本。

例如,假设关键信息为“20岁”,待对话文本为“本文主人公rose是否成年,今年多大年纪了”,终端将记为删除标记“d”的分词“本文”、“主人公”和“rose”进行删除,将记为替换标记“s”的词语“是否成年”和“多大年纪”分别替换为词语“是的”和“20岁”;将记为插入标记的“今年”之前插入“她”,从而可以得到答复文本“是的,她今年20岁了”。

为了便于本领域技术人员的理解,如图8所示,图8为一个实施例中阅读任务处理方法的应用场景示意图,具体过程如下所述:假设阅读文本为“有一天,rose带着她的狗狗去森林旅行,一进入树林时,rose和她的狗狗发现树林阴暗而寒冷,她有点害怕,想要回去,但他们还是继续往前走着”,当前轮的问题文本(即待对话文本)为“在哪里”,历史对话文本为:历史对话轮1的问题文本和答复文本分别为“这是一个关于什么的故事”、“rose和她的狗狗的故事”,历史对话轮2的问题文本和答复文本分别为“他们在做什么”、“在旅行”。结合图7和图8,将当前轮的问题文本、历史对话文本和阅读文本一并输入机器学习模型中,通过机器学习模型中的语言模型获得当前轮的问题文本对应的第一语境表示、历史对话文本对应的第二语境表示以及阅读文本的第三语境表示。然后,将语言模型输出的第一语境表示和第二语境表示作为historyselection模块的输入,通过historyselection模块计算待对话文本借鉴历史对话文本时对应的可借鉴指数。接着,将第一语境表示、第二语境表示、第三语境表示和可借鉴指数输入historyflow模块,historyflow模块输出阅读文本的答复文本表示,该答复文本表示包含有待对话文本的查询信息和历史对话文本在所述阅读文本的注意力区域。最后,将这个阅读文本的答复文本表示通过一个predictionlayer(该predictionlayer可以是经典的pointernetwork)得到对答案开始位置和结束位置的预测结果,从而得到对应的答复文本“森林”。可以看出,在答复当前轮的问题“在哪里”时,借鉴了历史对话轮2的内容“他们在做什么”、“在旅行”。

上述实施例中,在处理阅读任务时,获取阅读文本以及与阅读文本关联的待对话文本和历史对话文本,计算待对话文本借鉴历史对话文本时对应的可借鉴指数,通过可借鉴指数高的历史对话文本与待对话文本一起从阅读文本中查找关键信息,利用该关键信息来获得用于答复待对话文本的答复文本,所得到的答复文本充分考虑了借鉴指数高的历史对话文本,使历史对话文本参与到当前的答复中,从而使答复文本更加准确。

在一个实施例中,如图9所示,图9为一个实施例中模型训练方法的流程示意图,本实施例中的机器学习模型包括嵌入模块和历史流关注模型;其中,该方法可应用于图1中的终端102或服务器104;以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:

s902,获取训练样本和对应的标签;训练样本包括阅读样本以及与阅读样本关联的待对话样本和历史对话样本。

其中,阅读样本是指用于对机器学习模型进行训练的阅读文本,该阅读样本可以是用于阅读的一篇或一段文章内容,该文章内容可以是各种领域的文章,如科技、体育、休闲娱乐、美食和文学等领域的文章。此外,该阅读样本也可以是具有实时性的资讯类文章,也可以是非实时性的文章。通过该阅读样本,可以用于设置提问,提问的解答内容可以从该阅读样本中查找或推导出来。

对应的,待对话样本是指对机器学习模型进行训练的待对话文本,可以是由至少一句话或一段话构成的文本。具体地,该待对话样本是根据阅读样本中的内容所设置的、且当前需要进行答复但未答复的提问文本(也称问题文本),对应的答案可以在阅读样本中查找到,或者根据阅读样本进行推导出来。其中,该答案经过处理可以得到回复问题文本的答复文本,或者直接将该答案作为回复问题文本的答复文本。

历史对话样本可以指用于对机器学习模型进行训练的历史对话的文本,包括历史已进行答复的提问文本和对应的答复文本。例如,历史已进行答复的提问文本为“你今年多大了”,答复文本为“我今年18岁了”,上述的一问一答共同组成历史对话样本。需要说明的是,待对话样本是当前需要进行答复但未答复的提问文本。而历史对话样本中的提问文本是历史已进行答复的文本。

作为一个示例,阅读样本为:“有一天,rose带着她的狗狗去森林旅行,一进入树林时,rose和她的狗狗发现树林阴暗而寒冷,她有点害怕,想要回去,但他们还是继续往前走着...”。历史对话样本为:“这是一个关于什么的故事”,“这是一个关于rose和她狗狗的故事”。待对话样本为:“他们在干嘛”。

在一个实施例中,服务器从本地的数据库或服务器获取阅读样本和对应的待对话样本。

在另一个实施例中,服务器获取输入的任务指令,该任务指令中可以携带问题等级。服务器从本地的数据库或服务器获取任务指令指定的阅读样本,并且获取与问题等级对应的待对话样本。其中,不同的问题等级,对应的待对话样本具有差异,问题等级越高,待对话样本所对应的难度系数越大。例如,针对不同年龄、学历或专业程度,为不同用户或选手设置不同难度的问题。

在一个实施例中,获得待对话样本的方法包括:待对话样本可以由人工设置,也可以由服务器按照设定的规则并基于阅读样本的内容自动生成。

s904,通过机器学习模型的嵌入模块对训练样本进行特征提取,分别得到待对话样本的第一训练语境表示、历史对话样本的第二训练语境表示和阅读样本的第三训练语境表示。

其中,第一训练语境表示可以指待对话样本在阅读样本中所表达的语义,该第一训练语境表示的表示形式可以是矩阵或向量。同理,第二训练语境表示可以指历史对话样本(包括历史对话中的问题文本和答复文本)在阅读样本中所表达的语义,该第二训练语境表示的表示形式可以是矩阵或向量。第三训练语境表示可以指阅读样本所表达的语义,该第三训练语境表示的表示形式可以是矩阵或向量。在后续实施例中,以训练语境表示为矩阵为例进行阐述。

在一个实施例中,嵌入模块包括语言模型;通过语言模型的各网络层分别对待对话样本、历史对话样本和进行编码阅读样本,得到各网络层对应的输出结果;获取各网络层对应的权重值;利用所获取的权重值对相应网络层的输出结果进行加权以及求和,得到第一训练语境表示、第二训练语境表示和第三训练语境表示。

s906,通过机器学习模型的历史流关注模型对第一训练语境表示和第二训练语境表示进行处理,得到待对话样本借鉴历史对话样本时对应的可借鉴指数;可借鉴指数用于衡量待对话样本依赖历史对话样本的程度。

其中,历史流关注模型包括选择模块、历史流模块和预测层。

对于多轮对话,若要获得待对话样本的答复文本,可能会依赖于上一轮对话文本。对应的,可借鉴指数用于衡量待对话样本依赖历史对话样本的程度,即答复该待对话样本时,依赖历史对话样本的程度。举例来说,历史对话样本包括:对话文本1、对话文本2和对话文本3。待对话样本为当前需要答复的问题文本4,若问题文本4分别借鉴对话文本1、对话文本2和对话文本3时对应的可借鉴指数为10%、20%和80%,表示在答复问题文本4时,对话文本3的借鉴意义最大。

在一个实施例中,语言模型中的网络层具有不同的等级;该方法还包括:服务器按照对应的等级为语言模型中的各网络层设置对应的学习率;其中,等级与学习率呈正相关关系。

在一个实施例中,服务器计算待对话样本和历史对话样本之间的相似度,将该相似度作为待对话样本借鉴历史对话样本时对应的可借鉴指数。

其中,上述相似度可以是语义相似度。语义相似度可以通过基于语义网络算法或基于字符串相关度算法进行计算。

在一个实施例中,s906具体可以包括:服务器获取待对话样本的第一训练语境表示和历史对话样本第二训练语境表示;通过历史流关注模型的选择模块对第一训练语境表示和第二训练语境表示进行相似度计算,得到待对话样本和历史对话样本之间的相似度;将计算所得的相似度确定为对应的历史对话样本应用于待对话样本的可借鉴指数。

在一个实施例中,服务器计算待对话样本的第一训练语境表示,以及计算历史对话样本第二训练语境表示,然后计算待对话样本的第一训练语境表示与历史对话样本中各轮对话文本的第二训练语境表示之间的余弦相似度,然后将该余弦相似度作为待对话样本与历史对话样本中各轮对话文本之间的语义相似度。

s908,通过历史流关注模型对第一训练语境表示、第三训练语境表示和达到借鉴条件所对应的第二训练语境表示进行处理,获得阅读样本的训练关键信息。

其中,借鉴条件可以是预设阈值或预设排名。训练关键信息可以是待对话样本的答案信息在阅读样本出现的位置(包括开始位置和结束位置),如在阅读样本的第xx段y1行至第y2行;此外,该训练关键信息还可以是待对话样本的答案信息,如“本文主人公rose多大年纪了”,阅读样本中出现了关于rose年龄的词,如“20岁”,则关于年龄词“20岁”即为训练关键信息。

在一个实施例中,待对话样本为当前轮的问题样本;s908具体可以包括:服务器基于第一训练语境表示和阅读样本的第三训练语境表示,计算待对话样本对阅读样本的样本表示;对样本表示进行集成操作;通过历史流关注模型的历史流模块对集成操作后的样本表示和可借鉴指数进行流操作,得到阅读样本的答复样本表示;答复样本表示包含有待对话样本的查询信息和历史对话样本在阅读样本的注意力区域;通过历史流关注模型的预测层根据查询信息和可借鉴指数达到借鉴条件所对应的注意力区域,在阅读样本中确定训练关键信息。

其中,集成操作可以是自注意力(self-attention)操作,对应图4灰色框内的箭头。流操作可以指沿着对话进程(如每一轮的对话轮次)构建信息流,对应图4白色框的箭头。

s910,计算训练关键信息与标签之间的损失值。

在一个实施例中,服务器可以采用均方误差损失函数计算训练关键信息与标签之间的损失值。此外,还可以采用其它损失函数计算训练关键信息与标签之间的损失值。

s912,根据损失值调整嵌入模块的参数和历史流关注模型的参数,直至参数调整后所对应的损失值达到预设条件时停止训练。

在一个实施例中,服务器在计算出训练关键信息与标签之间的损失值时,将该损失值反向传播到机器学习模型的嵌入模块和历史流关注模型,获得对于嵌入模块和历史流关注模型中各参数的梯度;根据该梯度调整嵌入模块的参数和历史流关注模型的参数,直至参数调整后所对应的损失值达到预设条件时停止训练。例如,对嵌入模块和历史流关注模型进行参数调整后,继续利用训练样本进行训练,得到嵌入模块和历史流关注模型在参数调整后所对应的损失值,若该损失值趋近于零,则停止训练。

上述实施例中,利用阅读样本以及与所述阅读样本关联的待对话样本和历史对话样本,对机器学习模型的嵌入模块和历史流关注模型进行训练,在训练过程中,利用训练关键信息与标签之间的损失值来调整嵌入模块的参数和历史流关注模型的参数。由于训练过程中利用了待对话样本借鉴历史对话样本时对应的可借鉴指数,从而训练后的机器学习模型可以学习到在答复待对话文本时如何借鉴历史对话文本,以提升机器学习模型在处理阅读任务时的答复准确率。

在一个实施例中,嵌入模块包括语言模型;根据损失值调整嵌入模块的参数和历史流关注模型的参数包括:服务器根据损失值调整历史流关注模型的参数;当通过调整参数后的历史流关注模型所确定的训练关键信息与标签之间的损失值达到预设阈值时,则利用达到预设阈值的损失值调整语言模型的参数。

在训练时,可以先对机器学习模型中的历史流关注模型(即ahf模型)进行训练,即对历史选择模块、历史流模块和预测层进行训练,然后再结合语言模块一起进行训练。

在训练过程中,使用的方法以语言模型微调(finetune)方法为基础,即在训练机器学习模型时,把语言模型和ahf模型一起加载到计算图中进行学习,针对此过程,提出了4种创新的训练技巧:

1)不是仅使用语言模型的最后一层的输出作为词嵌入,而是使用语言模型中每一层的输出,并给每一层设置一个可学习的权重,最后的词嵌入是每一层输出的加权和;

2)考虑到语言模型每一层蕴含的知识的级别不同,越低的层往往蕴含越低级的信息,更高的层学到的知识通常和具体任务比较相关,因此,给每个层赋予了不同的学习率,低层的学习率较低,高层的学习率较高,学习率与模型层数呈线性关系;

3)机器学习模型中,ahf模型的最优学习率和语言模型的最优学习率相差两三个数量级,通过实验发现,若让ahf模型和语言模型同时梯度下降,这样获得的效果不如先把ahf模型单独训练,训练到一定程度后(损失值下降速度明显变缓),再将ahf模型和语言模型一起更新参数;

4)由于语言模型预训练时用到的数据量远远高于finetune具体任务时的数据量,若把语言模型拿来finetune,语言模型会忘记很多它在预训练时学习到的知识(即灾难遗忘)。因此先让语言模型采用与目标任务相关的大量训练样本(比如wiki数据,该wiki数据可以通过爬虫爬取)进行粗调,然后再在目标任务上finetune。

此外,在训练过程中,服务器还可以针对多轮对话的数据进行增强处理,具体方式为:

a)单轮变多轮

单轮阅读理解的样本数量明显多于多轮的,因此可以把单轮的训练样本转变成多轮来使用。虽然这样做获得的多轮训练样本,每轮的历史对话样本之间没有关系,但依然可以训练机器学习模型准确生成可借鉴指数的能力,即在答复当前的问题文本时,可以判断历史对话样本是否有借鉴意义。

b)打乱历史对话样本的顺序

对话往往是循序渐进的,当历史对话样本次序被打乱之后,相当于给模型新增了一个句子排序任务,有利于锻炼模型的性能。

上述实施例中,先对历史流关注模型进行训练,当历史流关注模型训练到损失值下降到预设阈值时,然后将语言模型与历史流关注模型一起进行训练,更新模型的参数,从而可以有效地提高训练效果。

应该理解的是,虽然图2、9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、9中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图10所示,提供了一种阅读任务处理装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:获取单元1002、计算单元1004、确定单元1006和生成单元1008,其中:

获取单元1002,用于获取阅读文本以及与阅读文本关联的待对话文本和历史对话文本;

计算单元1004,用于计算待对话文本借鉴历史对话文本时对应的可借鉴指数;

确定单元1006,用于根据待对话文本和可借鉴指数达到借鉴条件时所对应的历史对话文本,在阅读文本中确定关键信息;

生成单元1008,用于根据提取的关键信息获得用于答复待对话文本的答复文本。

在一个实施例中,计算单元1004,还用于获取待对话文本的第一语境表示和历史对话文本第二语境表示;根据第一语境表示和第二语境表示,计算待对话文本和历史对话文本之间的相似度;将计算所得的相似度确定为对应待对话文本借鉴历史对话文本时对应的可借鉴指数。

在一个实施例中,计算单元1004,还用于获将待对话文本和历史对话文本输入机器学习模型;通过机器学习模型的嵌入模块对待对话文本进行编码,得到第一语境表示;以及,通过嵌入模块对各历史对话文本进行编码,得到第二语境表示。

在一个实施例中,计算单元1004,还用于获对第一语境表示中的各向量进行合并处理,得到用于表示待对话文本语义的第一语义向量;对第二语境表示中的各向量进行合并处理,得到用于表示历史对话文本语义的第二语义向量;计算第一语义向量与各第二语义向量之间的相似度;将计算所得的相似度作为待对话文本和历史对话文本的相似度。

在一个实施例中,第一语义向量由历史流关注模型的选择模块合并第一语境表示中的各向量所得;第二语义向量是由选择模块通过合并第二语境表示中的各向量所得;在一个实施例中,计算单元1004,还用于通过选择模块计算第一语义向量与各第二语义向量之间的相似度。

在一个实施例中,待对话文本为当前轮的问题文本;确定单元1006,还用于基于第一语境表示和阅读文本的第三语境表示,计算待对话文本对阅读文本的文本表示;对文本表示进行集成操作;通过历史流关注模型的历史流模块对集成操作后的文本表示和可借鉴指数进行流操作,得到阅读文本的答复文本表示;答复文本表示包含有待对话文本的查询信息和历史对话文本在阅读文本的注意力区域;根据查询信息和可借鉴指数达到借鉴条件所对应的注意力区域,在阅读文本中确定关键信息。

在一个实施例中,确定单元1006,还用于通过以下计算式基于第一语境表示和阅读文本的第三语境表示,计算待对话文本对阅读文本的文本表示;

其中,i用于表示历史对话文本中的第i轮对话文本,j用于表示阅读文本中第j个词,k用于表示待对话文本中的第k个词,为注意力权重,均为待对话文本的第一语境表示,为阅读文本的第三语境表示,w为学习矩阵。

在一个实施例中,确定单元1006,还用于将各表示向量分别输入机器学习模型中的编解码模型;编解码模型包括编码层和解码层;编解码模型是基于自注意力机制的模型;利用编码层对相应的表示向量进行编码,得到对应的编码向量;通过解码层对编码向量进行解码,得到集成操作后的文本表示。

在一个实施例中,确定单元1006,还用于对集成操作后的文本表示和可借鉴指数进行融合,得到融合向量;将融合向量输入所述历史流关注模型的历史流模块;通过循环神经网络对融合向量进行处理,输出阅读文本的文本表示。

在一个实施例中,如图11所示,该装置还包括:选取单元1010和排序单元1012;其中:

选取单元1010,用于从历史对话文本中选取可借鉴指数达到预设阈值的目标对话文本;或者,

排序单元1012,用于按照可借鉴指数对历史对话文本中的各轮对话文本进行排序,并将排序名次达到预设名次的对应轮对话文本作为目标对话文本;

确定单元1006,还用于根据待对话文本和目标对话文本,在阅读文本中确定关键信息。

在一个实施例中,嵌入模块为语言模型;语言模型包括至少两个网络层;计算单元1004,还用于通过各网络层对待对话文本进行编码,得到各网络层的输出结果;获取各网络层对应的参数;利用所获取的权重值对相应网络层的输出结果进行加权以及求和,得到第一语境表示。

在一个实施例中,语言模型中的网络层具有不同的等级;如图11所示,该装置还包括:设置单元1014;其中:

设置单元1014,用于按照对应的等级为语言模型中的各网络层设置对应的学习率;其中,等级与学习率呈正相关关系。

在一个实施例中,确定单元1006,还用于基于待对话文本中各分词的上下文信息,确定待对话文本中各分词对应的处理标记;依据处理标记和关键信息修改待对话文本,得到答复文本。

上述实施例中,在处理阅读任务时,获取阅读文本以及与阅读文本关联的待对话文本和历史对话文本,计算待对话文本借鉴历史对话文本时对应的可借鉴指数,通过可借鉴指数高的历史对话文本与待对话文本一起从阅读文本中查找关键信息,利用该关键信息来获得用于答复待对话文本的答复文本,所得到的答复文本充分考虑了借鉴指数高的历史对话文本,使历史对话文本参与到当前的答复中,从而使答复文本更加准确。

关于阅读任务处理装置的具体限定可以参见上文中对于阅读任务处理方法的限定,在此不再赘述。上述阅读任务处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,如图12所示,提供了一种模型训练装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:获取单元1202、提取单元1204、第一处理单元1206、第二处理单元1208、计算单元1210和调整单元1212;其中:

获取单元1202,用于获取训练样本和对应的标签;训练样本包括阅读样本以及与阅读样本关联的待对话样本和历史对话样本;

提取单元1204,用于通过机器学习模型的嵌入模块对训练样本进行特征提取,分别得到待对话样本的第一训练语境表示、历史对话样本的第二训练语境表示和阅读样本的第三训练语境表示;

第一处理单元1206,用于通过机器学习模型的历史流关注模型对第一训练语境表示和第二训练语境表示进行处理,得到待对话样本借鉴历史对话样本时对应的可借鉴指数;可借鉴指数用于衡量待对话样本依赖历史对话样本的程度;

第二处理单元1208,用于通过历史流关注模型对第一训练语境表示、第三训练语境表示和达到借鉴条件所对应的第二训练语境表示进行处理,获得阅读样本的训练关键信息;

计算单元1210,用于计算训练关键信息与标签之间的损失值;

调整单元1212,用于根据损失值调整嵌入模块的参数和历史流关注模型的参数,直至参数调整后所对应的损失值达到预设条件时停止训练。

上述实施例中,利用阅读样本以及与阅读样本关联的待对话样本和历史对话样本,对机器学习模型的嵌入模块和历史流关注模型进行训练,在训练过程中,利用训练关键信息与标签之间的损失值来调整嵌入模块的参数和历史流关注模型的参数。由于训练过程中利用了待对话样本借鉴历史对话样本时对应的可借鉴指数,从而训练后的机器学习模型可以学习到在答复待对话文本时如何借鉴历史对话文本,以提升机器学习模型在处理阅读任务时的答复准确率。

在一个实施例中,嵌入模块包括语言模型;调整单元1212,还用于:根据损失值调整历史流关注模型的参数;当通过调整参数后的历史流关注模型所确定的训练关键信息与标签之间的损失值达到预设阈值时,则利用达到预设阈值的损失值调整语言模型的参数。

上述实施例中,先对历史流关注模型进行训练,当历史流关注模型训练到损失值下降到预设阈值时,然后将语言模型与历史流关注模型一起进行训练,更新模型的参数,从而可以有效地提高训练效果。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图13所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种阅读任务处理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各阅读任务处理方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各阅读任务处理方法实施例中的步骤。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图14所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储阅读文本、待对话文本和历史对话文本数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种模型训练方法。

在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各模型训练方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各模型训练方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-onlymemory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(randomaccessmemory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(staticrandomaccessmemory,sram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1