[发明专利]一种考虑用户评价的资源或服务推荐方法有效
申请号: | 201910321968.7 | 申请日: | 2019-04-22 |
公开(公告)号: | CN110069756B | 公开(公告)日: | 2023-07-21 |
发明(设计)人: | 李建强;赵亮;赵青 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06N3/0455 | 分类号: | G06N3/0455;G06N3/0464;G06N3/045;G06N3/08;G06F16/9535 |
代理公司: | 北京思海天达知识产权代理有限公司 11203 | 代理人: | 刘萍 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 考虑 用户 评价 资源 服务 推荐 方法 | ||
1.一种考虑用户评价的资源或服务推荐方法,包括四个模块:用户特征编码模块(1)、资源或服务编码模块(2)、Encoder端(3)、Decoder端(4);
(1)用户特征编码模块:
该模块将用户特征语句通过分词之后进行多层次编码,其中word-embedding使用word2vec中的Skip-Gram形式,position-embedding使用cos、sin函数得到位置编码,将两种编码方式按位相加得到用户特征向量;
(2)资源或服务编码模块:
该模块将用户特征语句所对应的资源或服务数据进行多层次编码,其中onehot-embedding编码将该用户所使用的所有资源或服务信息设置为1其他设置为0,QOE-embedding使用softmax得到当前资源或服务向量的重要性程度概率、QOS-embedding使用softmax得到当前资源或服务向量的重要性程度概率,将三种编码方式按位相乘得到最终资源或服务的输入向量;
(3)Encoder端:
该模块将用户特征向量作为输入,得到中间的隐藏向量;Encoder节点的结构为Encoder Mulit-Head Self-Attention层、全连接层,在每一层均使用了残差结构;Encoder端为相同的若干个Encoder节点串行组成;
(4)Decoder端:
该模块将资源或服务向量与Encoder端的中间隐藏向量作为输入,得到最终得到输出向量通过softmax得到推荐结果;Decoder节点的结构为Decoder Mulit-Head Self-Attention层、Encoder-Decoder Self-Attention层、全连接层,在每一层均使用了残差结构;Decoder端为相同的若干个Decoder节点串行组成;
步骤(4),具体如下:
该模块以资源或服务的输入向量与Encoder端的输出向量为输入,输出最终的隐层向量得到最后的推荐结果;Decoder端由numDecoder个Decoder节点,设置为6;Decoder节点的结构为Decoder Mulit-Head Self-Attention层、Encoder-Decoder Self-Attention层、全连接层,在每一层均使用了残差结构;在Decoder Mulit-Head Self-Attention层中共由numAttention个注意力矩阵组成,其设置为6;将资源或服务输入向量按位分割为6个短向量,将每个短向量输入对应的注意力矩阵中得到所对应的短注意向量,将6个短注意力向量拼接在一起通过残差网络得到该节点的最终注意力向量;将注意力向量通过具有残差网络的全连接层得到该节点的输出向量;对于前一个Decoder节点的输出向量作为输入向量输入到后一个Decoder节点;最后的一个Decoder节点的输出向量作为最终的输出向量,通过softmax层得到最终分类向量,将分类向量中数值最大的前K个资源或服务作为该用户的推荐资源或服务,K设置为6;
Decoder Mulit-Head Self-Attention层的具体公式如下所示:
其中Yembeddingj为在Decoder端的第j个分割之后的短向量,j为Decoder端短向量序号与对应的注意力矩阵序号;
在公式(11)中,为在Dncoder节点中的Key矩阵,为得到的在Dncoder节点key向量;
在公式(12)中,为在Dncoder节点Query矩阵,为得到的在Dncoder节点query向量;
在公式(13)中,为在Dncoder节点Value矩阵,为得到的在Dncoder节点value向量;
在公式(14)中,为在Dncoder节点的第j个注意力矩阵得到注意力短向量,将所有的注意力短向量拼接起来得到该节点的最终注意力向量AttentionD;
在公式(15)中,将得到的最终注意力向量AttentionD与输入向量Yembedding按位相加得到该层的输出向量
Encoder-Decoder Self-Attention层的具体公式如下所示:
在公式(16)中,为该层权重矩阵,by为该层偏置,为上一层的最终注意力向量输出向量,Xout为Encoder节点的输出向量,YED为该层的输出向量;
全连接层的具体公式如下所示:
在公式(17)中,为该层的权重矩阵,YED为上一层的输出向量,by为该层的偏置,Yout为该层的输出向量;
每一个Decoder节点的输出向量作为下一个Decoder节点的输入向量,最后一个的Decoder节点的输出向量Youtfinally为最终的输出向量;将最终的输出向量Youtfinally做softmax操作,将分类向量中数值最大的前K个资源或服务作为该用户的推荐资源或服务,K设置为6;
在Decoder端中的所有矩阵与偏置采用截断的高斯分布做初始化,当参数收敛或者达到最大迭代次数50次时结束训练;在Decoder端中所有的向量长度均设置为500;最终的输出向量长度为资源或服务数据个数的长度,设置为2000。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910321968.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:数据发送的方法、装置、计算机设备和存储介质
- 下一篇:特效字编辑方法及设备