论文部分内容阅读
推荐算法的最终目标是通过一定的方式将用户和商品联系起来,让消费者和生产者从“信息超载”中找到自己真正的需求和目标客户,从而大大提高信息的有效使用率。个性化推荐研究和技术核心在于它的推荐能力,例如如何使用恰当的推荐算法提升推荐信息的准确率,提高与用户感兴趣信息的吻合度,提高用户对算法的信任度和惊喜度,算法的高效性等。为了突破这些瓶颈,研究人员不断寻求更新的和更高效的推荐算法。本文的研究主要面对的是在电子商务大数据情况下,用户商品矩阵将增长到不可想象的地步,同时在大数据面前,用户和物品之间的显性反馈关联信息缺少,隐形反馈数据巨大的特点。在如何应对大量“稀疏数据”的推荐和如何选定核心算法使计算机运行效率最大化,基于现有的个性化推荐算法的基础上,找到一种方法既能满足用户需求又能使效率准确率更高的推荐算法。基于以上目标,我们将算法融合作为我们研究推荐系统的重点关注目标,提出一种基于随机森林和boosting的算法融合思想,用该思想重新构建推荐。在特征集模型构建中,我们将以前需要耗费大量精力的特征选取工作抽取为特征构建,研究人员只要关注特征的挖掘,而不用做特征选取相关的工作,大大减少了特征选取等方面的工作量。我们首先从用户,物品和用户物品三个方面构建特征字列,同时在构造模型特征时候采用社会学中时间遗忘规律,将时间上下文信息作为特征构造的重要依据,不断通过实验在平滑的计算时间影响因子。在特征集构造中,采用hadoop下的mapreduce进行编程.解决亿级数据的计算问题。通过研究决策树模型.对单决策树模型的处理数据规模较小的缺陷下,分析研究随机森林等树模型组合算法,采用boosting的提升思想,对数据错误残差作为建树依据,对上述模型得到的特征集通过随机森林和boosting算法分别进行计算预测,但是在随机森林对关联度较高的二级特征上结果不可信的情况下,将随机森林算法的关注度在关联度较小的一级特征上,同时通过时间上的不断平滑移动,得到不同的结果集,结合boosting tree处理关联度较高的特征集合,得到时间平滑下几组结果集合后通过线性回归模型对预测到结果进行线性融合,得到最终的推荐结果。经试验,该模型在大数据环境下不仅在计算可行性上得以实现,而且在算法准确率上也有提高。在本地数据集实验中,采用阿里巴巴4月到7月的小规模数据集进行实验,最终将算法在阿里巴巴大数据竞赛上进行了实验分析,并取得了不错了算法结果。本论文的主要工作有以下几个方面:(1)对现有的推荐系统理论进行了研究,对现有的基于邻域的推荐算法,基于图的推荐算法和隐语意模型三种类型的推荐系统进行了系统的研究,分别根据不同的算法实现原理分析各种算法的优缺点。但是在电子商务大数据场景下,用户商品矩阵过大,数据维度过高,显性反馈与隐形反馈不平衡,在上述算法对其分析计算过于复杂的情况下,使用机器学习的理论来重构推荐,将机器学习应用在大规模数据推荐进行了实现;(2)推荐系统领域的重要研究热点是算法融合和大规模分布。本文针对于电子商务平台的大规模数据下,对数据建模的过程中,将数据处理采用并行化的思想,对不同的数据采用hadoop的mapreduce编程对数据的聚集,抽样和特征构造进行处理,得到模型特征集,hadoop计算接口由天猫ODPS平台提供,并采用mapreduce保证了本文算法的实现;(3)抽离了特征提取,特征提取一直是推荐系统相当繁琐的工作,本文通过研究树模型算法的优点,将推荐问题转化为用户行为特征研究,大大减少了特征提取带来的繁琐工作。过深入的挖掘用户的操作行为。从用户,产品和交互特征来进行特征集的构造,然后结合协同过滤和图论算法,将协同过滤和图论的结果当做一组特征集来对待,实现算法融合。通过研究时间遗忘规律,得到人类行为习惯由遗忘规律影响,然后进行时间分布(4)算法融合,从决策树开始到树模型的融合过程,然后实现随机森林算法,从而见识了算法融合的强大之处。在研究决策树模型的基础上,对随机森林和基于boosting的回归树模型进行深入的研究。在随机森林对关联特征集训练结果不可信的缺陷下,提出基于随机森林和boosting思想的算法融合思想,将随机森林训练的特征集选取在关联度尽可能小的特征上,根据得到结果与boosting tree的结果做时间平滑,对结果值进行线性回归得到结果集,采用TopN选取最终结果。在本地采用阿里巴巴小规模数据进行验证,提高算法结果,并采用该算法运用在阿里巴巴大数据竞赛上,该模型也取得不错的推荐效果,最后在7274支队伍中,取得了41名的成绩。如果不考虑算法周期,对阿里现有的推荐算法也有了一定的进步。