首页 > 代码库 > 天翼杯大数据算法应用大赛感想
天翼杯大数据算法应用大赛感想
竞赛过去很久了,早就想写写感想与经历,可是一直拖着没写。今天终于有时间了,就写写吧。
竞赛题目是视频网站推荐,根据前七周每天用户对10个视频网站的访问次数数据以及其他上网行为,预测用户第八周对10个视频网站的访问量。
咋一看这是个时间序列预测问题,是啊,给出前49天用户访问数据,让你预测未来七天用户访问数据。这确实应该是个时间序列预测问题。
但我用时间预测算法模型Holt-Winter(3次指数平滑), ARIMA跑结果的时候,结果却并不是很好。
我后来分析了下数据,统计了七周每一周七天内用户对10个网站的点击次数。我很震惊的发现它是均匀分布的。
本来我原以为对于某些网站来说周末访问次数会高一点,或者说7周49天,每天的访问次数会有一定规律。但是没有发现。
唯一的发现是第五周会有一个数据突变,567周的访问次数骤然减半,所有网站都是如此。
而且对于个人来说,网站的点击更近似于随机分布,我们抽样了50个用户,都是如此。
周内没有规律,周间也没有规律。而且虽然7周看起来很长,但对于某一天来说,比如周一,有效数据只有7个,所以有效数据少。
所以对于把握周期性特征的时间序列预测算法来说,这种场合并不适用。
不过推荐嘛,总是有办法的。我想起了协同过滤。我把问题分成两步,第一步, 预测每天用户访问与否,这是个01分类问题。第二步,就是预测用户访问次数,可以用协同过滤解决。
对于第一步分类问题,选取特征最为重要。我选取了:相应每一天前七周访问与否,最近两周是否连续访问,对于网站的访问次数是否超过阈值,每周的访问天数和是否超过某一阈值等作为特征
以前六周作为数据集,第七周作为测试集,然后用神经网络跑出结果作为初步结果。
协同过滤我们采用针对用户的协同过滤算法。
待续
天翼杯大数据算法应用大赛感想