音乐推荐方法、装置、电子设备及计算机可读存储介质与流程

文档序号:29701330发布日期:2022-04-16 14:33阅读:78来源:国知局
音乐推荐方法、装置、电子设备及计算机可读存储介质与流程

1.本技术涉及计算机技术,尤其涉及一种音乐推荐方法、装置、电子设备及计算机可读存储介质。


背景技术:

2.现有的音乐推荐方式中,通常是直接根据用户的静态属性,并结合具有相似属性的大量用户的偏好,来对该用户进行音乐推荐,这种方式推荐的音乐并不能针对每个用户的个体性差异来进行相应区别,从而使得推荐的音乐不够符合用户个体化偏好。


技术实现要素:

3.本技术实施例提供一种音乐推荐方法、装置、电子设备及计算机可读存储介质,能够使推荐的音乐更加符合用户偏好。
4.本技术实施例的技术方案是这样实现的:
5.本技术实施例提供一种音乐推荐方法,包括:
6.获得用户的静态特征数据和动态特征数据;
7.通过音乐推荐模型的第一特征提取层,对所述静态特征数据进行特征提取,得到相应的静态特征;
8.通过所述音乐推荐模型的第二特征提取层,对所述动态特征数据进行特征提取,得到相应的动态特征;
9.通过所述音乐推荐模型的特征融合层,将所述静态特征和所述动态特征进行特征融合,得到相应的融合特征;
10.通过所述所述音乐推荐模型的输出层,基于所述融合特征,对所述用户进行待推荐音乐的预测处理,得到相应的待推荐音乐集合;
11.基于所述待推荐音乐集合,确定针对所述用户的推荐音乐,并将所述推荐音乐推荐给所述用户。
12.上述方案中,所述基于所述待推荐音乐集合,确定针对所述用户的推荐音乐,包括:
13.获得时间信息及用户的位置信息;
14.基于所述时间信息及所述位置信息,确定所述用户的用户行为;
15.基于所述用户行为、用户行为与推荐音乐类别的对应关系,确定针对所述用户的推荐音乐类别集合;
16.从所述待推荐音乐集合中,选取音乐类别归属于所述推荐音乐类别集合的待推荐音乐;
17.将选取的待推荐音乐作为针对所述用户的推荐音乐。
18.上述方案中,所述方法还包括:
19.接收针对所述推荐音乐的用户操作;
20.基于所述用户操作,重新确定针对所述用户的推荐音乐;
21.将重新确定的推荐音乐推荐给所述用户。
22.上述方案中,所述基于所述用户操作,重新确定针对所述用户的推荐音乐,包括:
23.将所述用户操作对应的操作数据添加至所述动态特征数据中,得到新的动态特征数据;
24.基于所述静态特征数据和所述新的动态特征数据,通过所述音乐推荐模型,对所述用户进行待推荐音乐的预测处理,得到新的待推荐音乐集合;
25.基于所述新的待推荐音乐集合,重新确定针对所述用户的推荐音乐。
26.上述方案中,所述获得用户的静态特征数据和动态特征数据之前,所述方法还包括:
27.获得样本静态特征数据、样本动态特征数据和样本推荐音乐集合;
28.通过所述音乐推荐模型的第一特征提取层,对所述样本静态特征数据进行特征提取,得到相应的样本静态特征;
29.通过所述音乐推荐模型的第二特征提取层,对所述样本动态特征数据进行特征提取,得到相应的样本动态特征;
30.通过所述音乐推荐模型的特征融合层,将所述静态特征和所述动态特征进行特征融合,得到相应的样本融合特征;
31.通过所述所述音乐推荐模型的输出层,基于所述样本融合特征,进行待推荐音乐的预测处理,得到相应的预测推荐音乐集合;
32.基于所述预测推荐音乐集合与所述样本推荐音乐集合之间的误差,更新所述音乐推荐模型的模型参数。
33.本技术实施例提供一种音乐推荐装置,包括:。
34.获得模块,用于获得用户的静态特征数据和动态特征数据;
35.第一特征提取模块,用于通过音乐推荐模型的第一特征提取层,对所述静态特征数据进行特征提取,得到相应的静态特征;
36.第二特征提取模块,用于通过所述音乐推荐模型的第二特征提取层,对所述动态特征数据进行特征提取,得到相应的动态特征;
37.特征融合模块,用于通过所述音乐推荐模型的特征融合层,将所述静态特征和所述动态特征进行特征融合,得到相应的融合特征;
38.预测模块,用于通过所述所述音乐推荐模型的输出层,基于所述融合特征,对所述用户进行待推荐音乐的预测处理,得到相应的待推荐音乐集合;
39.推荐模块,用于基于所述待推荐音乐集合,确定针对所述用户的推荐音乐,并将所述推荐音乐推荐给所述用户。
40.本技术实施例提供一种电子设备,包括:
41.存储器,用于存储可执行指令;
42.处理器,用于执行所述存储器中存储的可执行指令时,实现本技术实施例提供的音乐推荐方法。
43.本技术实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本技术实施例提供的音乐推荐方法。
44.本技术实施例通过获得用户的静态特征数据和动态特征数据;通过音乐推荐模型的第一特征提取层,对所述静态特征数据进行特征提取,得到相应的静态特征;通过所述音乐推荐模型的第二特征提取层,对所述动态特征数据进行特征提取,得到相应的动态特征;通过所述音乐推荐模型的特征融合层,将所述静态特征和所述动态特征进行特征融合,得到相应的融合特征;通过所述所述音乐推荐模型的输出层,基于所述融合特征,对所述用户进行待推荐音乐的预测处理,得到相应的待推荐音乐集合;基于所述待推荐音乐集合,确定针对所述用户的推荐音乐,并将所述推荐音乐推荐给所述用户,能够使推荐的音乐更加符合用户偏好。
附图说明
45.图1是本技术实施例提供的音乐推荐系统的一个可选的结构示意图;
46.图2是本技术实施例提供的电子设备的一个可选的结构示意图;
47.图3是本技术实施例提供的音乐推荐方法的一个可选的流程示意图;
48.图4是本技术实施例提供的步骤306的一个可选的细化流程示意图;
49.图5是本技术实施例提供的用户行为与推荐音乐类别的对应关系的一个可选的示意图;
50.图6是本技术实施例提供的步骤306之后的步骤的一个可选的流程示意图;
51.图7是本技术实施例提供的步骤602的一个可选的细化流程示意图;
52.图8是本技术实施例提供的步骤301之前的步骤的一个可选的流程示意图;
53.图9是本技术实施例提供的音乐推荐方法的一个可选的流程示意图。
具体实施方式
54.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,所描述的实施例不应视为对本技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
55.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
56.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。
57.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
58.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
59.1)人工智能(ai,artificial intelligence)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理
论、方法、技术及应用系统。
60.换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
61.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
62.机器学习(machine learning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
63.本技术实施例提供一种音乐推荐方法、装置、电子设备和计算机可读存储介质,能够使推荐的音乐更加符合用户偏好。
64.首先对本技术实施例提供的音乐推荐系统进行说明,参见图1,图1是本技术实施例提供的音乐推荐系统100的一个可选的架构示意图,终端103通过网络102连接服务器101。在一些实施例中,终端103可以是笔记本电脑,平板电脑,台式计算机,智能手机,专用消息设备,便携式游戏设备,智能音箱,智能手表等,但并不局限于此。服务器101可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(cdn,content delivery network)服务、以及大数据和人工智能平台等基础云计算服务的云服务器。网络102可以是广域网或者局域网,又或者是二者的组合。终端103以及服务器101可以通过有线或无线通信方式进行直接或间接地连接,本技术实施例中不作限制。
65.服务器101,用于训练音乐推荐模型,并将音乐推荐模型发送给终端103。
66.终端103,用于接收服务器101发送的音乐推荐模型;获得用户的静态特征数据和动态特征数据;通过音乐推荐模型的第一特征提取层,对所述静态特征数据进行特征提取,得到相应的静态特征;通过所述音乐推荐模型的第二特征提取层,对所述动态特征数据进行特征提取,得到相应的动态特征;通过所述音乐推荐模型的特征融合层,将所述静态特征和所述动态特征进行特征融合,得到相应的融合特征;通过所述所述音乐推荐模型的输出层,基于所述融合特征,对所述用户进行待推荐音乐的预测处理,得到相应的待推荐音乐集合;基于所述待推荐音乐集合,确定针对所述用户的推荐音乐,并将所述推荐音乐推荐给所述用户。
67.接下来对本技术实施例提供的用于实施上述音乐推荐方法的电子设备进行说明,参见图2,图2是本技术实施例提供的电子设备200的一个可选的结构示意图,在实际应用中,电子设备200可以实施为图1中的终端103或服务器101,以电子设备为图1所示的终端103为例,对实施本技术实施例的音乐推荐方法的电子设备进行说明。图2所示的电子设备
200包括:至少一个处理器201、存储器205、至少一个网络接口202和用户接口203。电子设备200中的各个组件通过总线系统204耦合在一起。可理解,总线系统204用于实现这些组件之间的连接通信。总线系统204除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统204。
68.处理器201可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
69.用户接口203包括使得能够呈现媒体内容的一个或多个输出装置2031,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口203还包括一个或多个输入装置2032,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
70.存储器205可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器205可选地包括在物理位置上远离处理器201的一个或多个存储设备。
71.存储器205包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,read only memory),易失性存储器可以是随机存取存储器(ram,random access memory)。本技术实施例描述的存储器205旨在包括任意适合类型的存储器。
72.在一些实施例中,存储器205能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,本技术实施例中,存储器205中存储有操作系统2051、网络通信模块2052、呈现模块2053、输入处理模块2054及音乐推荐装置2055;具体地,
73.操作系统2051,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
74.网络通信模块2052,用于经由一个或多个(有线或无线)网络接口202到达其他计算设备,示例性的网络接口202包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universal serial bus)等;
75.呈现模块2053,用于经由一个或多个与用户接口203相关联的输出装置2031(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
76.输入处理模块2054,用于对一个或多个来自一个或多个输入装置2032之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
77.在一些实施例中,本技术实施例提供的音乐推荐装置可以采用软件方式实现,图2示出了存储在存储器205中的音乐推荐装置2055,其可以是程序和插件等形式的软件,包括以下软件模块:获得模块20551、第一特征提取模块20552、第二特征提取模块20553、特征融合模块20554、预测模块25555和推荐模块20556,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
78.在另一些实施例中,本技术实施例提供的音乐推荐装置可以采用硬件方式实现,作为示例,本技术实施例提供的音乐推荐装置可以是采用硬件译码处理器形式的处理器,
其被编程以执行本技术实施例提供的音乐推荐方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,application specific integrated circuit)、dsp、可编程逻辑器件(pld,programmable logic device)、复杂可编程逻辑器件(cpld,complex programmable logic device)、现场可编程门阵列(fpga,field-programmable gate array)或其他电子元件。
79.将结合本技术实施例提供的服务器的示例性应用和实施,说明本技术实施例提供的音乐推荐方法。
80.参见图3,图3是本技术实施例提供的音乐推荐方法的一个可选的流程示意图,将结合图3示出的步骤进行说明。
81.步骤301,获得用户的静态特征数据和动态特征数据;
82.步骤302,通过音乐推荐模型的第一特征提取层,对所述静态特征数据进行特征提取,得到相应的静态特征;
83.步骤303,通过所述音乐推荐模型的第二特征提取层,对所述动态特征数据进行特征提取,得到相应的动态特征;
84.步骤304,通过所述音乐推荐模型的特征融合层,将所述静态特征和所述动态特征进行特征融合,得到相应的融合特征;
85.步骤305,通过所述所述音乐推荐模型的输出层,基于所述融合特征,对所述用户进行待推荐音乐的预测处理,得到相应的待推荐音乐集合;
86.步骤306,基于所述待推荐音乐集合,确定针对所述用户的推荐音乐,并将所述推荐音乐推荐给所述用户。
87.其中,音乐推荐模型可以采用神经网络模型实现,例如u型卷积神经网络(u-net,u-network)、全卷积网络(fcn,fully convolutional networks)、特征金字塔网络(fpn,feature pyramid networks)、长短期记忆网络(lstm,long short-term memory)等等。
88.需要说明的是,本技术实施例提供的静态特征数据和动态特征数据的数量均为多个。用户的静态特征数据可以但不限于是用户性别、年龄、职业、学历、所在地等。动态特征数据可以但不限于是用户在听歌过程中的下载、收藏、循环播放、跳过、历史操作信息等。
89.本技术实施例中,在获得多个静态特征数据之后,还对多个静态特征数据进行预处理。具体地,服务器针对每一个静态特征数据进行编码处理,得到相应的编码表示,然后将所有静态特征数据对应的编码表示进行特征拼接,得到编码向量。示例性地,对于性别这一静态特征数据,使用0代表男,使用1代表女;对于年龄这一静态特征数据,使用0-10,11-20,21-30,31-40,41-50,51-60,61-70,71-80,81-90,90以上等的分段表示,用户在对应年龄段则表示为1,不在该年龄段为0;职业、学历和所在地等静态特征数据可以使用one-hot表示法。将性别、年龄、职业、学历和所在地的编码表示组合在一起,就构成了一个由0和1组成的编码向量,并将维度记为m。当把n个用户对应的静态特征数据进行预处理后的编码向量进行组合,则得到一个n*m的静态特征矩阵。这里,同时对n个用户对应的静态特征数据及动态特征数据进行处理,可以同时对n个用户进行音乐推荐。其中,n为大于或等于2的正整数。此外,在获得多个动态特征数据后,服务器也对多个动态特征数据进行预处理。具体地,服务器对下载、收藏、循环播放、跳过、历史操作信息等动态特征数据进行预处理。示例性地,服务器构建u*p*k维的用户-音乐-操作的动态特征矩阵,u为用户数,p为音乐数量,k为
操作类型数量(如下载、收藏、循环播放、跳过四种操作,则k为4)。当用户行为为下载、收藏、循环播放等正面行为时,在矩阵相应元素位置记录为1。切歌等负面行为时,在动态特征矩阵相应元素位置记录-1。例如,用户1对音乐1进行下载操作,则将动态特征矩阵中[0,0,0]位置元素记为1。由于该矩阵是稀疏的,服务器则还对其进行主成分分析(pca,principal component analysis)降维处理,得到降维后的动态特征矩阵。
[0090]
在实际实施时,服务器将获得的静态特征数据输入至音乐推荐模型的第一特征提取层,通过第一特征提取层,对静态特征数据进行特征提取,得到相应的静态特征f1。应当理解的是,输入至音乐推荐模型的第一特征提取层的是上述预处理后得到的静态特征矩阵。同时,服务器将获得的动态特征数据输入至音乐推荐模型的第二特征提取层,通过第二特征提取层对动态特征数据进行特征提取,得到相应的动态特征f2。应当理解的是,输入至音乐推荐模型的第二特征提取层的是上述预处理后得到的动态特征矩阵。接着,将第一特征提取层输出的静态特征和第二特征提取层输出的动态特征输入至音乐推荐模型的特征融合层,通过特征融合层将静态特征f1和动态特征f2进行特征融合,得到相应的融合特征。这里,特征融合可以是特征拼接,即将静态特征和动态特征拼接为一个级联的特征,得到融合特征f3。最后,通过音乐推荐模型的输出层,基于该融合特征,对用户进行音乐推荐,得到相应的待推荐音乐集合。这里,待推荐音乐集合包括多个待推荐音乐。
[0091]
参见图4,图4是本技术实施例提供的步骤306的一个可选的细化流程示意图,在一些实施例中,所述步骤306,还可以通过如下方式实现:
[0092]
步骤401,获得时间信息及用户的位置信息;
[0093]
步骤402,基于所述时间信息及所述位置信息,确定所述用户的用户行为;
[0094]
步骤403,基于所述用户行为、用户行为与推荐音乐类别的对应关系,确定针对所述用户的推荐音乐类别集合;
[0095]
步骤404,从所述待推荐音乐集合中,选取音乐类别归属于所述推荐音乐类别集合的待推荐音乐;
[0096]
步骤405,将选取的待推荐音乐作为针对所述用户的推荐音乐,并将所述推荐音乐推荐给所述用户。
[0097]
在实际实施时,服务器获得当前的时间信息及用户当前的位置信息。具体地,服务器通过访问网络获得网络时间,得到当前的时间信息,并接收用户终端发送的定位信息,得到用户当前的位置信息。接着,服务器基于时间信息及位置信息,分析用户的用户行为。具体地,服务器还可以基于用户的位置信息随时间信息的变化,来确定用户的移动速度,并结合用户的移动速度和位置信息,来分析用户的用户行为。例如,当用户的位置信息在住宅区,且时间信息为早晨或晚上,用户的移动速度为0,则可以确定用户当前处于起床或入睡。接着,服务器基于确定的用户行为、用户行为与推荐音乐类别的对应关系,确定针对所述用户的推荐音乐类别集合。这里,用户行为与推荐音乐类别的对应关系为预先存储,可以以数表的形式存储,还可以以数据库的形式存储。示例性地,参见图5,图5是本技术实施例提供的用户行为与推荐音乐类别的对应关系的一个可选的示意图。其中,当用户行为为起床或者入睡时,对应的推荐音乐类别则可以是轻音乐、古典(或古风)、流行等。当用户行为为工作或者学习时,对应的推荐音乐类别则可以是流行、轻音乐等。当用户行为为坐地铁或公交时,对应的推荐音乐类别则可以是流行、轻音乐及民谣等。当用户行为为驾车时,对应的推
荐音乐类别则可以是摇滚、流行及说唱等。当用户行为为剧烈运动时,对应的推荐音乐类别则可以是摇滚、流行、爵士及电子等。当用户行为为强度较低的运动时,对应的音乐类别则可以是流行、轻音乐、舞曲及古典(或古风)等。当用户行为为进餐时,对应的推荐音乐类别则可以是流行、轻音乐、古典(或古风)及爵士等。
[0098]
接着,服务器从待推荐音乐集合中,选取音乐类别归属于推荐音乐类别集合的推荐音乐,将选取的推荐音乐作为针对用户的推荐音乐,并将推荐音乐推荐给所述用户。示例性地,当待推荐音乐集合中包括音乐a、音乐b及音乐c时,若音乐a的音乐类别为轻音乐,音乐b的音乐类别为说唱,音乐c的音乐类别为古典,而基于用户行为确定的推荐音乐类别集合包括轻音乐、古典(或古风)及流行,则确定音乐a及音乐c为归属于推荐音乐类别集合的推荐音乐,将音乐a及音乐c推荐给用户。
[0099]
在一些实施例中,参见图6,图6是本技术实施例提供的步骤306之后的步骤的一个可选的流程示意图,在一些实施例中,所述方法还可以执行:
[0100]
步骤601,接收针对所述推荐音乐的用户操作;
[0101]
步骤602,基于所述用户操作,重新确定针对所述用户的推荐音乐;
[0102]
步骤603,将重新确定的推荐音乐推荐给所述用户。
[0103]
在实际实施时,用户操作包括包括用户在听歌过程中的下载、收藏、循环播放及跳过等操作行为。服务器通过用户终端接收用户针对推荐音乐的用户操作。在接收到用户操作后,重新确定针对用户的推荐音乐。例如,当用户操作为跳过时,服务器则重新确定推荐音乐并推荐给相应的用户。
[0104]
在实际场景下,由于音乐库庞大,而待推荐音乐集合是从音乐库中确定的,待推荐音乐集合中的音乐数量也十分多,经过确定用户行为得到的推荐音乐类别集合的筛选后得到的待推荐音乐的数量也会非常多,因而,本技术实施例中,服务器则从多个推荐音乐中选取推荐数量的推荐音乐作为推荐列表推荐给用户。这里,服务器可以通过随机的方式进行选取。而用户操作可以是针对整个推荐列表,也可以是针对推荐列表中的某一首或者多首音乐。当用户操作是针对整个推荐列表时,若用户针对该推荐列表发出了跳过操作,则服务器返回步骤301,继续通过音乐推荐模型进行待推荐音乐集合的重新确定,并从重新确定的待推荐音乐集合中重新确定多个推荐音乐。本技术实施例中,服务器则将重新确定的多个推荐音乐(重新确定的推荐列表)与用户操作之前的多个推荐音乐(上一个推荐列表)进行比对,当二者的重合度小于重合度阈值时,则将重新确定的多个推荐音乐推荐给用户。这里,重合度可以是两个推荐列表中相同推荐音乐占推荐数量(即推荐列表中推荐音乐的数量)的占比。而当重合度大于或者等于重合度阈值时,服务器则继续重新确定新的推荐列表。这里,服务器可以将与上一个推荐列表重合的推荐音乐进行剔除,并从重新确定的待推荐音乐集合中选取新的待推荐音乐进行补入。
[0105]
在一些实施例中,参见图7,图7是本技术实施例提供的步骤602的一个可选的细化流程示意图,在一些实施例中,所述步骤602,还可以通过如下方式实现:
[0106]
步骤701,将所述用户操作对应的操作数据添加至所述动态特征数据中,得到新的动态特征数据;
[0107]
步骤702,基于所述静态特征数据和所述新的动态特征数据,通过所述音乐推荐模型,对所述用户进行待推荐音乐的预测处理,得到新的待推荐音乐集合;
[0108]
步骤703,基于所述新的待推荐音乐集合,重新确定针对所述用户的推荐音乐。
[0109]
在实际实施时,在服务器接收用户的用户操作后,可以利用用户操作并结合音乐推荐模型来重新确定待推荐音乐集合。具体地,服务器获取用户操作对应的操作数据,将操作数据作为新的动态特征数据添加至已有的动态特征数据集合中,得到新的动态特征数据集合。然后将已有的静态特征数据和新的动态特征数据集合输入至音乐推荐模型中,得到新的待推荐音乐集合,并基于新的待推荐音乐集合来重新确定针对用户的推荐音乐。这里,重新确定针对用户的推荐音乐的过程参见前述步骤,这里不再赘述。
[0110]
参见图8,图8是本技术实施例提供的步骤301之前的步骤的一个可选的流程示意图,在一些实施例中,所述步骤301之前,所述方法还可以执行:
[0111]
步骤801,获得样本静态特征数据、样本动态特征数据和样本推荐音乐集合;
[0112]
步骤802,通过所述音乐推荐模型的第一特征提取层,对所述样本静态特征数据进行特征提取,得到相应的样本静态特征;
[0113]
步骤803,通过所述音乐推荐模型的第二特征提取层,对所述样本动态特征数据进行特征提取,得到相应的样本动态特征;
[0114]
步骤804,通过所述音乐推荐模型的特征融合层,将所述静态特征和所述动态特征进行特征融合,得到相应的样本融合特征;
[0115]
步骤805,通过所述所述音乐推荐模型的输出层,基于所述样本融合特征,进行待推荐音乐的预测处理,得到相应的预测推荐音乐集合;
[0116]
步骤806,基于所述预测推荐音乐集合与所述样本推荐音乐集合之间的误差,更新所述音乐推荐模型的模型参数。
[0117]
在实际实施时,在利用音乐推荐模型进行待推荐音乐集合的预测之前,还对音乐推荐模型进行训练。具体地,服务器获得样本静态特征数据和样本动态特征数据,将样本静态特征数据和样本动态特征数据输入至音乐推荐模型中,通过引用推荐模型对待推荐音乐进行预测,得到相应的预测推荐音乐集合,并确定预测推荐音乐集合与样本推荐音乐集合之间的误差,基于该误差更新音乐推荐模型的模型参数,从而对音乐推荐模型进行训练。
[0118]
本技术实施例中,通过获得用户的静态特征数据和动态特征数据;通过音乐推荐模型的第一特征提取层,对静态特征数据进行特征提取,得到相应的静态特征;通过音乐推荐模型的第二特征提取层,对动态特征数据进行特征提取,得到相应的动态特征;通过音乐推荐模型的特征融合层,将静态特征和动态特征进行特征融合,得到相应的融合特征;通过音乐推荐模型的输出层,基于融合特征,对用户进行待推荐音乐的预测处理,得到相应的待推荐音乐集合;基于待推荐音乐集合,确定针对用户的推荐音乐,并将推荐音乐推荐给用户,能够使得推荐给用户的音乐更加接近用户喜好。
[0119]
下面,将说明本技术实施例在一个实际的应用场景中的示例性应用。
[0120]
参见图9,图9是本技术实施例提供的音乐推荐方法的一个可选的流程示意图。下面结合步骤进行说明。
[0121]
s1、根据用户的注册信息以及行为数据,建立用户特征。用户特征包括用户性别、年龄、职业等静态特征数据和在听歌过程中的下载、收藏、循环播放、跳过、历史操作信息等动态特征数据。
[0122]
s2、由于静态特征数据和动态特征数据都是文本格式,所以使用word2vec方法将
其转化为词向量。
[0123]
s3、将静态特征输入到卷积神经网络(例如vgg、resnet等)中提取特征,得到特征向量f1;
[0124]
s4、将动态特征输入到长短时记忆网络(lstm)中提取特征,得到特征f2;
[0125]
s5、将特征f1和特征f2级联,得到最终的特征f3;
[0126]
s6、训练该网络,推测用户偏爱的作品,将其记为待推荐集合s;
[0127]
s7、分析用户位置信息和相关环境。
[0128]
(1)利用无线通信网络设备,搜集用户的位置信息。手机端可以利用自带的定位系统,pc端则需要使用百度、高德等定位功能的api。
[0129]
(2)将位置信息以及时间信息作为推荐系统所考虑的因素,推测用户行为,并根据行为选择出推荐的音乐类别。用户行为不确定时,可以按照可能行为的推荐类型的并集处理。例如,当位置在家或者宿舍时,入睡与学习都有可能,此时推荐类型为两者并集。本步骤可以使用现有的音乐类型推荐方法进行代替,具有灵活性。
[0130]
s8、若用户未点击刷新按钮,则将待推荐集合s中符合类别的音乐推荐给用户;若用户点击过刷新按钮,则还应当根据s9进行调整,减少切歌相似歌曲与增加循环相似歌曲。相似度判断方法可以根据现有的技术方案执行。
[0131]
s9、由于推荐给用户的音乐类型多样,因此可以根据用户听歌时的操作进行微调。在推荐界面设置一个刷新按钮,当用户点击刷新时,返回s1,对用户切歌操作的相似歌曲进行减少,增加与循环播放歌曲的相似歌曲。
[0132]
本技术实施例首先提取用户静态和动态特征,选出用户偏爱音乐,然后根据获取用户地理位置和时间,判断其行为场景,然后根据行为场景进行类型筛选。另外,在推荐时,还提供了刷新操作,根据用户实时操作来对推荐结果进行调整。
[0133]
下面继续说明本技术实施例提供的音乐推荐装置2055的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器205的音乐推荐装置2055中的软件模块可以包括:
[0134]
获得模块20551,用于获得用户的静态特征数据和动态特征数据;
[0135]
第一特征提取模块20552,用于通过音乐推荐模型的第一特征提取层,对所述静态特征数据进行特征提取,得到相应的静态特征;
[0136]
第二特征提取模块20553,用于通过所述音乐推荐模型的第二特征提取层,对所述动态特征数据进行特征提取,得到相应的动态特征;
[0137]
特征融合模块20554,用于通过所述音乐推荐模型的特征融合层,将所述静态特征和所述动态特征进行特征融合,得到相应的融合特征;
[0138]
预测模块25555,用于通过所述所述音乐推荐模型的输出层,基于所述融合特征,对所述用户进行待推荐音乐的预测处理,得到相应的待推荐音乐集合;
[0139]
推荐模块20556,用于基于所述待推荐音乐集合,确定针对所述用户的推荐音乐,并将所述推荐音乐推荐给所述用户。
[0140]
在一些实施例中,所述推荐模块,还用于获得时间信息及用户的位置信息;基于所述时间信息及所述位置信息,确定所述用户的用户行为;基于所述用户行为、用户行为与推荐音乐类别的对应关系,确定针对所述用户的推荐音乐类别集合;从所述待推荐音乐集合
中,选取音乐类别归属于所述推荐音乐类别集合的待推荐音乐;将选取的待推荐音乐作为针对所述用户的推荐音乐。
[0141]
在一些实施例中,所述推荐模块,还用于接收针对所述推荐音乐的用户操作;基于所述用户操作,重新确定针对所述用户的推荐音乐;将重新确定的推荐音乐推荐给所述用户。
[0142]
在一些实施例中,所述推荐模块,还用于将所述用户操作对应的操作数据添加至所述动态特征数据中,得到新的动态特征数据;基于所述静态特征数据和所述新的动态特征数据,通过所述音乐推荐模型,对所述用户进行待推荐音乐的预测处理,得到新的待推荐音乐集合;基于所述新的待推荐音乐集合,重新确定针对所述用户的推荐音乐。
[0143]
在一些实施例中,所述装置还包括:模型训练模块,音乐获得样本静态特征数据、样本动态特征数据和样本推荐音乐集合;通过所述音乐推荐模型的第一特征提取层,对所述样本静态特征数据进行特征提取,得到相应的样本静态特征;通过所述音乐推荐模型的第二特征提取层,对所述样本动态特征数据进行特征提取,得到相应的样本动态特征;通过所述音乐推荐模型的特征融合层,将所述静态特征和所述动态特征进行特征融合,得到相应的样本融合特征;通过所述所述音乐推荐模型的输出层,基于所述样本融合特征,进行待推荐音乐的预测处理,得到相应的预测推荐音乐集合;基于所述预测推荐音乐集合与所述样本推荐音乐集合之间的误差,更新所述音乐推荐模型的模型参数。
[0144]
本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术实施例上述的音乐推荐方法。
[0145]
本技术实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本技术实施例提供的音乐推荐方法。
[0146]
在一些实施例中,计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
[0147]
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
[0148]
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
[0149]
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
[0150]
综上所述,通过本技术实施例能够使推荐的音乐更加符合用户偏好。
[0151]
以上所述,仅为本技术的实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1