一种基于隐关键词的文本匹配方法组成比例

技术编号:31583762 阅读:61 留言:0更新日期:2021-12-25 11:28
本发明专利技术公开了一种基于隐关键词的文本匹配方法,基于的模型包括词向量和句子编码器,方法包括以下步骤:S1、输入为x和x

【技术实现步骤摘要】
一种基于隐关键词的文本匹配方法


[0001]本专利技术涉及人工智能领域,尤其是涉及一种基于隐关键词的文本匹配方法。

技术介绍

[0002]文本匹配是一个重要的人工智能任务,大量的业务场景需要通过对于语义建模实现准确高效的文本匹配。例如智能搜索、商品推荐,对话系统、智能客服、问答系统、翻译系统等都需要利用文本匹配实现其核心功能。传统的文本匹配系统依赖于双塔结构(dual encoder)来计算两端文本之间的相关性,但是因为双塔结构完全依赖于单个向量来表达一句话的语义,因此匹配的误报率往往偏高,影响在实际产品中的性能。

技术实现思路

[0003]本专利技术主要是提供一种准确度较高的基于隐关键词的文本匹配方法。
[0004]本专利技术针对上述技术问题主要是通过下述技术方案得以解决的:一种基于隐关键词的文本匹配方法,基于的模型包括词向量矩阵E和句子编码器F,方法包括以下步骤:
[0005]S1、输入为第一文本x和第二文本y,用词向量矩阵E对x和y进行转换得到第一词向量e
x
=E(x)和第二词向量e
y
=E(y);
[0006]S2、把第一词向量e
x
和第二词向量e
y
分别输入句子编码器F进行编码,得到第一编码向量集和第二编码向量集,第一编码向量集中的每个编码向量与第一文本中的每个词对应,第二编码向量集中的每个编码向量与第二文本中的每个词对应;
[0007]S3、根据第一编码向量集中的每个编码向量计算所对应的词属于关键词的概率;根据第二编码向量集中的每个编码向量计算所对应的词属于关键词的概率;
[0008]S4、从第一文本中采样得到第一关键词,根据第一文本中每个词属于关键词的概率计算每个词的关键词的概率预期值,第一文本中所有词的关键词的概率预期值构成第一文本的关键词向量;同样方法得到第二文本的关键词向量;
[0009]S5、将第一编码向量集和第一文本的关键词向量进行拼接得到第一文本的最终向量,将第二编码向量集和第二文本的关键词向量进行拼接得到第二文本的最终向量,依据第一文本的最终向量和第二文本的最终向量通过余弦夹角计算两个文本的匹配度,如果匹配度大于阈值则认为第一文本和第二文本匹配。
[0010]作为优选,词向量矩阵E是V
×
D的矩阵,V是词表的大小,D是词向量的大小。
[0011]作为优选,句子编码器F为LSTM模型或者Transformer模型。
[0012]作为优选,步骤S4中,计算第一文本中每个词属于关键词的概率p(w
i
|x)通过如下公式计算得到:
[0013][0014]式中,w
i
表示第i个词,x为关键词,K为句子所包含的词数,e是自然常数,h
i
是句子
编码器针对第i个词输出的编码向量,T是矩阵转置操作,W是第i个词的词向量。同理,计算第二文本中每个词属于关键词的概率p(w
i
|y)也通过同样方式得到。
[0015]作为优选,基于隐关键词的文本匹配方法还包括模型训练过程,模型训练过程具体为:
[0016]采集一个人工标注的数据集,包含人工配对好的相关句子x
i
和y
i
;人工标注的数据作为正样本,而同一个批量中其他句子作为负样本;用交叉熵作为损失函数并且配合SGD对模型进行优化:
[0017][0018]式中,g
i
是第i个样本(包括正样本和负样本)的匹配度,g*表示所有正样本的匹配度平均值,B是所采集的数据集中的文本数量。
[0019]作为优选,所述训练过程中,采用mini

batch的方法进行训练,每次处理一个小批量的数据,数据通过gumbel softmax的方式采样得到。
[0020]本专利技术带来的实质性效果是,提出了一种新颖的神经网络语义匹配架构,可以让文本匹配变得更加精准,并且不需要额外的人工标注。
附图说明
[0021]图1是本专利技术的一种流程图。
具体实施方式
[0022]下面通过实施例,并结合附图,对本专利技术的技术方案作进一步具体的说明。
[0023]实施例:本方案的模型包括:
[0024]1.词向量E:词向量矩阵是一个V
×
D的矩阵,其中V是词表的大小而D是词向量的大小;
[0025]2.句子编码器F:利用LSTM或者Transformer等模型,对于一个句子进行编码,输出关于每一个词的编码向量h
i

[0026]3.关键词注意力机制:针对每一个编码向量h
i
,我们利用MLP W计算每一个词属于关键词的未归一化概率。具体来说我们通过softmax和W来计算如下概率
[0027][0028]其中K是句子的长度。
[0029]根据上述三个模块,我们通过如下步骤计算两句话的匹配度(图1):
[0030]输入为x和x

,我们首先用词向量将x和y转换为一系列的向量e
x
=E(x)和e
y
=E(x

);
[0031]把词向量e输入句子编码器,得到包含上下文信息的向量h。
[0032]根据h和上述公式计算每个词属于关键词的概率。
[0033]1.下面会有两种模式:随机模式和确定模式
[0034]2.随机模式:根据p(w
i
|x)的概率,我们通过采样的方式选择n个关键词,为了后续让这个步骤可以被训练,我们采用gumbel softmax的方式进行采样,得到单词z,我们在此从E中获取z的词向量获得输出f
z

[0035]3.确定模式:我们直接利用p(w
i
|x)计算关键词的概率预期值,作为输出向量f
z

[0036]得到f
z
后,文本的最终向量表达为f=[pooling(h),f
z
],也就是F的输出和关键词的向量拼接。
[0037]最后,两个文本的匹配度可通过余弦夹角获得:
[0038]s=cosine

similarity(f
x
,f
y
)
[0039]我们根据如下步骤训练上述模型。首先,我们需要采集一个人工标注的数据集,也就是有人工配对好的相关句子x
i
,y
i
,i∈S,其中x
i
和y
i
是相关的句子。在训练的过程中,我们会用mini

batch的方法进行训练,也就是每次我们处理一个小批量的数据。我们将人工标注的数据作为正样本,而同一个批量中其他句子作为负样本。此外,在训练模式下我们会采用随机模式对于z进行采样。我们用交叉熵作为损失函数并且本文档来自技高网
...

【技术保护点】

【技术特征摘要】
softmax的方式采...

【专利技术属性】
技术研发人员:赵天成
申请(专利权)人:宏龙科技杭州有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1