资源预览内容
第1页 / 共31页
第2页 / 共31页
第3页 / 共31页
第4页 / 共31页
第5页 / 共31页
第6页 / 共31页
第7页 / 共31页
第8页 / 共31页
第9页 / 共31页
第10页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
苏州大学本科生毕业设计(论文)学院(部)计算机科学与技术学院题 目基于深度神经网络的音乐推荐系统设计与实现目 录摘 要1前 言3第一章绪 论41.1论文研究背景31.2音乐推荐算法描述51.3论文的内容和意义51.4本文的组织结构5第二章推荐算法简介72.1音乐推荐方法72.1.1 基于内容的音乐推荐算法72.1.2 基于用户协同过滤的音乐推荐算法72.1.3 混合推荐算法82.2 音乐评价的指标92.3本章小结10第三章基于神经网络的音乐推荐算法及设计113.1数据集及预处理113.1.1 音频读取113.1.2 音频分析123.2卷积神经网络133.3激励函数153.3.1 介绍153.3.2 激励函数的选择163.4损失函数163.5优化器163.6模型设计及训练结果173.7本章小结19第四章混合方法的设计与实现204.1基于用户的协同过滤算法204.1.1冷处理问题204.1.2稀疏性问题204.2用户相似度计算214.3模型搭建234.4本章小结23第五章系统展示245.1功能介绍245.2用户初始化255.3其他推荐方式25第六章 总结与展望276.1 本文总结276.2后续工作展望27参考文献28致 谢29I摘 要由于以往的音乐推荐算法大多局限于基于标签内容的推荐或者是单一的协同过滤推荐,在表现上并不是特别令人满意,不得不承认一个基于内容的音乐推荐算法是必不可少的,但是在此之上加入协同过滤算法并细分为行为协同过滤与用户本身协同过滤,且将几种算法做一个简单的奖惩措施,让用户自己选择自己的喜好,自己训练自己的音乐推荐系统与音乐推荐算法才是一个合理的优秀的音乐推荐算法。根据现有的神经网络框架TensorFlow以及集成API tflearn我们可以轻松的使用工具对我们的数据集进行训练从而得到一个输入为音频输出为类型的多层神经网络,在此基础之上将音乐做一个分类并给予标签定义,并在用户录入的过程中给予用户同样的标签值,从而获得优秀的推荐效果本论文主要实现了一个以基于内容部分的音乐推荐算法与基于用户协同过滤部分的音乐推荐算法相结合的混合音乐推荐算法,并进行初步的推荐展示。关键词:音乐;协同过滤;TensorFlow;算法IAbstractBecause in the past mostly confined to music recommendation algorithm based on the label content is single collaborative filtering recommendation or recommend, on the performance is not particularly satisfactory, have to admit that a music recommendation algorithm based on content is indispensable, but on top of this join collaborative filtering algorithm and subdivided into collaborative filtering and the collaborative filtering the user itself, and several algorithms to do a simple rewards and punishments measures, allows users to choose their own preferences, training their own music recommendation system and music recommendation algorithm is a reasonable good music recommendation algorithm.According to the existing neural network framework TensorFlow and integration API tflearn we can easily use tools to our training data set to obtain an input for the audio output for types of multilayer neural networks, on this basis to do the music classification and given a label definition, and in the process of user input to give the user the same tag value, recommend to obtain good effect。The whole process of the development of the system module follows the steps of the software work project development process, and combines the object-oriented analysis and design method to design the database. In the design of the algorithm, the Python language is adopted, and the open source framework of Google is used in the training machine learning process.Keywords: Music;CF;Tensorflow;algorithmII前 言21世纪是信息化时代,随着信息技术和网络技术的发展,与人们的日常生活早已建立了离不开的联系。对网络音乐服务来说,不管是音乐下载服务,或者是网络音乐电台服务,都需要用到优秀的内容推荐系统去辅助整个系统。个性化音乐推荐系统是目前最流行的应用方法之一。现有的基于内容的音乐推荐系统通常采用两阶段的方法。他们首先提取传统的音频内容特征,如梅尔频率倒谱系数(1),然后预测用户偏好。然而,这些传统的特性最初不是为音乐推荐而设计的,不能捕捉音频中的所有相关信息,从而限制推荐性能。基于深度信任的新模型网络和概率图模型,我们统一进入一个自动化的过程,同时学习。从音频内容的特点,并提出个性化的建议。与现有的基于深度学习的模型,我们的模型优于他们在暖启动不依赖协同过滤(CF)的冷启动阶段。然后,我们提出了一种有效的混合方法无缝集成自动学习的功能,我们的混合方法不仅大大改善了CF的性能,也优于传统的基于特征的混合方法。本系统在基于内容的音乐推荐部分采用了Google开源框架Tensorflow的CNN模型,音乐系统的实现基于Django(后台服务器端)+Layui(前端模板框架)+Mysql数据库+Redis缓存数据库,在基于用户的协同过滤部分采用了有关矩阵相似度之间的计算方程。(1) 梅尔频率倒谱系数 (Mel-Frequency Cepstral Coefficients,MFCCs)就是组成梅尔频率倒谱的系数。他们派生自音频片段的倒谱(cepstrum)表示(anonlinear”spectrun-of-a-spectrum”)。倒谱和梅尔频率倒谱的区别在于,梅尔频率倒谱的频带划分是在梅尔刻度上等距划分的,它比用于正常的对数倒频谱中的线性间隔的频带更能近似人类的听觉系统。这种频率弯曲可以更好的表示声音,例如音频压缩。第一章绪 论本章首先介绍了论文的研究背景,其次简单介绍了本文所做的主要内容,在本章的最后介绍了论文的组织结构。1.1论文研究背景近年来,在互联网大数据发展日益高涨的今天,各种应用开始使用推荐算法,如新闻推荐类的今日头条,短视频类的抖音、快手,网易云音乐的私人FM(调频广播),荔枝FM的推荐,传统视频网站的爱奇艺,bilibili等,都开始使用推荐算法使得自己所拥有的或者说是面向的用户群体更为广泛,而全自动化、优良的推荐算法使得相关工作人员摆脱了原有的手工设置权重,提高了工作效率。在过去,一款没有内容推荐的APP所有人打开都是一样的,但是现如今所有的APP每个人打开所得到的推荐内容是不一样的,无论是新闻系的今日头条,还是短视频系列的所有APP,以及推荐算法和推荐系统的出现,使得有一股隐形的力量在挖掘用户留下的各种显示和隐式反馈,如观看记录,评分纪录,浏览历史等等,根据用户的停留时间,点击频率,来挖掘出用户的特征及个人喜好,从而推荐的内容和信息便会主动地迎合用户,达到用户的理想需求。在过去的相关推荐里音乐推荐往往是由基于内容的音乐推荐算法作为推荐主体,或者是以CF(协同过滤)推荐算法作为推荐主体实现的,在这个推荐过程中往往有一些不足。最初的音乐推荐是基于MFCCs的两阶段推荐,第一阶段为提取音乐特征,第二步则由特征推荐用户,但是MFCCs并不能完美的表达出所有的音乐特征,包括音乐的作者、音乐的类型、音乐的语种等等,换言之,根据频谱所做到的仅仅是将音频部分几乎完全拟合,或者是说音频矩阵距离较短的一批次音乐划分为一个类型,且不论不同时间长度的音乐会有什么影响,相同的音频真的可以给用户带来优良的体验吗?并不是,音乐是分类型的,例如常见的摇滚,HIPHOP,雷鬼,纯音乐,亦或是分类更为详尽的电影原声、游戏原声等,这些音乐类型属于音乐的高级属性。一个用户喜欢A类型的音乐(例如HIPHOP),一款基于内容的推荐算法便会一直推荐hiphop的歌曲,这样是不合理的,所以人工的设置权重的方法应运而生,但是非自动化的推荐方法永远是不合理且不实时的,所以在这样的背景下,提出了一种基于内容与用户协同过滤的混合推荐方法。1.2 音乐推荐算法描述音乐是互联网中的重要组成部分,目前的音乐网站或者媒体中拥有数以千万计的音乐,假如用户要自己收听每一首音乐来判断自己喜欢不喜欢这首音乐,且不谈用户能不能听完这么多音乐,如果每首音乐都要听完才能判断自己是否喜欢这首音乐的话,那么会有越来越少的用户去选择新歌,去听一些自己没有听过的音乐。推荐算法正是为解决此类问题而产生的。目前市面上电影推荐算法数不胜数,但大多数应用的还是协同过滤算法,基于用户或者基于内容、评分等等,根据关键词过滤掉无关信息,然后把结果返回给用户。网易云音乐作为国内最大的音乐媒体,每天处理海量的新用户与新歌新专辑的信息,它所使用的是混合推荐算法,并且加入了深度学习,介于网易云平台拥有的大量使用人群,所以他的数据集是丰富多样但充满噪点的,网易云音乐的推荐算法种类繁多,基于音乐内容部分有同类型的歌曲推荐,基于用户本身属性的协同过滤我们可以看到很多评论区下方会有置顶的同城评论,这是因为网易云音乐在处理一个数据量较为稀疏的用户时使用到了基于用户所在地的协同过滤推荐,即相似的用户属性则给用户带来相似的推荐。当然了,推荐算法非常的多,但是想要找到一种适合的算法确实有一定的难度,每种算法都有一定的优缺点,有各自的局限领域,这样推荐算法的选择就成了一个难题,设计者往往需要测试多种算法,了解它的原理及概念,最后再逐一筛选找到最适合的那一个或多个算法。具体的音乐推荐算法将在第二章中详细介绍。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号