论文部分内容阅读
随着当今互联网应用地迅速崛起,广大用户很方便地接收到来自各种应用渠道的大量信息,对信息的需求得到了极大地满足。互联网信息数量激增随之带来的信息过载问题使得互联网信息的利用率降低,用户越来越难以快速地找到自己想要的信息,推荐系统的提出就是为了解决这个问题。协同过滤推荐算法是业界应用最为广泛的推荐算法,该推荐算法能够根据用户在系统中已经产生的行为数据来分析用户的兴趣特征,为用户产生个性化推荐结果。本文立足于实验室“智慧医疗”项目需求,将协同过滤推荐技术应用于健康知识领域。由于每个用户自身健康状况以及关注的健康类别不同,导致每个用户需要的和感兴趣的健康知识也是不同的,因此,从大量的健康知识中,找出用户喜欢的健康知识是非常必要和有意义的。基于以上项目背景以及技术调研,本文开展了如下工作:(1)详细了解推荐系统和推荐算法相关理论知识;重点研究协同过滤推荐算法的工作原理、组成部分以及开源实现框架Mahout的相关实现模块;对基于协同过滤的健康知识推荐系统的功能模型和存在问题进行分析,提出本文的两项重要工作内容。(2)对传统的协同过滤推荐算法的关键问题进行研究,提出对冷启动和数据稀疏性的改进办法;重点引入本文使用的用户兴趣特征模型、健康知识属性特征模型和用户对健康知识的兴趣度模型,提出基于用户兴趣度的改进协同过滤算法,是本文的创新点。该算法通过分析用户兴趣特征数据和健康知识属性数据,结合用户的历史行为数据来综合分析用户对健康知识的兴趣度,改进了传统协同过滤算法的不足,能够得到质量更高的推荐效果。(3)阐述系统的设计目标、需求分析以及架构设计。本文包括四个功能模块:用户界面模块、日志收集模块,推荐引擎模块和数据存储模块。日志收集模块获取用户界面模块所产生的用户行为记录,为推荐引擎模块提供初始的数据源;推荐引擎模块提取日志记录,采用离线数据计算和在线数据处理相结合的推荐流程,实时响应用户需求,为用户推荐其感兴趣的健康知识。(4)结合Mahout,完成了健康知识推荐系统以及改进算法的实验;使用MAE和覆盖率评估标准对改进算法的实验结果进行评价。