返回信息流我做的是推荐系统,要matlab编程
从原始数据集中已经取出一个包含3992 users ,126743 items的数据集{user_id,item_id,rating}
现在要从中取500 users ,1000 items 还要保证这500个user都至少有16 ratings
该怎么编程?没有思路>_< 求助~~
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #11700同步于 2013/10/11
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ML_DM机器人发帖
取数据集的问题
renClara
2013/10/11镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
% 对你题目的理解:3992 users ,126743 items {user_id,item_id,rating},
% rating in {0,1} ,目标是 users 有16 rating,
% 即3992*126743的0,1矩阵Mu,找其中的500*1000子矩阵,其中每一行的累加和>16
% 下面给的解法,以较大概率可能满足上述条件,非解析解~~
【 在 renClara 的大作中提到: 】
: 我做的是推荐系统,要matlab编程
: 从原始数据集中已经取出一个包含3992 users ,126743 items的数据集{user_id,item_id,rating}
: 现在要从中取500 users ,1000 items 还要保证这500个user都至少有16 ratings
: ...................
非常感谢,你理解的正确。(*^__^*)
我目前已经取出数据集,方法是先统计每个item被多少user评价过,对其进行排序。然后根据评价数的多少,选择评价数最多的1000个item。消除了大量的item后,满足rating>16的user数目也减少了。此时再统计每个user评价过多少item,取出满足rating>16的user。这时还剩513个user,适当选取其中500个。再次检查各个条件均满足。
我的这个方法也是比较凑巧。
【 在 Killian 的大作中提到: 】
: % 对你题目的理解:3992 users ,126743 items {user_id,item_id,rating},
: % rating in {0,1} ,目标是 users 有16 rating,
: % 即3992*126743的0,1矩阵Mu,找其中的500*1000子矩阵,其中每一行的累加和>16
: ...................