1.本发明属于语言处理技术领域,尤其涉及一种会话信息抽取方法、系统、电子设备及存储介质。
背景技术:
2.基于会话数据的信息抽取有广泛的应用场景。特定行业(例如:医生、金融从业者等)的人工时十分昂贵,如何使用数据挖掘技术自动地抽取专业性会话所包含的重要的结构化的信息是本技术领域面临的技术问题,现有技术中,包括基于语法规则的模型和基于统计机器学习的模型,但是,会话比书面表达更加灵活多变,传统nlp处理工具效果明显下降。比如:“一阵一阵的”专业说法是“阵发性”;会话类型数据普遍具有多轮结构,待抽取信息分布在多轮对话中,结构复杂;没有利用背景知识,高专业度的行业往往存在术语或者黑话,难以通过通用方法识别。
技术实现要素:
3.本技术实施例提供了一种会话信息抽取方法、系统、电子设备及存储介质,以至少解决现有方法灵活度低、难以应对复杂结构和高专业度对话的问题。
4.第一方面,本技术实施例提供了一种会话信息抽取方法,包括:序列划分标注步骤,对于待抽取对话所述的领域,构建一领域知识图谱,对所述对话进行序列划分,并对所述序列中涉及所述领域知识图谱的内容进行标注;实体属性编码步骤,获取所述序列中的字符实体表示和字符属性表示,并进一步获取所述领域知识图谱的候选实体表示和候选属性表示;嵌入匹配计算步骤,根据所述候选实体表示通过注意力机制对所述字符实体表示计算第一嵌入,并根据所述候选属性表示通过注意力机制对所述字符属性表示计算第二嵌入;嵌入集成交互步骤,将所述第一嵌入和所述第二嵌入进行交互,获取所述对话的最终特征矩阵;模型构建实施步骤,根据所述最终特征矩阵进行打分和模型训练,并通过训练完成的所述模型进行会话信息的抽取。
5.优选的,将所述对话切分为若干对话阶段,再通过滑窗方式将每个所述对话阶段划分为所述序列。
6.优选的,编码器结构为在双向lstm结构输出的结果之上堆叠自注意力机制层。
7.优选的,将所述第一嵌入和所述第二嵌入中的每个字符的嵌入向量逐个拼接,获得所述最终特征矩阵。
8.第二方面,本技术实施例提供了一种会话信息抽取系统,适用于上述一种会话信息抽取方法,包括:序列划分标注模块,对于待抽取对话所述的领域,构建一领域知识图谱,对所述对话进行序列划分,并对所述序列中涉及所述领域知识图谱的内容进行标注;实体属性编码模块,获取所述序列中的字符实体表示和字符属性表示,并进一步获取所述领域知识图谱的候选实体表示和候选属性表示;嵌入匹配计算模块,根据所述候选实体表示通过注意力机制对所述字符实体表示计算第一嵌入,并根据所述候选属性表示通过注意力机
制对所述字符属性表示计算第二嵌入;嵌入集成交互模块,将所述第一嵌入和所述第二嵌入进行交互,获取所述对话的最终特征矩阵;模型构建实施模块,根据所述最终特征矩阵进行打分和模型训练,并通过训练完成的所述模型进行会话信息的抽取。
9.在其中一些实施例中,所述序列划分标注模块进一步包括:将所述对话切分为若干对话阶段,再通过滑窗方式将每个所述对话阶段划分为所述序列。
10.在其中一些实施例中,所述序列划分标注模块进一步包括:编码器结构为在双向lstm结构输出的结果之上堆叠自注意力机制层。
11.在其中一些实施例中,所述嵌入集成交互模块进一步包括:将所述第一嵌入和所述第二嵌入中的每个字符的嵌入向量逐个拼接,获得所述最终特征矩阵。
12.第三方面,本技术实施例提供了一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的一种会话信息抽取方法。
13.第四方面,本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的一种会话信息抽取方法。
14.本技术可应用于知识图谱技术领域。相比于相关技术,本技术实施例提供的一种基于深度神经网络对对话类型数据进行关键信息抽取的方法,通过设计级联的多个部分(包括编码、匹配与集成等),聚合跨多个话轮的序列,并利用已经构建好的领域知识图谱,完成对话中与知识库条目有关的关键信息的抽取工作。本发明标注方式便捷,比起序列标注的标记方法要容易上手,并且打标签的标注者不需要是某个特定领域的专家;可以有效地处理同一个标签被多个话轮同时覆盖的场景;可以有效地将分步在多轮对话中、结构复杂的信息有效聚合,作为最终信息抽取的输出结果。
附图说明
15.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
16.图1为本发明的会话信息抽取方法流程图;
17.图2为本发明的会话信息抽取系统的框架图;
18.图3为本发明的电子设备的框架图;
19.以上图中:
20.1、序列划分标注模块;2、实体属性编码模块;3、嵌入匹配计算模块;4、嵌入集成交互模块;5、模型构建实施模块;60、总线;61、处理器;62、存储器;63、通信接口。
具体实施方式
21.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。基于本技术提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
22.显而易见地,下面描述中的附图仅仅是本技术的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本技术应用
于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本技术公开的内容相关的本领域的普通技术人员而言,在本技术揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本技术公开的内容不充分。
23.在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本技术所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
24.除非另作定义,本技术所涉及的技术术语或者科学术语应当为本技术所属技术领域内具有一般技能的人士所理解的通常意义。本技术所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
25.以下,结合附图详细介绍本发明的实施例:
26.图1为本发明的会话信息抽取方法流程图,请参见图1,本发明会话信息抽取方法包括如下步骤:
27.s1:对于待抽取对话所述的领域,构建一领域知识图谱,对所述对话进行序列划分,并对所述序列中涉及所述领域知识图谱的内容进行标注。
28.可选的,将所述对话切分为若干对话阶段,再通过滑窗方式将每个所述对话阶段划分为所述序列。
29.在具体实施中,首先,对于待抽取对话所属的领域,通过人工方式构建一个领域知识图谱。该知识图谱由有限个三元组(实体及其属性)构成。
30.对于一个完整地对话过程,首先人工切分成若干阶段、话轮,进而通过滑窗方式将候选的对话切分,每一个对话阶段以n个邻接对为窗口大小,1为步长进行序列的划分。
31.以n=2为例,以下对话可以被切分为两个个序列:
32.a:”你好,我叫小明“33.b:”你好,我叫小红“34.a:“你今天吃了吗”35.序列1:
36.a:”你好,我叫小明“37.b:”你好,我叫小红“38.序列2:
39.b:”你好,我叫小红“40.a:“你今天吃了吗”41.在具体实施中,标注者被要求阅读每个序列,并对序列中的词语是否谈及知识图谱中的三元组进行标注。
42.s2:获取所述序列中的字符实体表示和字符属性表示,并进一步获取所述领域知识图谱的候选实体表示和候选属性表示。
43.可选的,编码器结构为在双向lstm结构输出的结果之上堆叠自注意力机制层。
44.在具体实施中,在编码阶段,首先对待检测对话序列中每一个句子中的每个字符分别得到一个和实体有关的编码h_utt_e(即字符实体表示)和一个与属性有关的编码h_utt_a(即字符属性表示)。编码器的结构采用在双向lstm结构输出的结果之上堆叠自注意力机制层。
45.在具体实施中,使用同样的编码器,对领域知识图谱中的实体以及属性进行编码得到候选实体表示h_can_e和候选属性表示h_can_a。
46.s3:根据所述候选实体表示通过注意力机制对所述字符实体表示计算第一嵌入,并根据所述候选属性表示通过注意力机制对所述字符属性表示计算第二嵌入。
47.在具体实施中,候选实体表示h_can_e用作注意力机制中的查询query来对原始话语中每个字符的实体表示h_utt_e计算新的嵌入q_e。
48.与此同时,候选属性表示h_can_a用作另一个注意力机制中的查询query来对原始话语中每个字符的属性表示h_utt_a计算原始话语中每个字符的嵌入q_a。这一步的目标是给一个候选人捕获与原始话语最相关的信息。
49.s4:将所述第一嵌入和所述第二嵌入进行交互,获取所述对话的最终特征矩阵。
50.可选的,将所述第一嵌入和所述第二嵌入中的每个字符的嵌入向量逐个拼接,获得所述最终特征矩阵。
51.在具体实施中,为了知道候选实体和属性是否在一个对话序列中被表达,需要对实体对和属性对的信息同时进行获取。可以通过多种方式进行实现,其目的在于将前序步骤获得的q_e和q_a进行交互,从而同时获取该序列中实体对和属性对的信息。集成模块的实现方法包括但不局限于将q_e和q_a中每个字符的嵌入向量逐个拼接,获得对原始话语的最终特征矩阵q_f。
52.s5:根据所述最终特征矩阵进行打分和模型训练,并通过训练完成的所述模型进行会话信息的抽取。
53.在具体实施中,将q_f输入到打分部分,使用计算得到的原始话语特征q_f对所有候选进行打分。窗口中所有原始话语与候选配对计算得到的分数中最高的是该候选的最终得分。打分函数的网络结构由n层前馈全连接网络构成,使用sigmoid激活函数。
54.在具体实施中,给定已经标注好的样本,首先使用随机初始化的网络参数,对k个样本中每个样本的所有字符进行候选标签的预测。使用交叉熵损失函数计算该预测结果与人工标注正确的结果之间的误差。使用反向传播方法迭代地对网络参数进行训练,直到收敛或者特定迭代次数达到一定阈值为止。
55.需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
56.本技术实施例提供了一种会话信息抽取系统,适用于上述的一种会话信息抽取方法。如以下所使用的,术语“单元”、“模块”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件、或者软件和硬件的组合的实
现也是可能并被构想的。
57.图2为根据本发明的会话信息抽取系统的框架图,请参见图2,包括:
58.序列划分标注模块1:对于待抽取对话所述的领域,构建一领域知识图谱,对所述对话进行序列划分,并对所述序列中涉及所述领域知识图谱的内容进行标注。
59.可选的,将所述对话切分为若干对话阶段,再通过滑窗方式将每个所述对话阶段划分为所述序列。
60.在具体实施中,首先,对于待抽取对话所属的领域,通过人工方式构建一个领域知识图谱。该知识图谱由有限个三元组(实体及其属性)构成。
61.对于一个完整地对话过程,首先人工切分成若干阶段、话轮,进而通过滑窗方式将候选的对话切分,每一个对话阶段以n个邻接对为窗口大小,1为步长进行序列的划分。
62.以n=2为例,以下对话可以被切分为两个个序列:
63.a:”你好,我叫小明“64.b:”你好,我叫小红“65.a:“你今天吃了吗”66.序列1:
67.a:”你好,我叫小明“68.b:”你好,我叫小红“69.序列2:
70.b:”你好,我叫小红“71.a:“你今天吃了吗”72.在具体实施中,标注者被要求阅读每个序列,并对序列中的词语是否谈及知识图谱中的三元组进行标注。
73.实体属性编码模块2:获取所述序列中的字符实体表示和字符属性表示,并进一步获取所述领域知识图谱的候选实体表示和候选属性表示。
74.可选的,编码器结构为在双向lstm结构输出的结果之上堆叠自注意力机制层。
75.在具体实施中,在编码阶段,首先对待检测对话序列中每一个句子中的每个字符分别得到一个和实体有关的编码h_utt_e(即字符实体表示)和一个与属性有关的编码h_utt_a(即字符属性表示)。编码器的结构采用在双向lstm结构输出的结果之上堆叠自注意力机制层。
76.在具体实施中,使用同样的编码器,对领域知识图谱中的实体以及属性进行编码得到候选实体表示h_can_e和候选属性表示h_can_a。
77.嵌入匹配计算模块3:根据所述候选实体表示通过注意力机制对所述字符实体表示计算第一嵌入,并根据所述候选属性表示通过注意力机制对所述字符属性表示计算第二嵌入。
78.在具体实施中,候选实体表示h_can_e用作注意力机制中的查询query来对原始话语中每个字符的实体表示h_utt_e计算新的嵌入q_e。
79.与此同时,候选属性表示h_can_a用作另一个注意力机制中的查询query来对原始话语中每个字符的属性表示h_utt_a计算原始话语中每个字符的嵌入q_a。这一步的目标是给一个候选人捕获与原始话语最相关的信息。
80.嵌入集成交互模块4:将所述第一嵌入和所述第二嵌入进行交互,获取所述对话的最终特征矩阵。
81.可选的,将所述第一嵌入和所述第二嵌入中的每个字符的嵌入向量逐个拼接,获得所述最终特征矩阵。
82.在具体实施中,为了知道候选实体和属性是否在一个对话序列中被表达,需要对实体对和属性对的信息同时进行获取。可以通过多种方式进行实现,其目的在于将前序步骤获得的q_e和q_a进行交互,从而同时获取该序列中实体对和属性对的信息。集成模块的实现方法包括但不局限于将q_e和q_a中每个字符的嵌入向量逐个拼接,获得对原始话语的最终特征矩阵q_f。
83.模型构建实施模块5:根据所述最终特征矩阵进行打分和模型训练,并通过训练完成的所述模型进行会话信息的抽取。
84.在具体实施中,将q_f输入到打分部分,使用计算得到的原始话语特征q_f对所有候选进行打分。窗口中所有原始话语与候选配对计算得到的分数中最高的是该候选的最终得分。打分函数的网络结构由n层前馈全连接网络构成,使用sigmoid激活函数。
85.在具体实施中,给定已经标注好的样本,首先使用随机初始化的网络参数,对k个样本中每个样本的所有字符进行候选标签的预测。使用交叉熵损失函数计算该预测结果与人工标注正确的结果之间的误差。使用反向传播方法迭代地对网络参数进行训练,直到收敛或者特定迭代次数达到一定阈值为止。
86.另外,结合图1描述的一种会话信息抽取方法可以由电子设备来实现。图3为本发明的电子设备的框架图。
87.电子设备可以包括处理器61以及存储有计算机程序指令的存储器62。
88.具体地,上述处理器61可以包括中央处理器(cpu),或者特定集成电路(application specific integrated circuit,简称为asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
89.其中,存储器62可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器62可包括硬盘驱动器(hard disk drive,简称为hdd)、软盘驱动器、固态驱动器(solid state drive,简称为ssd)、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,简称为usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器62可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器62可在数据处理装置的内部或外部。在特定实施例中,存储器62是非易失性(non
‑
volatile)存储器。在特定实施例中,存储器62包括只读存储器(read
‑
only memory,简称为rom)和随机存取存储器(random access memory,简称为ram)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(programmable read
‑
only memory,简称为prom)、可擦除prom(erasable programmable read
‑
only memory,简称为eprom)、电可擦除prom(electrically erasable programmable read
‑
only memory,简称为eeprom)、电可改写rom(electrically alterable read
‑
only memory,简称为earom)或闪存(flash)或者两个或更多个以上这些的组合。在合适的情况下,该ram可以是静态随机存取存储器(static random
‑
access memory,简称为sram)或动态随机存取存储器(dynamic random access memory,简称为dram),其中,dram可以是快速页模式动态随机存取存储器(fast page mode dynamic random access memory,简称为
fpmdram)、扩展数据输出动态随机存取存储器(extended date out dynamic random access memory,简称为edodram)、同步动态随机存取内存(synchronous dynamic random
‑
access memory,简称sdram)等。
90.存储器62可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器61所执行的可能的计算机程序指令。
91.处理器61通过读取并执行存储器62中存储的计算机程序指令,以实现上述实施例中的任意一种会话信息抽取方法。
92.在其中一些实施例中,电子设备还可包括通信接口63和总线60。其中,如图3所示,处理器61、存储器62、通信接口63通过总线60连接并完成相互间的通信。
93.通信端口63可以实现与其他部件例如:外接设备、图像/数据采集设备、数据库、外部存储以及图像/数据处理工作站等之间进行数据通信。
94.总线60包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。总线60包括但不限于以下至少之一:数据总线(data bus)、地址总线(address bus)、控制总线(control bus)、扩展总线(expansion bus)、局部总线(local bus)。举例来说而非限制,总线60可包括图形加速接口(accelerated graphics port,简称为agp)或其他图形总线、增强工业标准架构(extended industry standard architecture,简称为eisa)总线、前端总线(front side bus,简称为fsb)、超传输(hyper transport,简称为ht)互连、工业标准架构(industry standard architecture,简称为isa)总线、无线带宽(infiniband)互连、低引脚数(low pin count,简称为lpc)总线、存储器总线、微信道架构(micro channel architecture,简称为mca)总线、外围组件互连(peripheral component interconnect,简称为pci)总线、pci
‑
express(pci
‑
x)总线、串行高级技术附件(serial advanced technology attachment,简称为sata)总线、视频电子标准协会局部(video electronics standards association local bus,简称为vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线60可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
95.该电子设备可以执行本技术实施例中的一种会话信息抽取方法。
96.另外,结合上述实施例中的一种会话信息抽取方法,本技术实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种会话信息抽取方法。
97.而前述的存储介质包括:u盘、移动硬盘、只读存储器(readonly memory,简称为rom)、随机存取存储器(random access memory,简称为ram)、磁碟或者光盘等各种可以存储程序代码的介质。
98.以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
99.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些
本文用于企业家、创业者技术爱好者查询,结果仅供参考。