个性化音乐推荐算法的研究与实现(源码)【字数:12939】

摘 要随着智能手机普及,中国移动网民增加,在线音乐行业向各个年龄段渗透。音乐对于人们来说,已经成为不可缺少的一部分。当前,数字音乐的发展造成了音乐信息过载,面对海量歌曲,帮助用户快速找到感兴趣的歌曲、提高用户体验,成为重要研究方向。传统的算法参考不全造成推荐结果准确率不高。需要对协同过滤算法进行研究和改进,对推荐结果进行分析优化,得到更好的用户个性化音乐推荐。首先,对网易云数据进行爬取,获得有关歌曲、歌单、用户评论、用户个人信息、用户听歌记录数据,存入MySql。之后搭建Hadoop分布式系统,把数据导入到系统中,进行数据清洗,根据用户属性信息对用户进行聚类分群,同时基于分布式计算技术实现协同过滤算法得到初步推荐结果,通过计算推荐结果的准确率和效率,以及参照冷启动,上新推荐等问题,对算法进一步优化,实现个性化音乐推荐。最终,基于清洗后的网易云用户数据,同时根据推荐结果,进行分析进而实现可视化展示。经过测试,本系统可以实现用户个性化音乐推荐的基本要求,避免了传统推荐算法推荐效果差的情况,改善了用户冷启动,上新推荐等问题,提高了推荐准确率。对于用户而言,实现了对于用户长期喜好预测以及音乐推荐。
目 录
第1章 前言 1
1.1研究背景 1
1.2国内外研究现状 1
1.3研究目的和意义 2
1.3.1研究目的 2
1.3.2研究意义 2
1.4相关技术介绍 2
1.5全文组织结构 2
第2章 Python爬虫实现 4
2.1需求分析 4
2.1.1音乐推荐整体需求概述 4
2.1.2爬虫阶段需求分析 4
2.2 环境搭建 4
2.3 爬虫实现准备阶段 4
2.3.1 设置全局变量对整体爬虫过程进行监控 5
2.3.2 设置代理Ip 5
2.3.3 设置动态UA 6
2.3.4 破解网易云加密规则 7
2.4 爬虫实现用户阶段 8
2.4.1 爬取用户的个人信息 8
2.4.2 爬取用户的 *好棒文|www.hbsrm.com +Q: #351916072# 
听歌记录 9
2.4.3 爬取用户信息整体执行 9
2.5 实现爬取歌曲阶段 10
2.5.1 爬取网易云歌曲信息 10
2.5.2 爬取歌曲评论信息 10
2.5.3 爬取歌曲信息整体执行 11
2.6 爬虫实现歌单阶段 12
2.6.1 爬取歌单信息 12
2.6.2 爬取歌单信息整体流程 13
2.7 实现爬取歌单分类阶段 13
2.7.1 爬取网易云歌单分类信息 13
第3章 数据库设计 15
3.1推荐算法数据库设计 15
3.1.1 ER图 15
3.1.2 数据库表设计 15
第4章 算法实现 18
4.1推荐算法阶段需求 18
4.2搭建分布式系统 18
4.2.1搭建Hadoop体系 18
4.2.2 搭建算法程序编辑环境 22
4.3 算法实现数据流程 22
4.3.1 数据流程介绍 22
4.3.2 导入数据 23
4.3.3数据清洗及格式化 24
4.3.4算法执行 25
第5章 数据可视化实现 29
5.1 数据可视化需求 29
5.2 Echarts可视化展示 29
第6章 项目测试 33
6.1 爬虫程序测试 33
6.2 算法程序测试 36
6.3 可视化展示测试 37
第7章 总结与展望 38
7.1总结 38
7.2 展望 38
参 考 文 献 40
致 谢 41
第1章 前言
1.1研究背景
随着智能手机的普及,中国移动网民的增加,在线音乐行业向各个年龄段用户渗透。随着信息爆炸式的增长,音乐对于用户来说,已经成为不可缺少的一部分。
数字音乐的快速发展造成了音乐的信息过载,面对海量的歌曲用户难以快速找到符合自己兴趣的音乐,而作为企业,如何让自己生产的信息脱颖而出,受到广大用户的关注,如何帮助用户快速的发现用户想要的或者感兴趣的歌曲,如何更加贴切的为用户提供良好的使用体验,优良的、有更好的用户体验的推荐需求变得十分迫切。
20世纪90年代协同过滤技术被首次提出后,推荐系统成为一门独立的学科被深入研究[1]。因此,推荐系统与互联网音乐的结合成为音乐发展的必然趋势。
1.2国内外研究现状
美国的Pandora、Last.fm是现在热门的音乐推荐分享网站。这是音乐和WEB2.0结合出来的新的服务。这种新式推荐手段的服务产业顺势而生,成就了音乐网站新的模式。
潘多拉(Pandora.com)是音乐推荐类网站的龙头之一[2]。最出名就是 “音乐基因工程”,可以根据歌曲的众多参数如曲调、节奏等对歌曲筛选,找到一组风格相近的歌曲推荐给用户。
Last.fm是以歌手为主线,更侧重用户分析,使用用户标注的Tag,侧重于挖掘用户的听歌行为数据的和“人与音乐”之间的关系。
国内各大音乐软件包括虾米、网易云、QQ音乐等也陆续推出了各自的个性化推荐功能。根据Appstore 2017年7月的音乐类软件排名,这几款产品均长期位居前列,且用户群占比高。网易云音乐作为一款2013年才诞生的应用,依靠用户体验成为受欢迎的音乐软件。网易云音乐在上线4年用户量已经突破3亿,成为国内用户增长最快速的移动音乐平台,最为知名的就是“猜你喜欢”模块,通过分析用户的听歌行为推荐喜欢的歌曲[3]。各大软件的推荐算法已经成为这些互联网公司成功的核心技术。
国外的研究主要是对于算法在数学理论方面进行优化使分析结果准确率与召回率更高,得到更好的结果。而国内的而研究普遍是对几种推荐算法的对比研究,如李新卫硕士,对传统基于用户的协同过滤算法、引入Kmeans聚类后的推荐算法以及改进聚类后的推荐算法三种算法进行实验并对比结果[4]。金蕾硕士针对基于ALS模型的方法进行改进提出分群协同过滤算法,提高了准确率且实现了基于空间模型的音乐列表推荐算法[5]。邓腾飞硕士实现了基于歌曲协同过滤计算歌曲相似度,通过神经网络预测歌曲切歌率,并利用用户听歌数据训练模型实现推荐[6]。通过对系统算法像基于用户或者基于歌曲进行协同推荐算法性能做实验,包括原始算法和改进算法的推荐效果的对比,并且对用户分群数量的多少对推荐结果的影响做了实验[7]。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/249.html

好棒文