CN116303949B - 一种对话处理方法、系统、存储介质及终端 - Google Patents
一种对话处理方法、系统、存储介质及终端 Download PDFInfo
- Publication number
- CN116303949B CN116303949B CN202310183051.1A CN202310183051A CN116303949B CN 116303949 B CN116303949 B CN 116303949B CN 202310183051 A CN202310183051 A CN 202310183051A CN 116303949 B CN116303949 B CN 116303949B
- Authority
- CN
- China
- Prior art keywords
- text
- model
- dialogue
- training
- trained
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 62
- 238000003672 processing method Methods 0.000 title abstract description 14
- 238000012549 training Methods 0.000 claims abstract description 237
- 230000004044 response Effects 0.000 claims abstract description 94
- 238000000034 method Methods 0.000 claims abstract description 52
- 230000002787 reinforcement Effects 0.000 claims description 82
- 230000006870 function Effects 0.000 claims description 62
- 238000007781 pre-processing Methods 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 9
- 241000282414 Homo sapiens Species 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 4
- 239000003795 chemical substances by application Substances 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 5
- 238000004140 cleaning Methods 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000004060 metabolic process Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001988 toxicity Effects 0.000 description 1
- 231100000419 toxicity Toxicity 0.000 description 1
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
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/08—Insurance
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Finance (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Computer Interaction (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种对话处理方法、系统、存储介质及终端,方法包括:获取针对客户端输入的原始问题文本,在存在历史对话文本时,拼接原始问题文本与历史对话文本,将拼接的文本输入预先训练的文本生成模型,输出多条目标响应文本;预先训练的文本生成模型基于预先训练的奖励模型中文本喜欢程度最大化损失函数训练生成,损失函数用于最大化得分更高的文本与得分更低的文本之间的差值;将任意一个符合预设条件的目标响应文本响应客户端。本申请通过文本喜欢程度最大化损失函数训练模型,损失函数能最大化得分更高的文本与得分更低的文本之间的差值,使训练的模型在应用中输出的回复文本符合客观事实和科学原理,提升了问答系统生成回复文本的准确性。
Description
技术领域
本申请涉及机器学习技术领域,特别涉及一种对话处理方法、系统、存储介质及终端。
背景技术
近年来,人工智能的发展如火如荼,其中自然语言理解是人工智能领域中最重要的方向之一,让机器识别自然语言已经成为研究人员研究的热点,由此智能问答系统应运而生。智能问答系统是信息检索系统的一种高级形式,它能用准确、简洁的自然语言回答用户用自然语言提出的问题,常见的智能问答系统可分为闲聊型、问答型和任务型。
在现有技术中,针对闲聊型的问答系统实现方式中,通常主要是基于检索问答库的技术路线,通过构建闲聊语料库进而实现智能问答;也可以基于生成类模型,通过模型的方式直接生成回复文本。由于目前文本生成类模型在训练过程中采用历史对话文本进行训练的,历史对话文本可能包括各种各样的训练数据,从而导致模型在生成的回复文本时会出现不符合客观事实和科学原理的情况,甚至出现具有毒害性且不可控的回复文本,此类回复文本并不符合人们预期的回复,从而降低了问答系统生成回复文本的准确性。
发明内容
本申请实施例提供了一种对话处理方法、系统、存储介质及终端。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
第一方面,本申请实施例提供了一种对话处理方法,方法包括:
获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本;
将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;其中,
预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值;
根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。
可选的,按照以下步骤生成预先训练的文本生成模型,包括:
在历史对话文本库中获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集;
将第二标准对话数据集按照预设比例划分为三部分,得到第一模型训练样本、第二模型训练样本以及第三模型训练样本;
根据第一标准对话数据集对预设GPT模型进行模型训练,训练结束后得到第一对话模型;
根据第一模型训练样本对第一对话模型进行有监督训练,训练结束后得到第二对话模型;
根据第二模型训练样本以及第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型;
根据第三模型训练样本、第二对话模型以及预先训练的奖励模型进行模型强化学习训练,训练结束后得到预先训练的文本生成模型。
可选的,获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集,包括:
获取预设数量的对话文本;
对获取的每个对话文本进行数据预处理,得到第一标准对话数据集;数据预处理至少包括错别字替换、特殊字符处理以及断句处理;
将第一标准对话数据集中每个第一标准对话数据进行数据结构化处理,得到第二标准对话数据集;数据结构化处理至少包括对话角色划分、对话顺序归类以及对话拼接。
可选的,根据第二模型训练样本以及第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型,包括:
按照预设第一角色在前以及预设第二角色在后的方式,将第二模型训练样本中每个对话序列中历史对话进行拼接,并在拼接的对话文本的句子数量以及文本长度满足预设阈值时,对拼接的对话文本标记角色标签以及对话序号,得到标签数据;
将标签数据的每条输入文本输入第二对话模型中,输出每条输入文本对应的响应文本;
将每条输入文本及其响应文本组合为目标数据发送至客户端进行展示;
接收针对展示的目标数据的排序和打分,得到奖励模型训练样本;
将第二对话模型最后的线性层进行修改,使第二对话模型输出标量分数值,并对修改后的第二对话模型设置文本喜欢程度最大化损失函数,得到奖励模型;
将奖励模型训练样本输入奖励模型中,输出模型损失值;
当模型损失值到达最小且训练次数到达预设阈值时,得到预先训练的奖励模型。
可选的,文本喜欢程度最大化损失函数为:
其中,rθ(x,y)表示在模型参数为θ时候奖励模型对于输入文本序列x和生成的结果y的标量输出,yw是人类更喜欢的生成,yl是相对不喜欢的生成,σ是一个激活函数,D是对比数据集,表示每一条输入文本生成的对应K条结果的组合数/>(如K=4时,组合数)。
可选的,根据第三模型训练样本、第二对话模型以及预先训练的奖励模型进行模型强化学习训练,训练结束后得到预先训练的文本生成模型,包括:
将第三模型训练样本进行标准化处理,得到强化学习训练数据;
采用深度增强学习PPO算法构建强化学习网络;
将强化学习网络中状态组件的策略网络和价值网络均映射为第二对话模型,并将文本生成模型中奖励函数映射为预先训练的奖励模型,得到文本生成模型;
从强化学习训练数据中选取预设数量的对话文本输入文本生成模型中,输出目标奖励评分;
当目标奖励评分到达最高且训练次数到达预设阈值时,得到预先训练的文本生成模型。
可选的,从强化学习训练数据中选取预设数量的对话文本输入文本生成模型中,输出目标奖励评分,包括:
从强化学习训练数据中选取预设数量的对话文本输入策略网络中,得到响应文本序列;
将响应文本序列及其输入的文本按照响应文本序列在后的方式拼接起来,得到目标文本序列;
将目标文本序列输入预先训练的奖励模型中,得到目标奖励评分;
方法还包括:
当目标奖励评分未到达最高或者训练次数未到达预设次数时,更新策略网络和价值网络的模型参数,并继续执行从强化学习训练数据中选取预设数量的对话文本输入文本生成模型中,输出目标奖励评分的步骤。
第二方面,本申请实施例提供了一种对话处理系统,系统包括:
待处理文本获取模块,用于获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本;
文本输出模块,用于将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;其中,
预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值;
文本响应模块,用于根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。
第三方面,本申请实施例提供一种计算机存储介质,计算机存储介质存储有多条指令,指令适于由处理器加载并执行上述的方法步骤。
第四方面,本申请实施例提供一种终端,可包括:处理器和存储器;其中,存储器存储有计算机程序,计算机程序适于由处理器加载并执行上述的方法步骤。
本申请实施例提供的技术方案可以包括以下有益效果:
在本申请实施例中,对话处理系统首先获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本,然后将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值,最后根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。由于本申请通过文本喜欢程度最大化损失函数以及强化学习训练模型,喜欢程度最大化损失函数能最大化得分更高的文本与得分更低的文本之间的差值,并在强化学习的配合下使训练的模型在应用中输出的回复文本符合客观事实和科学原理,提升了问答系统生成回复文本的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请实施例提供的一种对话处理方法的流程示意图;
图2是本申请实施例提供的一种对话处理过程的过程示意框图;
图3是本申请实施例提供的一种文本生成模型训练方法的流程示意图;
图4是本申请实施例提供的一种模型训练阶段的原始GPT模型网络训练的结构图;
图5是本申请实施例提供的一种有监督训练时的训练示意图;
图6是本申请实施例提供的一种第三阶段训练RM奖励模型示意图;
图7是本申请实施例提供的一种第四阶段训练强化学习PPO策略训练示意图;
图8是本申请实施例提供的一种对话处理系统的结构示意图;
图9是本申请实施例提供的一种终端的结构示意图。
具体实施方式
以下描述和附图充分地示出本申请的具体实施方案,以使本领域的技术人员能够实践它们。
应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的系统和方法的例子。
在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本申请提供了一种对话处理方法、系统、存储介质及终端,以解决上述相关技术问题中存在的问题。本申请提供的技术方案中,由于本申请通过文本喜欢程度最大化损失函数以及强化学习训练模型,喜欢程度最大化损失函数能最大化得分更高的文本与得分更低的文本之间的差值,并在强化学习的配合下使训练的模型在应用中输出的回复文本符合客观事实和科学原理,提升了问答系统生成回复文本的准确性,下面采用示例性的实施例进行详细说明。
下面将结合附图1-附图7,对本申请实施例提供的对话处理方法进行详细介绍。该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的对话处理系统上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。
请参见图1,为本申请实施例提供了一种对话处理方法的流程示意图。如图1所示,本申请实施例的方法可以包括以下步骤:
S101,获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本;
其中,客户端可以是安装了问答系统的终端平台,也可以是问答机器人,具体可按照实际场景进行设置。原始问题文本是用户输入问题对应的文本,如果用户输入问题如果是文字,则直接作为原始问题文本;如果用户输入的是语音,可通过调用语义识别插件对该语音进行转换,得到原始问题文本。
在本申请实施例中,问答机器人首先获取针对客户端输入的原始问题文本,在获取到原始问题文本后,可判断当前是否存在历史对话文本,在存在历史对话文本的情况下,说明当前已经进行了多轮对话,可拼接原始问题文本与历史对话文本,得到待处理文本。在不存在历史对话文本的情况下,说明当前是第一轮对话,此时可将针对客户端输入的原始问题文本作为原始问题文本。
在一种可能的实现方式中,在保险行业的问答场景下,问答机器人首先获取用户针对客户端输入的语音数据,然后调用语义识别插件对该语音进行转换,得到原始问题文本,其次判断当前是否存在历史对话文本,在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本。
例如,假设原始问题文本为:N_C,历史对话文本(历史记录用户和机器人输入)分别为:N-k-1_C;N-k-1_S;那么经过预设标识符[SEP]进行拼接后的待处理文本则为如下情形:
N-4_C[SEP]N-3_S[SEP]N-2_C[SEP]N-1_S[SEP]N_C(N>=4)
N-3_S[SEP]N-2_C[SEP]N-1_S[SEP]N_C(N=3)
N-2_C[SEP]N-1_S[SEP]N_C(N=2)
N-1_S[SEP]N_C(N=1)
N_C(N=0);
S102,将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;
其中,预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值,预先训练的文本生成模型是可以生成符合客观事实和科学原理的响应文本的数学模型。
在本申请实施例中,在得到待处理文本后,可将待处理文本输入预先训练的文本生成模型中,经过模型处理并结合BeamSearch+SimCTG相结合的解码策略生成多条响应文本。
例如可以是K=4条响应文本,该文本例如均是语言流畅、符合人类习惯以及遵循科学常识和事实依据具有保险行业风格的文本。
在本申请实施例中,在生成预先训练的文本生成模型时,首先在历史对话文本库中获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集,再将第二标准对话数据集按照预设比例划分为三部分,得到第一模型训练样本、第二模型训练样本以及第三模型训练样本,然后根据第一标准对话数据集对预设GPT模型进行模型训练,训练结束后得到第一对话模型,再根据第一模型训练样本对第一对话模型进行有监督训练,训练结束后得到第二对话模型,其次根据第二模型训练样本以及第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型,最后根据第三模型训练样本、第二对话模型以及预先训练的奖励模型进行模型强化学习训练,训练结束后得到预先训练的文本生成模型。
具体的,预先训练的奖励模型中文本喜欢程度最大化损失函数为:
其中,rθ(x,y)表示在模型参数为θ时候奖励模型对于输入文本序列x和生成的结果y的标量输出,yw是人类更喜欢的生成,yl是相对不喜欢的生成,σ是一个激活函数,D是对比数据集,表示每一条输入文本生成的对应K条结果的组合数/>(如K=4时,组合数)。
S103,根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。
其中,敏感词库中包含了大量的敏感词汇,该敏感词库为动态的,研发人员可以随时对敏感词汇进行补充。预先训练的混淆度计算模型用于计算响应文本的困惑度得分,可以根据设定的困惑度阈值,判断大于设定的阈值则响应文本替换为通用回复文本。
在本申请实施例中,首先根据敏感词库判定每条目标响应文本是否包含敏感词汇,并剔除存在敏感词汇的目标响应文本,然后计算剔除敏感词汇后剩余的每条目标响应文本的困惑度,并剔除大于困惑度阈值的目标响应文本,得到最终的目标响应文本,最后可在最终的响应文本中将任意一个符合预设条件的目标响应文本响应至客户端。
进一步地,目标响应文本因设置了最大长度有小概率可能会出现句尾不流畅的截断,需要检验句尾是否有结尾符号,如果没有结尾符号,则使用规则再次进行截断,保证句子的整体性。
例如图2所示,图2是本申请提供的一种对话处理过程的过程示意框图,首先在数据收集和清洗阶段,包括GPT模型预训练数据的搜集和清洗以及整通对话数据的清洗,处理后可得到第一标准对话数据集和第二标准对话数据集。然后在模型训练阶段,首先根据第一标准对话数据集进行GPT模型预训练,然后采用第二标准对话数据集的部分数据分别实现GPT模型有监督微调、RM奖励模型训练以及强化学习PPO策略训练。最后在模型推理阶段,首先得到输入拼接数据,然后将拼接数据输入预先训练的文本生成模型中,得到响应文本模型生成数据,最后对响应文本模型生成数据进行后处理操作可响应到客户端。后处理操作包括据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件。
在本申请实施例中,对话处理系统首先获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本,然后将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值,最后根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。由于本申请通过文本喜欢程度最大化损失函数以及强化学习训练模型,喜欢程度最大化损失函数能最大化得分更高的文本与得分更低的文本之间的差值,并在强化学习的配合下使训练的模型在应用中输出的回复文本符合客观事实和科学原理,提升了问答系统生成回复文本的准确性。
请参见图3,为本申请实施例提供了一种模型训练方法的流程示意图。如图3所示,本申请实施例的方法可以包括以下步骤:
S201,在历史对话文本库中获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集;
其中,历史对话文本库是根据收集的客户和业务员的真实的历史对话文本所生成的。
在本申请实施例中,首先在历史对话文本库中获取预设数量的对话文本,然后对获取的每个对话文本进行数据预处理,得到第一标准对话数据集,数据预处理至少包括错别字替换、特殊字符处理以及断句处理;最后将第一标准对话数据集中每个第一标准对话数据进行数据结构化处理,得到第二标准对话数据集;数据结构化处理至少包括对话角色划分、对话顺序归类以及对话拼接。
进一步地,由于历史对话文本库包含了不同时间跨度和不同业务水平的业务员参与的对话,同时对话文本也存在很多特殊的无意义字符以及错别字,并且长度不一,为了保证后续模型能训练出很好的效果,因此需要对获取的预设数量的对话文本进行清洗和过滤。在一种可能的实现方式中,首先采用pycorrector工具对获取的预设数量的对话文本中的错别字进行替换处理,然后按照一定的规则替换对句中的特殊字符进行替换处理,最后对替换后句子的句长进行截断处理,使得每一句的长度不超过512个字(模型能容纳的单句最大长度)。
每个对话文本处理后的一种示例方式如下:
保单别忘了发我,因为本周我就去办理验车。
好嘞;
等一下我下载了发给您哈;
电子保单发您了,记得保存一下哦。
好的,谢谢。
客气了[微笑]。
进一步地,为了模型能够具有高质量的响应文本生成,并识别客户和业务员等不同的角色和历史对话文本其具有一定的理解能力,可将第一标准对话数据集中每个第一标准对话数据进行数据结构化处理,以筛选出水平优秀的业务员和客户的对话数据,保证模型的输出具有专业性和准确性;其次按照不同的时间区间来划分对话,使得每个完整的对话逻辑通顺,主题集中;最后为了让模型能更好的理解角色的对话文本,同一个角色连续多轮的文本,需要使用“;”进行拼接。具体示例如下:
原始对话文本:
客户:保单别忘了发我,因为本周我就去办理验车
坐席:好嘞
坐席:等一下我下载了发给您哈
坐席:电子保单发您了,记得保存一下哦
客户:好的,谢谢
坐席:客气了。
处理后的文本:
客户:保单别忘了发我,因为本周我就去办理验车;
坐席:好嘞;等一下我下载了发给您哈;电子保单发您了,记得保存一下哦;
客户:好的,谢谢;
坐席:客气了[微笑]。
S202,将第二标准对话数据集按照预设比例划分为三部分,得到第一模型训练样本、第二模型训练样本以及第三模型训练样本;
在本申请实施例中,在得到第二标准对话数据集后,可把该批数据切分成三部分,第一部分用于有监督训练,第二部分用于奖励模型训练,第三步用于模型强化学习训练。
S203,根据第一标准对话数据集对预设GPT模型进行模型训练,训练结束后得到第一对话模型;
其中,预设GPT模型为预训练语言(Gererate Pre-Training,GPT)模型。
在本申请实施例中,文本生成模型效果比较好的目前是采用GPT自回归模型,因此可直接在第一标准对话数据集上做预训练。首先将第一标准对话数据集输入预设GPT模型中,输出模型损失值,当模型损失值到达最小时,生成第一对话模型。
具体的,第一标准对话数据集的数据示例如下:0_C;......;N_C;0_S;......;N_S;C表示客户文本,S表示业务坐席文本。GPT模型关键配置和预训练参数设置如下:a、采用6层transformer decoder层,n_layer=6;b、考虑到中文的特殊性,直接采用bert提供的词表vocab_size=21128;c、模型最大max_len=512、训练批数据batch_size=8、学习率lr=2.6e-5、训练轮次epochs=100、优化器AdamW、训练完成后得到model_1。
具体的,例如图4所示,图4给出了模型训练阶段的原始GPT模型网络训练的结构图,GPT网络采用6层GPT解码器,模型的输入为客户的文本N_客户文本或者业务坐席的文本N_坐席文本。经过GPT模型的计算后得到相应的概率分布,然后结合概率分布和模型输入进行交叉熵损失计算,最终根据计算的损失值判断模型是否训练结束,未训练结束时可以根据该损失函数更新模型权重参数继续训练,直到训练结束后得到第一对话模型。
S204,根据第一模型训练样本对第一对话模型进行有监督训练,训练结束后得到第二对话模型;
其中,有监督训练是对第一对话模型的微调,使得第一对话模型能够区分客户和自己本身角色的区分以及有针对性的回答问题,因此可采用第一模型训练样本对第一对话模型进行有监督训练。
在本申请实施例中,按照第一角色在前以及第二角色在后的方式,将第一模型训练样本中每个对话文本的不同角色对话进行拼接;当拼接的对话文本的句子数量以及文本长度满足预设长度阈值时,对拼接的对话文本标记角色标签以及对话序号,得到用于模型微调的数据样本;将用于模型微调的数据样本输入第一对话模型中进行训练,输出损失值;当损失值到达最小时,生成第二对话模型。
例如,每个对话文本的不同角色对话进行拼接按照如下规则进行如下处理:
1、按照业务坐席文本在前,客户文本在后,使用”[SEP]”对对话文本进行拼接。
2、采用滑窗大小为6在每个对话文本中,从客户文本进行选取,保证拼接的语句最多不超过6句。
3、保证拼接后的最大长度不超过512,最终处理后每个对话文本可包含N轮的对话序列{0_C,1_S,2_C,3_S,4_C,5_S,...N-1_C,N_S},其中C表示客户文本,S表示业务坐席文本,数字表示序号。经过上述处理后,示例如下:
0_C[SEP]1_S
0_C[SEP]1_S[SEP]2_C[SEP]3_S
0_C[SEP]1_S[SEP]2_C[SEP]3_S[SEP]4_C[SEP]5_S
2_C[SEP]3_S[SEP]4_C[SEP]5_S[SEP]6_C[SEP]7_S
......
N-5_C[SEP]N-4_S[SEP]N-3_C[SEP]N-2_S[SEP]N-1_C[SEP]N_S。
模型主要微调参数和配置如下:采用6层transformer decoder层,n_layer=6;考虑到中文的特殊性,直接采用bert提供的词表vocab_size=21128;模型最大max_len=512、训练批数据batch_size=8、学习率lr=2.6e-5、训练轮次epochs=100、优化器AdamW;模型权重采用直接model_1的权重。
例如图5所示,图5是本申请提供的一种有监督训练时的训练示意图,模型权重参数采用之前第一阶段训练好的第一对话模型的模型权重。模型训练参数和GPT模型的训练参数相同,不同的是模型的输入不同,本申请中该模型的输入如图5所示,1=<j<=5,C表示客户文本,S表示业务坐席文本,它们交替的采用“[SEP]”连接起来。有一个点需要特别注意,训练的时候采用数据batch处理,一个batch内数据长度不一,需要进行padding操作。因此我们再微调训练GPT模型的时候采用左边padding的方式—在文本生成的时候采用batch的时候就不会因为batch大小不一,使得同样的输入模型输出的结果不同。最终训练结束后可得到第二对话模型。
S205,根据第二模型训练样本以及第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型;
其中,由于训练和微调后的GPT模型生成的文本经常不遵循客观事实以及科学常识,不符合人类的期望。因此本申请通过多阶段模型训练方法,再预训练和有监督训练的基础上,把人类反馈融合到强化学习奖励函数中,通过强化学习PPO算法来引导模型生成流畅、遵循客观事实以及科学常识具有保险行业高水平业务素养的文本,使得构建的对话机器人具有强智能性。
在本申请实施例中,在根据第二模型训练样本以及第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型时,首先按照预设第一角色在前以及预设第二角色在后的方式,将第二模型训练样本中每个对话序列中历史对话进行拼接,并在拼接的对话文本的句子数量以及文本长度满足预设阈值时,对拼接的对话文本标记角色标签以及对话序号,得到标签数据,然后将标签数据的每条输入文本输入第二对话模型中,输出每条输入文本对应的响应文本,其次将每条输入文本及其响应文本组合为目标数据发送至客户端进行展示,再接收针对展示的目标数据的排序和打分,得到奖励模型训练样本,并将第二对话模型最后的线性层进行修改,使第二对话模型输出标量分数值,并对修改后的第二对话模型设置文本喜欢程度最大化损失函数,得到奖励模型,最后将奖励模型训练样本输入奖励模型中,输出模型损失值,最后当模型损失值到达最小且训练次数到达预设阈值时,得到预先训练的奖励模型。
文本喜欢程度最大化损失函数为:
其中,rθ(x,y)表示在模型参数为θ时候奖励模型对于输入文本序列x和生成的结果y的标量输出,yw是人类更喜欢的生成,yl是相对不喜欢的生成,σ是一个激活函数,D是对比数据集,表示每一条输入文本生成的对应K条结果的组合数/>(如K=4时,组合数)。
在一种可能的实现方式中,首先对第二模型训练样本进行处理,处理方法,一个对话文本包含N轮的对话序列{0_C,1_S,2_C,3_S,4_C,5_S,...N-1_C,N_S},其中C表示客户文本,S表示业务坐席文本,数字表示序号,仅仅保留客户文本在句尾,最后得到的文本示例:
0_C
0_C[SEP]1_S[SEP]2_C
0_C[SEP]1_S[SEP]2_C[SEP]3_S[SEP]4_C
2_C[SEP]3_S[SEP]4_C[SEP]5_S[SEP]6_C
......
N-5_C[SEP]N-4_S[SEP]N-3_C[SEP]N-2_S[SEP]N-1_C。
针对以上处理后得到的标签数据,可将其中每条输入文本输入第二对话模型中,采用BeamSearch+SimCTG相结合的解码策略生成K=4条响应文本。具体步骤如下:使用BeamSearch解码策略生成4条响应文本的前5个字;使用SimCTG解码策略生成4条响应文本后面余下的部分。其次将每条输入文本及其响应文本成对的展示给高水平的业务员按照文本是否流畅、是否遵循客观事实和科学常识以及是否符合人类期望等方面来评价,并排序打分,得到奖励模型训练样本。
最终得到的数据集如下:
0_C[SEP]1_S[SEP]2_C[SEP]G_11Score_11
0_C[SEP]1_S[SEP]2_C[SEP]G_12Score_12
0_C[SEP]1_S[SEP]2_C[SEP]G_13Score_13
0_C[SEP]1_S[SEP]2_C[SEP]G_14Score_14
......
N-5_C[SEP]N-4_S[SEP]N-3_C[SEP]N-2_S[SEP]N-1_C[SEP]G_n1 Score_n1
N-5_C[SEP]N-4_S[SEP]N-3_C[SEP]N-2_S[SEP]N-1_C[SEP]G_n2 Score_n2
N-5_C[SEP]N-4_S[SEP]N-3_C[SEP]N-2_S[SEP]N-1_C[SEP]G_n3 Score_n3
N-5_C[SEP]N-4_S[SEP]N-3_C[SEP]N-2_S[SEP]N-1_C[SEP]G_n4 Score_n4;
在得到奖励模型训练样本后,可将第二对话模型最后的线性层进行修改,使其能够输出一个标量分数值,而不是一个类别概率,然后为了模型对更好的响应文本打更高的分数,因此损失函数的目标是最大化labeler更喜欢的响应和不喜欢的响应之间的差值,因此可对第二对话模型设置文本喜欢程度最大化损失函数,并设置模型参数(采用6层transformer decoder层,n_layer=6、优化器AdamW、lr=1e-5、训练批数据batch_size=8、训练轮次epochs=100),得到最终的奖励模型,最终将奖励模型训练样本输入奖励模型中进行训练,训练结果符合预期时,得到预先训练的奖励模型。
例如图6所示,图6给出了第三阶段训练RM奖励模型示意图,其中虚线框给出了一个batch内的数据和高水平业务员对每条数据的打分。其中1=<j<=5左边虚线框中的数据表示两条不同的数据采用第二阶段微调训练后的模型的生成文本,每条数据生成4条——因此总计8条数据.训练的时候batch=8每次都是一个batch内按照上图的数据组合方式进行组合,保证模型训练的有效性,在训练结束后可得到预先训练的奖励模型。
S206,根据第三模型训练样本、第二对话模型以及预先训练的奖励模型进行模型强化学习训练,训练结束后得到预先训练的文本生成模型。
在本申请实施例中,首先将第三模型训练样本进行标准化处理,得到强化学习训练数据,再采用深度增强学习PPO算法构建强化学习网络,其次将强化学习网络中状态组件的策略网络和价值网络均映射为第二对话模型,并将文本生成模型中奖励函数映射为预先训练的奖励模型,得到文本生成模型,最后从强化学习训练数据中选取预设数量的对话文本输入文本生成模型中,输出目标奖励评分,并当目标奖励评分到达最高且训练次数到达预设阈值时,得到预先训练的文本生成模型。由于预先训练的奖励模型已经学习到了对生成文本好坏的评价知识,把它作为强化学习的奖励函数指导强化学习网络进行继续学习,使得强化学习网络输入的响应文本更加准确。
具体的,在从强化学习训练数据中选取预设数量的对话文本输入文本生成模型中,输出目标奖励评分时,首先从强化学习训练数据中选取预设数量的对话文本输入策略网络中,得到响应文本序列,然后将响应文本序列及其输入的文本按照响应文本序列在后的方式拼接起来,得到目标文本序列,最后将目标文本序列输入预先训练的奖励模型中,得到目标奖励评分。
进一步地,当目标奖励评分未到达最高或者训练次数未到达预设次数时,更新策略网络和价值网络的模型参数,并继续执行从强化学习训练数据中选取预设数量的对话文本输入文本生成模型中,输出目标奖励评分的步骤。
在本申请实施例中,在生成强化学习网络的训练数据时,第三模型训练样本中每个对话文本包含N轮的对话序列,例如某一个对话序列可以表示为:{0_C,1_S,2_C,3_S,4_C,5_S,...N-1_C,N_S},其中C表示客户文本,S表示业务坐席文本,数字表示序号,仅仅保留客户文本在句尾,经过处理最后得到的文本示例:
0_C
0_C[SEP]1_S[SEP]2_C
0_C[SEP]1_S[SEP]2_C[SEP]3_S[SEP]4_C
2_C[SEP]3_S[SEP]4_C[SEP]5_S[SEP]6_C
......
N-5_C[SEP]N-4_S[SEP]N-3_C[SEP]N-2_S[SEP]N-1_C。
在本申请实施例中,强化学习网络的网络参数设置可以是强化学习网络中的状态组件中的策略网络和价值网络均采用第二对话模型;优化器采用AdamW;学习率lr=1e-4。奖励函数可为预先训练的奖励模型。训练总轮数num_episodes=100000;每一轮训练最大时间步max_timesteps=500;状态组件中的策略网络和价值网络更新时间步间隔为update_timesteps=1000;batch_size=8。
在一种可能的实现方式中,在进行具体训练时,从强化学习网络的训练数据中随机选取batch_size=8条文本输入到强化学习网络中,得到当前状态后把该文本输入到策略网络中得到响应文本序列;把响应文本和上一个输入文本按照响应文本序列在后的方式拼接起来,得到目标文本序列sequence,将目标文本序列sequence输入强化学习网络的环境中,通过预先训练的奖励模型得到该文本序列的目标奖励评分reward,最终可把得到的参数存储到一个缓存池中memories,重复进行强化学习的步骤直到update_timesteps=1000时间步,然后更新策略网络和价值网络中的模型参数,使得预先训练的奖励模型可以得到更高的奖励评分reward,重复以上步骤num_episodes=100000轮,强化学习模型训练完毕,得到预先训练的文本生成模型。
例如图7所示,图7给出了第四阶段训练强化学习PPO策略训练示意图。
整体算法分为缓存、环境和智能体。其中环境和智能体的网络模型均采用训练好的GPT网络模型作为基础模型。其中环境中的奖励函数直接采用第三阶段得到的预先训练的奖励模型;智能体中的策略网络Actor和价值网络Critic均采用第二阶段训练的第二对话模型。第一文本输入N-j_C[SEP]...[SEP]N-1_C(其中1<=j<=5)输入智能体和环境中;智能体的Actor网络生成相应的sequence,Critic网络生成value;第二上述生成的sequence经过环境的奖励函数——RM奖励模型得到相应的得分;第三缓存把输入文本state、reward和value收集起来,每隔t时间步输入到agent中对ActorCritic网络进行参数更新——agent中的Actor网络和Critic网络对state分别生成Actorlogits和Criticlogits,然后结合reward、value
和相应的损失函数分别计算各自的loss,然后更新Actor网络和Critic网络的权重参数。
在本申请实施例中,对话处理系统首先获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本,然后将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值,最后根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。由于本申请通过文本喜欢程度最大化损失函数以及强化学习训练模型,喜欢程度最大化损失函数能最大化得分更高的文本与得分更低的文本之间的差值,并在强化学习的配合下使训练的模型在应用中输出的回复文本符合客观事实和科学原理,提升了问答系统生成回复文本的准确性。
下述为本申请系统实施例,可以用于执行本申请方法实施例。对于本申请系统实施例中未披露的细节,请参照本申请方法实施例。
请参见图8,其示出了本申请一个示例性实施例提供的对话处理系统的结构示意图。该对话处理系统可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。该系统1包括待处理文本获取模块10、文本输出模块20、文本响应模块30。
待处理文本获取模块10,用于获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本;
文本输出模块20,用于将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;其中,
预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值;
文本响应模块30,用于根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。
需要说明的是,上述实施例提供的对话处理系统在执行对话处理方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的对话处理系统与对话处理方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请实施例中,对话处理系统首先获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本,然后将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值,最后根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。由于本申请通过文本喜欢程度最大化损失函数以及强化学习训练模型,喜欢程度最大化损失函数能最大化得分更高的文本与得分更低的文本之间的差值,并在强化学习的配合下使训练的模型在应用中输出的回复文本符合客观事实和科学原理,提升了问答系统生成回复文本的准确性。
本申请还提供一种计算机可读介质,其上存储有程序指令,该程序指令被处理器执行时实现上述各个方法实施例提供的对话处理方法。
本申请还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各个方法实施例的对话处理方法。
请参见图9,为本申请实施例提供了一种终端的结构示意图。如图9所示,终端1000可以包括:至少一个处理器1001,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。
其中,通信总线1002用于实现这些组件之间的连接通信。
其中,用户接口1003可以包括显示屏(Display)、摄像头(Camera),可选用户接口1003还可以包括标准的有线接口、无线接口。
其中,网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
其中,处理器1001可以包括一个或者多个处理核心。处理器1001利用各种接口和线路连接整个电子设备1000内的各个部分,通过运行或执行存储在存储器1005内的指令、程序、代码集或指令集,以及调用存储在存储器1005内的数据,执行电子设备1000的各种功能和处理数据。可选的,处理器1001可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1001可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1001中,单独通过一块芯片进行实现。
其中,存储器1005可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器1005包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1005可用于存储指令、程序、代码、代码集或指令集。存储器1005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储系统。如图9所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及对话处理应用程序。
在图9所示的终端1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;而处理器1001可以用于调用存储器1005中存储的对话处理应用程序,并具体执行以下操作:
获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本;
将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;其中,
预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值;
根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。
在一个实施例中,处理器1001在生成预先训练的文本生成模型时,具体执行以下操作:
在历史对话文本库中获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集;
将第二标准对话数据集按照预设比例划分为三部分,得到第一模型训练样本、第二模型训练样本以及第三模型训练样本;
根据第一标准对话数据集对预设GPT模型进行模型训练,训练结束后得到第一对话模型;
根据第一模型训练样本对第一对话模型进行有监督训练,训练结束后得到第二对话模型;
根据第二模型训练样本以及第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型;
根据第三模型训练样本、第二对话模型以及预先训练的奖励模型进行模型强化学习训练,训练结束后得到预先训练的文本生成模型。
在一个实施例中,处理器1001在执行获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集时,具体执行以下操作:
获取预设数量的对话文本;
对获取的每个对话文本进行数据预处理,得到第一标准对话数据集;数据预处理至少包括错别字替换、特殊字符处理以及断句处理;
将第一标准对话数据集中每个第一标准对话数据进行数据结构化处理,得到第二标准对话数据集;数据结构化处理至少包括对话角色划分、对话顺序归类以及对话拼接。
在一个实施例中,处理器1001在执行根据第二模型训练样本以及第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型时,具体执行以下操作:
按照预设第一角色在前以及预设第二角色在后的方式,将第二模型训练样本中每个对话序列中历史对话进行拼接,并在拼接的对话文本的句子数量以及文本长度满足预设阈值时,对拼接的对话文本标记角色标签以及对话序号,得到标签数据;
将标签数据的每条输入文本输入第二对话模型中,输出每条输入文本对应的响应文本;
将每条输入文本及其响应文本组合为目标数据发送至客户端进行展示;
接收针对展示的目标数据的排序和打分,得到奖励模型训练样本;
将第二对话模型最后的线性层进行修改,使第二对话模型输出标量分数值,并对修改后的第二对话模型设置文本喜欢程度最大化损失函数,得到奖励模型;
将奖励模型训练样本输入奖励模型中,输出模型损失值;
当模型损失值到达最小且训练次数到达预设阈值时,得到预先训练的奖励模型。
在一个实施例中,处理器1001在执行根据第三模型训练样本、第二对话模型以及预先训练的奖励模型进行模型强化学习训练,训练结束后得到预先训练的文本生成模型时,具体执行以下操作:
将第三模型训练样本进行标准化处理,得到强化学习训练数据;
采用深度增强学习PPO算法构建强化学习网络;
将强化学习网络中状态组件的策略网络和价值网络均映射为第二对话模型,并将文本生成模型中奖励函数映射为预先训练的奖励模型,得到文本生成模型;
从强化学习训练数据中选取预设数量的对话文本输入文本生成模型中,输出目标奖励评分;
当目标奖励评分到达最高且训练次数到达预设阈值时,得到预先训练的文本生成模型。
在一个实施例中,处理器1001在执行从强化学习训练数据中选取预设数量的对话文本输入文本生成模型中,输出目标奖励评分时,具体执行以下操作:
从强化学习训练数据中选取预设数量的对话文本输入策略网络中,得到响应文本序列;
将响应文本序列及其输入的文本按照响应文本序列在后的方式拼接起来,得到目标文本序列;
将目标文本序列输入预先训练的奖励模型中,得到目标奖励评分;
在一个实施例中,处理器1001还执行以下操作:
当目标奖励评分未到达最高或者训练次数未到达预设次数时,更新策略网络和价值网络的模型参数,并继续执行从强化学习训练数据中选取预设数量的对话文本输入文本生成模型中,输出目标奖励评分的步骤。
在本申请实施例中,对话处理系统首先获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接原始问题文本与历史对话文本,得到待处理文本,然后将待处理文本输入预先训练的文本生成模型中,输出待处理文本对应的多条目标响应文本;预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值,最后根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至客户端。由于本申请通过文本喜欢程度最大化损失函数以及强化学习训练模型,喜欢程度最大化损失函数能最大化得分更高的文本与得分更低的文本之间的差值,并在强化学习的配合下使训练的模型在应用中输出的回复文本符合客观事实和科学原理,提升了问答系统生成回复文本的准确性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,对话处理的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,对话处理的程序的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (8)
1.一种对话处理方法,其特征在于,所述方法包括:
获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接所述原始问题文本与所述历史对话文本,得到待处理文本;
将所述待处理文本输入预先训练的文本生成模型中,输出所述待处理文本对应的多条目标响应文本;其中,
所述预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;所述文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值;其中,
按照以下步骤生成预先训练的文本生成模型,包括:
在历史对话文本库中获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集;
将所述第二标准对话数据集按照预设比例划分为三部分,得到第一模型训练样本、第二模型训练样本以及第三模型训练样本;
根据所述第一标准对话数据集对预设GPT模型进行模型训练,训练结束后得到第一对话模型;
根据所述第一模型训练样本对所述第一对话模型进行有监督训练,训练结束后得到第二对话模型;
根据所述第二模型训练样本以及所述第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型;
根据所述第三模型训练样本、所述第二对话模型以及所述预先训练的奖励模型进行模型强化学习训练,训练结束后得到预先训练的文本生成模型;其中,
所述获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集,包括:
获取预设数量的对话文本;
对获取的每个对话文本进行数据预处理,得到第一标准对话数据集;数据预处理至少包括错别字替换、特殊字符处理以及断句处理;
将所述第一标准对话数据集中每个第一标准对话数据进行数据结构化处理,得到第二标准对话数据集;数据结构化处理至少包括对话角色划分、对话顺序归类以及对话拼接;
根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至所述客户端。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第二模型训练样本以及所述第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型,包括:
按照预设第一角色在前以及预设第二角色在后的方式,将所述第二模型训练样本中每个对话序列中历史对话进行拼接,并在拼接的对话文本的句子数量以及文本长度满足预设阈值时,对拼接的对话文本标记角色标签以及对话序号,得到标签数据;
将所述标签数据的每条输入文本输入所述第二对话模型中,输出所述每条输入文本对应的响应文本;
将所述每条输入文本及其响应文本组合为目标数据发送至客户端进行展示;
接收针对展示的目标数据的排序和打分,得到奖励模型训练样本;
将所述第二对话模型最后的线性层进行修改,使所述第二对话模型输出标量分数值,并对修改后的第二对话模型设置文本喜欢程度最大化损失函数,得到奖励模型;
将所述奖励模型训练样本输入所述奖励模型中,输出模型损失值;
当所述模型损失值到达最小且训练次数到达预设阈值时,得到预先训练的奖励模型。
3.根据权利要求2所述的方法,其特征在于,所述文本喜欢程度最大化损失函数为:
其中,rθ(x,y)表示在模型参数为θ时候奖励模型对于输入文本序列x和生成的结果y的标量输出,yw是人类更喜欢的生成,yl是相对不喜欢的生成,σ是一个激活函数,D是对比数据集,表示每一条输入文本生成的对应K条结果的组合数/>
4.根据权利要求1所述的方法,其特征在于,所述根据所述第三模型训练样本、所述第二对话模型以及所述预先训练的奖励模型进行模型强化学习训练,训练结束后得到预先训练的文本生成模型,包括:
将所述第三模型训练样本进行标准化处理,得到强化学习训练数据;
采用深度增强学习PPO算法构建强化学习网络;
将所述强化学习网络中状态组件的策略网络和价值网络均映射为第二对话模型,并将所述文本生成模型中奖励函数映射为预先训练的奖励模型,得到文本生成模型;
从所述强化学习训练数据中选取预设数量的对话文本输入所述文本生成模型中,输出目标奖励评分;
当所述目标奖励评分到达最高且训练次数到达预设阈值时,得到预先训练的文本生成模型。
5.根据权利要求4所述的方法,其特征在于,所述从所述强化学习训练数据中选取预设数量的对话文本输入所述文本生成模型中,输出目标奖励评分,包括:
从所述强化学习训练数据中选取预设数量的对话文本输入所述策略网络中,得到响应文本序列;
将所述响应文本序列及其输入的文本按照响应文本序列在后的方式拼接起来,得到目标文本序列;
将所述目标文本序列输入所述预先训练的奖励模型中,得到目标奖励评分;
所述方法还包括:
当所述目标奖励评分未到达最高或者训练次数未到达预设次数时,更新所述策略网络和价值网络的模型参数,并继续执行所述从所述强化学习训练数据中选取预设数量的对话文本输入所述文本生成模型中,输出目标奖励评分的步骤。
6.一种对话处理系统,其特征在于,所述系统包括:
待处理文本获取模块,用于获取针对客户端输入的原始问题文本,并在存在历史对话文本的情况下,拼接所述原始问题文本与所述历史对话文本,得到待处理文本;
文本输出模块,用于将所述待处理文本输入预先训练的文本生成模型中,输出所述待处理文本对应的多条目标响应文本;其中,
所述预先训练的文本生成模型是基于预先训练的奖励模型中文本喜欢程度最大化损失函数以及强化学习方式训练生成的;所述文本喜欢程度最大化损失函数用于最大化得分更高的文本与得分更低的文本之间的差值;其中,
按照以下步骤生成预先训练的文本生成模型,包括:
在历史对话文本库中获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集;
将所述第二标准对话数据集按照预设比例划分为三部分,得到第一模型训练样本、第二模型训练样本以及第三模型训练样本;
根据所述第一标准对话数据集对预设GPT模型进行模型训练,训练结束后得到第一对话模型;
根据所述第一模型训练样本对所述第一对话模型进行有监督训练,训练结束后得到第二对话模型;
根据所述第二模型训练样本以及所述第二对话模型进行奖励模型训练,训练结束后得到预先训练的奖励模型;
根据所述第三模型训练样本、所述第二对话模型以及所述预先训练的奖励模型进行模型强化学习训练,训练结束后得到预先训练的文本生成模型;其中,
所述获取并预处理预设数量的对话文本,得到第一标准对话数据集和第二标准对话数据集,包括:
获取预设数量的对话文本;
对获取的每个对话文本进行数据预处理,得到第一标准对话数据集;数据预处理至少包括错别字替换、特殊字符处理以及断句处理;
将所述第一标准对话数据集中每个第一标准对话数据进行数据结构化处理,得到第二标准对话数据集;数据结构化处理至少包括对话角色划分、对话顺序归类以及对话拼接;
文本响应模块,用于根据敏感词库和预先训练的混淆度计算模型判定每条目标响应文本是否符合预设条件,并将任意一个符合预设条件的目标响应文本响应至所述客户端。
7.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1-5任意一项所述的方法。
8.一种终端,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1-5任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310183051.1A CN116303949B (zh) | 2023-02-24 | 2023-02-24 | 一种对话处理方法、系统、存储介质及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310183051.1A CN116303949B (zh) | 2023-02-24 | 2023-02-24 | 一种对话处理方法、系统、存储介质及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116303949A CN116303949A (zh) | 2023-06-23 |
CN116303949B true CN116303949B (zh) | 2024-03-19 |
Family
ID=86802491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310183051.1A Active CN116303949B (zh) | 2023-02-24 | 2023-02-24 | 一种对话处理方法、系统、存储介质及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116303949B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116860933B (zh) * | 2023-06-30 | 2024-07-12 | 北京百度网讯科技有限公司 | 对话模型训练方法、回复信息生成方法、装置及介质 |
CN116932713B (zh) * | 2023-06-30 | 2024-05-24 | 北京百度网讯科技有限公司 | 奖励模型训练和奖励值生成方法、装置、设备和介质 |
CN116861259B (zh) * | 2023-09-01 | 2023-11-14 | 腾讯科技(深圳)有限公司 | 奖励模型的训练方法和装置、存储介质及电子设备 |
CN116992875B (zh) * | 2023-09-27 | 2024-01-09 | 之江实验室 | 文本生成方法、装置、计算机设备和存储介质 |
CN118350481A (zh) * | 2024-04-25 | 2024-07-16 | 北京开普云信息科技有限公司 | 评论生成模型的训练及使用方法、装置、存储介质及设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109460463A (zh) * | 2018-11-15 | 2019-03-12 | 平安科技(深圳)有限公司 | 基于数据处理的模型训练方法、装置、终端及存储介质 |
CN111046156A (zh) * | 2019-11-29 | 2020-04-21 | 支付宝(杭州)信息技术有限公司 | 奖励数据的确定方法、装置和服务器 |
CN111221949A (zh) * | 2019-12-27 | 2020-06-02 | 中国平安人寿保险股份有限公司 | 基于强化学习的智能回访方法、装置、设备及存储介质 |
CN112435064A (zh) * | 2020-11-27 | 2021-03-02 | 北京沃东天骏信息技术有限公司 | 推荐信息的评估方法、装置、设备及计算机可读存储介质 |
CN112949858A (zh) * | 2021-03-24 | 2021-06-11 | 网经科技(苏州)有限公司 | 任务导向型对话策略生成方法 |
CN113535911A (zh) * | 2020-12-03 | 2021-10-22 | 腾讯科技(深圳)有限公司 | 奖励模型处理方法、电子设备、介质和计算机程序产品 |
CN113761148A (zh) * | 2021-04-20 | 2021-12-07 | 腾讯科技(深圳)有限公司 | 对话信息获取方法、装置、设备及存储介质 |
CN114780727A (zh) * | 2022-04-24 | 2022-07-22 | 润联软件系统(深圳)有限公司 | 基于强化学习的文本分类方法、装置、计算机设备及介质 |
CN115017288A (zh) * | 2022-06-17 | 2022-09-06 | 平安科技(深圳)有限公司 | 模型训练方法、模型训练装置、设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11593556B2 (en) * | 2020-05-26 | 2023-02-28 | Mastercard International Incorporated | Methods and systems for generating domain-specific text summarizations |
US20220036884A1 (en) * | 2020-06-04 | 2022-02-03 | Salesforce.Com, Inc. | Systems and methods for safe policy improvement for task oriented dialogues |
-
2023
- 2023-02-24 CN CN202310183051.1A patent/CN116303949B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109460463A (zh) * | 2018-11-15 | 2019-03-12 | 平安科技(深圳)有限公司 | 基于数据处理的模型训练方法、装置、终端及存储介质 |
CN111046156A (zh) * | 2019-11-29 | 2020-04-21 | 支付宝(杭州)信息技术有限公司 | 奖励数据的确定方法、装置和服务器 |
CN111221949A (zh) * | 2019-12-27 | 2020-06-02 | 中国平安人寿保险股份有限公司 | 基于强化学习的智能回访方法、装置、设备及存储介质 |
CN112435064A (zh) * | 2020-11-27 | 2021-03-02 | 北京沃东天骏信息技术有限公司 | 推荐信息的评估方法、装置、设备及计算机可读存储介质 |
CN113535911A (zh) * | 2020-12-03 | 2021-10-22 | 腾讯科技(深圳)有限公司 | 奖励模型处理方法、电子设备、介质和计算机程序产品 |
CN112949858A (zh) * | 2021-03-24 | 2021-06-11 | 网经科技(苏州)有限公司 | 任务导向型对话策略生成方法 |
CN113761148A (zh) * | 2021-04-20 | 2021-12-07 | 腾讯科技(深圳)有限公司 | 对话信息获取方法、装置、设备及存储介质 |
CN114780727A (zh) * | 2022-04-24 | 2022-07-22 | 润联软件系统(深圳)有限公司 | 基于强化学习的文本分类方法、装置、计算机设备及介质 |
CN115017288A (zh) * | 2022-06-17 | 2022-09-06 | 平安科技(深圳)有限公司 | 模型训练方法、模型训练装置、设备及存储介质 |
Non-Patent Citations (4)
Title |
---|
A Contrastive Framework for Neural Text Generation;Yixuan Su 等;《Advances in Neural Information Processing Systems 35 (NeurIPS 2022)》;20221231;1-14 * |
Teaching language models to support answers with verified quotes;Jacob Menick 等;《arXiv:2203.11147v1》;20220321;1-40 * |
基于深度学习的藏文抽取式机器阅读理解研究;陈超凡;《中国优秀硕士学位论文全文数据库 信息科技辑》;20211215(第12期);I138-652 * |
多轮任务型对话系统研究进展;曹亚如 等;《计算机应用研究》;20211020;第39卷(第2期);331-341 * |
Also Published As
Publication number | Publication date |
---|---|
CN116303949A (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116303949B (zh) | 一种对话处理方法、系统、存储介质及终端 | |
US10991366B2 (en) | Method of processing dialogue query priority based on dialog act information dependent on number of empty slots of the query | |
US11397888B2 (en) | Virtual agent with a dialogue management system and method of training a dialogue management system | |
CN110377716B (zh) | 对话的交互方法、装置及计算机可读存储介质 | |
CN112346567B (zh) | 基于ai的虚拟交互模型生成方法、装置及计算机设备 | |
US20190005948A1 (en) | Method and device for managing dialogue based on artificial intelligence | |
US20180052664A1 (en) | Method and system for developing, training, and deploying effective intelligent virtual agent | |
CN111177359A (zh) | 多轮对话方法和装置 | |
US10679006B2 (en) | Skimming text using recurrent neural networks | |
CN110909145B (zh) | 针对多任务模型的训练方法及装置 | |
CN111191450A (zh) | 语料清洗方法、语料录入设备及计算机可读存储介质 | |
CN111554276B (zh) | 语音识别方法、装置、设备及计算机可读存储介质 | |
CN111259124A (zh) | 对话管理方法、装置、系统及存储介质 | |
CN109033179B (zh) | 基于机器人情绪状态的回复信息生成方法、装置 | |
CN115630152A (zh) | 虚拟人物直播对话的方式、装置、电子设备及存储介质 | |
CN111414732A (zh) | 文本风格转换方法、装置、电子设备及存储介质 | |
CN111400479A (zh) | 针对多轮对话的问题识别方法和装置 | |
WO2020144636A1 (en) | Artificial intelligence system for business processes | |
CN115617975A (zh) | 针对少样本多轮对话的意图识别方法及装置 | |
US20230267726A1 (en) | Systems and methods for image processing using natural language | |
CN112328774B (zh) | 基于多文档的任务型人机对话任务的实现方法 | |
CN117453895B (zh) | 一种智能客服应答方法、装置、设备及可读存储介质 | |
CN116431779B (zh) | 法律领域faq问答的匹配方法、装置、存储介质及电子装置 | |
CN114970499B (zh) | 一种对话文本增强方法、装置、设备、存储介质 | |
CN117131183B (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 |