CN111144127B - 文本语义识别方法及其模型的获取方法及相关装置 - Google Patents
文本语义识别方法及其模型的获取方法及相关装置 Download PDFInfo
- Publication number
- CN111144127B CN111144127B CN201911360687.9A CN201911360687A CN111144127B CN 111144127 B CN111144127 B CN 111144127B CN 201911360687 A CN201911360687 A CN 201911360687A CN 111144127 B CN111144127 B CN 111144127B
- Authority
- CN
- China
- Prior art keywords
- text
- training
- keyword sequence
- recognized
- semantic
- 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
Links
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/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种文本语义识别方法及其模型的获取方法及相关装置,其中,文本语义识别方法包括:从多个文本规则中筛选与待识别文本匹配的文本规则,其中,多个文本规则是对标注有文本语义的多个样本文本进行分析而得到的;基于匹配的文本规则和待识别文本,获取待识别文本的关键词序列;将待识别文本和关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取待识别文本的文本语义;其中,文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的。上述方案,能够提高文本语义识别的准确性。
Description
技术领域
本申请涉及自然语言处理技术领域,特别是涉及一种文本语义识别方法及其模型的获取方法及相关装置。
背景技术
随着互联网技术的迅速发展,以及信息化程度的日益提高,采用机器对文本进行语义识别,从而减少人力投入和海量数据共享,逐渐成为研究热点。
目前,主要利用属于不同文本语义的训练文本对神经网络进行训练,从而利用经训练的神经网络进行后续的语义识别任务。然而,在训练过程中,极有可能出现训练文本不均衡的问题,即属于某一文本语义的训练文本数量过多,而属于另一文本语义的训练文本过少,从而降低训练得到的模型的准确性,以及后续语义识别的准确性。有鉴于此,如何提高文本语义识别的准确性成为亟待解决的问题。
发明内容
本申请主要解决的技术问题是提供一种文本语义识别方法及其模型的获取方法及相关装置,能够提高文本语义识别的准确性。
为了解决上述问题,本申请第一方面提供了一种文本语义识别方法,包括:从多个文本规则中筛选与待识别文本匹配的文本规则,其中,多个文本规则是对标注有文本语义的多个样本文本进行分析而得到的;基于匹配的文本规则和待识别文本,获取待识别文本的关键词序列;将待识别文本和关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取待识别文本的文本语义;其中,文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的。
为了解决上述问题,本申请第二方面提供了一种文本语义识别模型的获取方法,包括:从多个文本规则中分别筛选与每一训练文本匹配的文本规则,其中,多个文本规则是对标注有文本语义的多个样本文本进行分析而得到的;基于与每一训练文本匹配的文本规则和训练文本,分别获取每一训练文本的关键词序列;分别将每一训练文本及其对应的关键词序列输入预设神经网络进行训练,直至满足预设训练结束条件,得到文本语义识别模型。
为了解决上述问题,本申请第三方面提供了一种文本语义识别装置,包括相互耦接的存储器和处理器,存储器中存储有程序指令,处理器用于执行程序指令以实现上述第一方面中的文本语义识别方法。
为了解决上述问题,本申请第四方面提供了一种文本语义识别模型的获取装置,包括相互耦接的存储器和处理器,存储器中存储有程序指令,处理器用于执行程序指令以实现上述第二方面中文本语义识别模型的获取方法。
为了解决上述问题,本申请第五方面提供了一种存储装置,存储有能够被处理器运行的程序指令,程序指令用于实现上述第一方面中的文本语义识别方法,或用于实现上述第二方面中的文本语义识别模型的获取方法。
上述方案,从多个文本中筛选与待识别文本匹配的文本规则,从而基于匹配的文本规则和待识别文本,获取待识别文本的关键词序列,进而将待识别文本和关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取待识别文本的文本语义,且文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的,通过关键词序列能够在训练阶段将文本规则传入预设神经网络,从而指导神经网络更好地学习少样本类别的规则信息,进而能够缓解样本不均衡问题,有利于提高文本语义识别的准确性,此外,在识别阶段,通过关键词序列,能够将待识别文本的文本规则传入文本语义识别模型,能够进一步提高文本语义识别的准确性。
附图说明
图1是本申请文本语义识别模型的获取方法一实施例的流程示意图;
图2是图1中预设神经网络一实施例的框架示意图;
图3是图1中步骤S13一实施例的流程示意图;
图4是图3中步骤S132一实施例的流程示意图;
图5是图2中自注意力机制层进行编码处理一实施例的示意图;
图6是本申请语义识别方法一实施例的流程示意图;
图7是通过输出层对第一特征向量和第二特征向量进行分类处理,以输出待识别文本的文本语义一实施例的流程示意图;
图8是本申请文本语义识别装置一实施例的框架示意图;
图9是本申请文本语义识别模型的获取装置一实施例的框架示意图;
图10是本申请存储装置一实施例的框架示意图。
具体实施方式
下面结合说明书附图,对本申请实施例的方案进行详细说明。
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、接口、技术之类的具体细节,以便透彻理解本申请。
本文中术语“***”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
请参阅图1,图1是本申请文本语义识别模型的获取方法一实施例的流程示意图。具体而言,可以包括如下步骤:
步骤S11:从多个文本规则中分别筛选与每一训练文本匹配的文本规则。
本实施例中,多个文本规则是对标注有文本语义的多个样本文本进行分析而得到的。文本语义识别可以包括但不限于:意图识别任务、分类任务、翻译任务,在此不做限定。以意图识别为例,样本文本可以是在线上人机对话中收集到的对话文本,或者是从网页抓取的对话文本;从而可以对每个对话文本的真实意图进行标注,例如:订机票、查天气、订酒店、查电话、订车票、查路线等。意图识别任务之外的其他任务可以以此类推,本实施例在此不再一一举例。具体地,文本规则可以是正则表达式,例如,以文本语义为订机票为例,文本规则可以包括:(预订)(从)@地名(到)@地名(机票)。此外,对于同一文本语义,可以包含多个文本规则。仍以文本语义为订机票为例,文本规则还可以包括:(要)(一张|个)@地名(到)@地名(机票)。上述所举的文本规则仅为示例,具体应用时,可根据实际的样本文本分析得到,在此不做限定。
此外,多个样本文本可以和多个训练文本可以是同一文本集合,也就是说,多个样本文本可以包含于多个训练文本;或者,多个训练文本也可以包含于多个样本文本,例如,将多个样本文本按照所标注的文本语义划分为多个文本子集,再从每一文本子集中分别抽取若干文本,从而将所抽取的若干文本作为多个训练文本;或者,多个样本文本和多个训练文本也可以是不同一文本集合,在此不做限定。
步骤S12:基于与每一训练文本匹配的文本规则和训练文本,分别获取每一训练文本的关键词序列。
本实施例中,每一训练文本可以匹配得到一个文本规则,也可以匹配得到多个文本规则,相应地,每一训练文本可以获得一个关键词序列,也可以获得多个关键词序列,在此不做限定。
仍以意图识别为例,对于训练文本“帮我预订从北京到上海的机票”,可以匹配到上述文本规则“(预订)(从)@地名(到)@地名(机票)”,则根据该训练文本和匹配得到的文本规则,可以得到与该训练文本对应的关键词序列:(预订、从、北京、到、上海、机票)。或者,对于训练文本“我要订一张从北京到上海的机票”,可以匹配到文本规则“(要)(一张|个)@地名(到)@地名(机票)”,则根据该训练文本和匹配得到的文本规则,可以得到与该训练文本对应的关键词序列:(要、一张、北京、到、上海、机票)。或者,对于训练文本“我要预订一张从北京到上海的机票”,既可以匹配到上述文本规则“(预订)(从)@地名(到)@地名(机票)”,也可以匹配得到上述文本规则“(要)(一张|个)@地名(到)@地名(机票)”,则根据该训练文本和其匹配的文本规则,可以得到与该训练文本对应的关键词序列:(要、一张、北京、到、上海、机票)、(预订、从、北京、到、上海、机票)。此外,训练文本还可能匹配到与标注的文本语义不同的文本规则,也就是说,训练文本标注的文本语义和匹配到的文本规则所属的文本语义不同。例如,对于训练文本“我等会儿要预订明天从北京到上海的机票,帮我查询一下明天上海的天气情况”,可以匹配得到上述文本规则“(预订)(从)@地名(到)@地名(机票)”,进一步可以得到与该训练文本对应的关键词序列:(预订、从、北京、到、上海、机票),但是该训练文本的文本语义是“查天气”,而非匹配得到的文本规则所属的文本语义“订机票”,此外,该训练文本也可以匹配得到“查天气”所属的文本规则“(查询)@地名(天气)”,从而得到与其对应的关键词序列(查询、上海、天气)。
在一个实施场景中,为了进一步缓解样本不均衡问题,还可以在匹配到的文本规则所属的文本语义对应的训练文本数量较少的情况下,降低匹配要求,以匹配到多一些文本规则;或者,还可以在匹配到的文本规则所属的文本语义对应的训练文本数量较多的情况下,从匹配到的文本规则中剔除若干文本规则,以匹配到少一些文本规则。具体地,可以统计每一种文本语义对应的训练文本的文本数量,以及每一文本规则所属的文本语义,文本规则所属的文本语义可以与样本文本标注的文本语义相同,例如,从标注为“订机票”的样本文本中分析得到的文本规则,其所属的文本语义也是“订机票”。在此基础上,可以获取匹配的文本规则所属的文本语义,并获取与所属的文本语义对应的训练文本的文本数量,若文本数量小于第一预设数量阈值(例如,200、300),则可以为训练文本匹配多一些的文本规则,具体可以从多个文本规则中选取符合第一预设条件的文本规则,并基于选取的文本规则、匹配的文本规则和训练文本,获取训练文本的关键词序列;反之,如果文本数量大于第二预设数量阈值(例如,500、600),且匹配的文本规则包含多个所属文本语义相同的文本规则,例如,匹配的文本规则有多个文本规则所属的文本语义都是“订机票”,则可以为训练文本匹配少一些的文本规则,具体地,可以在多个所属文本语义相同的文本规则符合第二预设条件时,在多个所属文本语义相同的文本规则中选取任一文本规则,并基于选取的文本规则和训练文本,获取训练文本的关键词序列。
在一个具体的实施场景中,上述第一预设条件可以包括以下至少一者:选取的文本规则所属的文本语义与匹配的文本规则所属的文本语义相同,且选取的文本规则与训练文本之间的字重合度大于第一预设重合度阈值;选取的文本规则与匹配的文本规则为共现规则,且共现频次大于第一预设频次阈值。例如,训练文本匹配到文本规则A,则可以从与文本规则A属于同一文本语义的多个文本规则中选取与训练文本的字重合度大于第一预设重合度阈值(例如,50%、60%、70%等)的文本规则B、文本规则C。或者,例如,选取的文本规则D与匹配的文本规则A为共现规则,且共现频次大于第一预设频次阈值(例如,600、700、800等),本实施例中,多个文本规则如果可以匹配到一致的训练文本,则可以认为这些文本规则为共现规则,而一致的训练文本的数量即为共现频次,如,文本规则A可以与600个训练文本匹配,而这600条训练文本也可以和文本规则D匹配,则可以认为文本规则A和文本规则D为共现规则,且共现频次为600。或者,例如,可以从与匹配文本规则A属于同一文本语义的多个文本规则中选取与训练文本的字重合度大于第一预设重合度阈值的文本规则B、文本规则C,并选取与匹配的文本规则A为共现规则,且共现频次大于第一预设频次阈值的文本规则D,从而可以基于匹配的文本规则A,以及选取的文本规则B、C、D和训练文本,得到该训练文本的关键词序列。
在另一个具体的实施场景中,上述第二预设条件可以包括以下至少一者:分别基于多个所属文本语义相同的文本规则和训练文本而获取到的关键词序列之间的字重合度大于第二预设重合度阈值;多个所属文本语义相同的文本规则为共现规则,且共现频次大于第二预设频次阈值。例如,训练文本匹配到属于同一文本语义的文本规则E、F、G,且分别基于三者和训练文本获得的关键词序列之间的字重合度中,文本规则E和文本规则F对应的字重合度大于第二预设重合度阈值(例如,90%、95%),则从文本规则E和文本规则F中选取一个文本规则。或者,例如,训练文本匹配到属于同一文本语义的文本规则E、F、G,且文本规则E和文本规则G为共现规则,且共现频次大于第二预设频次阈值(例如,900、1000等),则从文本规则E和文本规则G中选取一个文本规则。或者,例如,训练文本匹配到属于同一文本语义的文本规则E、F、G,且分别基于三者和训练文本得到的关键词序列之间的字重合度中,文本规则E和文本规则F对应的字重合度大于第二预设重合度阈值,且文本规则E和文本规则G为共现规则,共现频次大于第二预设频次阈值,则可以从三者中选取文本规则E。
上述第一预设数量阈值、第二预设数量阈值、第一预设重合度阈值、第二预设重合度阈值、第一预设频次阈值、第二预设频次阈值的具体数值均仅为示例,在具体应用时,可以根据实际情况进行设置,本实施例在此不做具体限定。
步骤S13:分别将每一训练文本及其对应的关键词序列输入预设神经网络进行训练,直至满足预设训练结束条件,得到文本语义识别模型。
请结合参阅图2,图2是图1中预设神经网络一实施例的框架示意图。预设神经网络可以包括顺序连接的输入层、长短期记忆网络层、自注意力机制层和输出层。训练文本及其对应的关键词序列输入预设神经网络之后,在预设神经网络的输入层经过分词和向量化处理,而后在长短期记忆网络层和自注意力机制层经过编码处理,并在输出层经过特征向量合并、拼接后,得到编码特征向量,经过全连接层输出各个文本语义,并通过Softmax函数获取训练文本属于每个文本语义的概率值,从而可以计算得到损失值,进而可以利用预设训练方式对预设神经网络进行训练,例如,利用计算得到的损失值对预设神经网络的网络参数进行调整,并重新进行训练,直至满足预设训练结束条件,得到文本语义识别模型。上述分词和向量化、编码处理、向量合并及拼接的具体过程,可以参考下述实施例中的相关步骤,本实施例在此暂不赘述。
在一个实施场景中,预设训练结束条件可以包括:损失值小于预设损失值阈值,且不再减小。在一个实施场景中,网络参数可以包括但不限于:长短期记忆网络层的隐层权值、自注意力机制层的相关参数,以及输出层中的全连接层中的相关参数。
上述方案,通过预先对标注有文本语义的多个样本文本进行分析,得到多个文本规则,进而,在文本语义识别过程中,可以从多个文本中筛选与待识别文本匹配的文本规则,从而基于匹配的文本规则和待识别文本,获取待识别文本的关键词序列,进而将待识别文本和关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取待识别文本的文本语义,且文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的,通过关键词序列能够在训练阶段将文本规则传入预设神经网络,从而指导神经网络更好地学习少样本类别的规则信息,进而能够缓解样本不均衡问题,有利于提高文本语义识别的准确性。
请参阅图3,图3是图1中步骤S13一实施例的流程示意图。具体地,可以包括如下步骤:
步骤S131:针对所述多个训练文本中的每一训练文本,在该训练文本的多个关键词序列中,获取文本语义和该训练文本的文本语义相同的关键词序列作为正向关键词序列,并获取文本语义和该训练文本的文本语义不同的关键词序列作为负向关键词序列。
例如,上述实施例中所列举的训练文本中,关键词序列(预订、从、北京、到、上海、机票)是训练文本“帮我预订从北京到上海的机票”的正向关键词序列;关键词序列(要、一张、北京、到、上海、机票)是训练文本“我要一张从北京到上海的机票”的正向关键词序列;关键词序列(要、一张、北京、到、上海、机票)、(预订、从、北京、到、上海、机票)是训练文本“我要预订一张从北京到上海的机票”的正向关键词序列;关键词序列(预订、从、北京、到、上海、机票)是训练文本“我等会儿要预订明天从北京到上海的机票,帮我查询一下明天上海的天气情况”的负向关键词序列,关键词序列(查询、上海、天气)是训练文本“我等会儿要预订明天从北京到上海的机票,帮我查询一下明天上海的天气情况”的正向关键词序列。在其他应用场景中,可以以此类推,在此不再一一举例。
步骤S132:基于该正向关键词序列和该负向关键词序列,获取该训练文本对应的损失值和损失权重。
本实施例中,可以先获取训练文本的正向关键词序列的并集,再计算获得的并集的字长度,以及训练文本的字长度,将并集的字长度与训练文本的字长度之间的比值作为训练文本对应的损失权重Pcov。
在一个实施场景中,训练文本对应的正向关键词序列只有一个,则其并集即为其本身。以上述实施例中的训练文本“帮我预订从北京到上海的机票”为例,其正向关键词序列为(预订、从、北京、到、上海、机票),训练文本的字长度为13,正向关键词序列的字长度为10,则训练文本“帮我预订从北京到上海的机票”的损失权重为10/13。
在另一个实施场景中,训练文本对应的正向关键词序列有多个,则其并集为正向关键词序列所有元素的集合。以上述实施例中的训练文本“我要预订一张从北京到上海的机票”为例,其正向关键词序列为(要、一张、北京、到、上海、机票)、(预订、从、北京、到、上海、机票),两者的并集为(要、预订、一张、从、北京、到、上海、机票),其字长度为13,训练文本的字长度为15,则训练文本“我要预订一张从北京到上海的机票”的损失权重为13/15。其他实施场景,可以以此类推,在此不再赘述。
在训练过程中,除了需要计算训练文本对应的损失权重之外,还需要计算训练文本对应的损失值。为了提高损失值的准确性,进而提高后续获得的文本语义识别模型的准确性,除了交叉熵损失值之外,还可以进一步考虑自注意力机制层所带来的自注意力损失值。请结合参阅图4,图4是图3中步骤S132一实施例的流程示意图。具体地,图4是基于正向关键词序列和负向关键词序列,获取每一训练文本对应的损失值一实施例的流程示意图,包括如下步骤:
步骤S1321:分别获取正向关键词序列中每个词的第一概率分配值,以及负向关键词序列中每个词的第二概率分配值。
为了便于理解,首先对上述分词和向量化,以及编码处理等过程进行说明。请结合参阅图2,在获得训练文本及其对应的关键词序列(包含正向关键词序列和/或负向关键词序列)之后,为了统一文本以及序列的长度,以便后续编码处理,可以限定文本长度为预设文本长度(例如,60个词),并限定序列长度为预设序列长度(例如,40个词),如果长度不足,可以采用预设补足字进行补足。在此基础上,进行分词和向量化处理(例如,通过word2vec、glove、fasttext等方法进行分词和向量化,在此不再赘述),得到与训练文本对应的文本词向量[x1 x2 x3…xn],以及与关键词序列对应的序列词向量[f1 f2 f3…fm],并输入图2所示的输入层中,其中,n表示预设文本长度,m表示预设序列长度。本实施例中,词向量的维度可以为预设维度(例如,100),则对于训练文本而言,输入长短期记忆网络层的文本词向量可以认为是(60,100)的二维矩阵,而输入长短期记忆网络层的序列词向量可以认为是(40,100)的二维矩阵。
上述文本词向量和序列词向量经过长短期记忆网络层、自注意力机制层进行编码处理,得到与训练文本对应的文本特征向量,以及与关键词序列对应的序列特征向量,然后,通过输出层对文本特征向量和序列特征向量进行分类处理,预测得到训练文本属于各个文本语义的概率值。
具体地,上述文本词向量和序列词向量经过长短期记忆网络层进行第一编码处理,可以分别得到与训练文本对应的文本隐层向量[h1 h2 h3…hn],以及与关键词序列对应的序列隐层向量[fh1 fh2 fh3…fhm]。上述文本隐层向量和序列隐层向量分别经过自注意力机制层进行第二编码处理,可以获得与训练文本对应的文本特征向量,以及与关键词序列对应的序列特征向量。
请结合参阅图5,图5是图2中自注意力机制层进行编码处理一实施例的示意图。以正向关键词序列为例,正向关键词序列对应的序列隐层向量可以为M*L的二维矩阵I,即对应于M个分词,每个分词为L维。序列隐层向量在自注意力机制层中首先经过非线性变换σ(Wx+b),可以得到M*L的二维矩阵I′,其中,σ(·)可以是sigmoid或者tanh等激活函数。二维矩阵I′再与L维的外部变量U进行内积,得到一个M维的向量V,再利用Softmax函数对内积得到的向量V进行计算,得到正向关键词序列中每个词的第一概率分配值P(wi),其中i表示正向关键词序列中的第i个词。负向关键词序列中每个词的第二概率分配值P(xi)计算过程可以以此类推,其中,i表示负向关键词序列中的第i个词,在此不再赘述。通过引入外部变量U与隐层向量进行内积,可以实现对输入的隐层向量进行权重控制。此外,通过Softmax函数对内积得到的向量V进行计算,可以实现权重重分配,再将得到的第一概率分配值P1与正向关键词序列对应的隐层向量I进行点乘,可以得到与正向关键词序列对应的序列特征向量,将得到的第二概率分配值与负向关键词序列对应的隐层向量进行点乘,可以得到与负向关键词序列对应的序列特征向量。通过自注意力机制层的编码处理,可以将关键词序列中重要词凸显出来,并降低非重要词的影响。
在得到训练文本对应的文本特征向量,以及关键词序列对应的序列特征向量之后,可以先对关键词序列对应的序列特征向量进行合并处理,具体地,可以获取正向关键词序列对应的序列特征向量的正向关键词序列向量和,以及负向关键词序列对应的序列特征向量的负向关键词序列向量和,然后再将正向关键词序列向量和、负向关键词序列向量和相减,得到与关键词序列对应的合并向量。在此基础上,将合并向量与训练文本对应的文本特征向量进行拼接处理,得到训练文本对应的编码特征向量。通过将正向关键词序列向量和、负向关键词序列向量和相减,能够加强训练文本属于其文本语义的信息,并排除与其文本语义无关的信息,使得预设神经网络能够更好地学习训练文本的文本语义的关键信息。
在得到编码特征向量之后,经过输出层中的全连接处理,输出各个文本语义,并通过Softmax函数获取训练文本属于各个文本语义的概率值,以便后续利用预测得到的概率值与训练文本所标注的文本语义,计算得到交叉熵损失值。
步骤S1322:对第一概率分配值和第二概率分配值进行自注意力损失计算,获取训练文本的自注意力损失值。
具体地,可以利用下式1对每个正向关键词序列进行计算得到正向损失值loss1,并利用下式2对每个负向关键词序列进行计算得到负向损失值loss2。
其中,p(wi)为一个正向关键词序列中第i个词的第一概率分配值,n为一个正向关键词序列中的词总数,p(xi)为一个负向关键词序列中第i个词的第二概率分配值,m为一个负向关键词序列中的词总数。
在此基础上,将每个正向关键词序列的正向损失值loss1和每个负向关键词序列的负向损失值loss2进行相加,得到训练文本的自注意力损失值lossatt。
步骤S1323:基于交叉熵损失值以及训练文本的自注意力损失值,得到训练文本对应的损失值。
本实施例中,交叉熵损失值lossmodel可以在给定训练文本真实标注的文本语义的条件下,利用分类器的负对数似然函数求得,在此不再赘述。
在一个实施场景中,为了便于根据实际情况调整交叉熵损失值和自注意力损失值在训练过程中的重要性,还可以交叉熵损失值可以对应设置一个第一预设权重,自注意力损失值可以对应设置一个第二预设权重,再利用第一损失子权重、第二损失子权重分别对交叉熵损失值、自注意力损失值进行加权处理,得到训练文本对应的损失值。例如,第一损失子权重和第二损失子权重的和为1,则加权处理可以是加权求和。
通过对多个训练文本中的每一训练文本执行上述步骤S131、步骤S132及相关步骤,能够得到与每一训练文本对应的损失值和损失权重。
步骤S133:利用每一训练文本的损失权重对相应训练文本的损失值进行加权处理,获得多个训练文本的损失值。
具体地,可以通过下式得到一次训练过程中,多个训练文本的损失值lossall:
其中,N表示多个训练文本的个数,lossi表示多个训练文本中第i个训练文本对应的损失值,Pcovi表示多个训练文本中第i个训练文本对应的损失权重。
步骤S134:利用多个训练文本的损失值调整预设神经网络的网络参数,直至满足预设训练结束条件。
本实施例中,预设神经网络的网络参数可以包括但不限于:自注意力机制层中的参数W、b,长短期记忆网络层中的隐层权值,输出层中全连接层中的相关参数。
区别于前述实施例,在每一训练文本的多个关键词序列中,获取文本语义和该训练文本的文本语义相同的关键词序列作为正向关键词序列,并获取文本语义和该训练文本的文本语义不同的关键词序列作为负向关键词序列,从而基于正向关键词序列和负向关键词序列,获取每一训练文本对应的损失值和损失权重,进而利用每一训练文本的损失权重对相应训练文本的损失值进行加权处理,获得多个训练文本的损失值,并利用多个训练文本的损失值调整预设神经网络的网络参数,直至满足预设训练结束条件为止,有利于使预设神经网络学习到训练文本的文本语义的关键信息,从而提高所训练得到的文本语义识别模型的准确性。
请参阅图6,图6是本申请文本语义识别方法一实施例的流程示意图。具体而言,可以包括如下步骤:
步骤S61:从多个文本规则中筛选与待识别文本匹配的文本规则。
本实施例中,多个文本规则是对标注有文本语义的多个样本文本进行分析而得到的。具体可以参阅前述实施例中的相关步骤,在此不再赘述。
本实施例中,待识别文本是需要进行文本语义识别的文本。在一个实施场景中,待识别文本可以是通过人机文字聊天而获得的。在另一个实施场景中,待识别文本也可以是将用户输入的语音信息转换为文字而获得的,本实施例在此不做具体限制。
本实施例中,待识别文本可以匹配到一个文本规则,也可以匹配到多个文本规则。仍以意图识别任务为例,对于真实文本语义为“查天气”的待识别文本“我要预订下周一从上海到北京的机票,帮我查询一下下周一北京的天气情况”,可以匹配到文本规则“(预订)(从)@地名(到)@地名(机票)”,也可以匹配到文本规则“(查询)@地名(天气)”。其他应用场景,可以以此类推,本实施例在此不再一一举例。
步骤S62:基于匹配的文本规则和待识别文本,获取待识别文本的关键词序列。
仍以意图识别任务为例,对于真实文本语义为“查天气”的待识别文本“我要预订下周一从上海到北京的机票,帮我查询一下下周一北京的天气情况”,可以匹配到文本规则“(预订)(从)@地名(到)@地名(机票)”,也可以匹配到文本规则“(查询)@地名(天气)”。在此基础上,根据文本规则“(预订)(从)@地名(到)@地名(机票)”和待识别文本,可以获取其关键词序列(查询、北京、天气),而根据文本规则“(预订)(从)@地名(到)@地名(机票)”,可以获取其关键词序列(预订、从、上海、到、北京、机票)。
在一个实施场景中,为了进一步缓解训练过程中的样本不均衡问题,还可以在匹配到的文本规则所属的文本语义对应的训练文本数量较少的情况下,降低匹配要求,以匹配到多一些文本规则;或者,还可以在匹配到的文本规则所属的文本语义对应的训练文本数量较多的情况下,从匹配到的文本规则中剔除若干文本规则,以匹配到少一些文本规则。具体地,可以统计每一种文本语义对应的训练文本的文本数量,以及每一种文本规则所属的文本语义,获取匹配的文本规则所属的文本语义,并获取与所属的文本语义对应的训练文本的文本数量,若文本数量小于第一预设数量阈值,则从多个文本规则中选取符合第一预设条件的文本规则,并基于选取的文本规则、匹配的文本规则和待识别文本,获取待识别文本的关键词序列;若文本数量大于第二预设数量阈值,且匹配的文本规则中包含多个所属文本语义相同的文本规则,则当多个所属文本语义相同的文本规则符合第二预设条件时,在多个所属文本语义相同的文本规则中选取其中一个文本规则,并基于选取的文本规则和待识别文本,获取待识别文本的关键词序列。具体可以参考上述实施例中的相关步骤,本实施例在此不再赘述。
步骤S63:将待识别文本和关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取待识别文本的文本语义。
本实施例中,文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的。具体训练过程可以参阅上述实施例中的相关步骤,在此不再赘述。
本实施例中,文本语义识别模型可以具体包括顺序连接的输入层、长短期记忆网络层、自注意力机制层和输出层,具体架构可以参考如图2所示的预设神经网络。两者的不同之处在于,文本语义识别模型经过多次训练之后,长短期记忆网络层中的隐层权值、自注意力机制层中的W和b、输出层所包含的全连接层中的相关参数等网络参数已经确定。
与上述训练过程相对应地,可以将待识别文本和关键词序列进行分词和向量化,获得与待识别文本对应的第一词向量,以及与关键词序列对应的第二词向量。在一个实施场景中,为了统一文本及序列的长度,以便后续编码处理,在分词和向量化处理之前,可以限定文本长度和序列长度,具体可以参阅前述实施例中的相关步骤,在此不再赘述。
上述第一词向量和第二词向量分别输入到输入层,并经过长短期记忆网络层、自注意力机制层进行编码处理,获得与待识别文本对应的第一特征向量,以及与关键词序列对应的第二特征向量。具体地,可以通过长短期记忆网络层对第一词向量和第二词向量分别进行第一编码处理,获得与待识别文本对应的第一隐层向量,以及与关键词序列对应的第二隐层向量,通过自注意力机制层对第一隐层向量和第二隐层向量分别进行第二编码处理,获得与待识别文本对应的第一特征向量,以及与关键词序列对应的第二特征向量。具体可以参考前述实施例中的相关步骤,在此不再赘述。
在此基础上,通过输出层对第一特征向量和第二特征向量进行分类处理,以输出待识别文本的文本语义。具体地,待识别文本的关键词序列为多个,相应地,与关键词序列对应的第二特征向量为多个,在进行分类处理时,可以将多个第二特征向量进行合并处理,并将合并处理的第二特征向量与第一特征向量进行拼接,获得待识别文本的编码特征向量,对编码特征向量进行预测处理,输出待识别文本的文本语义。与上述实施例不同的是,在对待识别文本进行文本语义识别的过程中,由于待识别文本的文本语义是未知的,因此多个关键词序列中的正向关键词序列和负向关键词序列也是未知的,为了准确地对待识别文本进行文本语义识别,上述通过输出层对第一特征向量和第二特征向量进行分类处理,以输出待识别文本的文本语义的具体过程可以参阅图7,图7是通过输出层对第一特征向量和第二特征向量进行分类处理,以输出待识别文本的文本语义一实施例的流程示意图,具体可以包括如下步骤:
步骤S71:分别将文本语义识别模型所要预测的每个文本语义作为目标文本语义。
例如,文本语义识别模式所要预测的文本语义包括:查天气、订机票、订酒店,则可以分别将查天气、订机票、订酒店作为目标文本语义。在其他应用场景中,可以以此类推,在此不再一一举例。
在将文本语义识别模型所要预测的文本语义中的一个作为目标文本语义之后,可以对每个目标文本语义执行下述步骤。
步骤S72:将多个关键词序列中与目标文本语义相关的关键词序列作为第一正向关键词序列,并将其他关键词序列作为第一负向关键词序列。
以待识别文本“我要预订下周一从上海到北京的机票,帮我查询一下下周一北京的天气情况”为例,其对应的关键词序列包括:与文本语义“查天气”对应的(查询、北京、天气),以及与文本语义“订机票”对应的(预订、从、上海、到、北京、机票)。在目标文本语义为“查天气”时,可以将关键词序列(查询、北京、天气)作为第一正向关键词序列,并可以将关键词序列(预订、从、上海、到、北京、机票)作为第一负向关键词序列。与之类似地,在目标文本语义为“订机票”时,可以将关键词序列(预订、从、上海、到、北京、机票)作为第一正向关键词序列,并将关键词序列(查询、北京、天气)作为第一负向关键词序列;在目标文本语义为“订酒店”时,可以将关键词序列(预订、从、上海、到、北京、机票)、(查询、北京、天气)均作为第一负向关键词序列。其他应用场景,可以以此类推,在此不再一一举例。
步骤S73:分别获取第一正向关键词序列对应的第二特征向量间的第一向量和,以及第一负向关键词序列对应的第二特征向量间的第二向量和。
特别地,当第一正向关键词序列不存在时,第一向量和为零向量。仍以待识别文本“我要预订下周一从上海到北京的机票,帮我查询一下下周一北京的天气情况”为例,当目标文本语义为“订酒店”时,关键词序列(预订、从、上海、到、北京、机票)、(查询、北京、天气)均为第一负向关键词序列,故此,第一向量和可以为零向量。
通过将第一正向关键词序列对应的第二特征向量相加,能够加强待识别文本属于目标文本语义的信息,进而有利于提升文本语义识别的准确性。
步骤S74:获取第一向量和与第二向量和之间的向量差。
通过将第一向量和减去第二向量和,能够排除与目标文本语义无关的其他信息,能够有利于提升文本语义识别的准确性。
步骤S75:分别将每个目标文本语义对应的向量差与第一特征向量进行拼接,得到每个目标文本语义对应的编码特征向量。
具体可以参考前述实施例中的相关步骤。
步骤S76:分别利用每个目标文本语义对应的编码特征向量,获得待识别文本属于每个目标文本语义的概率值。
通过上述步骤,可以获得每个目标文本语义对应的编码特征向量。仍以待识别文本“我要预订下周一从上海到北京的机票,帮我查询一下下周一北京的天气情况”为例,可以分别获得目标文本语义“订机票”对应的编码特征向量、目标文本语义“订酒店”对应的编码特征向量、目标文本语义“查天气”对应的编码特征向量,从而分别对上述编码特征向量进行预测处理,得到待识别文本属于目标文本语义“订机票”的概率值、属于目标文本语义“订酒店”的概率值、属于目标文本语义“查天气”的概率值。
步骤S77:将最高的概率值所对应的目标文本语义确定为待识别文本的文本语义。
仍以待识别文本“我要预订下周一从上海到北京的机票,帮我查询一下下周一北京的天气情况”为例,可以将属于目标文本语义“订机票”的概率值、属于目标文本语义“订酒店”的概率值、属于目标文本语义“查天气”的概率值中概率值最高的目标文本语义确定为待识别文本的文本语义。
上述方案,从多个文本中筛选与待识别文本匹配的文本规则,从而基于匹配的文本规则和待识别文本,获取待识别文本的关键词序列,进而将待识别文本和关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取待识别文本的文本语义,且文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的,通过关键词序列能够在训练阶段将文本规则传入预设神经网络,从而指导神经网络更好地学习少样本类别的规则信息,进而能够缓解样本不均衡问题,有利于提高文本语义识别的准确性,此外,在识别阶段,通过关键词序列,能够将待识别文本的文本规则传入文本语义识别模型,能够进一步提高文本语义识别的准确性。
请参阅图8,图8是本申请文本语义识别装置80一实施例的框架示意图。文本语义识别装置80包括相互耦接的存储器81和处理器82,存储器中存储有程序指令,处理器用于执行程序指令以实现上述任一文本语义识别方法实施例中步骤。
具体而言,处理器82用于控制其自身以及存储器81以实现上述任一文本语义识别方法实施例中的步骤。处理器82还可以称为CPU(Central Processing Unit,中央处理单元)。处理器82可能是一种集成电路芯片,具有信号的处理能力。处理器82还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器82可以由多个集成电路芯片共同实现。
本实施例中,处理器82用于从多个文本规则中筛选与待识别文本匹配的文本规则,其中,多个文本规则是对标注有文本语义的多个样本文本进行分析而得到的;处理器82还用于基于匹配的文本规则和待识别文本,获取待识别文本的关键词序列;处理器82还用于将待识别文本和关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取待识别文本的文本语义;其中,文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的。
上述方案,从多个文本中筛选与待识别文本匹配的文本规则,从而基于匹配的文本规则和待识别文本,获取待识别文本的关键词序列,进而将待识别文本和关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取待识别文本的文本语义,且文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的,通过关键词序列能够在训练阶段将文本规则传入预设神经网络,从而指导神经网络更好地学习少样本类别的规则信息,进而能够缓解样本不均衡问题,有利于提高文本语义识别的准确性,此外,在识别阶段,通过关键词序列,能够将待识别文本的文本规则传入文本语义识别模型,能够进一步提高文本语义识别的准确性。
在一些实施例中,文本语义识别模型包括顺序连接的输入层、长短期记忆网络层、自注意力机制层和输出层,处理器82还用于分别对待识别文本和关键词序列进行分词及向量化,获得与待识别文本对应的第一词向量,以及与关键词序列对应的第二词向量,处理器82还用于将第一词向量和第二词向量分别输入输入层,并经长短期记忆网络层、自注意力机制层进行编码处理,获得与待识别文本对应的第一特征向量,以及与关键词序列对应的第二特征向量;处理器82还用于通过输出层对第一特征向量和第二特征向量进行分类处理,以输出待识别文本的文本语义。
在一些实施例中,处理器82还用于通过长短期记忆网络层对第一词向量和第二词向量分别进行第一编码处理,获得与待识别文本对应的第一隐层向量,以及与关键词序列对应的第二隐层向量;处理器82还用于通过自注意力机制层对第一隐层向量和第二隐层向量分别进行第二编码处理,获得与待识别文本对应的第一特征向量,以及与关键词序列对应的第二特征向量。
在一些实施例中,待识别文本的关键词序列为多个,相应地,与关键词序列对应的第二特征向量为多个,处理器82还用于将多个第二特征向量进行合并处理;处理器82还用于将经合并处理的第二特征向量与第一特征向量进行拼接,获得待识别文本的编码特征向量;处理器82还用于对编码特征向量进行预测处理,输出待识别文本的文本语义。
在一些实施例中,处理器82还用于分别将文本语义识别模型所要预测的每个文本语义作为目标文本语义,处理器82还用于将多个关键词序列中与目标文本语义相关的关键词序列作为第一正向关键词序列,并将其他关键词序列作为第一负向关键词序列;处理器82还用于分别获取第一正向关键词序列对应的第二特征向量间的第一向量和,以及第一负向关键词序列对应的第二特征向量间的第二向量和;处理器82还用于获取第一向量和与第二向量和之间的向量差,处理器82还用于分别将每个目标文本语义对应的向量差与第一特征向量进行拼接,得到每个目标文本语义对应的编码特征向量,处理器82还用于分别利用每个目标文本语义对应的编码特征向量,获得待识别文本属于每个目标文本语义的概率值,处理器82还用于将最高的概率值所对应的目标文本语义确定为待识别文本的文本语义。
区别于前述实施例,通过将多个关键词序列中与目标文本语义相关的关键词序列作为第一正向关键词序列,并将其他关键词序列作为第一负向关键词序列,分别获取第一正向关键词序列对应的第二特征向量间的第一向量和,以及第一负向关键词序列对应的第二特征向量间的第二向量和,并获取第一向量和与第二向量和之间的向量差,在此基础上进行向量拼接,以及预测处理,能够加强待识别文本属于目标文本语义的信息,并排除与目标文本语义无关的其他信息,有利于提升文本语义识别的准确性。
在一些实施例中,处理器82还用于统计每一种文本语义对应的训练文本的文本数量,以及每一文本规则所属的文本语义,处理器82还用于获取匹配的文本规则所属的文本语义,并获取与所属的文本语义对应的训练文本的文本数量,处理器82还用于在文本数量小于第一预设数量阈值时,从多个文本规则选取符合第一预设条件的文本规则,并基于选取的文本规则、匹配的文本规则和待识别文本,获取待识别文本的关键词序列;处理器82还用于在文本数量大于第二预设数量阈值,且匹配的文本规则中包含多个所属文本语义相同的文本规则时,当多个所属文本语义相同的文本规则符合第二预设条件时,在多个所属文本语义相同的文本规则中选取其中一个文本规则,并基于选取的文本规则和待识别文本,获取待识别文本的关键词序列。
区别于前述实施例,通过统计每一种文本语义对应的训练文本的文本数量,以及每一文本规则所属的文本语义,并获取匹配的文本规则所属的文本语义,并获取与所属的文本语义对应的训练文本的文本数量,从而在文本数量小于第一预设数量阈值时,从多个文本规则选取符合第一预设条件的文本规则,并基于选取的文本规则、匹配的文本规则和待识别文本,获取待识别文本的关键词序列,以及在文本数量大于第二预设数量阈值,且匹配的文本规则中包含多个所属文本语义相同的文本规则时,当多个所属文本语义相同的文本规则符合第二预设条件时,在多个所属文本语义相同的文本规则中选取其中一个文本规则,并基于选取的文本规则和待识别文本,获取待识别文本的关键词序列,能够在匹配到的文本规则所属的文本语义对应的训练文本数量较少的情况下,降低匹配要求,以匹配到多一些文本规则,在匹配到的文本规则所属的文本语义对应的训练文本数量较多的情况下,从匹配到的文本规则中剔除若干文本规则,以匹配到少一些文本规则,进而能够缓解样本不均衡问题。
在一些实施例中,处理器82还用于从多个文本规则中分别筛选与每一训练文本匹配的文本规则;处理器82还用于基于与每一训练文本匹配的文本规则和训练文本,分别获取每一训练文本的关键词序列;处理器82还用于分别将每一训练文本及其对应的关键词序列输入预设神经网络,并采用预设训练方式对预设神经网络进行训练,得到文本语义识别模型。
区别于前述实施例,从多个文本规则中分别筛选与每一训练文本匹配的文本规则,并基于与每一训练文本匹配的文本规则和训练文本,分别获取每一训练文本的关键词序列,从而分别将每一训练文本及其对应的关键词序列输入预设神经网络,并采用预设训练方式对预设神经网络进行训练,得到文本语义识别模型,能够通过关键词序列能够在训练阶段将文本规则传入预设神经网络,从而指导神经网络更好地学习少样本类别的规则信息,进而能够缓解样本不均衡问题,有利于提高文本语义识别的准确性。
在一些实施例中,处理器82还用于针对多个训练文本中的每一训练文本,在该训练文本的多个关键词序列中,获取文本语义和该训练文本的文本语义相同的关键词序列作为正向关键词序列,并获取文本语义和该训练文本的文本语义不同的关键词序列作为负向关键词序列,并基于该正向关键词序列和该负向关键词序列,获取该训练文本对应的损失值和损失权重;处理器82还用于利用每一训练文本的损失权重对相应训练文本的损失值进行加权处理,获得多个训练文本的损失值;处理器82还用于利用多个训练文本的损失值调整预设神经网络的网络参数,直至满足预设训练结束条件。
在一些实施例中,处理器82还用于分别获取正向关键词序列中每个词的第一概率分配值,以及负向关键词序列中每个词的第二概率分配值;处理器82还用于对第一概率分配值和第二概率分配值进行自注意力损失计算,获取训练文本的自注意力损失值;处理器82还用于基于交叉熵损失值以及训练文本的自注意力损失值,得到训练文本对应的损失值。
在一些实施例中,处理器82还用于利用下面公式1对每个正向关键词序列进行计算得到正向损失值loss1,利用下面公式2对每个负向关键词序列进行计算得到负向损失值loss2;
其中,p(wi)为一个正向关键词序列中第i个词的第一概率分配值,n为一个正向关键词序列中的词总数,p(xi)为一个负向关键词序列中第i个词的第二概率分配值,m为一个负向关键词序列中的词总数;
处理器82还用于将每个正向关键词序列的正向损失值loss1和每个负向关键词序列的负向损失值loss2进行相加,得到训练文本的自注意力损失值。
请参阅图9,图9是本申请文本语义识别模型的获取装置90一实施例的框架示意图。文本语义识别模型的获取装置90包括相互耦接的存储器91和处理器92,存储器91中存储有程序指令,处理器92用于执行程序指令以实现上述任一文本语义识别模型的获取方法实施例的步骤。
具体而言,处理器92用于控制其自身以及存储器91以实现上述任一文本语义识别模型的获取方法实施例中的步骤。处理器92还可以称为CPU(Central Processing Unit,中央处理单元)。处理器92可能是一种集成电路芯片,具有信号的处理能力。处理器92还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器92可以由多个集成电路芯片共同实现。
本实施例中,处理器92用于从多个文本规则中分别筛选与每一训练文本匹配的文本规则,其中,多个文本规则是对标注有文本语义的多个样本文本进行分析而得到的;处理器92还用于基于与每一训练文本匹配的文本规则和训练文本,分别获取每一训练文本的关键词序列;处理器92还用于分别将每一训练文本及其对应的关键词序列输入预设神经网络进行训练,直至满足预设训练结束条件,得到文本语义识别模型。
上述方案,从多个文本中筛选与待识别文本匹配的文本规则,从而基于匹配的文本规则和待识别文本,获取待识别文本的关键词序列,进而将待识别文本和关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取待识别文本的文本语义,且文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的,通过关键词序列能够在训练阶段将文本规则传入预设神经网络,从而指导神经网络更好地学习少样本类别的规则信息,进而能够缓解样本不均衡问题,有利于提高文本语义识别的准确性,此外,在识别阶段,通过关键词序列,能够将待识别文本的文本规则传入文本语义识别模型,能够进一步提高文本语义识别的准确性。
请参阅图10,图10是本申请存储装置100一实施例的框架示意图。存储装置100存储有能够被处理器运行的程序指令101,程序指令101用于实现上述任一文本语义识别方法实施例中的步骤,或实现上述任一文本语义识别模型的获取方法实施例中的步骤。
上述方案,通过关键词序列能够在训练阶段将文本规则传入预设神经网络,从而指导神经网络更好地学习少样本类别的规则信息,进而能够缓解样本不均衡问题,有利于提高文本语义识别的准确性,此外,在识别阶段,通过关键词序列,能够将待识别文本的文本规则传入文本语义识别模型,能够进一步提高文本语义识别的准确性。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (14)
1.一种文本语义识别方法,其特征在于,包括:
从多个文本规则中筛选与待识别文本匹配的文本规则,其中,所述多个文本规则是对标注有文本语义的多个样本文本进行分析而得到的;
基于匹配的所述文本规则和所述待识别文本,获取所述待识别文本的关键词序列;
将所述待识别文本和所述关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取所述待识别文本的文本语义;
其中,所述文本语义识别模型是利用标注有文本语义的多个训练文本及其关键词序列训练预设神经网络得到的,所述关键词序列基于与所述训练文本匹配的文本规则和所述训练文本得到。
2.根据权利要求1所述的文本语义识别方法,其特征在于,所述文本语义识别模型包括顺序连接的输入层、长短期记忆网络层、自注意力机制层和输出层;
所述将所述待识别文本和所述关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取所述待识别文本的文本语义之前,所述方法还包括:
分别对所述待识别文本和所述关键词序列进行分词及向量化,获得与所述待识别文本对应的第一词向量,以及与所述关键词序列对应的第二词向量;
所述将所述待识别文本和所述关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取所述待识别文本的文本语义包括:
将所述第一词向量和所述第二词向量分别输入所述输入层,并经所述长短期记忆网络层、所述自注意力机制层进行编码处理,获得与所述待识别文本对应的第一特征向量,以及与所述关键词序列对应的第二特征向量;
通过所述输出层对所述第一特征向量和所述第二特征向量进行分类处理,以输出所述待识别文本的文本语义。
3.根据权利要求2所述的文本语义识别方法,其特征在于,
所述经所述长短期记忆网络层、所述自注意力机制层进行编码处理,获得与所述待识别文本对应的第一特征向量,以及与所述关键词序列对应的第二特征向量包括:
通过所述长短期记忆网络层对所述第一词向量和所述第二词向量分别进行第一编码处理,获得与所述待识别文本对应的第一隐层向量,以及与所述关键词序列对应的第二隐层向量;
通过所述自注意力机制层对所述第一隐层向量和所述第二隐层向量分别进行第二编码处理,获得与所述待识别文本对应的第一特征向量,以及与所述关键词序列对应的第二特征向量。
4.根据权利要求2所述的文本语义识别方法,其特征在于,所述待识别文本的关键词序列为多个,相应地,与所述关键词序列对应的第二特征向量为多个;
所述对所述第一特征向量和所述第二特征向量进行分类处理,以输出所述待识别文本的文本语义,包括:
将多个所述第二特征向量进行合并处理;
将经合并处理的第二特征向量与所述第一特征向量进行拼接,获得所述待识别文本的编码特征向量;
对所述编码特征向量进行预测处理,输出所述待识别文本的文本语义。
5.根据权利要求4所述的文本语义识别方法,其特征在于,所述将多个所述第二特征向量进行合并处理包括:
分别将所述文本语义识别模型所要预测的每个文本语义作为目标文本语义,并对每个所述目标文本语义执行以下步骤:
将所述多个关键词序列中与所述目标文本语义相关的关键词序列作为第一正向关键词序列,并将其他关键词序列作为第一负向关键词序列;
分别获取所述第一正向关键词序列对应的第二特征向量间的第一向量和,以及所述第一负向关键词序列对应的第二特征向量间的第二向量和;
获取所述第一向量和与第二向量和之间的向量差;
所述将经合并处理的第二特征向量与所述第一特征向量进行拼接,获得所述待识别文本的编码特征向量,包括:
分别将每个所述目标文本语义对应的向量差与所述第一特征向量进行拼接,得到每个所述目标文本语义对应的编码特征向量;
所述对所述编码特征向量进行预测处理,输出所述待识别文本的文本语义包括:
分别利用每个所述目标文本语义对应的编码特征向量,获得所述待识别文本属于每个所述目标文本语义的概率值;
将最高的概率值所对应的目标文本语义确定为所述待识别文本的文本语义。
6.根据权利要求1所述的文本语义识别方法,其特征在于,所述基于匹配的所述文本规则和所述待识别文本,获取所述待识别文本的关键词序列之前,所述方法还包括:
统计每一种所述文本语义对应的训练文本的文本数量,以及每一所述文本规则所属的文本语义;
所述基于匹配的所述文本规则和所述待识别文本,获取所述待识别文本的关键词序列包括:
获取匹配的文本规则所属的文本语义,并获取与所属的文本语义对应的训练文本的文本数量;
若所述文本数量小于第一预设数量阈值,则从所述多个文本规则选取符合第一预设条件的文本规则,并基于所述选取的文本规则、所述匹配的文本规则和所述待识别文本,获取所述待识别文本的关键词序列;
若所述文本数量大于第二预设数量阈值,且匹配的文本规则中包含多个所属文本语义相同的文本规则,则当所述多个所属文本语义相同的文本规则符合第二预设条件时,在所述多个所属文本语义相同的文本规则中选取其中一个文本规则,并基于选取的文本规则和所述待识别文本,获取所述待识别文本的关键词序列。
7.根据权利要求1所述的文本语义识别方法,其特征在于,所述将所述待识别文本和所述关键词序列输入经训练得到的文本语义识别模型进行语义理解,获取所述待识别文本的文本语义之前,所述方法还包括:
从所述多个文本规则中分别筛选与每一所述训练文本匹配的文本规则;
基于与每一所述训练文本匹配的文本规则和所述训练文本,分别获取每一所述训练文本的关键词序列;
分别将每一所述训练文本及其对应的关键词序列输入所述预设神经网络,并采用预设训练方式对所述预设神经网络进行训练,得到所述文本语义识别模型。
8.根据权利要求7所述的文本语义识别方法,其特征在于,所述采用预设训练方式所述预设神经网络进行训练包括:
针对所述多个训练文本中的每一训练文本,在该训练文本的多个关键词序列中,获取文本语义和该训练文本的文本语义相同的关键词序列作为正向关键词序列,并获取文本语义和该训练文本的文本语义不同的关键词序列作为负向关键词序列;基于该正向关键词序列和该负向关键词序列,获取该训练文本对应的损失值和损失权重;
利用每一所述训练文本的损失权重对相应所述训练文本的损失值进行加权处理,获得所述多个训练文本的损失值;
利用所述多个训练文本的损失值调整所述预设神经网络的网络参数,直至满足预设训练结束条件。
9.根据权利要求8所述的文本语义识别方法,其特征在于,所述基于该正向关键词序列和该负向关键词序列,获取该训练文本对应的损失值和损失权重包括:
分别获取该正向关键词序列中每个词的第一概率分配值,以及该负向关键词序列中每个词的第二概率分配值;
对所述第一概率分配值和所述第二概率分配值进行自注意力损失计算,获取该训练文本的自注意力损失值;
基于交叉熵损失值以及该训练文本的自注意力损失值,得到该训练文本对应的损失值。
10.根据权利要求9所述的文本语义识别方法,其特征在于,所述对所述第一概率分配值和所述第二概率分配值进行自注意力损失计算,获取该训练文本的自注意力损失值,包括:
利用下面公式1对每个正向关键词序列进行计算得到正向损失值loss1,利用下面公式2对每个负向关键词序列进行计算得到负向损失值loss2;
其中,所述p(wi)为一个正向关键词序列中第i个词的第一概率分配值,所述n为一个正向关键词序列中的词总数,所述p(xi)为一个负向关键词序列中第i个词的第二概率分配值,所述m为一个负向关键词序列中的词总数;
将每个正向关键词序列的正向损失值loss1和每个负向关键词序列的负向损失值loss2进行相加,得到该训练文本的自注意力损失值。
11.一种文本语义识别模型的获取方法,其特征在于,包括:
从多个文本规则中分别筛选与每一训练文本匹配的文本规则,其中,所述多个文本规则是对标注有文本语义的多个样本文本进行分析而得到的;
基于与每一训练文本匹配的文本规则和所述训练文本,分别获取每一所述训练文本的关键词序列;
分别将标注有文本语义的每一所述训练文本及其对应的关键词序列输入预设神经网络进行训练,直至满足预设训练结束条件,得到所述文本语义识别模型。
12.一种文本语义识别装置,其特征在于,包括相互耦接的存储器和处理器,所述存储器中存储有程序指令,所述处理器用于执行所述程序指令以实现权利要求1至10任一项所述的文本语义识别方法。
13.一种文本语义识别模型的获取装置,其特征在于,包括相互耦接的存储器和处理器,所述存储器中存储有程序指令,所述处理器用于执行所述程序指令以实现权利要求11所述的文本语义识别模型的获取方法。
14.一种存储装置,其特征在于,存储有能够被处理器运行的程序指令,所述程序指令用于实现权利要求1至10任一项所述的文本语义识别方法,或实现权利要求11所述的文本语义识别模型的获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360687.9A CN111144127B (zh) | 2019-12-25 | 2019-12-25 | 文本语义识别方法及其模型的获取方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360687.9A CN111144127B (zh) | 2019-12-25 | 2019-12-25 | 文本语义识别方法及其模型的获取方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111144127A CN111144127A (zh) | 2020-05-12 |
CN111144127B true CN111144127B (zh) | 2023-07-25 |
Family
ID=70520207
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911360687.9A Active CN111144127B (zh) | 2019-12-25 | 2019-12-25 | 文本语义识别方法及其模型的获取方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111144127B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111832290B (zh) * | 2020-05-25 | 2024-04-02 | 北京三快在线科技有限公司 | 用于确定文本相关度的模型训练方法、装置、电子设备及可读存储介质 |
CN111859926B (zh) * | 2020-07-28 | 2023-07-25 | 中国平安人寿保险股份有限公司 | 同义句对生成方法、装置、计算机设备及存储介质 |
CN113408292A (zh) * | 2020-11-03 | 2021-09-17 | 腾讯科技(深圳)有限公司 | 语义识别方法、装置、电子设备及计算机可读存储介质 |
CN112487165A (zh) * | 2020-12-02 | 2021-03-12 | 税友软件集团股份有限公司 | 一种基于关键词的问答方法、装置及介质 |
CN112560477B (zh) * | 2020-12-09 | 2024-04-16 | 科大讯飞(北京)有限公司 | 文本补全方法以及电子设备、存储装置 |
CN112489740A (zh) * | 2020-12-17 | 2021-03-12 | 北京惠及智医科技有限公司 | 病历检测方法及相关模型的训练方法和相关设备、装置 |
CN112668343B (zh) * | 2020-12-22 | 2024-04-30 | 科大讯飞股份有限公司 | 文本重写方法以及电子设备、存储装置 |
CN112632991B (zh) * | 2020-12-30 | 2024-05-14 | 北京久其软件股份有限公司 | 一种中文语言的特征信息提取方法及装置 |
CN112668341B (zh) * | 2021-01-08 | 2024-05-31 | 深圳前海微众银行股份有限公司 | 文本正则化方法、装置、设备和可读存储介质 |
CN113053387A (zh) * | 2021-02-26 | 2021-06-29 | 上海声通信息科技股份有限公司 | 一种支持语义理解的语音录入*** |
CN113035231B (zh) * | 2021-03-18 | 2024-01-09 | 三星(中国)半导体有限公司 | 关键词检测方法及装置 |
CN113515945B (zh) * | 2021-04-26 | 2024-06-04 | 中国科学技术大学 | 一种获取文本信息的方法、装置、设备及存储介质 |
CN113688206A (zh) * | 2021-08-25 | 2021-11-23 | 平安国际智慧城市科技股份有限公司 | 基于文本识别的趋势分析方法、装置、设备及介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109993057A (zh) * | 2019-02-25 | 2019-07-09 | 平安科技(深圳)有限公司 | 语义识别方法、装置、设备及计算机可读存储介质 |
CN110263323A (zh) * | 2019-05-08 | 2019-09-20 | 清华大学 | 基于栅栏式长短时记忆神经网络的关键词抽取方法及*** |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
HUE030528T2 (en) * | 2012-03-15 | 2017-05-29 | Cortical Io Gmbh | Process, equipment and product for semantic processing of texts |
US9244908B2 (en) * | 2012-03-27 | 2016-01-26 | Accenture Global Services Limited | Generation of a semantic model from textual listings |
US9558743B2 (en) * | 2013-03-15 | 2017-01-31 | Google Inc. | Integration of semantic context information |
US9959341B2 (en) * | 2015-06-11 | 2018-05-01 | Nuance Communications, Inc. | Systems and methods for learning semantic patterns from textual data |
CN107729309B (zh) * | 2016-08-11 | 2022-11-08 | 中兴通讯股份有限公司 | 一种基于深度学习的中文语义分析的方法及装置 |
CN108304365A (zh) * | 2017-02-23 | 2018-07-20 | 腾讯科技(深圳)有限公司 | 关键词提取方法及装置 |
CN106897439B (zh) * | 2017-02-28 | 2020-04-14 | 百度在线网络技术(北京)有限公司 | 文本的情感识别方法、装置、服务器以及存储介质 |
CN107729314B (zh) * | 2017-09-29 | 2021-10-26 | 东软集团股份有限公司 | 一种中文时间识别方法、装置及存储介质、程序产品 |
CN108417205B (zh) * | 2018-01-19 | 2020-12-18 | 苏州思必驰信息科技有限公司 | 语义理解训练方法和*** |
CN108717406B (zh) * | 2018-05-10 | 2021-08-24 | 平安科技(深圳)有限公司 | 文本情绪分析方法、装置及存储介质 |
CN108664473A (zh) * | 2018-05-11 | 2018-10-16 | 平安科技(深圳)有限公司 | 文本关键信息的识别方法、电子装置及可读存储介质 |
CN109522406A (zh) * | 2018-10-11 | 2019-03-26 | 平安科技(深圳)有限公司 | 文本语义匹配方法、装置、计算机设备和存储介质 |
CN109766540B (zh) * | 2018-12-10 | 2022-05-03 | 平安科技(深圳)有限公司 | 通用文本信息提取方法、装置、计算机设备和存储介质 |
CN109697291B (zh) * | 2018-12-29 | 2023-04-18 | 北京百度网讯科技有限公司 | 文本的语义段落识别方法和装置 |
CN110119765B (zh) * | 2019-04-18 | 2021-04-06 | 浙江工业大学 | 一种基于Seq2seq框架的关键词提取方法 |
CN110309514B (zh) * | 2019-07-09 | 2023-07-11 | 北京金山数字娱乐科技有限公司 | 一种语义识别方法及装置 |
CN110427617B (zh) * | 2019-07-22 | 2020-09-08 | 阿里巴巴集团控股有限公司 | 推送信息的生成方法及装置 |
-
2019
- 2019-12-25 CN CN201911360687.9A patent/CN111144127B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109993057A (zh) * | 2019-02-25 | 2019-07-09 | 平安科技(深圳)有限公司 | 语义识别方法、装置、设备及计算机可读存储介质 |
CN110263323A (zh) * | 2019-05-08 | 2019-09-20 | 清华大学 | 基于栅栏式长短时记忆神经网络的关键词抽取方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN111144127A (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111144127B (zh) | 文本语义识别方法及其模型的获取方法及相关装置 | |
CN108984724B (zh) | 利用高维表示提高特定属性情感分类准确率方法 | |
CN108363790B (zh) | 用于对评论进行评估的方法、装置、设备和存储介质 | |
CN108073568B (zh) | 关键词提取方法和装置 | |
CN108829822A (zh) | 媒体内容的推荐方法和装置、存储介质、电子装置 | |
CN107273913B (zh) | 一种基于多特征融合的短文本相似度计算方法 | |
CN109597493A (zh) | 一种表情推荐方法及装置 | |
CN112183107A (zh) | 音频的处理方法和装置 | |
CN114238573A (zh) | 基于文本对抗样例的信息推送方法及装置 | |
CN111460157A (zh) | 用于多领域文本分类的循环卷积多任务学习方法 | |
Zhu et al. | Catslu: The 1st chinese audio-textual spoken language understanding challenge | |
CN111538841B (zh) | 基于知识互蒸馏的评论情感分析方法、装置及*** | |
CN116304748A (zh) | 一种文本相似度计算方法、***、设备及介质 | |
CN112464655A (zh) | 中文字符和拼音相结合的词向量表示方法、装置、介质 | |
CN113780418B (zh) | 一种数据的筛选方法、***、设备和存储介质 | |
CN115168590A (zh) | 文本特征提取方法、模型训练方法、装置、设备及介质 | |
CN114722832A (zh) | 一种摘要提取方法、装置、设备以及存储介质 | |
CN116680401A (zh) | 文档处理方法、文档处理装置、设备及存储介质 | |
CN111368524A (zh) | 一种基于自注意力双向gru和svm的微博观点句识别方法 | |
CN107729509B (zh) | 基于隐性高维分布式特征表示的篇章相似度判定方法 | |
Gupta et al. | Comparative Analysis of Multi-Model and Uni-Model Approaches using Time Distributed Bidirectional LSTM for Multidata Sentiment Analysis | |
Henri et al. | A deep transfer learning model for the identification of bird songs: A case study for Mauritius | |
CN115858728A (zh) | 一种基于多模态数据的情感分析方法 | |
WO2022085533A1 (ja) | 回答特定用テキスト分類器及び背景知識表現ジェネレータ及びその訓練装置、並びにコンピュータプログラム | |
CN112364666B (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 |