(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210889993.7
(22)申请日 2022.07.27
(71)申请人 闽江学院
地址 350000 福建省福州市闽侯县上街 镇
溪源宫路200号
(72)发明人 林耿 陈颖婷
(74)专利代理 机构 福州市鼓楼区京华专利事务
所(普通合伙) 35212
专利代理师 王美花
(51)Int.Cl.
G06F 16/9535(2019.01)
G06F 40/289(2020.01)
G06F 40/30(2020.01)
G06N 3/04(2006.01)
G06N 3/08(2006.01)
(54)发明名称
一种基于多头自注意力机制的在线问答社
区专家推荐方法
(57)摘要
本发明公开了一种基于多头自注意力机制
的在线问答社区专家推荐 方法, 涉及智能推荐技
术领域。 本发明提出的方法, 核心在于构建的问
题编码器和用户编码器, 问题编码器由卷积神经
网络和注 意力机制组成, 用于处理目标问题和用
户历史回答问题, 提取问题特征; 用户编码器则
是利用多头自注意力机制学习用户历史回答序
列中隐含的动态兴趣特征, 再结合用户的静态兴
趣特征, 获取用户的综合特征; 最后, 将输 出的目
标问题特征和用户综合特征进行相似性计算产
生推荐结果, 为平台提供准确、 个性、 实时的推荐
服务, 提高问题解 答率。
权利要求书3页 说明书9页 附图5页
CN 115408603 A
2022.11.29
CN 115408603 A
1.一种基于多头自注意力 机制的在线问答社区专家推荐方法, 其特征在于, 包括: 问题
编码器构建过程、 用户编 码器构建过程、 预测器构建过程、 深度学习模型训练过程以及预测
过程;
所述问题编码器构建过程包括: 对问题进行特征编码, 提取问题标题和问题主题中的
信息作为问题标签, 将其与专家用户的兴趣标签进行匹配; 将数据集中的所有问题记录进
行训练, 构造出问题编码器;
所述用户编码器构建过程包括: 对用户的历史回答问题序列和用户关注主题进行特征
编码; 利用多头自注意力机制从历史回答问题序列中提取用户的动态兴趣特征信息, 再从
用户关注主题中提取用户的静态兴趣特征信息, 将用户的动态兴趣表示向量和静态兴趣表
示向量进行拼接, 获取用户的综合表示向量;
所述预测器构建过程包括: 对给定的问题和邀请用户, 通过计算目标问题的表示向量
和邀请用户的综合表示向量的相似度, 判断当前用户是否会接受该问题的邀请;
所述深度学习模型训练过程包括: 采集问答社区的训练数据, 通过用户 ‑问题的邀请记
录结合用户画像和用户回答记录以及问题的描述信息构建训练样本, 样本标签标注为0或
1, 将专家识别问题转 化为分类问题; 利用训练样本对 模型进行训练, 获得训练后的模型;
所述预测过程包括: 对给定的问题和邀请用户, 通过训练后的模型计算目标问题的表
示向量和邀请用户的表示向量的相似度, 判断当前用户是否会接受该问题的邀请, 从而产
生专家推荐结果。
2.根据权利要求1所述的方法, 其特 征在于: 所述问题编码器构建过程具体包括:
步骤A1、 通过嵌入层, 对问题的标题分词, 并进行词嵌入表示, 将其转换为隐含语义空
间的词向量表示;
假设问题标题w中的词为 w=[w1,w2,...wl], l代表w的长度, 转 化后的词向量表示 为:
W=embedding(w)=[W1,W2,…,Wl]
步骤A2、 利用CN N捕捉局部语义信息学习上 下文词的表示;
假设隐含上 下文词表示的标题词向量记为ci, 其计算公式为:
ci=relu(C ×W[i‑M,i+M]+b)
其中, 非线性激活函数relu( ·)的公式为relu(x)=max(0,x), W[i‑M,i+M]指位于i‑M和i+
M间的词嵌入连接, C和b是 卷积神经网络的滤波器参数, M为1;
步骤A3、 通过注意力机制来分配标题词的权 重;
假设第i个词的注意力权 重为ai, 其计算公式为:
αi=tanh(v ×ci+vb)
其中, tanh( ·)函数公式为
ai是注意力机制产生的中间变量, v和vb
是可训练参数;
问题标题的表征向量是由CNN所得的上下文词表示, 经由注意力权重加权所得的, 其计
算公式为权 利 要 求 书 1/3 页
2
CN 115408603 A
2步骤A4、 对问题所属主题进行分词, 并进行词嵌入表示, 将其转换为隐含语义空间的词
向量表示;
假设问题主题 t中的词为t=[t1,t2,...tl], l代表t的长度, 转 化后的词向量表示 为:
T=embed ding(t)=[T1,T2,…,Tl]
步骤A5、 对一个问题所属主题的词向量进行全局平均池化, 获取平均词向量et来表示该
问题的主题信息, 其计算公式为:
et=VGAPT
步骤A6、 对每个问题, 执行上述步骤, 产生该问题的标题和所属主题的向量表示, 再通
过向量拼接产生 最终的问题向量表示e, 如下式:
e=[ew,et]。
3.根据权利要求1所述的方法, 其特 征在于: 所述用户编码器构建过程具体包括:
步骤B1、 挖掘用户的历史回答问题序列信 息, 先将历史回答问题按时间先后排列; 再利
用上一节的问题编码器对序列中的每个问题进行 处理, 获取它们的问题向量表 示; 最后, 得
到序列E=[e1,e2,...,eL]T, L为序列长度;
步骤B2、 多头自注意力机制通过加入位置向量P=[p(pos,0), p(pos,1), ..., p(pos,2i),
p(pos,2i+1)]T表示给序列中的问题表示向量添加时序信息, 得到序列E'=[e ′1,e'2,...,e'L]T,
其计算公式为:
E'=E+P
其中, pos是问题在序列中的位置, 取值 范围是[0,L],
dmodel即位置
向量维度;
步骤B3、 把序列E'输入多头自注意力机制网络结构来捕捉用户的动态兴趣变化, 得到
新的序列Z=[z1,z2,...,zL]T, 每一个输出元素zi都是输入 元素ei经过多头自注意力机制学
习到的用户动态兴趣表示向量ud;
步骤B4、 通过用户关注的主题学习用户的长期兴趣表示向量;
从用户信息中提取用户关注主题d=[d1,d2,...,dJ], J表示关注的主题数量, 先获取词
嵌入表示, 再进行全局平均池化, 得到用户的静态兴趣表示向量us, 其计算公式为:
步骤B5、 将用户的短期动态兴趣表示向量和长期静态兴趣表示向量进行拼接, 获取用
户的综合表示向量, 如下式:
us+d=[us,ud]。
4.根据权利要求3所述的方法, 其特征在于, 所述步骤B3中, 多头自注意力机制网络包
括多头自注意力网络层、 第一残差连接和层标准化操作层, 前馈神经网络层、 第二残差连接
和层标准化操作层以及全局平均池化层; 所述多头 自注意力网络层包括h个并行计算的自权 利 要 求 书 2/3 页
3
CN 115408603 A
3
专利 一种基于多头自注意力机制的在线问答社区专家推荐方法
文档预览
中文文档
18 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共18页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-03-03 12:14:26上传分享