做的好看的国内网站欣赏网页制作学习
2026/2/9 16:34:37 网站建设 项目流程
做的好看的国内网站欣赏,网页制作学习,哈尔滨城乡建设局网站首页,彩票走势图网站是用什么程序做的前 言 21世纪是信息化时代#xff0c;随着信息技术和网络技术的发展#xff0c;与人们的日常生活早已建立了离不开的联系。对网络音乐服务来说#xff0c;不管是音乐下载服务#xff0c;或者是网络音乐电台服务#xff0c;都需要用到优秀的内容推荐系统去辅助整个系统。个…前 言21世纪是信息化时代随着信息技术和网络技术的发展与人们的日常生活早已建立了离不开的联系。对网络音乐服务来说不管是音乐下载服务或者是网络音乐电台服务都需要用到优秀的内容推荐系统去辅助整个系统。个性化音乐推荐系统是目前最流行的应用方法之一。现有的基于内容的音乐推荐系统通常采用两阶段的方法。他们首先提取传统的音频内容特征如梅尔频率倒谱系数1然后预测用户偏好。然而这些传统的特性最初不是为音乐推荐而设计的不能捕捉音频中的所有相关信息从而限制推荐性能。基于深度信任的新模型网络和概率图模型我们统一进入一个自动化的过程同时学习。从音频内容的特点并提出个性化的建议。与现有的基于深度学习的模型我们的模型优于他们在暖启动不依赖协同过滤CF的冷启动阶段。然后我们提出了一种有效的混合方法无缝集成自动学习的功能我们的混合方法不仅大大改善了CF的性能也优于传统的基于特征的混合方法。本系统在基于内容的音乐推荐部分采用了Google开源框架Tensorflow的CNN模型音乐系统的实现基于Django(后台服务器端)Layui(前端模板框架)Mysql数据库Redis缓存数据库在基于用户的协同过滤部分采用了有关矩阵相似度之间的计算方程。1梅尔频率倒谱系数 (Mel-Frequency Cepstral CoefficientsMFCCs)就是组成梅尔频率倒谱的系数。他们派生自音频片段的倒谱(cepstrum)表示(anonlinear”spectrun-of-a-spectrum”)。倒谱和梅尔频率倒谱的区别在于梅尔频率倒谱的频带划分是在梅尔刻度上等距划分的它比用于正常的对数倒频谱中的线性间隔的频带更能近似人类的听觉系统。这种频率弯曲可以更好的表示声音例如音频压缩。第一章 绪 论本章首先介绍了论文的研究背景其次简单介绍了本文所做的主要内容在本章的最后介绍了论文的组织结构。1.1 论文研究背景近年来在互联网大数据发展日益高涨的今天各种应用开始使用推荐算法如新闻推荐类的今日头条短视频类的抖音、快手网易云音乐的私人FM调频广播荔枝FM的推荐传统视频网站的爱奇艺bilibili等都开始使用推荐算法使得自己所拥有的或者说是面向的用户群体更为广泛而全自动化、优良的推荐算法使得相关工作人员摆脱了原有的手工设置权重提高了工作效率。在过去一款没有内容推荐的APP所有人打开都是一样的但是现如今所有的APP每个人打开所得到的推荐内容是不一样的无论是新闻系的今日头条还是短视频系列的所有APP以及推荐算法和推荐系统的出现使得有一股隐形的力量在挖掘用户留下的各种显示和隐式反馈如观看记录评分纪录浏览历史等等根据用户的停留时间点击频率来挖掘出用户的特征及个人喜好从而推荐的内容和信息便会主动地迎合用户达到用户的理想需求。在过去的相关推荐里音乐推荐往往是由基于内容的音乐推荐算法作为推荐主体或者是以CF协同过滤推荐算法作为推荐主体实现的在这个推荐过程中往往有一些不足。最初的音乐推荐是基于MFCCs的两阶段推荐第一阶段为提取音乐特征第二步则由特征推荐用户但是MFCCs并不能完美的表达出所有的音乐特征包括音乐的作者、音乐的类型、音乐的语种等等换言之根据频谱所做到的仅仅是将音频部分几乎完全拟合或者是说音频矩阵距离较短的一批次音乐划分为一个类型且不论不同时间长度的音乐会有什么影响相同的音频真的可以给用户带来优良的体验吗并不是音乐是分类型的例如常见的摇滚HIPHOP雷鬼纯音乐亦或是分类更为详尽的电影原声、游戏原声等这些音乐类型属于音乐的高级属性。一个用户喜欢A类型的音乐例如HIPHOP一款基于内容的推荐算法便会一直推荐hiphop的歌曲这样是不合理的所以人工的设置权重的方法应运而生但是非自动化的推荐方法永远是不合理且不实时的所以在这样的背景下提出了一种基于内容与用户协同过滤的混合推荐方法。1.2 音乐推荐算法描述音乐是互联网中的重要组成部分目前的音乐网站或者媒体中拥有数以千万计的音乐假如用户要自己收听每一首音乐来判断自己喜欢不喜欢这首音乐且不谈用户能不能听完这么多音乐如果每首音乐都要听完才能判断自己是否喜欢这首音乐的话那么会有越来越少的用户去选择新歌去听一些自己没有听过的音乐。推荐算法正是为解决此类问题而产生的。目前市面上电影推荐算法数不胜数但大多数应用的还是协同过滤算法基于用户或者基于内容、评分等等根据关键词过滤掉无关信息然后把结果返回给用户。网易云音乐作为国内最大的音乐媒体每天处理海量的新用户与新歌新专辑的信息它所使用的是混合推荐算法并且加入了深度学习介于网易云平台拥有的大量使用人群所以他的数据集是丰富多样但充满噪点的网易云音乐的推荐算法种类繁多基于音乐内容部分有同类型的歌曲推荐基于用户本身属性的协同过滤我们可以看到很多评论区下方会有置顶的同城评论这是因为网易云音乐在处理一个数据量较为稀疏的用户时使用到了基于用户所在地的协同过滤推荐即相似的用户属性则给用户带来相似的推荐。当然了推荐算法非常的多但是想要找到一种适合的算法确实有一定的难度每种算法都有一定的优缺点有各自的局限领域这样推荐算法的选择就成了一个难题设计者往往需要测试多种算法了解它的原理及概念最后再逐一筛选找到最适合的那一个或多个算法。具体的音乐推荐算法将在第二章中详细介绍。1.3 论文的内容和意义论文的主要内容有1、对现有的音乐推荐算法做深入的了解总结分析他们的优点与缺点并对他们的不足进行分析为我们设计音乐推荐算法做下基础2、搭建基于神经网络的内容部分的音乐推荐算法并利用Google开源框架Tensorflow对神经网络进行训练3、基于已有的数据集进行拆分获得测试集与训练集并对获得的推荐方法进行评测。本文在训练方向选用机器学习的开源库Tflearn基于Google框架TensorFlow在音乐频谱分析方向选用了Linux的Sox应用以及python的eyed3库。1.4 论文的组织架构全文共分六章各章的内容安排如下第一章绪论本章主要介绍课题项目背景开发目标和意义。第二章推荐算法简介对现在大多数的推荐算法进行介绍。第三章基于内容的音乐推荐部分主要是对音乐推荐系统的功能需求的详细分析。第四章混合算法的设计与实现主要是介绍基于音乐内容的部分与用户协同过滤相结合的系统权重训练。第五章系统实现主要介绍了系统的主要页面和部分功能。第六章总结与展望对课题进行总结并对以后的改进进行展望。第二章 推荐算法简介2.1 音乐推荐的方法本文以推荐算法的发展路途将推荐算法分为传统的推荐算法和非传统的推荐算法。传统的推荐算法有基于内容推荐、协同过滤推荐、基于知识推荐、基于效用推荐、基于关联规则推荐、组合推荐等等以下对部分进行介绍2.1.1 基于内容的音乐推荐方法基于内容部分Content-Based Recommendations CB的音乐推荐算法是一个最为经典的音乐推荐算法其原理就是对物品进行相似度计算由用户过去感兴趣的商品进行依据相似度高低排序的商品推荐。在音乐推荐的领域中也是绝大多数音乐推荐算法所使用的方法常见的标签内容信息由艺术家发行时间流派播放时长等构成简单的推荐算法往往由单一label实现推荐过程例如给用户推荐多首同艺术家的歌曲或是同属一个流派的 音乐。这样的推荐过程带来的效果是不合理的当然了处理过程有很多种优化方法 例如进行数据归一化处理权衡各个不同指标之间的权重。除此以外还有muti-labels多特征推荐例如Cyril Laurier[1]提出的将音乐基于标签进行分类方法将音乐划分为几个比较大的类通过各个不同的label实现音乐本身与类之间的映射关系。上文中提到过的MFCCs就是其中一种通常是以音乐音频本身之间的相似度计算通过聚类将音乐文件进行分类从而进行的同批次推荐方法。2.1.2 基于用户协同过滤的推荐方法协同过滤算法Collaborative Filtering Recommendation是推荐系统领域中使用最早最经典和可行性最好的算法之一基于用户本身或是用户行为的推荐算法原理大多相似即计算不同用户之间的相似度问题在处理单一用户数据的时候可以通过所处地域所受教育程度性别等特征将用户进行简单划分这可以用于处理协同过滤中会遇到的冷启动或者是稀疏性问题基于用户行为的推荐算法大多由用户收听历史和决策行为影响。稀疏性问题是协同过滤无法避免遇到的问题数据集的极端往往会造成推荐结果糟糕的情况所以要解决这些问题需要认真考虑。图2.1 协同过滤的推荐过程2.1.3 混合推荐算法由于各种推荐方法都有优缺点所以在实际中组合推荐(Hybrid Recommendation)经常被采用。在现有系统中最常见的做法是基于内容与基于协同过滤的混合推荐算法。最简单的做法就是分别用基于内容的方法和协同过滤推荐方法去产生一个推荐预测结果然后用某方法组合其结果。组合推荐一个最重要原则就是通过组合后要能避免或弥补各自推荐技术的弱点。常见的组合方式有以下几种变换(Switch):根据问题背景和实际情况或要求决定变换采用不同的推荐技术。加权(Weight):加权多种推荐技术结果。混合(Mixed):同时采用多种推荐技术给出多种推荐结果为用户提供参考。特征组合(Feature combination):组合来自不同推荐数据源的特征被另一种推荐算法所采用。图2.2 推荐算法优缺点2.2 音乐推荐的指标1.平均误差MAE(Mean Absolute Error )平均绝对误差 MAE是对推荐算法质量评价的标准之一 ,它通过计算预测评分与真实评价数 据上的差别来衡量推荐结果的准确性。MAE的值越小 ,推荐准确性越高。假设预测的用户评分集合表示为{P1,…PN},对应 的实际用户评分集合为 {q1,…qN} ,则MAE的计算公式为2.准确率与召回率Precision Recall准确率和召回率是广泛用于信息检索和统计学分类领域的两个度量值用来评价结果的质量。其中精度是检索出相关文档数与检索出的文档总数的比率衡量的是检索系统的查准率召回率是指检索出的相关文档数和文档库中所有的相关文档数的比率衡量的是检索系统的查全率。以下为定义1.Precision Rate 提取出的正确信息条数/提取出的信息条数2.Recall Rate 提取出的正确信息条数/样本中的信息条数3.F1 Precision Rate * Recall Rate * 2/(Precision Rate Recall Rate) F1即为正确率和召回率的调和平均值。其中Precision Rate与Recall Rate两者取值在0和1之间越接近1查准率或查全率就越高。R(u)对用户u推荐的N个物品的集合。​T(u)数据集中用户u真实评分过的物品集合。2.3 本章小结本章主要介绍了以往比较流行的一些传统推荐算法并分析总结了它们的优缺点简单介绍了新的推荐算法的原理和一些常用的评价指标为课题的研究准备了一些基础知识下章将进行基于神经网络的推荐算法设计。第三章 基于神经网络的内容推荐算法的设计3.1 数据集及预处理3.1.1 数据集的选择在音乐领域的机器学习有注明的数据集MillionSongDataset是一个由The Echo Nest提供的数据集分析labels的过程是由众多音乐学者进行人工的判断所以在音乐的判断过程极为准确且在数据调用及分析方向提供了众多强有力的接口所以在最初的数据集选择中我选择了它。图3.1 MillionSong DataSet在使用MillionSongDataSet提供的与正文数据集同样结构包含社交关系用户播放历史的1G轻量级数据集作为本次实验的数据集之后数据的众多影响因子可以自行的选择例如有关社交亦或是地域所带来的影响但是在发现数据集没有对语种进行区别而大多数数据近乎全为英文的时候个人考虑到现有的互联网开放资源似乎也可以做到一个简单的这样的数据集所以依靠爬虫以歌单为个体对某音乐平台的数据进行了获取。基础的数据集设计理念是由以下几个部分构成的歌单本身作为一个单位歌单的labels歌单的热度综合评论数与收听人数歌单本身包含大量的歌曲歌曲有以下属性ID唯一编号 歌词可以做词频统计并为音乐系统的实现做基础歌曲的labels以矩阵形式表明歌曲的各个参数的属性歌曲的热度歌曲的语种歌曲的作者歌曲所属专辑歌曲的相册封面。而歌单本身在某音乐平台的评论中可以提取相应的词频从而获得歌单的关键词即作为labels存在另外在本系统中采取了以歌单模拟用户的方法 即一个歌单代表了一个用户这是因为在某音乐平台中有一个设计理念即用户所喜欢的歌曲和用户所创建的歌单本质上的类都是歌单所以在爬虫的过程中绝大多数歌单即是用户喜欢的音乐那么在歌单处理的过程中变会生成另一组用户数据。用户数据由以下属性组成用户的所处地用户的收听历史用户的特征偏爱矩阵。在本次实验中采取了如下图所示的数据结构图3.2 歌单爬取结果由该表单中的数据进行提取分析便可以得到我们的音乐部分数据集用户 用户ID 用户收听历史 用户年龄用户性别用户所在地区。歌曲 歌曲ID 歌曲曲风 歌曲名称 艺术家 歌词。评分数据则由歌单组成其中对于用户单曲循环的音乐评分为5分用户所喜欢的音乐评分为4分用户正常听完的歌曲为3分用户进行切歌的歌曲为2分用户选择不在喜欢的歌曲为1分。3.1.2 音频读取与分析在音频文件的分析软件中选择了Linux平台下的Sox软件可以将一首音乐的众多tips展示给用户。表3.1 Sox音频部分属性列表Samples read: 20889600Length (seconds): 236.843537Scaled by: 2147483647Maximum amplitude: 0.996857Minimum amplitude: -0.993195Midline amplitude: 0.001831Mean norm: 0.084509Mean amplitude: 0RMS amplitude: 0.119258Maximum delta: 0.729645Minimum delta: 0Mean delta: 0.058931RMS delta: 0.0806Rough frequency: 4743Volume adjustment: 1.003在拥有了Sox之后我们再使用语言集成的eyed3库基于Sox平台的音频分析库eyed3库可以通过对音频文件的读取提取出音频的包含艺术家或是曲风众多属性在eyed中可以将音乐的频谱输出为一个一维矩阵也就是一个数组形式例如图3.3 某音乐文件频谱输出的一维矩阵表现为[2180404, 2180403, 2001415…]一个长为140万位的数组接下来就是对音频文件的分析。首先需要将音乐文件分解成两块部分一块为标签部分一块为音频频谱部分。标签部分包含了所属专辑专辑艺术家创作时间时长流派等等属性而频谱部分则表现为图3.1.1的样式。接下来需要对音乐文件做一个分类的过程首先在我们下载的批量音乐中只有一半的数据在tips里是拥有Genre属性的即为流派或者是类别我们需要对这部分做一个划分其中70%作为我们的训练集30%作为我们的测试集。对数据进行划分之后便需要开始构造一个神经网络模型。3.2 卷积神经网络卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络它的人工神经元可以响应一部分覆盖范围内的周围单元对于大型图像处理有出色表现。 它包括卷积层(convolutional layer)和池化层(pooling layer)。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询