基于个性化推荐的i创街校园生活平台设计与实现_第1页
基于个性化推荐的i创街校园生活平台设计与实现_第2页
基于个性化推荐的i创街校园生活平台设计与实现_第3页
基于个性化推荐的i创街校园生活平台设计与实现_第4页
基于个性化推荐的i创街校园生活平台设计与实现_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本科生毕业论文(设计) 题 目 基于个性化推荐的基于个性化推荐的 i i 创街校园生创街校园生 活平台设计与实现活平台设计与实现 学 院 计算机学院计算机学院 专 业 计算机科学与技术计算机科学与技术 学生姓名 张旭航张旭航 学 号 20141414220412014141422041 年级 20142014 指导教师 杨波杨波 教务处制表 二 一八年五月十七日 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 基于个性化推荐的基于个性化推荐的 i 创街校园生活平台设计与实现创街校园生活平台设计与实现 专业名称 计算机科学与技术 学生 张旭航 指导老师 杨波 摘要摘要 四川大学大学生创新创意实现平台“i 创街” ,i 代表着 Idea,Impassion,Innovation 即旨在为学生创意、激情、创新提供创业平台。目前,同学 们的生活已经离不开 i 创街,但却缺少一个线上的 i 创街服务平台,为同学们提供足不 出户,实时更新的商业街生活信息。比如:打印店在线接单;店铺在线购买等。本文的最 终目标就是设计和实现基于个性化推荐的 i 创街校园生活平台。 在个性化推荐方面,本文对目前各主流的推荐算法进行分类研究,在此基础上分析了 各推荐算法的优缺点,并进行了横向对比。然后设计适用于本论文实现系统的个性化推荐 算法组合。 i 创街校园生活平台以线上电子商务作为理念,以商业街校园生活区实体店铺为基础, 基于 J2EE 技术开发,运用个性化推荐算法,采用 B/S 基于网页的架构,My SQL 数据库支 撑,将 i 创街校园生活平台系统模块化设计,从需求分析,详细设计,实现测试等方面实 现 i 创街校园生活系统的功能,目标是整合商业街资源,方便学校师生在校生活,同时作 为线下店铺的宣传和补充,填补国内校园生活平台的空白。 最后,本文对目前的工作进行总结和展望,针对本系统现存的问题:高并发访问和推 荐算法效率两个方面,确定未来的研究方向和主要工作。 主题词主题词 i 创街;个性化推荐;电子商务;校园生活平台。 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 Design and implementation of the i-chuang campus life platform based on personalized recommendation Computer science and technology Student:Zhang Xuhang Adviser: Yang Bo Abstract “i-chuang“, a platform for Innovation and creativity of university students of sichuan university, represents Idea, Impassion, Innovation, which aims to provide entrepreneurship platform for students creativity, passion and Innovation. At present, the students life is inseparable from I chuang street, but there is a lack of an online I chuang street service platform, which provides students with the information about the life of the commercial street in real time. For example: print shop online receipt; Shop online purchase, etc. The ultimate goal of this paper is to design and realize the I chuang street campus life platform based on personalized recommendation. Personalized recommendation is based on the users interest characteristics and purchase behavior, and actively recommends users interest information and products to users. In this paper, the current mainstream recommendation algorithms are classified and studied. On this basis, the advantages and disadvantages of each recommendation algorithm are analyzed, and the horizontal comparison is carried out. Then the design of personalized recommendation algorithm for the implementation of this thesis. I-chuang campus life platform with online e-commerce as a concept, at the current campus life service as the foundation, the development situation of information system based on J2EE technology development, the use of personalized recommendation algorithm, using the model Browser/Server technology, SQL Server database support, subdivided into multiple modules,from requirements analysis, detailed design and realize the test analysis to realize functions of the system of campus life, I create the street goal is to integrate the mall resources, convenient school teachers and students in the school life, at the same time as propaganda and supplement of offline store, fill the blank of domestic platform of campus life. Finally, the article summarized and prospected in the current work, and the existing problems in this system: high concurrent access efficiency two aspects, and recommendation algorithm to determine the future research direction and main work. Key Words i-chuang street;Personalized recommendation;Electronic commerce;Campus life platform. 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 目目 录录 1 1 绪论绪论 1 1 1.1 研究背景及意义.1 1.2 国内外研究现状.1 1.2.1 个性化推荐系统 .1 1.2.2 电子商务 .2 1.3 论文主要工作.3 1.4 论文结构.3 2 2 个性化推荐技术研究个性化推荐技术研究 5 5 2.1 个性化推荐概述.5 2.2 个性化推荐技术分类研究.5 2.2.1 基于规则的个性化推荐算法 .5 2.2.2 基于人口统计学的推荐算法 .5 2.2.3 基于协同过滤的推荐算法.6 2.2.4 基于商品特征的推荐算法.7 2.3 个性化推荐算法对比.8 2.4 混合式个性化推荐实现.8 3 3 i i 创街校园生活平台需求分析创街校园生活平台需求分析1010 3.1 系统总体功能需求10 3.2 系统功能用例分析10 3.2.1 游客用户功能10 3.2.2 注册用户功能11 3.2.3 管理员功能12 4 4 i i 创街校园生活平台详细设计创街校园生活平台详细设计1313 4.1 系统整体架构的设计13 4.2 系统功能模块的设计13 4.2.1 前台模块设计14 4.2.2 后台模块设计16 4.3 个性化推荐模块设计18 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 2 页 4.3.1 用户个性化偏好库的构建 18 4.3.2 个性化推荐算法组合 19 4.3.3 辅助推荐算法22 4.3 数据库表的设计23 5 5 系统的实现与测试系统的实现与测试 2626 5.1 系统实现26 5.1.1 主页的实现26 5.2.2 前台客户功能实现27 5.2.3 后台管理功能实现32 5.2.4 推荐功能实现34 5.2 系统测试36 5.2.1 测试36 5.2.2 测试结果38 6 6 总结与展望总结与展望3939 6.1 总结39 6.2 展望39 参考文献参考文献 4040 声声 明明 4242 致致 谢谢 4343 附录附录 1 1 重要英文文献译文重要英文文献译文4444 附录附录 2 2 重要英文文献原文重要英文文献原文5151 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 1 页 1 绪论绪论 1.11.1 研究背景及意义研究背景及意义 随着人们对互联网技术的深入研究和网络信息化的普及,人们越来越喜欢在线购物。 它打破了传统商业模式中的时空限制,给用户带来了很大的便利。电子商务正在成为我 国市场经济中一个重要的经济增长点和新领域,具有无可替代的优势力量1。作为四川大 学的学生,我们 i 创街的发展正在如火如荼地进行。作为大学自主创新创业实践基地和全 国高校类首批双创示范基地,我校“任性”地把商业街变成学生的创业平台,舍弃可观 的出租收入,鼓励学生利用商业街的平台进行创新创业。i 代表着 Idea,Impassion,Innovation 即旨在为学生创意、激情、创新提供创业平台。目前,同学 们的生活已经离不开 i 创街,但却缺少一个线上的 i 创街校园生活平台。该平台可以将商 业街的各学生店铺信息汇总,为同学们在线提供商业街店铺商品的信息,并在线下单购 买。这样,我们的 i 创街就会更加完善,也会给同学们带来更大的便利。 当线上生活平台通过网络实现海量商品展现时,信息过载问题也随之衍生出来。如 何让用户在海量信息面前快速获得想要的商品信息,也是该平台系统需要解决的问题, 即如何解决信息过载问题。方法有二:信息检索和信息过滤。信息检索已经普及到我们 的日常生活中了,用户经常使用搜索引擎来寻找自己所需要的资源。但是,传统的搜索 引擎技术并未考虑到用户的特性,返回给用户的是完全同样的资源信息。而且由于反馈 的信息量也非常大,使用搜索引擎的用户依然很难选择到自己真正感兴趣的资源,也就 是说面对浩瀚的海量信息使得以往单纯依靠用户主动寻找的信息检索模式已不能满足实 时、高效的需求。因此信息过滤就显得尤为重要。这就需要我们能够给用户提供一种推 荐和引导并行的服务-个性化推荐系统。它对用户的购买和搜索习惯进行深层次的收集 和挖掘,通过预测用户对项目的喜好程度来为用户进行信息的个性化推荐。 综上,一个基于个性化推荐的 i 创街智慧校园生活平台应运而生,为学生的创新和创 业搭建更加广阔的舞台。 1.21.2 国内外研究现状国内外研究现状 1.2.1 个性化推荐系统 个性化推荐系统已经有二十年左右的发展历史了,早期主要用于股票报价、目录推 荐等方面。随着技术的日趋成熟,个性化推荐技术已经应用到新闻、电商、视频等各个 领域目前国外的个性化推荐技术日趋成熟,而且广泛用于大型电商平台,比如 Amazon、Ebay、Expedia 等。例如在亚马逊购物系统中,如果你是登陆会员,系统可以根 据你最近查看的商品以及购买行为进行针对化的推荐;如果你是亚马逊的游客用户(即 没有账号密码)登陆,则会推荐近期热销商品。亚马逊推荐结果如图 1-1 所示。 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 2 页 图图 1-1 亚马逊推荐页面亚马逊推荐页面 Amazon 开发了自己的算法,也就是基于商品和商品的协同过滤算法2。该算法的优 点很明显,可以对用户的购买行为分析之后迅速做出推荐。因为算法的关键点是根据商 品与商品的相似度找出“邻居”商品,然后把排名最靠前的几个商品推荐给用户,以达 到精准推荐的目的3。 与国外个性化推荐系统的发展相比,我国的个性化推荐研究开始得相对较晚。目前, 其主要应用集中在几家大型的互联网公司,例如淘宝,京东,百度等,普及率和应用覆 盖不广。由于成本较高,核心技术不了解,极大的限制了国内个性化推荐系统的发展, 也一定程度上制约了国内市场对个性化推荐系统的需求4。国内个性化推荐系统的发展与 成长还是相当迅速的,但同时也存在着各种问题。现在很多的科研机构和高等院校都在 对个性化推荐系统的进行研究,这将非常有利于推动我国的个性化推荐技术的发展。 1.2.2 电子商务 互联网起源于国外,在线购物平台同样起源于国外,但振兴于国内5。总体来看,电 子商务的发展经历了以下三个阶段: 第一阶段是电子商务发展的一个雏形,计算机科学的不断发展,企业逐渐使用信息 化办公,实现并搭建了一些小型的门户网站,但是由于当时计算机科学和硬件技术发展 的限制等,开发人员只能编写静态的展示页面,功能和结构上比较单一,只是向用户进 行展示等。消费者只能简单的查看信息和添写简单的信息,数据处理的规模很小;第二 阶段是电子商务的成长期,在本世纪初,软件不断的创新和迭代,同时硬件方面也取得 了很大的进步,Java,PHP 等高级语言和 Oracle,My Sql 数据库管理软件的出现,使得 像亚马逊和阿里的天猫淘宝等大型在线购物平台取得了巨大的发展6。消费者不仅可以查 看商品,还可以和客服沟通,系统管理员也不必依赖程序员进行相应的操作,就可以实 现对购物系统后台的管理。第三阶段,此时的电子商务已经处于一个成熟阶段,开始面 向多元化的方向发展,系统的功能比以前复杂的多,电商网站的流量越来越大,对后端 系统的压力也会逐渐变大。电商平台中在某个时间段可能存在洪峰点。比如电商平台推 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 3 页 出的“双 11”大促等活动,会给系统带来巨大的挑战。为了满足系统的高并发,防止用户 巨大的请求洪峰致使服务器挂机,减少给用户带来的不便和企业的损失,研究一个稳定 性好抗压性强的电商平台是非常必要的。 若将个性化推荐技术引入电子商务系统,不仅能够改善系统的用户体验,而且可以 有效保留客户,提高客户的忠诚度,防止客户流失,与客户建立稳定关系,可谓互利双 赢。 1.31.3 论文主要工作论文主要工作 本文结合自己的大学生活,实现一个含有个性化推荐功能的校园商业街生活购物平 台。主要研究内容包括个性化推荐技术,实现 JavaWeb 校园在线生活平台系统: (1)个性化推荐技术:本文研究了目前各主流的推荐算法,横向对比了这几种推荐 算法的优缺点。用软件工程的方法,对个性化推荐技术的研究进行分析,通过将这些主 流推荐算法优缺点相互弥补,针对个性化推荐系统可能面对的冷启动问题,构建了一个 混合式推荐算法模块,包含了两组推荐算法的组合,一组为基于个性化数据的推荐算法 组合,主要是分析用户行为实现个性化精准推荐;另一组采用非个性化数据的辅助推荐 算法,推荐热门爆销商品,解决冷启动问题,使系统功能更加健壮。 (2)在线生活平台的实现:本系统采用 SSM 框架,主要有添加店铺,添加商品, 订单配送,个性化推荐等后台管理功能和注册登录,商品购买,详情查看等客户使用功 能。同时分析研究 J2EE 平台的相关技术和 MVC 模式,对系统中的业务模块实现解耦操 作。 1.41.4 论文结构论文结构 根据研究内容,本文的组织结构如下: 第 1 章:“绪论” 。主要介绍了本文研究主题的背景和意义,综述了国内外相关研究 的发展情况。最后介绍了实现基于个性化推荐的 i 创街生活平台的主要研究工作和论文的 组织结构。 第 2 章:“个性化推荐技术研究” 。本章主要对目前各主流的推荐算法进行分类研究, 在此基础上分析了各推荐算法的优缺点,并进行了横向对比。然后设计适用于本论文实 现系统的个性化推荐算法组合。 第 3 章:“i 创街校园生活平台的需求分析” 。介绍了在线购物系统的几个模块,大 体分为前端门户模块,后端管理模块,个性化推荐模块,分析了系统的功能以及功能用 例图展示。 第 4 章:“i 创街校园生活平台的详细设计” 。根据网上商城系统的设计思想,描述 了商业街校园生活平台的结构设计,主要从整体架构、功能模块、数据库表方面进行设 计。其中也包括系统个性化推荐模块的详细设计。 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 4 页 第 5 章:“系统的实现与测试”。本章展示了基于个性化推荐的 i 创街生活平台的 实现效果,并给出了系统实现截图和关键代码。然后对系统分别进行前后端的使用测试 并对系统做出评价。 第 6 章:“总结与展望”。本章对自己所做的工作及成果作一总结,包括个性化推 荐和校园生活平台实现两方面;然后根据系统现存的问题对未来研究方向进行展望。 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 5 页 2 个性化推荐技术研究个性化推荐技术研究 2.12.1 个性化推荐概述个性化推荐概述 无论线上线下,商品种类和数量都是海量的存在,用户在成千上万的商品中筛选出 自己喜欢、想要的商品将会花费很多时间,影响用户体验。如果有了商品的个性化推荐, 将会使用户购物时间减少许多,具有导购的作用。 个性化推荐的功能目标应该有以下几个:(1)能够通过对用户行为数据的分析,为 用户生成推荐商品列表;(2)能够解决冷启动问题。这反映的是推荐系统的健壮性。 评估个性化推荐功能的主要指标:(1)预测准确度(精度):也就是推荐系统计算出 的用户对于推荐商品的预测评分的准确性;(2)覆盖率:是指系统为单个用户推荐商品 的数量在评估集的命中数量占评估集中用户实际购买商品数量的百分比7。测试评估一个 推荐系统,以上两个指标必须同时兼顾。若是仅考虑推荐系统覆盖,其问题在于该项指 标只能反映命中商品的情况,这就会造成虽然推荐给用户商品了,但是该商品用户其实 根本就不喜欢;相反的,如果只关心预测准确度,虽然表面上看系统的推荐精度会很高, 但实际上,如果覆盖率很低的情况下,这种高精度的并没有太大的意义,可能仅仅命中 了个别商品,这样的推荐系统运行效果不佳。 2.22.2 个性化推荐技术分类研究个性化推荐技术分类研究 2.2.1 基于规则的个性化推荐算法 基于关联规则的推荐系统的首要目标是挖掘出关联规则,也就是那些同时被很多用 户购买的物品集合,这些集合内的物品可以相互进行推荐。在超市中,一般把同品类产 品放到临近的位置或者把销量高的产品放在一起,而在线上环境中,就是类比线下超市 环境,把“邻居商品”放在关联商品栏目中推送给用户。 该算法的优点是容易理解,研究基础广泛且成熟,支持其实现的软件丰富,但缺点 却十分明显:计算量较大,不可避免的存在冷启动和稀疏性问题。 2.2.2 基于人口统计学的推荐算法 的推荐算法是比较简单的,只需要根据用户信息找出相似用户,然基于人口统计学 后将相似用户进行推荐。如下图 2-1 所示,系统首先会根据用户的属性喜爱的其他物品 建模,比如用户的年龄,性别,兴趣等信息。根据这些特征计算用户间的相似度。比如 系统通过计算发现用户 A 和 C 比较相似,就会把 A 喜欢的物品推荐给 C8。 该算法的优势在于由于不使用当前用户对商品的历史喜好数据,所以对于新用户来 说不存在用户冷启动的问题,因此该算法常常用于解决用户冷启动问题。但缺点也正是 因为与用户历史行为无关,推荐效果较差。 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 6 页 图图 2-1 基于人口统计学推荐算法原理图基于人口统计学推荐算法原理图8 2.2.3 基于协同过滤的推荐算法 协同过滤是推荐算法中最经典最常用的,分为和基于商品的协基于用户的协同过滤 同过滤。 2.2.3.12.2.3.1 UserCF基于用户的协同过滤推荐算法 基于用户的协同过滤推荐的基本原理是,建立与用户喜好类似的“邻居用户群” ,然 后采用为当前用户推荐 K 个用户的偏好商品。下图 2-2 给出了原理图。K邻居算法 图图 2-2 基于用户的协同过滤推荐算法原理图基于用户的协同过滤推荐算法原理图9 假设用户 A 喜欢物品 A,物品 C,用户 B 喜欢物品 B,用户 C 喜欢物品 A,物品 C 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 7 页 和物品 D;从这些用户的历史喜好信息中,可以发现和的喜好是比较类似的,A用户C用户 同时还喜欢,那么可以推断可能也喜欢,因此可以将推C用户D物品A用户D物品D物品 荐给用户 A9。 基于人口统计学的推荐机制是根据用户本身属性找相似用户,而基于用户的协同过 滤机制是根据用户行为。 2.2.3.22.2.3.2 ItemCF基于项目的协同过滤推荐算法 基于项目的协同过滤推荐算法,通过用户对不同项目的评分来评测项目之间的相似 性,基于项目之间的相似性做出推荐10。简单来讲就是:给用户推荐和他之前喜欢的物 品相似的物品。下图 2-3 给出了原理图。 假设用户 A 喜欢物品 A 和物品 C,用户 B 喜欢物品 A,物品 B 和物品 C,用户 C 喜 欢物品 A,从这些用户的历史喜好可以分析出物品 A 和物品 C 时比较类似的,喜欢物品 A 的人都喜欢物品 C,基于这个数据可以推断用户 C 很有可能也喜欢物品 C,所以系统会 将物品 C 推荐给用户 C。 图图 2-3 基于项目的协同过滤推荐算法原理图基于项目的协同过滤推荐算法原理图 两种协同过滤推荐方法,前者侧重用户行为发掘喜好推荐,后者侧重商品相似度进 行推荐11。都可以很好的发掘用户的兴趣喜好,推荐效果依赖用户历史数据的准确性, 但同时也都存在冷启动问题。 2.2.4 基于商品特征的推荐算法 基于商品特征的推荐系统,与主流的基于邻域的协同过滤推荐系统不同。并不是通 过集体智慧式的协同,而是基于商品的内容,针对商品本身所具有的属性进行推荐计算, 故也称之为基于内容的推荐算法12。 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 8 页 系统首先对物品(图中举电影的例子)的属性进行建模,图中用类型作为属性。在 实际应用中,只根据类型显然过于粗糙, 还需要考虑演员,导演等更多信息。通过相似 度计算,发现和 C 相似度较高,是爱情题材电影。系统还会发现用户 A 喜欢A电影 ,由此得出结论,用户 A 很可能对电影 C 也感兴趣。于是将电影 C 推荐给 A。其A电影 算法示意图如下图 2-4 所示: 图图 2-4 基于商品特征的推荐算法原理图基于商品特征的推荐算法原理图 此算法的优势在于:因为直接针对物品的本身的特征属性进行商品间两两相似度计 算,所以对于新商品来讲没有商品冷启动的问题,而且由于关注商品的内在属性而不是 采用邻居式推荐,推荐精度较高13。但这个方法的缺点是其领域相关度高,需要预知商 品特征,而如何从数据中抽取特征数据这本身就是信息获取技术中的一个问题。另一大 问题就是预测评分的计算速度较慢。 2.32.3 个性化推荐算法对比个性化推荐算法对比 评估推荐算法的好坏,正如前面 2.1 中所述有精度和覆盖率等指标,下面对上述推荐 算法进行横向对比。结果如表 2-1 所示: 表表 2-1 主流推荐方法横向比较表主流推荐方法横向比较表 通过横向比较各种算法的优缺点发现,解决各种推荐算法的问题最好的办法是组合, 混合多种推荐算法实现推荐效果。本文在下面将运用多种推荐算法混合的技术来达到个 性化推荐。混合推荐技术中包括两部分: 个性化推荐组合和辅助推荐算法。个性化推荐组 合包括加权 Slope One 推荐法和基于商品特征的推荐算法。辅助推荐算法采用热门商品推 荐算法,主要用以解决个性化推荐算法组合遗留的冷启动问题。 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 、 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 9 页 2.42.4 混合式个性化推荐混合式个性化推荐设计设计 通过上述的对比和分析,本系统将采用多种推荐算法混合的推荐技术。混合式推荐 模块是本推荐系统的核心,内部主要分为两大部分:一部分是个性化推荐算法组合,包 括加权 Slope One 推荐算法和基于商品特征的推荐算法两个算法;另一部分是辅助推荐算 法,即热门商品推荐算法,主要用以解决个性化推荐算法组合遗留的冷启动问题。整体 结构图如下图 2.5 所示: 图图 2-5 混合式推荐模块整体结构图混合式推荐模块整体结构图 这样设计的缘由是推荐系统想要获得优良的推荐效果必须使用个性化推荐算法。这 也是本系统努力获得模拟用户评分的意义所在。个性化推荐算法是建立在用户对于商品 的评分的基础上,在本系统中其数据源基于用户的历史购物行为记录,而用户的行为正 反映了其个性化偏好14。但是单独的个性化推荐算法组合,依然存在着用户冷启动问题。 这包括两方面:未有购物记录的注册用户和未注册用户两种情况。从系统的健壮性考虑, 必须解决这样的问题。于是本系统在个性化推荐算法组合的外围引入了辅助推荐算法来 解决以上两种用户冷启动问题。具体设计实现见第四章。 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 10 页 3 i i 创街校园生活平台需求分析创街校园生活平台需求分析 3.13.1 系统总体功能需求系统总体功能需求 实现 i 创街校园生活平台,首先要对该系统进行需求分析,确定系统的用户和每种用 户的功能用例。系统总体功能需求图如 3-1 所示: 图图 3-1 i 创街校园生活平台功能需求图创街校园生活平台功能需求图 该系统针对顾客和管理员分前台和后台,前台主要业务逻辑是实现顾客订购商品, 选择不同方式获得商品;顾客还能够注册,登录,购物,查看订单,编辑个人信息等。 后台实现商店管理,这些管理职能主要分为:用户管理,订单管理,商品管理,店铺管 理。后台管理员可通过系统客服接口和顾客取得沟通,也可以通过获得顾客的注册信息 以其他方式与其获得联系。 3.23.2 系统功能用例分析系统功能用例分析 3.2.1 游客用户功能 游客用户:只提供浏览商品和查询商品的功能,向游客展示商品的信息,如需购买, 请注册;游客用户的用例图如下图 3-2: 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 11 页 图图 3-2 游客用户对应的用例图游客用户对应的用例图 3.2.2 注册用户功能 注册用户:在游客的基础上添加登录,注册,下单购物,查看订单,修改个人信息等 功能,并且数据会同步至服务器后台。 具体是: (1)实现商品预览,商品明细,分类检索功能;主要是显示最新商品,热卖商品, 以及打折促销的商品;同时对用户进行个性化推荐商品。 (2)购物车部分:现添加、删除商品,商品数量修改,清空购物车,结算功能; (3)订单部分:实现订单确认,删除订单,查询功能;订单列表明细 注册用户的用例图如下图 3-3: 图图 3-3 注册用户的用例图注册用户的用例图 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 12 页 3.2.3 管理员功能 管理员用户:主要在后台部分操作,包括,商品管理,订单管店铺管理用户管理 理等功能,对注册用户的一些行为作出响应,处理订单信息,并且管理商品信息,并进 行辅助商品推荐操作。 管理员的用例图如下图 3-4: 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 13 页 图图 3-4 管理员用户对应的用例图管理员用户对应的用例图 以上对 i 创街校园生活平台的需求进行了相应的分析,通过对不同用户的功能需求分 析和用例图的绘制,更加理清了本系统实现的功能和设计思路。用例图分为三种用户角 色,游客(未注册) ,注册用户,后台管理员。 4 i i 创街校园生活平台详细设计创街校园生活平台详细设计 4.14.1 系统整体架构的设计系统整体架构的设计 本校园生活平台采用 J2EE 架构,Web 采用了 SSM 框架,数据库端使用 MySql 的关 系数据库,解决系统的耦合关系,使资源得到最优化配置。SSM 框架是 Spring,SpringMVC 和 MyBatis 框架的整合15。整个系统按 MVC 三层对相关功能模块进 行分层开发,在视图层,通过前台的 click 事件发送业务请求,只需要展示数据和进行相 应一些逻辑的验证。控制层即中转层,Spring MVC 中,通过 Dispathcher Servlet 块对不 同请求的分发和处理。在业务逻辑层,Spring 和 Spring MVC 进行配合操作,前端显示 层把数据封装成 model,然后通过控制器,对不同请求进行转发,最终业务进行处理。在 业务逻辑处理完成之后,视图展示。数据持久层,通过 My Batis 的服务,可以把数据表 中的记录和 java bean 进行相应的映射。采用 MVC 设计模式可以方便开发者的开发,允 许更改视图层代码而不用重新编译模型和控制器代码,允许使用各种不同样式的视图来 访问同一个服务器端的代码,重用性高16。 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 14 页 图 4-1 为 i 创街校园生活平台总体架构图。 图图 4-1 i 创街校园生活平台总体架构创街校园生活平台总体架构 4.24.2 系统功能模块的设计系统功能模块的设计 经过需求分析可以得出本校园生活平台大体分为三个模块:前台商城模块,后台管 理模块,个性化推荐模块。下面对这三大模块进行系统性的详细设计。 4.2.1 前台模块设计 对于前台商城模块,游客和注册用户都可以访问,并实现对商品的一些列操作。 (1)当游客进入本平台系统时,会有注册会员,浏览商品和查询商品的功能。下图 4-2 为游客用户对应功能的活动图,图 4-3 为游客用户查看商品的时序图。 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 15 页 图图 4-2 游客用户查看商品的活动图游客用户查看商品的活动图 图图 4-3 游客用户查看商品的时序图游客用户查看商品的时序图 (2)当注册用户进入本平台后,除了拥有浏览查看商品的功能外,还有会员登录, 添加购物车,商品推荐,修改个人信息,下单购物等一系列功能。图 4-4 为注册用户购物 活动图,如下图。 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 16 页 图图 4-4 注册用户购物活动图注册用户购物活动图 图 4-5 为注册用户登录、加购、下单、支付的总时序图,如下: 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 17 页 图图 4-5 注册用户登录、加购、下单、支付总时序图注册用户登录、加购、下单、支付总时序图 4.2.2 后台模块设计 i 创街校园生活平台的后台管理系统主要使用者为平台管理员,主要的功能有:登录, 商业街店铺管理,商品信息管理,用户管理,订单管理,辅助推荐商品等。 图 4-6 为管理员对商品信息进行管理的活动图,主要操作流程是先登陆管理员账号, 搜索商品 ID,会显示商品的信息,管理员提交修改商品的信息请求,然后修改信息更新 数据库,商品修改后的数据呈现于前台系统页面。 图图 4-6 管理员商品信息管理活动图管理员商品信息管理活动图 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 18 页 图 4-7 为管理员用户登陆操作时序图,如下: 图图 4-7 管理员用户登陆操作时序图管理员用户登陆操作时序图 4.34.3 个性化推荐模块设计个性化推荐模块设计 个性化推荐模块其实也可以属于注册用户的前台功能模块,因为个性化推荐功能主 要是针对我们的注册用户开展的。对于游客用户,我们会通过辅助推荐方法为其推荐热 卖产品、最新产品等。用户个性化偏好库,建立在通过统计和分析用户历史购物记录转 化为显式评分的方法的基础上,包含了作为推荐计算的数据源的两个二维评分矩阵;混 合式推荐模块,结合多种推荐方式的组合进行推荐计算,在不同层面解决了冷启动问题: 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 19 页 4.3.1 用户个性化偏好库的构建 在进行推荐计算之前,必须根据推荐算法的需求组织好相应的数据资源。由于本系 统要为有行为记录的用户提供个性化推荐服务,所以必须根据用户的历史购物行为为每 个用户构建一个能够反映其消费个性的偏好库。整个用户个性化偏好库的构建过程主要 是生成用户-商品二维评分矩阵和用户-商品特征二维评分矩阵。 1、用户-商品二维评分矩(以下用 UIM 表示)是表示用户偏好的核心数据。本矩阵 的构建过程即是将用户历史购物记录转化为模拟的用户显式评分的过程,详细步骤如下: 首先,根据用户的购物记录,查询并统计用户 i 对于单一商品 j 的购买数量,再除以 时间间隔得到用户 i 对于商品 j 的购买频率 Freq(i,j) ,即: Freq(i,j) =Num(i,j)/Day(i,j) (1) 其中,Num(i,j)为用户 i 对商品 j 的购买数量,Day(i,j)为用户 i 第一次购买商品 j 到最后 一次购买该商品的时间间隔,单位为天。 对比该商品 j 的平均购买频度 ( , )i j Freq,得到加权评分 R(i,j)。商品 j 平均购买频度的计 算公式如下: ( , )i j Freq= ( , )i j Freq /N(j) (2) 其中,N(j)为购买过该商品的用户总数量。 所以,用户 i 对商品 j 的加权评分 R(i,j) 就可以计算出来: R(i,j) =(Freq(i,j) - ( , )i j Freq)/ ( , )i j Freq (3) 从上面计算公式可以看出:若用户 i 对于商品 j 的购买频度大于平均购买频度,则加 权值 R(i,j)为正,反之为负。该加权值 R(i,j) 既反应了用户对于商品的需求,也算是用户的 兴趣和关注方向,R(i,j) 越大,则需求越大,用户对于该商品甚至类似的商品会有很大的兴 趣。 因此,用户购买过商品可以看作用户对于商品有一定的兴趣,赋予一个初始值 3(5 分 制),加权值 R(i,j)反映了后期用户对于该商品的兴趣修正,其值不超过 2,最终的模拟显式 评分公式如下:IR(i,j) =3+R(i,j)。 (4) 最后根据上述公式计算,得到一系列的用户对于商品的评分 IR(i,j),就可以构建一个 用户-商品二维评分矩 UIM。 UIM = (5) 11121 21222 12 12 . . . . n n iiin mmmn IRIRIR IRIRIR IRIRIR IRIRIR 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 20 页 其中,m 为用户总数,n 为商品总数,IR(i,j) 表示第 i 个用户对第 j 个商品的评分值。 2、商品-特征布尔型矩阵是商品相似度关系的核心数据。商品-特征矩阵(以下用 IFM 表示)用于表示商品 i 是否具有特征 J 的集合,每一行即是商品的特征向量表示,在 数据库中的是以特征字符串的形式存在。 IFM = (6) 其中,m 是商品总数,n 是特征总数,IF(i,j)的值表示第 i 个商品是否具有第 j 个特征, 值为 1 时表明具有该特征,为 0 时表明不具有该特征。 4.3.2 个性化推荐算法组合 4.3.2.14.3.2.1 加权加权 SlopeSlope OneOne 推荐算法推荐算法 Slope One 推荐算法的基本思想来自于简单的一元线性模型 17。已知 wf vvb 两个训练点和,利用该线性模型最小化预测误差的平方和,可以获得: i w i v b = (7) 根据公式(7)获取 b 的取值后,对于新的数据点 , 则可以利用公式计算出 的预 new v new w 测值: newnew wbv Slope One 的基本原理图如下 4-8 所示: 图图 2.6 Slope One 基本原理图基本原理图 根据 Slope One 的基本原理,可以定义商品 i 相对于商品 j 的平均偏差: (8) 其中,表示同时对和有评分的用户,而 表示集合中元素数 , ( ) j i Si商品j商品()Card ii iw v n 11121 21222 12 12 . . . . n n iiin mmmn IFIFIF IFIFIF IFIFIF IFIFIF , , ( ) , ( ) j i ji j i u S j i uu dex card S 四川大学本科毕业论文基于个性化推荐的 i 创街校园生活平台设计与实现 第 21 页 量。 由公式(8)得到了 dexj,i ,然后可以由 dexj,i+ ui 获得用户 u 对商品 j 的预测值。然后把所 有的可能预测值加起来取平均: (9) 其中 表示所有已经给予评分且满足条件 (非空)的商品集合。 j Ru用户ij 且 , ( ) j i S 当数据集比较密集时,近似如下: (10) 则可以把预测值平均公式化简得: (11) Slope One 中在计算商品 i 相对于商品 j 的平均偏差 时没有考虑到使用不同的 , j i dev 用户数量平均得到的,2000 个用户和 20 个用户评分的商品其的值可信度是不同 , j i dev dev 的18。所以需要对公式(11)进行一个修正,计算最终的平均使用加权: (12) 其中, , ( ) j ij i ccard S 至此,Slope One 的算法原理完成了。下面分析一下加权 Slope One 推荐算法的运行 流程。首先读入用户一商品二维评分矩阵,计算出差值矩阵,再根据差值矩阵计算出均 差矩阵,保存在内存中。同时根据读入的用户商品二维评分矩阵分解出用户已购买商 品集合和用户未购买商品集合,分别进行保存。遍历用户未购买商品集合,根据构建出 的均差矩阵计算出用户对于商品的预测评分,流程结束。 加权 Slope One 推荐算法的流程图如下图 4-9 所示: , 1 ( )() () j jj ii i R j P udexu card R ( )( ) ( ( )() ii i S ui S u j uu u card S ucard R 1 , 1 ( ) () j S jj i i R j Puudex card R , ( ) 1 , ( ) () ( ) j iij i i S uj wS j j i i S uj dexu c Pu c 四川大学本科毕业论文 基于个性化推荐的 i 创街校园生活平台设计与实现 第 22 页 图图 4-9 加权加权 Slope One 推荐算法流程图推荐算法流程图 4.3.2.2 基于商品特征的推荐算法基于商品特征的推荐算法 基于商品特征的推荐算法,与主流的协同过滤推荐算法不同。并不是通过集体智慧 式的协同,而是基于商品的内容,针对商品本身所具有的属性进行推荐计算,故也称之 为基于内容的推荐算法19。其实现方法主要是直接遍历用户未购买商品,每次读入一件 用户未购买商品,找到该用户所有已购买的商品,然后根据其特征向量两两计算相似度, 根据相似度进行排序,设定阀值,返回相似度高的 Top-k 件商品作为该商品的邻居商品, 采用的是 KNN 思想,加权计算出预测评分。 该方法的核心思想在于相似度计算,一般采用余弦相似度计算方法20,公式如下: (13) 其中,向量i和向量 j 分别表示商品i和商品j在 n 维商品空间上的特征向量, ( , )sim i j表示商品i和商品j之间的相似度。然后选取相似度最高的 Top-K 个商品作为商 品i的邻居商品。 最终,用户 u 某个商品i的预测评分计算公式如下: (14) 其中, ( , )u j R为用户u 对于商品 j 的评分, ( , )sim i j为商品i和商品j的相似度。 基于商品特征的推荐算法流程图如下图 4- 10 所示: ( , ) i j sim i j ij ( , ) ( , )

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论