LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation - 阅读笔记

LightGCN是NGCF的改良,小博对于NGCF在之前的文章中有简明介绍,如想阅读可点击链接

论文链接:LightGCN | Proceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval

代码链接:https://github.com/kuandeng/LightGCN

                  https://github.com/gusye1234/pytorch- light- gcn

LightGCN核心要点

LightGCN也是使用GCN来辅助协同过滤,但是其只保留了GCN中的邻居聚合部分。

验证猜想

LightGCN的作者在NGCF的基础上认为其使用的方法中,其特征转换部分的转换矩阵W_{1}W_{2}作为超参来进行训练以及其非线性激活函数的使用对于协同过滤没有什么益处。在GCN中使用这两部分是因为其每一个节点都有丰富的语义特征作为输入,但是在用户项目交互图中,每一个节点仅代表一个ID,没有什么别的作用。所以作者将其去掉来验证猜想。

如上图所示(来自论文原文),   NGCF-f代表除去了线性转换矩阵W_{1} and W_{2}.

                        NGCF-n,代表除去了非线性激活函数 .

                        NGCF-fn代表将其二者都去掉

从结果来看去掉这两部分对于NGCF来说负担更小甚至还可以提高模型能力,因此来验证作者所述的有效性。

LightGCN方法详解

LightGCN结构如上图所示(来自原文)。

1  Light Graph Convolution (LGC)

对比于之前的NGCF的聚合公式

LightGCN则直接省去了非线性激活函数和特征转换矩阵,其聚合公式为

值得注意的是,在其提出的聚合公式中,仅聚合了邻居传来的信息而非NGCF不仅聚合了邻居传来的信息还聚合了自己本身的信息(具体解释在下一小部分给出)

3.1.2 Layer Combination and Model Prediction

在LightGCN中,只需给定每个节点的特征,而后便得:

通过上述所介绍公式,在传播中便可以通过聚合得到每一层每一个节点的特征而无需线性变换和非线性激活函数的作用,

对于各个层直接特征的聚合,作者直接使用如下公式:

即对于每个节点,其每一层的特征编码都配了一个超参α,其可以作为一个超参在训练中获得最优取值。但是值得注意的是,作者声明因为其实践中直接将其定位1/(1+K)便可得到好的效果,所以其便将α都设为1/(1+K)。而对不同层的特征编码加权求和和NGCF中在传播时加入自己的自连接信息有异曲同工之妙,所以在LightGCN的传播过程中舍去了自连接部分。

对于模型的预测则还是使用点积来预测,具体如下所示:

至此LightGCN本质上已经结束,后续会介绍一下模型的矩阵形式。

3.1.3 Matrix Form.

此部分介绍模型的矩阵表示形式。

我们可以得到用户-商品交互矩阵如下:

其中T为嵌入维度大小,本模型提出的LGC等式如下:

则最后的用于预测的嵌入矩阵为:

其中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

forever0827

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值