2021年12月21日
姓名 | 专业 | 软件工程 | 班级 | 20-IBM-企Java2 | |
题目 | 基于hadoop+Spark的游戏推荐与可视化系统的设计与实现 | 指导教师 | 王文钧、王春娴 | ||
一、与本题目有关的国内外研究情况、题目研究的目的和意义、主要内容、本课题创新之处、拟解决的问题:
在国内,基于大数据和人工智能技术的游戏推荐系统研究已经取得了一定的成果。许多学者和研究机构都致力于通过机器学习算法和大数据处理技术来提高游戏推荐的准确性和效率。 例如,有研究者设计并实现了一个基于Hadoop和PySpark的深度学习游戏推荐系统。该系统通过爬虫技术从游戏平台或第三方数据源收集用户历史游戏数据,并利用Hadoop的分布式文件系统(HDFS)存储大规模的游戏数据。在数据处理层,系统利用Hadoop的MapReduce和PySpark进行数据处理和分析,提取与游戏推荐相关的特征。在推荐算法层,系统基于深度学习算法,如卷积神经网络(CNN)和循环神经网络(RNN),设计和实现游戏推荐算法。该系统能够高效处理大规模游戏数据,为用户提供个性化的游戏推荐服务,并通过实验验证,系统的性能和准确性达到了预期目标。 此外,还有研究者基于Hadoop平台和Spark框架设计了一个手机App应用推荐系统。该系统结合基于项目的协同过滤算法与逻辑回归算法,将用户访问数据从关系型数据库导入到Hive数据仓库中进行数据处理。该系统通过一系列操作,包括样本和特征抽取以及构建训练数据,将数据处理为算法数学建模的入口数据。然后根据商品特征和用户行为在Spark计算框架中调用逻辑回归算法做数学建模,将用户的喜好这一抽象概念具体化,并生成模型文件。最后,系统将生成的模型文件放置到线上Dubbox项目,根据推荐模型做推荐。该系统在冷启动问题方面有明显的优势。 在国外,游戏推荐系统的研究也取得了显著的进展。许多国际知名的科技公司和研究机构都在积极探索基于大数据和人工智能技术的游戏推荐算法。 例如,有研究者提出了基于协同过滤和深度学习相结合的游戏推荐系统。该系统通过分析用户的历史游戏数据,挖掘用户的游戏兴趣和偏好,并利用深度学习算法对用户特征进行建模。同时,系统还结合了协同过滤算法,通过分析用户之间的相似性来进一步提高推荐的准确性。该系统能够为用户提供个性化的游戏推荐服务,并显著提高了用户体验。 此外,还有研究者设计了基于知识图谱的游戏推荐系统。该系统通过构建游戏领域的知识图谱,将游戏相关的各种信息(如游戏类型、游戏开发者、游戏评分等)进行关联和整合。然后,系统利用图嵌入算法将知识图谱中的节点和关系嵌入到低维向量空间中,以便进行高效的计算和推理。最后,系统根据用户的兴趣和偏好,在知识图谱中搜索相关的游戏并推荐给用户。该系统能够为用户提供更加精准和全面的游戏推荐服务。 2 研究目的、意义 目的:随着互联网技术的飞速发展和普及,电子游戏已成为人们生活中不可或缺的一部分。然而,面对海量的游戏资源,用户往往难以从众多选择中找到适合自己的游戏。这不仅影响了用户的游戏体验,也为游戏开发者带来了挑战,难以精准地定位目标用户。因此,构建一个高效、准确的游戏推荐系统显得尤为重要。该系统不仅能够为用户提供个性化的游戏体验,还能为游戏开发者提供有价值的市场信息和用户反馈,帮助他们优化游戏设计。传统的游戏推荐系统主要依赖于简单的规则匹配和协同过滤算法,但由于计算量大、处理速度慢,难以应对大规模数据处理的挑战。Hadoop和Spark作为两种主流的大数据处理技术,因其高扩展性和高性能,被广泛应用于大数据处理领域。结合这两种技术,可以构建一个分布式、可扩展的游戏推荐系统,能够高效地处理和分析大规模的游戏数据,从而提高推荐系统的准确性和效率。此外,通过数据可视化技术,将游戏推荐的结果和相关数据以直观、易于理解的方式展示给用户,可以进一步提升用户体验。因此,本研究旨在结合Hadoop和Spark两种大数据处理技术,以及数据可视化技术,设计并实现一个高效、准确、个性化的游戏推荐与可视化系统,以满足用户和游戏开发者的需求,推动游戏行业的进一步发展。 意义:研究意义在于,随着电子游戏市场的持续繁荣和游戏种类的不断增加,用户面临着海量的游戏资源,难以从中筛选出符合自己兴趣的游戏。传统的游戏推荐系统主要依赖于简单的规则匹配和协同过滤算法,但由于计算量大、处理速度慢,难以应对大规模数据处理的挑战。而Hadoop和Spark作为大数据处理领域的佼佼者,为处理和分析这些海量数据提供了强大的工具。 该研究旨在构建一个基于Hadoop和Spark的游戏推荐系统,并结合可视化技术,为用户提供个性化的游戏推荐服务。通过结合大数据处理技术和深度学习算法,该系统能够高效处理和分析大规模游戏数据,挖掘用户的游戏兴趣和偏好,并为用户推荐符合其兴趣和偏好的游戏。这不仅可以提高用户的游戏体验,还可以为游戏开发者提供有价值的市场信息和用户反馈,帮助他们优化游戏设计。 此外,该研究还具有重要的学术价值。通过探讨基于Hadoop和Spark的游戏推荐系统的设计与实现,可以为游戏推荐系统的研究和发展提供一定的参考和借鉴。同时,该研究还可以推动大数据处理技术和深度学习算法在游戏推荐系统中的应用和发展,为相关领域的研究提供新的思路和方法。 3 研究内容 本文旨在设计和实现一个基于hadoop+Spark的游戏推荐与可视化系统,通过爬虫模块抓取TapTap游戏网站数据,并利用协同过滤算法为用户提供个性化的游戏推荐。同时,系统还提供了丰富的可视化分析功能,帮助用户更好地了解游戏市场。本文采用的研究方法主要包括系统分析、设计与实现、功能测试与评估等。 主要功能如下: (1)用户管理模块:用户能够注册、登录及修改个人信息,查看热门游戏及攻略信息。 (2)数据采集与处理模块:主要通过Python编程,爬取Tap Tap社区中游戏热门榜、热玩榜以及游戏的标签、评分等数据,同时删除冗余和无用信息,以用于大数据分析。 (3)数据分析模块: ①类型分析:对爬取的数据进行梳理并分析不同标签游戏的数据榜单,例如策略、单机、休闲、卡牌等不同版块。获取游戏中下载数、关注数、评价数等信息内容并分析。 ②动态分析:分析最新动态内有关游戏的图文、视频和帖子,将各种动态的发帖时间、游戏出处、讨论数,点赞数量和游戏动态数量进行数据分析,分析某一时间段游戏动态热度并进行排名。 ③游戏推荐:根据数据挖掘得到的信息,对所有游戏信息、游戏动态进行热度总结,按照不同权重和热度递增的方式筛选出不同游戏类型排名前十的游戏,点击进入不同的类型,系统会以最新和最热的方式进行游戏推荐。 (4)数据可视化模块:主要利用Echarts插件,对类型分析、动态分析、游戏推荐三个模块中数据分析的内容进行可视化展示。 4 课题研究创新点 项目创新特色概述:本文旨在设计和实现一个基于Spark的TapTap游戏数据分析系统,通过爬虫模块抓取TapTap游戏网站数据,并利用协同过滤算法为用户提供个性化的游戏推荐。同时,系统还提供了丰富的可视化分析功能,帮助用户更好地了解游戏市场。本文采用的研究方法主要包括系统分析、设计与实现、功能测试与评估等。 5 课题研究拟解决问题 问题1:采集海量游戏数据上万以后mysql性能下降,查询会出现卡顿、假死、查询慢,甚至宕机的问题; 解决1:对于经常查询的游戏数据表的字段预先建立索引,或者将热点天气数据存入redis等缓存中间件中,使用python直接从缓存中取出数据; 问题2:模型训练过程中出现精准度低、运行缓慢等问题; 解决2:增加高性能显卡,改写调试算法核心源码的参数或借助百度/科大讯飞大模型精调; 问题3:Python采集游戏数据经常被反爬和限制采集量; 解决3:模拟人类点击,使用radom随机生成秒数休眠,缓慢爬取; |
二、进度及预期结果: | |||
起止日期 | 主要内容 | 预期结果 | |
2023.12.18 | 搜集资料,撰写开题报告. | 明确需求,整理文档 | |
- | |||
2023.12.31 | |||
2024.01.01 - | 开题答辩。 | 数据库设计完成。技术选型完成。 | |
2024.01.14 | |||
2024.01.15 | 项目设计开发。 | 项目功能,能够实现。项目完成 | |
- | |||
2024.03.24 | |||
2024.03.25 | 中期答辩,中期检查,论文初稿提交。 | 文档整理完成。 | |
- | |||
2024.03.31 | |||
2024.04.01 | 项目测试,论文修订并定稿。 | 论文的撰写、修改与定稿。 | |
- | |||
2024.05.12 | |||
2024.05.13 | 最终答辩. | 顺利完成并通过论文答辩。 | |
- | |||
2024.05.19 | |||
- | |||
- | |||
本项目使用的技术Java、HTML、CSS、Javascript、Pagehelper、jsp、session、Hadoop、Hive、Echarts都学习过,自己也独立完成过项 | |||
目,具备开发的技术。 | |||
完成题目的现 | 开发软件: idea webstorm java8 mysql 硬件: 笔记本电脑 运行内存16g。相关文献: | ||
有条件 | [1]王珊, 萨师煊. 《数据库系统概论》[M]. 高等教育出版社, 2022. (基础数据库理论知识参考) [2]孟小峰, 慈祥. 大数据管理:概念、技术与挑战[J]. 计算机研究与发展, 2024, 50(1): 146-169. (大数据管理理论背景) [3]陆嘉恒. 《Hadoop实战》[M]. 机械工业出版社, 2023. (Hadoop技术详细讲解) [4]Tom White. Hadoop: The Definitive Guide[M]. Yahoo! Press, 2022. (Hadoop权威指南) [5]Matei Zaharia, Mosharaf Chowdhury, Michael Franklin, et al. Spark: Cluster Computing with Working Sets[J]. HotCloud, 2020, 10(10-10): 95. (Spark技术原始论文) | ||
审查意见 | 同意开题 | 高校指导教师:企业指导教师: | xxxx年xx月xx日 xxxx年xx月xx日 |
学院意见 | 同意开题 | 学院负责人: | xxxx年xx月xx日 |