竞赛圈   > [猜你喜欢]“临兵斗列”分享|数据竞赛其实并不难

来自竞赛: 猜你喜欢

DC竞赛

  • 关注者 1
  • 关注了

DC竞赛

官方

1.说在前面

在看过了yin和神秘的yesboy!的赛后分享后,我们小组都从中学到了很多。算法部分已有很好的分享了,我们小组就不在班门弄斧了。我们小组就主要分享下我们在数据分析和一些赛后感言。

2 .数据分析

首先对训练数据和测试数据的数据分布进行分析,见表2-1,其中有效长度为数据项值的非空统计得到。






从表2-1可以看出,训练数据比较稀疏,并不是每个用户ID都有对应的训练数据。

接下来对训练数据和待预测数据进行绘图分析:图2-1为用户已评分物品统计图,其横轴为用户uid,纵轴对应为用户以评分物品的个数(从train.csv统计);图2-2为用户待预测物品统计图,其横轴为用户uid,纵轴对应为用户待评分物品的个数(从test.csv统计);图2-3为已评分物品频次图,其横轴为物品iid,纵轴对应为物品以评分次数(从train.csv统计);图2-4为评分时间频次图,其横轴为评分时间,纵轴对应为该时间评分的物品个数(从train.csv统计)。

1-4中的水平直线表示对应的均值,图2-3中的曲线为排序后的结果






从初步的分析得出,数据集的整体分布满足80/20规律,说明数据集分布均匀,使用常用的推荐系统方法可以得到目标结果。但与Movielens数据集相比,比赛数据集在规模上更大,包含的信息量也更多。

3 .解决方案

我们小组最初尝试使用平均值来代替预测结果,最优得分是7.59。之后使用了SVD和LFM来进行尝试,得分在7.8。在yin分享代码之后,我们使用模型结果平均加权,得到的结果是7.859。

4 .比赛回归和感言

其实我们小组花在比赛上面的时间并不多,要感谢yin分享的代码,让我们躺进了前五名。在比赛过程中我们也积累了很多想法,走过很多弯路,从最开始对推荐系统的模糊认识到思路的清晰理解,有很多值得总结的地方:

(1)  书本教材很重要,但不会涉及到复杂的或近期出现的算法,导致上升空间很小。还需要阅读开源项目已经相关的学术论文,否则很难有满意的成绩。

(2)  线下评测环境非常重要,是直接衡量算法优劣和调整算法的依据。每天的提交次数有限,要抓住宝贵的评测机会。线下评测环境也是直接评价算法拟合和过拟合的依据,所以非常重要。

(3)  做好文档记录,每种算法的实现以及提交的结果文件,都需要组好记录,方便算法模型改进和模型融合。

(4)  算法运行过程中,尽量保存中间计算结果,缩短计算时间。

(5)  比赛算法都是有相关论文的,所以比赛并不难,难的是积极思考和脚踏实地。



了解更多竞赛即时信息,关注DC微信公众号



0条评论

分享

0条评论
意见反馈
关注微信公众号 关注微信公众号

扫一扫分享给周围朋友