游戏推荐系统Report_第1页
游戏推荐系统Report_第2页
游戏推荐系统Report_第3页
游戏推荐系统Report_第4页
游戏推荐系统Report_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

Game-onlineRecommendation邓鹏鹏:10648204郭文嘉:10648206蔡竹华:10648200刘强:106482632006年12月24日网络金融第2小组组项目背景对于广大的游戏玩家来说,要准确的获取大量互联网上的游戏信息是很难通过手工来做到,需要一种信息收集工具来获取必要的信息。目前互联网上游戏种类众多,游戏玩家面对此现状,往往难于选择,故亟需一种这样的系统:能根据玩家的输入,返回玩家可能感兴趣的游戏列表。

2网络金融第2小组组项目开发示意图Crawling文本提取模块IEURL列表游戏数据库游戏推荐系统游戏相关属性3网络金融第2小组组项目开发主要模块网页抓取模块Crawler:从url列表中取出项以string形式传给Crawler,抓取网站的html文档,存入文件系统中,该模块采取多线程实现;文本提取模块IE:将文件系统中的html文档作为输入,经相应的词法语法分析,提取出需要的属性存入数据库;游戏推荐模块;友好简洁的查询功能。4网络金融第2小组组关键技术与算法(1)前台显示模块的关键技术:采用基于J2EE平台的MVC框架;Crawling:将网络爬虫的搜索范围限制在某几个网站之内,并且专门提取属于游戏的超链接,并下载相应得网页;从html文件中提取兴趣特性:根据html文件特点,设置正则文法,对html文件进行语法分析,从而提取游戏相关内容;技术难点:因为不同的html页面有不同的组织结构,不能用统一的规则去处理,并且对于游戏属性等关键字的提取涉及到自然语言处理;5网络金融第2小组组关键技术与算法(2)数据库连接池;多线程抓取;6网络金融第2小组组Crawler的实现基于课程第一次作业提供的底层模块:CHTTP,CHTMLREF,CREF,CURL等

多线程技术:调用C++中pthread_t类提供的pthread_create()和pthread_join()方法创建和销毁线程,难点在于主线程和子线程间传递多个不同类型的参数以及线程间的互斥访问。通常的解决办法是设置同步和互斥变量进行线程间的通信和访问控制,考虑到本例中线程之间并没有数据上的依赖关系,因此简化了设计,通过为每一主线程设置全局数组变量,为每一子线程划分爬取任务及访问区间,避免了线程间的访问冲突,也减少了线程间的传递的参数类型。同时,采取了出错重爬机制,提高了爬取的成功率。

7网络金融第2小组组信息提取模块的实现使用SimpleTemplateExtraction技术,从固定格式的网页中顺序提取信息,对于每个信息槽(slot),判断槽的起始位置以及结束位置,然后提取信息到数据库。借鉴ExecHLRT(wrapper<h,t,l1

,

r1

,l2

,r2,…h…>,Pagep)算法的思想。

8网络金融第2小组组RecommendationSystem(1)

RecommendValue=+Content-basedFilteringGroupLensCollaborativeFiltering(1-u)u9网络金融第2小组组

RecommendationSystem(2)

--Content-basedFiltering

通过wrapper和正则表达式匹配,取出系列和类型等属性。不同的属性分配不同的权重值系列和类型的权重应比较大参与推荐的属性:系列,类型,时间,厂商,总评价时间:2005年2月28日总评分:75系列:模拟人生类型:模拟养成厂商:Maxis10网络金融第2小组组

RecommendationSystem(3)

--Content-basedFiltering

在游戏名中通过正则表达式//[0-9]+$/来判断游戏是否有系列名称,但对于像名为“地球2160”的游戏,不能认为它是“地球”系列游戏的第2160款作品处理时有歧义,对于结果没有影响不能处理以罗马数字表示的系列,如“忍者神龟III:变种格斗”增加对游戏名的分析,作更多的条件判断仍然会遇到许多个别的不规范,不匹配的格式做一些人工的修正,尽量规范数据库中信息的格式;或者有针对的增加特别的处理问题和解决办法11网络金融第2小组组

RecommendationSystem(4)

--GrouplensCollaborativeFiltering

Aij

表示用户i对游戏j的评分(0~100)GameIdUserId联合过滤矩阵12网络金融第2小组组RecommendationSystem(5)

--GrouplensCollaborativeFiltering

Predictionforactiveuseraonitemq联合过滤矩阵A13网络金融第2小组组RecommendationSystem(6)

--GrouplensCollaborativeFilteringActiveUser是谁?虚拟了一个ActiveUser的数据的取值是多少?取值使得和最大的值相当如何分配Content-basedValue和GrouplensCollaborativeValue的重要度?权重因子u对Content-basedValue和CollaborativeValue分别进行归一化RecommendValue=u*Content-basedValue+(1-u)*CollaborativeValue问题和解决办法14网络金融第2小组组查询界面分类检索根据用户选择的类别,例如厂商和游戏类别,列出属于该类的所有游戏信息以及推荐的游戏列表。关键字检索根据用户输入的关键字,返回与之匹配的游戏信息。15网络金融第2小组组

16网络金融第2小组组

17网络金融第2小组组分类检索详细查询页提供了三个类别的检索,如名称、厂商、游戏类别。

18网络金融第2小组组

19网络金融第2小组组

20网络金融第2小组组总结开发项目本身是个学习的过程,学习并利用到Crawler的一些算法,熟悉了J2EE架构;在项目的进行中,项目组成员积极主动,互相协作,严格按照项目开发流程进行,保证了项目的最终

温馨提示

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

评论

0/150

提交评论