DGCF
CF演化,从单一的用户-物品交互演化到使用整个交互图来学习表示。这些方法都是uniform方法,忽略了用户采取物品时意图的多样性。本文提出DGCF,分离意图因素,产生解耦表示。
DGCF,在用户意图上解耦用户和物品的表示。
学习分布 A ( u , i ) = ( A 1 ( u , i ) , . . . , A K ( u , i ) ) A(u,i)=(A_1(u,i),...,A_K(u,i)) A(u,i)=(A1(u,i),...,AK(u,i))
A K ( u , i ) A_K(u,i) AK(u,i) 表示用户u采取物品i,在第K个意图上的置信度。
每个用户的表示为:
e u = ( e 1 u , e 2 u , . . . , e K u ) e_u=(e_{1u},e_{2u},...,e_{Ku}) eu=(e1u,e2u,...,eKu)
e k u e_{ku} eku是用户u在第k个意图的表示
先前工作不足,只采用一个用户-物品交互图或者一个同质的评分图来表现用户和物品的关系。
定义了K个分数矩阵, S ( u , i ) = [ S 1 ( u , i ) , S 2 ( u , i ) , . . . , S K ( u , i ) ] S(u,i)=[ S_1(u,i),S_2(u,i),...,S_K(u,i) ] S(u,i)=[S1(u,i),S2(u,i),...,SK(u,i)],初始化都为1。 S k ( u , i ) S_k(u,i) Sk(u,i) 定义用户u和物品i在意图k上之间的交互。初始化都为1,假设建模开始时意图的相同贡献相同。
相当于把之前单个的邻接矩阵A,分成了K个意图分数矩阵S。
三个问题,常见格式
参数设置:64、Adam、Xarvier、迭代2次、网格搜索{学习率、L2正则化系数}