掌桥专利:专业的专利平台
掌桥专利
首页

模型训练方法、装置及意图识别方法、装置

文献发布时间:2023-06-19 09:55:50


模型训练方法、装置及意图识别方法、装置

技术领域

本发明涉及计算机技术领域,特别是涉及一种模型训练方法、装置及意图识别方法、装置。

背景技术

随着深度学习技术的快速发展,越来越多的传统行业被人工智能改变。人工智能会话场景是一个非常受欢迎的领域,因此吸引了众多研究者。对用户意图进行识别是很多智能会话场景的重要任务,它是信息检索、问答系统等很多应用的核心,准确识别用户意图,能够增强用户的体验感。

意图识别是指通过分析用户当前的对话语句,利用机器学习、深度学习、自然语言处理等技术自动判断用户意图的过程。目前意图识别的做法主要包含基于特征工程、基于深度学习的方法。

发明人在实现本发明的过程中发现有意图识别方案存在识别准确度不够高的问题。具体分析如下:

基于特征工程的方法需要大量的、繁琐的人工操作去提取语句特征。但是,采用人工提取的方式,很难提取到全面的、有效地特征,从而影响该类方法的识别准确性。并且,由于提取的特征不容易扩展,难以具备良好的泛化性。

基于深度学习的方法可以自动地提取有效特征,然而,在很多实际的会话场景(如客服场景)下,用户意图类型数量规模比较大,并且意图类别的数量分布极其不平衡。此种场景下,用户意图往往频繁出现在部分头部意图类别中,例如,客服场景下的“配送周期”、“什么时间出库”、“售后商品使用问题”等意图类别。而对于一些长尾意图类别(即出现频次很低的意图类别),比如“分包少件发货形式”、“什么是京贴”等,会由于出现频次很低,而导致这些类别意图的样本数据量比较少,这样,就会导致所训练得到的意图识别模型对低频次意图识别的准确性较低,进而降低基于深度学习意图识别方法的整体识别准确度。

发明内容

有鉴于此,本发明的主要目的在于提供一种模型训练方法、装置及意图识别方法、装置,可以提高意图识别准确度。

为了达到上述目的,本发明实施例提出的技术方案为:

一种模型训练方法,包括:

获取历史会话数据;

基于所述历史会话数据中的每个用户语句,生成该用户语句对应的训练样本;

利用所述训练样本,训练预先构建的意图识别模型,得到目标意图识别模型;其中,在利用每条训练样本进行所述训练时,在基于训练样本生成低层胶囊序列之后,采用自注意力动态路由方法,生成高层胶囊序列,将所述高层胶囊序列输入至全连接层处理。

在一个实施方式中,所述生成该用户语句对应的训练样本包括:

为所述用户语句,生成训练文本;

基于所述训练文本,生成词序列;

根据预设的意图类别集合,确定与所述用户语句相匹配的意图类别;

基于所述词序列和所述意图类别,生成所述用户语句对应的训练样本。

在一个实施方式中,所述生成训练文本包括:

如果所述用户语句为所述历史会话数据中的第一个用户语句,则将所述用户语句作为训练文本;否则,将所述用户语句与在所述用户语句之前的预设数量用户语句组合,得到所述训练文本。

在一个实施方式中,利用每条所述训练样本,进行所述训练包括:

将所述训练样本的词序列,转化为词向量序列;

将所述词向量序列,输入双向长短时记忆网络,并根据输出结果,生成低层胶囊序列;

基于所述低层胶囊序列,采用自注意力动态路由方法,生成高层胶囊序列;

将所述高层胶囊序列执行拉平操作后输入至全连接层,并生成输出结果的概率分布值;

基于所述概率分布值,生成模型损失函数值;

根据所述模型损失函数值和相应训练样本的意图类别标签,调整所述意图识别模型的网络参数。

在一个实施方式中,所述根据输出结果,生成低层胶囊序列包括:

按照

其中,

在一个实施方式中,所述采用自注意力动态路由方法,生成高层胶囊序列包括:

利用所述低层胶囊序列,按照

W

利用所述a

其中,v={v

本发明实施例还公开了一种意图识别方法,包括:

获取目标文本;

基于所述目标文本,生成词序列;

基于所述词序列,利用预先训练的意图识别模型,确定所述目标文本的意图类别;

其中,所述意图识别模型采用如上所述模型训练方法训练得到。

一种模型训练装置,包括:

数据获取单元,用于获取历史会话数据;

训练样本生成单元,用于基于所述历史会话数据中的每个用户语句,生成该用户语句对应的训练样本;

训练单元,用于利用所述训练样本,训练预先构建的意图识别模型,得到目标意图识别模型;其中,在利用每条训练样本进行所述训练时,在基于训练样本生成低层胶囊序列之后,采用自注意力动态路由方法,生成高层胶囊序列,将所述高层胶囊序列输入至全连接层处理。

在一个实施方式中,所述训练单元,具体用于利用每条所述训练样本,进行所述训练,包括:

将所述训练样本的词序列,转化为词向量序列;

将所述词向量序列,输入双向长短时记忆网络,并根据输出结果,生成低层胶囊序列;

基于所述低层胶囊序列,采用自注意力动态路由方法,生成高层胶囊序列;

将所述高层胶囊序列执行拉平操作后输入至全连接层,并生成输出结果的概率分布值;

基于所述概率分布值,生成模型损失函数值;

根据所述模型损失函数值和相应训练样本的意图类别标签,调整所述意图识别模型的网络参数。

在一个实施方式中,所述训练单元,具体用于根据输出结果,生成低层胶囊序列,包括:

按照

其中,

在一个实施方式中,所述训练单元,具体用于采用自注意力动态路由方法,生成高层胶囊序列,包括:

利用所述低层胶囊序列,按照

W

利用所述a

其中,v={v

本发明实施例公开了一种意图识别装置,包括:

文本获取单元,用于获取目标文本;

文本处理单元,用于基于所述目标文本,生成词序列;

意图识别单元,用于基于所述词序列,利用预先训练的意图识别模型,确定所述目标文本的意图类别;

其中,所述意图识别模型采用如上所述模型训练方法训练得到。

本发明实施例公开了一种模型训练设备,包括处理器和存储器;

所述存储器中存储有可被所述处理器执行的应用程序,用于使得所述处理器执行如上所述的模型训练方法。

本发明实施例公开了一种计算机可读存储介质,其中存储有计算机可读指令,该计算机可读指令用于执行如上所述的模型训练方法。

本发明实施例公开了一种意图识别设备,包括处理器和存储器;

所述存储器中存储有可被所述处理器执行的应用程序,用于使得所述处理器执行如上所述的意图识别方法。

本发明实施例公开了一种计算机可读存储介质,其中存储有计算机可读指令,该计算机可读指令用于执行如上所述的意图识别方法。

由上述技术方案可见,本发明提出的模型训练方法、装置及意图识别方法、装置,在进行模型训练时,在基于训练样本生成低层胶囊序列之后,采用自注意力动态路由方法,生成高层胶囊序列,将所述高层胶囊序列输入至全连接层处理。如此,低层胶囊序列通过动态路由方法得到高层胶囊序列,高层胶囊序列为模型从训练文本里学习到的高层泛化特征,该特征对低频意图识别非常有效,因此,采用本发明实施例,可以在一定程度上缓解低频意图识别精确度低的问题,从而可以有效地提升意图识别准确度。

附图说明

图1为本发明实施例一的方法流程示意图;

图2为本发明实施例二的方法流程示意图;

图3为本发明实施例三的装置结构示意图;

图4为本发明实施例四的装置结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。

图1为本发明实施例的流程示意图,如图1所示,该实施例实现的模型训练方法主要包括:

步骤101、获取历史会话数据。

本步骤用于获取历史会话数据,以便在后续步骤中生成用于模型训练的训练样本。

步骤102、基于所述历史会话数据中的每个用户语句,生成该用户语句对应的训练样本。

本步骤中,基于历史会话数据中的每个用户语句,生成每个用户语句对应的训练样本。具体地,每条训练样本将包括一词序列和相应用户语句的意图类别标签。

在一个实施方式中,为了提高模型对意图识别的准确性,可以采用下述步骤a1~a4生成该用户语句对应的训练样本:

步骤a1、为所述用户语句,生成训练文本。

在一个实施方式中,可以采用下述方法,为每个用户语句生成相应的训练文本:

如果所述用户语句为所述历史会话数据中的第一个用户语句,则将所述用户语句作为训练文本;否则,将所述用户语句与在所述用户语句之前的预设数量用户语句组合,得到所述训练文本。

上述方法中,对于历史会话数据中第二个用户语句之后各用户语句,将利用该用户语句之前的历史用户语句,与该用户语句相组合,得到所述训练文本,即结合用户语句的上文,生成相应的训练文本,如此,可以使得训练文本包含更多的上下文信息,有利用模型从相应的训练样本中提取出更泛化的特征,从而可以提高所训练的模型的意图识别准确性。

具体地,本领域技术人员可根据实际需要,选择进行组合的历史用户语句数量,例如,可以将当前用户语句的上一相邻用户语句与当前用户语句相组合,得到一训练文本。

步骤a2、基于所述训练文本,生成词序列。

在一个实施方式中,具体可以采用下述方法生成词序列:

步骤a21、去除所述训练文本中与语义无关的标点符号。

步骤a22、对所述去除的结果分词,得到所述训练文本的词序列。

本步骤可采用现有的分词方法实现,在此不再赘述。

步骤a3、根据预设的意图类别集合,确定与所述用户语句相匹配的意图类别。

在一个实施方式中,具体可以将用户语句与预设的意图类别集合中的意图类别进行匹配,得到与该用户语句相匹配的意图类别。

步骤a4、基于所述词序列和所述意图类别,生成所述用户语句对应的训练样本。

本步骤中,将利用用户语句的词序列和意图类别,构建一条训练样本。

步骤103、利用所述训练样本,训练预先构建的意图识别模型,得到目标意图识别模型。其中,在利用每条训练样本进行所述训练时,在基于训练样本生成低层胶囊序列之后,采用自注意力动态路由方法,生成高层胶囊序列,将所述高层胶囊序列输入至全连接层处理。

本步骤中,通过在利用每条训练样本进行所述训练时,在基于训练样本生成低层胶囊序列之后,采用自注意力动态路由方法,生成高层胶囊序列,可以从训练样本里学习到高层泛化特征,该特征对低频意图识别非常有效,从而可以在一定程度上缓解低频意图识别精确度低的问题,进而可以有效地提升意图识别准确度。

在一个实施方式中,可以采用下述步骤x1~x6,利用每条训练样本对训练模型进行训练:

步骤x1、将所述训练样本的词序列,转化为词向量序列。

在一个实施方式中,可以采用利用词序列word2vec工具在公开语料训练得到的词向量,将事实描述文本词序列中的每个词映射为其对应的词向量,从而得到当前训练样本的词序列所对应的词向量序列。

步骤x2、将所述词向量序列,输入双向长短时记忆网络,并根据输出结果,生成低层胶囊序列。

在一个实施方式中,具体可以采用下述方法根据输出结果,生成低层胶囊序列:

按照

其中,

具体地,词向量序列中的每个词向量,将依次输入至双向长短时记忆网络(Bi-LSTM)处理。

双向长短时记忆网络具体可以采用下述公式对词向量序列u={u

其中f

对于后向隐藏状态值

步骤x3、基于所述低层胶囊序列,采用自注意力动态路由方法,生成高层胶囊序列。

在一个实施方式中,可以采用下述方法利用自注意力动态路由方法,生成高层胶囊序列:

步骤x31、利用所述低层胶囊序列,按照

W

步骤x32、利用所述a

其中,v={v

上述方法利用自注意力动态路由方法,来生成高层胶囊序列,如此,可以从训练样本中提取出更泛化的特征,从而可以有效克服低频次意图类别的样本数量少而导致的低频意图识别精确度低的问题。

步骤x4、将所述高层胶囊序列执行拉平操作后输入至全连接层,并生成输出结果的概率分布值。

本步骤中,对所述高层胶囊序列执行拉平操作,是为了获得1×R维的序列,以便可以输入至全连接层,其中R=n×m。

在一个实施方式中,可以利用softmax函数,生成所述全连接层的输出结果的概率分布值。

步骤x5、基于所述概率分布值,生成模型损失函数值。

在一个实施方式中,可以利用focal loss损失函数,即按照

其中,

在一个实施方式中,还可以利用交叉熵,基于所述概率分布值,生成模型损失函数值。具体方法为本领域技术人员所掌握,在此不再赘述。

步骤x6、根据所述模型损失函数值和相应训练样本的意图类别标签,调整所述意图识别模型的网络参数。

本步骤中,将基于所述模型损失函数值和相应训练样本的意图类别标签,对意图识别模型的网络参数进行调整,从而以最小化损失函数值为目标,对模型进行优化。具体地,可以采用Adam优化器对模型的网络参数进行优化。

与上述实施例一的模型训练方法相对应,本发明实施例二公开了一种意图识别方法,如图2所示包括:

步骤201、获取目标文本。

本步骤用于获取当前需要进行意图识别的目标文本。

步骤202、基于所述目标文本,生成词序列。

本步骤中生成词序列的方法同上述实施例一步骤1022中生成词序列的方法相同,在此不再赘述。

步骤203、基于所述词序列,利用预先训练的意图识别模型,确定所述目标文本的意图类别。

其中,所述意图识别模型采用上述实施例一中模型训练方法训练得到。

本步骤中,将使用的意图识别模型是采用上述实施例一中的方法训练得到、如上述方法实施例一中所述,该模型在训练时采用自注意力动态路由方法,生成高层胶囊序列,将高层胶囊序列输入至全连接层处理,有效提升了意图识别准确度,因此,本步骤采用意图识别模型对目标文本的意图类型进行识别,可以获得较高的意图识别准确性。

与上述实施例一的模型训练方法相对应,本发明实施例三公开了一种模型训练装置,如图3所示,该装置包括:

数据获取单元301,用于获取历史会话数据;

训练样本生成单元302,用于基于所述历史会话数据中的每个用户语句,生成该用户语句对应的训练样本;

训练单元303,用于利用所述训练样本,训练预先构建的意图识别模型,得到目标意图识别模型;其中,在利用每条训练样本进行所述训练时,在基于训练样本生成低层胶囊序列之后,采用自注意力动态路由方法,生成高层胶囊序列,将所述高层胶囊序列输入至全连接层处理。

在一个实施方式中,所述训练单元303,具体用于利用每条所述训练样本,进行所述训练,包括:

将所述训练样本的词序列,转化为词向量序列;

将所述词向量序列,输入双向长短时记忆网络,并根据输出结果,生成低层胶囊序列;

基于所述低层胶囊序列,采用自注意力动态路由方法,生成高层胶囊序列;

将所述高层胶囊序列执行拉平操作后输入至全连接层,并生成输出结果的概率分布值;

基于所述概率分布值,生成模型损失函数值;

根据所述模型损失函数值和相应训练样本的意图类别标签,调整所述意图识别模型的网络参数。

在一个实施方式中,所述训练单元303,具体用于根据输出结果,生成低层胶囊序列,包括:

按照

其中,

在一个实施方式中,所述训练单元303,具体用于采用自注意力动态路由方法,生成高层胶囊序列,包括:

利用所述低层胶囊序列,按照

W

利用所述a

其中,v={v

与上述实施例二的意图识别方法相对应,本发明实施例四公开了本发明实施例公开了一种意图识别装置,如图4所示,该装置包括:

文本获取单元401,用于获取目标文本;

文本处理单元403,用于基于所述目标文本,生成词序列;

意图识别单元403,用于基于所述词序列,利用预先训练的意图识别模型,确定所述目标文本的意图类别;

其中,所述意图识别模型采用上述实施例二所述的模型训练方法训练得到。

与上述实施例一的模型训练方法相对应,本发明实施例公开了一种模型训练设备,包括处理器和存储器;

所述存储器中存储有可被所述处理器执行的应用程序,用于使得所述处理器执行如上所述的模型训练方法。

与上述实施例一的模型训练方法相对应,本发明实施例还公开了一种计算机可读存储介质,其中存储有计算机可读指令,该计算机可读指令用于执行如上实施例一所述的模型训练方法。

与上述实施例二的意图识别方法相对应,本发明实施例还公开了一种意图识别设备,包括处理器和存储器;

所述存储器中存储有可被所述处理器执行的应用程序,用于使得所述处理器执行如上实施例一所述的意图识别方法。

与上述实施例二的意图识别方法相对应,本发明实施例公开了一种计算机可读存储介质,其中存储有计算机可读指令,该计算机可读指令用于执行如上实施例一所述的意图识别方法。

由上述技术方案可见,本发明提出的模型训练方法、装置及意图识别方法、装置,在进行模型训练时,在基于训练样本生成低层胶囊序列之后,采用自注意力动态路由方法,生成高层胶囊序列,将所述高层胶囊序列输入至全连接层处理。如此,低层胶囊序列通过动态路由方法得到高层胶囊序列,高层胶囊序列为模型从训练文本里学习到的高层泛化特征,该特征对低频意图识别非常有效,因此,采用本发明实施例,可以在一定程度上缓解低频意图识别精确度低的问题,从而可以有效地提升意图识别准确度。在实际应用中本发明实施例可以适用于很多会话场景,例如,客服场景中的问答系统、信息检索等。

上述实施例中,存储器具体可以实施为电可擦可编程只读存储器(EEPROM)、快闪存储器(Flash memory)、可编程程序只读存储器(PROM)等多种存储介质。处理器可以实施为包括一或多个中央处理器或一或多个现场可编程门阵列,其中现场可编程门阵列集成一或多个中央处理器核。具体地,中央处理器或中央处理器核可以实施为CPU或MCU。

需要说明的是,上述各流程和各结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。各模块的划分仅仅是为了便于描述采用的功能上的划分,实际实现时,一个模块可以分由多个模块实现,多个模块的功能也可以由同一个模块实现,这些模块可以位于同一个设备中,也可以位于不同的设备中。

各实施方式中的硬件模块可以以机械方式或电子方式实现。例如,一个硬件模块可以包括专门设计的永久性电路或逻辑器件(如专用处理器,如FPGA或ASiC)用于完成特定的操作。硬件模块也可以包括由软件临时配置的可编程逻辑器件或电路(如包括通用处理器或其它可编程处理器)用于执行特定操作。至于具体采用机械方式,或是采用专用的永久性电路,或是采用临时配置的电路(如由软件进行配置)来实现硬件模块,可以根据成本和时间上的考虑来决定。

用于提供程序代码的存储介质实施方式包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机或云上下载程序代码。

在本文中,“示意性”表示“充当实例、例子或说明”,不应将在本文中被描述为“示意性”的任何图示、实施方式解释为一种更优选的或更具优点的技术方案。为使图面简洁,各图中的只示意性地表示出了与本发明相关部分,而并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”并不表示将本发明相关部分的数量限制为“仅此一个”,并且“一个”不表示排除本发明相关部分的数量“多于一个”的情形。在本文中,“上”、“下”、“前”、“后”、“左”、“右”、“内”、“外”等仅用于表示相关部分之间的相对位置关系,而非限定这些相关部分的绝对位置。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 意图识别模型训练方法、意图识别方法及相关装置
  • 意图识别模型的训练方法、意图识别方法、装置及设备
技术分类

06120112357272