计算机毕业设计hadoop+spark+hive知识图谱bilibili视频数据分析可视化大屏 视频推荐系统 预测系统 实时计算 离线计算 数据仓库

研究意义

随着互联网的快速发展,人们面临着海量的视频内容,如何从这些繁杂的视频中找到自己感兴趣的内容成为一个重要的问题[1]。推荐系统作为一种解决信息过载问题的重要工具,能够根据用户的历史行为和偏好,预测用户可能感兴趣的内容,并对其进行推荐。在视频推荐领域,基于Hadoop和Spark的大数据框架的应用越来越广泛,它们能够处理大规模的视频数据,并对其进行深入的分析和挖掘。

本文旨在研究并设计一个基于Hadoop+Spark的视频推荐系统,该系统能够有效地利用大数据技术,对海量的视频数据进行处理和分析,并根据用户的行为和偏好进行视频推荐。与传统的推荐系统相比,基于Hadoop+Spark的视频推荐系统具有更高的处理能力和准确性,能够提供更加个性化的视频推荐服务[2]。

国内外研究综述

在国内,许多视频分享平台如Bilibili、爱奇艺、腾讯视频等都推出了自己的推荐系统,以提供个性化的视频推荐服务[3]。这些平台通常采用基于用户行为分析的推荐算法,根据用户的观看历史、点赞、评论等行为,挖掘用户的兴趣和偏好,并为其推荐相关的视频内容[4]。此外,国内的一些科研机构和高校也在推荐系统领域开展了相关研究,如清华大学、中国科学院计算技术研究所等。

在国外,推荐系统得到了广泛应用,不仅在视频领域,还在电商、新闻、音乐等领域得到应用[5]。在视频推荐领域,一些知名的视频分享平台如YouTube、Netflix等也推出了自己的推荐系统,根据用户的观看历史和偏好为其推荐相关的视频内容。此外,一些科研机构和高校也在推荐系统领域开展了相关研究,如斯坦福大学、麻省理工学院等[6]。

在基于Hadoop和Spark的视频推荐系统方面,一些国内外的研究机构和企业在大数据处理和分析方面进行了深入研究,并取得了一定的成果。例如,国外的Netflix利用Hadoop和Spark构建了一个大规模的推荐系统,能够处理海量的用户行为数据和视频数据,并为其用户推荐相关的视频内容[7]。在国内,一些企业如阿里巴巴、腾讯等也在大数据处理和分析方面进行了深入研究,并推出了一些基于Hadoop和Spark的大数据产品和服务。

综上所述,推荐系统在国内外得到了广泛应用,不仅在视频领域,还在其他领域得到应用。在基于Hadoop和Spark的视频推荐系统方面,一些国内外的研究机构和企业已经取得了一定的成果,但是随着大数据技术的不断发展,还需要进一步研究和探索更加准确、高效的视频推荐算法和系统[8]。

主要内容

  • Python爬虫模块:selenium采集海量bilibili视频并对视频数据进行智能分类、数据清洗;
  • 门户系统模块:个性化视频推荐、视频流量预测、视频VIP支付宝沙箱支付开通、视频评论情感分析、用户注册/登录、短信验证码修改密码、AI身份证认证识别、视频搜索等;
  • 大屏可视化模块:视频分类分析、热门话题分析、投币量分析、分享量分析、播放量分析、视频词云等;
  • 后台管理模块:用户管理、权限管理、视频管理、知识图谱、评论管理、订单管理;

拟解决的问题

  • 协同过滤算法冷启动问题
  • 视频知识图谱构建关联
  • 推算效率低需要优化参数
  • B站海量采集视频反爬问题
  • 分析与可视化互相转化问题
  • 数据库数据量大查询慢问题

预期成果

  • Linux虚拟机环境一台含hadoop、spark、hive等大数据组件。
  • Hive离线数据仓库操作脚本
  • Spark实时计算代码
  • Springboot+vue.js开发的web推荐系统、可视化系统代码
  • Mysql数据库脚本

创新点

  • 提供4种机器学习推荐算法进行个性化视频推荐:协同过滤推荐算法(基于用户、物品)、SVD混合神经网络推荐、多层感知MLP模型、知识图谱推荐
  • Python采集海量bilibili视频数据
  • Spark+hive离线计算、实时计算实现echarts可视化大屏
  • 卷积神经网络KNN进行视频流量预测
  • 支付宝沙箱支付(模拟视频开通付费VIP)
  • Lstm模型对评论进行情感分析
  • 手机短信验证码(用户修改密码功能)
  • AI识别身份证(用户认证)
  • 视频知识图谱关系图(neo4j)

进度安排

  • 文献综述和研究背景分析(1-2个月):收集相关文献和资料,了解视频推荐系统的研究现状和发展趋势。
  • 方法和系统设计(3-4个月):确定研究方法和系统设计方案,包括Python爬虫采集视频数据、用户行为分析、推荐算法设计和系统架构等。
  • 系统实现和测试(5-6个月):搭建Hadoop+Spark的大数据虚拟机环境,编写代码实现视频推荐系统、大数据可视化分析,并进行系统测试和性能优化。
  • 论文撰写和整理(7-8个月):撰写论文初稿,整理研究成果,包括实验结果和分析、讨论等。
  • 论文修改和完善(9-12个月):对论文进行修改和完善,包括文字润色、格式调整、审稿意见回应等。

参考文献

[1] 基于短视频内容理解的用户偏好预测模型研究[D]. Muhammad Irbaz Siddique.北京交通大学,2023

[2] 基于人像聚类的短视频推荐系统的研究与实现[D]. 郝艳峰.辽宁大学,2022

[3] 基于前景理论的视频推荐方法研究[D]. 李天鹏.河南财经政法大学,2021

[4] 高校视频公开课点播平台智能推荐系统的设计与实现[D]. 陈汉福.华南理工大学,2022

[5] 基于物品协同过滤的个性化视频推荐算法改进研究[D]. 卜旭松.宁夏大学,2021

[6] 基于图论的个性化视频推荐算法研究[D]. 陈壁生.华南理工大学,2023

[7] 基于深度观看兴趣网络的视频推荐系统设计与实现[D]. 刘端阳.北京邮电大学,2021

[8] 基于用户行为分析的短视频推荐算法研究[D]. 李志强.辽宁石油化工大学,2022

[9] 基于兴趣融合扩散的视频推荐系统的研究与实现[D]. 时琦涵.辽宁大学,2023

[10] 基于云同步的视频推荐系统的系统实现[D]. 程娟.上海交通大学,2022

[11] 智能冰箱推荐系统设计[J]. 李楠;简钰轩;闭祖松;龚蕾;刘子豪;范佳乐.物联网技术,2022(12)

[12] 基于神经网络的推荐系统模型分析[J]. 张珍珍.电子技术,2023(01)

[13] 基于用户画像的课程学习视频推荐系统研究与设计[J]. 陈玉帛;项慨;王顺驰;何希;李娅琴;邹正;李玉婷.现代信息科技,2023(09)

[14] 一种基于标签值分布强化学习推荐系统设计[J]. 张元群.中国科技信息,2023(11)

[15] 个性化学习资源推荐系统设计[J]. 万鑫;冯韵;肖艳;王思力.福建电脑,2023(10)

[16] 智能观影推荐系统设计[J]. 朱卫东;李子龙;乔良才.网络安全和信息化,2022(02)

[17] 一种泊车服务推荐系统的设计[J]. 磨春妗;黎飞;谢燕芳;程登;张森.现代工业经济和信息化,2022(03)

[18] 基于个性化需求的图书馆书籍智能推荐系统的设计与实现研究[J]. 李方园.信息记录材料,2021(12)

[19] 新闻推荐系统研究综述[J]. 孟开元;岳宇航;曹庆年.软件导刊,2021(01)

[20] 面向个性化学习的慕课资源推荐系统开发[J]. 孔令圆;彭琰;郑汀华;马华.计算机时代,2021(07)

程序运行流程

1.Selenium自动化Python爬虫工具采集bilibili视频数据约1000万条存入.csv文件作为数据集;

2.使用pandas+numpy或MapReduce对数据进行数据清洗,生成最终的.csv文件并上传到hdfs;

3.使用hive数仓技术建表建库,导入.csv数据集;

4.离线分析采用hive_sql完成,实时分析利用Spark之Scala完成;

5.统计指标使用sqoop导入mysql数据库;

6.使用flask+echarts进行可视化大屏开发;

7.使用协同过滤算法、SVD神经网络、MLP感知层模型等算法实现个性化视频推荐;

8.使用卷积神经网络KNN、CNN实现视频流量预测;

9.搭建springboot+vue.js前后端分离web系统进行个性化推荐界面、流量预测界面等实现;

核心算法代码分享如下:

package com.bigdata.storm.kafka.util;import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;/*** @program: storm-kafka-api-demo* @description: redis工具类* @author: 小毕* @company: 清华大学深圳研究生院* @create: 2019-08-22 17:23*/
public class JedisUtil {/*redis连接池*/private static JedisPool pool;/***@Description: 返回redis连接池*@Param: *@return: *@Author: 小毕*@date: 2019/8/22 0022*/public static JedisPool getPool(){if(pool==null){//创建jedis连接池配置JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();//最大连接数jedisPoolConfig.setMaxTotal(20);//最大空闲连接jedisPoolConfig.setMaxIdle(5);pool=new JedisPool(jedisPoolConfig,"node03.hadoop.com",6379,3000);}return pool;}public static Jedis getConnection(){return getPool().getResource();}/*    public static void main(String[] args) {//System.out.println(getPool());//System.out.println(getConnection().set("hello","world"));}*/}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/697354.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSS 实现文本的渐变色

定义一个类 .text-color{/* 创建一个水平方向的颜色渐变 */background: linear-gradient(120deg, #bd34fe 30%,#5c34fe, #41d1ff);/* 将文本透明度设置为0,以便背景渐变可见 */color: transparent;/* 使用背景渐变来填充文本背景 */-webkit-background-clip: text;…

谷歌Gboard应用的语言模型创新:提升打字体验的隐私保护技术

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

YOLOv9改进策略目录 | 包含卷积、主干、检测头、注意力机制、Neck上百种创新机制

👑 YOLOv9有效涨点专栏目录 👑 专栏视频介绍:包括专栏介绍、得到的项目文件、模型二次创新、权重文件的使用问题,点击即可跳转。 前言 Hello,各位读者们好 本专栏自开设两个月以来已经更新改进教程50余篇其中包含Re…

打造清洁宜居家园保护自然生态环境,基于YOLOv7【tiny/l/x】参数系列模型开发构建自然生态场景下违规违法垃圾倾倒检测识别系统

自然生态环境,作为我们人类赖以生存的家园,其健康与否直接关系到我们的生活质量。然而,近年来,一些不法分子为了个人私利,在河边、路边等公共区域肆意倾倒垃圾,严重破坏了环境的健康与平衡。这种行为不仅损…

shell脚本中条件语句

一.test测试 在Shell脚本中,test命令用于进行条件测试。它也可以通过方括号[]来表示,因为test实际上是[命令的一个别名。 格式1:test 条件表达式 格式2:[ 条件表达式 ] 注意[ ]空格,否则会失败 测试 是否成功使用…

每天认识新职业——网络工程师

一、网络工程师是什么 网络工程师是通过学习和训练,掌握网络技术的理论知识和操作技能的网络技术人员。网络工程师能够从事计算机信息系统的设计、建设、运行和维护工作。相关职业:系统集成工程师、计算机硬件工程师职业其他名称:网络管理员、…

【码农日常】将mp4转换为逐帧图片

项目场景: 拍摄了一段视频记录设备工作的状态和测量仪器的实时数据。由于测量仪器岁数比较大,不够智能,遂打算将视频转换为逐帧图片进行分析。 网上没找到现成工具,借鉴网上大神的操作方式打算用python写一个工具。 问题描述 用…

Unity射击游戏开发教程:(15)添加推进器推进和推进器推进动画

这是一个可以添加到我的游戏中的简单而有趣的功能。当玩家按住 Shift 按钮时,速度会加快,松开 Shift 按钮时,速度会恢复到原来的速度。 这需要不同的输入检测。通常使用的是Input.GetKeyDown并传入你想要获取的key。这只会检测在当前帧期间是否按下了按钮,但如果按住,将不…

学习Uni-app开发小程序Day10

前面学习了局部组件的创建和简单使用&#xff0c;今天学习了slot&#xff08;插槽&#xff09;和组件之间的传值1. 插槽的使用 在components中&#xff0c;创建一个组件&#xff0c;给组件设置头部布局、内容布局、底部布局&#xff0c;例如&#xff1a; <template><…

括号匹配(栈)

20. 有效的括号 - 力扣&#xff08;LeetCode&#xff09; c有栈 但是C语言没有 到那时我们可以自己造 这里的代码是直接调用栈&#xff0c;然后调用 等于三个左括号的任意一个 我们就入栈 左括号&#xff08;入栈&#xff09; 右括号 取出栈顶数据&#xff0c;出栈并且进行匹配…

力扣【旋转函数】python

如果直接用暴力的话&#xff0c;只能过4个样例好像&#xff0c;超时 因此得用递推公式 F1F0前n-1个数-(n-1)*第n个数 F0sum(nums)-n*第n个数 nlen(nums) ans[]#定义一个存最大值值的列表 ss sum(nums) dm 0 for j in range(n):dm j * nums[j] ans.append(dm) print(dm) n…

树莓派对FPGA板子上的流水灯程序的控制

文章目录 一 树莓派使用教程二 树莓派串口代码三 Verilog代码四 quartus引脚绑定五 运行效果总结 分别在DE2-115开发板和树莓派上编写串口通信程序&#xff0c; 实现树莓派串口指令对FPGA板子上的流水灯程序的控制&#xff0c;控制方式自定。 一 树莓派使用教程 参考&#xff…