数学基础
- 线性代数
- 概率论与随机过程
- 数值计算
- 蒙特卡洛方法与 MCMC 采样
- 机器学习方法概论
统计学习
深度学习
- 深度学习简介
- 深度前馈网络
- 反向传播算法
- 正则化
- 深度学习中的最优化问题
- 卷积神经网络
- CNN:图像分类
- 循环神经网络 RNN
- Transformer
- 一、Transformer [2017]
- 二、Universal Transformer [2018]
- 三、Transformer-XL [2019]
- 四、GPT1 [2018]
- 五、GPT2 [2019]
- 六、GPT3 [2020]
- 七、OPT [2022]
- 八、BERT [2018]
- 九、XLNet [2019]
- 十、RoBERTa [2019]
- 十一、ERNIE 1.0 [2019]
- 十二、ERNIE 2.0 [2019]
- 十三、ERNIE 3.0 [2021]
- 十四、ERNIE-Huawei [2019]
- 十五、MT-DNN [2019]
- 十六、BART [2019]
- 十七、mBART [2020]
- 十八、SpanBERT [2019]
- 十九、ALBERT [2019]
- 二十、UniLM [2019]
- 二十一、MASS [2019]
- 二十二、MacBERT [2019]
- 二十三、Fine-Tuning Language Models from Human Preferences [2019]
- 二十四 Learning to summarize from human feedback [2020]
- 二十五、InstructGPT [2022]
- 二十六、T5 [2020]
- 二十七、mT5 [2020]
- 二十八、ExT5 [2021]
- 二十九、Muppet [2021]
- 三十、Self-Attention with Relative Position Representations [2018]
- 三十一、USE [2018]
- 三十二、Sentence-BERT [2019]
- 三十三、SimCSE [2021]
- 三十四、BERT-Flow [2020]
- 三十五、BERT-Whitening [2021]
- 三十六、Comparing the Geometry of BERT, ELMo, and GPT-2 Embeddings [2019]
- 三十七、CERT [2020]
- 三十八、DeCLUTR [2020]
- 三十九、CLEAR [2020]
- 四十、ConSERT [2021]
- 四十一、Sentence-T5 [2021]
- 四十二、ULMFiT [2018]
- 四十三、Scaling Laws for Neural Language Models [2020]
- 四十四、Chinchilla [2022]
- 四十七、GLM-130B [2022]
- 四十八、GPT-NeoX-20B [2022]
- 四十九、Bloom [2022]
- 五十、PaLM [2022] (粗读)
- 五十一、PaLM2 [2023](粗读)
- 五十二、Self-Instruct [2022]
- 句子向量
- 词向量
- 传统CTR 预估模型
- CTR 预估模型
- 一、DSSM [2013]
- 二、FNN [2016]
- 三、PNN [2016]
- 四、DeepCrossing [2016]
- 五、Wide 和 Deep [2016]
- 六、DCN [2017]
- 七、DeepFM [2017]
- 八、NFM [2017]
- 九、AFM [2017]
- 十、xDeepFM [2018]
- 十一、ESMM [2018]
- 十二、DIN [2017]
- 十三、DIEN [2019]
- 十四、DSIN [2019]
- 十五、DICM [2017]
- 十六、DeepMCP [2019]
- 十七、MIMN [2019]
- 十八、DMR [2020]
- 十九、MiNet [2020]
- 二十、DSTN [2019]
- 二十一、BST [2019]
- 二十二、SIM [2020]
- 二十三、ESM2 [2019]
- 二十四、MV-DNN [2015]
- 二十五、CAN [2020]
- 二十六、AutoInt [2018]
- 二十七、Fi-GNN [2019]
- 二十八、FwFM [2018]
- 二十九、FM2 [2021]
- 三十、FiBiNET [2019]
- 三十一、AutoFIS [2020]
- 三十三、AFN [2020]
- 三十四、FGCNN [2019]
- 三十五、AutoCross [2019]
- 三十六、InterHAt [2020]
- 三十七、xDeepInt [2023]
- 三十九、AutoDis [2021]
- 四十、MDE [2020]
- 四十一、NIS [2020]
- 四十二、AutoEmb [2020]
- 四十三、AutoDim [2021]
- 四十四、PEP [2021]
- 四十五、DeepLight [2021]
- 图的表达
- 一、DeepWalk [2014]
- 二、LINE [2015]
- 三、GraRep [2015]
- 四、TADW [2015]
- 五、DNGR [2016]
- 六、Node2Vec [2016]
- 七、WALKLETS [2016]
- 八、SDNE [2016]
- 九、CANE [2017]
- 十、EOE [2017]
- 十一、metapath2vec [2017]
- 十二、GraphGAN [2018]
- 十三、struc2vec [2017]
- 十四、GraphWave [2018]
- 十五、NetMF [2017]
- 十六、NetSMF [2019]
- 十七、PTE [2015]
- 十八、HNE [2015]
- 十九、AANE [2017]
- 二十、LANE [2017]
- 二十一、MVE [2017]
- 二十二、PMNE [2017]
- 二十三、ANRL [2018]
- 二十四、DANE [2018]
- 二十五、HERec [2018]
- 二十六、GATNE [2019]
- 二十七、MNE [2018]
- 二十八、MVN2VEC [2018]
- 二十九、SNE [2018]
- 三十、ProNE [2019]
- Graph Embedding 综述
- 图神经网络
- 一、GNN [2009]
- 二、Spectral Networks 和 Deep Locally Connected Networks [2013]
- 三、Fast Localized Spectral Filtering On Graph [2016]
- 四、GCN [2016]
- 五、神经图指纹 [2015]
- 六、GGS-NN [2016]
- 七、PATCHY-SAN [2016]
- 八、GraphSAGE [2017]
- 九、GAT [2017]
- 十、R-GCN [2017]
- 十一、 AGCN [2018]
- 十二、FastGCN [2018]
- 十三、PinSage [2018]
- 十四、GCMC [2017]
- 十五、JK-Net [2018]
- 十六、PPNP [2018]
- 十七、VRGCN [2017]
- 十八、ClusterGCN [2019]
- 十九、LDS-GNN [2019]
- 二十、DIAL-GNN [2019]
- 二十一、HAN [2019]
- 二十二、HetGNN [2019]
- 二十三、HGT [2020]
- 二十四、GPT-GNN [2020]
- 二十五、Geom-GCN [2020]
- 二十六、Graph Network [2018]
- 二十七、GIN [2019]
- 二十八、MPNN [2017]
- 二十九、UniMP [2020]
- 三十、Correct and Smooth [2020]
- 三十一、LGCN [2018]
- 三十二、DGCNN [2018]
- 三十三、AS-GCN
- 三十四、DGI [2018]
- 三十五、DIFFPOLL [2018]
- 三十六、DCNN [2016]
- 三十七、IN [2016]
- 图神经网络 2
- 图神经网络 3
- 推荐算法(传统方法)
- 一、Tapestry [1992]
- 二、GroupLens [1994]
- 三、ItemBased CF [2001]
- 四、Amazon I-2-I CF [2003]
- 五、Slope One Rating-Based CF [2005]
- 六、Bipartite Network Projection [2007]
- 七、Implicit Feedback CF [2008]
- 八、PMF [2008]
- 九、SVD++ [2008]
- 十、MMMF 扩展 [2008]
- 十一、OCCF [2008]
- 十二、BPR [2009]
- 十三、MF for RS [2009]
- 十四、 Netflix BellKor Solution [2009]
- 推荐算法(神经网络方法 1)
- 一、MIND [2019](用于召回)
- 二、DNN For YouTube [2016]
- 三、Recommending What Video to Watch Next [2019]
- 四、ESAM [2020]
- 五、Facebook Embedding Based Retrieval [2020](用于检索)
- 六、Airbnb Search Ranking [2018]
- 七、MOBIUS [2019](用于召回)
- 八、TDM [2018](用于检索)
- 九、DR [2020](用于检索)
- 十、JTM [2019](用于检索)
- 十一、Pinterest Recommender System [2017]
- 十二、DLRM [2019]
- 十三、Applying Deep Learning To Airbnb Search [2018]
- 十四、Improving Deep Learning For Airbnb Search [2020]
- 十五、HOP-Rec [2018]
- 十六、NCF [2017]
- 十七、NGCF [2019]
- 十八、LightGCN [2020]
- 十九、Sampling-Bias-Corrected Neural Modeling [2019](检索)
- 二十、EGES [2018](Matching 阶段)
- 二十一、SDM [2019](Matching 阶段)
- 二十二、COLD [2020 ] (Pre-Ranking 模型)
- 二十三、ComiRec [2020](https://www.wenjiangs.com/doc/0b4e1736-ac78)
- 二十四、EdgeRec [2020]
- 二十五、DPSR [2020](检索)
- 二十六、PDN [2021](mathcing)
- 二十七、时空周期兴趣学习网络ST-PIL [2021]
- 推荐算法之序列推荐
- 一、FPMC [2010]
- 二、GRU4Rec [2015]
- 三、HRM [2015]
- 四、DREAM [2016]
- 五、Improved GRU4Rec [2016]
- 六、NARM [2017]
- 七、HRNN [2017]
- 八、RRN [2017]
- 九、Caser [2018]
- 十、p-RNN [2016]
- 十一、GRU4Rec Top-k Gains [2018]
- 十二、SASRec [2018]
- 十三、RUM [2018]
- 十四、SHAN [2018]
- 十五、Phased LSTM [2016]
- 十六、Time-LSTM [2017]
- 十七、STAMP [2018]
- 十八、Latent Cross [2018]
- 十九、CSRM [2019]
- 二十、SR-GNN [2019]
- 二十一、GC-SAN [2019]
- 二十二、BERT4Rec [2019]
- 二十三、MCPRN [2019]
- 二十四、RepeatNet [2019]
- 二十五、LINet(2019)
- 二十六、NextItNet [2019]
- 二十七、GCE-GNN [2020]
- 二十八、LESSR [2020]
- 二十九、HyperRec [2020]
- 三十、DHCN [2021]
- 三十一、TiSASRec [2020]
- 推荐算法(综述)
- 多任务学习
- 系统架构
- 实践方法论
- 深度强化学习 1
- 自动代码生成
工具
- CRF
- lightgbm
- xgboost
- scikit-learn
- spark
- numpy
- matplotlib
- pandas
- huggingface_transformer
- 一、Tokenizer
- 二、Datasets
- 三、Model
- 四、Trainer
- 五、Evaluator
- 六、Pipeline
- 七、Accelerate
- 八、Autoclass
- 九、应用
- 十、Gradio
Scala
- 环境搭建
- 基础知识
- 函数
- 类
- 样例类和模式匹配
- 测试和注解
- 集合 collection(一)
- 集合collection(二)
- 集成 Java
- 并发
十五、HOP-Rec [2018]
推荐系统在现代无处不在,并且已经广泛应用于推荐音乐、书籍、电影等
item
的服务。真实世界的推荐系统包括很多有利于推荐的user-item
交互,包括播放时间、喜欢、分享、以及贴标签tag
。协同过滤collaborative filtering: CF
通常用于利用这种交互数据进行推荐,因为CF
在各种推荐策略之间性能表现较好,并且不需要领域知识domain knowledge
。有两种主流的
CF
模型:潜在因子模型latent factor model
和基于图的模型graph-based model
。潜在因子模型通过分解
user-item
矩阵来发现user-item
交互背后的共享潜在因子shared latent factor
。矩阵分解matrix factorization: MF
是此类方法的典型代表。此外,最近的文献更多地关注从隐式数据优化
item
排序,而不是预测显式的item score
。大多数此类方法假设用户对未观察到的item
不太感兴趣,因此这些方法旨在区分观察到的item
(positive
)和未观察到的item
(negative
)。总而言之,潜在因子模型通过分解观察到的用户和
item
之间的直接交互来捕获用户偏好。基于图的模型探索了由用户、
item
、及其交互构建的简单user-item
二部图bipartite graph
中固有的inherent
、顶点之间的高阶邻近性high-order proximity
。在某种程度上,这种基于图的方法放松了基于因子分解的模型所做出的假设(即:假设用户对未观察到的
item
不太感兴趣),因为它们显式地对user-item
交互二部图中的用户和item
之间的高阶邻近性进行建模。总而言之,基于图的模型从由
user-item
交互构建的图中捕获用户间接偏好。
在论文
《HOP-Rec: High-Order Proximity for Implicit Recommendation》
中,作者提出了高阶临近性增强推荐模型high-order proximity augmented recommendation: HOP-Rec
,这是一个结合了这两种隐式推荐方法(潜在因子模型和基于图的模型)的、统一而有效的方法。HOP-Rec
通过在user-item
二部图上进行随机游走,从而为每个用户发现邻域item
的高阶间接信息high-order indirect information
。通过对游走路径中不同阶数使用置信参数confidence parameter
,HOP-Rec
在分解用户偏好的潜在因子时同时考虑item
的不同阶数。下图说明了在观察到的交互中对用户和
item
之间的高阶邻近性建模的思想。- 图
(a)
表示由观察到的user-item
交互构建的二部图。 - 图
(b)
给出了一条从源顶点 $ u_1 $ 到目标顶点 $ i_4 $ 的路径。 - 图
(c)
以矩阵的形式记录了用户和item
之间的直接交互(一阶邻近性)。 - 图
(d)
以矩阵的形式显示了用户和item
之间的高阶关系(高阶邻近性)。
具体而言,用户 $ u_1 $ 的潜在偏好
item
按照它们在图(b)
中的路径中出现的阶数进行排序。例如,观察到的item
$ i_2 $ 和用户 $ u_1 $ 具有一阶关系,未观察到的item
$ i_3 $ 和用户 $ u_1 $ 具有二阶关系。HOP-Rec
显式地建模这种高阶间接偏好信息high-order indirect preference information
。在真实世界四个大规模数据集上的实验结果表明,
HOP-Rec
显著优于几种state-of-the-art
的推荐算法,并表明将高阶邻近性和因子分解模型相结合对于一般的top-N
隐式推荐问题很有帮助。
15.1 模型
15.1.1 因子分解模型和图模型
交互图
Interaction Graph
的定义:user-item
交互由一个二元邻接矩阵 $ \mathbf A=(a_{i,j})\in \mathbb R^{|\mathcal U|\times |\mathcal I|} $ 来表示,二部交互图bipartite interaction graph
$ G=(\mathcal V,\mathcal E) $ 基于二元邻接矩阵 $ \mathbf A $ 来构建。其中:- $ \mathcal U $ 为用户集合, $ \mathcal I $ 为
item
集合, $ \mathcal V=\mathcal U\cup\mathcal I $ 为顶点集合。 - $ a_{i,j}\in \{0,1\} $ 表示是否存在交互,边集合 $ \mathcal E=\{e_{i,j}\mid a_{i,j}=1\} $ 。
- $ \mathcal U $ 为用户集合, $ \mathcal I $ 为
k
阶邻近性k-order Proximity
的定义:给定一个交互图 $ G=(\mathcal V,\mathcal E) $ ,顶点 $ (u,i) $ 之间的k
阶邻近性由它们在图上随机游走生成的序列中的转移概率来定义,其中 $ u\in \mathcal U,i\in \mathcal I,k\in \mathbb N^+ $ 。具体而言,令 $ \mathcal S_u=(u,i_1,u_1,\cdots,u_{k-1},i_k,\cdots) $ 表示从源顶点 $ u $ 开始的随机游走序列,其中 $ u_k $ 和 $ i_k $ 分别表示顶点 $ u $ 的第 $ k $ 个邻居用户和第 $ k $ 个邻居
item
。源顶点 $ u $ 与其第 $ k $ 个邻居item
之间的k
阶邻近性定义为 $ p_u^{}(i_k)\times C(k) $ ,其中: - $ p_u^{
}(i_k) $ 表示从 $ u $ 到 $ i_k $ 的 k
阶转移概率。 - $ C(k) $ 是
k
阶衰减因子decay factor
。例如 $ C(k) = 1/k $ 。
如果从 $ u $ 到 $ i_k $ 不存在可行的路径,则
k
阶邻近性为零。- $ p_u^{
Factorization Model: FM
模型:因子分解模型的目标是估计以下两个潜在因子集合: $ \Theta_U,\Theta_I\sube\Theta $ ,其中:- $ \Theta_U\in \mathbb R^{|\mathcal U|\times d} $ 为用户潜在因子集合, $ \Theta_I\in \mathbb R^{|\mathcal I|\times d} $ 为
item
潜在因子集合, $ d $ 为潜在因子空间的维度。 - $ \Theta $ 为 $ \Theta_U,\Theta_I $ 的超集,由我们模型中的所有参数组成。
令 $ \vec\theta_u\in \mathbb R^d $ 表示用户 $ u $ 在 $ \Theta_U $ 中的行向量, $ \vec\theta_i\in \mathbb R^d $ 表示
$ \mathcal L_{\text{MF}} = \sum_{u,i}c_{u,i}\left(a_{u,i} -\vec\theta_u^\top\vec\theta_i\right) + \lambda_\Theta \|\Theta\|_2^2 $item
$ i $ 在 $ \Theta_I $ 中的行向量,则MF
针对隐式反馈数据集的目标函数为:其中:
- $ u\in \mathcal U,i\in \mathcal I $ , $ c_{u,i} $ 为置信度水平
confidence level
。通常选择 $ c_{u,i} = 1+\alpha\times a_{u,i} $ ,即观察到交互的user-item
置信度高于未观察到交互的user-item
。 - $ a_{u,i} $ 为二元变量表示在邻接矩阵 $ \mathbf A $ 中观察到的用户 $ u $ 和
item
$ i $ 是否有交互。 - 正则化参数 $ \lambda_\Theta $ 是防止观测值过拟合的超参数。
在各种基于因子分解的模型中,基于排序
$ \mathcal L_{\text{rank}} = \sum_{u,(i,i^\prime)} \mathcal F\left(\vec\theta_u^\top\vec\theta_{i},\vec\theta_u^\top\vec\theta_{i^\prime}\right)+\lambda_\Theta\|\Theta\|_2^2 $ranking-based
的模型在top-N
推荐问题中表现突出。基于排序的模型如BPR
和WARP
已经从传统的point-wise
方法(绝对关系)转变为pairwise
方法(相对关系),其中排序损失ranking loss
可以定义为:其中:
- $ i\in \mathcal I $ 表示用户 $ u $ 观察到的
item
(positive
), $ i^\prime\in \mathcal I $ 表示用户 $ u $ 未观察到的item
(negative
), $ u\in \mathcal U $ 。 - 函数 $ \mathcal F(\cdot) $ 表示
item
排序问题的通用目标函数。具体而言,在BPR
中, $ \mathcal F $ 是由logistic sigmoid
函数、对数函数、示性函数组成的排序函数。在WARP
中, $ \mathcal F $ 由权重近似的排序函数和一个示性函数组成。
基于排序的模型假设用户更喜欢观察到的
item
而不是未观察到的item
,因此其目标是从每对item pair
中区分出偏好的item
。- $ \Theta_U\in \mathbb R^{|\mathcal U|\times d} $ 为用户潜在因子集合, $ \Theta_I\in \mathbb R^{|\mathcal I|\times d} $ 为
Graph Model
模型:除了通常研究的基于因子分解的模型之外,人们还提出了几个基于图的模型,这些模型利用随机游走来对推荐的item
进行排序。具体而言,这类模型的主要思想是将user-item
交互矩阵 $ \mathbf A $ 视为交互图,并在图上使用随机游走从而引入间接偏好信息来提供推荐。
15.1.2 HOP-Rec 模型
尽管基于因子分解的模型隐式地推断用户对未观测
item
的偏好,但是最近的研究表明显式地建模此类潜在偏好potential preference
可以提高推荐系统的性能。受到因子分解模型和图模型的启发,我们提出了HOP-Rec
。这是一个统一的框架:HOP-Rec
在给定的user-item
交互矩阵中捕获高阶偏好信息。HOP-Rec
通过在相应的交互图上使用随机游走来扩展scale
到大规模的真实世界数据集。
$ \mathcal L_{\text{HOP}} = \sum_{1\le k\le K\\u,(i,i^\prime)}\underbrace{C(k)\mathbb E_{i\sim P_u^{HOP-Rec
的目标函数定义为:}\\ i^\prime\sim P_N}}_{\text{graph model}}\underbrace{\left[\mathcal F\left(\vec\theta_u^\top\vec\theta_{i},\vec\theta_u^\top\vec\theta_{i ^\prime}\right)\right]}_{\text{factorization model}}+\lambda_\Theta\|\Theta\|_2^2 $ 其中:
- $ P_u^{
}(\cdot) $ 表示从随机游走序列 $ \mathcal S_u $ 中采样 item
的k
阶概率分布(即前面定义的 $ p_u^{}(i_k) $ )。 - $ P_N(\cdot) $ 表示从所有
item
的集合中采样item
的均匀分布。 - $ K $ 表示在我们的方法中建模的最大阶数。
上述物理含义是:以概率 $ P_u^{
}(\cdot) $ 随机采样 $ u $ 的 k
阶邻居item
作为正样本、以均匀随机采样item
作为负样本,然后对它们的pairwise loss
进行衰减降权(由 $ C(k) $ 指定衰减因子)。注意:每个正样本采样 $ N $ 个负样本, $ N $ 为超参数。从另一个角度来看,我们通过从
user-item
交互中推断高阶邻近性来丰富最初的稀疏图。它的本质是:数据集增强技术。即利用二部图来增强正样本(同时对每个正样本负采样 $ N $ 个负样本),另外对增强的样本赋予一个小于
1
的权重。- $ P_u^{
HOP-Rec
方法背后的主要思想是:通过随机游走来近似高阶概率矩阵分解,其中随机游走具有一个置信权重confidence weighting
$ C(k) $ 的衰减因子, $ 0\lt C(k)\le 1 $ 。引入置信度加权参数 $ C(k) $ 来区分不同邻近性之间的强度。具体而言,我们选择 $ C(k) = 1/k $ 作为衰减因子。注意,我们没有通过矩阵运算直接分解转移概率矩阵矩阵,这对于大规模数据集是不可行的。而随机游走近似矩阵分解已经被证明是有效和准确的。
通过这种方式,我们不仅通过引入高阶偏好信息来平滑观察的
item
和未观察的item
之间的严格边界(“非此即彼”的边界),而且使得我们的方法可以扩展到大规模的现实世界数据集。具体而言,我们首先引入随机游走从而为每个用户 $ u $ 在交互图上探索。给定从 $ u $ 开始的随机游走序列 $ \mathcal S_u=(u,i_1,u_1,\cdots,u_{k-1},i_k,\cdots) $ ,我们采样用户 $ u $ 的
k
阶潜在偏好的item
$ i_k $ (即用户 $ u $ 的k
阶邻居item
)。此外,在现实世界的数据集中,用户集合 $ \mathcal U $ 和
item
集合 $ \mathcal I $ 的degree
分布通常呈现幂律分布power-law distribution
。如果我们使用均匀采样,那么大多数采样路径都是低degree
的用户顶点和item
顶点。考虑到这一点,我们在随机游走过程中使用了degree
采样,即:对于随机游走采样的每一个step
,我们分别以正比于deg(u)
的概率对用户 $ u $ 采样、以正比于deg(i)
的概率对item
$ i $ 采样。如何采样正样本很关键,不同的采样方式产生不同的结果。
我们定义 $ \mathcal F(\cdot,\cdot) $ 函数为:
$ \mathcal F\left(\vec\theta_u^\top\vec\theta_{i},\vec\theta_u^\top\vec\theta_{i ^\prime}\right) = \mathbb I_{\vec\theta_u^\top\vec\theta_{i^\prime}-\vec\theta_u^\top\vec\theta_{i}\gt \epsilon_k}\times \log \left[\sigma\left(\vec \theta_u^\top\vec \theta_{i^\prime}-\vec \theta_u^\top\vec \theta_{i }\right)\right] $其中:
- $ \mathbb I_{B} $ 为示性函数,当条件
B
为真时返回1
、为假时返回0
。上式中仅当 $ \vec\theta_u^\top\vec\theta_{i^\prime}-\vec\theta_u^\top\vec\theta_{i}\gt \epsilon_k $ 才考虑损失(即负样本的偏好分更高)。 - $ \epsilon_k $ 为阶数相关的阈值参数,设置为 $ \epsilon/k $ 。这是因为阶数越高, $ u $ 和 $ i $ 的偏好分越低,则阈值也需要越小。
注意,
item
$ i^\prime $ 是从所有item
的集合中均匀采样的,因为我们对用户不喜欢的item
采用假设的均匀分布 $ P_N $ 。这个假设是合理的,因为在很多真实场景中,对每个用户来讲,喜欢的item
(观察到的item
)通常远远少于不喜欢的item
(未观察到的item
)。- $ \mathbb I_{B} $ 为示性函数,当条件
HOP-Rec
模型的目标函数可以通过异步随机梯度下降asynchronous stochastic gradient descent: ASGD
来优化。
15.2 实验
数据集:为了验证
HOP-Rec
的能力和可扩展性,我们在四个公共数据集上进行了实验,这些数据集在领域domain
、规模、稀疏性方面各不相同,如下表所示。对于每个数据集,我们丢弃那些交互少于
5
个的用户和item
。此外,我们对每个数据集的交互记录进行预处理,从而模拟用户的隐式二元反馈:- 对于包含显式评分记录的
Amazon-book
和MovieLens
数据集,我们将所有>=4
分的评分记录转换为label = 1
、将<4
分的评分记录转换为label = 0
。 - 对于
CiteUlike
数据集,不进行任何转换,因为它本身就是一个二元偏好数据集。
- 对于包含显式评分记录的
baseline
方法:矩阵分解
Matrix Factorization: MF
:MF
是一种成熟且常用的user-item
推荐技术。在实验中我们使用implicit library
,它用交替最小二乘法alternating least-square: ALS
实现了MF
。贝叶斯个性化排序
Bayesian Personalized Ranking: BPR
:BPR
扩展了MF
的pointwise
方法,并引入pairwise ranking loss
来进行个性化推荐。Weighted Approximate-Rank Pairwise: WARP
损失:WARP
是一种有效估计排序函数的近似方法,其主要思想是根据它们在排序列表中的位置来加权pairwise
违规violation
。K-Order Statistic: K-OS
损失:K-OS
通过在优化过程中考虑正样本集合来扩展WARP
,其中K
表示考虑的正样本数量。注意,当K=1
时K-OS
退化为WARP
。对于
BPR, WARP, K-OS
三种方法,我们使用lightfm library
进行实验。Popularity-based Re-ranking: RP3(β)
:该方法作为各种graph-based
方法的一个强基线。该方法通过调节热门item
的权重重新加权ranking score
,这个ranking score
是基于随机游走而得到。该方法的评估时用原始作者提供的library
进行的。
实验配置:
- 对于
top-N
推荐,我们使用了以下三个常见的评估指标:precision@N
、recall@N
、MAP@N
。 - 对于每个数据集,我们将二元交互矩阵随机分为两个部分:
80%
作为训练集、20%
作为测试集。报告的性能取20
次实验的测试集均值。 - 所有基于分解的方法以及提出的
HOP-Rec
都使用两个潜在因子的内积作为评分函数。 - 除了
RP3(β)
这种以转移概率为排序分的纯图方法之外,其它方法的潜在因子 $ d $ 的维度固定为120
。除了 $ d $ 之外,所有其它超参数都是在第一次评估时使用网格搜索和测试集基于MAP
来选择。 - 对于
HOP-Rec
,我们搜索了从1 ~3
的最佳阶数K
,以及针对不同规模数据集的采样倍数N
(对于CiteUlike/MovieLens- 1M/MovieLens-20M/Amazon-Book
数据集,最佳采样倍数分别为90/60/300/800
)。 - 对于
HOP-Rec
, $ \vec\theta_u,\vec\theta_i $ 都是在 $ \pm 0.5/d $ 范围内随机均匀初始化,并且 $ \epsilon = 1 $ 。
- 对于
HOP-Rec
和其它五种baseline
方法的性能比较如下表所示,其中:*
表示相对于所有baseline
方法在 $ p\lt 0.01 $ (成对t
检验)时的统计显著性;%Improv
表示相对于最佳baseline
的性能提升比例。注意,原始library
的资源限制阻碍了我们在Amazon-Book
上进行PR3(β)
实验。可以看到:
WARP,K-OS,PR3(β)
是很强的baseline
方法,因为它们和其它两种方法MF,BPR
之间存在显著的性能差距。HOP-Rec
通常产生优于或者相当与五种baseline
方法的性能。
为进一步检查
HOP-Rec
中建模高阶邻近性的有效性,我们评估了关于参数K
的性能,结果如下图所示。可以看到:融合高阶邻近性可以提升HOP-Rec
的性能,但是对于最大的数据集Amazon-Book
,当K=3
时性能下降。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论