CN115292463B - 一种基于信息抽取的联合多意图检测和重叠槽填充的方法 - Google Patents

一种基于信息抽取的联合多意图检测和重叠槽填充的方法 Download PDF

Info

Publication number
CN115292463B
CN115292463B CN202210942971.2A CN202210942971A CN115292463B CN 115292463 B CN115292463 B CN 115292463B CN 202210942971 A CN202210942971 A CN 202210942971A CN 115292463 B CN115292463 B CN 115292463B
Authority
CN
China
Prior art keywords
intention
sentence
slot
intent
sequence
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
Application number
CN202210942971.2A
Other languages
English (en)
Other versions
CN115292463A (zh
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.)
Yunnan Nantian Electronics Information Corp ltd
Original Assignee
Yunnan University YNU
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 Yunnan University YNU filed Critical Yunnan University YNU
Priority to CN202210942971.2A priority Critical patent/CN115292463B/zh
Publication of CN115292463A publication Critical patent/CN115292463A/zh
Application granted granted Critical
Publication of CN115292463B publication Critical patent/CN115292463B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • 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/335Filtering based on additional data, e.g. user or group profiles
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Machine Translation (AREA)

Abstract

本发明提供了一种基于信息抽取的联合多意图检测和重叠槽填充的方法,包括以下步骤:S1、数据预处理:对输入的句子进行预处理操作;S2、口语语言编码:使用基于BERT模型的编码方式,对输入文本进行向量化提取特征;S3、意图槽值交互:意图槽值交互基于编码的特征,识别出句子中所存在的意图;再针对特定的意图向量,构造不同的文本特征与意图向量进行融合;S4、槽值识别:通过对前一步骤所获取到的融合向量进行序列标注任务,识别出对应的槽值以及槽值所属的类型;在多意图场景下,每个意图分别指导槽填充,获得多组槽类型、意图、槽值三元组;解决了现有语义识别过程中存在的多意图识别不准确、槽重叠难以解决等问题。

Description

一种基于信息抽取的联合多意图检测和重叠槽填充的方法
技术领域
本发明属于自然语言处理技术领域,涉及一种基于信息抽取的联合多意图检测和重叠槽填充的方法。
背景技术
任务型对话系统本质是一个为了满足用户某些具体需求(例如:查询天气、订车票机票等任务)而产生的多轮对话的人机交互系统。这个人机交互系统通过与用户进行多轮基于自然语言的对话来逐步收集与目标相关的信息,来确定用户意图、语义槽,继而通过答复、调用API等方式辅助用户获得某种服务。口语语言理解(Spoken LanguageUnderstanding,SLU)是对话系统中的一个重要组成部分,旨在对用户说出的自然语言进行目标性的理解。具体来说,口语语言理解任务的主要目标是:在对话系统中,对用户每一对话轮输入的自然语言进行解析转化成与特定领域或特定意图、槽位相关的语义表示;随后对话管理器可以根据语义表示、语义上下文等上下文信息,得到最合适的执行操作。
口语语言理解主要包括两个任务:意图识别(Intent Detection,ID),识别用户输入的自然语言语句的意图,一般被定义为分类任务来完成;语义槽填充(Slot Filling,SF),识别用户输入的自然语言语句中与意图相关的语义槽信息,通常被定义为序列标注任务来完成。
现阶段先进的口语理解方法采用联合建模的方式来利用两个任务之间的关联信息,使模型充分捕获两个任务之间的共享知识,从而提高两个任务的性能。其次,明确地控制两个任务的知识转移有助于提高可解释性,从而可以方便地分析意图识别和语义槽填充之间的影响。
但现有的方法主要集中于关注单个意图或单论对话的口语语言理解任务,这限制了它的应用,并且可能不足以满足现实场景中的复杂需求。存在两个主要的问题:首先意图检测和语义槽填充任务之间隐含的密切关联,现有的方法还不能对这种关联进行有效的推理,做出更好的决策。其次,在许多现实场景中,一个对话可能包含多个意图,一个槽类型也可能与多个意图有关。原有的方法不能有效地处理包含多个意图及其对应槽的对话,且无法利用多个意图信息去指导语义槽填充;虽然专利“CN114691839A——一种意图槽位识别方法”也考虑到了多意图情况下的语义槽填充,但其识别意图时使用的是句子向量与预设意图标签的相似度得到句子所属的一个或多个意图,同时需要设定一个阈值,如果相似度超过这个阈值则为需要识别的意图。这样的做法的缺陷很多,首先存在领域局限性,在不同的场景下需要人工预设不同的意图标签,且意图标签确定后在模型利用静态向量唯一表示,不会随着模型的更新而更新,同时意图识别很大程度上受到设置的阈值的影响,一旦阈值设置的不恰当,对整个SLU任务的效果影响很大。此外,在后续语义槽填充时并没有进一步考虑到意图和槽之间隐含的密切关联,语义槽填充任务是基于简单的预设的意图—槽的层次结构这一显式的关联来确定的,这里的层次结构指的是:如果意图唯一确定,槽类型的数量和类比也会唯一确定,槽识别任务需要从属于这个意图下的槽中选择,来进行槽填充。这样的做法存在很大的局限性,如果意图识别错误,后续的语义槽填充也一定是错误的。此外需要精心设计意图和槽的层次结构,需要浪费一定的时间和人力成本;最后是多意图场景下带来重叠问题:槽类型和槽值都相同、槽类型不同却槽值相同这两类槽重叠现象,而传统的模型是无法解决槽重叠问题。
现有的方法在解决上述问题可能存在一定的局限性,本发明提出了一种基于信息抽取的联合多意图检测和重叠槽填充的方法,为上述两大类问题提供了一种有效且满足现实需求的方法和思路。
发明内容
为实现上述目的,本发明提供一种基于信息抽取的联合多意图检测和重叠槽填充的方法,解决了现有语义识别过程中存在的多意图识别不准确、槽重叠难以解决等问题。
本发明所采用的技术方案是,一种基于信息抽取的联合多意图检测和重叠槽填充的方法,包括以下步骤:
S1、数据预处理:根据标注语料中给出的槽类型标注信息,将标注语料中的文本序列转化为BIO形式的标签序列;对输入的句子进行预处理操作,对数据进行初步的格式转换和过滤;
S2、口语语言编码:使用基于BERT模型的编码方式,对输入文本进行向量化提取特征;
S3、意图槽值交互:意图槽值交互基于编码的特征,识别出句子中所存在的意图;再针对特定的意图向量,构造不同的文本特征与意图向量进行融合;
S4、槽值识别:通过对前一步骤所获取到的融合向量进行序列标注任务,识别出对应的槽值以及槽值所属的类型;在多意图场景下,每个意图分别指导槽填充,获得多组槽类型、意图、槽值三元组。
进一步地,所述S1中预处理操作具体为:
首先,对初始句子根据BERT的输入要求进行重新分句,将BERT内置词典外的词语进行拆分,从而得到新的句子序列;
然后对新的句子序列进行向量化,分为两个阶段:分别是意图标注和槽类型标注;意图标注是指根据预定义的意图类别,需要对所有的意图类别进行编号,再按照意图编号对所有句子标记上对应的意图编号;槽类型标注需要对所有的槽类型进行编号,再使用槽类型编号对句子的每个单词编号,构建一个对应槽标注序列。
进一步地,所述S2中口语语言编码具体为:
针对当前轮次用户输入的对话查询
Figure BDA0003786489970000031
经过Wordpiece操作后得到新序列X=[x1,x2...,xt],利用BERT模型对上下文信息进行编码以生成句子序列嵌入向量集合H=[h1,h2,...,ht];其中,
Figure BDA0003786489970000032
表示第t轮句子的第i个单词,xt表示ut经过Wordpiece操作后得到的序列的第t个字符,ht表示新序列X第t个字符的嵌入,H为X中所有字符嵌入的集合,表示基于词的上下文级别的句子特征。
进一步地,所述S3中意图槽值交互分为以下4个步骤:S31、多意图识别;S32、降维;S33、意图与语义向量融合;S34、意图槽值交互;
其中,S31多意图识别具体为:根据BERT的输出,得到基于BERT的特殊标签CLS所生成的向量特征hcls,根据CLS的向量表示,直接使用一个sigmoid层进行多分类任务,来识别句子中的所有意图。
进一步地,所述S32具体为:对句子序列嵌入向量集合H=[h1,h2,...,ht]进行降维得到句子的整体特征表示Sh,基于Sh识别出句子中存在的意图;其中,ht表示第t个字符的嵌入。
进一步地,所述S33中意图与语义向量融合采用以下公式完成:
Figure BDA0003786489970000033
其中,Sk为融合了第k个意图的句子向量表示,αik为第i个意图信息hi在句子序列嵌入H上的注意力分布。
进一步地,所述S34具体为:如果步骤S32识别出来的意图为单意图,则经过步骤S33后直接进入槽值识别;如果步骤S32识别出来的意图为多意图,则通过以下门控机制后再进行槽值识别:
gk=σ((W1sg+b1)+(W2Sk+b2))
uk=gk×tanh(W3Sk+b3)
其中W1、W2、W3为用于训练的权重矩阵,b1、b2、b3为偏置参数;sg是句子的全局向量表示;Sk是融合了第k个意图的句子向量表示;uk是融合有效意图信息的句子表示;σ为激活函数;gk为门控机制的阈值。
进一步地,所述S4具体为:将S3得到的融合有效意图信息的句子表示uk与意图信息hi进行相加得到新的token向量表示
Figure BDA0003786489970000041
其中,
Figure BDA0003786489970000042
表示句子序列嵌入向量集合H中第k个字符嵌入与意图信息融合后得到的向量;接下来进行序列标注任务,对于句子向量表示
Figure BDA0003786489970000043
识别出当前意图下的槽值和槽类型:
Figure BDA0003786489970000044
Figure BDA0003786489970000045
其中i∈[1,..,n],表示句子的长度,
Figure BDA0003786489970000046
dw表示BERT输出的维度,dr_num表示槽值类型的数量乘以2并加1,bh为偏置参数,Wh为用于训练的权重矩阵;
Figure BDA0003786489970000047
表示句子中第i个词汇在意图rk下的被预测为对应标签的概率。
本发明的有益效果是:
本发明提出的基于预训练语言模型的联合多意图口语理解的方法,首先进行多意图识别,然后利用意图槽值交互模型有效分配不同的意图信息去指导槽位填充,完成句子内部字符间信息的交互,以缓解不协调槽的问题。此外不同的意图可以得到多组(槽类型、槽值)二元组,有效解决了解决重叠问题。
本发明不仅能提高口语理解的正确性,而且大大加快了槽解码速度,有效地解决了多意图口语理解带来的挑战,具有良好的实用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的基于信息抽取的联合多意图检测和重叠槽填充的方法流程图。
图2是本发明实施例的意图识别与语义槽填充示意图。
图3是本发明实施例中联合实体和关系抽取方法与本发明方法的对比图。
图4是本发明实施例中提供的槽重叠示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例中基于一种基于信息抽取的联合多意图检测和重叠槽填充的方法的流程图。如图1所示,该方法主要包括四个阶段,分别是一、数据预处理;二、使用嵌入模块进行口语语言编码;三、意图槽值交互;四、槽值识别。首先,数据预处理根据标注语料中给出的槽类型标注信息,转化为标签序列。然后,口语语言编码使用基于BERT的编码方式,对输入文本进行向量化提取特征。其次,意图槽值交互基于编码的特征,识别出句子中所存在的意图;再针对特定的意图向量,构造不同的文本特征与意图向量进行融合,提高意图对槽值识别的效果;最后,槽值识别通过序列标注任务,识别出对应的槽值以及槽值所属的类型,特别是在多意图场景下,每个意图分别指导槽填充,可获得多组[槽类型、意图、槽值]三元组。
为充分理解本发明的方法,首先对以下定义进行介绍:
当前轮次用户输入的对话查询
Figure BDA0003786489970000051
其历史对话为V={u1,u2,...,ut-1},其中
Figure BDA0003786489970000052
表示第t轮句子的第i个单词(单个词),V为第i轮对话的语境。语义槽填充任务可定义为给定当前轮次用户输入的对话查询(ut),输出语义槽序列
Figure BDA0003786489970000053
的序列标记任务,其中S为语义槽标签集合,则语义槽填充任务可以描述为以下公式:
SF=argmax(P(o(t,S)|ut,H))
多意图识别(Multi-ID)任务可定义为对于给定当前轮次用户输入的对话查询(ut),输出意图序列标签
Figure BDA0003786489970000054
的多标签分类任务。其中I为意图标签集合,k为意图数量,Multi-ID任务可以描述为以下公式:
Multi-ID=argmax(P(o(t,I)|ut,H))
该公式中的P为条件概率,P(o(t,I)|ut,H)指的是在意图序列标签o(t,I)在给定当前轮次用户输入的对话查询和其历史对话的条件下的概率分布。argmax指的对P(o(t,I)|ut,H)的最大输出。
本发明总体流程如下:
整个流程的主要思路为将[槽类型、意图、槽值]视为三元组[头实体、关系、尾实体],将意图和槽的交互视为三元组抽取任务。通过设计意图槽值交互层,转为针对特定的意图向量,然后得到三元组中的关系(即意图),再构造不同的文本特征与槽(即token级别)进行融合,提高意图对槽值识别的效果,达到解决多意图对槽填充的指导作用,最后在多意图场景下,每个意图分别指导槽填充,获得多组[槽类型、意图、槽值]三元组。
(1)口语语言编码。对口语语言进行向量化提取特征,基于编码的特征,用于后续的意图识别。使用基于BERT(Bidirectional Encoder Representation fromTransformers)的预训练的语言模型编码的方式,BERT是一种基于Transformer结构的语言表征模型。它通过无监督的方式从大规模无标签语料中学习得到,并充分考虑字符级、词语级、句子级和句间的关系特征,增强了字向量的语义表示。将这些学习到的语义知识通过迁移学习应用其他领域,能使模型更好地挖掘领域文本的特征信息。该步骤最后得到基于词的上下文级别的句子特征。
(2)多意图识别。首先基于步骤(1)得到的基于词的上下文级别的句子特征使用一个sigmoid层进行多分类任务,来识别句子中的所有意图。
(3)降维。针对特定的意图向量,构造不同的文本特征与token进行融合,提高意图对槽值识别的效果。其次基于识别出的意图,融合特定意图和token向量特征。采用GlobalAveragePooling方法对基于词的句子特征进行降维得到句子的整体的特征表示。
(4)意图与语义向量融合。对于多意图的情况,基于步骤(2)得到的意图向量表示,第k个意图的向量表示为
Figure BDA0003786489970000061
由于句子中的词在不同的意图下有着不同的具体意义,进一步提出一种基于意图的注意力机制,在每种不同的意图下为句子中的词汇附上不同的权值。通过注意力机制得到了融合了意图信息的句子表示。不同的意图信息只有在意图对句子是正的时候才对后续槽值提取有意义,而不相关意图的表征只会混淆后续的解码过程。
(5)意图槽值交互。步骤(5)利用融合向量为对槽填充提供细粒度的指导,为了自适应地控制前一个注意层提供的意图信息,利用门控机制作为桥梁融合了有效意图信息的句子表示。
(6)槽值识别。此步骤视为序列标注任务,识别出对应的槽值以及槽值所属的类型。通过步骤(5)得到句子的融合表示,将步骤(3)得到特征表示与意图信息进行相加进行序列标注任务,对于句子向量表示识别出当前意图下的槽值和槽类型。在多意图场景下,每个意图分别指导槽填充,获得多组[槽类型、意图、槽值]三元组。
在上述介绍的基础上,下面对本发明方法进行详细介绍:
S1、数据预处理
根据现有的标注语料中给出的槽类型标注信息,将标注语料中的文本序列转化为BIO形式的标签序列。这里的BIO形式指的,将文本序列中每个元素标注为“B-X”、“I-X”或者“O”。其中“B-X”表示此元素所在的片段属于X类型并且此元素在此片段的开头;“I-X”表示此元素所在的片段属于X类型并且此元素在此片段的中间位置;“O”表示不属于任何类型。首先,对初始句子根据BERT的输入要求进行重新分句,将BERT内置词典外的词语进行拆分,从而得到新的句子序列。然后对新的句子序列进行向量化,分为两个阶段:分别是意图标注和槽类型标注。意图标注是指根据预定义的意图类别,需要对所有的意图类别进行编号,再按照意图编号对所有句子标记上对应的意图编号。类似的,需要对所有的槽类型进行编号,再使用槽类型编号对句子的每个单词编号,构建一个对应槽标注序列。对输入的句子进行预处理操作,对数据(即输入的句子)进行初步的格式转换和过滤。
S2、口语语言编码
口语语言编码使用BERT作为初始嵌入,为了适应BERT的输入,每个词在输入BERT层前需要经过Wordpiece操作,词与词之间插入[unused1]作为分隔符,并在句子首尾分别嵌入[CLS]和[SEP]两个特殊的token。
具体的,给定当前轮次用户输入的对话查询
Figure BDA0003786489970000071
经过Wordpiece操作后得到新序列X,其中X=[x1,x2...,xt],xt表示ut经过Wordpiece操作后得到的序列的第t个字符。接下来利用BERT模型对上下文信息进行编码以生成句子序列嵌入H=[h1,h2,...,ht]。其中ht表示新序列X第t个字符的嵌入,H为X中所有字符嵌入的集合,表示基于词的上下文级别的句子特征。需要注意的是,经过Wordpiece后的单词被分解为多个词组,在最后解码时需要重新将词组组合成原来的单词。
Figure BDA0003786489970000072
ht=BERT(xt)
其中,
Figure BDA0003786489970000081
Figure BDA0003786489970000082
为向量空间。dω表示BERT隐藏状态层的维度。然后,使用H=[h1,h2,...,ht]来表示基于词的上下文级别的句子特征。
S3、意图槽值交互
此步骤分为4个步骤:(1)多意图识别、(2)降维、(3)意图与语义向量融合、(4)意图槽值交互
步骤(1),根据BERT的输出,可以得到基于BERT的特殊标签[CLS]所生成的向量特征hcls,它用来表示整个句子的向量,根据[CLS]向量表示,直接使用一个sigmoid层进行多分类任务,来识别句子中的所有意图。
r=σ(Wclshcls+bcls)
其中r为意图标签的概率分布,σ为激活函数,即sigmoid函数,Wcls为权重矩阵,可随机初始化,并与模型中其他参数一起训练,bcls为偏差,可随机初始化。
它的损失函数如下所示,yi∈{0,1},表示是否存在意图。
Figure BDA0003786489970000083
其中N为样本的总数量,yi表示第i个样本的实际标签类别,ri为模型预测出的第i个样本的标签类别。
步骤(2)降维。基于BERT输出的token向量,进行意图识别,并融合特定意图和token向量特征。这里采用GlobalAveragePooling方法对H=[h1,h2,...,ht]进行降维得到句子的整体特征表示Sh,即维度从[batch_size,seq_len,dω]变为[batch_size,dω],基于Sh识别出句子中存在的意图,其中,batch_size表示批次大小,seq_len表示句子长度,dω表示嵌入特征维度。在训练阶段,使用句子中真实的意图进行向量嵌入,使用one-hot标签,向量长度为意图总数,如果对应意图存在,则在句子中对应位置标注为1。基于意图嵌入可以得到意图向量表示,第i个意图的向量表示为
Figure BDA0003786489970000084
步骤(3),根据得到的意图数量,由于句子中的词在不同的意图下有着不同的具体意义,这里设计了一种基于意图的注意力机制,在每种不同的意图下为句子中的词汇附上不同的权值。
sg=avg[h1,h2,...,ht]
eik=vTtanh(WrFk+Wgsg+Whhi)
Figure BDA0003786489970000091
其中avg为计算算术平均值的函数,
Figure BDA0003786489970000092
Wg
Figure BDA0003786489970000093
是用于训练的权重矩阵,sg是句子的全局向量表示,eik为第k个意图的向量表与句子序列嵌入H中第i个字符向量的注意力分数;datt表示注意力权重值的维度,dr为嵌入向量维度,dhe为BERT输出隐藏层向量的维度,αik为第i个意图信息hi在句子序列嵌入H上的注意力分布。这样,注意力分数不仅可以衡量每个词对关系表达式的重要性,还可以衡量它对整个句子的贡献。特定关系下的句子向量表示sk由关系向量和句子中词汇的向量加权得到。
Figure BDA0003786489970000094
根据上述计算,得到了融合了第k个意图的句子向量表示sk。不同的意图信息只有在意图对句子是正的时候才对后续槽值提取有意义,而不相关意图的表征只会混淆后续的解码过程。
步骤(4),如果步骤(2)识别出来的意图为单意图,则经过步骤3后直接进入槽值识别模块。如果步骤(2)识别出来的意图为多意图,为了自适应地控制前一个注意层提供的意图信息,提出了一种门控机制作为桥梁。仍然以k-th意图为例,门控操作定义如下:
gk=σ((W1sg+b1)+(W2Sk+b2))
uk=gk×tanh(W3Sk+b3)
其中W1、W2、W3为用于训练的权重矩阵,b1、b2、b3为偏置参数。sg是句子的全局向量表示。Sk是融合了第k个意图的句子向量表示,gk为门控机制的阈值。
S4、槽值识别
根据步骤S3计算得到的结果,得到了融合有效意图信息的句子表示uk,将先前得到的token表示uk与意图信息进行相加得到新的token向量表示
Figure BDA0003786489970000095
此时,
Figure BDA0003786489970000096
表示H中第k个字符嵌入与意图信息的融合后得到的向量。接下来进行序列标注任务,对于句子向量表示
Figure BDA0003786489970000097
识别出当前意图下的槽值和槽类型。
Figure BDA0003786489970000098
Figure BDA0003786489970000099
其中i∈[1,..,n],表示句子的长度,
Figure BDA0003786489970000101
dw表示BERT输出的维度,dr_num表示槽值类型的数量乘以2并加1,bh为偏置参数,Wh为用于训练的权重矩阵。因为每个槽值类型分为头尾两个标签,最后不属于槽值类型的token用[O]表示。
Figure BDA0003786489970000102
表示句子中第i个词汇在意图rk下的被预测为对应标签tag的概率。
此外,在多意图场景下,每个意图分别指导槽填充,最后可获得多组[槽类型、意图、槽值]三元组。
其损失函数
Figure BDA0003786489970000103
如下所示:
Figure BDA0003786489970000104
其中N为样本的总数量,
Figure BDA0003786489970000105
表示第i个样本的实际标签类别,
Figure BDA0003786489970000106
为模型预测出的第i个样本的标签类别。
由上述方案可以看出,本方案针对口语语言理解任务,难以处理槽重叠的问题以及建模多意图和槽之间的联系,引入BERT预训练模型和注意力机制来进行编码句子,其中通过BERT构建上下文特征和句子特征相结合,可以有效地利用句子间的信息,从而提高意图和槽值的识别效果,引入注意力机制,更好地捕获句子中重要词汇的特征,可以更好地对句子所属的意图进行分类,从而提高模型的识别效果。此外,将特定意图的向量提取出来与句子向量相结合去识别对应意图下的槽值,可以融入意图特征来辅助槽值的识别,提高识别效果。综述,本发明提出的一种基于信息抽取的联合多意图检测和重叠槽填充的方法,不仅能提高口语理解的正确性,而且大大加快了槽解码速度,有效地解决了多意图检测和重叠槽填充带来的挑战,具有良好的实用性。
在一个具体的实施例中,例如,给定一个用户的对话:“你好,我想在看完电影《长津湖》后预订一家市中心的高档餐馆。”用户在一个话语中表达了他的意图(“预订电影”、“预订餐厅”)。联合多意图口语理解的方法需要完成多意图识别和语义槽填充两个子任务。并输出第一个意图(“预订电影”)以及对应的语义槽(“电影名称”:“长津湖”)和第二个意图(“预订餐厅”)以及对应的语义槽(“价位”:“高档”,“位置”:“市中心”),具体参见图2。此实施例难点在于如何有效地利用多个意图信息去指导槽位填充。对于给定的对话,首先需要识别出文本中所包含的意图,当存在多意图时,需要基于特定的意图去识别相应的槽值。因此,多意图口语语言理解模型将意图分类建模为多分类任务,而槽值识别则建模为一个序列标准任务。
针对现实场景普遍存在一个对话可能包含多个意图,一个槽类型也可能与多个意图有关的多意图对话问题。本发明设计了一种基于信息抽取的联合多意图检测和重叠槽填充的方法,用于处理包含多个意图及其对应槽的对话。对于多意图对话存在的“如何有效地利用多个意图信息去指导槽位填充”这一难点,本发明利用联合实体和关系抽取任务的思路,将[槽类型、意图、槽值]视为三元组[头实体、关系、尾实体],将意图和槽的交互视为三元组抽取任务,通过设计意图槽值交互层,转换为针对特定的意图向量,构造不同的文本特征与槽(即token级别)进行融合,提高意图对槽值识别的效果,达到解决多意图对槽填充的指导作用。
本发明方法具有几个关键优势:首先,通过任务类比,可将意图识别视为关系抽取任务,它们都为分类任务。同理将槽填充视为命名实体识别任务,它们都为序列标注任务。图3所示展示了联合实体和关系抽取与联合多意图识别和槽填充两个方法的共通之处。信息抽取领域成熟的技术可迁移到口语理解领域。其次,多意图口语理解任务对比单意图口语理解任务,除了需要考虑为潜在的语义槽分配不同的意图信息指导其填充,还需要考虑槽重叠问题,这里的重叠问题指的是,联合实体和关系抽取模型所提取的三元组可能共享相同的实体或关系,具体如图4所示。在多意图下,可能存在(1)槽类型、槽值都相同;(2)槽类型不同、槽值相同这两类槽重叠现象,而传统的模型是无法解决槽重叠问题。而通过上述转换,可以利用信息抽取领域的实体-关系重叠技术解决。
最后,综合上述说明,本发明的创新点在于:(1)本发明公开了一种基于信息抽取的联合多意图检测和重叠槽填充的方法,进行多意图识别,并能有效利用多个意图信息去指导槽位填充。(2)本发明将多意图检测和重叠槽值填充任务转换为联合实体和关系抽取问题,即使用联合实体和关系的提取方法完成多意图识别与语义槽填充,并利用联合实体和关系抽取方法中实体关系间的交互建模,将其迁移到对话领域中意图和槽之间的交互中。弥补了重叠槽的填充问题的空白,能有效利用多个意图信息指导槽位填充,满足现实场景多意图口语理解的需求,并提高口语理解的正确性。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (4)

1.一种基于信息抽取的联合多意图检测和重叠槽填充的方法,其特征在于,包括以下步骤:
S1、数据预处理:根据标注语料中给出的槽类型标注信息,将标注语料中的文本序列转化为BIO形式的标签序列;对输入的句子进行预处理操作,进行初步的格式转换和过滤;
S2、口语语言编码:使用基于BERT模型的编码方式,对输入文本进行向量化提取特征;
S3、意图槽值交互:意图槽值交互基于编码的特征,识别出句子中所存在的意图;再针对特定的意图向量,构造不同的文本特征与意图向量进行融合;
S4、槽值识别:通过对前一步骤所获取到的融合向量进行序列标注任务,识别出对应的槽值以及槽值所属的类型;在多意图场景下,每个意图分别指导槽填充,获得多组槽类型、意图、槽值三元组;
所述S3中意图槽值交互分为以下4个步骤:S31、多意图识别;S32、降维;S33、意图与语义向量融合;S34、意图槽值交互;
其中,S31多意图识别具体为:根据BERT的输出,得到基于BERT的特殊标签CLS所生成的向量特征hcls,根据CLS的向量表示,直接使用一个sigmoid层进行多分类任务,来识别句子中的所有意图;
所述S32具体为:对句子序列嵌入向量集合H=[h1,h2,…,ht]进行降维得到句子的整体特征表示Sh,基于Sh识别出句子中存在的意图;其中,ht表示第t个字符的嵌入;
所述S33中意图与语义向量融合采用以下公式完成:
Figure FDA0004102710110000011
其中,Sk为融合了第k个意图的句子向量表示,αik为第i个意图信息hi在句子序列嵌入H上的注意力分布;
所述S34具体为:如果步骤S32识别出来的意图为单意图,则经过步骤S33后直接进入槽值识别;如果步骤S32识别出来的意图为多意图,则通过以下门控机制后再进行槽值识别:
gk=σ((W1sg+b1)+(W2Sk+b2))
uk=gk×tanh(W3Sk+b3)
其中W1、W2、W3为用于训练的权重矩阵,b1、b2、b3为偏置参数;sg是句子的全局向量表示;Sk是融合了第k个意图的句子向量表示;uk是融合有效意图信息的句子表示;σ为激活函数;gk为门控机制的阈值。
2.根据权利要求1所述的一种基于信息抽取的联合多意图检测和重叠槽填充的方法,其特征在于,所述S1中预处理操作具体为:
首先,对初始句子根据BERT的输入要求进行重新分句,将BERT内置词典外的词语进行拆分,从而得到新的句子序列;
然后对新的句子序列进行向量化,分为两个阶段:分别是意图标注和槽类型标注;意图标注是指根据预定义的意图类别,需要对所有的意图类别进行编号,再按照意图编号对所有句子标记上对应的意图编号;槽类型标注需要对所有的槽类型进行编号,再使用槽类型编号对句子的每个单词编号,构建一个对应槽标注序列。
3.根据权利要求1所述的一种基于信息抽取的联合多意图检测和重叠槽填充的方法,其特征在于,所述S2中口语语言编码具体为:
针对当前轮次用户输入的对话查询
Figure FDA0004102710110000021
经过Wordpiece操作后得到新序列X=[x1,x2…,xt],利用BERT模型对上下文信息进行编码以生成句子序列嵌入向量集合H=[h1,h2,…,ht];其中,
Figure FDA0004102710110000022
表示第t轮句子的第i个单词,xt表示ut经过Wordpiece操作后得到的序列的第t个字符,ht表示新序列X第t个字符的嵌入,H为X中所有字符嵌入向量的集合,表示基于词的上下文级别的句子特征。
4.根据权利要求1所述的一种基于信息抽取的联合多意图检测和重叠槽填充的方法,其特征在于,所述S4具体为:将S3得到的融合有效意图信息的句子表示uk与意图信息hi进行相加得到新的token向量表示
Figure FDA0004102710110000023
其中,
Figure FDA0004102710110000024
表示句子序列嵌入向量集合H中第k个字符嵌入与意图信息融合后得到的向量;接下来进行序列标注任务,对于句子向量表示
Figure FDA0004102710110000025
识别出当前意图下的槽值和槽类型:
Figure FDA0004102710110000026
Figure FDA0004102710110000027
其中i∈[1,..,n],表示句子的长度,
Figure FDA0004102710110000028
dw表示BERT输出的维度,dr_num表示槽值类型的数量乘以2并加1,bh为偏置参数,Wh为用于训练的权重矩阵;
Figure FDA0004102710110000029
表示句子中第i个词汇在意图rk下的被预测为对应标签的概率。
CN202210942971.2A 2022-08-08 2022-08-08 一种基于信息抽取的联合多意图检测和重叠槽填充的方法 Active CN115292463B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210942971.2A CN115292463B (zh) 2022-08-08 2022-08-08 一种基于信息抽取的联合多意图检测和重叠槽填充的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210942971.2A CN115292463B (zh) 2022-08-08 2022-08-08 一种基于信息抽取的联合多意图检测和重叠槽填充的方法

Publications (2)

Publication Number Publication Date
CN115292463A CN115292463A (zh) 2022-11-04
CN115292463B true CN115292463B (zh) 2023-05-12

Family

ID=83829126

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210942971.2A Active CN115292463B (zh) 2022-08-08 2022-08-08 一种基于信息抽取的联合多意图检测和重叠槽填充的方法

Country Status (1)

Country Link
CN (1) CN115292463B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115690552A (zh) * 2022-12-30 2023-02-03 智慧眼科技股份有限公司 多意图识别方法、装置、计算机设备及存储介质
CN116306685A (zh) * 2023-05-22 2023-06-23 国网信息通信产业集团有限公司 一种面向电力业务场景的多意图识别方法及系统
CN116542256B (zh) * 2023-07-05 2024-02-06 广东数业智能科技有限公司 一种融合对话上下文信息的自然语言理解方法与装置
CN117151121B (zh) * 2023-10-26 2024-01-12 安徽农业大学 一种基于波动阈值与分割化的多意图口语理解方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112183061A (zh) * 2020-09-28 2021-01-05 云知声智能科技股份有限公司 一种多意图口语理解方法、电子设备和存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11126793B2 (en) * 2019-10-04 2021-09-21 Omilia Natural Language Solutions Ltd. Unsupervised induction of user intents from conversational customer service corpora
CN111625634B (zh) * 2020-05-25 2023-08-22 泰康保险集团股份有限公司 词槽识别方法及装置、计算机可读存储介质、电子设备
CN114186563A (zh) * 2020-09-15 2022-03-15 华为技术有限公司 电子设备及其语义解析方法、介质和人机对话系统
CN113204952B (zh) * 2021-03-26 2023-09-15 南京邮电大学 一种基于聚类预分析的多意图与语义槽联合识别方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112183061A (zh) * 2020-09-28 2021-01-05 云知声智能科技股份有限公司 一种多意图口语理解方法、电子设备和存储介质

Also Published As

Publication number Publication date
CN115292463A (zh) 2022-11-04

Similar Documents

Publication Publication Date Title
CN115292463B (zh) 一种基于信息抽取的联合多意图检测和重叠槽填充的方法
CN110609891A (zh) 一种基于上下文感知图神经网络的视觉对话生成方法
CN110413746A (zh) 对用户问题进行意图识别的方法及装置
CN109657239A (zh) 基于注意力机制和语言模型学习的中文命名实体识别方法
CN109918681B (zh) 一种基于汉字-拼音的融合问题语义匹配方法
WO2022198750A1 (zh) 语义识别方法
CN112183064B (zh) 基于多任务联合学习的文本情绪原因识别系统
CN111767718B (zh) 一种基于弱化语法错误特征表示的中文语法错误更正方法
CN111985239A (zh) 实体识别方法、装置、电子设备及存储介质
CN114443827A (zh) 基于预训练语言模型的局部信息感知对话方法及系统
CN113255320A (zh) 基于句法树和图注意力机制的实体关系抽取方法及装置
CN110781290A (zh) 一种长篇章结构化文本摘要提取方法
CN111581970B (zh) 一种网络语境的文本识别方法、装置及存储介质
CN111984780A (zh) 多意图识别模型训练方法和多意图识别方法及相关装置
CN110909144A (zh) 问答对话方法、装置、电子设备及计算机可读存储介质
CN112200664A (zh) 基于ernie模型和dcnn模型的还款预测方法
CN113705315A (zh) 视频处理方法、装置、设备及存储介质
CN110942774A (zh) 一种人机交互系统、其对话方法、介质和设备
CN117010387A (zh) 融合注意力机制的RoBERTa-BiLSTM-CRF语音对话文本命名实体识别系统
CN112800184A (zh) 基于Target-Aspect-Opinion联合抽取的短文本评论情感分析方法
CN115408488A (zh) 用于小说场景文本的分割方法及系统
CN113254575B (zh) 一种基于多步证据推理的机器阅读理解方法与系统
CN116776876A (zh) 一种基于InterFormer-BERT模型和插入特殊标记的中文命名实体识别方法
CN116595023A (zh) 地址信息的更新方法和装置、电子设备及存储介质
CN116562291A (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
TR01 Transfer of patent right

Effective date of registration: 20240826

Address after: 650000 Industrial R&D Base of Kunming High tech Industrial Development Zone, Yunnan Province

Patentee after: YUNNAN NANTIAN ELECTRONICS INFORMATION Corp.,Ltd.

Country or region after: China

Address before: 650091 Yunnan Province, Kunming city Wuhua District Lake Road No. 2

Patentee before: YUNNAN University

Country or region before: China