机器学习:个性化推荐之评分预测问题

本文介绍了参与数据竞赛时对用户兴趣度预测的思路,涉及评分预测问题。从平均值法到协同过滤,再到LFM学习算法和深度学习(DL)的应用,探讨了在处理大规模数据时遇到的挑战,如稀疏性问题和内存限制。通过多模型融合,得出DL和LFM在解决评分预测问题上的潜力,但也指出存在的问题,如LFM的学习过程中的限制条件和多人评分的影响等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 前段时间参加了一次数据竞赛,做的是用户兴趣度预测。下面说说我做的时候的一些思路和想法。

首先说数据:官方给了大约700M的训练数据,数据为CSV格式,用python的pandas读入后观察数据,会发现一个行数大约为三千四百余万、列为4的Dataframe,每一行代表了一次评分记录,记录中包含的信息为uid、iid、‘score’、‘time'  ,即(columns=['uid'、‘iid’、‘time’、‘score’])。

下面就可以说说我们的思路了~:我们先是使用各种平均值法(包括u_means,i_means,u_i_means方法)这种方法逼格Low,效果也不怎么样,所以这里详细说了,然后我们把用户和商品评分的方差(std)考虑了进来,以此表示评分的波动,希望可以建立一个数学模型,最终效果也不好,再然后我们使用了协同过滤算法~~,这是推荐系统里最常见的算法,不多解释了,可是我们在做的时候又遇到问题了,(稀疏性如何解决就不提了,因为我们根本就没有建立起计算相似度所需要的矩阵,原因是数据太多,用户多,商品也多,建立一个[iid_max,uid_max]的矩阵太耗内存~~,我的笔记本只有6G内存,无法存储如此大的数据),不过这个问题并不严重,毕竟我们可以分开计算物体的相似度,具体思想参考 http://data.qq.com/article?id=823,我尝试了如此做,先是借鉴了关联规则里的Aproari算法来做,可问题来了,这样太慢了,然后我选择用FP-Tree,以为会快好多,事实证明自己是在太天真,等了三小时,没有结束,我便强制停止了程序,所以协同过滤的效果会怎么样,我没有确切的知道,谁如果愿意的话可以自己找些数据做做~~,再然后我们选择了LFM算法,这是一个学习算法~~,具体如何理解可参考http://blog.youkuaiyun.com/zjxiaolu/article/details/44545885

不过对于LFM这个算法真正在用的时候依然会有问题~~,会遇到一些奇葩的问题~~,具体问题是什么,大家做的时候可能也会遇到,对此如何解决呢~~?我们想到的是在学习的过程中加入限制条件~~,这样便可以解决学习过程中的一些问题,下面贴代码:


                
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值