带有缺失值和偏见的排名算法

问题是:

5个独立的用户被要求对给定的50个产品进行评分。这些产品在某个时间点都被用户使用过。一些用户对某些产品有更多的偏见。一位用户没有认真完成调查,给出了随机的值。用户不必对所有产品进行评分。现在给定一个包含4个样本的数据集,根据评分对产品进行排名

datset :product #user1 #user2 #user3 #user4 #user5 0        29    -        10   90     12  1         -    -         -    -      7 2         -    -        95    6      1 3         -    -         -    -      2 4         -    -         -    -     50 5         -    35       21    13     - 6         -     -        -     -     5 7         4     -        -    30     - 8        11     -        -     -    14   . . .

如何为产品制定排名。

这是一个与原始问题非常接近的重新建模问题。

解决方案:我尝试清理数据并使用PCA填补缺失值,然后应用NMF,但我对这个解决方案不太确定。

任何帮助将不胜感激


回答:

在这种情况下,可以使用两种填补方法:

  • 正如每个人最初会尝试的,用最可能的值填补,即平均值。
  • 基于其他属性进行预测,称为回归填补。

实际上,我认为对于这个数据集来说,第二种方法似乎更好,因为用户大多对多个产品进行了评分。

此外,如果您有其他依赖于用户的数据集,您也可以使用它来预测此数据集中缺失的值。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注