CN113988267A - 用户意图识别模型的生成方法、用户意图识别方法和设备 - Google Patents

用户意图识别模型的生成方法、用户意图识别方法和设备 Download PDF

Info

Publication number
CN113988267A
CN113988267A CN202111295501.3A CN202111295501A CN113988267A CN 113988267 A CN113988267 A CN 113988267A CN 202111295501 A CN202111295501 A CN 202111295501A CN 113988267 A CN113988267 A CN 113988267A
Authority
CN
China
Prior art keywords
model
layer
user intention
network
output
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
Application number
CN202111295501.3A
Other languages
English (en)
Inventor
王嘉欣
吴鹏
李健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ctrip Travel Information Technology Shanghai Co Ltd
Original Assignee
Ctrip Travel Information Technology Shanghai Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ctrip Travel Information Technology Shanghai Co Ltd filed Critical Ctrip Travel Information Technology Shanghai Co Ltd
Priority to CN202111295501.3A priority Critical patent/CN113988267A/zh
Publication of CN113988267A publication Critical patent/CN113988267A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及人工智能技术领域,提供一种用户意图识别模型的生成方法、用户意图识别方法和设备。生成方法包括:基于逐层知识蒸馏训练包含多层编码网络的教师模型,获得目标教师模型的每层编码网络的输出Logits;基于包含多层卷积网络的学生模型,根据包含学生模型的输出结果与训练数据的真实标签之间的交叉熵损失、及各层卷积网络的输出结果与各层编码网络的输出Logits之间的交叉熵损失的目标损失函数,进行可微神经网络结构搜索,获得目标学生模型;根据目标学生模型的输出结果与真实标签之间的交叉熵损失,对目标学生模型进行微调,获得用户意图识别模型。本发明通过知识蒸馏、可微搜索和微调,自动获得用户意图识别模型,减少模型参数量和硬件资源消耗。

Description

用户意图识别模型的生成方法、用户意图识别方法和设备
技术领域
本发明涉及人工智能技术领域,具体地说,涉及一种用户意图识别模型的生成方法、用户意图识别方法和设备。
背景技术
大型的在线旅行服务平台,能够向海量的用户提供酒店、机票、车票、线路、门票玩乐、签证、企业商旅等一站式专业客服预订服务。面对庞大的用户量,为了降低人工客服的成本,需要针对用户输入的内容进行有效识别,判断是咨询业务或只是闲聊,如果只是闲聊将直接转接智能客服,即客服机器人。如何快速并准确地识别用户意图,是在线旅行服务平台关注的重点。
目前,BERT(Bidirectional Encoder Representations from Transformer,基于转换器的双向编码表征)模型已经被证明其在各种NLP(Natural Language Processing,自然语言处理)任务中的有效性。但是,BERT模型一般都拥有庞大的参数量以及巨大的模型尺寸,导致BERT模型难以训练及应用,需要研究如何减小BERT模型并加快模型推理速度。
现有很多方法致力于将BERT模型压缩为小模型并加速其推理速度。目前的方法主要包括:通过对BERT模型的logits(对数概率)、hidden parameter(隐藏参数)和embedding(特征向量)等进行蒸馏,将BERT模型的能力迁移到小模型上;对BERT模型进行量化,使用低精度或混合精度来减轻模型大小;通过剪枝去掉BERT模型中的冗余参数。
以上方法虽然能够减少模型参数,加快模型推理速度,但均需要工程师不断进行调参并训练等繁琐的实验,会耗费大量的人力资源和硬件资源。
因此,如何能够自动地得到适用于用户意图识别的小模型,实现全自动加速用户意图识别,是本领域中亟需解决的一个问题。
需要说明的是,上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本发明提供一种用户意图识别模型的生成方法、用户意图识别方法和设备,能够通过逐层知识蒸馏、可微神经网络结构搜索和模型微调,自动获得用户意图识别模型,减少模型参数量和硬件资源消耗,实现全自动智能加速识别用户意图。
本发明的一个方面提供一种用户意图识别模型的生成方法,包括:基于逐层知识蒸馏训练包含多层编码网络的教师模型,获得目标教师模型的每层编码网络的输出Logits;基于包含多层卷积网络的学生模型,根据包含所述学生模型的输出结果与训练数据的真实标签之间的交叉熵损失、及各层所述卷积网络的输出结果与各层所述编码网络的输出Logits之间的交叉熵损失的目标损失函数,进行可微神经网络结构搜索,获得目标学生模型;根据所述目标学生模型的输出结果与所述真实标签之间的交叉熵损失,对所述目标学生模型进行微调,获得用户意图识别模型。
在一些实施例中,所述基于逐层知识蒸馏训练包含多层编码网络的教师模型,包括:在所述教师模型中插入对应每层所述编码网络的Probe分类器;利用所述训练数据,基于知识蒸馏训练所述教师模型,以通过所述Probe分类器获得每层所述编码网络的输出Logits。
在一些实施例中,所述获得目标教师模型的每层编码网络的输出Logits,包括:对所述教师模型进行预设次训练;获得每层所述编码网络在所述预设次训练中的最优输出,作为所述目标教师模型的每层所述编码网络的输出Logits。
在一些实施例中,所述教师模型采用基于转换器的双向编码表征BERT模型;每层所述卷积网络的候选算子包括:具有不同卷积核尺寸的多种卷积、具有不同卷积核尺寸的多种空洞卷积、平均池化、最大池化、Identity函数和Zero函数。
在一些实施例中,所述进行可微神经网络结构搜索时,以每层所述卷积网络为一个搜索单元,每个所述搜索单元包括两个输入节点、一个输出节点和多个中间节点;每个所述搜索单元中,两个所述输入节点为前两个搜索单元的输出节点,每个所述中间节点连接所述输出节点,每个所述中间节点具有两条入边,每条入边选自所述候选算子。
在一些实施例中,所述目标损失函数还包括进行可微神经网络结构搜索的效率感知损失;所述目标损失函数的公式为:
Figure BDA0003336446140000031
其中,
Figure BDA0003336446140000032
为所述学生模型的输出结果与所述真实标签之间的交叉熵损失,
Figure BDA0003336446140000033
为各层所述卷积网络的输出结果与各层所述编码网络的输出Logits之间的交叉熵损失,
Figure BDA0003336446140000034
为所述效率感知损失,γ和β为超参数。
在一些实施例中,第i层卷积网络的输出结果与第j层编码网络的输出Logits之间的交叉熵损失
Figure BDA0003336446140000035
的公式为:
Figure BDA0003336446140000036
其中,
Figure BDA0003336446140000037
为所述第j层编码网络上的Probe分类器,
Figure BDA0003336446140000038
为所述第j层编码网络的隐藏表示,
Figure BDA0003336446140000039
为所述第j层编码网络的输出Logits,
Figure BDA00033364461400000310
为所述第i层卷积网络上的Probe分类器,
Figure BDA00033364461400000311
为所述第i层卷积网络的隐藏表示,
Figure BDA00033364461400000312
为所述第i层卷积网络的输出结果,T为温度系数;
Figure BDA00033364461400000313
其中,M为所述训练数据的样本数,K为所述学生模型的卷积网络层数,ωi,m为所述交叉熵损失
Figure BDA00033364461400000314
的归一化权重;
Figure BDA00033364461400000315
其中,ym为第m个样本的标签,正类为1,负类为0。
在一些实施例中,所述效率感知损失
Figure BDA00033364461400000316
的公式为:
Figure BDA00033364461400000317
其中,K为所述学生模型的卷积网络层数,Kmax为预定义的最大层数,oi,j为需要搜索的候选算子,αc为所述目标学生模型的网络结构,SIZE(.)为参数大小,FLOPs(.)为搜索每个候选算子的浮点运算数。
在一些实施例中,所述学生模型的输出结果与所述真实标签之间的交叉熵损失
Figure BDA0003336446140000041
的公式为:
Figure BDA0003336446140000042
其中,ym为第m个样本的标签,正类为1,负类为0,p(ym)为所述学生模型将所述第m个样本预测为正类的概率;所述对所述目标学生模型进行微调时,p(ym)为所述目标学生模型将所述第m个样本预测为正类的概率。
在一些实施例中,所述训练数据包括闲聊样本和非闲聊样本;所述用户意图识别模型用于识别用户输入内容是否为闲聊。
本发明的又一个方面提供一种用户意图识别方法,包括:获得用户输入内容;将所述用户输入内容输入由上述任意实施例所述的生成方法生成的用户意图识别模型中,获得用户意图识别结果;根据所述用户意图识别结果,判断所述用户输入内容是否为闲聊,若是则转接智能客服,若否则转接人工客服。
本发明的又一个方面提供一种用户意图识别模型的生成装置,包括:知识蒸馏模块,用于基于逐层知识蒸馏训练包含多层编码网络的教师模型,获得目标教师模型的每层编码网络的输出Logits;可微搜索模块,用于基于包含多层卷积网络的学生模型,根据包含所述学生模型的输出结果与训练数据的真实标签之间的交叉熵损失、及各层所述卷积网络的输出结果与各层所述编码网络的输出Logits之间的交叉熵损失的目标损失函数,进行可微神经网络结构搜索,获得目标学生模型;微调处理模块,用于根据所述目标学生模型的输出结果与所述真实标签之间的交叉熵损失,对所述目标学生模型进行微调,获得用户意图识别模型。
本发明的又一个方面提供一种用户意图识别装置,包括:内容获取模块,用于获得用户输入内容;意图识别模块,用于将所述用户输入内容输入由上述任意实施例所述的生成方法生成的用户意图识别模型中,获得用户意图识别结果;转接处理模块,用于根据所述用户意图识别结果,判断所述用户输入内容是否为闲聊,若是则转接智能客服,若否则转接人工客服。
本发明的又一个方面提供一种电子设备,包括:一处理器;一存储器,所述存储器中存储有可执行指令;其中,所述可执行指令被所述处理器执行时,实现如上述任意实施例所述的用户意图识别模型的生成方法,和/或,实现如上述任意实施例所述的用户意图识别方法。
本发明的又一个方面提供一种计算机可读的存储介质,用于存储程序,所述程序被处理器执行时,实现如上述任意实施例所述的用户意图识别模型的生成方法,和/或,实现如上述任意实施例所述的用户意图识别方法。
本发明与现有技术相比的有益效果至少包括:
通过逐层知识蒸馏和可微神经网络结构搜索,自动获得压缩了模型参数量与模型大小的目标学生模型,同时能够减少硬件资源的消耗;在完成模型结构搜索后进行微调,在不需要重新训练的情况下使得模型性能得到明显提升,获得用户意图识别模型,实现全自动智能加速识别用户意图。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本发明一实施例中用户意图识别模型的生成方法的步骤示意图;
图2示出本发明一实施例中进行可微神经网络结构搜索的神经网络架构示意图;
图3示出本发明一实施例中可微神经网络结构搜索的更新迭代次数与目标损失函数的曲线关系示意图;
图4示出本发明一实施例中可微神经网络结构搜索的更新迭代次数与学生模型准确率的曲线关系示意图;
图5示出本发明一实施例中用户意图识别方法的步骤示意图;
图6示出本发明一实施例中用户意图识别模型的生成装置的模块示意图;
图7示出本发明一实施例中用户意图识别装置的模块示意图;
图8示出本发明一实施例中电子设备的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式。相反,提供这些实施方式使本发明全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
此外,附图中所示的流程仅是示例性说明,不是必须包括所有的步骤。例如,有的步骤可以分解,有的步骤可以合并或部分合并,且实际执行的顺序有可能根据实际情况改变。具体描述时使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。需要说明的是,在不冲突的情况下,本发明的实施例及不同实施例中的特征可以相互组合。
在线旅行服务平台拥有庞大的用户数量,并为用户提供实时在线客服咨询服务。为了降低人工客服成本,需要快速识别用户输入内容的意图并进行分类,即闲聊或是咨询业务,然后相应地转接智能客服机器人或人工客服。用户意图识别作为NLP任务的文本分类任务,一般采用BERT模型。但BERT模型庞大,参数量多,推理速度慢,对于识别用户意图会产生一定延迟。为了减少BERT模型的参数量,加快模型推理速度的同时减少占用工程师及硬件资源消耗,本发明提出一种针对用户意图识别任务的模型优化方法,能够全自动加速用户意图识别,避免需要人为地对BERT模型进行剪枝量化等繁琐工作。
本发明通过自适应搜索针对用户意图的小模型而实现全自动加速,利用可微神经网络结构搜索将BERT大模型(教师模型)自动压缩为适用于用户意图识别的小模型(学生模型),不仅减少模型参数还加快模型推理速度。利用知识蒸馏,为小模型的搜索提供线索,并对FLOPs和Size进行约束,以使搜索模型能够在效率和有效性之间有一个均衡。在得到小模型后,本发明还对搜索模型进行微调,在不需要重新训练的情况下进一步提升模型性能。
图1示出一实施例中用户意图识别模型的生成方法的主要步骤,参照图1所示,用户意图识别模型的生成方法包括:
步骤S110,基于逐层知识蒸馏训练包含多层编码网络的教师模型,获得目标教师模型的每层编码网络的输出Logits。
教师模型可采用BERT模型,BERT模型是一个预训练的模型,本实施例中可采用12层的BERT模型。另外,本实施例中,用户意图识别模型用于识别用户在在线旅行服务平台上的输入内容是否属于闲聊,因此,对教师模型进行训练的训练数据包括闲聊样本和非闲聊样本。例如,训练数据中,包括3033条闲聊样本和4113条非闲聊样本。3033条闲聊样本标注为1,4113条非闲聊样本标注为0。
在其他实施例中,可采用具有其它层数的BERT模型,例如6层的、24层的,等等。另外,在其他实施例中,若用户意图识别模型用于识别其他用户意图,例如识别用户需要咨询的业务类型,则可以采用包含各种业务类型的用户输入样本作为训练数据。
基于逐层知识蒸馏训练包含多层编码网络的教师模型,具体包括:在教师模型中插入对应每层编码网络的Probe分类器;利用训练数据,基于知识蒸馏训练教师模型,以通过Probe分类器获得每层编码网络的输出Logits。
对于一个训练在主任务上的大型神经网络,Probe(探针)是一个插入在其中间隐藏层的浅层神经网络,通常是一个分类器层。通过对教师模型进行训练,教师模型的每层Probe分类器学习,利用probes实现逐层知识蒸馏,获得最优教师模型的每层编码网络的输出Logits。
获得目标教师模型的每层编码网络的输出Logits,具体包括:对教师模型进行预设次训练;获得每层编码网络在预设次训练中的最优输出,作为目标教师模型的每层编码网络的输出Logits。
步骤S120,基于包含多层卷积网络的学生模型,根据包含学生模型的输出结果与训练数据的真实标签之间的交叉熵损失、及各层卷积网络的输出结果与各层编码网络的输出Logits之间的交叉熵损失的目标损失函数,进行可微神经网络结构搜索,获得目标学生模型。
学生模型经过预定义,包含多层卷积网络。每层卷积网络的候选算子包括:具有不同卷积核尺寸的多种卷积,例如包括cnn3(3*3卷积核)、cnn5(5*5卷积核)和cnn7(7*7卷积核);具有不同卷积核尺寸的多种空洞卷积,例如包括dilated_cnn3、dilated_cnn5和dilated_cnn7;平均池化avg_pool、最大池化max_pool、Identity函数和Zero函数。
图2示出一实施例中进行可微神经网络结构搜索的神经网络架构。可微神经网络结构搜索,下文简称DARTS(Differentiable Architecture Search,可微架构搜索)搜索。在DARTS搜索过程中,首先定义图2所示的神经网络架构。学生模型200中,包含输入层Input、K层卷积网络和输出层Classifier。进行DARTS搜索时,以每层卷积网络为一个搜索单元Cell,每个搜索单元Cell包括两个输入节点(节点0和节点1)、一个输出节点(节点5,c_{k})和多个中间节点(中间节点的数量可选,本实施例中定义3个中间节点,分别为节点2、节点3和节点4)。每个搜索单元Cell中,两个输入节点为前两个搜索单元的输出节点(节点0为前前搜索单元的输出节点c_{k-2},节点1为前搜索单元的输出节点c_{k-1}),每个中间节点连接输出节点,每个中间节点具有两条入边,每条入边选自候选算子。即,本实施例中,每条进入中间节点的边有10种候选算子,分别为:cnn3、cnn5、cnn7、dilated_cnn3、dilated_cnn5、dilated_cnn7、avg_pool、max_pool、identity和zero。DARTS搜索的目的是学习架构参数α,表明每条边应该选取哪种算子,同时应该保留哪些边。
在一个实施例中,目标损失函数还包括进行DARTS搜索的效率感知损失。目标损失函数的公式为:
Figure BDA0003336446140000081
其中,
Figure BDA0003336446140000082
为学生模型的输出结果与真实标签之间的交叉熵损失,
Figure BDA0003336446140000083
为各层卷积网络的输出结果与各层编码网络的输出Logits之间的交叉熵损失,
Figure BDA0003336446140000084
为效率感知损失,γ和β为用于平衡三项损失的超参数。
目标损失函数
Figure BDA0003336446140000091
具体可表示为:
Figure BDA0003336446140000092
Figure BDA0003336446140000093
其中,ωα是架构α的可训练网络权重,
Figure BDA0003336446140000094
是目标任务的损失,即相对于训练数据Dt中真实标签的交叉熵损失,
Figure BDA0003336446140000095
是面向目标任务的知识蒸馏损失,为找到适用于目标任务的模型结构提供引导,
Figure BDA0003336446140000096
是效率感知损失,对模型大小及浮点运算数FLOPs提供限制以帮助搜索轻便高效的结构。通过DARTS搜索,优化三项损失函数(真实标签监督的交叉熵、逐层Probes监督的交叉熵和结构正则项)以得到最佳结构,即目标学生模型。
在BERT模型压缩过程中,利用Probe分类器从教师模型中逐层分解有用的任务知识,然后将知识提取到压缩模型中。具体来说,首先冻结教师模型的参数,并根据目标任务标签为每个隐藏层(即编码网络)训练一个Softmax probe分类器。总共有J个probe分类器,第j个probe分类器的分类logits看作是从第j层编码网络学到的知识。给定输入实例m,将
Figure BDA0003336446140000097
表示为目标教师模型的第j层编码网络的隐藏表示,将
Figure BDA0003336446140000098
表示为学生模型的第i层卷积网络的隐藏表示,提取的有用的任务知识(输出logits),即第i层卷积网络的输出结果与第j层编码网络的输出Logits之间的交叉熵损失
Figure BDA0003336446140000099
的公式为:
Figure BDA00033364461400000910
其中,
Figure BDA00033364461400000911
为第j层编码网络上的Probe分类器,
Figure BDA00033364461400000912
为第j层编码网络的输出Logits,
Figure BDA00033364461400000913
为第i层卷积网络上的可训练Probe分类器,
Figure BDA00033364461400000914
为第i层卷积网络的输出结果,T为温度系数。
对于不同的下游任务,由于BERT模型中的每一层编码网络的作用都不一样,因此将所有隐藏层的分解知识集合地组合为:
Figure BDA00033364461400000915
Figure BDA00033364461400000916
其中,M为训练数据的样本数,ym为第m个样本的标签,正类为1,负类为0。K为学生模型的卷积网络层数,即DARTS搜索堆叠层数。ωi,m为交叉熵损失
Figure BDA00033364461400000917
的归一化权重,即每个样本依据教师模型探针的负交叉熵损失(loss)设置的归一化权重。用loss归一化的动机是对于教师模型的预测结果越准确的层(loss越小),训练得越好或者越适合目标任务,就会被赋予更高的权重。
为了根据BERT模型获得有效的目标学生模型,还将模型效率纳入损失函数中。主要包括参数大小和推理时间。具体来说,对于搜索的结构α和搜索堆叠层数K,将效率感知损失定义为:
Figure BDA0003336446140000101
其中,Kmax为预定义的最大层数,oi,j为需要搜索的候选算子,αc为目标学生模型的网络结构,SIZE(.)为参数大小,FLOPs(.)为搜索每个候选算子的浮点运算数。
Figure BDA0003336446140000102
采用标准的交叉熵公式:
Figure BDA0003336446140000103
其中,p(ym)为学生模型将第m个样本预测为正类的概率。
图3示出一实施例中DARTS搜索的更新迭代次数与目标损失函数的曲线关系,图4示出DARTS搜索的更新迭代次数与学生模型准确率的曲线关系。参照图3所示的曲线300和图4所示的曲线400,经过5k次更新迭代之后,模型趋于收敛,即可根据搜索结果提炼最优小模型,获得目标学生模型。
步骤S130,根据目标学生模型的输出结果与真实标签之间的交叉熵损失,对目标学生模型进行微调,获得用户意图识别模型。
对目标学生模型进行微调(Finetune)时,采用上述的
Figure BDA0003336446140000104
公式,将p(ym)替换为目标学生模型将第m个样本预测为正类的概率。
直接利用数据和标签通过交叉熵进行微调,能够在不需要重新训练的情况下,进一步提升模型效果。
针对用户意图识别任务,即判断用户输入内容是否为闲聊,获得用户意图识别模型后,采用验证集对用户意图识别模型进行验证实验。验证集中,包含808条闲聊样本数据和996条非闲聊样本数据。在验证实验中,为了验证用户意图识别模型对于用户意图识别任务的有效性,将用户意图识别模型与其他主流BERT算法进行全面的比较,包括Accuracy(准确率)、Precision(精确率)、Recall(召回率)、F1值以及模型尺寸和速度。验证实验结果如下表所示:
BERT BERT(*) BERT(**) ADABERT Ration
Accuracy 0.93400 0.92794 0.95843 0.92905 96.9%
Precision 0.93460 0.89882 0.94859 0.89813 94.7%
Recall 0.93200 0.94554 0.95916 0.94926 99.0%
F1 0.93310 0.92159 0.95385 0.92298 96.8%
Size 110M 110M 110M 11M 10X
Speed(CPU) 115ms 139ms 4.6ms 30X
Speed(GPU) 12.9ms 4.5ms 3X
由上表可知,本发明基于优化的Adabert算法获得的用户意图识别模型,与其他主流算法的性能相差不大,但模型大小减小了约10倍,模型推理速度有显著提升,在CPU上的推理速度约为BERT(*)的30倍,在GPU上的推理速度约为其他主流算法的3倍,证明了本发明对于加速用户意图识别任务的有效性。
综上,本发明的用户意图识别模型的生成方法,能够全自动搜索针对识别用户意图任务的压缩模型并进行微调,以删除原始大模型中的特定于该任务的冗余部分,在保证模型性能的前提下使模型得到更好的压缩以及更快的推理速度。本发明将压缩后的小模型结构当做一组可学习的参数,这样针对不同任务压缩后应该使用什么模型结构就可以由算法自动地搜索出来。本发明将压缩后小模型放在知识蒸馏视角下,将搜索目标融入到学生模型的损失函数中。并将该任务拆解为两个方面,其一是压缩后模型预测准确,能有效地提炼、保留对目标任务有用的知识;其二是压缩后模型体积更小,推理速度更快。本发明的执行过程中,基于Probes的知识蒸馏主要为适用于用户意图识别任务的小模型搜索提供向导,其相较于基础知识蒸馏(小模型只学习大模型的输出概率分布)可学习到原始BERT模型中间层的知识,从而提升性能;DARTS搜索可以直接搜索出适用于该任务的神经网络结构,减少人为设计模型或者对原始大模型进行剪枝量化等操作的繁琐性;进一步地,仅仅依靠蒸馏与搜索得到的模型效果欠佳,因此对搜索得到的最优模型进行微调,以进一步提升模型性能。
本发明实施例还提供一种用户意图识别方法,利用上述获得的用户意图识别模型,进行是否为闲聊的用户意图识别。
图5示出一实施例中用户意图识别方法的主要步骤,参照图5所示,用户意图识别方法包括:步骤S510,获得用户输入内容;步骤S520,将用户输入内容输入用户意图识别模型中,获得用户意图识别结果;步骤S530,根据用户意图识别结果,判断用户输入内容是否为闲聊,若是则转接智能客服,若否则转接人工客服。
本发明的用户意图识别方法采用用户意图识别模型,能够实现对用户意图识别的加速,及时判断用户意图,增加智能客服系统的自助率,减少人工客服成本。
本发明实施例还提供一种用户意图识别模型的生成装置,可用于实现上述任意实施例描述的用户意图识别模型的生成方法。上述任意实施例描述的生成方法的特征和原理均可应用至下面的生成装置实施例。在下面的生成装置实施例中,对已经阐明的关于模型生成的特征和原理不再重复说明。
图6示出一实施例中用户意图识别模型的生成装置的主要模块,参照图6所示,用户意图识别模型的生成装置600包括:知识蒸馏模块610,用于基于逐层知识蒸馏训练包含多层编码网络的教师模型,获得目标教师模型的每层编码网络的输出Logits;可微搜索模块620,用于基于包含多层卷积网络的学生模型,根据包含学生模型的输出结果与训练数据的真实标签之间的交叉熵损失、及各层卷积网络的输出结果与各层编码网络的输出Logits之间的交叉熵损失的目标损失函数,进行可微神经网络结构搜索,获得目标学生模型;微调处理模块630,用于根据目标学生模型的输出结果与真实标签之间的交叉熵损失,对目标学生模型进行微调,获得用户意图识别模型。
本发明实施例还提供一种用户意图识别装置,与上述的用户意图识别模型的生成装置可部署于同一装置设备中。用户意图识别装置可用于识别上述实施例描述的用户意图识别方法。
图7示出一实施例中用户意图识别装置的主要模块,参照图7所示,用户意图识别装置700包括:内容获取模块710,用于获得用户输入内容;意图识别模块720,用于将用户输入内容输入用户意图识别模型中,获得用户意图识别结果;转接处理模块730,用于根据用户意图识别结果,判断用户输入内容是否为闲聊,若是则转接智能客服,若否则转接人工客服。
本发明的用户意图识别模型的生成装置/用户意图识别装置,能够通过逐层知识蒸馏和可微神经网络结构搜索,自动获得压缩了模型参数量与模型大小的目标学生模型,减少硬件资源的消耗;并在完成模型结构搜索后进行微调,在不需要重新训练的情况下使得模型性能得到明显提升,获得用户意图识别模型,实现全自动智能加速识别用户意图,增加智能客服系统的自助率,减少人工客服成本。
本发明实施例还提供一种电子设备,包括处理器和存储器,存储器中存储有可执行指令,可执行指令被处理器执行时,实现上述任意实施例描述的用户意图识别模型的生成方法/用户意图识别方法。
本发明的电子设备,能够通过逐层知识蒸馏和可微神经网络结构搜索,自动获得压缩了模型参数量与模型大小的目标学生模型,减少硬件资源的消耗;并在完成模型结构搜索后进行微调,在不需要重新训练的情况下使得模型性能得到明显提升,获得用户意图识别模型,实现全自动智能加速识别用户意图,增加智能客服系统的自助率,减少人工客服成本。
图8是本发明实施例中电子设备的结构示意图,应当理解的是,图8仅仅是示意性地示出各个模块,这些模块可以是虚拟的软件模块或实际的硬件模块,这些模块的合并、拆分及其余模块的增加都在本发明的保护范围之内。
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件包括但不限于:至少一个处理单元810、至少一个存储单元820、连接不同平台组件(包括存储单元820和处理单元810)的总线830、显示单元840等。
其中,存储单元存储有程序代码,程序代码可以被处理单元810执行,使得处理单元810执行上述任意实施例描述的用户意图识别模型的生成方法/用户意图识别方法的步骤。例如,处理单元810可以执行如图1和图5所示的步骤。
存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)8201和/或高速缓存存储单元8202,还可以进一步包括只读存储单元(ROM)8203。
存储单元820还可以包括具有一个或多个程序模块8205的程序/实用工具8204,这样的程序模块8205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备800也可以与一个或多个外部设备900通信,外部设备900可以是键盘、指向设备、蓝牙设备等设备中的一种或多种。这些外部设备900使得用户能与该电子设备800进行交互通信。电子设备800也能与一个或多个其它计算设备进行通信,所示计算机设备包括路由器、调制解调器。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器860可以通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。
本发明实施例还提供一种计算机可读的存储介质,用于存储程序,程序被执行时实现上述任意实施例描述的用户意图识别模型的生成方法/用户意图识别方法。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行上述任意实施例描述的用户意图识别模型的生成方法/用户意图识别方法。
本发明的存储介质再被执行时,能够实现通过逐层知识蒸馏和可微神经网络结构搜索,自动获得压缩了模型参数量与模型大小的目标学生模型,减少硬件资源的消耗;并在完成模型结构搜索后进行微调,在不需要重新训练的情况下使得模型性能得到明显提升,获得用户意图识别模型,实现全自动智能加速识别用户意图,增加智能客服系统的自助率,减少人工客服成本。
程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,其可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子包括但不限于:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言-诸如Java、C++等,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备,例如利用因特网服务提供商来通过因特网连接。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (15)

1.一种用户意图识别模型的生成方法,其特征在于,包括:
基于逐层知识蒸馏训练包含多层编码网络的教师模型,获得目标教师模型的每层编码网络的输出Logits;
基于包含多层卷积网络的学生模型,根据包含所述学生模型的输出结果与训练数据的真实标签之间的交叉熵损失、及各层所述卷积网络的输出结果与各层所述编码网络的输出Logits之间的交叉熵损失的目标损失函数,进行可微神经网络结构搜索,获得目标学生模型;
根据所述目标学生模型的输出结果与所述真实标签之间的交叉熵损失,对所述目标学生模型进行微调,获得用户意图识别模型。
2.如权利要求1所述的生成方法,其特征在于,所述基于逐层知识蒸馏训练包含多层编码网络的教师模型,包括:
在所述教师模型中插入对应每层所述编码网络的Probe分类器;
利用所述训练数据,基于知识蒸馏训练所述教师模型,以通过所述Probe分类器获得每层所述编码网络的输出Logits。
3.如权利要求2所述的生成方法,其特征在于,所述获得目标教师模型的每层编码网络的输出Logits,包括:
对所述教师模型进行预设次训练;
获得每层所述编码网络在所述预设次训练中的最优输出,作为所述目标教师模型的每层所述编码网络的输出Logits。
4.如权利要求1所述的生成方法,其特征在于,所述教师模型采用基于转换器的双向编码表征BERT模型;
每层所述卷积网络的候选算子包括:
具有不同卷积核尺寸的多种卷积、具有不同卷积核尺寸的多种空洞卷积、平均池化、最大池化、Identity函数和Zero函数。
5.如权利要求4所述的生成方法,其特征在于,所述进行可微神经网络结构搜索时,以每层所述卷积网络为一个搜索单元,每个所述搜索单元包括两个输入节点、一个输出节点和多个中间节点;
每个所述搜索单元中,两个所述输入节点为前两个搜索单元的输出节点,每个所述中间节点连接所述输出节点,每个所述中间节点具有两条入边,每条入边选自所述候选算子。
6.如权利要求1所述的生成方法,其特征在于,所述目标损失函数还包括进行可微神经网络结构搜索的效率感知损失;
所述目标损失函数的公式为:
Figure FDA0003336446130000021
其中,
Figure FDA0003336446130000022
为所述学生模型的输出结果与所述真实标签之间的交叉熵损失,
Figure FDA0003336446130000023
为各层所述卷积网络的输出结果与各层所述编码网络的输出Logits之间的交叉熵损失,
Figure FDA0003336446130000024
为所述效率感知损失,γ和β为超参数。
7.如权利要求6所述的生成方法,其特征在于,第i层卷积网络的输出结果与第j层编码网络的输出Logits之间的交叉熵损失
Figure FDA0003336446130000025
的公式为:
Figure FDA0003336446130000026
其中,
Figure FDA0003336446130000027
为所述第j层编码网络上的Probe分类器,
Figure FDA0003336446130000028
为所述第j层编码网络的隐藏表示,
Figure FDA0003336446130000029
为所述第j层编码网络的输出Logits,
Figure FDA00033364461300000210
为所述第i层卷积网络上的Probe分类器,
Figure FDA00033364461300000211
为所述第i层卷积网络的隐藏表示,
Figure FDA00033364461300000212
为所述第i层卷积网络的输出结果,T为温度系数;
Figure FDA00033364461300000213
其中,M为所述训练数据的样本数,K为所述学生模型的卷积网络层数,ωi,m为所述交叉熵损失
Figure FDA00033364461300000214
的归一化权重;
Figure FDA00033364461300000215
其中,ym为第m个样本的标签,正类为1,负类为0。
8.如权利要求6所述的生成方法,其特征在于:
Figure FDA00033364461300000216
其中,K为所述学生模型的卷积网络层数,Kmax为预定义的最大层数,oi,j为需要搜索的候选算子,αc为所述目标学生模型的网络结构,SIZE(.)为参数大小,FLOPs(.)为搜索每个候选算子的浮点运算数。
9.如权利要求6所述的生成方法,其特征在于:
Figure FDA0003336446130000031
其中,ym为第m个样本的标签,正类为1,负类为0,p(ym)为所述学生模型将所述第m个样本预测为正类的概率;
所述对所述目标学生模型进行微调时,p(ym)为所述目标学生模型将所述第m个样本预测为正类的概率。
10.如权利要求1所述的生成方法,其特征在于,所述训练数据包括闲聊样本和非闲聊样本;
所述用户意图识别模型用于识别用户输入内容是否为闲聊。
11.一种用户意图识别方法,其特征在于,包括:
获得用户输入内容;
将所述用户输入内容输入由权利要求1-10任一项所述的生成方法生成的用户意图识别模型中,获得用户意图识别结果;
根据所述用户意图识别结果,判断所述用户输入内容是否为闲聊,若是则转接智能客服,若否则转接人工客服。
12.一种用户意图识别模型的生成装置,其特征在于,包括:
知识蒸馏模块,用于基于逐层知识蒸馏训练包含多层编码网络的教师模型,获得目标教师模型的每层编码网络的输出Logits;
可微搜索模块,用于基于包含多层卷积网络的学生模型,根据包含所述学生模型的输出结果与训练数据的真实标签之间的交叉熵损失、及各层所述卷积网络的输出结果与各层所述编码网络的输出Logits之间的交叉熵损失的目标损失函数,进行可微神经网络结构搜索,获得目标学生模型;
微调处理模块,用于根据所述目标学生模型的输出结果与所述真实标签之间的交叉熵损失,对所述目标学生模型进行微调,获得用户意图识别模型。
13.一种用户意图识别装置,其特征在于,包括:
内容获取模块,用于获得用户输入内容;
意图识别模块,用于将所述用户输入内容输入由权利要求1-10任一项所述的生成方法生成的用户意图识别模型中,获得用户意图识别结果;
转接处理模块,用于根据所述用户意图识别结果,判断所述用户输入内容是否为闲聊,若是则转接智能客服,若否则转接人工客服。
14.一种电子设备,其特征在于,包括:
一处理器;
一存储器,所述存储器中存储有可执行指令;
其中,所述可执行指令被所述处理器执行时,实现如权利要求1-10任一项所述的用户意图识别模型的生成方法,和/或,实现如权利要求11所述的用户意图识别方法。
15.一种计算机可读的存储介质,用于存储程序,其特征在于,所述程序被处理器执行时,实现如权利要求1-10任一项所述的用户意图识别模型的生成方法,和/或,实现如权利要求11所述的用户意图识别方法。
CN202111295501.3A 2021-11-03 2021-11-03 用户意图识别模型的生成方法、用户意图识别方法和设备 Pending CN113988267A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111295501.3A CN113988267A (zh) 2021-11-03 2021-11-03 用户意图识别模型的生成方法、用户意图识别方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111295501.3A CN113988267A (zh) 2021-11-03 2021-11-03 用户意图识别模型的生成方法、用户意图识别方法和设备

Publications (1)

Publication Number Publication Date
CN113988267A true CN113988267A (zh) 2022-01-28

Family

ID=79746216

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111295501.3A Pending CN113988267A (zh) 2021-11-03 2021-11-03 用户意图识别模型的生成方法、用户意图识别方法和设备

Country Status (1)

Country Link
CN (1) CN113988267A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023185209A1 (zh) * 2022-03-31 2023-10-05 支付宝(杭州)信息技术有限公司 模型剪枝

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023185209A1 (zh) * 2022-03-31 2023-10-05 支付宝(杭州)信息技术有限公司 模型剪枝

Similar Documents

Publication Publication Date Title
CN111444340B (zh) 文本分类方法、装置、设备及存储介质
CN111143576A (zh) 一种面向事件的动态知识图谱构建方法和装置
CN112015859A (zh) 文本的知识层次抽取方法及装置、计算机设备及可读介质
WO2021121198A1 (zh) 基于语义相似度的实体关系抽取方法、装置、设备及介质
CN116415654A (zh) 一种数据处理方法及相关设备
CN114780727A (zh) 基于强化学习的文本分类方法、装置、计算机设备及介质
CN109918663A (zh) 一种语义匹配方法、装置及存储介质
CN113626589B (zh) 一种基于混合注意力机制的多标签文本分类方法
US9852177B1 (en) System and method for generating automated response to an input query received from a user in a human-machine interaction environment
CN111984791B (zh) 一种基于注意力机制的长文分类方法
CN114676234A (zh) 一种模型训练方法及相关设备
CN113806582B (zh) 图像检索方法、装置、电子设备和存储介质
CN115455171B (zh) 文本视频的互检索以及模型训练方法、装置、设备及介质
CN115221846A (zh) 一种数据处理方法及相关设备
CN113761868B (zh) 文本处理方法、装置、电子设备及可读存储介质
CN113297351A (zh) 文本数据标注方法及装置、电子设备及存储介质
CN111858898A (zh) 基于人工智能的文本处理方法、装置及电子设备
CN113505193A (zh) 一种数据处理方法及相关设备
CN113434683A (zh) 文本分类方法、装置、介质及电子设备
CN112925904A (zh) 一种基于Tucker分解的轻量级文本分类方法
CN112988970A (zh) 一种服务于智能问答系统的文本匹配算法
CN112328748A (zh) 一种用于保险配置意图识别的方法
CN112434536A (zh) 文档理解方法、设备和存储介质
CN115687934A (zh) 意图识别方法、装置、计算机设备及存储介质
CN111259147A (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