"""
高校图书馆推荐系统研究
1. 引言
1.1 研究背景
1.1.1 大数据时代的挑战
- 随着大数据时代的到来,传统的人工管理方法已无法满足要求,亟需一套先进、高效、适用范围广的数据管理体系。
- 当前,我国在大数据挖掘方面的应用尚处于起步阶段,许多单位都没有充分利用好这些信息资源。
- 图书行业中,真正做到信息化的寥寥无几,网络技术的不断进步,图书馆的管理系统也逐步成熟起来,但仍然存在许多问题。
1.1.2 研究目的
- 利用大数据库技术,或建立一个可靠、稳定、安全的信息体系,实现数据信息化。
1.2 研究意义
- 针对当前国内大部分企业采用手动操作与手动管理两种方式,效率低,成本高,不方便开发和利用的问题,实现数据信息化。
2. 相关理论及技术
2.1 个性化推荐系统
- 协同过滤算法的核心理念,就是“物以类聚、人以群分”。
- 基于物品的协同过滤和以用户为基础的协同过滤算法。
2.2 Python
- Python是一门动态的面向对象编程语言,选择 Python作为该系统的设计语言,能够让代码变得更加的简单。
2.3 Sqlite数据库
- SQLite是一个以 ACID为基础的关联数据库管理系统,包含在更小的 C类库中。
2.4 Django
- Django是一个高度开源的模式,它受到 Python程序语言的支持。
2.5 本章总结
- 详细地介绍了推荐系统所使用到的关键技术。
3. 系统业务流程及功能需求分析
3.1 系统业务流程分析
- 将用户角色划分为三个部分:访客、注册用户和管理员。
- 游客、注册用户和管理员三个部分是本系统的主要组成部分。
3.2 系统功能需求分析
- 游客与注册用户的角色是不一样的,游客可以实现浏览功能,无需登录账号即可查看图书列表。
- 注册用户不仅可以看书,还可以收藏书,这就是推荐书的乐趣。
- 管理员则能处理图书数据。
3.3 本章总结
- 对该软件的研制是切实可行的。
4. 系统设计
4.1 网站首页系统设计原则
- 易用性,完整性,可扩展性,及开放性。
4.2 系统功能模块结构设计
- 注册模块、登录模块、查找模块、收藏模块、个性化推荐服务、图书管理、用户管理。
4.3 系统数据库设计
- 使用 Sqlite数据库来进行数据保存。
4.4 界面设计
- 输入界面和输出界面。
4.5 本章小结
- 重点阐述了该系统的设计与实现。
5. 图书推荐系统的实现
5.1 数据获取
- 该系统的资料是美国弗莱堡大学资讯学院的书籍推荐资料。
5.2 数据处理
- 资料处理是以书籍资料及使用者资料为基础,对资料进行整合及分解的工作。
5.3 推荐模块
- 采用的推荐算法为协同过滤推荐算法。
5.4 系统首页模块
- 针对大规模的用户群体,要求其界面简洁、直观,并能直观的反映系统的实际表现。
5.5 注册模块
- 第一次使用本系统的用户需要注册提交数据后成为注册用户后,可使用登录功能登录账户,即可使用个性化的图书推荐服务。
5.6 登录模块
- 当用户完成了注册之后,就可以点击“登录”按钮,将已注册过的用户名和密码全部输入进去,然后才会出现“成功登陆”的提示,若是用户名和密码不对,就会出现错误的提示。
5.7 图书借阅推荐模块
- 用户在注册并登陆该系统后,即可借阅书籍,同时,该系统还会按照所借出的书籍,向用户推荐书籍。
5.8 管理员模块
- 图书管理员可以对书籍、借阅订单、用户和组进行管理。
5.9 本章总结
- 阐述了系统的实现工作,首先对系统的数据收集和处理方法进行了说明,还介绍了该系统的具体实现方法,并在文章的结尾给出了界面的设计,并给出了一些网页的演示。
6. 系统测试
6.1 测试环境
- CPU:Intel(R)Core()TM i5-3110M,硬盘:500GB,内存:4GB,操作系统:Windows 10旗舰版,数据库:Navicat for MySQL,测试平台:MyEclipse 9.0 M1。
6.2 测试目的
- 测试的终极目标就是使系统的功能更加完备,运行更加稳定,从而提升用户的满意度。
6.3 测试方案
- 掌握测试方案是测试方法的重要环节。
6.4 测试用例表
- 功能测试用例表。
6.5 系统测试结果
- 测试功能和预期功能基本一致,并没有太大的改变,从而证实了到现在为止,图书荐购管理系统的主要功能已经正确地完成了。
7. 结论
7.1 总结
- 本文论述了高校图书馆推荐系统的形成与发展过程,并就高校图书馆推荐系统的建立与发展作了较为详细的论述。
7.2 展望
- 现还存在着许多问题。在往后的研究中,可以更加全面的进行优化,主要是以下三个方面:
- 从算法上看,目前的推荐方法还不够完善,协同筛选方法存在“冷启动”问题,标签推荐方法也不能很好地解决这一问题。
- 从可扩充性上看,该系统的设计是不完善的,其功能也是不完备的,不能完全满足使用者的可持续性需求,还有待提高。
- 从功能和操作上来看,并不是那么的人性化,那么的复杂。还有待改进。




