CN115080702A - 对话模型训练方法、生成方法、训练装置、设备及介质 - Google Patents
对话模型训练方法、生成方法、训练装置、设备及介质 Download PDFInfo
- Publication number
- CN115080702A CN115080702A CN202210820808.9A CN202210820808A CN115080702A CN 115080702 A CN115080702 A CN 115080702A CN 202210820808 A CN202210820808 A CN 202210820808A CN 115080702 A CN115080702 A CN 115080702A
- Authority
- CN
- China
- Prior art keywords
- dialogue
- information
- probability
- dialogue model
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
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
- 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/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- 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/3331—Query processing
- G06F16/334—Query execution
- G06F16/3346—Query execution using probabilistic model
-
- 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/35—Clustering; Classification
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本申请实施例提供了对话模型训练方法、生成方法、训练装置、设备及介质,其通过将对话信息和多个候选答案输入至检索式对话模型,对话信息为多个语句组成的对话;对对话信息进行特征提取得到语义特征;根据语义特征对候选答案进行分类得到第一概率信息;根据第一概率信息计算检索式对话模型的经验校准误差,根据经验校准误差计算目标损失函数值;根据目标损失值调整检索式对话模型的参数,对检索式对话模型进行迭代训练直至目标损失函数值最小,得到训练好的检索式对话模型;能够在维持对话模型的小体量和高精度的同时,大大提高模型校准效果,提高对话模型的准确性。
Description
技术领域
本申请涉及人工智能领域,尤其涉及对话模型训练方法、生成方法、训练装置、设备及介质。
背景技术
检索式对话技术是一种人工智能交互技术,它旨在对上下文语义与候选答案之间的关系进行建模,并通过各种匹配算法寻找最佳的候选答案,能快速挖掘文本中的隐含信息,帮助进行内容推荐、舆情监控、辅助决策等。但目前的检索式对话技术所采用的模型体量大、运算时间长,同时存在过拟合的问题,导致校准效果差和准确性低。
发明内容
本申请的目的在于至少一定程度上解决相关技术中存在的技术问题之一。
为此,本申请实施例的一个目的在于提供对话模型训练方法、生成方法、训练装置、设备及介质,能够在维持对话模型的小体量和高精度的同时,大大提高模型校准效果,提高对话模型的准确性。
为实现上述目的,本申请实施例的第一方面提供了一种对话模型训练方法,包括:
获取对话信息和多个候选答案,将所述对话信息和多个候选答案输入至检索式对话模型,所述对话信息为多个语句组成的对话;
对所述对话信息进行特征提取得到语义特征;
对每个所述候选答案,根据所述语义特征对所述候选答案进行分类得到第一概率信息,所述第一概率信息包括所述候选答案对于所述语句为正确答案的概率值,和所述候选答案对于所述语句为错误答案的概率值;
根据所述第一概率信息计算所述检索式对话模型的经验校准误差,根据所述经验校准误差计算目标损失函数值;
根据所述目标损失值调整所述检索式对话模型的参数,对所述检索式对话模型进行迭代训练直至所述目标损失函数值最小,得到训练好的检索式对话模型。
在一些实施例,所述根据所述语义特征对所述候选答案进行分类得到第一概率信息,包括:
根据所述语义特征进行证据提取,得到所述候选答案被分类到每个类别的证据信息,所述类别包括正确答案和错误答案;所述证据信息包括所述候选答案被分类为所述正确答案的证据,和所述候选答案被分类为所述错误答案的证据;
根据所述证据信息得到所述第一概率信息。
在一些实施例,所述根据所述证据信息得到所述第一概率信息,包括:
根据所述证据信息计算狄利克雷强度和每个类别的概率参数;
根据所述概率参数和所述狄利克雷强度,得到所述第一概率信息。
在一些实施例,所述根据所述证据信息计算狄利克雷强度和每个类别的概率参数,包括:
通过激活函数对每个类别的所述证据信息进行映射,得到每个类别的证据映射值,所述证据映射值为非负数;
根据所述证据映射值与预设数值之和计算每个类别的概率参数;
根据所有类别的所述概率参数之和计算狄利克雷强度。
在一些实施例,所述根据所述第一概率信息计算所述检索式对话模型的经验校准误差,根据所述经验校准误差计算目标损失函数值,包括:
根据所述第一概率信息计算所述检索式对话模型的经验校准误差,根据所述经验校准误差计算经验校准误差损失函数值;
根据所述第一概率信息计算所述检索式对话模型的交叉熵损失函数值;
将所述经验校准误差损失函数值和所述交叉熵损失函数值之和作为所述目标损失函数值。
在一些实施例,所述经验校准误差损失函数值通过以下式子表示:
i∈[1,n]且i为整数,j∈[1,M]且j为整数;其中,LECE表示经验校准误差损失函数值,T表示温度参数,n表示语句的数量,M表示由第一概率信息所映射成的区间的数量,Aj表示第j个区间内的准确率,pik表示所述候选答案对于第i个所述语句被分类为第k个类别的概率值,ρj为第j个区间的中点值,T表示温度参数。
为实现上述目的,本申请实施例的第二方面提供了一种对话模型训练装置,包括:
输入模块,用于获取对话信息和多个候选答案,将对话信息和多个候选答案输入至检索式对话模型,所述对话信息为多个语句组成的对话;
语义特征提取模块,用于对所述对话信息进行特征提取得到语义特征;
分类模块,用于对每个所述候选答案,根据所述语义特征对所述候选答案进行分类得到第一概率信息,所述第一概率信息包括所述候选答案对于所述语句为正确答案的概率值,和所述候选答案对于所述语句为错误答案的概率值;
损失函数计算模块,用于根据所述第一概率信息计算所述检索式对话模型的经验校准误差,根据所述经验校准误差计算目标损失函数值;
参数调整模块,用于根据所述目标损失函数值调整所述检索式对话模型的参数;
迭代训练模块,用于对所述检索式对话模型进行迭代训练直至所述目标损失函数值最小,得到训练好的检索式对话模型。
为实现上述目的,本申请实施例的第三方面还提供了一种对话生成方法,包括:
获取当前对话信息,将当前对话信息输入至检索式对话模型,所述检索式对话模型是根据上述的对话模型训练方法训练得到;
所述检索式对话模型根据所述当前对话信息得到第二概率值,所述第二概率值为预设的所有候选答案对于所述当前对话信息为正确答案的概率值;
所述检索式对话模型根据所述第二概率值对所有所述候选答案进行排序,并将所述第二概率值最大的所述候选答案作为目标答案输出。
为实现上述目的,本申请实施例的第四方面还提供了一种电子设备,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,所述程序被所述处理器执行时实现上述的对话模型训练方法,或者对话生成方法。
为实现上述目的,本申请实施例的第五方面还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述的对话模型训练方法,或者对话生成方法。
本申请实施例所公开的对话模型训练方法、生成方法、训练装置、设备及介质,其通过获取对话信息和多个候选答案,将对话信息和多个候选答案输入至检索式对话模型,对话信息为多个语句组成的对话;对对话信息进行特征提取得到语义特征;对每个候选答案,根据语义特征对候选答案进行分类得到第一概率信息,所述第一概率信息包括候选答案对于语句为正确答案的概率值,和候选答案对于语句为错误答案的概率值;根据第一概率信息计算检索式对话模型的经验校准误差,根据经验校准误差计算目标损失函数值;根据目标损失值调整检索式对话模型的参数,对检索式对话模型进行迭代训练直至目标损失函数值最小,得到训练好的检索式对话模型;能够在维持对话模型的小体量和高精度的同时,大大提高模型校准效果,提高对话模型的准确性。
附图说明
为了更清楚地说明本申请实施例或者现有技术中的技术方案,下面对本申请实施例或者现有技术中的相关技术方案附图作以下介绍,应当理解的是,下面介绍中的附图仅仅为了方便清晰表述本发明的技术方案中的部分实施例,对于本领域的技术人员来说,在无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。
图1是检索式对话模型的原理示意图;
图2是本申请实施例提供的对话模型训练方法的流程图;
图3是本申请实施例提供的步骤S300的流程图;
图4是本申请实施例提供的步骤S320的流程图;
图5是本申请实施例提供的步骤S321的流程图;
图6是本申请实施例提供的步骤S400的流程图;
图7是本申请实施例提供的对话生成方法的流程图;
图8是本申请实施例提供的对话模型训练装置的结构图;
图9是本申请实施例提供的电子设备的结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
首先对本申请中涉及的若干名词进行解析:
人工智能(Artificial Intelligence,AI):是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
自然语言处理(Nature Language processing,NLP):是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法,自然语言处理是一门融语言学、计算机科学、数学于一体的科学。这一领域涉及的自然语言即人们日常使用的语言,所以它与语言学的研究也有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
机器学习(Machine Learning,ML),是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科,它专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,机器学习(深度学习)通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
交互式人工智能(Conversational AI,CoAI)是指通过对话、交互体现出来的智能行为,通常智能系统通过与用户或环境进行交互,并在交互中实现学习与建模。主要包括但不限于以下几个方面的研究:泛问答系统,包括自动问答、阅读理解等;任务或目标型的对话系统;开放领域的闲聊系统。其中,泛问答系统旨在从结构化(如知识库、表格)、非结构化(如文档)寻找精确信息回答用户提问;任务或目标型的对话系统,需要通过交互实现一个特定的任务或目标,如各种智能助理、订票、订餐系统等;开放领域的闲聊系统,侧重于和用户闲聊、情感交流与陪护,是社交机器人走进千家万户的重要基础和前提。这些交互式系统不仅仅以自然语言为载体,更是综合应用图像、语音等多媒体信息,使机器能够理解自身所处的环境,表现出符合情境的智能行为。
近年来,随着人工智能技术的飞速发展,各种类型的机器学习模型在图像分类、人脸识别、自动驾驶等领域均取得了较为良好的应用效果。其中,在人机交互领域,可以通过人工智能技术搭建检索式对话模型,基于人机对话实现相关的信息收集和任务处理,该技术被称为交互式人工智能(Conversational AI,CoAI)。
相关技术中,在基于交互式人工智能实现人机交互时,搭建的检索式对话模型在处理单轮次的对话时表现尚可,例如从结构化(如知识库、表格)、非结构化(如文档)寻找精确信息回答用户提问的泛问答系统,能够比较轻松地从海量信息中确认出用户需要的内容。但是,在多轮对话中,要求对话模型预测准确性高,同时要求对话模型具有良好的校准效果。在对话模型中,模型校准是指模型所提供的分数反映其预测不确定性的准确性。在对话模型上通过进行不确定性校准,来避免对话模型对可能回答出错的问题强行给出一个不合理的答案。不合理的答案是错误的决策,而错误的决策往往会比不做出决策或者返回给专家进行决策耗费更多资源。而利用不确定性来进行模型校准的方法存在操作简单但推理时间长的问题,或存在模型体积大、操作复杂、对内存需求大的问题。
为了解决相关技术中的问题,本申请实施例的一个目的在于提供对话模型训练方法、生成方法、训练装置、设备及介质,其通过获取对话信息和多个候选答案,将对话信息和多个候选答案输入至检索式对话模型,对话信息为多个语句组成的对话;对对话信息进行特征提取得到语义特征;对每个候选答案,根据语义特征对候选答案进行分类得到第一概率信息,第一概率信息包括候选答案对于语句为正确答案的概率值,和候选答案对于语句为错误答案的概率值;根据第一概率信息计算检索式对话模型的经验校准误差,根据经验校准误差计算目标损失函数值;根据目标损失值调整检索式对话模型的参数,对检索式对话模型进行迭代训练直至目标损失函数值最小,得到训练好的检索式对话模型;能够在维持对话模型的小体量和高精度的同时,大大提高模型校准效果,提高对话模型的准确性。
本申请实施例提供的一种对话模型训练方法的实施环境如下。该实施环境的软硬件主体主要包括操作终端和服务器,操作终端与服务器通信连接。其中,该检索式对话模型的训练方法可以单独配置于操作终端执行,也可以单独配置于服务器执行,或者基于操作终端与服务器二者之间的交互来执行,具体可以根据实际应用情况进行适当的选择,本实施例对此并不作具体限定。此外,操作终端与服务器可以为区块链中的节点,本实施例对此并不作具体限定。
具体地,本申请中的操作终端可以包括但不限于智能手表、智能手机、电脑、个人数字助理(Personal Digital Assistant,PDA)、智能语音交互设备、智能家电或者车载终端中的任意一种或者多种。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器。操作终端101与服务器102之间可以通过无线网络或有线网络建立通信连接,该无线网络或有线网络使用标准通信技术和/或协议,网络可以设置为因特网,也可以是其它任何网络,例如包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合。
另外,本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
参照图2,图2是对话模型训练方法的流程图。本申请的实施例提供了一种对话模型训练方法,其包括但不限于以下步骤:
步骤S100,获取对话信息和多个候选答案,将对话信息和多个候选答案输入至检索式对话模型,对话信息为多个语句组成的对话;
步骤S200,对对话信息进行特征提取得到语义特征;
步骤S300,对每个候选答案,根据语义特征对候选答案进行分类得到第一概率信息,第一概率信息包括候选答案对于语句为正确答案的概率值,和候选答案对于语句为错误答案的概率值;
步骤S400,根据第一概率信息计算检索式对话模型的经验校准误差,根据经验校准误差计算目标损失函数值;
步骤S500,根据目标损失值调整检索式对话模型的参数,对检索式对话模型进行迭代训练直至目标损失函数值最小,得到训练好的检索式对话模型。
对于步骤S100,在对检索式对话模型进行训练时,获取训练数据。训练数据包括对话信息和多个候选答案。将训练数据输入到检索式对话模型中,对检索式对话模型进行训练。
例如,Ui={u1,u2,…,ut}是由t句话组成的对话信息,Ri={t1,r2,…,rn}是n个候选答案,则将对话信息和候选答案拼接起来,并通过在对话信息和候选答案之间通过[SEP]表示分开,同时为整个句子添加开始标志的字符[CLS],则输入形式为xi={[CLS],u1,u2,...,ut,[SEP],ri}。另外,还有类别标签yi∈{1,2,…,K},在该实施例中,具体地,yi∈{1,2},类别标签有两个,分别为对应1的正确答案标签和对应2的错误答案标签。则模型的输入形式为
可以理解的是,对获取对话信息和多个候选答案的来源渠道不作限定,例如在一些实施例中,第一输入信息可以是从相关的资源服务器中下载得到的,也可以是通过硬件端口传输得到的,或者是通过语音采集及识别设备从环境中获取得到的。
其中,参照图1,图1是检索式对话模型的原理示意图。检索式对话模型的原理如下:检索式对话模型是一个涉及理解、生成、交互等多个方向技术的综合实体。理解即为需要理解对方输出的内容,只有这样才能给与正确的回应。生成即为基于理解的内容,给出合适的结果。交互即为在多轮对话上,需要记录跟踪整个对话过程中涉及的内容。
检索式对话模型包括有中控子模型和多个不同的子交互模型。例如,检索式对话模型包括有三个子交互模型,分别为子交互模型A、子交互模型B和子交互模型C,实际的检索式对话模型中,子交互模型的个数可以是任意大于或者等于2的整数。在检索式对话模型中,各个子交互模型用于对输入信息进行交互预测,得到每个子交互模型对应给出的交互信息。一般来说,交互过程主要以语句对话的形式完成,即输入信息中可以包括有多个语句,对于每个输入的语句来说,各个子交互模型均可以给出对应的交互语句。输入信息按照交互的顺序,依次包括有语句S1、语句S2和语句S3,子交互模型A、子交互模型B和子交互模型C分别针对这些输入的语句给出了对应的交互内容,其中,子交互模型A对于语句S1的交互内容为语句A1,对于语句S2的交互内容为语句A2,对于语句S3的交互内容为语句A3,子交互模型B和子交互模型C类似,在此不再赘述。中控子模型用于根据输入信息中的语句,从各个子交互模型A、子交互模型B和子交互模型C给出的交互内容中选择合适的语句,作为检索式对话模型对于输入信息的交互输出。例如,对于输入信息中的语句S1,中控子模型选择了子交互模型B输出的语句B1,对于输入信息中的语句S2,中控子模型选择了子交互模型C输出的语句C2,对于输入信息中的语句S3,中控子模型选择了子交互模型A输出的语句A3作为交互内容,从而可以形成“语句S1-语句B1-语句S2-语句C2-语句S3-语句A3”的多轮连续对话。
以上是对本申请中检索式对话模型的组成结构和应用原理进行的简要说明,在该检索式对话模型中,中控子模型和各个子交互模型均可以基于人工智能领域内的机器学习算法搭建,本申请中对中控子模型和各个子交互模型所选用的机器学习模型结构不作限定。
需要说明的是,为了良好地模拟正常的交互过程,本申请中的中控子模型在选择输入语句对应的子交互模型的输出语句时,可以综合之前的交互内容确定输出语句。对于输入的语句S2来说,中控子模型可以同时考虑语句S2之前的对话“语句S1-语句B1”,再结合语句S2的内容,从而确定出输出语句。当然,为了减轻数据处理的压力,可以设定中控子模型基于当前输入语句和之前的若干轮次的交互内容,确定本次的输出语句,具体的轮次可以根据需要灵活设定。
需要说明的是,本申请实施例中的检索式对话模型中的各个组成部分,既可以集成设置在一处,也可以采用分布式布局,例如检索式对话模型中的子交互模型可以为区块链中的节点,本实施例对此并不作具体限定。
对于步骤S200,对对话信息进行特征提取得到语义特征,可以通过语义特征提取模型实现。
在一些实施例中,通过BERT(Bidirectional Encoder Representations fromTransformer)模型对对话信息进行特征提取得到语义特征。
BERT模型是基于Transformer的双向编码器的语言表征模型。采用MLM(maskedlanguage model)对双向的Transformers进行预训练,以致能生成深度的双向语言表征。BERT模型的目标是利用大规模无标注语料训练获得文本的包含丰富语义信息的语义特征。
BERT模型的主要模型结构为Transformer的堆叠。Transformer是组成BERT模型的核心模块,而注意力机制又是Transformer中最关键的部分。
注意力机制的主要作用是让神经网络将关注点放在一部分输入上,即区分输入的不同部分对输出的影响。为了有区分地利用上下文字信息增强目标字的语义表示,BERT模型用到了注意力机制。
在BERT模型中,将目标字作为Query、其上下文的各个字作为Key,并将Query与各个Key的相似性作为权重,把上下文各个字的Value融入目标字的原始Value中。注意力机制将目标字和上下文各个字的语义向量表示作为输入,首先通过多次线性变换获得目标字的Query向量表示、上下文各个字的Key向量表示以及目标字与上下文各个字的原始Value表示,增强模型的表达能力,然后计算Query向量与各个Key向量的相似度作为权重,加权融合目标字的Value向量和各个上下文字的Value向量,即目标字的增强语义向量表示。另外,利用不同的Self-Attention模块获得文本中每个字在不同语义空间下的增强语义向量,并将每个字的多个增强语义向量进行线性组合,从而获得一个最终的与原始字向量长度相同的增强语义向量,并将模块的输入与该增强语义向量相加实现残差连接,并作为注意力模块的最终输出,其最终输出在形式上与输入是完全相同的。即输入为一维向量,则输出同样为一维向量,语义相近的字/词在特征向量空间上的距离会比较接近,如此一来,由字/词向量转换而来的文本向量也能够包含更为准确的语义信息。因此,BERT模型的主要输入是对话信息中各个字/词的原始词向量,该向量既可以随机初始化,也可以利用Word2Vector等算法进行预训练以作为初始值;输出是文本中各个字/词融合了全文语义信息后的向量表示。
在输入到BERT模型前,可以对对话信息先通过分词器进行分词处理。BERT模型的输入部分是个线性序列,两个句子通过分隔用的标识符号分割,最前面和最后面增加两个标识开头和结尾的标识符号。每个单词有三个位置信息,这是因为自然语言处理中单词顺序是很重要的特征,需要在这里对位置信息进行编码。三个位置信息分别为公共子词单元位置信息、单词位置信息和句子位置信息。公共子词位置信息是单词本身的向量表示,将单词划分成一组有限的公共子词单元,能在单词的有效性和字符的灵活性之间取得一个折中的平衡。单词位置信息将单词的位置信息编码成特征向量。句子位置信息用于区分两个句子的向量表示。BERT模型的输入是由该三种不同的位置信息求和而成。
BERT模型的最终输出由四部分组成,分别为模型最后一层输出的隐藏状态、序列的第一个公共子词单元的最后一层的隐藏状态、模型各层的隐藏状态和注意力模块的输出。
即将对话信息输入至BERT模型,BERT模型输出与对话信息维度相同的语义特征。
参照图3,图3是步骤S300的流程图。对于步骤S300,通过证据神经网络(evidential neural network,ENN)对候选答案进行K分类问题处理。
根据语义特征对候选答案进行分类得到第一概率信息,包括但不限于以下步骤:
步骤S310,根据语义特征进行证据提取,得到候选答案被分类到每个类别的证据信息,类别包括正确答案和错误答案;证据信息包括候选答案被分类为正确答案的证据,和候选答案被分类为错误答案的证据;
步骤S320,根据证据信息得到第一概率信息。
参照图4,图4是步骤S320的流程图。对于步骤S320,根据证据信息得到第一概率信息,包括但不限于以下步骤:
步骤S321,根据证据信息计算狄利克雷强度和每个类别的概率参数;
步骤S322,根据概率参数和狄利克雷强度,得到第一概率信息。
参照图5,图5是步骤S321的流程图。对于步骤S321,根据证据信息计算狄利克雷强度和每个类别的概率参数,包括:
步骤S3211,通过激活函数对每个类别的证据信息进行映射,得到每个类别的证据映射值,证据映射值为非负数;
步骤S3212,根据证据映射值与预设数值之和计算每个类别的概率参数;
步骤S3213,根据所有类别的概率参数之和计算狄利克雷强度。
对于多元分类问题,其有K个标签。在本申请中,K为2,即标签有两个,分别为正确答案标签和错误答案标签。对于候选答案,预测输出概率P=[p1,p2]。为每个标签所属的概率赋予一个信念质量,信念质量表示为B={b1,b2};同时为其提供一个总体的不确定度质量u来考虑一个k个相互排斥的单例(例如类别标签)的框架,信念质量和不确定度满足。并且bk和u都是非负的。
通过证据神经网络引入证据,证据定义为一种衡量从数据中收集到支持将样本分类到某一类的支持量。在步骤S310中,根据语义特征进行证据提取,得到候选答案被分类到每个类别的证据信息,证据信息包括候选答案被分类为正确答案的证据,和候选答案被分类为错误答案的证据。即在步骤S310中从语义特征中提取出支持将候选答案分类为正确答案的支持量和支持将候选答案被分类为错误答案的另一支持量。
对于步骤S320,通过激活函数对每个类别的证据信息进行映射,得到每个类别的证据映射值。具体地,激活函数采用softmax函数,以将证据信息归一化至区间[0,1]上。
证据映射值表示为E={ei1,ei2},eik表示为对于第i个候选答案,从第k个类别标签导出的证据映射值。信念质量的分配符合αik=eik+1的狄利克雷分布,αik可以表示每个类别的概率参数,1为预设数值。
标准神经网络分类器的输出是对每个样本的可能类进行概率分配。然而,证据参数化的狄利克雷分布代表了每个这样的概率分配的密度;因此,它模拟了二阶概率和不确定性。由K个参数α=[α1,α2,…,αK]的狄利克雷分布的密度函数表示为:其中SK是K维度的单元锥形;B(α)为K维度的beta函数。
参照图6,图6是步骤S400的流程图。对于步骤S400,该步骤为计算检索式对话模型的总体的目标损失函数值。其中目标损失函数值包括经验校准误差损失函数值和交叉熵损失函数值,目标损失函数值为两者之和。
则根据第一概率信息计算检索式对话模型的经验校准误差,根据经验校准误差计算目标损失函数值,包括但不限于以下步骤:
步骤S410,根据第一概率信息计算检索式对话模型的经验校准误差,根据经验校准误差计算经验校准误差损失函数值;
步骤S420,根据第一概率信息计算检索式对话模型的交叉熵损失函数值;
步骤S430,将经验校准误差损失函数值和交叉熵损失函数值之和作为目标损失函数值。
对于步骤S410,经验校准误差(Empirical Calibration Error,ECE)是常用的衡量校准的指标,计算样本间平均预测置信度和平均准确率的绝对差的加权平均值,通常将样本预测的概率值当做样本对预测的置信度。经验校准误差将[0,1]区间分为M个小区间,每个区间中的数量为Bi,总的样本个数为N,则经验校准误差可以表示为
对于候选答案样本xi在第k个类别上得到的预测概率值为pik,通过映射函数u将其映射为一个M维的向量v=[v1,v2,…,vM],并使其满足条件令ρj表示每个区间的中点值,T是温度参数。因此通过可以将预测概率值pik映射为向量。为了保证值在[0,1]之间,通过softmax激活函数对进行映射。
则经验校准误差损失函数值通过以下式子表示: i∈[1,n]且i为整数,j∈[1,M]且j为整数;其中,LECE表示经验校准误差损失函数值,T表示温度参数,n表示语句的数量,M表示由第一概率信息所映射成的区间的数量,Aj表示第j个区间内的准确率,pik表示候选答案对于第i个语句被分类为第k个类别的概率值,ρj为第j个区间的中点值,T表示温度参数。
对于步骤S420,证据神经网络是基于证据理论的深度证据学习(evidential deeplearning,EDL),在建模不确定性时无需复杂的后验概率估计,也无需多次蒙特卡洛采样,因此计算效率极高。EDL的基本假设是,模型输出的分类概率服从狄利克雷分布先验,通过最大化观测数据的概率似然,可以利用深度学习模型得到输出分类概率的后验分布。根据概率统计,分类概率的似然函数服从多项式分布,而在贝叶斯框架下,狄利克雷先验属于多项式分布的共轭先验,也即后验分布仍然服从狄利克雷分布。因此,证据神经网络直接学习狄利克雷后验分布的分布参数,类的分类概率被视为从分布中的采样。这样,证据神经网络能直接学习到了分类概率的不确定性。
结合Dempster-Shafer证据理论和主观逻辑(subjective logic)的观点,基于狄利克雷假设的分类识别模型,本质上是一种基于证据的类的分类系统。为了最大化观测数据的似然,训练过程中计算并最小化交叉熵损失函数值。最小化这一交叉熵损失函数值,等价于最大限度地收集证据以支持正确的分类。具体地,交叉熵损失函数值表示为:
对于步骤S430,将经验校准误差损失函数值和交叉熵损失函数值相加得到目标损失函数值,则目标损失函数值表示为:L=LEDL+LECE。
对于步骤S500,根据目标损失值调整检索式对话模型的参数。对检索式对话模型进行迭代训练,进而不断调整该检索式对话模型的参数。训练检索式对话模型直至检索式对话模型的目标损失函数值最小,此时训练检索式对话模型的参数最优,得到训练好的检索式对话模型。
参照图7,图7是对话生成方法的流程图。为实现上述目的,本申请的实施例提供了一种对话生成方法,包括但不限于以下步骤:
步骤S610,将当前对话信息输入至检索式对话模型,检索式对话模型是根据上述的对话模型训练方法训练得到;
步骤S620,检索式对话模型根据当前对话信息得到第二概率值,第二概率值为预设的所有候选答案对于当前对话信息为正确答案的概率值;
步骤S630,检索式对话模型根据第二概率值对所有候选答案进行排序,并将第二概率值最大的候选答案作为目标答案输出。
对于步骤S610,用户通过输入设备输入当前对话信息,输入设备可以是键盘、虚拟键盘、触摸屏、麦克风等设备。然后将当前对话信息输入至已训练好的检索式对话模型。
对于步骤S620,多个候选答案为预先存储的,候选答案可以存储在检索式对话模型中,候选答案也可以是检索式对话模型从外部存储器中读取的。
参照上述流程,检索式对话模型利用BERT模型对当前对话信息进行语义特征提取,得到语义特征。然后检索式对话模型利用证据神经网络根据语义特征对候选答案进行分类得到多个第二概率值,每个第二概率值对应每个候选答案对于当前对话信息为正确答案的概率值。
对于步骤S630,根据第二概率值对所有候选答案进行排序,可以是按照第二概率值的数值大小从大至小将所有候选答案进行排序,也可以是按照第二概率值的数值大小从小至大将所有候选答案进行排序;并选出第二概率值最大的候选答案。检索式对话模型通过输出层将最大第二概率值所对应的候选答案作为目标答案输出。
在该实施例中,该对话生成方法通过检索式对话模型能快速得到准确的目标答案,鲁棒性强。
参照图8,图8是对话模型训练装置的结构图。为实现上述目的,本申请的实施例还提供了一种对话模型训练装置。对话模型训练装置包括输入模块710、语义特征提取模块720、分类模块730、损失函数计算模块740和迭代训练模块750。
其中,输入模块710用于将对话信息和多个候选答案输入至检索式对话模型,对话信息为多个语句组成的对话;语义特征提取模块720用于对对话信息进行特征提取得到语义特征;分类模块用于对每个候选答案,根据语义特征对候选答案进行分类得到第一概率信息,第一概率信息包括候选答案对于语句为正确答案的概率值,和候选答案对于语句为错误答案的概率值;损失函数计算模块730用于根据第一概率信息计算检索式对话模型的经验校准误差,根据经验校准误差计算目标损失函数值;参数调整模块740用于根据目标损失函数值调整检索式对话模型的参数;迭代训练模块750用于对检索式对话模型进行迭代训练直至目标损失函数值最小,得到训练好的检索式对话模型。
可以理解的是,检索式对话模型的训练方法实施例中的内容均适用于本检索式对话模型的训练装置实施例中,本检索式对话模型的训练装置实施例所具体实现的功能与检索式对话模型的训练方法实施例相同,并且达到的有益效果与检索式对话模型的训练方法实施例所达到的有益效果也相同。
参照图9,图9是电子设备的结构图。为实现上述目的,本申请实施例还提供了一种电子设备,电子设备包括存储器820、处理器810、存储在存储器820上并可在处理器810上运行的程序以及用于实现处理器810和存储器820之间的连接通信的数据总线830,程序被处理器810执行时实现上述的对话模型训练方法,或者对话生成方法。
存储器820作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如上述本发明实施例中的对话模型训练方法,或者对话生成方法。处理器810通过运行存储在存储器820中的非暂态软件程序以及程序,从而实现上述本发明实施例中的对话模型训练方法,或者对话生成方法。
存储器820可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述本发明实施例中的对话模型训练方法,或者对话生成方法所需的数据等。此外,存储器820可以包括高速随机存取存储器820,还可以包括非暂态存储器820,例如至少一个磁盘存储器820件、闪存器件、或其他非暂态固态存储器820件。在一些实施方式中,存储器820可选包括相对于处理器810远程设置的存储器820,这些远程存储器820可以通过网络连接至该终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
为实现上述目的,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使计算机执行上述的对话模型训练方法,或者对话生成方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
尽管已经示出和描述了本申请的实施方式,本领域的普通技术人员可以理解:在不脱离本申请的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本申请的范围由权利要求及其等同物限定。
以上是对本申请的较佳实施进行了具体说明,但本申请并不限于实施例,熟悉本领域的技术人员在不违背本申请精神的前提下可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
在本说明书的描述中,参考术语“一个实施方式”、“另一实施方式”或“某些实施方式”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
Claims (10)
1.一种对话模型训练方法,其特征在于,包括:
获取对话信息和多个候选答案,将所述对话信息和多个候选答案输入至检索式对话模型,所述对话信息为多个语句组成的对话;
对所述对话信息进行特征提取得到语义特征;
对每个所述候选答案,根据所述语义特征对所述候选答案进行分类得到第一概率信息,所述第一概率信息包括所述候选答案对于所述语句为正确答案的概率值,和所述候选答案对于所述语句为错误答案的概率值;
根据所述第一概率信息计算所述检索式对话模型的经验校准误差,根据所述经验校准误差计算目标损失函数值;
根据所述目标损失函数值调整所述检索式对话模型的参数,对所述检索式对话模型进行迭代训练直至所述目标损失函数值最小,得到训练好的检索式对话模型。
2.根据权利要求1所述的对话模型训练方法,其特征在于,所述根据所述语义特征对所述候选答案进行分类得到第一概率信息,包括:
根据所述语义特征进行证据提取,得到所述候选答案被分类到每个类别的证据信息,所述类别包括正确答案和错误答案;所述证据信息包括所述候选答案被分类为所述正确答案的证据,和所述候选答案被分类为所述错误答案的证据;
根据所述证据信息得到所述第一概率信息。
3.根据权利要求2所述的对话模型训练方法,其特征在于,所述根据所述证据信息得到所述第一概率信息,包括:
根据所述证据信息计算狄利克雷强度和每个类别的概率参数;
根据所述概率参数和所述狄利克雷强度,得到所述第一概率信息。
4.根据权利要求3所述的对话模型训练方法,其特征在于,所述根据所述证据信息计算狄利克雷强度和每个类别的概率参数,包括:
通过激活函数对每个类别的所述证据信息进行映射,得到每个类别的证据映射值,所述证据映射值为非负数;
根据所述证据映射值与预设数值之和计算每个类别的概率参数;
根据所有类别的所述概率参数之和计算狄利克雷强度。
5.根据权利要求1所述的对话模型训练方法,其特征在于,所述根据所述第一概率信息计算所述检索式对话模型的经验校准误差,根据所述经验校准误差计算目标损失函数值,包括:
根据所述第一概率信息计算所述检索式对话模型的经验校准误差,根据所述经验校准误差计算经验校准误差损失函数值;
根据所述第一概率信息计算所述检索式对话模型的交叉熵损失函数值;
将所述经验校准误差损失函数值和所述交叉熵损失函数值之和作为所述目标损失函数值。
7.一种对话生成方法,其特征在于,包括:
获取当前对话信息,将所述当前对话信息输入至检索式对话模型,所述检索式对话模型是根据如权利要求1至6任一项的对话模型训练方法训练得到;
所述检索式对话模型根据所述当前对话信息得到第二概率值,所述第二概率值为预设的所有候选答案对于所述当前对话信息为正确答案的概率值;
所述检索式对话模型根据所述第二概率值对所有所述候选答案进行排序,并将所述第二概率值最大的所述候选答案作为目标答案输出。
8.一种对话模型训练装置,其特征在于,包括:
输入模块,用于将对话信息和多个候选答案输入至检索式对话模型,所述对话信息为多个语句组成的对话;
语义特征提取模块,用于对所述对话信息进行特征提取得到语义特征;
分类模块,用于对每个所述候选答案,根据所述语义特征对所述候选答案进行分类得到第一概率信息,所述第一概率信息包括所述候选答案对于所述语句为正确答案的概率值,和所述候选答案对于所述语句为错误答案的概率值;
损失函数计算模块,用于根据所述第一概率信息计算所述检索式对话模型的经验校准误差,根据所述经验校准误差计算目标损失函数值;
参数调整模块,用于根据所述目标损失函数值调整所述检索式对话模型的参数;
迭代训练模块,用于对所述检索式对话模型进行迭代训练直至所述目标损失函数值最小,得到训练好的检索式对话模型。
9.一种电子设备,其特征在于,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,所述程序被所述处理器执行时实现如权利要求1至6任一项所述的对话模型训练方法,或者如权利要求7所述的对话生成方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至6任一项所述的对话模型训练方法,或者如权利要求7所述的对话生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210820808.9A CN115080702A (zh) | 2022-07-13 | 2022-07-13 | 对话模型训练方法、生成方法、训练装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210820808.9A CN115080702A (zh) | 2022-07-13 | 2022-07-13 | 对话模型训练方法、生成方法、训练装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115080702A true CN115080702A (zh) | 2022-09-20 |
Family
ID=83260269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210820808.9A Pending CN115080702A (zh) | 2022-07-13 | 2022-07-13 | 对话模型训练方法、生成方法、训练装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115080702A (zh) |
-
2022
- 2022-07-13 CN CN202210820808.9A patent/CN115080702A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107798140B (zh) | 一种对话系统构建方法、语义受控应答方法及装置 | |
CN112131350B (zh) | 文本标签确定方法、装置、终端及可读存储介质 | |
CN112163165A (zh) | 信息推荐方法、装置、设备及计算机可读存储介质 | |
CN111666376B (zh) | 一种基于段落边界扫描预测与词移距离聚类匹配的答案生成方法及装置 | |
CN110750998B (zh) | 一种文本输出方法、装置、计算机设备和存储介质 | |
CN112131883A (zh) | 语言模型训练方法、装置、计算机设备和存储介质 | |
CN111368082A (zh) | 一种基于层次网络的领域自适应词嵌入的情感分析方法 | |
CN112131345B (zh) | 文本质量的识别方法、装置、设备及存储介质 | |
CN110597968A (zh) | 一种回复选择方法及装置 | |
CN115310551A (zh) | 文本分析模型训练方法、装置、电子设备和存储介质 | |
CN113392265A (zh) | 多媒体处理方法、装置及设备 | |
CN113392640A (zh) | 一种标题确定方法、装置、设备及存储介质 | |
CN113342958A (zh) | 问答匹配方法、文本匹配模型的训练方法和相关设备 | |
CN115408488A (zh) | 用于小说场景文本的分割方法及系统 | |
CN114239730A (zh) | 一种基于近邻排序关系的跨模态检索方法 | |
CN113934835A (zh) | 结合关键词和语义理解表征的检索式回复对话方法及系统 | |
CN114282528A (zh) | 一种关键词提取方法、装置、设备及存储介质 | |
CN117828024A (zh) | 一种插件检索方法、装置、存储介质及设备 | |
CN112989803A (zh) | 一种基于主题向量学习的实体链接模型 | |
CN116757195A (zh) | 一种基于提示学习的隐性情感识别方法 | |
CN116186220A (zh) | 信息检索方法、问答处理方法、信息检索装置及系统 | |
CN117216617A (zh) | 文本分类模型训练方法、装置、计算机设备和存储介质 | |
CN115391534A (zh) | 文本情感原因识别方法、系统、设备及存储介质 | |
CN115080702A (zh) | 对话模型训练方法、生成方法、训练装置、设备及介质 | |
CN117521674B (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 |