基于大数据挖掘构建游戏平台个性化推荐系统的研究与实践.docx

上传人:啊飒飒 文档编号:11707320 上传时间:2021-08-31 格式:DOCX 页数:6 大小:463.54KB
返回 下载 相关 举报
基于大数据挖掘构建游戏平台个性化推荐系统的研究与实践.docx_第1页
第1页 / 共6页
基于大数据挖掘构建游戏平台个性化推荐系统的研究与实践.docx_第2页
第2页 / 共6页
基于大数据挖掘构建游戏平台个性化推荐系统的研究与实践.docx_第3页
第3页 / 共6页
基于大数据挖掘构建游戏平台个性化推荐系统的研究与实践.docx_第4页
第4页 / 共6页
基于大数据挖掘构建游戏平台个性化推荐系统的研究与实践.docx_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《基于大数据挖掘构建游戏平台个性化推荐系统的研究与实践.docx》由会员分享,可在线阅读,更多相关《基于大数据挖掘构建游戏平台个性化推荐系统的研究与实践.docx(6页珍藏版)》请在三一文库上搜索。

1、专题:大数据技术与应用电信科学 2014 年第 10 期基于大数据挖掘构建游戏平台个性化 推荐系统的研究与实践尤海浪 1,钱锋 2,黄祥为 1,胡亮亮 1(1. 炫彩互动网络科技有限公司 南京 210029; 2. 中国电信股份有限公司广东研究院 广州 510630)摘 要: 给出了一种基于大数据挖掘的手机游戏平台个性化推荐机制 , 通过对游戏用户 行为数据的获取 、存 储、清洗、挖掘,由改进的余弦相似度算法计算出游戏的相似度 ,向用户推荐其喜欢的游戏。 该机制可以有效提 升游戏推荐的准确性,增强用户黏性,为游戏平台创造更多价值。关键词:大数据;手机游戏;个性化推荐doi: 10.3969/j

2、.issn.1000-0801.2014.10.005Research and Practice of Building a Personalized Recommendation System for Mobile Game Platform Based on Big Data MiningYou Hailang1, Qian Feng2, Huang Xiangwei1, Hu Liangliang1(1. Dazzle Interactive Network Technologies, Nanjing 210029, China;2. Guangdong Research Institu

3、te of China Telecom Co., Ltd., Guangzhou 510630, China)Abstract: The personalized recommendation system was presented, which was based on data mining technology in mobile game platform, including the game data acquisition, data storage, data cleaning, data mining, and the cosine similarity algorithm

4、 was used to improve the similarity of the games. The mechanism can effectively improve the accuracy of game recommendation, enhance user stickiness, and create more value for the game platform.Key words: big data, mobile game, personalized recommendation1引言随着互联网的发展,人们逐渐从信息匮乏的时代进入 信息过载(information o

5、verload)的时代。 在这个时代,无论 是作为信息消费者的普通用户,还是作为信息生产者的内 容提供商都遇到了很大的挑战。 比如手机游戏行业,用户 关心的是如何从大量游戏中找到自己感兴趣的游戏,而游 戏平台商则关心如何让自己平台的游戏脱颖而出。个 性 化 推 荐1 是根据用户的兴趣特点及行为向用户 推 荐 其 感兴趣的信息或产品 , 主要解决如何在海量信息 中发现用户感兴趣的信息 。 对于手机游戏平台来说 , 通 过 基 于大数据挖掘技术构建个性化推荐系统 , 能 有 效 帮 助 用 户发现喜欢的游戏 , 实现游戏消费者和游戏平台商 的双赢。结合笔者在手机游戏平台进行数据分析的相关工作 经验

6、, 本文给出了在游戏平台上基于大数据挖掘技术,构 建个性化推荐系统的实践, 先存储用户的海量行为数据, 然后基于 Hadoop 框架处理离线数据, 进行游戏之间的相 似度矩阵计算,运用 Redis 存储中间结果和最终推送结果, 最后通过手机客户端向用户提供推荐列表。2 推荐算法择优2.1 推荐算法选择个性化推荐系统算法通常有 ItemCF(基于商品的协同 过 滤 )、UserCF( 基 于 用 户 的 协 同 过 滤 )、Content_Based ( 基 于内容的推荐)、Slope One、SVD(singular value decomposition, 奇异值分解)、组合算法等。Item

7、CF 是当今很多大型网站都在采用的核心算法之 一, 适用于项目 (item) 的增长速度远远小于用户 (user) 且 item 之间的相似性比较稳定的场景,可以在离线系统中将 item 的相似度矩阵计算好, 以供线上近乎即时地 进 行 推 荐。 UserCF 常用于咨询服务类的应用,可以发现和用户具 有同样爱好的人,因为用户的相似用户群非常敏感 , 所以 需要频繁地计算出用户的相似用户矩阵,导致运算量会非 常大。 Content_Based 一般用于文本挖掘的项目中,每天都 要根据 Web 生成的或者通过爬虫抓取的资讯, 不断地计 算 item 之间的相似性,提取关键词,该算法可以很好地解

8、决推荐系统冷启动问题, 比如想推出一个新的 item, 因 为 没有一个人有对这个新 item 的评分和行为, 所以之前的 算法不可能推荐新的东西给用户,但可以用基于内容的算 法将新的 item 计算出它属于哪个类, 然后根据用户对该 item 类的喜好程度推荐新 item。 Slope One 算法简单实现 了 ItemCF 算 法 , 该算法相比普通的 ItemCF 只 需 要 一 半(甚至更少)的存储量,更容易计算, 但是准确性方面不够 稳定,鲜用于商业系统。 SVD 实际上是提取一般实矩阵“特 征值”的算法,该算法拿到“特征值”后,可以分析出主成分 因子,也就是说,可以对原来庞大的、常

9、常又非常稀疏的矩 游戏产品分类属性尚未标准化,基于内容过滤的推荐算法 难以反映用户的真正需求 ;相对而言,游戏平台对用户的 访问、下载与付费等行为数据均有记录 ,现阶段适合采用 协同过滤算法。基 于 行 为 的 协 同 过 滤 算 法 大 体 上 分 为 基 于 用 户 的 UserCF 算法和基于物品的 ItemCF 算 法 ,UserCF 给 用 户 推 荐 那 些 和 他有共同兴趣爱好的用户喜欢的物品 , 需 要 维 护一个用户相似度的矩阵 , 而 ItemCF 给用户推荐那些和 他 之 前 喜 欢的物品类似的物品 , 需要维护一个物品相似 度矩阵。 现阶段游戏平台一般更注重用户消费行为

10、而不 是 社 交 行 为 , 而且一般用户的基数远大于游戏的基数 , 存 储 UserCF 的用户相似度矩 阵的开销远远大于存储 ItemCF 的物品相似度矩阵 , 所以选择基于物品的协同过 滤算法。对用户的个性化推荐,主要有两个步骤:一是 计 算 游 戏之间的相似度;二是根据游戏的相似度和用户的历史行 为生成游戏推荐列表。要计算游戏的相似度,需先确定用户与游戏关系的矩 阵。 如图 1 所示,最左边是用户下载游戏的集合,用户下载 过某款游戏,则认为该用户对该游戏感兴趣 ,每一行代表 一个用户感兴趣的游戏集合。 对于每个物品集合,将里面 的物品两两进行组合 , 得到一个新的矩阵 , 这 些 矩

11、阵 “ 相 加 ” 得 到 最 右 边 的 C 矩 阵 ,Cij 表示同时下载游戏 i 和 游 戏 j 的用户列表。游戏相似度的计算有如下几种算法。(1)基本算法 计算式为:阵进行降维和分解,可以大大降低矩阵的维度, 提高运算 的速度,但是需要付出较大的空间资源。 组合算法多种多 w = |N(i)N(j)|ij|N(i)|(1)样,主要是对上面一些算法的组合操作 , 比如将多种算法 计算出来的结果,加权之后排序推荐给用户 , 也可以将多 种算法计算出来的结果,各取前几个推荐给用户, 增加推 荐结果的多样性等。对比基于内容的协同过滤 (content filtering) 算法与基其中,wij

12、 是游戏 i 和游戏 j 的相似度,分母|N(i)|是喜欢游戏 i 的用户数,而分子|N(i)N(j)|是同时喜欢游戏 i 和游 戏 j 的用户数。(2)余弦相似度(cosin-base)算法 计算式为:于行为的协同过滤 (collaborative filtering) 算 法2,3, 发 现 基 于内容的过滤算法主要利用物品的内容数据或者外部资 |N(i)N(j)| w =ij姨|N(i)|N(j)|(2)讯, 认为用户会喜欢和他以前喜欢的在内容上相似的物 品;而基于行为的协同过滤算法通过分析大量的用户对物 品的行为数据,从中找出特定的行为模式 , 据此来预测用 户的兴趣并给用户做出推荐。

13、 对于手机游戏平台来说,因通过降低游戏 j 的权重,该算法能减轻热门游戏和很 多游戏相似的可能性,从而提升推荐的质量。(3)余弦相似度 (cosin-alph)算法 计算式为: |N(i)N(j)| wij=|N(i)|N(j)|1-图 1 用户与游戏关系矩阵 (3) wij wij=maxwijj(5)该算法进一步降低了游戏 j 的权重,可以根据实际的 应用效果指定 的取值。(4)改进的余弦相似度(cosin-iuf)算法对于游戏平台来说,存在部分恶意下载用户,为 了 保 证游戏之间相似度的可靠性,需要修正活跃用户对游戏相 似度的贡献,即对同一款游戏来说,已经下载了 100 款 游在改进的余

14、弦相似度算法基础上进行归一化,可以进 一步增加推荐的准确度,也可以提高推荐的覆盖率和多样 性。 选择该算法为游戏平台的推荐算法进行实践。完成第一步的游戏相似度计算后,通过如下计算式计 算用户 u 对游戏 j 的兴趣:戏的用户的贡献度要小于只下载了 10 款游戏的用户,调 整后的计算式如下:pij= iN(u)S(i,k)wjirui(6)wij= 1 uN(i)N(j) lb ( 1+|N(u)|) 姨(|N(i)|N(j)|(4)这 里 的 N (u) 是 用 户 喜 欢 的 游 戏 的 集 合 ,S (i,k) 是 和 游 戏 i 最 相 似 的 k 个 游 戏 的 集 合 ,wji 是

15、游 戏 j 和 游 戏 i 的 相 似 度,rui 是用户 u 对 游 戏 i 的 兴 趣 ( 对于游戏平台来 该式只是对活跃用户做了一种软性的惩罚,在实际的 计算中,对于过于活跃的用户 ,为了避免相似度矩阵过于 稠密,一般直接忽略其兴趣列表 ,不将其纳入相似度计算 的数据集中。(5)改进的余弦相似度的归一化算法 计算式为:说 rui=1 )。 通 过 该 算 法 , 和用户历史上感兴 趣 的 游 戏 越 相 似 的 游 戏 , 越有可能在用户的推荐 列 表 中 获 得 比 较 高 的 排 名 。2.2 算法评价指标推荐算法的优劣需要关注精度、覆盖、多样性等方面, 具体指标如下。(1)精度指标

16、:召回率 recall/准确率 precision对用户 u 推荐 N 个游戏记为 R(u),用户 u 在测试集上 喜欢的物品集合为 T(u), 通 过 准 确 率/召回率评测推荐算 法的精度, 召回率描述有多少比例的用户游戏下载记录 包含在最终的推荐列表中, 而准确率描述最终推荐列表中 有多少比例是发生过的用户游戏下载记录,具体定义如下:戏”平台是由炫彩互动网络科技有限公司 (中国电信游戏 基地)全力打造的互动娱乐平台,目前用户数超过 2 亿户, 日均数据增量 100 GB。业务平台的数据分析首先需要获取数据并存储数据。 游戏平台的个性化推荐系统一般采用用户的下载行为作 为用户的行为数据,一

17、旦用户下载了一款游戏 ,则视该用recall= u|R(u)T(u)|u|T(u)|precision= u|R(u)T(u)|u|R(u)|(7)(8)户对游戏产生了一个正向喜欢。 采用如图 2 所示的架构进 行数据获取与存储。(2)覆盖率指标 coverage覆盖率表示最终的推荐列表中包含多大比例的游戏。 如果所有的游戏都被推荐给至少一个用户,那么覆盖率就 是 100%。 覆盖率反映推荐算法发掘长尾的能力,覆盖率越 高,说明推荐算法越能够将长尾中的游戏推荐给用户。 采 用最简单的覆盖率定义如下:图 2 游戏数据获取与存储 coverage= |uUR(u)| |I|(9)游戏下载服务器为用

18、户提供游戏下载功能,当用户发 出游戏下载请求,下载服务器在本地日志记录一条用户下 其 中, | uUR(u)| 表示通过推荐系统推荐给用户的 游 戏去重数,|I|指“爱游戏”平台中所有的游戏数。(3)多样性指标 diversity多样性描述了推荐列表中游戏两两之间的不相似性。 因 此 , 多样性和相似性是对应的 , 计 算 式 如 下 所 示 , 其 中 s(i, j)0,1定义了游戏 i 和游戏 j 之间的相似度。载记录。 利用实时日志采集系统 Flume 对日志数据进行高 效、实时的采集,然后传递给实时计算系统 Storm,Storm 按 照 设定的规则进行数据过滤 , 最后将有效数据存入

19、 Hadoop 分布式文件系统(HDFS)4进行固化。HDFS 对硬件的需求比较低, 可以运行在低廉的商用 服务器集群上, 能充分利用老旧机器的存储能力。 通过diversity= i,jR(u),ij(1-s(i,j)|R(u)|R(u)-1|(10)HDFS 的“一次写入、多次读取”机制5,6,能够非常快速地处 理用户的海量访问数据, 通过分布式的文件存储机制,可推荐系统的整体多样性可以定义为所有用户推荐列 表多样性的平均值:diversity= 1 diversity(R(u)(11)|U| uU3基于大数据挖掘的个性化推荐系统体 系架构3.1 数据获取与存储 对上述推荐算法在“爱游戏”

20、 平台进行了实践,“ 爱游以将用户的历史访问记录存储很久,从而为分析用户行为 提供坚实的数据支撑。3.2 数据清洗与挖掘 游戏数据清洗与挖掘如图 3 所示。数据存储好之后,采用 MapReduce 计算框架7,可以快 捷地对大型数据矩阵进行计算, 从而为个性化推荐系统提 供计算支持。 首先进行数据清洗, 过滤掉非法的用户和游 戏,其中每个用户对每个游戏只能下载一次。 在实际计算前 需要进行数据重构,把用户和游戏的标识唯一化,同时生成图 3 游戏数据清洗与挖掘 用户的下载数表和游戏被下载次数表。 相似度矩阵计算由 Data_KNN 来完成,计算出的结果存两份,一份由 Oracle 数据 库进行存

21、储,供推荐系统的评测和统计使用,另一份由 Redis 高速缓存服务器进行存储,供前端各类应用实施查询。3.3 游戏个性化推荐流程 如图 4 所示,面向用户的游戏推荐流程如下。人 均 下 载 35 款 游 戏 , 累 计 3 个月的用户下载 数 据 为 3 000 万条左右,具有下载行为的用户 300 万户,游戏相似 度矩阵规模为 5 0005 000。 应用余弦相似度推荐算法,对 数据进行了计算,结果见表 1。 表 1 算 法 比 较 ( 推 荐 游 戏 数 为 10 款 ) 算法准确率召回率覆盖率多样性(1)首先用户通过客户端访问游戏平台,点击进入任意 游戏详情页面。 客户端发送用户的访问请

22、求给后台程序。cosin-base0.1160.0510.4650.905(2)后台程序获取用户当前访问的游戏 ID,并根据用cosin-alph0.1250.0560.3530.881户 ID 来获取用户的历史记录。(3)通过 Redis 获取该游戏的相似度矩阵。(4)使用推荐算法根据用户的相似度矩阵、当前访问游 戏 ID、用户历史访问游戏 ID 计算用户可能喜欢的游戏列表。(5)对用户可能喜欢的游戏列表按照相似度排行。(6)取前 TopN 个游戏,并返回结果给客户端,客 户 端 将相应的游戏显示在“猜你喜欢”栏目中。4推荐算法验证“爱游戏”平台目前每天的下载用户数为 8 万户左右,cosi

23、n-iuf(归一)0.1330.0630.468 0.960从表 1 中的结果可以看出,改进的余弦相似度的归一 化推荐算法相对基本算法在准确率、召回率等各个指标上 均有所提升。 通过降低热门游戏的权重,能有效提升准确 率和召回率。 通过降低活跃用户的权重,能有效提升游戏 覆盖度和多样性,从而强化推荐系统发掘长尾的能力。推荐算法还有一个重要的影响因素,即向用户推荐的 游戏个数, 针对该因素影响情况进行针对性的效果分析, 分析结果见表 2。图 4 游戏推荐流程表 2不同推荐数量下的算法效果 推荐数/款准确率召回率覆盖率多样性50.0820.0750.4580.938100.1330.0630.46

24、80.960150.1410.0410.5080.962200.1730.0380.5170.964300.2240.0330.5900.981500.2990.0260.6910.990800.3760.0210.7210.9921000.4130.0180.7210.994由图 5 可知,随着游戏推荐数的增大,游戏的准确率、 覆盖率明显上升,召回率则逐步下降,与实践情况相符,从 而说明了算法的正确性和实用性。图 5 不同推荐数量下采用改进的 余弦相似度的归一化算法的效果比较 5结束语本文介绍了基于大数据挖掘技术,构建游戏平台个性 化推荐系统的方法与实践, 采用 Hadoop 框架处理离线数

25、 据,进行游戏之间的相似度矩阵计算,运用 Redis 存储中间 结果和最终推送结果,其中重点结合游戏平台实际情况研 究余弦相似度算法,并通过降低热门游戏权重和降低活跃 用户权重等几种方法进行算法改进,根据实践计算结果对 相应算法进行了对比和分析,构建了一种适用于游戏平台 个性化推荐的机制和方法,为其他业务平台大数据分析提 供了良好的参考和借鉴。 目前的研究基于用户 的 下 载 行 为, 随着游戏用户行为和游戏数据趋于多样化和复杂化, 需要对数据源做进一步的拓展, 并考虑不同数 据 源 的 权 重,提升个性化推荐的效果,这是下一步研究的方向和目 标。 进一步考虑的数据包括用户访问、用户付费、用户

26、已安 装的应用软件、游戏的描述信息等,将采用复合权重相加 的方式拟合物品相似度矩阵。参考文献1 Han J W,Kamber M,Pei J. 数据挖掘:概念与技术. 范明 ,孟小 峰译. 北京:机械工业出版社,20132 李 慧 , 胡 云 , 施 珺. 社会网络环境下的协同推荐方法. 计 算 机 应用,2013(11)3 邓晓懿 ,金淳 ,韩庆平等. 基于情境聚类和用户评级的协同过 滤推荐模型. 系统工程理论与实践,2013(11): 294529534 Shin-gyu Kim, Junghee Won, Hyuck Han, et al. Improving Hadoop perfor

27、mance in intercloud environments. Performance Evaluation Review, 2011, 39(3):1071095 周江 ,王伟平 ,孟丹等. 面向大数据分析的分布式文件系统关 键技术. 计算机研究与发展,2014, 51(2)6 周吉寅,陈媛,姚晨等. 使用 Hadoop 实现应用商店中的相关推 荐模型. 现代计算机:上下旬 ,2013(17):20237 Fang W, Pan W B, Cui Z M. View of MapReduce: programming model, methods, and its applications. IETE Technical Review, 2012, 29(5)作者简介尤 海 浪 , 男 , 炫彩互动网络科技有限公司 工 程 师 , 主要研究方向为大数据 、 手 机 游 戏等。钱锋,男,中国电信股份有限公司广东研究院工程师 ,主要 研究方向为大数据、云计算等。黄祥为,男,炫彩互动网络科技有限公司工程师 ,主要研究 方向为大数据、移动互联网等 。胡亮亮,男,炫彩互动网络科技有限公司工程师 ,主要研究 方向为大数据、手机游戏等。(收稿日期:2014-09-25)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1