基于支持向量机的Top-N协同过滤推荐算法研究

来源 :山西大学 | 被引量 : 3次 | 上传用户:cyuaxl
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
计算机和互联网的急速发展,尤其是移动互联网技术的广泛应用,彻底改变了人们获取和分享信息的方式,海量互联网信息满足用户对信息的多样需求,为用户提供了极大的支持和帮助。然而,海量网络信息也导致用户不得不面临信息过载问题,即人们无法从海量的数据资源中快速地寻找所需的信息。推荐系统分析用户行为数据并建立模型,进而推荐用户可能感兴趣的物品,这一方法可以在一定程度上解决信息过载问题。另一方面,推荐系统是大数据背景下分析和挖掘海量数据的热点研究领域,具有巨大的理论及应用价值,推荐系统已经成为国内外学者的热门研究方向。推荐系统的目标是帮助用户选择一些用户自己可能感兴趣的产品,并将其以合适的形式展现给用户。Top-N推荐的目标是仅为用户推荐N个项目,其少量准确的推荐更符合用户的选择习惯,所以Top-N推荐算法逐渐成为研究热点。但是,经典的Top-N推荐算法存在未充分利用用户负反馈信息以及未考虑用户关系存在差异等问题,本文针对这些问题提出具体的解决策略,具体的研究内容包括:(1)基于正负反馈信息的Top-N推荐模型的研究。现有典型的Top-N推荐算法利用用户正反馈信息对全部项目进行排序,进而选择前N个项目进行推荐。在推荐算法中充分利用用户正负反馈信息,提出一种基于用户正负反馈信息的支持向量机Top-N协同过滤推荐算法(Support Vector Machine Collaborative Filtering Algorithm based on Positive and Negative Feedback,PNF-SVMCF),该算法有效利用用户负反馈信息,过滤用户不喜欢的项目,缩减Top-N推荐项目的规模,同时去除这些项目对Top-N推荐的干扰。(2)基于用户粒分布的PNF-SVMCF模型的研究。考虑到用户关系存在差异,提出利用信息粒分布不同的策略来优化推荐模型,为了验证该策略的有效性,将其应用到优化支持向量机(Support Vector Machine,SVM)的效率研究中,提出一种基于粒分布的SVM加速训练方法(Granular Distribution based SVM,GDSVM),该算法依照粒内正负样本分布选取粒代表点,进而利用代表点训练分类模型。接着使用该策略改进推荐模型,提出一种基于用户粒分布的PNF-SVMCF的推荐算法(User Granular Distribution based PNF-SVMCF,PNF-GDSVMCF),先将推荐系统中用户进行粒化,根据用户粒中是否存在目标用户这样的不同分布来优化评分矩阵,最终完成Top-N推荐。本文针对经典的Top-N推荐算法存在未充分利用用户负反馈信息以及未考虑用户关系存在差异等问题,提出PNF-SVMCF和PNF-GDSVMCF这两种推荐模型,在一定程度上提升了 Top-N推荐模型的精度和效率,同时将粒分布不同的策略应用于优化SVM效率研究中,提出GDSVM模型有效地提升了 SVM分类模型的效率。本文的研究成果对Top-N推荐和SVM分类模型的应用研究具有一定的意义。
其他文献
随着万维网的快速发展,可搜索的在线数据库数量大大增加。这些在线可搜索数据库中的数据往往隐藏在查询接口之后,被称为深层网络。为了更好地利用这些隐藏在查询接口后的深层
科技在进步,时代在发展。在这个"读图"和"听音"的时代,语音技术已不再陌生,让机器开口"说话"也不再是幻想。目前,语音合成的清晰度已达到人们的要求,流畅度却尚待提高,合成的
网格(Grid)是一个分布式和并行计算的支持平台,是一种无缝、集成计算和协同环境。它关注于在动态的、多机构的虚拟组织中协调资源共享和协同解决问题,核心思想是在一组参与问
随着计算机网络技术的迅速发展,人们逐渐从传统的桌面应用程序向在线的web应用程序迁移。web应用程序有方便易用、跨越不同平台等优点,但是用户的数据分散在各种不同的web应用
虚拟人动画是当前计算机图形学领域的一个研究热点,在游戏影视、体育仿真和可视通信等产业都得到了广泛的应用。本文针对虚拟人的脸部建模与动画、人体运动合成等环节开展研究
随着信息化的全面推进和网络技术的迅猛发展,计算机支持的协同工作(Computer Supported Cooperative Work,CSCW)越来越受到人们的青睐。协同编辑是CSCW的研究热点,应用前景广
软计算是指将处理模糊现象的方法与仿生算法结合、解决传统计算不能解决的复杂问题的方法。已有的研究成果显示出软计算特有的价值和作用。本文研究了中介真值程度度量(measu
内河航运在我国交通运输中地位越来越重要,但随着内河船舶数量不断增加,且船舶不断向大型化高速化发展,以及内河环境复杂多变和内河河流弯曲等这些问题给船舶航行安全带来了严峻
软件测试是保证软件质量与可靠性的重要手段,随着软件复杂性的提高,软件测试在软件开发过程中的地位也越来越重要。然而,软件测试过程复杂,且重复性较高。提高软件测试的自动化程
随着微博、微信等社交工具的普及,每个人都成为了社交网络信息的发布者及传播者,这些社交服务也因此积累了大量用户产生的数据信息,其中包括用户的个人档案、社交关系、文本