句向量模型的训练方法、文本语义增强的方法及装置与流程

未命名 08-15 阅读:150 评论:0


1.本公开总体说来涉及自然语言处理领域,更具体地讲,涉及一种句向量模型的训练方法、文本语义增强的方法及装置。


背景技术:

2.文本数据增强是在文本数据不足的场景中,根据现已有的部分数据施以特定的模式,生成额外的训练数据。目前针对文本数据增强的模式有很多,半监督学习、无监督学习、自监督学习。有监督学习有机器学习和深度学习,半监督方法是使用大量的无标签数据加上少量的有标签数据对模型训练进行干预,无监督学习是使用了无标签的数据对数据文本进行增强,自监督学习是从无标签的数据中自发进行学习,无需标注数据。
3.现有技术中,文本数据增强可以增加额外文本数据,但在增加前需要经过一定的人工搜集、处理,设计算法来选取文本数据,增加了一定的人工成本。还可以用复杂的算法逻辑,如分层次处理对文本数据进行增强,但使用该类方法时间复杂度较高,增加了文本数据增强的时间成本。


技术实现要素:

4.本公开的实施例提供一种句向量模型的训练方法、文本语义增强的方法及装置,能够通过对文本进行特有的自监督采集,然后通过预训练模型和深度学习中的注意力机制提取文本的句向量,进而实现对文本中方面词情感语义的增强,减少了人工成本和时间成本。
5.根据本公开的实施例的第一方面,提供一种句向量模型的训练方法,所述句向量模型包括嵌入层、自注意力层、池化层和线性层,所述训练方法包括:从预先构建的训练数据集获取预定数量的数据对,其中,每个数据对包括代表目标文本的正样本、代表随机文本的负样本以及代表目标文本的方面词的锚样本;基于输入文本数据集构建每个数据对中正样本的输入序列、负样本的输入序列以及锚样本的输入序列,并将所述正样本的输入序列、所述负样本输入的序列以及所述锚样本的输入序列转换为对应的token序列;将正样本的token序列、负样本的token序列以及锚样本的token序列分别输入至嵌入层,得到对应的嵌入序列;将每种嵌入序列输入至自注意力层,得到每种嵌入序列的相关性序列;将每种相关性序列输入至池化层,得到用于表示每种相关性序列的初始向量;将每种初始向量输入至线性层,通过调整每种初始向量的维度,得到对应的目标向量,其中,所述目标向量包括正样本的句向量、负样本的句向量以及锚样本的方面词向量;以最小化反映所述锚样本的方面词向量、所述正样本的句向量以及所述负样本的句向量的三元组损失函数为目标,对所述句向量模型进行训练。
6.可选地,在从预先构建的训练数据集获取预定数量的数据对之前,所述训练方法还包括:获取情感分析数据集中的所有样本数据,并对所述样本数据进行清洗,其中,所述样本数据的特征包括文本、文本的实体序列以及文本的情感极性序列;去除清洗后的样本
数据中特征错误的样本数据,并确定剩余的样本数据的实体序列和情感极性序列是否正确,将所述实体序列和所述情感极性序列均正确的样本数据归入目标样本数据集;根据目标样本数据集中的每个样本数据的情感极性序列中表示情感极性的序列所在的位置索引,确定每个样本数据的文本的方面词;针对所述目标样本数据集中的每个样本数据,执行以下步骤:以该样本数据的文本作为目标文本,从所述目标样本数据集中随机选取另一样本数据,并以选取的另一样本数据的文本作为随机文本;确定所述目标文本和所述随机文本分别对应的目标方面词和随机方面词;利用glove模型,基于所述目标方面词和所述随机方面词得到对应的目标词向量和随机词向量;将根据曼哈顿距离计算所述目标词向量和所述随机词向量的距离作为所述目标方面词和所述随机方面词的相似度;确定所述相似度是否小于或等于预设值;响应于所述相似度小于或等于所述预设值,以所述目标方面词作为锚样本,以所述目标文本作为正样本,以所述随机文本作为负样本,构建一个数据对,并将所述数据对归入所述训练数据集;响应于所述相似度大于所述预设值,重新从所述目标样本数据集中随机选取另一样本数据,将重新选取的另一样本数据的文本作为随机文本,并返回确定对应的目标方面词和随机方面词的步骤。
7.可选地,所述将正样本的token序列、负样本的token序列以及锚样本的token序列分别输入至嵌入层,得到对应的嵌入序列,包括:在所述嵌入层,利用bert模型,基于所述正样本的token序列、所述负样本的token序列以及所述锚样本的token序列得到对应的正样本的嵌入序列、负样本的嵌入序列以及锚样本的嵌入序列,其中,通过如下公式获得所述嵌入序列:,其中,bert()是所述bert模型,s是token序列,是作为所述嵌入序列的、基于所述bert模型的向量表示。
8.可选地,所述将所述每种嵌入序列输入至自注意力层,得到每种嵌入序列的相关性序列,包括:将所述每种嵌入序列输入至所述自注意力层,基于多组参数矩阵得到所述每种嵌入序列的多个单头相关性序列,其中,每组参数矩阵包括查询权重参数矩阵、键权重参数矩阵以及值权重参数矩阵,其中,通过如下公式获得所述单头相关性序列:通过如下公式获得所述单头相关性序列:其中,为所述嵌入序列,表示单头相关性序列,为所述查询权重参数矩阵,为所述键权重参数矩阵,为所述值权重参数矩阵,为查询矩阵,为键矩阵,为值矩阵,为所述键矩阵的转置矩阵,表示所述查询权重参数矩阵的行数或列数;利用激活函数,根据所述多个单头相关性序列和多头权重参数矩阵计算多头自注意力机制的所述相关性序列,其中,通过如下公式获得所述相关性序列:,其中,;表示所述单头相关性序列的纵向拼接,表示多头的个数,是多头自注意力机制,为多头权重参数矩阵。可选地,所述将每种相关性序列输入至池化层,得到用于表示每种相关性序列的初始向量,包括:在所述池
化层,通过如下公式获得所述初始向量:通过如下公式获得所述初始向量:其中,为基于的向量表示,代表所述相关性序列,为池化处理,为基于池化处理的所述初始向量,是作为所述嵌入序列的、基于bert模型的向量表示。
9.可选地,所述训练方法还包括:将所述锚样本的方面词向量缓存至方面词集合,所述正样本的句向量和负样本的句向量缓存至句向量集合,其中,通过如下公式获得所述方面词集合和/或句向量集合:,其中,为所述方面词集合和/或句向量集合,为权重参数矩阵,为目标向量,是偏离向量。
10.可选地,通过如下公式表示所述三元组损失函数:其中,为所述正样本的句向量,为所述负样本的句向量,为所述锚样本的方面词向量,为大于0的常数,其中,所述以最小化反映所述锚样本的方面词向量、所述正样本的句向量以及所述负样本的句向量的三元组损失函数为目标,对所述句向量模型进行训练,包括:当,时,对所述句向量模型的参数进行优化;当,时,对所述句向量模型的参数进行优化;当,时,停止对所述句向量模型的参数进行优化。
11.根据本公开的实施例的第二方面,提供一种文本语义增强的方法,包括:获取待进行文本语义增强的初始文本;将所述初始文本输入至句向量模型,得到所述初始文本的初始句向量,其中,所述句向量模型通过如上所述的句向量模型的训练方法得到;计算所述初始句向量与所述句向量模型中的句向量集合中的每个句向量的相似度;随机选取一个相似度大于预设阈值的句向量,将选择的句向量对应的文本作为相似文本,并将选择的相似文本与所述初始文本进行拼接,得到文本语义增强的目标文本。
12.根据本公开的实施例的第三方面,提供一种句向量模型的训练装置,所述句向量模型包括嵌入层、自注意力层、池化层和线性层,所述训练装置包括:数据获取单元,被配置为从预先构建的训练数据集获取预定数量的数据对,其中,每个数据对包括作为目标文本的正样本、作为随机文本的负样本以及作为目标文本的方面词的锚样本;数据转换单元,被配置为基于输入文本数据集构建每个数据对中正样本的输入序列、负样本的输入序列以及锚样本的输入序列,并将所述正样本的输入序列、所述负样本输入的序列以及所述锚样本的输入序列转换为对应的token序列;嵌入单元,被配置为将正样本的token序列、负样本的token序列以及锚样本的token序列分别输入至嵌入层,得到对应的嵌入序列;自注意力单元,被配置为将每种嵌入序列输入至自注意力层,得到每种嵌入序列的相关性序列;池化单元,被配置为将每种相关性序列输入至池化层,得到用于表示每种相关性序列的初始向量;线性单元,被配置为将每种初始向量输入至线性层,通过调整每种初始向量的维度,得到对应的目标向量,其中,所述目标向量包括正样本的句向量、负样本的句向量以及锚样本的方面词向量;训练单元,被配置为以最小化反映所述锚样本的方面词向量、所述正样本的句向
量以及所述负样本的句向量的三元组损失函数为目标,对所述句向量模型进行训练。
13.根据本公开的实施例的第四方面,提供一种文本语义增强的装置,包括:文本获取单元,被配置为获取待进行文本语义增强的初始文本;句向量获取单元,被配置为将所述初始文本输入至句向量模型,得到所述初始文本的初始句向量,其中,所述句向量模型通过如上所述的句向量模型的训练方法得到;相似度确定单元,被配置为计算所述初始句向量与所述句向量模型中的句向量集合中的每个句向量的相似度;拼接单元,被配置为随机选取一个相似度大于预设阈值的句向量,将选择的句向量对应的文本作为相似文本,并将选择的相似文本与所述初始文本进行拼接,得到文本语义增强的目标文本。
14.根据本公开的实施例的第五方面,提供一种电子设备,所述电子设备包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现上述的句向量模型的训练方法或实现如上所述的文本语义增强的方法。
15.根据本公开的实施例的第六方面,提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被处理器执行时,实现如上所述的句向量模型的训练方法或实现如上所述的文本语义增强的方法。
16.根据本公开的句向量模型的训练方法、文本语义增强的方法及装置,能够通过对文本进行特有的自监督采集,然后通过预训练模型和深度学习中的注意力机制提取文本的句向量,进而实现对文本中方面词的情感语义的增强,降低了文本语义增强模型的复杂度,在提升多重方面词语义同时,减少了人工成本和时间成本。
附图说明
17.图1是示出根据本公开的句向量模型的训练方法的流程图。
18.图2a是示出根据本公开的实施例的训练数据集构建方法的流程图。
19.图2b是示出图2a中的步骤s204的具体操作的流程图。
20.图3是示出本公开的实施例的训练数据集中的数据对构建的示例的示图。
21.图4是示出根据本公开的实施例的句向量模型的训练的示例的示图。
22.图5是示出根据本公开的实施例的文本语义增强的方法的流程图。
23.图6是示出根据本公开的句向量模型的训练装置的示意图。
24.图7是示出根据本公开的文本语义增强的装置的示意图。
25.图8是示出根据本公开的电子设备的示意图。
具体实施方式
26.提供下面的具体实施方式以帮助读者获得对在此描述的方法、设备和/或系统的全面理解。然而,在理解本公开的公开之后,在此描述的方法、设备和/或系统的各种改变、修改和等同物将是清楚的。例如,在此描述的操作的顺序仅是示例,并且不限于在此阐述的那些顺序,而是除了必须以特定的顺序发生的操作之外,可如在理解本公开的公开之后将是清楚的那样被改变。此外,为了更加清楚和简明,本领域已知的特征的描述可被省略。
27.在此描述的特征可以以不同的形式来实现,而不应被解释为限于在此描述的示例。相反,已提供在此描述的示例,以仅示出实现在此描述的方法、设备和/或系统的许多可
行方式中的一些可行方式,许多可行方式在理解本公开的公开之后将是清楚的。
28.如在此使用的,术语“和/或”包括相关联的所列项中的任何一个以及任何两个或更多个的任何组合。
29.尽管在此可使用诸如“第一”、“第二”和“第三”的术语来描述各种构件、组件、区域、层或部分,但是这些构件、组件、区域、层或部分不应被这些术语所限制。相反,这些术语仅被配置为将一个构件、组件、区域、层或部分与另一构件、组件、区域、层或部分进行区分。因此,在不脱离示例的教导的情况下,在此描述的示例中所称的第一构件、第一组件、第一区域、第一层或第一部分也可被称为第二构件、第二组件、第二区域、第二层或第二部分。
30.在说明书中,当元件(诸如,层、区域或基底)被描述为“在”另一元件上、“连接到”或“结合到”另一元件时,该元件可直接“在”另一元件上、直接“连接到”或“结合到”另一元件,或者可存在介于其间的一个或多个其他元件。相反,当元件被描述为“直接在”另一元件上、“直接连接到”或“直接结合到”另一元件时,可不存在介于其间的其他元件。
31.在此使用的术语仅被配置为描述各种示例,并不将被配置为限制公开。除非上下文另外清楚地指示,否则单数形式也意在包括复数形式。术语“包含”、“包括”和“具有”说明存在叙述的特征、数量、操作、构件、元件和/或它们的组合,但不排除存在或添加一个或多个其他特征、数量、操作、构件、元件和/或它们的组合。
32.除非另有定义,否则在此使用的所有术语(包括技术术语和科学术语)具有与由本公开所属领域的普通技术人员在理解本公开之后通常理解的含义相同的含义。除非在此明确地如此定义,否则术语(诸如,在通用词典中定义的术语)应被解释为具有与它们在相关领域的上下文和本公开中的含义一致的含义,并且不应被理想化或过于形式化地解释。
33.此外,在示例的描述中,当认为公知的相关结构或功能的详细描述将引起对本公开的模糊解释时,将省略这样的详细描述。
34.下面,将参照图1至图8来详细描述根据本公开的句向量模型的训练方法和装置以及文本语义增强的方法和装置。
35.图1是示出根据本公开的句向量模型的训练方法的流程图。
36.参照图1,本公开的示例性实施例提供了一种句向量模型的训练方法。具体而言,句向量模型包括嵌入层、自注意力层、池化层和线性层。
37.在步骤s101中,从预先构建的训练数据集获取预定数量的数据对,其中,每个数据对包括代表目标文本的正样本、代表随机文本的负样本以及代表目标文本的方面词的锚样本。训练数据集中存放的是对句向量模型进行训练的数据对。数据对的正样本代表目标文本,即需要语义增强的文本,随机文本是在训练数据集中随机选取的文本,方面词是目标文本的情感极性对应的实体。
38.图2a是示出根据本公开的实施例的训练数据集构建方法的流程图,图2b是示出图2a中的步骤s204的具体操作的流程图,图3是示出本公开的实施例的训练数据集中的数据对构建的示例的示图。参照图2a、图2b和图3,在步骤s201中,获取情感分析数据集中的所有样本数据,并对样本数据进行清洗,其中,样本数据的特征包括文本、文本的实体序列以及文本的情感极性序列。情感分析是指对带有情感色彩的主观性文本进行分析、处理、归纳和推理,利用情感分析能力,可以针对带有主观描述的自然语言文本,自动判断该文本的情感正负倾向并给出相应的结果。情感分析分可分为段落级别、句子级别和方面级别。方面级别
是指对文本中出现的每个实体进行情感分析。
39.如上所述,情感分析数据集是指经科学取样和加工的大规模电子文本库,存放的是在语言的实际使用中真实出现过的语言材料,即样本数据。其中,样本数据的特征分别包括文本、实体序列以及情感极性序列。
40.如样本数据的特征为“镜头口径小, b-asp i-asp i-asp i-asp o , 0 0 0 0
ꢀ‑
1”,其中,“镜头口径小”为文本,“b-asp i-asp i-asp i-asp o”为文本的实体序列。“0 0 0 0
ꢀ‑
1”为文本的情感极性序列。具体地,实体序列用于标注文本中的实体,序列中的b-asp表示实体的开始,i-asp表示实体开头后面的所有部分,o表示不属于任何一种类型,即,不是实体。实体序列“b-asp i-asp i-asp i-asp o”表示文本“镜头口径小”中的实体为“镜头口径”。情感极性序列用于标注文本中的实体的情感极性,其中,序列中数字0表示有情感极性,且情感极性为消极;数字1表示有情感极性,且情感极性为中性;数字2表示有情感极性,且情感极性为积极;数字-1表示无情感极性。情感极性序列“0 0 0 0
ꢀ‑
1”代表文本中的实体“镜头口径”的情感极性是消极的。
41.例如,“英寸液晶屏显示效果出色,o o b-asp i-asp i-asp o o o o o o,-1
ꢀ‑
1 2 2 2
ꢀ‑1ꢀ‑1ꢀ‑1ꢀ‑1ꢀ‑1ꢀ‑ꢀ
1”。文本为英寸液晶屏显示效果出色,文本中的实体为液晶屏,实体液晶屏的情感极性是积极的。
42.根据本公开的实施例,可以通过各种现有方法获取训练数据集(即,情感分析数据集)及其中的样本数据,这里不再赘述。
43.然后,在步骤s202中,去除清洗后的样本数据中特征错误的样本数据,并确定剩余的样本数据的实体序列和情感极性序列是否正确,将实体序列和情感极性序列均正确的样本数据归入目标样本数据集。例如,清洗后的样本数据为“清晰度高,b-asp i-asp o o,-1
ꢀ‑1ꢀ‑
1 2”,在该样本数据中,文本为清晰度高,与文本对应的正确的实体序列为b-asp i-asp i-asp o,正确的情感极性序列为2 2 2
ꢀ‑
1,而样本数据“清晰度高,b-asp i-asp o o,-1
ꢀ‑1ꢀ‑
1 2”的实体序列和情感极性序列均不正确,因此可将该样本数据剔除。
44.接下来,在步骤s203中,根据目标样本数据集中的每个样本数据的情感极性序列中表示情感极性的序列所在的位置索引,确定每个样本数据的文本的方面词。当情感极性序列中的数字为0、1或2时,表示文本中的实体有情感极性,根据数字0、1或2在情感极性序列中的位置确定对应的位置索引,根据位置索引确定文本中的方面词。
45.例如,“镜头口径小, b-asp i-asp i-asp i-asp o , 0 0 0 0
ꢀ‑
1”,情感极性序列为“0 0 0 0
ꢀ‑
1”,序列中代表情感极性的数字0的位置为第1至第4,那么对应的位置索引为“1 2 3 4”,根据位置索引确定文本“镜头口径小”中的方面词的位置是第1个字至第4个字,从而确定方面词为“镜头口径”。
ꢀ“
英寸液晶屏显示效果出色,o o b-asp i-asp i-asp o o o o o o,-1
ꢀ‑
1 2 2 2
ꢀ‑1ꢀ‑1ꢀ‑1ꢀ‑1ꢀ‑1ꢀ‑ꢀ
1”中,情感极性序列为
“‑1ꢀ‑
1 2 2 2
ꢀ‑1ꢀ‑1ꢀ‑1ꢀ‑1ꢀ‑1ꢀ‑ꢀ
1”,其中表示有情感极性的数字为2,所在位置为情感极性序列的第3至第5,那么对应的位置索引为“3 4 5”,根据位置索引“3 4 5”确定文本“英寸液晶屏显示效果出色”的方面词的位置,进而确定方面词为液晶屏。
46.然后,在步骤s204中,针对目标样本数据集中的每个样本数据,构建一个数据对,并将构建的数据对归入训练数据集。
47.图2b是示出步骤s204的具体操作的流程图。
48.参照图2b,在步骤s204-1中,针对目标样本数据集中的每个样本数据,以该样本数据的文本作为目标文本,从目标样本数据集中随机选取另一样本数据,并以选取的另一样本数据的文本作为随机文本。例如,针对每个目标样本数据集中的目标文本,通过随机采样选取另一个在中的随机文本。
49.然后,在步骤s204-2中,确定目标文本和随机文本分别对应的目标方面词和随机方面词。具体地,根据目标文本的情感极性序列确定目标方面词,根据随机文本的情感极性序列确定随机方面词。例如,确定为目标文本对应的目标方面词,为随机文本对应的随机方面词。
50.然后,在步骤s204-3中,利用glove模型,基于目标方面词和随机方面词得到对应的目标词向量和随机词向量。在步骤s204-4中,将根据曼哈顿距离计算目标词向量和随机词向量的距离作为目标方面词和随机方面词的相似度。具体地,首先将目标方面词和随机方面词分别输入至glove模型,得到对应的目标词向量和随机词向量,然后基于曼哈顿距离计算目标词向量和随机词向量的距离,将目标词向量和随机词向量间的距离作为目标方面词和随机方面词的相似度。
51.接下来,在步骤s204-5中,确定相似度是否小于或等于预设值。例如,预设值可设置为0.6,但是本公开不限于此。
52.然后,在步骤s204-6中,响应于相似度小于或等于预设值,以目标方面词作为锚样本,以目标文本作为正样本,以随机文本作为负样本,构建一个数据对,并将数据对归入训练数据集。这样,在相似度小于或等于预设值时,目标文本与随机文本的方面词的相似度较低,可以根据目标文本、目标文本的方面词以及随机文本分别作为正样本数据、锚样本数据以及负样本数据构建一个数据对,根据数据对可得到训练数据集。根据训练数据集中的数据对,对句向量模型进行训练,提高句向量模型的准确性。
53.具体地,一个样本数据“镜头口径小,b-aspi-aspi-aspi-aspo,000-1”,它表示该样本中方面词为“镜头口径”,情感极性为消极。将目标文本“镜头口径小”作为正样本,将方面词“镜头口径”作为锚样本,以目标样本数据集中,根据方面词“镜头口径”随机选取的相似度小于预设值的方面词“速度”所对应的文本“它的开机启动速度较慢”作为负样本,最终可构建数据对:“镜头口径,镜头口径小,它的开机启动速度较慢”。根据本公开的实施例,数据对中各样本的位置仅为示例,而非限制,即数据对既可以为,也可以为。
54.可选择地,在步骤s204-7中,响应于相似度大于预设值,重新从目标样本数据集中随机选取另一样本数据,将重新选取的另一样本数据的文本作为随机文本,并返回步骤s204-2。这样,在相似度大于预设值时,目标文本与随机文本的方面词相似度较高,需要重新在目标样本数据集中选取另外一个样本数据,并作为随机文本完成后续操作。
55.返回参照图1,在步骤s102中,基于输入文本数据集构建每个数据对中正样本的输入序列、负样本的输入序列以及锚样本的输入序列,并将正样本的输入序列、负样本输入的序列以及锚样本的输入序列转换为对应的token序列。具体地,根据输入文本数据集将每个数据对中的正样本拼接为“[cls]+正样本+[sep]+正样本的方面词+[sep]”的输入序列,将每个数据对中的负样本拼接为“[cls]+负样本+[sep]+负样本的方面词+[sep]”的输入序
列,将每个数据对中的正样本的方面词拼接为“[cls]+正样本的方面词+[sep]”的输入序列。其中,[cls]和[sep]是bert模型中的两个特殊标记符号,[cls]对应输入文本中第一个词的词向量,[sep]对应输入文本中最后一个词的词向量,用于分割不同句子。例如,可以将正样本“镜头口径小”拼接为“[cls]+镜头口径小+[sep]+镜头口径+[sep]”,将锚样本“镜头口径”拼接为“[cls]+镜头口径+[sep]”。然后,将正样本的输入序列、负样本的输入序列以及锚样本的输入序列转换为对应的token序列。进一步地,根据bert模型的预设词表分别确定正样本的token序列、负样本的token序列以及锚样本的token序列的索引。
[0056]
在步骤s103中,将正样本的token序列、负样本的token序列以及锚样本的token序列分别输入至嵌入层,得到对应的嵌入序列。
[0057]
图4是示出根据本公开的实施例的句向量模型的训练的示例的示图。参照图4,步骤s103可包括:在嵌入层,利用bert模型(即,嵌入层被构建为bert模型),基于正样本的token序列、负样本的token序列以及锚样本的token序列得到对应的正样本的嵌入序列、负样本的嵌入序列以及锚样本的嵌入序列,其中,通过如下公式获得嵌入序列:,其中,bert()是bert模型,s是token序列,是作为嵌入序列的、基于bert模型的向量表示。这样,利用bert模型对正样本的token序列、负样本的token序列以及锚样本的token序列进行编码,得到正样本的嵌入序列、锚样本的嵌入序列以及负样本的嵌入序列,其中p、a、n分别表示正样本、锚样本以及负样本。利用bert模型考虑了上下文长序列的关系,采用三胞胎参数共享结构即正样本、负样本以及锚样本的参数共享,减少句向量模型的复杂度。
[0058]
然后,在步骤s104中,将每种嵌入序列输入至自注意力层,得到每种嵌入序列的相关性序列。这样,将正样本和负样本的文本信息更多地聚焦于其包含的方面词上,减少由可能出现的长距离上下文依赖对方面词的理解造成负面影响,利用自注意力层使用无监督的模式训练可以更好表示文本的相关性序列。
[0059]
参照图4,步骤s104可包括:将每种嵌入序列输入至自注意力层,基于多组参数矩阵得到所述每种嵌入序列的多个单头相关性序列,其中,每组参数矩阵包括查询权重参数矩阵、键权重参数矩阵以及值权重参数矩阵,其中,通过如下公式获得单头相关性序列:通过如下公式获得单头相关性序列:其中,为嵌入序列,表示单头相关性序列,为查询权重参数矩阵,为键权重参数矩阵,为值权重参数矩阵,为查询矩阵,为键矩阵,为值矩阵,为键矩阵的转置矩阵,表示查询权重参数矩阵的行数或列数。
[0060]
如上所述,为输入的嵌入序列,可以为正样本的嵌入序列、负样本的嵌入序列或锚样本的嵌入序列。自注意力层包括多组参数矩阵,每组参数矩阵均包括
查询权重参数矩阵、键权重参数矩阵以及值权重参数矩阵,其中,的维度为,的维度为,的维度为,、、都表示一个数值,例如,的维度为22,的行数和列数均为2。将多组、、分别与嵌入序列进行相乘,映射得到对应的多组矩阵,每组矩阵均包括查询矩阵、键矩阵以及值矩阵,根据多组矩阵得到与原序列同样长度的多个单头相关性序列序列。
[0061]
进一步地,步骤s104还可包括:利用激活函数,根据多个单头相关性序列和多头权重参数矩阵计算多头自注意力机制的相关性序列,其中,通过如下公式获得相关性序列:,其中,;表示单头相关性序列的纵向拼接,表示多头的个数,是多头自注意力机制,为多头权重参数矩阵。具体地,在多头自注意力机制下,要通过多头权重参数矩阵将多个单头相关性序列进行变换,最终通过激活函数输出相关性序列。
[0062]
然后,在步骤s105中,将每种相关性序列输入至池化层,得到用于表示每种相关性序列的初始向量。这样,在池化层中,选取meanpooling方法更容易得到用于表示正样本的相关性序列的初始向量,用于表示锚样本的相关性序列的初始向量,以及用于表示负样本的相关性序列的初始向量。
[0063]
参照图4,步骤s105可包括:在池化层,通过如下公式获得初始向量:,,其中,为基于的向量表示,代表相关性序列,为池化处理,为基于池化处理的初始向量,是作为嵌入序列的、基于bert模型的向量表示。
[0064]
接下来,在步骤s106中,将每种初始向量输入至线性层,通过调整每种初始向量的维度,得到对应的目标向量,其中,目标向量包括正样本的句向量、负样本的句向量以及锚样本的方面词向量。参照图4,通过微调的线性层对目标向量的维数进行转换,将其转移到更适合句子表示的维度。
[0065]
根据本公开的实施例,句向量模型的训练方法还可包括以下步骤。将锚样本的方面词向量缓存至方面词集合,正样本的句向量和负样本的句向量缓存至句向量集合,其中,通过如下公式获得方面词集合和/或句向量集合:,其中,为方面词集合和/或句向量集合,为权重参数矩阵,为目标向量,可以为目标向量包括正样本的句向量、负样本的句向量以及锚样本的方面词向量,是偏离向量。根据本公开的实施例,权重参数矩阵和偏离向量可以根据各种现有方法来确定,这里不再赘述。这样,将微调后的锚样本的词向量缓存为词向量集合,微调后的正样本和负样本的句向量缓存为句向量集合,以此来使句向量模型学习文本之间的语义差异性。
[0066]
最后,在步骤s107中,以最小化反映锚样本的方面词向量、正样本的句向量以及负样本的句向量的三元组损失函数为目标,对句向量模型进行训练。这样,利用triplet loss三元组损失函数来训练句向量模型,每个目标文本为正样本,对应的锚样本为正样本中的方面词,负样本则来自随机采样中的其他文本。通过最小化损失函数,来使句向量模型更容易区分差异性微小的不同文本语义。
[0067]
参照图4,步骤s107可包括:通过如下公式表示三元组损失函数:,其中,为正样本的句向量,为负样本的句向量,为锚样本的方面词向量,为大于0的常数,其中,当,时,为semi-hard triplet,句向量模型能够稍微理解数据对中的正样本和负样本,但无法做出明确的区分,需要对句向量模型的参数进行优化。当,时,为hard triplet,句向量模型错误理解数据对中的正样本与负样本,能够最快地对句向量模型的参数进行优化。当,时,为easy triplet,停止对句向量模型的参数进行优化。
[0068]
根据本公开的实施例的句向量模型的训练方法,针对情感语义数据集中的文本,首先对文本进行特有的自监督采集得到训练数据集,然后通过预训练模型,和深度学习中的注意力机制提取数据对中文本的句向量,进而实现对文本中方面词情感语义的增强。该方法降低了文本语义增强模型的复杂度,在提升多重方面词语义同时,减少了人工成本和时间成本。
[0069]
图5是示出根据本公开的实施例的文本语义增强的方法的流程图。参照图5,在步骤s501中,获取待进行文本语义增强的初始文本。具体地,初始文本为情感语义数据集中的文本。
[0070]
在步骤s502中,将初始文本输入至句向量模型,得到初始文本的初始句向量,其中,句向量模型通过上述的句向量模型的训练方法得到。
[0071]
在步骤s503中,计算初始句向量与句向量模型中的句向量集合中的每个句向量的相似度。具体地,采用曼哈顿距离计算相似度,计算公式为:,其中,为初始文本,为与句向量集合中的句向量对应的文本,x和y分别表示和所对应的句向量,表示绝对值,和分别表示向量中的第i个元素。
[0072]
在步骤s504中,随机选取一个相似度大于预设阈值的句向量,将选择的句向量对应的文本作为相似文本,并将选择的相似文本与初始文本进行拼接,得到文本语义增强的目标文本。具体地,相似度的预设阈值可以设置为0.7,但是本公开不限于此。例如,初始文本为“镜头口径小”,其方面词为“镜头口径”。将初始文本输入句向量模型,得到初始文本对应的初始句向量,通过曼哈顿距离计算初始句向量与句向量集合中的句向量的相似度,随机选取一个相似度大于预设阈值的句向量,句向量对应的相似文本为“且光滑的金属镜头滑盖易留下手指纹”,其方面词为“镜头滑盖”。将初始文本和相似文本进行拼接,最终得到一条文本语义增强后的目标文本:“镜头口径小, 且光滑的金属镜头滑盖易留下手指纹”。
[0073]
根据本公开的实施例的文本语义增强的方法,该方法通过将初始文本输入至句向量模型,根据句向量模型中存在的方面词集合进行无监督训练实现对文本语义的增强,降低了文本语义增强模型的复杂度,在提升多重方面词语义同时,减少了人工成本和时间成本。
[0074]
图6是示出根据本公开的句向量模型的训练装置的示意图。参照图6,本公开的示
例性实施例还提供了句向量模型的训练装置60,其中,句向量模型包括嵌入层、自注意力层、池化层和线性层,训练装置60包括:数据获取单元601、数据转换单元602、嵌入单元603、自注意力单元604、池化单元605、线性单元606和训练单元607。
[0075]
数据获取单元601可从预先构建的训练数据集获取预定数量的数据对,其中,每个数据对包括作为目标文本的正样本、作为随机文本的负样本以及作为目标文本的方面词的锚样本。数据转换单元602可基于输入文本数据集构建每个数据对中正样本的输入序列、负样本的输入序列以及锚样本的输入序列,并将正样本的输入序列、负样本输入的序列以及锚样本的输入序列转换为对应的token序列。嵌入单元603可将正样本的token序列、负样本的token序列以及锚样本的token序列分别输入至嵌入层,得到对应的嵌入序列。自注意力单元604可将每种嵌入序列输入至自注意力层,得到每种嵌入序列的相关性序列。池化单元605可将每种相关性序列输入至池化层,得到用于表示每种相关性序列的初始向量。线性单元606可将每种初始向量输入至线性层,通过调整每种初始向量的维度,得到对应的目标向量,其中,目标向量包括正样本的句向量、负样本的句向量以及锚样本的方面词向量。训练单元607可以以最小化反映锚样本的方面词向量、正样本的句向量以及负样本的句向量的三元组损失函数为目标,对句向量模型进行训练。
[0076]
本公开的实施例提供的句向量模型的训练装置能够实现方法实施例中句向量模型的训练方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0077]
图7是示出根据本公开的文本语义增强的装置的示意图。参照图7,本公开的示例性实施例还提供了文本语义增强的装置70,包括:文本获取单元701、句向量获取单元702、相似度确定单元703和拼接单元704。
[0078]
文本获取单元701可获取待进行文本语义增强的初始文本。句向量获取单元702可将初始文本输入至句向量模型,得到初始文本的初始句向量,其中,句向量模型通过上述的句向量模型的训练方法得到。相似度确定单元703可计算初始句向量与句向量模型中的句向量集合中的每个句向量的相似度。拼接单元704可随机选取一个相似度大于预设阈值的句向量,将选择的句向量对应的文本作为相似文本,并将选择的相似文本与初始文本进行拼接,得到文本语义增强的目标文本。
[0079]
本公开的实施例提供的文本语义增强的装置够实现方法实施例中文本语义增强的方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0080]
图8是示出根据本公开的电子设备的示意图。参照图8,电子设备80包括至少一个处理器801和至少一个存储器802,上述至少一个存储器802中存储有计算机可执行指令集合,当计算机可执行指令集合被至少一个处理器801执行时,执行根据本公开示例性实施例的句向量模型的训练方法或文本语义增强的方法。
[0081]
作为示例,电子设备80可以是pc计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,电子设备80并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备80还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
[0082]
在电子设备80中,处理器801可包括中央处理器(cpu)、图形处理器(gpu)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模
拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
[0083]
处理器801可运行存储在存储器802中的指令或代码,其中,存储器802还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。
[0084]
处理器801可与存储器802集成为一体,例如,将ram或闪存布置在集成电路微处理器等之内。此外,存储器802可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。处理器801和存储器802可在操作上进行耦合,或者可例如通过i/o端口、网络连接等互相通信,使得处理器801能够读取存储在存储器中的文件。
[0085]
此外,电子设备80还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备80的所有组件可经由总线和/或网络而彼此连接。
[0086]
根据本公开的实施例的句向量模型的训练方法或文本语义增强的方法可被编写为计算机程序并被存储在计算机可读存储介质上。当计算机程序被处理器执行时,可实现如上所述的句向量模型的训练方法或文本语义增强的方法。计算机可读存储介质的示例包括:只读存储器(rom)、随机存取可编程只读存储器(prom)、电可擦除可编程只读存储器(eeprom)、随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、闪存、非易失性存储器、cd-rom、cd-r、cd+r、cd-rw、cd+rw、dvd-rom、dvd-r、dvd+r、dvd-rw、dvd+rw、dvd-ram、bd-rom、bd-r、bd-r lth、bd-re、蓝光或光盘存储器、硬盘驱动器(hdd)、固态硬盘(ssd)、卡式存储器(诸如,多媒体卡、安全数字(sd)卡或极速数字(xd)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行计算机程序。在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
[0087]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0088]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

技术特征:
1.一种句向量模型的训练方法,其特征在于,所述句向量模型包括嵌入层、自注意力层、池化层和线性层,所述训练方法包括:从预先构建的训练数据集获取预定数量的数据对,其中,每个数据对包括代表目标文本的正样本、代表随机文本的负样本以及代表目标文本的方面词的锚样本;基于输入文本数据集构建每个数据对中正样本的输入序列、负样本的输入序列以及锚样本的输入序列,并将所述正样本的输入序列、所述负样本输入的序列以及所述锚样本的输入序列转换为对应的token序列;将正样本的token序列、负样本的token序列以及锚样本的token序列分别输入至嵌入层,得到对应的嵌入序列;将每种嵌入序列输入至自注意力层,得到每种嵌入序列的相关性序列;将每种相关性序列输入至池化层,得到用于表示每种相关性序列的初始向量;将每种初始向量输入至线性层,通过调整每种初始向量的维度,得到对应的目标向量,其中,所述目标向量包括正样本的句向量、负样本的句向量以及锚样本的方面词向量;以最小化反映所述锚样本的方面词向量、所述正样本的句向量以及所述负样本的句向量的三元组损失函数为目标,对所述句向量模型进行训练。2.根据权利要求1所述的训练方法,其特征在于,在从预先构建的训练数据集获取预定数量的数据对之前,所述训练方法还包括:获取情感分析数据集中的所有样本数据,并对所述样本数据进行清洗,其中,所述样本数据的特征包括文本、文本的实体序列以及文本的情感极性序列;去除清洗后的样本数据中特征错误的样本数据,并确定剩余的样本数据的实体序列和情感极性序列是否正确,将所述实体序列和所述情感极性序列均正确的样本数据归入目标样本数据集;根据目标样本数据集中的每个样本数据的情感极性序列中表示情感极性的序列所在的位置索引,确定每个样本数据的文本的方面词;针对所述目标样本数据集中的每个样本数据,执行以下步骤:以该样本数据的文本作为目标文本,从所述目标样本数据集中随机选取另一样本数据,并以选取的另一样本数据的文本作为随机文本;确定所述目标文本和所述随机文本分别对应的目标方面词和随机方面词;利用glove模型,基于所述目标方面词和所述随机方面词得到对应的目标词向量和随机词向量;将根据曼哈顿距离计算所述目标词向量和所述随机词向量的距离作为所述目标方面词和所述随机方面词的相似度;确定所述相似度是否小于或等于预设值;响应于所述相似度小于或等于所述预设值,以所述目标方面词作为锚样本,以所述目标文本作为正样本,以所述随机文本作为负样本,构建一个数据对,并将所述数据对归入所述训练数据集;响应于所述相似度大于所述预设值,重新从所述目标样本数据集中随机选取另一样本数据,将重新选取的另一样本数据的文本作为随机文本,并返回确定对应的目标方面词和随机方面词的步骤。
3.根据权利要求1所述的训练方法,其特征在于,所述将正样本的token序列、负样本的token序列以及锚样本的token序列分别输入至嵌入层,得到对应的嵌入序列,包括:在所述嵌入层,利用bert模型,基于所述正样本的token序列、所述负样本的token序列以及所述锚样本的token序列得到对应的正样本的嵌入序列、负样本的嵌入序列以及锚样本的嵌入序列,其中,通过如下公式获得所述嵌入序列:其中,bert()是所述bert模型,s是token序列,是作为所述嵌入序列的、基于所述bert模型的向量表示。4.根据权利要求1所述的训练方法,其特征在于,所述将所述每种嵌入序列输入至自注意力层,得到每种嵌入序列的相关性序列,包括:将所述每种嵌入序列输入至所述自注意力层,基于多组参数矩阵得到所述每种嵌入序列的多个单头相关性序列,其中,每组参数矩阵包括查询权重参数矩阵、键权重参数矩阵以及值权重参数矩阵单头相关性序列,其中,通过如下公式获得所述单头相关性序列:通过如下公式获得所述单头相关性序列:其中,为所述嵌入序列,表示单头相关性序列,为所述查询权重参数矩阵,为所述键权重参数矩阵,为所述值权重参数矩阵,为查询矩阵,为键矩阵,为值矩阵,为所述键矩阵的转置矩阵,表示所述查询权重参数矩阵的行数或列数;利用激活函数,根据所述多个单头相关性序列和多头权重参数矩阵计算多头自注意力机制的所述相关性序列,其中,通过如下公式获得所述相关性序列:其中,;表示所述单头相关性序列的纵向拼接,表示多头的个数,是多头自注意力机制,为多头权重参数矩阵。5.根据权利要求1所述的训练方法,其特征在于,所述将每种相关性序列输入至池化层,得到用于表示每种相关性序列的初始向量,包括:在所述池化层,通过如下公式获得所述初始向量:通过如下公式获得所述初始向量:其中,为基于的向量表示,代表所述相关性序列,为池化处理,为基于池化处理的所述初始向量,是作为所述嵌入序列的、基于bert模型的
向量表示。6.根据权利要求5所述的训练方法,其特征在于,所述训练方法还包括:将所述锚样本的方面词向量缓存至方面词集合,所述正样本的句向量和负样本的句向量缓存至句向量集合,其中,通过如下公式获得所述方面词集合和/或句向量集合:其中,为所述方面词集合和/或句向量集合,为权重参数矩阵,为所述目标向量,是偏离向量。7.根据权利要求1所述的方法,其特征在于,通过如下公式表示所述三元组损失函数:其中,为所述正样本的句向量,为所述负样本的句向量,为所述锚样本的方面词向量,为大于0的常数,其中,所述以最小化反映所述锚样本的方面词向量、所述正样本的句向量以及所述负样本的句向量的三元组损失函数为目标,对所述句向量模型进行训练,包括:当,时,对所述句向量模型的参数进行优化;当,时,对所述句向量模型的参数进行优化;当,时,停止对所述句向量模型的参数进行优化。8.一种文本语义增强的方法,其特征在于,包括:获取待进行文本语义增强的初始文本;将所述初始文本输入至句向量模型,得到所述初始文本的初始句向量,其中,所述句向量模型通过如权利要求1至7中任一项所述的句向量模型的训练方法得到;计算所述初始句向量与所述句向量模型中的句向量集合中的每个句向量的相似度;随机选取一个相似度大于预设阈值的句向量,将选择的句向量对应的文本作为相似文本,并将选择的相似文本与所述初始文本进行拼接,得到文本语义增强的目标文本。9.一种句向量模型的训练装置,其特征在于,所述句向量模型包括嵌入层、自注意力层、池化层和线性层,所述训练装置包括:数据获取单元,被配置为从预先构建的训练数据集获取预定数量的数据对,其中,每个数据对包括作为目标文本的正样本、作为随机文本的负样本以及作为目标文本的方面词的锚样本;数据转换单元,被配置为基于输入文本数据集构建每个数据对中正样本的输入序列、负样本的输入序列以及锚样本的输入序列,并将所述正样本的输入序列、所述负样本输入的序列以及所述锚样本的输入序列转换为对应的token序列;嵌入单元,被配置为将正样本的token序列、负样本的token序列以及锚样本的token序列分别输入至嵌入层,得到对应的嵌入序列;自注意力单元,被配置为将每种嵌入序列输入至自注意力层,得到每种嵌入序列的相关性序列;
池化单元,被配置为将每种相关性序列输入至池化层,得到用于表示每种相关性序列的初始向量;线性单元,被配置为将每种初始向量输入至线性层,通过调整每种初始向量的维度,得到对应的目标向量,其中,所述目标向量包括正样本的句向量、负样本的句向量以及锚样本的方面词向量;训练单元,被配置为以最小化反映所述锚样本的方面词向量、所述正样本的句向量以及所述负样本的句向量的三元组损失函数为目标,对所述句向量模型进行训练。10.一种文本语义增强的装置,其特征在于,包括:文本获取单元,被配置为获取待进行文本语义增强的初始文本;句向量获取单元,被配置为将所述初始文本输入至句向量模型,得到所述初始文本的初始句向量,其中,所述句向量模型通过如权利要求1至7中任一项所述的句向量模型的训练方法得到;相似度确定单元,被配置为计算所述初始句向量与所述句向量模型中的句向量集合中的每个句向量的相似度;拼接单元,被配置为随机选取一个相似度大于预设阈值的句向量,将选择的句向量对应的文本作为相似文本,并将选择的相似文本与所述初始文本进行拼接,得到文本语义增强的目标文本。11.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现如权利要求1至7中任意一项所述的句向量模型的训练方法或实现如权利要求8所述的文本语义增强的方法。12.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器执行时,实现如权利要求1至7中任意一项所述的句向量模型的训练方法或实现如权利要求8所述的文本语义增强的方法。

技术总结
本公开提供了一种句向量模型的训练方法、文本语义增强的方法及装置,其中训练方法包括:从预先构建的训练数据集获取预定数量的数据对;构建数据对中的输入序列,并将输入序列转换为对应的token序列;将token序列分别输入至嵌入层,得到对应的嵌入序列;将每种嵌入序列输入至自注意力层,得到每种嵌入序列的相关性序列;将每种相关性序列输入至池化层,得到用于表示每种相关性序列的初始向量;将每种初始向量输入至线性层,得到对应的目标向量;以最小化反映锚样本的方面词向量、正样本的句向量以及负样本的句向量的三元组损失函数为目标,对句向量模型进行训练。该过程降低了文本语义增强模型的复杂度,减少了人工成本和时间成本。成本。成本。


技术研发人员:朱权 郑重 王潇茵 杜婉茹 丁醒醒 李瑞群 孙鹏程
受保护的技术使用者:航天宏康智能科技(北京)有限公司
技术研发日:2023.07.07
技术公布日:2023/8/13
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐