基于SpringBoot的图书推荐系统的设计和实现计算机科学和技术专业

上传人:文*** 文档编号:197112292 上传时间:2023-04-03 格式:DOCX 页数:69 大小:1.89MB
收藏 版权申诉 举报 下载
基于SpringBoot的图书推荐系统的设计和实现计算机科学和技术专业_第1页
第1页 / 共69页
基于SpringBoot的图书推荐系统的设计和实现计算机科学和技术专业_第2页
第2页 / 共69页
基于SpringBoot的图书推荐系统的设计和实现计算机科学和技术专业_第3页
第3页 / 共69页
资源描述:

《基于SpringBoot的图书推荐系统的设计和实现计算机科学和技术专业》由会员分享,可在线阅读,更多相关《基于SpringBoot的图书推荐系统的设计和实现计算机科学和技术专业(69页珍藏版)》请在装配图网上搜索。

1、摘 要网络信息技术的高速发展,使得高校图书馆的服务空间日益扩大,依据个人特点的针对性服务逐渐成为新服务模式的主导趋势。对于大多数用户而言,很难在大量的学术图书馆中快速找到他们想要的材料。另外,随着时代的不断发展,越来越多的新兴学科,学科的融合更是普遍。各种专业知识的爆炸性增长使大学图书馆必须扩大书籍的储存量,这是为建立和实施图书馆定制推荐系统提供了基本条件。个性化图书推荐服务改变传统图书馆被动服务方式,能根据用户的兴趣偏好主动地向用户推荐图书。本文的重点是依据用户的多样需求追踪图书的最近资源,且及时告知用户,实现个性化的服务,且提高资源的使用效果,改变图书馆的服务模式。从被动到主动。协同过滤推

2、荐算法的实现,可以让大学的师生们更方便快捷,且准确的得到自己需要的书目。从而避免了搜索时间造成的浪费。本文所做的工作主要包括以下几点:(1)本文提出了对冷启动问题的优化、对数据稀疏性问题的完善、对缺失数据的处理操作。(2)本文既说明了涉及的相关技术,同时进行了可行性和准确性评估,并讨论了个人定制书籍推荐中使用的推荐算法和混合算法。(3)本文结合推荐系统的实际需求程度,基于SpringBoot的图书推荐系统的研究与实现。关键词:SpringBoot、推荐算法、LFMIIAbstractWith the rapid development of network information techno

3、logy, the service space of university library is expanding day by day, and personalized service has gradually become the mainstream of new service mode. For most users, it is difficult to find the information they need in the large collection of university library. In addition, with the continuous d

4、evelopment of the times, there are more and more new majors, and the professional integration is becoming stronger and stronger. The expansion of all kinds of professional knowledge makes university libraries have to expand their own knowledge storage, which also provides the basic conditions for th

5、e construction and implementation of library personalized recommendation system. Personalized book recommendation service has changed the passive service mode of traditional library, which can actively recommend books to users according to their interests.The problem to be solved in this paper is to

6、 track the latest library resources according to the different needs of users, inform users at the first time, realize the optimization of personalized service and resource utilization, and change the library service mode from passive to active. Collaborative filtering recommendation algorithm enabl

7、es college teachers and students to find the knowledge books they need more accurately and faster, reduces the search pressure of the library and saves a lot of time. The work of this paper mainly includes the following points.(1) In this paper, the optimization of cold start, the improvement of dat

8、a sparsity and the processing of missing data are proposed.(2) This paper discusses the technology involved, analyzes its feasibility and accuracy, and discusses the personalized book recommendation algorithm and hybrid algorithm.(3) Combined with the actual demand level of book recommendation syste

9、m, this paper studies and implements a Book Recommendation System Based on springboot.Key words: SpringBoot, recommendation algorithm, LFMIII目 录摘 要IAbstractII目 录III图目录VI表目录VII第一章 绪论81.1 选题背景及意义81.2 国内外研究现状分析91.2.1 图书管理系统的研究现状91.2.2 推荐系统的研究现状101.2.3 研究综述111.3 研究目标及研究内容121.3.1 研究目标121.3.2 研究内容121.4 本文

10、组织结构12第二章 系统需求分析142.1 系统可行性分析142.1.1 经济可行性142.1.2 操作可行性152.1.3 技术可行性152.2 系统角色需求分析162.3 系统功能需求分析172.3.1 图书借阅需求分析172.3.2 图书归还需求分析172.3.3 图书推荐需求分析182.3.4 系统管理需求分析192.4 系统非功能性需求分析20第三章 关键技术与难点分析223.1 推荐系统简介223.2 相关推荐算法223.2.1 基于用户推荐233.2.2 基于项目推荐253.2.3 混合推荐263.2.4 LFM算法273.3 系统关键问题及解决方案293.3.1 冷启动问题29

11、3.3.2 数据稀疏性问题303.3.3 数据缺失问题31第四章 系统总体设计344.1 系统设计目标344.2 系统总体架构设计354.3 系统总体功能结构设计364.4 系统网络架构设计374.5 系统数据库设计384.5.1 MySQL数据库384.5.2 实体E-R图设计394.5.3 数据库表结构设计404.6 系统数据备份及恢复设计424.7 系统接口设计43第五章 系统详细设计与实现445.1 系统开发工具及环境445.1.1 开发工具445.1.2 开发环境445.2 系统设计原则445.3 系统功能模块详细设计与实现455.3.1 图书借阅详细设计与实现455.3.2 图书归

12、还详细设计与实现485.3.3 图书推荐详细设计与实现495.3.4 系统管理详细设计与实现51第六章 系统测试546.1 系统部署546.2 系统测试方案556.3 系统功能测试566.4 系统性能测试576.5 系统测试结果58第七章 总结与展望60参考文献61附录64致谢69V图目录图1 管理员用例图16图2 读者用例图16图3 图书借阅业务流程图17图4 图书归还业务流程图18图5 图书推荐业务流程图19图6 系统管理业务流程图20图7 推荐系统模块之间的关系22图8 推荐系统的推荐流程23图9 用户-项目图24图10 形成邻居集的过程25图11 项目-用户图26图12 混合推荐技术的

13、组合方式27图13 LFM模型28图14 系统总体架构图35图15 系统总体功能结构37图16 系统网络拓扑结构图38图17 图书属性图39图18 读者属性图39图19 借阅属性图40图20 处罚属性图40图21 管理员属性图40图22 图书借阅功能结构图46图23 图书借阅类图46图24 查询借阅情况时序图47图25 图书借阅流程图48图26 图书归还功能结构图49图27 图书归还时序图49图28 系统管理功能结构图52图29 读者添加时序图53图30 Tomcat服务器结构54图31 图书借阅实现界面59表目录表1 用户-图书表23表2 项目-用户表25表3 图书信息表41表4 读者信息表

14、41表5 借阅信息表41表6 处罚信息表41表7 管理员信息表42表8 磁带库指标特性42表9 用户登录功能测试结果56表10 用户登录功能测试结果57表11 并发用户数与事务执行情况58表12 系统响应时间58VII北京航空航天大学硕士学位论文43第一章 绪论1.1 选题背景及意义随着信息技术的更新和科技的高速发展,我们逐渐地从信息匮乏的阶段过渡到大数据的时代,在互联网的大潮中,人们很容易地就能获取到更多、更全面的信息,但是从哲学的角度来看,可以知道事物具有两面性,当我们获取信息的方式日益快捷的同时,我们需要从这些大量的信息中获得自己真正感兴趣的信息,那么对于信息消费者而言,如何识别并选择出

15、高质量的信息就成为了一项巨大的挑战。另外,对于互联网公司、网络信息提供商来说,如何让自己的信息从海量的数据中脱颖而出,并获得认可,需要投入大量的人力物力支持。正是由于上述矛盾,推荐系统产生了。推荐系统从最初的研究发展到现在,一直都是电子商务系统里的一个极为重要的角色,它的任务就是在用户和信息之间建立一个桥梁,不仅可以方便用户获得自己需要的信息,还能够确保项目的信息被推送给可能对它感兴趣的用户,从而实现信息生产者和信息消费者的双赢。书籍在人类社会发展的阶梯,传承了一代又一代人的智慧精华,拥有至关重要的地位。人类社会总是向前不断发展,文明程度越来越高,人们对知识的需求和追求欲望愈发强烈,书是知识的

16、主要表达形式,而图书馆作保存着大量的知识,犹如一个仓库,人们想要学习知识,普离不开图书馆,因为图书馆书籍浩如烟海,想要在图书馆迅速找到自己需要的书籍不是件容易事,提高图书馆的效率已成为人们迫切希望的问题。就目前来看,很多图书借阅系统还是存在很多问题,如界面繁杂、操作不便、不能实时推荐等,因此建设一个界面友好、操作简便的具有实时推荐的图书馆管理系统非常重要。图书馆传统的管理方法难以满足于当前时代发展的现实需要,在图书馆当中引进信管系统,能够有效地改善对应的管理基本过程,为管理者和读者带来相当大的方便。优秀的信管系统可以增强图书馆内部管理,避免内部图书资源的流失,优化读者借阅的基本体验,切实地提升

17、检索效率,并且带来个性化的图书推荐功能,由此为所有用户带来具有针对性的体验。因此本论文开展对图书推荐系统进行研究具有较高的现实意义。1.2 国内外研究现状分析1.2.1 图书管理系统的研究现状20世纪50年代初,最早的国外图书馆管理系统起源于美国。而图书馆管理系统的真正发展是在1964年LC提出了著名的“马尔克计划”,即以机器可读形式地记录图书馆的书目纪录。到了1970年以后,自动化系统逐渐成形,还开始出现联机编目协作网。直到1990年以后,图书馆的局域网发展到了与Internet相连接目前,在国外,像一些比较先进的国家,如美国和澳大利亚等,有几个比较大的软件公司已开发出比较著名的图书馆管理系

18、统,如Aleph500系统和Horizon系统等。Aleph500系统的智能化程度较高,它所采用的关系数据库很大程度上提高了系统的安全性能和稳定性能,它还釆用了两种结构:多层客户机服务体系结构和分布式逻辑结构。当下位列世界领先的水平的Horizon系统,其自动化程度较高。它是一个全面开放的系统,它的产生基于互联网,需要采用UI界面和B/S结构的相关体系结构,可用于多重标准平台上。随着科技的发展,大多数以前依赖纯人工管理模式的图书馆正逐渐通过使用计算机来实现对图书馆管理,管理及服务逐步实现自助化及自动化,随着电子书的普及,图书馆内的文献资源也将逐步实现电子化、数字化,届时读者只需在图书馆借阅自己

19、所需书籍即可。图书馆在社会中的角色非常重要,负责图书采购、编目整顿和推动文化传播等各项工作,有力地保障了人们的学习和研究,为他们提供借阅、参考资料文献的服务。在图书馆管理系统研究上,马玉祥提出了一个基于Deep Web数据集成的系统结构,并且根据这个系统结构对Deep Web数据集成中最为困难的“模式匹配”问题进行了深入的研究分析,进而提出了相应的模型和算法。这一算法和模型的问世为Dep web馆藏图书集成查询系统的设计与实现提供了至关重要的技术支持,并且在Deep Web数据集成方面有较大的应用价值。田青重点对有关图书馆图书管理系统的相关使用功能需求进行介绍,并在此基础上提出数据库设计方案,

20、并对此方案进行改进,弥补了之前相关数据库设计的不足。刘晶等研发的小型图书管理系统,用C#开发前端界面和后台业务,用SQL作为数据库来存放读书信息。实现了信息管理、借还操作、图书排列及信息查询等多个必须功能。从结果上看前期工作已基本上满足日常图书管理工作的基本需求。何芸将移动AR与代理技术相结合,提出其在图书馆领域的应用架构,运用Android、VuforiaSDK、JADE等工具研究该架构的具体实现,并对架构中移动AR、情景敏感代理和用于排架、查询和动态情景更新的算法进行剖析。与当前图书管理系统相比,该系统使得服务与管理更泛在、更容易以及更智能。通过进一步的修改,这个系统可以有效地执行当前真实

21、世界中图书馆繁重的图书管理任务。1.2.2 推荐系统的研究现状追本溯源,上个世纪九十年代,明尼苏达大学的一个名为“GroupLens”的研究小组的研究人员设计出了一款GroupLens系统。该系统用来向用户推荐其感兴趣的文章,它作为推荐系统的“鼻祖”,设计出了基于用户的协同过滤推荐引擎。而正是这个推荐模型为后来的推荐系统提供了方向,基于这个模型,人们又设计出了一系列的推荐算法,诸如:基于SVD的协同过滤推荐算法、基于项目的协同过滤算法等,目前常用的推荐算法还有基于内容的推荐、基于协同过滤算法的推荐、基于知识的推荐等。国内的推荐系统起步较晚,但是到现在也有了较好的应用。淘宝、网易云音乐等网站或者

22、软件上都会有“推荐”模块。其中,淘宝推荐系统的核心目标就是将买家、卖家和商品相互联系起来,其推荐规则有:基于内容的推荐;采用搜索引擎的技术,根据用户的实时搜索记录为其推荐优质的相关的宝贝;优质宝贝的推荐;基于关联规则的推荐等。国外的亚马逊对推荐算法是基于ItemCF的研究,即是基于物品的协同过滤算法,是一种基于统计的算法,通过对上述算法的优化,形成余弦相似度算法,进行物品相似度的计算,建立起物品的相似度矩阵。由于亚马逊的用户数量比较庞大,可达到千万至上亿个,所以他们采用基于物品的相似度矩阵代替基于用户的相似度矩阵,大大的从时间和空间上减少了开销。美国康奈尔大学的研究学者设计了一款叫做Mylib

23、rary的网络个性化的电子图书推荐系统。该系统是基于查询分析设计的,它由两大部分组成:MyLinks和MyUpdates。其中,MyLinks可以让用户自己来搜索并整理包括本校电子图书以及其他互联网中的电子资源,相当于针对用户个人的自主服务的主页;MyUpdates部分可以及时地通知读者新到的电子图书资源,比如说,定期地告知读者他们可能会感兴趣的新到的图书、期刊等,这样可以帮助读者减少查询资料的时间,还提升了读者对系统的使用兴趣。国内的最为有名的图书推荐系统有“豆瓣读书”、当当网的图书推荐系统等。其中,豆瓣网的“豆瓣猜”用到了基于用户的协同过滤推荐技术,首先对于如何确定应该推荐哪些种类的图书,

24、豆瓣猜的核心理念在于为用户提供“具有媒体性的产品”,也就是说为用户提供尽可能多样化的、符合其兴趣的、还能够被广泛传播的图书;然后对真实的数据集进行深入的挖掘分析,根据用户对的关注、评分、收藏等行为分析出用户的偏好特点,从而将符合用户兴趣的图书进行推荐。总的来说就是先广泛撒网,然后根据用户的反馈有的放矢地进行个性化推荐。另外,豆瓣网的推荐引擎还使用了分布式的平台对推荐算法进行改造,缩短了推荐过程中的运算间,减少了运算的内存,有效地缓解了推荐系统面临海量数据时存在的瓶颈问题。1.2.3 研究综述通过了解国际上图书推荐系统发展的实际情况,发现其重点存在如下问题:(1)在对图书馆管理系统的发展历程进行

25、全面了解的基础上可发现,其在初期仅为一种单机版的系统,但在局域网技术持续创新的基础上,逐渐产生了C/S模式的图书馆管理系统,在以往深受人们的欢迎,其在20世纪末期中,是运用最为频繁的一种系统架构模式,现阶段人们仍旧持续运用该种模式的图书馆管理系统,大部分地方图书馆以及高校内运用的管理系统仍是该类系统。虽然相较于初期的系统,C/S模式相对较为良好,但其也存在着不可避免的问题,例如资源共享性、平台封闭性、功能弹性等方面的问题,而现阶段传统业务难以与数字资源整合起来,难以运用数字资源实现相应的技术标准,因此,对新技术进行开发以使图书馆管理需求得到满足的工作开展刻不容缓。(2)以往的图书鉴购系统大体上

26、是基于手工建立的,因此采访人员在对荐购图书记录进行统计以及读者对图书的荐购等方面的便利性相对较低。(3)在以往的图书荐购模式中,由于信息传递相对较为复杂,读者在对图书进行荐购时,会规定其应在特定的时间地点内集中开展,过程相对较为繁杂,而在该种地点和时间便利性相对较低的影响下,读者运用图书荐购系统的次数相对较少,所以,图书荐购系统推广的难度相对较高。而本文是在与图书馆存在的具体的业务需求融合的基础上设计了图书推荐系统并实现了相应的功能。在搭建一个将图书馆业务包含在内的集中统一的一体化管理系统的基础上,对处于领先地位的网络爬虫和大数据技术进行运用,以使网站和该系统间资源的整合可得以良好的达成。在基

27、础功能得到满足的标准下,还额外将图书推荐功能加入其中,将私人特定的读书喜好个性化的推荐至所有用户。与以往的图书推荐系统对比,该系统可个性化定制或推荐图书至所有的用户,使读者对图书的查阅和借阅更加高效,进而使用户的满意度得以提高。1.3 研究目标及研究内容1.3.1 研究目标设计出一个存在着实时推荐功效、操作可靠便捷、界面简单友好的图书推荐系统是本文研究设计工作的主要宗旨。使图书馆各种资源如期刊、图书等有关信息的借阅更加高效,使图书馆管理人员的负担得以缩减是本文研究设计工作的主要目的。为了对所有读者的信息资源进行良好的整合,对本系统开发的统计模块进行细分,将其划分为四大模块,其中包含图书馆所有方

28、面的内容,可全面的统计图书馆总体的业务。在总结本系统存在的需求目标的基础上,得到以下结论:(1)将图书信息供应至读者,使其可对图书进行查询、借阅、归还;(2)将实时推荐功能供应至读者;(3)达到全流程追踪图书借阅和归还过程的数据信息的目标;(4)将图书借阅排行榜予以供应,将实际的数据信息供应至图书管理员。1.3.2 研究内容本文的主要研究内容有如下几个方面:(1)分析图书管理系统及推荐系统的研究背景、国内外研究现状分析,并发现限制其发展的因素。(2)深入研究推荐算法,包括常见的协同过滤算法、基于内容的推荐算法等,并在此基础上使用模糊聚类算法进行优化改进。(3)结合SpringBoot框架,将改

29、进的推荐算法合理地并行化,使之可以高效地运行在Web平台之上。(4)使用图书的相关数据集对系统进行功能测试和性能指标测试,并且展示结果。1.4 本文组织结构本文具体细分为以下七个部分进行了研究设计:第1章,绪论,对本文的章节安排和重要内容、图书馆推荐系统研究现阶段的具体情况、项目研发的意义和背景进行了简要的论述。第2章,系统需求分析,首先对系统的可行性进行了研究,在可对系统进行研发的先决条件下,对系统应实现的性能和所有功能、所有环节的业务流程进行全面的研究。第3章,推荐系统相关技术介绍,大体上论述了系统开发时具体运用的推荐技术等。第4章,系统总体设计,在该部分中,开始对系统地设计相关的功能和模

30、块,并且根据对系统的软件构成和网络拓扑的设定,对该系统中应存在的数据库和应实现的所有性能进行了深入全面的设计。第5章,系统详细设计与实现,遵循预先设计运用编程技术完成运行界面以及功能详细设计工作。第6章,系统测试,针对系统的运行和程序运用相匹配的测试工具进行检验,使系统投入运用前的最后一步工作得以完成。第7章,总结与展望,归纳系统研究流程,并展望将来的发展情况。第二章 系统需求分析在对系统进行开发的过程中,最为关键的一项工作就是需求分析,与此同时,该项工作也是难度最高的工作。由于在需求调研工作开展过程中,存在着系统变更所产生的费用、用户需求实时变动、系统研发人员和用户沟通存在障碍等问题,因此只

31、有基于对用户具体需求进行明确开发系统,系统的完善程度才有所保障。2.1 系统可行性分析在学校图书馆规模持续增大以及图书馆数量持续增多的形势下,对该部分相对较为庞大的体系进行管理是难度极高的一项工作。由于图书的状况是实时发生变动的,因此针对图书必须运用动态管控方式。而该件事情就管理者而言,相对较为繁杂,其中,每天必须完成借阅、查询、存储图书信息这一常规业务。在初步开发阶段,应开展大量的调研工作,以对用户具体存在的需求进行全面的了解,进而对开发的规模和目标进行明确,系统可行性研究工作的开展离不开前期的调研工作。而兴办单位的实力和规模决定着图书馆的大小和规模。图书馆中有很多书籍和资料,书籍数量接近数

32、千万,而读者在搜索所需的书籍时通常需要花费大量不必要的时间。尤其是随着现代科学技术的飞速进步,知识激增,图书资源的增长也越来越快。快速“爆炸”的资源通常超出了许多读者可识别的范围。因此,依据通常的搜索通过优化算法和搜索模块获得的大多数书籍详细信息都不是您想要或喜欢的。因此,为了更好地处理该特定要求以及获取特定信息时出错的问题,现在对搜索推荐系统进行了很多讨论。但是,这种推荐系统存在很多问题。例如,当读者基本上缺乏信息,数据和信息时,很难进行数据的定量分析和统计分析;由于许多推荐系统都采用协作过滤算法优化算法,因此它们必须依赖客户才能获得书籍的审阅信息,因此许多搜索推荐系统,尤其是公共图书馆的推

33、荐系统都很难获得这种资源。由于读者仅搜索书籍,因此不涉及对书籍资源的评论。在很大程度上,存在特定情况。某些类型的书籍属于少数派,或者客户群相对太小,因此不能有效地推荐一些如今没人借用的新书。2.1.1 经济可行性因为学校图书馆的借阅者这项工作并不具备商业利益,因此为了使系统的研发成本得以缩减,应缩短系统的设计开发时间,使该项工作在短期内就可完成。在所设计和实现系统时,应对开发效率提升、开发成本缩减目标的达成高度重视,系统操作也应实现实用、简单、方便的目标。本文在对该系统开展成本/效益分析工作的过程中,主要运用的是任务分解技术,通过观察分析结果可发现,其可实现通过最小的投入获取到最大的回报的目标

34、。由于就复杂程度而言,该图书管理信息系统处于一般程度,与此同时,其可参考大量的成功的高校图书管理信息系统的搭建案例,因此该系统开发过程相对较为便捷。因此其成本投入相对较小。在该系统投入使用之后,图书管理工作的开展将十分便捷。即可使工作更加高效,又可对不必要的开支和中间环节进行缩减。所以就经济角度进行考量,该系统的开发完全可行。2.1.2 操作可行性该系统的界面应最大限度的追寻易用、简洁的目标,基于标准化对界面的新颖度和美观度进行考量,可最大限度的友好的完成。而且该系统的操作极为简单,运用的人员大体上并不需求培训,仅依赖联机帮助和用户手册就可对该系统的操作进行全面的掌握。就图书管理者而言,其可在

35、运用该软件的过程中真切的感受到该特征。总而言之,在该用户组织内,该系统的操作方式完全可行。2.1.3 技术可行性就技术可行性角度进行考量,该系统的编程语言和后台数据库分别运用的是Java语言、MySQL数据库。并且在开发阶段,对AJAX、XML、Photoshop等大量技术进行了全面的运用。基于我们的现状以及了解对比,最终开发环境选取了Eclipse,其可使系统的开发迅速完成,其数据库访问通道是内部集成的,可使数据库的管理更加便捷。该环境从实质上讲,是一个集成式开发环境,是将程序开发、查错、测试等功能集为一体的开发环境。其已发展成为现阶段系统开发过程中首要选取的技术工具。该种开发语言环境相对较

36、为专业、面向对象的编程工具,在对大量成熟、具备着强大功能的应用程度进行开发时相对较为适用,尤其是在对数据库运用程序进行开发的过程中,其应是第一选择。除此以外,MySQL不但可在大中型数据库管理中运用,搭建分布式关系数据库,也可在桌面数据库开发过程中运用。对所有编程语言十分井筒的老师和计算机专业的学生构成了该系统的研发团队。其中极大多数人员都具备信息系统开发的经验。所以,通过观察人员团队知识架构可发现,该部分人员对开发该图书管理信息系统的能力已经全面掌握。除此以外,学校在该几年的系信息化环境改良的过程中,对于网络环境来讲,学校已经全面覆盖了学校网络。所以,从互联网环境以及系统研发人员素质方面均进

37、行考量,就技术而言,该系统的开发完全可行。2.2 系统角色需求分析在图书管理的现状和用户提出的要求的基础上可知,系统重点存在着管理员和读者两种类型的用户角色。(1)管理员,主要职责是对系统后台和前台进行维护,系统管理员可完成系统内包含的每一项功能,例如图书管理、读者管理等,如图1所示,为具体的系统管理员用例图。图1 管理员用例图(2)读者。读者要到图书馆借阅图书,他们到图书馆来主要是借书、还书、预约图书、交罚金等。读者用例图如图2所示。图2 读者用例图2.3 系统功能需求分析2.3.1 图书借阅需求分析读者首先查阅相关图书,系统显示该图书信息,如果该书已经借出并未被预约,则读者可以申请预约,反

38、之则可以申请借阅,如果读者有超期未还的书或者已经达到了最大可借用浏览的值,就不能在借了。业务的流程见图3。图3 图书借阅业务流程图2.3.2 图书归还需求分析读者首先选择需要归还的图书,并提交归还申请。如果该书超期,则读者还需要缴纳相应的罚款。业务流程如图4所示。图4 图书归还业务流程图2.3.3 图书推荐需求分析读者登录系统后,系统会自动为读者推荐相关图书。如果该读者未曾借阅过,则会向读者推荐系统中的热门借阅图书,否则会根据读者喜欢借的书进行推荐。工作流程如图5所示。图5 图书推荐业务流程图2.3.4 系统管理需求分析系统管理,包括图书管理和读者管理。图书管理功能,是管理员用于管理图书信息的

39、模块。它提供给管理员丰富的功能,包括添加图书的完整信息,修改图书的信息,删除无用的图书信息。对读者的管理也是管理员所必要的功能,管理员可以对某个不正规的读者进行管理,可以查看所有读者的信息,同时对某些不正规的读者信息,管理员有权对有关其所有的信息进行删除。以删除图书信息为例,其业务流程如图6所示。图6 系统管理业务流程图2.4 系统非功能性需求分析公共图书馆是系统管理方法的关键设计方案目标。系统内存具有较高的应用频率,因此性能方面存在着极高的要求,在系统设计和时间过程中,应对其安全性进行保障,避免损坏或丢失系统中所储存的借阅、读者、图书等信息,否则将会造成极为严重的后果。其所提出的要求具体如下

40、:系统性能高,安全,功能全面。可操作性相对简单,易于学习,训练和掌握,界面相对较为没管;数据存储存在着较高的可靠度和安全性;易操作性和易维护性目标可最大化达成,将基础支持供应至系统,使系统可顺利运转。(1)系统性能。由于高校人员总数较大,公共图书馆系统使用的用户数较大,因此该系统适用在访问用户量超过五百人的情况,在某个相对特殊的时间,大量用户也将浏览系统。因此,最高值时并发用户总数最少应为1000人。针对用户提出的普通请求,系统应在2秒内做出响应,将页面内容正常输出。可适当的延长大数据量报表加载、文件上传下载、报表的数据信息导入和其他操作的响应,但是响应速度应保持在用户愿意接受的级别。(2)可

41、靠性能。达到全天持续平稳运行的目标,系统可在运用大量服务器的基础上使大量用户访问的压力缩减。应在周末的某个时间段内或下半夜对系统进行常规的维护升级,防止对用户的正常使用产生影响。若出现了紧急维护的状态应提前在系统对话框中通知给内部用户。对于由非人为错误导致的网络服务器关闭、异常等状况,应将预先拟定完成的异常处理响应机制进行启动,以使出现的问题及时得到处理。应使系统应用数据库和程序的及时备份有所保证,以保障系统的恢复。(3)可维护性。在系统运行阶段,系统的正常升级操作,以及异常问题的处理等已基本被涵盖,因此可以对系统的可维护性评估。而关于系统会出现的状况,可运用系统自拍错能力和日志跟踪方式将问题

42、出现的地方探寻出出来,对问题出现的原因及时进行研究,拟定出相应的处理措施,对系统缺陷和异常位置迅速进行修复。对程序流程进行编写后,解决代码的每个关键功能,并进行代码注释,以提高代码的可读性。进而使后续的维护更加便捷。(4)可用性。系统若想正常运行,首先就需使以下条件得到满足:用户可借助浏览器对系统进行访问和登录;优良的软硬件基础设施。其次,系统应向用户展示功能页。保持友好和合理。布局特征,易于操作和合适的设计风格。该系统具有完整的操作说明,使客户可以更轻松地掌握和操作该系统。(5)安全性能。首先,操作系统的安全性需要考虑。虽然操作系统在安全等级方面比较有优势,但是由于其功能结构很复杂,仍存在一

43、些安全方面的漏洞。为有效保证计算机的安全,我们必须定期为计算机添加防火墙和定期更新为新的操作系统。第二,数据库安全性。在安全性方面,对于每一个应用系统来说数据库都是最为核心的。我们必须做到以下几点才会给数据的安全提供保障。第一,要对数据库的权限进行高效的分配管理,不可随意赋予用户权限;第二,定期备份本系统的设备和备件信息的数据,系统的备件信息是极为重要的,所以必须拥有定期备份图书信息备件信息的功能。第三章 关键技术与难点分析3.1 推荐系统简介相较于网络广告、搜索引擎,可主动的“投其所好”,将个性化的推荐服务供应至读者是推荐系统与其之间最大的不同,并且当用户行为记录出现变动时,系统推荐的内内容

44、也会随之出现相应的变动,当推荐系统的水准相对较高时,其可协助用户将自身最需要的内容从大量的信息中精确迅速的探寻出来,在该种情况下,可使用户的体验得到大幅度的提高。当推荐系统相对较为完善时,其最少应包含数据采集模块、推荐算法模块、推荐列表展示模块、建模模块四个模块,如图7,为该四个模块间具体存在的关系。图7 推荐系统模块之间的关系将系统需求的数据从原数据中搜集出来是数据采集模块的重要职责,用户对项目的打分情况、项目信息、用户信息、其余操作行为等都是系统中所包含的内容。在以协同过滤算法为基础的推荐系统内,针对搜集到的数据,数据采集模块会将其处理为用户-物品-评分的二维关系矩阵;针对搜集到的用户评价

45、数据,数据建模模块对其开展适当的建模通过,基于此将相关物品和用户的兴趣爱好联系起来;在推荐系统内,最为关键的就是推荐算法模块,在该模块内,应在用户-物品模型的基础上,按照运用情景存在差异的选择,运用最为匹配的推荐算法将推荐结果运用出来,还应对推荐内容的时效性和精确性进行保障;最终,向用户展现推荐结果。3.2 相关推荐算法在社会逐渐迈入互联网+时代的过程中,移动互联网得到的迅猛的发展,其规模日益增大,人们平日的生产生活在电子商务的飞速发展下出现了极大的变动,人们的购物模式已经逐渐从传统观念转变为互联网模式,年轻人日益增多的需求在电子商务个性化推荐功能的基础上得到了满足。完成个性化推荐功能的关键是

46、基于推荐算法的技术性。在个性化推荐系统中,每个人都应该逐步全面应用协作过滤推荐算法。本节将详细介绍几种类型的符号协作过滤推荐算法以及已经出现的一些问题,并选择推荐算法以推荐给客户以开发全面的考量。通常情况下,图书馆内储存着大量的图书数据,而运用推荐技术将数据个性化推荐至用户正式大量的图书存储数据存在的需求。除此以外,和用户间建立一种平稳可持续的关系、将个性化信息服务供应至用户是个性化图书推荐最终想要实现的目标,基于此。可降低用户流失程度,使用户对其更加依赖。而在电子商务系统推荐领域内该点已经得到了普遍运用。图8 推荐系统的推荐流程3.2.1 基于用户推荐该类型的推荐算法一开始就是根据用户作为基

47、础开展研究工作,以用户为基础表明该算法的主体的用户,而从实质上讲,该类算法着重说明的是将部分喜好与你类似的其余用户的图书推荐至你。在个性化推荐技术中,该算法得到了极为广泛的运用。算法具体流程如下:第一步,搭建评分的矩阵R;第二步,对相似度进行运算;第三步,按照具体的相似度实时将推荐供应至用户。相似度的运算是以用户为基础的推荐算法中极为关键的内容,通过优化该算法以获得下一个的存在和高度相似性的“邻居用户”,并将“邻居用户”作为整体目标用户。且其并未拥有的图书或不包含的图书。如表1至表3,可将以用户为基础的推荐算法的推荐流程以及评分矩阵分别展示出来。表1 用户-图书表图9 用户-项目图通过观察图9

48、,可以发现A,B和C这三个用户都是有不同的“偏爱”和“非偏爱”的项目,在运用算法将存在差异的用户间的相似性探寻出来的基础上,获取到以下结论,用户A偏爱项目A、C,而用户C则较为偏爱项目A、C和D,即就兴趣爱好而言,用户A和用户C属于相似用户,也就是说,可将项目D推荐至用户A。与之相同,可将图书B4推荐至用户UA。该算法重要的运算步骤和流程如下:(1)数据输入,构建用户-图书评分矩阵搭建用户手册评级矩阵。图书是新的项目,可以在掌握用户对图书的评论后用户对图书的兴趣程度建立矩阵。当前基本施工系统软件中包含的用户和书籍数量分别为m个、n本,基于此,可运用mn阶矩阵将用户-图书评分矩阵表现出来,其中用

49、户对该本图书的评分通过矩阵中所有元素的值得以表示,当评分的具体数值较高时,就表明用户十分喜好该本图书,并且喜好程度随着数值的增高而增深,用P(i,j)代表评分值。(2)生成最近邻居集在协同过滤推荐算法中,形成最近邻居集极为关键。形成最近邻居集指的是在对算法进行运用的基础上,将与目标用户最为形式的N个用户探索,是将N个用户称为用户的邻居集的整个过程。协同过滤算法中具体的形成“最近邻居集”的过程如下图所示。K最近邻算法在对与样本个体相似程度最高的K个体进行运算的过程中,重点是在对样本个体间的距离或相似度进行运算的基础上进行,基于此形成邻居集。样本的个个数值决定着该算法的时间复杂度,应对其开展一次两

50、两比较的过程。KNN算法重点是选取已精确划分的对象,在分类策略内,该方法仅在对最近的一个邻居或大量样本的类型进行掌握的基础上就可对存在着分类需求的样本的类型进行明确。周边数量存在着一定限制的样本是KNN算法实现的重要基础,而非依赖对类域进行识别的基础上来对其所属的类型进行明确,所以针对类域存在大量重叠或交叉现象的存在着分类需求的样本集,KNN算法相对较为匹配。图10 形成邻居集的过程3.2.2 基于项目推荐计算相似性程度的时候,基于用户的协同过滤推荐算法是以用户为主题的,基于项目的协同过滤推荐算法与它的最大区别在于:是以工程项目主体的。此优化算法是Amazon(amazon)网站推荐系统软件底

51、部的关键优化算法,并且也是较早的应用程序推荐算法。这两个推荐算法的过程极为相似。第一步是检索最近的邻居,第二步是建立新的项目用户评级矩阵,最后计算相似度。基本上,相似性可以是对新项目进行预测分析,评分和推荐(在本文中指书籍)。下表2给出了用户对项目的偏好情况,图11给出了参考协同过滤的推荐算法的推荐过程。表2 项目-用户表图11 项目-用户说明图3.2.3 混合推荐每个推荐系统都有其自身的优点和缺点。混合推荐系统结合了多种高度推荐的技术,因此可以提高高度推荐的效率和准确性。因为混合推荐系统是将各种推荐系统组合在一起进行科学研究,所以每个推荐系统都有其自身的优势。综合所有这些优点,就可以解决整个

52、过程中遇到的许多问题。现实生活中的许多科研者,包括科研人员自己的工作都是使用混合推荐系统的算法向用户的提出有力的建议。最终的强推结果将递交给用户,即输出到客户端显示。基于项目的和基于内容的协同过滤推荐是其中较为常见的混合方式。推荐技术的组合有很多种的方法,如下图12所示。图12 混合推荐技术的组合方式3.2.4 LFM算法本文釆用的推荐算法是LFM算法,其中LFM算法主要是挖掘出大量信息中符合商品特征的潜在主题或者分类。LFM算法主要也是用作文本挖掘领域中的,同时它在推荐系统中也有举足轻重的作用,它能够基于用户的做法对于所有的item进行整合,整合出来的这些主题或者TOP-N就是可以作为用户所

53、感兴趣的内容。对于大量的数据来说,用户所感兴趣的内容少之又少,而针对不同的用户,所感兴趣的也各不相同,那我们在推荐的时候,所采用的推荐标准也就不同。我们在推荐的时候,应该是推荐用户所感兴趣的内容,例如书籍;我们就要推荐用户所感兴趣的类别下的书籍。那么前提就是要对所有的书籍进行分类,但是每个人对每本书的每种分类都有主观上的不同。因此,我们所注意的问题就有两个,一是我们需要知道用户对所有的类别的兴趣度;二是对于给定的类别来说,我们需要确定的是这个类别中的每本书所占的比例或者是权重有多大,这样可以方便我们之后推荐给用户。而LFM算法很好的解决了上面所说的问题。对于给定的用户行为数据集(数据集中包括所

54、有的用户,所有的item,以及用户对应的item所做评价的列表),假设我们使用3个用户,4个item,LFM所采用的分类数为4,则我们得到如图13的LFM模型。图13 LFM模型其中R表示user-item矩阵,矩阵值Rij表现为user对item所做的评价,其中用具体数据来表示。只要得到某一个user对所有item的序列值,就可以进行推荐了。LFM算法要做的就是将R矩阵分解为P、Q矩阵来进行user关于item评价的预测,其中P矩阵代表user- class,矩阵,矩阵中的值表现为user对class的兴趣度,Q矩阵中的值作为item在class分类中的权重值。权重越高,表示更偏向于该类LF

55、M计算用户user对物品item的兴趣度或者是评分。 (3.1)之后的问题就是要解决如何得到P、Q矩阵的参数值,一般的方法就是采用最优化损失函数来求参数。下面我们确定一下数据集以及对评分的取值说明,再来定义损失函数。数据集虽然是由所有的用户user,所有的物品item,以及user-item矩阵,但是其中主要是要包括所有的user对对应的item进行评分的项,这些项才是对我们有用的内容。对于每个用户,将用户(user)在该项目(item)上获得评分的项目作为正样本,并且兴趣值=1。且应该从所有样本中选择总数一致但未计分的负样本。另外,要求兴趣值0,所以兴趣值的锁定范围是0,1。我们通过收集正负

56、样本来构造user-item的矩阵K,可以写为,这里规定:如果(U,I)是正的样本,那么就是1,反过来就为0。而损失函数的表达式如下: (3.2)上式中的是用于避免过度拟合的正则化项,其中是基于重复多次完成而获得的。损失函数的优化我们使用随机梯度下降算法,过程为:(1)分别对和,求偏导来得到随机梯度下降的最快方向: (3.3) (3.4)(2)通过迭代计算来不断优化下列函数中的参数,直到参数收敛。 (3.5) (2.6)我们可以看出也是需要不断根据实际情况实验得到的,表示的含义是学习速率,越大,迭代下降的越快。因此,我们需要确定的参数的个数为三个,分别是分类数F、以及。对前过程分析后,就可以总

57、结出LFM算法的特色:(1)我们不需要关注数据集中的分类的方向,结果都是基于用户行为的数据集内容所自动聚类的,什么样的数据则有什么样的分类。(2)同时我们不用关注分类的粒度问题,我们可以通过设置函数中的F来控制分类的粒度,分类数越大,粒度越细。(3)对于一个item来说,我们不需要真正的将它归到符合它的类中,而是得到其归到该类的概率,是一种软分类。(4)对于用户user来说,我们只需要知道他对于相应的物品item的兴趣值(评分),不需要关心所对应的分类。3.3 系统关键问题及解决方案3.3.1 冷启动问题在一般的协同过滤算法系统软件中,冷启动问题主要分为以下两种类型:第一种是新用户的出现,并且

58、根据用户评级数据检索最近的相似性。如果用户从未对它进行过评分,就不会强烈推荐它。第二种情况是最新项目的出现。由于最新的商品从未被用户评价过,因此强烈不建议使用。冷启动问题在很大的程度上阻碍了推荐算法的高效率。为了更好地解决冷启动问题,本文使用聚类算法和其他数据挖掘方法根据属性相似性聚类算法对用户或事物进行聚类,并从聚类算法的结果中找到新事物的最近邻居。或使用新事物K的所有最近邻居的综合得分来表示原始得分的平均值。3.3.2 数据稀疏性问题推荐算法在应用和发展趋势的全过程中都遇到很多问题。其中,稀疏性的关键问题和概念漂移的问题是两个具有很大影响性的难题,很大程度建议干扰系统进行的推荐治疗。稀疏性

59、问题对于推荐系统的影响更加复杂和持久,多数影响都是长期性的,是推荐系统的最为关键的问题。针对推荐算法的研究工作有很大一部分是围绕数据稀疏性问题来进行的。本环节针对数据稀疏性问题的具体成因、影响方式和条件等进行了分析,提出了一些解决的方案和措施,并在此基础上进行讨论和总结。本节还针对稀疏性问题的影响,提出了一种协作推荐算法 WSBCF,这是一种给予加权相似度的推荐算法,能够缓解稀疏性问题对于推荐系统中相似度计算的影响,帮助在相似度计算中引入评分重复性数据,提升和优化传统项目中相似度计算,提升协作推荐算法中计算结果的准确性。前边的推荐系统中,关于内容过滤和协同过滤算法的研究是相对较丰富的。这种协同

60、过滤算法的优化算法主要依靠用户的评论数据来衡量相似度而后实施推荐。如果事件的得分数据丢失或很小,或者事件的数量与不必要的用户评论数据相差甚远,这样的情况下,它不会转化为更好的推荐。尤其是有一个特殊的状况:相似的爱好者如果没有一起评论过某个产品,则以前的协同过滤算就无法准确地推荐它。归根结底,推荐算法的关键是用户申请注册的规模,用户的等级信息和系统软件中存储的信息规模很大,产生了高维空间矩阵。这给计算增加了很大的难度。而且,推荐算法中的所有用户信息都存储在用于计分的矩阵中。评分数据基本上反映了用户自己的喜好,而用户数据是协作推荐是系统准确有力推荐的最关键基础。与其他类型的影响问题相比,稀缺问题的

61、成因和主要表现形式也显示出一定的共性,但也存在明显的差异。例如,冷启动问题是短时间周期的,也可以认为是稀疏性问题。可是在正常情况下,冷启动问题不容易破坏系统的推荐效果。、系统中信息项目的总量巨大,而用户的评分访问信息项目相对数量就很少,这就导致了项目评分矩阵是稀疏性的高维矩阵。在推荐系统的部署和工作的整个时期都会收到稀疏性问题的困扰。所以,用户项目评分矩阵中缺少评分信息以及高维矩阵的特性都是造成稀缺性问题的因素。稀缺问题涉及所有方面,这就是为什么不能避免矩阵的高维空间流失的原因,特别是在当今外部环境是信息资源快速增长,信息量业务规模不断扩大的状态,用户总数继续增加,但是推荐算法无法操纵,信息量

62、和用户数量的爆炸性增长导致用户事件审查引流矩阵呈现出增加的趋势离散系统。评分数据是反映用户信息需求的关键方法,也是推荐算法中用户兴趣爱好的基本基础。用户信息和偏好的缺乏也是导致评分稀疏的矩阵不佳的关键因素。在某些当前的系统软件中,更著名的移动电子商务网站(例如亚马逊在线书店,淘宝网站等)包含大量评论数据,并且在所有这些中,相对活跃的用户都在执行评论数据相对的总体审查数据仅占总产出的很小一部分。当收视率排行矩阵稀缺时,仅依靠用户收视率信息很难找到相似的用户集。因此,处理数据稀缺问题非常重要。许多人建议尝试一些不同的方法。常用的方法是使用预测分析的分数来填充缺失的分数数据,或者使用初始值(通常是平

63、均值)来填充分数排放矩阵中的缺失标准值。 Badrul S强调此方法旨在改进。系统软件的高度推荐的准确性级别具有一定的优势,但可能会有很大的局限性。但是,如果用户和事件信息包含在协同过滤算法系统软件中,则参考基于内容的强烈推荐,很可能可以很好地解决数据不足的问题。基于内容的强力推荐不依赖于用户对问题的评论,而仅基于用户自身的属性以及事物与其他信息之间的联系来衡量相似度,从而将其转化为强力推荐。但是,这种基于内容强烈推荐的方法也可能导致一些不良后果。例如,生成过多的正式强推荐很方便。在推荐书籍时,他们可能只会向读者强烈推荐一本独特类型的书籍。推荐算法具有很大的局限性。3.3.3 数据缺失问题数据记录中缺少数据很可能在多种情况下发生,基本上可以将其分为硬件配置原因和人为错误。机械设备是由于由于系统软件和硬件配置的元素导致的信息收集或存储错误而导致的数据不足,例如信息存储错误,运行中的内存或计算机硬盘损坏,以及导致无法在一定时间内收集信息成功。人为因素是由于人们特定情况的限制,由于数据丢失而造成的主观错误或故意隐瞒数据。在系统软件中,缺少数据的关键来自于学生的阅读记录和书籍录入记录。对于数据缺失的解决手段,一般做法分为删

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!