论文部分内容阅读
随着信息及互联网技术的飞速发展,现阶段人们已经进入了大数据时代,在面对当前大量数据的时候,信息过载产生的问题越来越严重,也给用户在海量信息中选择带来不确定性,为了有效解决此问题,推荐系统逐渐引起人们的重视。推荐系统的出现是以用户为中心进行服务,准确发现他们的兴趣,为用户发现或者推荐需要的信息或服务。进行推荐的时候是根据用户属性、相应的浏览历史以及各种评分等等信息。目前推荐系统主要在电子商务领域有切实应用,通过推荐可以使服务提供者拥有主动,这样会实现精准服务并且给他们带来更多的利润。现如今在推荐系统中使用最广泛最成熟的方法是协同过滤方法,首先计算用户或者服务之间的相似度,利用最近邻进行分析,找到用户们的兴趣,最终将结果推荐给用户。然而此算法在分析用户兴趣的时候也存在着一定的缺点比如冷启动、数据稀疏性以及可扩展问题,针对以上问题在本文中进行了改进。本文主要研究内容如下:第一,针对协同过滤所存在的冷启动以及数据稀疏一系列问题,本文提出了基于混合属性协同过滤方法。在用户进行购物等行为时候会留下自己的信息以及浏览历史等等信息,在本文中将以上的信息进行充分利用,主要将用户的属性或者特征、用户的评分以及用户的浏览历史进行了综合,其中在用户评分方面则是主要使用了用户们之间的共同评分,并且采用了改进过的SVD(Singular Value Decomposition)方法进行数据预处理;用户浏览历史加入了时间戳的函数,找到用户的动态兴趣。将以上三方面分别计算相似度,最后将相似度进行分权重计算,得到最后的相似度,根据相似度找到相应的兴趣,再使用KNN(k-Nearest Neighbor)进行分析,将结果推荐给所需要的用户。第二,为了针对某个用户进行特定的服务推荐,提出了基于随机森林的单用户兴趣发现及服务推荐,在兴趣挖掘的时候则使用了改进过的随机森林,将CART(Classification And Regression Tree)和C4.5进行线性融合,经过将以上方法结合后提高数据分类预测精度,并且提高了推荐结果的精确度。在挖掘用户兴趣的过程中首先将数据进行相应的处理,如果是离散型的数据则使用SVD进行预处理,如果是连续型数据则进行离散化,在进行离散化时候则使用了CADD(Class-Attribute Dependent Discretizer)等算法进行处理,然后进行训练和测试,根据训练和测试结果找到用户的兴趣,最后得出某个用户的推荐列表。第三,提出交叉验证方法将基于混合属性的协同过滤和基于随机森林的推荐结果进行融合,在融合的过程中主要是将数据平均分成N份,将N-1份进行训练,剩余的1份进行测试,训练出用户的兴趣,根据兴趣训练出有效的用户兴趣函数,然后进行测试,得到最终的推荐结果。同时设计了相关实验,选择准确率和召回率作为评价标准,经过大量的实验说明了本文所提出相关方法的有效性。