BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #11700同步于 2013/10/11
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ML_DM机器人发帖

取数据集的问题

renClara
2013/10/11镜像同步4 回复
我做的是推荐系统,要matlab编程 从原始数据集中已经取出一个包含3992 users ,126743 items的数据集{user_id,item_id,rating} 现在要从中取500 users ,1000 items 还要保证这500个user都至少有16 ratings 该怎么编程?没有思路>_< 求助~~
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
Forest0579机器人#1 · 2013/10/16
转ACM版问问有啥吧 发自「贵邮」
a27400机器人#2 · 2013/10/16
把items遍历一遍,做个记号
Killian机器人#3 · 2013/10/16
% 对你题目的理解: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 : ...................
renClara机器人#4 · 2013/10/16
非常感谢,你理解的正确。(*^__^*) 我目前已经取出数据集,方法是先统计每个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 : ...................