论文部分内容阅读
随着互联网的发展,电子商务网站为用户提供便捷服务的同时,也带来了数据海量、种类繁多、同质化等问题,阻碍用户找到自己需要的商品,这种现象被称为信息过载。推荐系统应运而生,它通过分析历史数据获取用户尚未购买但是感兴趣的商品,实现“主动”推荐。用户的历史数据可以分为两类:显性反馈和隐性反馈。显性反馈是一类能够直观体现用户兴趣程度的各个指标,例如评分;隐性反馈是隐藏在用户行为背后的规律性信息,例如用户的支付记录、用户的观看记录、商品的流行度等,虽然不能直观地体现用户的喜好,但是可以反映用户的关注点,尤其以用户行为产生的时序信息在时间轴上的变化更能反映用户关注点的波动。传统的推荐系统技术主要通过分析显性反馈生成符合用户需求的商品,但由于显性反馈的稀疏性和不易获取性,不能全面地展现用户的兴趣喜好,而隐性反馈由于数据量丰富逐步成为研究的热点。但基于隐性反馈的推荐系统仍面临三个方面的问题:第一,负样本的匮乏使得隐性反馈难以利用;第二,由于用户兴趣波动,导致隐性反馈具有时间上的动态性,静态分析隐性反馈不利于发掘数据的变化规律,影响推荐的准确度;第三,隐性反馈数据稠密,应用于显性反馈的优化方法并不适用于隐反馈推荐算法,而且隐性反馈可以分为缺失数据和已观测数据,未将两类数据全面考虑降低了数据的利用率,从而难以提供高质量的推荐服务。本文从上述三个方面为研究目标,提出矩阵分解推荐算法,该算法以隐性反馈为主,时序信息为补充,提升推荐的准确性。本文的主要贡献如下:(1)设计并实现TimeMF算法。商品的流行度可以视作隐性反馈,通过分析商品的流行度与时间的关系,发现流行度具有时间上的动态性,并且根据时间点的不同可以分为冷门阶段和热门阶段,本文以此为基础设计了基于动态流行度的非统一加权策略。通过非统一加权策略动态地筛选缺失数据中的负样本,缓解了隐性反馈缺乏负样本的问题;为提高推荐准确率,采用元素级的自适应梯度下降(Adaptive Gradient Descent,简称AdaGRAD)优化目标函数,为特征向量的每一个特征分配学习率,学习率随特征梯度的增加而独立更新。实验在Amazon movie数据集上进行验证。实验结果表明,采用基于动态流行度的非统一加权策略和元素级的自适应梯度下降的TimeMF算法可以提升推荐的准确性,性能优于其他高性能算法。(2)在TimeMF算法的基础上提出TimeMFAW算法。为了更充分地利用已观测数据,简化TimeMF的优化流程,本文提出对应的解决方案。为克服算法性能受初始学习率影响,TimeMFAW采用元素交替最小二乘(Element-wise Alternating Least Squares,简称EALS)代替AdaGRAD。同时,本文提出全数据加权策略,即针对已观测数据和缺失数据分别进行非统一加权,该策略全面分析隐性反馈,提升了隐性反馈的利用率。实验在Yelp数据集上进行验证。实验结果表明,采用全数据加权策略和EALS优化方法的TimeMFAW算法,其性能相较于TimeMF有了显著提升,并且优于其他高性能算法。