文章目录2.3、基于NCF的交互学习 2.4、模型优化3、实验效果4、代码解析
这篇文章主要分享的论文是2018年被CCF收录的一篇论文: Group (基于注意力机制的群组推荐) , 第一作者是湖南大学的曹达老师 , 二作是论文的作者何老师 。当然也会结合小编的工作来进行一些补充说明 , 写的不好 , 欢迎拍砖!
这篇文章结合了注意力机制和NCF框架 , 使得在群组推荐中有良好的效果 。
关于可以参考:点击阅读
关于注意力的解释可以参考:点击阅读
1、聊一聊群组推荐
群组推荐在工业推荐系统中应用十分广泛 , 其主要作用在新老用户上 。
对于新用户来讲 , 则是冷启动 , 常规的冷启动解决办法是 , 根据新用户的注册信息(性别、地域等 , 这个一般和产品设计进行结合)找到其所属的群组 , 将群组下的Top信息返回推荐给当前来访的新用户 。
对于老用户来讲 , 可以作为一路召回使用 。比如对所有用户进行群组划分 , 再统计群组下的Top内容作为群组下用户的一路召回内容 。当然也可以按照某种属性进行群组划分 。
所以群组推荐的实际应用中是很广泛和有效的 , 上面举的例子只是冰山一角 , 实际中要比这个复杂和广泛 。但往往我们在得到群组下Top内容的时候采用的方法简单粗暴 , 这一点论文中也提到了群组推荐中的一个基本问题是如何汇总小组成员的偏好以推断小组的决定 , 因为群组中不同的成员扮演的角色是不一样的 , 常见的计算方法有:
但是 , 这些预定义的策略和数据无关 , 因为这些策略很难灵活的捕获群组成员的动态权重 。因此提出了self-+ NCF的思路 , 即 Group (AGREE) 。
AGREE的主要贡献点有:
2、模型介绍
AGREE模型包含两部:
2.1、符号表示含义和要解决的问题
符号表示的规则
如果未特别说明 , 所有的向量都是列向量 。
下图说明了群组推荐任务中输入数据形态:
论文中给出的群组推荐问题定义的是:对于给定的群组 , 输出为该群组推荐的 Top-K物品 。
整个模型训练的
2.2、基于注意力的群组表征学习
论文建议基于表征学习解决群组推荐问题 , 在该框架下 , 每个实体都被表示为一个向量 , 该向量对实体的固有属性(eg:单词的语义 , 用户的兴趣等)进行编码 , 且可以从数据中学习 。物品推荐中一个众所周知的矩阵分解方法就是一个表征学习模型 , 该模型将用户和物品通过嵌入向量联系起来 。
u i u_i ui?表示用户向量 , v j v_j vj?表示物品向量 , 我们的目标是通过群组成员的兴趣偏好为每个群组学习到一个向量 , 要从数据中动态学习聚合策略 , 可以将群组向量定义成依赖用户和物品的向量 , 抽象表示为:
g l ( j ) = f a ( v j , { u t } ) g_l(j) = f_a(v_j, \{u_t\}) gl?(j)=fa?(vj?,{ut?})
u t u_t ut? 表示l l l群组中的用户 。g l ( j ) g_l(j) gl?(j)表示群组 g l g_l gl?对物品 v j v_j vj?的偏好向量 。在AGREE模型中 , g l ( j ) g_l(j) gl?(j)包括两部分:用户向量聚合和群组偏好向量 。形式化表示为:
g l ( j ) = ∑ u t ∈ g l a ( j , t ) u t + q l g_l(j) = \sum_{u_t \in g_l } a(j,t)u_t + q_l gl?(j)=ut?∈gl?∑?a(j,t)ut?+ql?
上面公式中加号左侧为用户向量 , 加号右侧为群组偏好向量 。
- chatGPT润色中英论文软件-文章修改润色器
- 26个数据分析案例——第五站:基于Scrapy的架构的数据采集
- 基于微信小程序的校园外卖点餐系统平台的设计和实现
- 【无人机】基于拓展卡尔曼滤波时序四旋翼无人机状态跟踪附matlab代码
- 基于树莓派的智慧教室管理系统
- 基于51单片机实现时间显示及闹钟设置
- 基于STM32按键的防抖和松开处理:状态机
- 冲上热搜!上海大三学生用一个“猪鼻子”圈住了两篇SCI论文 上海吉尼斯记录戳鼻孔
- 【论文笔记】CHI '16 Embracing Error to Enable
- Python 基于网络爬虫的商品询价系统的设计与实现