返回介绍

数学基础

统计学习

深度学习

工具

Scala

八、PMF [2008]

发布于 2023-07-17 23:38:24 字数 16581 浏览 0 评论 0 收藏 0

  1. 低维因子模型low-dimensional factor model 是最流行的协同过滤方法之一,该模型背后的思想是:用户偏好是由少量未观察到的因子unobserved factor 决定的。

    在线性因子模型linear factor model 中,我们可以通过采用线性加权 item 因子向量 item factor vector 来建模用户的偏好,权重为特定于用户的系数 user-specific coefficient 。例如,对于 $ m $ 个用户、 $ n $ 部电影,则偏好矩阵 $ \mathbf R\in \mathbb R^{m\times n} $ 由用户系数矩阵 $ \mathbf U^ \top\in \mathbb R^{m\times d } $ 和item 因子矩阵 $ \mathbf V\in \mathbb R^{d\times n } $ 的乘积给出:

    $ \mathbf R = \mathbf U^\top\mathbf V $

    训练这个模型等价于:在给定损失函数的意义下,寻找 $ \mathbf R $ 的最佳 $ d $ 秩近似。

    通常可以采用奇异值分解Singular Value Decomposition: SVD 寻找到最小平方和损失下的低秩近似。但是, 大多数真实数据集都是非常稀疏的,即 $ \mathbf R $ 中大量数据是缺失的,此时损失函数仅仅考虑矩阵 $ \mathbf R $ 的观察值observed entry (即非缺失值)。这种看起来非常微小的修改将导致难以解决的非凸优化问题,从而使得标准的 SVD 无法解决。

    《Maximum-margin matrix factorization》 方法并非约束矩阵分解的秩,而是对 $ \mathbf U $ 和 $ \mathbf V $ 增加范数正则化。但是这会导致需要求解一个稀疏的半正定矩阵,这对于包含数百万个观察值的数据集是不可行的。

    上面提到的许多协同过滤算法已经应用于 Netflix Prize 数据集上建模用户评分。然而,由于以下两个原因,这些方法都不是很成功:

    • 首先,除了基于矩阵分解的方法之外,上述方法都无法很好地扩展到大型数据集。
    • 其次,大多数现有算法都难以为评分很少的用户做出准确的预测。

    协同过滤任务的一种常见的数据预处理方法为:删除评分数量低于指定阈值的用户(如评分数量低于3)。事实上,评分数量很低的用户的推荐难度更大。因此大多数协同过滤算法在 MovieLens, EachMovie 等标准数据集上效果非常好,因为这些标准数据集剔除了最困难的情况。例如,Netflix 数据集非常不平衡,低频用户评分少于 5 部电影、高频用户评分超过 10000 部电影。由于Netflix Prize 数据集规模之大、不活跃用户之多, 使得它成为协同过滤算法更现实的 benchmark 数据集。

    论文 《Probabilistic Matrix Factorization》 提出了概率矩阵分解 Probabilistic Matrix Factorization:PMF 模型,该模型可以轻松的处理非常大的数据,并且也可以处理评分数量稀少的用户。实验表示 PMF 模型在 Netflix 数据集上表现良好。

    • PMF 模型的计算复杂度和观察次数成线性,因此具有很好的 scalability 。并且模型在大型、非常稀疏、非常不平衡的数据集(例如 Netflix 数据集)上表现良好。
    • 论文进一步扩展了 PMF 模型,从而得到能够自动调整超参数的自适应 PMF,并展示如何自动控制模型容量。
    • 最后,论文引入PMF 模型的约束版本,该变种基于以下假设:对相似item 集合评分的用户可能具有相似的偏好。该假设得到的模型对于评分数量很少的用户能产生更好的推荐结果。

    当多个 PMF 模型的预测与受限玻尔兹曼机模型的预测线性组合时,论文实现了 0.8861RMSE,这比 Netflix 自己的系统得分好了将近 7%

8.1 模型

8.1.1 PMF

  1. 假设有 $ m $ 个用户、 $ n $ 个 item 。假设评分为:从整数 $ 1,2,\cdots,K $ , $ r_{i,j}\in \{0,1,\cdots,K\} $ 为用户 $ i $ 对 item $ j $ 的评分,其中对于缺失值我们定义 $ r_{i,j} = 0 $ 。

    定义 $ \mathbf U\in \mathbb R^{d\times m } $ 为用户因子矩阵,第 $ i $ 列 $ \mathbf{\vec u}_i $ 代表用户 $ i $ 的因子向量。定义 $ \mathbf V\in \mathbb R^{d\times n} $ 为 item 因子矩阵,第 $ j $ 列 $ \mathbf{\vec v}_j $ 代表item $ j $ 的因子向量。

    定义观测值的条件分布为:

    $ p\left(\mathbf R\mid \mathbf U,\mathbf V,\sigma^2\right) = \prod_{i=1}^m\prod_{j=1}^n\left[\mathcal N(r_{i,j}\mid \mathbf{\vec u}_i\cdot \mathbf{\vec v}_j,\sigma^2)\right]^{I(i,j)} $

    其中:

    • $ \mathcal N(x\mid \mu,\sigma^2) $ 为均值为 $ \mu $ 、方差为 $ \sigma^2 $ 高斯分布的概率密度函数,其中 $ \sigma^2 $ 为噪音方差。

    • $ I(i,j) $ 为示性函数:

      $ I(i,j) = \begin{cases} 1,& r_{i,j} \gt 0\\ 0,& r_{i,j} = 0 \end{cases} $

    进一步的,我们假设用户因子向量和 item 因子向量采用零均值的球形高斯先验分布 spherical Gaussian

    $ p(\mathbf U\mid \sigma_U^2) = \prod_{i=1}^m \mathcal N(\mathbf{\vec u}_i\mid \mathbf{\vec 0},\sigma_U^2\mathbf I)\\ p(\mathbf V\mid \sigma_V^2) = \prod_{j=1}^n \mathcal N(\mathbf{\vec v}_j\mid \mathbf{\vec 0},\sigma_V^2\mathbf I) $

    其中 $ \sigma_U^2,\sigma_V^2 $ 为先验方差。

    则后验概率分布的对数为:

    $ \log p(\mathbf U,\mathbf V\mid \mathbf R,\sigma^2,\sigma_U^2,\sigma_V^2) = - \frac{1}{2\sigma^2}\sum_{i=1}^m\sum_{j=1}^n I(i,j)(r_{i,j} - \mathbf{\vec u}_i\cdot \mathbf{\vec v}_j)^2 - \frac{1}{2\sigma_U^2}\sum_{i=1}^m \mathbf{\vec u}_i\cdot \mathbf{\vec u}_i\\ - \frac{1}{2\sigma_V^2}\sum_{j=1}^n \mathbf{\vec v}_j\cdot \mathbf{\vec v}_j - \frac{1}{2}\left(\left(\sum_{i=1}^{m}\sum_{j=1}^n I(i,j)\right)\log \sigma^2 + md\log \sigma_U^2 + nd\log\sigma_V^2\right) +C $

    其中 $ C $ 为不依赖于任何参数的常数。

    当固定 $ \sigma^2,\sigma^2_U,\sigma^2_V $ 时,最大化后验分布等价于最小化带正则化项的误差平方和:

    $ \mathcal L = \frac{1}{2}\sum_{i=1}^m\sum_{j=1}^n I(i,j)(r_{i,j} - \mathbf{\vec u}_i\cdot \mathbf{\vec v}_j)^2 + \frac{\lambda_U}{2}\sum_{i=1}^m ||\mathbf{\vec u}_i||^2+ \frac{\lambda_V}{2}\sum_{j=1}^n ||\mathbf{\vec v}_j||^2 $

    其中: $ \lambda_U = \frac{\sigma^2}{\sigma^2_U}, \lambda_U = \frac{\sigma^2}{\sigma^2_V} $ 为正则化系数; $ ||\cdot||^2 $ 为 Frobenius 范数。

    我们可以通过对 $ \mathcal L $ 进行梯度下降从而求解参数 $ \mathbf U,\mathbf V $ 。

  2. PMF 模型可以视为 SVD 模型的概率扩展。当我们能够观察到所有的user-item 评分时,在先验方差 $ \sigma_U^2,\sigma_V^2 $ 无穷大的限制下,PMF 模型退化为 SVD 模型。

  3. 事实上,上述推导过程存在一个问题:预测结果 $ \mathbf{\vec u}_i\cdot {\mathbf v}_j $ 容易超出评分范围。因此 PMF 使用 logistic 函数来限定评分范围:

    $ g(x) = \frac{1}{1+\exp(-x)}\\p(\mathbf R\mid \mathbf U,\mathbf V,\sigma^2) = \prod_{i=1}^m\prod_{j=1}^n\left[\mathcal N(r_{i,j}\mid g(\mathbf{\vec u}_i\cdot \mathbf{\vec v}_j),\sigma^2)\right]^{I_(i,j)} $

    在训练过程中我们将评分 $ 1,2,\cdots,K $ 使用函数 $ f(x) = \frac{x-1}{K-1} $ 映射到区间 [0,1];在预测过程中我们使用 $ (K-1)\times (\mathbf{\vec u}_i\cdot {\mathbf v}_j) + 1 $ 将结果映射回评分。

  4. 可以通过最速下降法优化 PMF 的目标函数,其计算复杂度和观察值的规模成线性关系。

    Matlab 实现中,当 $ d=30 $ 时我们可以在不到一个小时内训练整个 Netflix 数据集的 1epoch

  5. 训练 PMF 模型的高效率来自于:仅找到模型参数和超参数的点估计,而不是推断他们的完整后验分布。如果我们采用完全贝叶斯方法,则计算上更为昂贵,但是初步结果强烈表明:对 PMF 模型的完全贝叶斯处理将导致预测准确性的显著提高。

8.1.2 自适应 PMF

  1. 模型容量对于 PMF 模型的泛化至关重要。

    • 超参数 $ d $ 可以控制模型容量,当 $ d $ 足够大时 PMF 模型能够逼近任何给定的矩阵。因此,控制 PMF 模型容量的最简单直接的方法是限制 $ d $ 的大小。

      但是,当数据集不平衡时(即观察值的规模在不同的行或者列之间显著不同),则该方法行不通。因为无论怎么选择 $ d $ ,总会对于某些因子向量过高、对另外一些因子向量过低。因为某些因子可能需要大容量来包含足够多的信息,而另一些因子只需要很小的容量来包含少量信息。

    • 另一种方式是采用正则化来控制模型容量,如 $ \lambda_U,\lambda_V $ 。

      选择合适正则化系数,最简单直接的方法是进行超参数搜索,如 GridSearch, RandomSearch 。这种方式的主要缺点是计算量太大:除了训练最终的模型之外,我们必须训练多个模型来确定最佳的正则化系数。

  2. 这里我们提出了一个自动确定 PMF 正则化系数的变种,称作自适应 PMF 。这种方式可以自动选择合适的正则化系数,并且不会显著影响模型训练时间。其基本原理是:引入超参数的先验分布,并最大化模型在参数 $ \mathbf U,\mathbf V $ 和超参数 $ \sigma_U^2,\sigma_V^2 $ 上的对数后验分布:

    $ \log p(\mathbf U,\mathbf V,\sigma^2,\Theta_U,\Theta_V\mid \mathbf R) = \log p(\mathbf R\mid \mathbf U,\mathbf V,\sigma^2) + \log p(\mathbf U\mid \Theta_U) + \\ \log p(\mathbf V\mid \Theta_V) + \log p(\Theta_U) + \log p(\Theta_V) + C $

    其中:

    • $ C $ 是和任何参数无关的常数。

    • $ \Theta_U,\Theta_V $ 分别为针对用户因子向量 、item 因子向量的先验分布的超参数。它们本身也是一个随机变量,分别服从分布 $ p(\Theta_U),p(\Theta_V) $ 。

    • 当先验分布 $ p(\mathbf U\mid \Theta_U),p(\mathbf V\mid \Theta_V) $ 为球形高斯分布时,这会得到一个常规模型并能够自动选择 $ \lambda_U $ 和 $ \lambda_V $ 。假设 $ p(\Theta_U) $ 和 $ p(\Theta_V) $ 为均匀分布(其实 $ \Theta_U $ 就是 $ \sigma_U^2 $ , $ \Theta_V $ 就是 $ \sigma_V^2 $ ), 此时有:

      $ \log p(\mathbf U,\mathbf V,\sigma^2,\Theta_U,\Theta_V\mid \mathbf R) = - \frac{1}{2\sigma^2}\sum_{i=1}^m\sum_{j=1}^n I(i,j)(r_{i,j} - \mathbf{\vec u}_i\cdot \mathbf{\vec v}_j)^2 - \frac{1}{2\sigma_U^2}\sum_{i=1}^m \mathbf{\vec u}_i\cdot \mathbf{\vec u}_i\\ - \frac{1}{2\sigma_V^2}\sum_{j=1}^n \mathbf{\vec v}_j\cdot \mathbf{\vec v}_j - \frac{1}{2}\left(\left(\sum_{i=1}^{m}\sum_{j=1}^n I(i,j)\right)\log \sigma^2 + md\log \sigma_U^2 + nd\log\sigma_V^2\right) +C^\prime $

      其中 $ C^\prime = C + \log p(\sigma_U^2) + \log p(\sigma_V^2) $ 为常数。

根据偏导数为零,则我们得到超参数的闭式解: $ \sigma_U^2 = \frac{\sum_{i=1}^m\mathbf{\vec u}_i\cdot \mathbf{\vec u}_i}{md},\quad \sigma_V^2 = \frac{\sum_{j=1}^n\mathbf{\vec v}_j\cdot \mathbf{\vec v}_j}{nd} $

  1. 当先验分布 $ p(\mathbf U\mid \Theta_U),p(\mathbf V\mid \Theta_V) $ 为高斯分布时,如果 $ \mathbf U $ 和 $ \mathbf V $ 固定,则可以求解最佳超参数的闭式解。因此,我们可以在训练期间通过交替求解超参数、优化参数。

    • 在求解超参数时固定参数 $ \mathbf U,\mathbf V $ ,此时超参数有闭式解。
    • 在求解优化参数时固定超参数,此时通过梯度下降法求解。

    当先验分布是混合高斯分布时,我们可以通过执行单步 EM 算法来更新超参数(参数的更新仍然是通过梯度下降法)。

8.1.3 约束 PMF

  1. 上述 PMF 模型存在一个问题:对于评分非常少的用户,他们的用户因子向量将趋近于先验均值(或者说用户因子向量的均值),因此这些用户的预测评分将接近所有评分的均值。

    这里我们提出了一种约束用户因子向量的方法,该方法对于评分稀少的用户具有很强的效果。

  2. 定义 $ \mathbf W \in \mathbb R^{d\times n} $ 为一个潜在的相似约束矩阵latent similarity constraint matrix ,定义用户 $ i $ 的因子向量为:

    $ \mathbf{\vec u}_i = \mathbf{\vec y}_i + {\sum_{k=1}^n s_{i,k}\mathbf{\vec w}_k} \\ s_{i,k} = \frac{I(i,k)}{\sum_{k^\prime=1}^{n}I(i,k^\prime)} $

    其中 $ \mathbf{\vec w}_k\in \mathbb R^d $ 为矩阵 $ \mathbf W $ 的第 $ i $ 列。

    直观的看:

    • 矩阵 $ \mathbf W $ 的第 $ i $ 列捕获了:如果用户对第 $ i $ 个item 评分,则用户因子先验均值受到的影响。因此,看过相同(或者相似)电影的用户,其用户因子向量将具有相似的先验分布。如果两个用户评分的 item 集合相同,则他们具有相同的用户因子向量。
    • $ \mathbf{\vec y}_i $ 可以视为这种先验分布的一个偏移量。

    事实上,这里假设有 $ \mathbf W $ 和 $ \mathbf V $ 都作为 item 因子向量,但是 $ \mathbf W $ 用于表达用户、 $ \mathbf V $ 用于表达 item

    下图中,左图为无约束PMF,此时先验均值固定为零,因此 $ \mathbf{\vec u}_i = \mathbf{\vec y}_i $ ;右图为约束 PMF,此时先验分布非零。(注意下图为原始论文, $ i,j,k $ 的范围与我们这里表述的不一致)。

  3. 我们定义观察值的条件分布为:

    $ p(\mathbf R\mid \mathbf Y,\mathbf V,\mathbf W,\sigma^2) = \prod_{i=1}^m\prod_{j=1}^n\left[\mathcal N\left(r_{i,j}\mid g\left(\left(\mathbf{\vec y}_i + {\sum_{k=1}^n s_{i,k}\mathbf{\vec w}_k} \right)\cdot \mathbf{\vec v}_j\right),\sigma^2\right)\right]^{I({i,j})} $

    假设 $ \mathbf W $ 服从一个零均值的球形高斯分布:

    $ p(\mathbf W\mid \sigma_W) = \prod_{k=1}^n \mathcal N\left(\mathbf{\vec w}_k\mid \mathbf{\vec 0},\sigma_W^2\mathbf I\right) $

    则有:最大化对数后验概率,等价于最小化带正则化项的误差平方和:

    $ \mathcal L = \frac 12\sum_{i=1}^m\sum_{j=1}^n I({i,j}) \left(r_{i,j} - g\left(\left(\mathbf{\vec y}_i + {\sum_{k=1}^n s_{i,k}\mathbf{\vec w}_k} \right)\cdot \mathbf{\vec v}_j \right)\right)^2\\ + \frac{\lambda_Y}{2}\sum_{i=1}^m ||\mathbf{\vec y}_i||^2 + \frac{\lambda_V}{2}\sum_{j=1}^n||\mathbf{\vec v}_j||^2 + \frac{\lambda_W}{2}\sum_{k=1}^n||\mathbf{\vec w}_k||^2 $

    其中:

    $ \lambda_Y = \frac{\sigma^2}{\sigma_Y^2},\quad\lambda_V = \frac{\sigma^2}{\sigma_V^2},\quad\lambda_W = \frac{\sigma^2}{\sigma_W^2} $

    我们可以对 $ \mathcal L $ 执行梯度下降来求解参数 $ \mathbf Y, \mathbf V,\mathbf W $ ,训练时间和观察值的数量成线性比例。

    实验表明,这种方式的效果比简单的无约束 PMF 模型效果好得多,尤其是针对评分数量稀少的用户。

8.2 实验

  1. 数据集:Netflix 数据集。该数据集收集了 199810 月到 200512 月之间Netflix 网站上用户的所有评分数据。

    • 训练数据集包含来自 480189个 随机选择的匿名用户的 100480507 个评分,涉及 17770个电影标题。作为训练数据的一部分,Netflix 还提供了包含 1408395 个评分的验证数据集。

    • 除了训练集和验证集之外,Netflix 还提供了一个包含 2817131user-movie pair 的测试集,这些pair 是从训练集中部分用户的最新评分中选择的。

      Netflix 给出了测试集中一半数据的评分,另一半数据的评分是未给出的。研究人员需要向官方上传另一半(未知部分)数据的评分结果,并由官方返回该部分的 RMSE 指标。这种方式是为了防止模型对测试集过拟合。作为 BaselineNetflix 给出了他们自己模型在测试集上的 RMSE 指标为 0.9514

    • 为了进一步了解不同算法的性能,我们通过随机选择 50000 个用户和 1850 部电影,从而创建了一个更小、难度更高的数据集。这个小数据集包含 1082982 个训练数据、10462 个验证数据,其中训练数据中超过 50% 的用户的评分数量少于 10

  2. 训练配置:为加快训练速度我们采用随机梯度下降,其中 batch size = 100000

    为选择合适的学习率和动量,我们在各种超参数组合上进行实验,最终选择学习率为 0.005、动量为 0.9,因为这组配置对所有维度 $ d $ 都工作良好。

8.2.1 自适应 PMF

  1. 为评估自适应PMF 模型的性能,我们选择 $ d=10 $ 。选择如此小的维度是为了证明:即使特征维度很低,类似的 SVD 模型仍然可能过拟合,并且通过自动正则化会有一些性能的提升。

  2. 模型:

    • SVD 模型:该模型的损失函数为观察值误差的平方和,其中没有采用任何形式的正则化。

    • 固定正则化系数的 PMF 模型:模型损失函数为观察值误差的平方和,带固定系数的正则化。其中 PMF1 的正则化系数为 $ \lambda_U = 0.01, \lambda_V = 0.001 $ , PMF2 的正则化系数为 $ \lambda_U = 0.001,\lambda_V = 0.0001 $ 。

    • 自适应 PMF 模型:模型损失函数为观察值误差的平方和,带正则化。其中 PMFA1 的 $ p(\mathbf U\mid \Theta_U) $ 和 $ p(\mathbf V\mid \Theta_V) $ 为球形高斯先验分布;PMFA2 的 $ p(\mathbf U\mid \Theta_U) $ 和 $ p(\mathbf V\mid \Theta_V) $ 为对角协方差的高斯先验分布。

      在这种情况下,自适应先验具有可调整的均值。

      先验参数和噪音协方差每隔 10100 个 $ \mathbf U,\mathbf V $ 的更新才更新一次。

  3. 我们在完整的Netflix 训练集上训练模型,然后评估模型在 Netflix 验证集上的效果。可以看到:

    • SVD 模型的表现几乎和具有适当正则化的 PMF 模型(PMF2)效果一样好,但是 SVD 模型在训练结束之前陷入严重过拟合。

    • PMF1 模型虽然没有陷入过拟合,但是它仅达到 0.9430RMSE,明显欠拟合。

    • 自适应PMF 明显优于其它模型。这里没有给出 PMFA2RMSE0.9204 ),因为它的曲线和 PMFA1 几乎相同(RMSE0.9197)。这表明:通过自适应先验来自动正则化在实践中效果良好。

    • 我们比较了 $ d=10 $ (左图)和 $ d=30 $ (右图),结果表明:使用自适应先验而导致性能的差距,可能随着因子维度 $ d $ 的增加而增加。

      另外,尽管对角协方差矩阵的使用并未比球形协方差矩阵的版本有明显改善,但是对角协方差可能非常适合自适应 PMF 训练的 greedy 算法,在该算法中模型每次学习一个因子向量。

8.2.2 约束PMF

  1. 在约束 PMF 上我们使用30 维特征,因为 $ d=30 $ 可以使得验证集获得最佳效果。对于PMF 和约束 PMF 我们设置正则化参数为 $ \lambda_U=\lambda_Y=\lambda_V=\lambda_W = 0.002 $ 。

    我们在完整的Toy 训练集(我们构造的小数据集)上训练模型,然后评估模型在Toy验证集上的效果。可以看到:

    • SVD 模型明显的陷入了过拟合。

    • 约束PMF 模型相比无约束 PMF 模型具有更好的性能,并且收敛速度更快。

    • 右图给出了不同评分数量的用户的评估结果。可以看到:

      • 对于训练集中评分数量少于 5 个的一组用户,PMF 模型性能与均值算法(电影 $ j $ 在所有用户上评分的均值作为用户 $ i $ 对电影 $ j $ 评分的预测结果)的性能相同。
      • 约束 PMF 模型在评分较少的用户上的性能要好得多。
      • 随着评分数量的增加,PMF 和约束 PMF 的性能相差无几。

  2. 约束PMF 模型的另一个有趣的性质是:即使我们仅知道用户曾经评分的电影,但是不知道评分的值,模型也能够利用该信息从而得到更好的效果。对于用户 $ i $ 如果已知它对电影 $ j $ 产生评分,即使不知道评分大小, 它对于 $ \mathbf{\vec u}_i $ 也是有贡献:

    $ \mathbf{\vec u}_i = \mathbf{\vec y}_i + {\sum_{k=1}^n s_{i,k}\mathbf{\vec w}_k} $

    对于我们的 toy 数据集,我们随机增加了额外的 50000 个用户来训练,并丢弃这些用户的实际评分。最终约束PMF 方法在验证集上的 RMSE1.0510,而简单平均算法的 RMSE1.0726

    这表明:仅了解用户评分的电影而不知道具体评分,仍然可以帮助我们更好的建模用户的偏好。

  3. 约束 PMF 在整个 Netflix 数据集上的表现与 Toy 数据集的结果相似。对于PMF 和约束 PMF 我们设置正则化参数为 $ \lambda_U=\lambda_Y=\lambda_V=\lambda_W = 0.001 $ 。

    结果表明:

    • SVD 模型的 RMSE0.9280,大约 10epoch 开始过拟合。

    • 约束 PMF 模型对于评分数量很少的用户可以有更好的泛化,其中训练集中超过 10% 的用户其评分不足 20 个;随着评分数量的增加,PMF 和约束 PMF 性能趋同。

    • 考虑到 Netflix 数据还有一个额外的信息来源:Netflix 会告诉我们测试集中还有哪些user-movie pair ,因此我们还知道一个信息:用户已经评分、但是不知道评分大小的电影。

      约束 PMF 可以很容易考虑该信息,如右图所示,这将进一步提高模型的性能。

    当我们将PMF、自适应PMF、约束 PMF 线性组合在一起时,我们在测试集上达到了 0.8970RMSE,这比Netflix 官方Baseline 0.9514 提高了将近 6%

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文