图书视频微信小程序及其智能推荐系设计与开发毕业论文
2020-02-18 11:54:43
摘 要
现代社会,随着信息技术的不断进步和图书商品市场的产业升级,互联网销售途径已经替代了部分传统图书售卖途径。相比于线下的高额成本投入,线上销售的方式就更为便宜便捷。线上的图书商城在为消费者提供丰富的选择资源的同时,也可以充分利用互联网的能力,分析用户的操作行为,为用户推荐可能感兴趣的图书。论文以指导企业的“乐童教育”项目为出发点,结合微信小程序、智能推荐技术,设计一款儿童图书视频微信小程序及其智能推荐系统。
本系统主要由微信小程序客户端、服务器、推荐系统与后台管理系统四大部分构成,客户端采用了微信小程序的MINA框架,服务器与后台管理系统采用了laravel框架,推荐系统使用python语言实现。客户端通过访问服务器的RESTful API接口来获取MySQL数据库中存储的数据;推荐系统使用基于矩阵分解的协同过滤算法,通过SVD分解等数学方法推测用户对图书的可能兴趣程度。
本文重点研究了图书视频微信小程序及其推荐系统的需求分析,并详细介绍系统中客户端、服务器、推荐系统和后台管理系统的设计和实现过程。
关键词:微信小程序;推荐系统;协同过滤;laravel框架
Abstract
In modern society, with the continuous advancement of information technology and the industrial upgrading of the book commodity market, the Internet sales channel has replaced some traditional book sales channels. Online sales are cheaper and more convenient compared to the high cost of offline. The online bookstore provides consumers with a wealth of resources to choose from, while also taking advantage of the Internet's capabilities, analyzing user behavior and recommending books that may be of interest to users. The paper takes the guidance of the "Le Tong Education" project as the starting point, and combines WeChat Mini Program and recommendation technology to design a children's book video WeChat Mini Program and its intelligent recommendation system.
The system is mainly composed of WeChat Mini Program client, server, recommendation system and background management system. The client uses the MINA framework of WeChat Mini Program, the server and background management system adopts laravel framework, and the recommendation system uses Python language to realize . The client obtains the data stored in the MySQL database by accessing the RESTful API of the server; the recommendation system uses a collaborative decomposition algorithm based on matrix decomposition to estimate the user's possible interest in the book through mathematical methods such as SVD decomposition.
This paper focuses on the needs analysis of the book video WeChat Mini Program and its recommendation system, and introduces in detail the design and implementation process of the client, server, recommendation system and background management system in the system.
Key Words: WeChat Mini Program, Recommendation System, Collaborative Filtering, Laravel.
目 录
摘要 I
Abstract II
第1章 绪论 1
1.1 项目研究背景及意义 1
1.2 国内外研究现状 2
1.2.1 微信小程序 2
1.2.2 推荐系统 2
1.3 论文的主要研究内容 3
1.4 论文的结构 3
1.5 本章小结 4
第2章 系统相关技术 5
2.1 微信小程序 5
2.2 laravel框架 7
2.2.1 laravel框架 7
2.2.2 laravel-admin 8
2.3 RESTful API 8
2.4 MySQL数据库 9
2.5 推荐算法 10
2.5.1 个性化推荐系统发展概述 10
2.5.2 推荐算法简述 11
2.6 本章小结 12
第3章 系统分析 13
3.1 系统数据流分析 13
3.2 系统总体功能分析 14
3.3 系统功能详细需求分析 16
3.3.1 商品信息展示 16
3.3.2 图书分类展示 17
3.3.3 用户相关信息管理 17
3.3.4 图书推荐系统 18
3.3.5 后台管理系统 19
3.4 本章小结 20
第4章 系统设计与实现 21
4.1 项目总体架构 21
4.2 项目开发方法及环境部署 21
4.3 数据库设计与实现 22
4.3.1 数据库概念结构设计 22
4.3.2 数据库逻辑结构设计 25
4.3.3 数据库的配置与实施 26
4.4 微信小程序设计与实现 27
4.4.1 客户端与服务器的交互设计 27
4.4.2 客户端与服务器的代码实现 28
4.5 图书推荐模块的设计与实现 32
4.5.1 推荐模块概念结构设计 32
4.5.1.1 数据采集 32
4.5.1.2 数据处理 33
4.5.1.3 数据反馈 33
4.5.2 推荐系统实现 33
4.5.2.1 推荐算法 34
4.5.2.2 算法实际实现 34
4.5.2.3 推荐系统实验测试 35
4.6 后台管理系统的设计与实现 36
4.6.1 后台管理系统的设计 36
4.6.2 后台管理系统的实现 36
4.7 本章小结 37
第5章 总结与展望 38
5.1 总结 38
5.2 展望 38
参考文献 39
致谢 41
- 绪论
图书视频微信小程序是电子商务与图书行业的结合物,它结合了微信小程序开发、后台开发、数据库设计、个性化推荐算法等技术,用户可以随时随地打开小程序了解图书信息、观看图书视频,小程序的加入为现代儿童教育、图书市场添加了新的机遇。
项目研究背景及意义
近几十年来,随着移动互联网的不断发展,信息的传播速度和规模都达到了前所未有的水平,人类社会已从工业时代步入了信息时代。从大型超市到小吃餐饮都在这场冲击之下,有意或被迫将自己的产业转移至互联网平台,电子商务应运而生。图书销售是一个存在已久且经久不衰的行业,也在电子商务技术的加持下变成了全新的模样。
信息时代也为人们生活带来了信息过载的困扰。大量的信息出现在人的生活中,让人无所适从。希望快速准确地从大量信息中获取最需要的信息,这对用户来说变得非常困难。现代技术试图通过搜索引擎和分类目录解决这个问题,这两种方式也确实解决了一定的问题,然而,由于指数级增长的大量信息,搜索引擎和分类网站也无法解决以下问题:一种情况是人们别无选择,他们不知道自己需要的信息,他们只有漫无目的地浏览网站寻找有趣的内容;另一种情况则是人们无法准确描述自己的需求。由于上述原因,推荐系统开始得到大规模的使用。
推荐系统属于资讯过滤的一种应用。推荐系统收集用户的历史行为数据,然后处理得到用户-商品矩阵,再利用相关推荐技术处理上述矩阵形成推荐结果。有的推荐系统还会搜集用户对推荐结果的反馈,从而改变进行实时调整。
该系统将图书销售与微信小程序、图书视频内容相结合,希望在现代社会为儿童提供新的教育方式,为儿童个性化教育提供新的思路。在用户的角度来看,系统将儿童图书的信息展示转移到微信小程序平台之上,让用户便捷阅读;系统为每一本书的各个章节绑定有趣的视频,让用户爱上阅读;系统通过推荐系统的算法为用户推荐优质内容,让用户获取个性化阅读。在商家角度来看,由于“长尾效应”现象,商品销售呈现长尾形状,冷门商品的需求不会完全消失[1]。在智能推荐系统的应用中,系统可以发掘出“长尾”部分的商品,从而将用户可能感兴趣的、但偏冷门的商品推荐给用户。一个好的个性化推荐系统可以为用户提供便利,继而,使用户与提供商之间有更好的粘合度,提高提供商的市场竞争力。
国内外研究现状
1.2.1 微信小程序
移动互联网的发展带动现代手机软件的发展,技术越来越完善却使得Native APP(原生应用)越来越臃肿;同时Native APP的底层技术要求软件使用时必须要经过封装、安装等操作,在平台移植、传播成本上渐渐显得乏力。Native APP的长尾现象越来越严重,大型应用程序供应商正试图提出新的轻量级应用程序解决方案。百度在2013年世界大会上首次宣布推出“轻应用”,无需下载,即时搜索即时使用,开启了对原生APP的替代过程。2015年国内360公司正式推出“流应用”,这是一种功能齐全的轻型应用程序,不需要安装,单击即可使用。“流应用”类似于流媒体的实现,它利用js动态特性实现边用边下载。但是由于百度应用和360应用的使用者的特性,轻应用与“流应用”并没有得到大众的密切关注。2016年谷歌也推出了同款产品Instant Apps,依托于谷歌的安卓系统、Google play store,在国外的应用也十分广泛。同年,微信推出了微信生态下的微信小程序,触手可及、即用即走。近年基于微信小游戏平台开发的“跳一跳”游戏也在大众中掀起了浪潮,基于微信用户的高黏性、微信小程序的高自由度,微信小程序成功在大众之中发展起来[2]。微信小程序作为微信生态的一部分,嵌入微信功能之中,解决了用户对简单实用的要求以及开发者便捷开发的需求。
1.2.2 推荐系统
推荐系统作为上世纪末发展起来的技术,在新世纪新技术的指导下取得了新的成功。越来越多的算法被应用于推荐系统之中。在应用方面,推荐系统一直是信息过滤领域的研究热点,许多著名研究机构和研究者都在这个领域投入了精力,完成出了一下实用的推荐系统:[3-4]
(1)GeoupLens:该系统把协同过滤技术应用在新闻推荐领域。系统通过建立用户信息群收集用户评分,通过新闻的相似性为用户推荐新闻,同时通过用户之间的相似性为群内的其他用户推荐信息。
(2)Ringo:由MIT媒体实验室开发的Ringo系统可以预测用户音乐的评分,从而向用户个性化推荐音乐。
(3)FAB:斯坦福大学数字图书馆项目组开发,基于内容的协同过滤系统,用于推荐WEB页面,是融合了基于内容过滤和协同过滤的技术典范。
(4)亚马逊:作为全球最大电商平台,亚马逊也在自己的购物系统中加入了推荐算法,用于向用户推荐商品。其系统使用的是基于物品的协同过滤推荐算法。
(5)Kingbase DL:北京人大金仓公司根据高校图书馆的特点、基于内容的推荐和协同过滤技术设计开发的数字图书馆推荐系统。
在推荐系统的研究方面,越来越多的新式思想被使用在推荐系统中。如论文[5]提出了一种基于self-attention的基于序列的推荐算法,模型可以更好地了解用户的短期爱好,并可以有效地提高模型效率;论文[6]提出来一种新型的推荐系统算法Metric Factorization(距离分解)改进传统推荐算法;论文[7]将两类协同过滤模型进行统一,根据注意力机制和记忆模块刻画复杂的用户-物品交互关系[5-7]。
从简单的基于用户、基于商品的推荐,到使用各种数学方法的协同过滤算法,再到现在百花齐放的各类算法,推荐算法正处于旺盛发展期。
1.3 论文的主要研究内容
本文设计的图书视频微信小程序系统是以儿童图书展示为基础,主要面向幼儿园教育,用户有儿童、家长、幼儿园园长三种角色。系统通过视频码的方式将图书内容与章节视频联系起来,让儿童用户在阅读过程中培养兴趣;通过推荐系统,分析用户的操作记录,为用户推荐可能感兴趣的图书信息;通过后台管理系统,为系统提供优质的图书和视频内容。系统结合传统的售卖方式,通过实现线上和线下结合,扩大其销售渠道。
根据以上的需求,整个微信小程序系统可以分为服务器、客户端、数据管理系统三大部分。其中服务端采用laravel框架和MySQL构建REST API,并结合推荐算法为用户提供推荐信息;客户端采用微信小程序来实现,通过向服务器API发送HTTP请求获取数据,来完成自身的页面渲染;数据管理系统作为管理或者运营人员的数据管理后台,同样通过向服务端请求数据,实现图书信息、视频数据和用户状态的管理。
论文的主要工作是设计并实现整个系统的架构和功能,在客户端实现获取用户信息,图书、视频信息展示,图书分类展示,图书搜索,视频码搜索,个人认证信息管理,用户收藏等功能。本文重点描述了商品信息展示、图书分类展示、用户个人信息展示、图书推荐系统、后台管理系统和数据库六大模块的设计与实现。
1.4 论文的结构
第1章:绪论。从本文的主要研究内容出发,阐述项目研究背景及意义出发,结合分析当前国内外发展现状,给出项目概述以及本文的主要工作和组织结构。
第2章:系统相关技术。主要介绍系统相关的几项互联网技术:微信小程序、laravel框架、RESTful API、MySQL数据库和推荐算法。
第3章:系统分析。主要分析系统业务和数据流的结构,分析说明系统总体功能的需求,详细说明商品信息展示、图书分类展示、用户个人信息展示、图书推荐系统和后台管理系统五大模块的需求。
第4章:系统设计与实现。主要介绍项目的系统架构,说明项目的开发方式以及开发环境的配置方法,然后依次介绍数据库、微信小程序客户端、图书推荐模块、后台管理系统四方面的设计与实现方法。
第5章:总结与展望。对本论文已完成的各项内容进行总结,并提出需要注意的问题。
1.5 本章小结
本章为绪论部分。1.1节主要介绍了图书视频微信小程序的研究背景和意义;1.2节简要介绍推荐系统的国内外研究现状;1.3节明确本论文的研究内容;1.4节列出了论文的撰写组织结构,进一步明确本文的组织结构和模块设计实现计划。
- 系统相关技术
本章主要介绍该系统开发过程中使用的五项主要技术:微信小程序、laravel框架、RESTful API、MySQL数据库和推荐算法。本系统的设计与实现就是建立在这些理论和框架的应用之上。
2.1 微信小程序
移动互联网规模不断扩大,用户对于手机的功能需求日益多元化,使得移动APP市场庞大而繁琐。微信作为当代社会首屈一指的社交软件,也将自己的功能拓展到轻型应用解决方案领域,从而推出了“微信公众平台小程序” [8]。
微信小程序是一种不需要安装即可使用的应用,它体现了“用完即走”的概念。在微信生态下,用户很容易获取小程序应用。小程序只占用少量内存空间,用户的应用程序下载和安装过程十分迅速,从用户点击到开始使用的时间很短。小程序降低了应用的传播成本以及用户的使用成本,却能完整地实现原生App的基本功能,十分适合线上的电子商务场景。
小程序的开发框架经历了大量的基本优化设计,运行速度接近原生App,在Android端和iOS端上的实现方式基本一致。MINA优化的目的就是希望开发者可以方便高效地开发出与原生APP体验相似的手机程序。如图2.1所示,整个MINA架构主要分为三部分:视图层(View)、逻辑层(App Service)和系统层(Native)[9]。
- 视图层(View)
View提供了一组类似于HTML的语言。开发人员使用WXML文件构建页面基础结构视图,使用WXSS文件构建页面视图的结构和布局。WXML文件中的动态数据由逻辑层处理后实时变动。
- 逻辑层(App Service)
App Service作为小程序的服务中心,由微信客户端单独加载运行。页面呈现和页面交互处理逻辑所需的数据都部署在App Service中,App Service的js文件使用JavaScript来编写交互逻辑、网络请求、数据处理。
图2.1 微信MINA框架架构图
- 系统层(Native)
Native主要包括缓存、数据存储、网络存储与调用。假设逻辑层需要实现HTTP网络请求,就需通过调用微信API接口(wx.request)并配置相应的url地址、参数和方法,最终对请求结果按照success、fail、complete三种情况进行处理。
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示: