- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网络金融第2小组 Game-online Recommendation 邓鹏鹏郭文嘉蔡竹华刘 强项目背景 对于广大的游戏玩家来说,要准确的获取大量互联网上的游戏信息是很难通过手工来做到,需要一种信息收集工具来获取必要的信息。 目前互联网上游戏种类众多,游戏玩家面对此现状,往往难于选择,故亟需一种这样的系统:能根据玩家的输入,返回玩家可能感兴趣的游戏列表。 项目开发示意图 项目开发主要模块 网页抓取模块Crawler :从url列表中取出项以string形式传给Crawler,抓取网站的html文档,存入文件系统中, 该模块采取多线程实现; 文本提取模块IE:将文件系统中的html文档作为输入,经相应的词法语法分析,提取出需要的属性存入数据库; 游戏推荐模块; 友好简洁的查询功能。 关键技术与算法 (1) 前台显示模块的关键技术:采用基于J2EE平台的MVC框架; Crawling:将网络爬虫的搜索范围限制在某几个网站之内,并且专门提取属于游戏的超链接,并下载相应得网页 ; 从html文件中提取兴趣特性:根据html文件特点,设置正则文法,对html文件进行语法分析,从而提取游戏相关内容; 技术难点:因为不同的html页面有不同的组织结构,不能用统一的规则去处理,并且对于游戏属性等关键字的提取涉及到自然语言处理; 关键技术与算法 (2) 数据库连接池; 多线程抓取; Crawler的实现 基于课程第一次作业提供的底层模块:CHTTP, CHTMLREF, CREF, CURL等 多线程技术:调用C++中pthread_t类提供的pthread_create()和pthread_join()方法创建和销毁线程,难点在于主线程和子线程间传递多个不同类型的参数以及线程间的互斥访问。通常的解决办法是设置同步和互斥变量进行线程间的通信和访问控制,考虑到本例中线程之间并没有数据上的依赖关系,因此简化了设计,通过为每一主线程设置全局数组变量,为每一子线程划分爬取任务及访问区间,避免了线程间的访问冲突,也减少了线程间的传递的参数类型。同时,采取了出错重爬机制,提高了爬取的成功率。 信息提取模块的实现 使用Simple Template Extraction技术,从固定格式的网页中顺序提取信息,对于每个信息槽(slot),判断槽的起始位置以及结束位置,然后提取信息到数据库。 借鉴ExecHLRT(wrapperh, t, l1 , r1 ,l2 ,r2,… h… ,Page p)算法的思想。 Recommendation System (1) Recommendation System (2) -- Content-based Filtering 通过wrapper和正则表达式匹配,取出系列和类型等属性。 不同的属性分配不同的权重值 系列和类型的权重应比较大 Recommendation System (3) -- Content-based Filtering 在游戏名中通过正则表达式//[0-9]+$/来判断游戏是否有系列名称,但对于像名为“地球2160”的游戏,不能认为它是“地球”系列游戏的第2160款作品 处理时有歧义,对于结果没有影响 不能处理以罗马数字表示的系列,如“忍者神龟III:变种格斗” 增加对游戏名的分析,作更多的条件判断 仍然会遇到许多个别的不规范,不匹配的格式 做一些人工的修正,尽量规范数据库中信息的格式;或者有针对的增加特别的处理 Recommendation System (4) -- Grouplens Collaborative Filtering Aij 表示用户i对游戏j的评分(0~100) Recommendation System (5) -- Grouplens Collaborative Filtering Recommendation System (6) -- Grouplens Collaborative Filtering Active User是谁? 虚拟了一个Active User的数据 的取值是多少? 取值使得 和最大的 值相当 如何分配Cont
文档评论(0)