我有一个数据集,其结构大致如下:
500 个用户,500 种产品,100 个国家,2 个季节,300,000 次评分。这意味着我有 300,000 行包含用户、产品、国家/地区、季节的独特组合,每个组合都有用户在给定年份和位置对产品的指定评级。
例如,用户 257 在第 1 季的国家 29 中对产品 105 的评分为 4.1
据此,我想创建一个模型来预测任何给定的用户和产品组合之间的平均评分,即如果所有国家和季节的评分都已知,那么平均评分的估计值。
我的理解是协同过滤通常使用一个矩阵,该矩阵的结构是用户是行,产品是列。我不确定这是否适用于我的情况,因为国家和季节为矩阵提供了两个额外的维度。理想情况下,该模型将学习从四个维度 (n_users x n_products x n_loc x n_year) -> 两个维度 (n_users x n_products) 的映射,其中第一个张量稀疏地填充已知评级,第二个张量将填充预测评级。
使用 300,000 个已知评分,我们可以通过对所有已知国家和季节进行平均来估计大约 8,000 个用户-产品组合的平均评分,然后将这些平均评分作为监督学习的标签,即 250,000 个中的 8,000 个(500 x 500)条目可以填写。
我的问题是:
您会推荐使用哪种类型的模型?
如果我们使用估计的 8,000 个标签,是否可以设计特征来捕获用户 ID、产品 ID、国家和季节的联合评分分布中包含的信息?
非常感谢您提供的任何帮助或建议!