ImageVerifierCode 换一换
格式:DOCX , 页数:35 ,大小:203.14KB ,
资源ID:27957411      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27957411.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(完整版基于知识库的礼品推荐系统的设计与实现毕业论文.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

完整版基于知识库的礼品推荐系统的设计与实现毕业论文.docx

1、完整版基于知识库的礼品推荐系统的设计与实现毕业论文 硕士研究生学位论文 题目:基于知识库的礼品推荐系统的设计与实现学 号: 085707 姓 名: 路卫杰 专 业: 计算机科学与技术导 师: 孟祥武 学 院: 计算机学院 年 月 日独创性(或创新性)声明本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。申请学位论文与资料若有不实

2、之处,本人承担一切相关责任。本人签名: 日期: 关于论文使用授权的说明学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即:研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保存、汇编学位论文。(保密的学位论文在解密后遵守此规定)非保密论文注释:本学位论文不属于保密范围,适用本授权书。本人签名: 日期: 导师签名: 日期: 基于知识库推理的礼品推荐系统的设计与实现摘 要当今,个性化推荐系统已经在很多领域得到了应用,如

3、网络商品推荐、音乐推荐、影视推荐等。推荐技术包括协同过滤、内容过滤、知识发现等,但是这些推荐技术并没有考虑推荐领域的知识对推荐结果的影响,或者推荐结果没有通过与用户的交互过程中得到完善和改进。鉴于以上问题,本文针对礼品推荐领域提出了基于知识库的推荐方法。首先在调研了礼品信息和礼品赠送知识后构建礼品知识库,然后礼品专家通过人工方式对礼品知识库进行初始化,最后系统根据礼品的基本信息计算出礼品综合相似度对礼品知识库进一步完善。本文采用AJAX等技术设计并实现具有良好用户体验的知识库推荐用户接口,采用全文检索引擎工具包Lucene对礼品信息构建索引并根据用户的日志设计个性化的礼品搜索功能。 本文第一章

4、介绍了推荐系统的研究背景和国内外的研究现状以及本文的研究路线方法和研究内容。第二章介绍了主要的推荐算法和本系统所涉及的关键技术。第三章描述了系统的需求分析,包括任务概述、需求规定以及运行环境的规定。第四章阐述了系统设计,包括系统整体功能设计和系统整体架构设计。第五章详细描述了系统实现中的关键问题和解决方案。第六章对系统进行功能测试和性能测试。第七章是工作总结和进一步的展望。 关键词:礼品推荐 知识库 相似度 个性化 搜索Knowledge-basedGiftsRecommendation SystemDesign and ImplementationABSTRACTPersonalized r

5、ecommendation system widely used in many fields, such as network products recommendation, music recommendation, movie recommendation, etc. Recommendation techniques include collaborative filtering, content filtering, knowledge discovery, etc. However, these recommendations do not consider the influe

6、nces that the knowledges in recommended areas to the results, or the recommended results isnt perfected or improved through the process of interaction with users. In view of the above problems, this paper proposed a recommendation method based on knowledge base for gift recommendation. First, knowle

7、dge base for gift is built after a series of researches, then initialized by gift specialists manually, and finally ajusted according to similarity which is calculated on the basic information of gifts. AJAX technique is introduced to achieve the user interface in order to supply good user experienc

8、e,and Lucene, the full-text search engine toolkit is also used to construct index for the gifts information and design personalized search function in accordance with the users log. In Chapter 1, the background of recommendation system, the significance of the study, and the methods and contents of

9、the study is introduced. In Chapter 2, we describe the main algorithms and key technologies that involved. Requirements analysis, includes overview of the work, the demand of requirement and environment is described in Chapter 3. The main content in Chapter 4 is the system design, which is divided i

10、nto two parts, the function part and the construction part. Chapter 5 is the detailed description of the key problems and solutions in the process of system construction. In Chapter 6, functional testing and performance testing of the system is operated. The last Chapter is a summary of our work and

11、 further prospects.KEY WORDS:gifts recommendation, knowledge base,similarity, personalized,search第一章 绪论1.1 研究背景随着互联网和电子商务的迅速发展,人类己步入网络信息时代。随着信息技术特别是网络技术的发展,信息系统的规模越来越大,数量越来越多,信息获取的工具和方法越来丰富,在更方便的为用户提供越来越多信息和服务的同时,其结构和内容越来越复杂,在海量信息中,用户及时、准确地获得所需要的信息也更加困难1。海量信息的同时呈现,一方面使用户很难从中发现自己感兴趣的部分, 另一方面也使得大量少人问津

12、的信息成为网络中的“暗信息”,无法被一般用户获取2。面对网络信息量呈指数增长,如何从这浩瀚的海洋中取得所需要的、真正有用的信息,已成为广大网络用户共同面临的问题。首先,由于很难准确描述出需要的信息的特征,用户常常会面对大量的信息而束手无策,迷失在大量的信息空间中;其次,信息系统单纯依靠提供的检索方式,往往不能满足用户描述检索条件的需求,找不到描述信息需求的方式。另外,用户每次获取信息,都要输入大量、烦琐的检索条件,而信息系统不能通过服务历史和服务过程掌握用户需求,信息系统不能产生对用户持久的吸引力。在这种背景下个性化智能推荐服务(Personalized Recommender Service

13、s)应运而生并迅速发展起来,它通过与用户交互过程中获取的信息推测用户的兴趣偏好,并根据用户的兴趣偏好推荐符合用户兴趣偏好的信息。个性化智能推荐服务不仅可以帮助用户找到所需信息,而且通过个性化智能推荐服务,可以有效保留用户,提高信息系统的吸引力和用户的忠诚度3。1.2 研究现状1.2.1 国外研究现状在推荐用户模型方面,常用的用户建模技术有向量空间模型4、用户评价矩阵5,以及机器学习技术6。在推荐算法方面,协同过滤是应用最广泛的个性化推荐技术。协同过滤首先计算用户之间的相似度,然后将相似度最高的用户作为最近邻居,最后通过最近邻居用户产生推荐结果。Kuo R J, Liao J L和 Tu C提出

14、了一个利用神经网络和遗传K-means 算法通过分析用户在电子商务网站的浏览路径来获取用户偏好的方法。各种挖掘技术如关联规则挖掘、聚类挖掘等被应用于Web 日志的分析中,以提高推荐系统的精度7。Amazon推荐系统是由Gery Linden,Brent Smith和Jeremy York主导开发的集研究与应用于一体的推荐系统,采用项目-项目协同过滤算法,根据用户己购买和己评分项目寻找相似项目,将相似度高的项目列入到推荐列表中。通过比较相似项目表与每个用户已购买和己评分的项目,系统整合比较结果将关联度最高和最畅销的项目推荐给用户。根据用户己购买和己评分项目寻找相似项目的计算较快,它只依赖于用户已

15、购买和已评分的项目数量,采用在线方式进行。因此,即使是面对大规模数据集也有较快的运行速度8。由于基于项目协同过滤推荐算法高度的关联性,推荐质量也比较高9。MovieLens是由美国明尼苏达大学计算机科学与工程系开发的研究型自动协同过滤推荐系统,用于推荐电影。MovieLens 是一个基于Web 的推荐,系统通过浏览器方式进行用户评分数据收集与推荐结果显示,用户使用更方便。用户对网站提供的电影进行评分,用户可在 not seen和0.5-5.0共11个选项中进行选择,网站根据每个用户的评分计算并分析用户的偏好,并据此向用户进行电影推荐。MovieLens采用了基于用户的协同过滤和关联规则相结合的

16、技术,计算用户的相似度并根据相似度分析用户的“邻居”,这些“邻居”是具有相似兴趣爱好的“邻居区”,“邻居”们对电影的评分数据被用来为目标用户生成个性化推荐项目10。该系统既是一个个性化推荐研究的实验平台,也是向人们推荐感兴趣电影的应用系统,其不定期推出的用户评分数据为世界各国推荐领域研究人员提供了原始的实验数据11。Ringo是由MIT 媒体实验室开发的研究型协同过滤推荐系统,用于提供音乐推荐服务。Ringo 系统可以向用户推荐他们喜欢的音乐,预测用户不喜欢的音乐,也可以预测用户对特定音乐的评分。FAB:Stanford 大学数字图书馆项目组开发的基于内容过滤和协同过滤的推荐系统,用于推荐We

17、b 页面。其特点是综合了基于内容过滤的推荐和协同过滤推荐的优点,同时支持两种类型的推荐服务。Google News是一个为新闻领域开发的个性化资讯平台。该平台采用基于MinHash聚类的协同过滤、统计隐含语义标引(Probabilistic Latent Semantic Indexing,PLSI)和访问计数三种方法来产生推荐,使用一个线性模型将不同算法产生的推荐结合起来 12。Gift Ideas()是一个专业的个性化礼品推荐网站,网站的礼品知识库非常专业,推荐页面用户体验性非常好。网站从收礼人信息,送礼场合,个性化定制,礼品分类等多方面向用户进行礼品推荐。1.2.2 国内研究现状复旦大学

18、的邓爱林等针对用户评分数据极端稀疏情况下传统相似性度量方法的不足,提出了一种基于项目评分预测的协同过滤推荐算法,根据项目之间的相似性初步预测用户对未评分项目的评分,在此基础上,采用一种新颖的相似性度量方法计算目标用户的最近邻居 13。浙江大学的孙小华针对协同过滤在无法得到项目的内容信息和用户个人信息的情况下,在数据稀疏和冷启动情况下提高预测准确性方面采用了属于特征递增型的Pear After_SVD方法和属于转换型的LCM STI方法。针对新用户和新项目的冷启动问题采用了基于统计的众数法阻及信息熵法来解决14。清华大学的邢春晓和高凤荣等人针对传统协同过滤算法不能及时反映用户兴趣变化的问题,提出

19、了两种改进度量:基于时间的数据权重和基于资源相似度的数据权重,在此基础上将它们有机结合,将这两种权重引入基于资源的协作过滤算法的生成推荐过程中,通过实验证明改进后的算法比传统协作过滤算法在推荐准确度上有明显提高15。北京航空航天大学的张光卫等人针对传统相似度度量方法存在的不足,利用云模型在定性知识表示以及定性、定量知识转换时的桥梁作用,提出一种在知识层面比较用户相似度的方法,克服了传统基于向量的相似度比较方法严格匹配对象属性的不足。以该方法为核心,在全面分析传统方法的基础上,提出一种新的协同过滤推荐算法。实验结果表明,算法在用户评分数据极端稀疏的情况下,仍能取得较理想的推荐质量 16。国内推荐

20、系统的应用现状如下:豆瓣网()是一个以图书,影视和音乐数字产品推荐为目的的网站。注册用户可以对所喜欢的数字产品进行1-5分的评分,豆瓣后台通过一定的推荐算法向用户进行推荐,同时,用户可以对数字产品进行评论,并可以参考其他用户的评论作为推荐依据。最后用户还可以加入豆瓣的兴趣小组,这样同兴趣小组成员的推荐更加精准,更加符合用户的兴趣。淘宝礼物( Data-base - KDD)知识发现是从数据库中提取隐含的、先前未知的、潜在有用的知识或信息模式的决策支持方法。知识发现需要提取发现用户和产品的特征,所采用的方法是分类、聚类、关联规则等数据挖掘方法。知识发现将用户请求视作一个查询 ,然后基于用户需求和

21、偏好进行推荐。这个方法需要了解产品用户之间的关系和特征。这些知识的获取有赖于知识库的建立,使得数据挖掘的方法得到了巨大的应用21。1. 数据挖掘技术的应用数据挖掘就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中, 提取隐含在其中的但又是潜在有用的信息和知识的过程22。随着信息技术的高速发展,人们积累的数据量急剧增长,动辄以TB计,如何从海量的数据中提取有用的知识成为当务之急。数据挖掘就是为顺应这种需要应运而生发展起来的数据处理技术。数据挖掘是知识发现的关键步骤。电子商务推荐系统中的数据挖掘主要包括关联规则挖掘和分类挖掘两类 ,因此基于数据挖掘的知识发现方法又分为关联规则推荐和分类

22、挖掘推荐两种。关联规则推荐方法是先根据销售数据发现不同商品在销售过程中的相关性,然后基于生成的关联规则模型和用户的购买行为产生推荐结果;分类挖掘推荐方法是通过聚类、Bayesia网络、神经网络等多种机器学习方法产生分类挖掘模型,再根据用户输入信息和产品的特征信息,预测是否向用户推荐该产品23。2. 知识发现的优缺点优点:知识发现可以利用电子商务网站的交易数据、日志数据等信息提高推荐系统的推荐质量和推荐效率。缺点:一种知识发现的算法只能适应某一领域的数据,而更换领域后知识发现的算法就不太适用了,因此需要重新定义规则或算法。2.4 系统实现关键技术介绍2.4.1正则表达式正则表达式(Regular

23、 Expression)在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和替换那些符合某个模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作24。一个正则表达式通常被称为一个模式 (pattern) 25,就是用某种模式去匹配一类字符串的一个公式,由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成,用来描述或者匹配一系列符合某个句法规则的字符串。简单的说,正则表达式就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征。比如表达式“ab+” 描述的特征

24、是“一个a和任意个b ”,那么ab,abb,abbbbbbbbbb 都符合这个特征。正则表达式可以用来:(1)验证字符串是否符合指定特征,比如验证是否是合法的邮件地址。(2)用来查找字符串,从一个长的文本中查找符合指定特征的字符串,比查找固定字符串更加灵活方便。(3)用来替换,比普通的替换更强大。JAVA对正则表达式提供了强大的支持26,本系统正是借助于JAVA中对正则表达式的强力支持来实现在JAVA源文件中对类之间依赖关系的扫描。在JAVA中使用正则表达式匹配字符串的典型调用语句是Pattern p = Patternpile(a*b);Matcher m = p.matcher(aaaaa

25、b);boolean b = m.matches();Java.util.regex.Pattern是正则表达式的编译表示形式,指定为字符串的正则表达式必须首先被编译为此类的实例。然后,可将得到的模式用于创建java.util.regex.Matcher对象, 依照正则表达式,该对象可以与任意字符序列匹配。执行匹配所涉及的所有状态都驻留在匹配器中,所以多个匹配器可以共享同一模式。最后可通过Matcher.matches()方法验证字符序列与所编译的正则表达式是否相匹配。在JAVA中使用正则表达式查找字符串的典型调用语句是boolean b = Patternpile(regEx).matche

26、r(str).find()其中regEx是需要编译的正则表达式,str为需要进行查找的文本或字符串,通过Matcher.matches()方法可以查找文本或字符串str中是否存在符合正则表达式规则regEx的字符串27。2.4.2 LuceneLucene 是一个apache软件基金会jakarta项目组的一个子项目28,Lucene是用Java 写的全文检索引擎工具包,可以方便地嵌入到各种应用中实现针对应用的全文索引 检索功能,Lucene 有两个主要的服务,索引和检索,两者任务是相互独立的。这使得开发人员可以根据需要对它们进行扩展。Lucene 提供了丰富的API ,可以与存储在索引中的信

27、息方便的交互29。需要说明的是它并不是一个完整的全文检索应用,而是为应用程序提供索引和搜索功能。即若想让Lucene 真正起作用,还需在其基础上做一些必要的二次开发30。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。Lucene的原作者是Doug Cutting,他是一位资深全文索引检索专家,曾经是V-Twin搜索引擎的主要开发者,后在Excite担任高级系统架构设计师,目前从事于一些Internet底层架构的研究。早先发布在作者自己的,后来发布在SourceForge,2001年年底成为apach

28、e软件基金会jakarta的一个子项目:.bupt.page包中的类的描述如表5-1。表5-1 edu.bupt.page包类结构清单类名描述Page页面的参数类,记录页面的基本信息PageUtil页面对象生成类,用于生成Page对象Result页面返回结果封装类 edu.bupt.service包edn.bupt.service包中的类的描述如表5-2。表5-2 edu.bupt.service包类结构清单类名描述BehaviorService用户行为记录业务逻辑类,用于记录用户的行为GiftInfoService查看礼品详细信息业务逻辑类,用户查看礼品的详细信息GiftSimilarity

29、Service礼品相似度推荐业务逻辑类,用户礼品相似度推荐的业务逻辑实现OccationService节日场合推荐业务逻辑类,节日场合推荐的业务逻辑实现PersonalService收礼人描述推荐业务逻辑类,收礼人描述推荐的业务逻辑实现RecipientService收礼人信息推荐业务逻辑类,收礼人信息推荐的业务逻辑实现SimilarityService礼品关联度推荐业务逻辑类,礼品关联度推荐的业务逻辑实现 edu.bupt.struts.action包edn.bupt.struts.action包中的类的描述如表5-3。表5-3 edu.bupt.struts.action包类结构清单类名描

30、述BehaviorAction用户行为记录控制类GiftInfoAction查看礼品详细信息控制类GiftSimilarityAction礼品相似度推荐控制类OccationAction节日场合推荐控制类PersonalAction收礼人描述推荐控制类RecipientAction收礼人信息推荐控制类SimilarityAction礼品关联度推荐控制类SearchAction礼品搜索控制类UserAction用户注册登录控制类,用于处理用户的注册和登录 edu.bupt.vo包edn.bupt.vo包中的类的描述如表5-4。清单中只列出了POJO对象,每个POJO对象都有一个对应的DAO对象,

31、DAO对象不再赘述。表5-4 edu.bupt.vo包类结构清单类名描述Age年龄表对应的POJO类Business商家表对应的POJO类Classes礼品类别表对应的POJO类Clickgift用户行为表对应的POJO类Gifts礼品表对应的POJO类GiftSimilarity礼品相似度表对应的POJO类Interest兴趣爱好表对应的POJO类Occation节日场合表对应的POJO类OccationGift节日场合礼品表对应的POJO类Recipients收礼人信息表对应的POJO类RecipientGift收礼对象礼品表对应的POJO类Relation关系表对应的POJO类Similarity礼品关联度表对应的POJO类Users用户表对应的POJO表 org.json包由于org.json是第三方开源的包,故在此不再描述。4.3小结本章主要从系统整体功能和系统整体架构两方面对系统设计进行了阐述。系统整体功能描述了系统整体模块图和系统推荐模块图。系统整体模块图从系统整体方面对系统的功能模块进行划分和描述。系统推荐模块图主要从推荐功能对系统的模块进行了划分和描述。系统整体架构描述了系统整体架构设计图,系统整体架构设计图从系统架构和流程对系统进行了描述。第五

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1