CN109885719A - 一种歌曲推荐方法、系统、终端及存储介质 - Google Patents
一种歌曲推荐方法、系统、终端及存储介质 Download PDFInfo
- Publication number
- CN109885719A CN109885719A CN201910068899.3A CN201910068899A CN109885719A CN 109885719 A CN109885719 A CN 109885719A CN 201910068899 A CN201910068899 A CN 201910068899A CN 109885719 A CN109885719 A CN 109885719A
- Authority
- CN
- China
- Prior art keywords
- song
- preference
- songs
- parameter
- recommendations
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
- G06F16/635—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
- G06F16/638—Presentation of query results
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种歌曲推荐方法、系统、终端及存储介质,该方法包括:获取第一歌曲的属性参数;所述属性参数包括歌曲收藏参数、歌曲搜索参数、歌曲播放参数中至少一种;根据属性参数计算出第一歌曲的偏好度;根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度;根据第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。通过使用本发明实施例,能够在提供歌曲推荐的契合准确度的基础上,还能极大地提高处理效率,尤为适用于车载场景。本发明作为一种歌曲推荐方法、系统、终端及存储介质可广泛应用于推荐领域中。
Description
技术领域
本发明涉及数据处理技术,尤其涉及一种歌曲推荐方法、系统、终端及存储介质。
背景技术
为了解乏、舒缓车内沉闷的气氛或者满足个人爱好,车主常常会在开车的路途中播放音乐。通常,车主会将想要听的歌曲预先下载存储在车载系统或移动设备上,当需要播放音乐时,则对已下载的歌曲文件进行循环和/或随机播放,这样能够保证所播放的歌曲可满足车主的个人喜好,但是播放的歌曲数量有限,并且需要预先下载存储,操作便利性低下。因此为了解决这一问题,设计了歌曲推荐算法,根据车主所听的歌曲,从而推荐相应的歌曲给车主,这样能够满足车主个人喜好的同时,无需预先下载并且增加了歌曲数量,从而提高了操作便利性和可播放的歌曲数量。但是,目前常用的主流歌曲推荐算法,如协同过滤、纯粹的规则堆叠推荐度打分机制排序等,其推荐结果与用户喜爱的歌曲之间的契合度较低,而通过建立歌曲或歌单之间的相似度关系矩阵来实现歌曲推荐,又会存在计算复杂而降低处理效率的问题。
发明内容
有鉴于此,本发明实施例的目的是提供一种歌曲推荐方法、系统、终端及存储介质,以实现快速且准确的歌曲推荐。
第一方面,本发明实施例提供了一种歌曲推荐方法,包括以下步骤:
获取第一歌曲的属性参数;所述属性参数包括歌曲收藏参数、歌曲搜索参数、歌曲播放参数中至少一种;
根据所述属性参数,计算出第一歌曲的偏好度;
根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度;
根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。
第二方面,本发明实施例提供了一种歌曲推荐系统,包括:
第一获取单元,用于获取第一歌曲的属性参数;所述属性参数包括歌曲收藏参数、歌曲搜索参数、歌曲播放参数中至少一种;
第一计算单元,用于根据所述属性参数,计算出第一歌曲的偏好度;
第二计算单元,用于根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度;
推荐单元,用于根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。
第三方面,本发明实施例提供了一种终端,该装置包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现所述一种歌曲推荐方法。
第四方面,本发明实施例提供了一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行所述一种歌曲推荐方法。
上述本发明实施例中的一个或多个技术方案具有如下优点:本发明实施例通过利用第一歌曲的属性参数来计算出第一歌曲的偏好度,所述属性参数包括歌曲收藏行为参数、歌曲搜索行为参数、歌曲播放行为参数中至少一种,然后根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度,接着根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。由此可见,本发明实施例的歌曲推荐方法结合了用户对歌曲的操作行为、用户对歌曲特性的喜爱程度以及歌曲特性对歌曲的权重来实现歌曲推荐,其中所述用户对歌曲的操作行为包括有歌曲收藏、搜索和/或播放行为,因此相较于传统推荐技术,本发明实施例可大大提高了最终输出的推荐结果与用户喜爱的歌曲之间的契合度,同时对于第二歌曲的偏好度计算,其无需构建歌曲或歌单之间的相似度关系矩阵,这样在提供歌曲推荐的契合准确度的基础上,还能极大地提高处理效率。
附图说明
图1是本发明实施例一种歌曲推荐方法的一具体实施例步骤流程示意图;
图2是本发明实施例一种歌曲推荐方法的另一具体实施例步骤流程示意图;
图3是本发明实施例一种歌曲推荐系统的结构框图;
图4是本发明实施例一种终端的结构框图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步的详细说明。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
如图1所示,本发明实施例提供了一种歌曲推荐方法,其包括的步骤如下所示。
S101、获取第一歌曲的属性参数;所述属性参数包括歌曲收藏参数、歌曲搜索参数、歌曲播放参数中至少一种用户行为参数。
具体地,对于所述第一歌曲,其指的是具有收藏、搜索、播放中任一行为的歌曲,也就是说,被用户收藏过、搜索过和/或播放过的歌曲为本发明实施例中所述的第一歌曲,因此,所述第一歌曲的属性参数会包含有歌曲收藏参数、歌曲搜索参数、歌曲播放参数中至少一种用户行为参数。
对于歌曲收藏参数,其可包含但不限于有歌曲收藏次数、歌曲收藏时间、歌曲收藏频率等,通常,歌曲收藏次数越多和/或收藏频率越高,则表示用户越容易对该歌曲产生喜爱情绪。其中,所述歌曲收藏次数是通过对歌曲收藏按钮的点击次数来进行记录的,如歌曲收藏按钮被点击1次,歌曲收藏次数则增加1次;所述歌曲收藏时间是通过对歌曲收藏按钮的点击时间来进行记录的,如歌曲收藏按钮被点击的时间则为歌曲收藏时间;所述歌曲收藏频率是通过在预设的时间段内对歌曲收藏次数进行统计而得出的,在预设的时间段内歌曲收藏次数越高,所述歌曲收藏频率则越高,其中,对于所述预设的时间段,其为可人为选择设定的时间段,也可从若干个歌曲收藏时间中按需选取两个歌曲收藏时间,而这两个歌曲收藏时间之间的时间段便为所述预设的时间段。
对于所述歌曲搜索参数,其可包含但不限于有歌曲搜索次数、歌曲搜索频率、歌曲搜索时间等,通常,歌曲搜索次数越多和/或搜索频率越高,则表示用户越喜爱该歌曲。其中,所述歌曲搜索次数是通过对歌曲搜索记录的条数来进行统计的,例如,歌曲A被搜索的记录为1,那么歌曲的搜索次数则增加1次,而所述歌曲搜索记录通常是由用户将歌曲名称输入搜索框后点击搜索按钮而触发产生的;所述歌曲搜索时间是通过对歌曲搜索按钮的点击时间来进行记录的,如歌曲搜索按钮被点击的时间则为歌曲搜索时间;所述歌曲搜索频率是通过在预设的时间段内对歌曲搜索次数进行统计而得出的,在预设的时间段内歌曲搜索次数越高,所述歌曲搜索频率则越高,其中,对于所述预设的时间段,其可为人为选择设定的时间段,也可为从若干个歌曲搜索时间中按需选取两个歌曲搜索时间,而这两个歌曲搜索时间之间的时间段便为所述预设的时间段。
对于所述歌曲播放参数,其可包含但不限于有歌曲播放总时长、歌曲播放频率、歌曲播放次数等,通常,歌曲播放总时长越长、歌曲播放频率越高和/或歌曲播放次数越多,则表示用户越喜爱该歌曲。其中,所述歌曲播放总时长可通过歌曲播放次数与歌曲时长来计算得到,例如,歌曲时长为4分钟,共完整播放了10次,那么歌曲播放时长则为40分钟,而若第i次并没有完整播放该歌曲,则按照第i次所播放的时长来进行叠加,如,歌曲时长为4分钟,共完整播放了9次,而第10次的时候,该歌曲只播放了2分钟,此时该歌曲的播放时长为38分钟。所述歌曲播放次数的统计方式可包括有:当歌曲A播放超过预设时长时,则表示歌曲A的播放次数加1;当歌曲A循环播放1次,那么歌曲A的播放次数加1;当歌曲A在播放过程中,歌曲A的播放进度条被拉回起点或者其他预设的播放点重新进行歌曲音频段的播放,并播放超过预设时长或者播放到单曲结束,此时,歌曲A的播放次数也加1。所述歌曲播放频率是通过在预设的时间段内对歌曲播放次数进行统计而得出的,在预设的时间段内歌曲播放次数越高,所述歌曲播放频率越高,其中,对于所述预设的时间段(通常以天为单位),其可为人为选择设定的时间段,也可从歌曲播放次数中,按需选择第i次的歌曲播放与第j次的歌曲播放,所述第i次的歌曲播放所对应的开始播放时间点与第j次的歌曲播放所对应的开始播放时间点,两者之间的时间段为所述预设的时间段。其中,在歌曲播放参数的采集获取过程中通常会对歌曲开始播放按钮、歌曲结束播放按钮、歌曲进度条的拉动按钮、歌曲循环播放按钮等歌曲播放按钮进行监听,然后根据监听结果来确定出所需的歌曲播放参数。
对于上述歌曲收藏按钮、歌曲搜索按钮和/或歌曲播放按钮,其可为客户端程序中所显示的虚拟按钮,亦可为终端设备中所设置的物理按钮(即实体按钮),这可根据实际需求进行设计,此处并不做过多限定。
S102、根据所述属性参数,计算出第一歌曲的偏好度。
具体地,由于所述属性参数包含有歌曲收藏参数、歌曲搜索参数和/或歌曲播放参数,均体现了用户对歌曲的喜爱程度,因此,通过对歌曲收藏参数、歌曲搜索参数和/或歌曲播放参数进行运算处理后所得到的第一歌曲的偏好度,可准确贴合用户对第一歌曲喜爱程度。其中,对于所述第一歌曲的偏好度,其可采用的计算方式可包含但不限于有:对歌曲收藏参数、歌曲搜索参数和/或歌曲播放参数的数值直接进行运算处理后,得到第一歌曲的偏好度;或者,将歌曲收藏参数、歌曲搜索参数和/或歌曲播放参数按照预设的单位转换成对应的数值后,再进行运算处理,从而得到第一歌曲的偏好度;又或者,将将歌曲收藏参数、歌曲搜索参数和/或歌曲播放参数进行权重分配后,在进行运算处理等。对于所述的运算,其可包含但不限于有加法运算、减法运算、乘法运算、除法运算、指数运算、对数运算等,因此在对第一歌曲的偏好度进行计算时,可根据实际需要来选择运算方式,在本实施例中暂不做过多的限定。
S103、根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度。对于所述第二歌曲,其是指所有歌曲中除第一歌曲以外的歌曲,也就是说,所述第二歌曲是不存有歌曲收藏行为、歌曲搜索行为以及歌曲播放行为的歌曲。而对于所述的歌曲特性,其可包括有伤感、华语、英语、女子组合等特性。
具体地,由于所述第一歌曲的偏好度是根据上述用户行为参数来计算得出的,而该用户行为参数则体现了用户对歌曲的喜爱程度,因此,利用若干个第一歌曲的偏好度,可统计得出用户对不同歌曲特性的喜爱程度。其中,计算用户对不同歌曲特性的喜爱程度的方式可包括有:将第一歌曲的偏好度作为第一歌曲的歌曲特性的权重系数,例如,第一歌曲A的歌曲特性包含特性1、特性2和特性3,然后将作为权重系数的歌曲A的偏好度分别与特性1、特性2和特性3这三个特性值相乘,然后对于每一个第一歌曲的歌曲特性均做如此处理,接着再对每一类型的歌曲特性进行数值统计,这样按照歌曲特性所对应的数值大小,便能得到用户对不同歌曲特性的喜爱程度,通常,歌曲特性所对应的数值越大,用户对该歌曲特性的喜爱程度越高,即该喜爱程度值越大。
然后,结合用户对不同歌曲特性的喜爱程度值以及第二歌曲所包含的若干个歌曲特性在第二歌曲中所占的权重(即不同歌曲特性对第二歌曲的权重),便可计算出用户对该第二歌曲的喜爱度,即第二歌曲的偏好度。其中,对于所述第二歌曲的若干个歌曲特性的权重,其可以作为第二歌曲的属性预存于服务器中或者其他设备中,或者,按照第二歌曲的音频特征或者歌曲标签从而计算得出。
S104、根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。
具体地,根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,即所有歌曲的偏好度,按照推荐规则来输出歌曲推荐结果,其中,对于所述推荐规则,其可包含有:按照偏好度的数值,从大到小对所有歌曲进行排序,然后选取排在前n位的若干首歌曲作为歌曲推荐结果,此时所述若干首歌曲包含有第一歌曲和/或第二歌曲;或者,按照偏好度的数值,从大到小对第二歌曲进行排序,然后从排名前n位的若干首歌曲中选取出所有第二歌曲作为歌曲推荐结果,进一步地,若选取出的所有第二歌曲的个数不满足预设个数,如20个,那么则从排名前n位的若干首歌曲中选取出第一歌曲,以令歌曲推荐结果中包含的歌曲个数为预设个数;又或者,对于歌曲播放、搜索和/或收藏行为的产生时间已距今超过预设时间段(如1个月)的第一歌曲,如第一歌曲A的播放、搜索和/或收藏行为是产生于1个月前,那么可以只对这些第一歌曲按照其偏好度的大小进行排序,然后选取排在前n位的若干首第一歌曲作为歌曲推荐结果。可见,所述推荐规则可根据实际需求进行选择,在本实施例中不做过多限定。
由上述可见,本发明实施例利用第一歌曲的歌曲收藏行为参数、歌曲搜索行为参数和/或歌曲播放行为参数来计算得出第一歌曲的偏好度,然后再利用第一歌曲的偏好度来计算出用户对歌曲特性的喜爱程度值,根据用户对歌曲特性的喜爱程度值以及歌曲特性对第二歌曲的权重来计算出第二歌曲的偏好度,从而根据第一歌曲和/或第二歌曲的偏好度来实现歌曲推荐,可见,由于本发明实施例结合用户对歌曲的操作行为(包括有歌曲收藏行为、搜索行为、播放行为)来实现第一歌曲的偏好度计算,并且利用第一歌曲的偏好度来计算出用户对歌曲特性的喜爱程度值并结合不同歌曲特性对第二歌曲的权重,从而计算出第二歌曲的偏好度,因此,相较于传统的协同过滤、纯粹的规则堆叠推荐,本发明实施例的方案所推荐的结果与用户喜爱的歌曲的贴合度更高,也就是说,推荐结果的准确度更高,同时在实现歌曲推荐的计算过程中无需构建歌曲或歌单之间的相似度关系矩阵,这样在提供歌曲推荐的契合准确度的基础上,还能极大地提高处理效率。
进一步作为本方法的优选实施例,所述根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果这一步骤,其优选包括:
根据第二歌曲的偏好度的数值,从大到小对若干首第二歌曲进行排序,然后选取排在前n位的若干首第二歌曲作为歌曲推荐结果。可见通过选择这样的推荐规则,不仅可很好地满足用户对歌曲的喜爱需求,而且还能提高用户听歌的新鲜感。进一步,若选取出的第二歌曲的个数小于预设个数阈值,则从大到小对若干首第一歌曲进行排序,然后选取排在前n1位的若干个第一歌曲,以令选取出的歌曲个数等于预设个数阈值。
进一步作为本方法的优选实施例,所述根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度这一步骤S103,其包括:
S1031、将不同用户对不同第一歌曲的偏好度置入歌曲偏好度矩阵中,其中,所述歌曲偏好度矩阵的行数表示用户数,所述歌曲偏好度矩阵的列数表示歌曲数。
具体地,首先以用户数作为行数、以歌曲数作为列数来构建得到歌曲偏好度矩阵,然后将已经计算出的不同用户对不同第一歌曲的第一偏好度置入所述歌曲偏好度矩阵的相应元素位置中。对于所述的偏好度矩阵,其可如以下表1所示:
表1
可见,上述表1包含了6个不同用户对8首不同歌曲的偏好度,即所述歌曲偏好度矩阵R’ui,u=1、2、3、……、m1,i=1、2、3、……、n1,m1表示为歌曲偏好度矩阵的总行数,n1表示为歌曲偏好度矩阵的总列数,也就是说,m1表示为用户总数,n1表示为歌曲总数,而在本实施例中,用户总数为6,歌曲总数为8。因此,歌曲偏好矩阵r’ui即表示了第u个用户对i首歌曲的偏好度,如r’41即表示了第4个用户对第1首歌曲的偏好度。其中,若歌曲i于用户u而言为第一歌曲,那么则利用用户u对歌曲i的用户行为参数(歌曲收藏参数、搜索参数、播放参数),来计算出歌曲i的偏好度,然后将计算出的偏好度置入(u,i)位置上,如,歌曲3于用户1而言为第一歌曲,那么利用用户1对歌曲3的用户行为参数来进行偏好度计算后,便将计算出的偏好度3置入(1,3)位置上,此时r’13=3;若歌曲i于用户u而言为第二歌曲,那么此时(u,i)位置上的元素则为空,或者将该位置上的元素值置为0。
S1032、对所述歌曲偏好度矩阵进行矩阵分解后,得到不同用户对不同歌曲特性的喜爱程度矩阵以及不同歌曲特性对不同歌曲的权重矩阵,其中,所述不同歌曲特性对不同歌曲的权重矩阵中包含有不同歌曲特性对不同第二歌曲的权重。
具体地,对于所述不同用户对不同歌曲特性的喜爱程度矩阵Q,其行数表示了用户数,列数表示了歌曲特性个数,这样quf即表示了第u用户对第f个歌曲特性的喜爱程度值。所述矩阵Q的形式可如以下表2所示:
表2
歌曲特性1 | 歌曲特性2 | 歌曲特性3 | |
用户1 | q<sub>11</sub> | q<sub>12</sub> | q<sub>13</sub> |
用户2 | q<sub>21</sub> | q<sub>22</sub> | q<sub>23</sub> |
用户3 | q<sub>31</sub> | q<sub>32</sub> | q<sub>33</sub> |
用户4 | q<sub>41</sub> | q<sub>42</sub> | q<sub>34</sub> |
用户5 | q<sub>51</sub> | q<sub>52</sub> | q<sub>35</sub> |
用户6 | q<sub>61</sub> | q<sub>62</sub> | q<sub>36</sub> |
而对于所述不同歌曲特性对不同歌曲的权重矩阵PT,其列数表示了歌曲数,行数表示了歌曲特性个数,这样pT fi表示了第f个歌曲特性在第i首歌曲中所占的权重。所述矩阵PT的形式如以下表3所示:
表3
歌曲1 | 歌曲2 | 歌曲3 | 歌曲4 | 歌曲5 | 歌曲6 | 歌曲7 | 歌曲8 | |
歌曲特性1 | p<sup>T</sup><sub>11</sub> | p<sup>T</sup><sub>12</sub> | p<sup>T</sup><sub>13</sub> | p<sup>T</sup><sub>14</sub> | p<sup>T</sup><sub>15</sub> | p<sup>T</sup><sub>16</sub> | p<sup>T</sup><sub>17</sub> | p<sup>T</sup><sub>18</sub> |
歌曲特性2 | p<sup>T</sup><sub>21</sub> | p<sup>T</sup><sub>22</sub> | p<sup>T</sup><sub>23</sub> | p<sup>T</sup><sub>24</sub> | p<sup>T</sup><sub>25</sub> | p<sup>T</sup><sub>26</sub> | p<sup>T</sup>27 | p<sup>T</sup>28 |
歌曲特性3 | p<sup>T</sup>31 | p<sup>T</sup><sub>32</sub> | p<sup>T</sup><sub>33</sub> | p<sup>T</sup>34 | p<sup>T</sup>35 | p<sup>T</sup>36 | p<sup>T</sup>37 | p<sup>T</sup><sub>38</sub> |
可见,在本实施例中,f=1、2、3;而不同歌曲特性对歌曲的权重矩阵PT则为矩阵P的转置矩阵,也就是说,所述矩阵P的行数表示了歌曲数,列数表示了歌曲特性个数,即矩阵P所包含的元素值为Pif。
S1033、将所述喜爱程度矩阵Q与所述权重矩阵PT相乘后,得到歌曲评分矩阵R。此时所述的歌曲评分矩阵R中则包含了所有用户对所有歌曲的偏好度,也就是说,所述歌曲评分矩阵R中包含了第一歌曲的偏好度和第二歌曲的偏好度,因此,从所述歌曲评分矩阵R中便能得到第二歌曲的偏好度。实际上,歌曲偏好度矩阵R’与歌曲评分矩阵R的矩阵形式是相同的,只是矩阵R’中只包含了由步骤S102计算得出的不同用户对不同第一歌曲的偏好度,而矩阵R中则包含了通过Q和PT相乘后得到的不同用户对第一歌曲的偏好度和第二歌曲的偏好度,其中,矩阵R中偏好度实质为预测值,而R’中所包含的第一歌曲的偏好度为实际值。
S1034、从所述歌曲评分矩阵中获取得到所述第二歌曲的偏好度。
可见,本实施例的目的是为了算出不同用户对不同歌曲的歌曲评分矩阵R(R=QPT),因此利用矩阵的UV分解来对矩阵R’进行矩阵分解,可分解得到两个低维度的矩阵Q和PT,然后再用PT和Q两个矩阵的乘积去估计实际的评分矩阵,即先求解下面的目标函数:
令∑(R′-QPT)2为最小值,并利用梯度下降法便能得到这矩阵Q和P所包含的元素的估计值,接着利用P、Q的估计值便能计算得出矩阵R的所有值。可见通过使用LFM(latentfactor model,隐语义模型)的原理来实现由用户行为对歌曲的自动聚类,通过矩阵P和Q所包含的元素数值得出用户对第二歌曲的偏好度,计算快速且准确,而且通过LFM原理来实现此步骤,无需考虑分类的角度,第二歌曲的偏好度结果都是基于用户行为的统计自动聚类而得到;同时无需考虑分类粒度的问题,因为通过设置LFM的最终分类数(即用户数、歌曲数、歌曲特性数)就可控制粒度,分类数越大,粒度越细;并且对于每一个歌曲,并不是明确地将其划分到某一类(歌曲特性),而是计算其属于每一类的概率,属于软分类。由此可得,利用此步骤来实现第二歌曲的偏好度,不仅可进一步快速地进行计算处理,而且可以降低误差RMSE,提高偏好度计算的准确度。
进一步作为本发明的优选实施例,所述根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果这一步骤S104,其包括:
S10411、获取车载感知信息。其中,所述车载感知信息包括但不限于有汽车内和/或汽车内的温度参数、汽车内的湿度参数、车速、特殊天气、节日以及用户的状态(如驾车的疲惫状态)等。
S10412、获取与所述车载感知信息匹配的歌曲标签。
具体地,当汽车内和/或外的温度参数高于预设温度阈值时,则表示此时温度较高,那么则获取与此时车载感知信息匹配的歌曲标签,如“燃”、“热”、“火”等;或者,当车速在预设时间段内持续低于预设车速阈值时,则表示车辆持续低速行驶,那么则获取与此时车载感知信息匹配的歌曲标签,如“轻音乐”、“安静”等。可见,对于所述步骤S10412,其实质为,根据获取得到的车载感知信息确定出当前的车载环境或车载条件,然后根据确定出的车载环境或车载条件,从而获取得到对应的歌曲标签。
S10413、当判断出所述第一歌曲具有所述歌曲标签,则增大所述第一歌曲的偏好度,和/或当判断出所述第二歌曲具有所述歌曲标签,则增大所述第二歌曲的偏好度。也就是说,当第一歌曲和/或第二歌曲所具有的歌曲标签包含有“燃”、“热”、“火”或“轻音乐”、“安静”等时,增大第一歌曲和/或第二歌曲的偏好度。
S10414、根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。可见,通过利用车载感知信息来增加歌曲的偏好度,这样能令输出的歌曲推荐结果不仅可贴合用户的喜爱方向,还能贴合当前的车载环境,极大地提高了用户的听歌体验感,而且还能以音乐播放的方式向用户进行车载环境和/或条件的提醒。
或者,进一步作为本方法的优选实施例,所述根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果这一步骤S104,其包括:
S10421、将歌单所包含的若干个第一歌曲的偏好度和/或歌单所包含的若干个第二歌曲的偏好度进行求和处理后,得出所述歌单的推荐度;
S10422、根据歌单的推荐度,输出歌曲推荐结果。
可见在本实施例中,以歌单中所包含的歌曲偏好度来得出歌单推荐度,然后以歌单作为推荐结果输出,这样以歌曲批量的推荐方式来进行推荐,能够进一步地加快处理的效率,并且用户通过歌单的选择便能得到多首歌曲的推荐,不仅增大了用户操作交互体验感,并且减少了用户的操作,提高了操作便利性,这样尤其适合用户难以频繁与客户端交互操作的车载场景。
进一步作为本方法的优选实施例,所述根据歌单的推荐度,输出歌曲推荐结果这一步骤S10422,其包括:
S104221、获取车载感知信息。其中,所述车载感知信息包括但不限于有汽车内和/或汽车内的温度参数、汽车内的湿度参数、车速、特殊天气、节日以及用户的状态(如驾车的疲惫状态)等。
S104222、获取与所述车载感知信息匹配的歌单标签。
具体地,当汽车内和/或外的温度参数高于预设温度阈值时,则表示此时温度较高,那么则获取与此时车载感知信息匹配的歌单标签,如“燃”、“热”、“火”等;或者,当车速在预设时间段内持续低于预设车速阈值时,则表示车辆持续低速行驶,那么则获取与此时车载感知信息匹配的歌单标签,如“轻音乐”、“安静”等。可见,对于所述步骤S104222,其实质为,根据获取得到的车载感知信息确定出当前的车载环境或车载条件,然后根据确定出的车载环境或车载条件,从而获取得到对应的歌单标签。
S104223、当判断出所述歌单具有所述歌单标签,则增大所述歌单的推荐度。也就是说,当所述歌单所具有的歌单标签包含有“燃”、“热”、“火”或“轻音乐”、“安静”等时,则增大所述歌单的推荐度。而对于歌单中所包含的第一歌曲和/或第二歌曲的偏好度,它们基于车载感知信息的调整,则可采用上述步骤S10411~S10413来实现。
S104224、根据所述歌单的推荐度,输出歌曲推荐结果。
可见,通过利用车载感知信息来增加歌单的推荐度,这样能令输出的歌曲推荐结果不仅可贴合用户的喜爱方向,还能贴合当前的车载环境,极大地提高了用户的听歌体验感,而且还能以音乐播放的方式向用户进行车载环境和/或条件的提醒。
进一步作为本发明的优选实施例,还包括以下步骤:
S10423、获取歌单热度、歌单更新的距今时长和/或兴趣标签命中次数;对于所述歌单热度,其可通过歌单的播放量和/或试听量来进行统计得出,对于所述歌单更新的距今时长,其指的是,歌单更新的时间到当前时间之间的时间段,对于所述兴趣标签命中次数,其指的是,歌单所具有的歌单标签命中由用户选择预设的用户兴趣标签的个数,例如,歌单标签有A、B、C、D,而由用户选择预设的用户兴趣标签则有A、C、E、F,此时兴趣标签命中了2个,A和C,也就是说,此时兴趣标签命中次数为2;
S10424、根据所述歌单热度、所述歌单更新的距今时长和/或所述兴趣标签命中次数来调整所述歌单的推荐度;对于所述步骤S10423和S10424,它们是设置在步骤S10422之前的;
其中,所述歌单热度与所述歌单的推荐度呈正比例关系,所述歌单更新的距今时长与所述歌单的推荐度呈反比例关系,所述兴趣标签命中次数与所述歌单的推荐度呈正比例关系。可见在本实施例中,增加了歌单热度、歌单更新的距今时长和/或兴趣标签命中次数这些影响因子来对歌单推荐度的调整,这样能够进一步令推荐的歌曲更贴合用户歌曲喜爱度的同时,还能将更新、更流行、更符合用户喜爱度的歌曲推荐给用户,进一步地提高用户听歌的体验感。
进一步作为本方法的优选实施例,所述歌曲收藏参数包括歌曲收藏的距今时长,其中,所述歌曲收藏的距今时长与所述第一歌曲的偏好度呈反比例关系;
或,所述歌曲搜索参数包括歌曲搜索的距今时长,其中,所述歌曲搜索的距今时长与所述第一歌曲的偏好度呈反比例关系;
或,所述歌曲播放参数包括歌曲播放时长和/或歌曲播放的距今时长,其中,所述歌曲播放时长与所述第一歌曲的偏好度呈正比例关系,所述歌曲播放的距今时长与所述第一歌曲的偏好度呈反比例关系。
具体地,对于所述歌曲收藏的距今时长,其指的是歌曲收藏的时间点到当前时间点之间的时长,例如,歌曲A的收藏时间点为今天的10a.m,而进行歌曲A的偏好度的计算时间点为今天的8p.m,此时,歌曲A的歌曲收藏的距今时长为10小时(此时,所述距今时长以小时为时间单位),若歌曲A的收藏时间点为1月1日,而进行歌曲A的偏好度的计算时间点为1月2日,此时,歌曲A的歌曲收藏的距今时长为1天(此时,所述距今时长以天数为单位)。其中,若歌曲收藏的次数为多次,那么所述歌曲收藏的时间点则选择最近一次歌曲收藏的时间点。可见,歌曲收藏的距今时长越长,则表示用户对该歌曲的喜爱度降低,此时则需要降低该歌曲的偏好度。
对于所述歌曲搜索的距今时长,其指的是歌曲搜索的时间点到当前时间点之间的时长,例如,歌曲A的搜索时间点为今天的10a.m,而进行歌曲A的偏好度的计算时间点为今天的8p.m,此时,歌曲A的歌曲搜索的距今时长为10小时(此时,所述距今时长以小时为时间单位),若歌曲A的搜索时间点为1月1日,而进行歌曲A的偏好度的计算时间点为1月2日,此时,歌曲A的歌曲搜索的距今时长为1天(此时,所述距今时长以天数为单位)。其中,若歌曲搜索的次数为多次,那么所述歌曲搜索的时间点则选择最近一次歌曲搜索的时间点。可见,歌曲搜索的距今时长越长,则表示用户对该歌曲的喜爱度降低,此时则需要降低该歌曲的偏好度。
对于所述歌曲播放时长,其可以指的是歌曲播放总时长,又或者是歌曲某一次播放的时长,如第i次歌曲A持续播放了3分钟,那么第i次歌曲A的播放时长为3分钟。通常歌曲播放时长越长,则表示用户对该歌曲的喜爱度越高,此时则需要提高该歌曲的偏好度。
对于所述歌曲播放的距今时长,其指的是歌曲播放时间点到当前时间点之间的时长,例如,在其它所有条件都相同的前提下,歌曲A是在1天前播放的,而歌曲B则是在10天前播放的,此时歌曲A的偏好度应大于歌曲B的偏好度。可见,歌曲播放的距今时长越长,则表示用户对该歌曲的喜爱度降低,此时则需要降低该歌曲的偏好度。
因此,通过上述所采用的歌曲收藏参数、歌曲搜索参数和/或歌曲播放参数,能够更精准计算出满足用户喜爱需求的歌曲推荐结果。
进一步作为本发明的优选实施例,还包括以下步骤:
按照所述歌曲收藏参数对应的优先级、所述歌曲搜索参数对应的优先级、所述歌曲播放参数对应的优先级和所述车载感知信息对应的优先级,输出与所述歌曲收藏参数、所述歌曲搜索参数、所述歌曲播放参数和/或所述车载感知信息相对应的歌曲推荐理由信息。所述优先级指的是与参数或信息对应的歌曲推荐理由信息的输出优先级。
具体地,若当前推荐的歌曲的偏好度涉及车载感知信息,即歌曲的偏好度有因为车载感知信息而进行了数值调整,此时输出与所述车载感知信息相对应的歌曲推荐理由信息为:根据当前的车载感知信息而为您推荐;若当前推荐的歌曲的偏好度涉及歌曲收藏参数,此时输出与所述歌曲收藏参数相对应的歌曲推荐理由为:根据您收藏的单曲《X》而推荐;若当前推荐的歌曲的偏好度涉及歌曲搜索参数,此时输出与所述歌曲搜索参数相对应的歌曲推荐理由为:根据您搜索的单曲《X》而推荐;若当前推荐的歌曲的偏好度涉及歌曲播放参数,此时输出与所述歌曲播放参数相对应的歌曲推荐理由为:根据您听过的单曲《X》而推荐。而若当前推荐的歌曲的偏好度不涉及歌曲收藏参数、歌曲搜索参数、歌曲播放参数和车载感知信息,此时输出的歌曲推荐理由则为:根据您的喜好推荐。其中,与车载感知信息相对应的歌曲推荐理由信息的输出优先级>与歌曲收藏参数相对应的歌曲推荐理由的输出优先级>与歌曲搜索参数相对应的歌曲推荐理由的输出优先级>与歌曲播放参数相对应的歌曲推荐理由的输出优先级。通常对于第一歌曲的偏好度,其会涉及有歌曲收藏参数、歌曲搜索参数、歌曲播放参数和/或所述车载感知信息,而第二歌曲的偏好度,其则会涉及有车载感知信息。
此外,若所述歌曲推荐理由信息是作为歌单推荐理由信息输出,也就是说,当前是以歌单推荐的方式进行推荐,那么对于所述歌单推荐理由信息,其优选先从歌单中选取偏好度最高的歌曲,然后根据选取的歌曲的偏好度按照上述歌曲推荐理由信息输出的规则来进行输出。
如图2所示,本发明实施例还提供了一种歌曲推荐方法,其优选包括的步骤如下所示。
S201、构建歌曲数据库和/或歌单数据库。
具体地,对于所述构建的歌曲数据库和/或歌单数据库,其主要用于存储歌曲和/或歌单的播放量、收藏量、发布时间、更新时间、标签等属性信息,而这些属性信息可为歌曲和/或歌单的推荐提供数据。
S202、获取第一歌曲的用户行为参数。在本实施例中,所述用户行为参数包括歌曲收藏参数、歌曲搜索参数和/或歌曲播放参数。
S203、根据所述用户行为参数,计算出第一歌曲的偏好度。
在本实施例中,所述歌曲收藏参数包括歌曲收藏的距今时长,其中,所述歌曲收藏的距今时长与所述第一歌曲的偏好度呈反比例关系;所述歌曲搜索参数包括歌曲搜索的距今时长,其中,所述歌曲搜索的距今时长与所述第一歌曲的偏好度呈反比例关系;所述歌曲播放参数包括歌曲播放时长和/或歌曲播放的距今时长,其中,所述歌曲播放时长与所述第一歌曲的偏好度呈正比例关系,所述歌曲播放的距今时长与所述第一歌曲的偏好度呈反比例关系。
而为了能够进一步精准地基于所述用户行为参数来计算出所述第一歌曲的偏好度,在本实施例中优选采用以下第一公式来进行计算:
上式中,X′a表示为第a首第一歌曲的偏好度;BTj1表示为第a首第一歌曲在第j1次播放的时长,也就是说,第a首第一歌曲在第j1次播放记录中所记录的播放时长,其以分钟为单位,可见,BTj1属于歌曲播放时长这一参数,而j1=1、2、3、……、B,B表示为第a首第一歌曲的播放记录总个数;BDj1表示为第a首第一歌曲在第j1次播放的时间点到当前时间点之间的时长,其以天数为单位,可见,BDj1属于歌曲播放的距今时长这一参数;R表示为用户是否收藏过此歌曲(第a首第一歌),若有则为1,反之则为0;RP表示为歌曲收藏行为的权重,在本实施例中,RP取值为20分钟,这样则可理解为在相同的时间衰减下,收藏行为相当于播放时长BTj120分钟;RD表示为用户的歌曲收藏行为发生的时间距今时长,即歌曲收藏的距今时长,其以天数为单位,进一步地,若第a首第一歌曲的收藏行为仅存有1条歌曲收藏记录,那么则以该收藏记录的发生时间的距今时长来作为RD的数值,若第a首第一歌曲的收藏行为存有至少2条歌曲收藏记录,那么则应以最近发生的歌曲收藏记录的发生时间的距今时长来作为RD的数值;S表示为用户是否搜索过此歌曲(第a首第一歌),若有则为1,反之则为0;SP表示为歌曲搜索行为的权重,在本实施例中,SP取值为10分钟,这样则可理解为在相同的时间衰减下,搜索行为相当于播放时长BTj110分钟;SDj2表示为用户在对第a首第一歌曲进行第j2次搜索行为发生的时间距今时长,即SDj2属于歌曲搜索的距今时长,其中j2=1、2、3、……、S1,S1表示为第a首第一歌曲的搜索总次数;T1和T2均表示为时间衰减系数,它们可以相同或不相同,而在本实施例中,它们是相同的且均取值为1/3,这样则可理解为用户行为发生当天权重不衰减,用户行为发生第8天权重衰减为原来的1/2,第27天权重衰减为原来的1/3,第81天权重衰减为原来的1/4。
又或者,对于所述第一歌曲的偏好度,其可优选采用以下第二公式来进行计算:
对于第二公式中的各符号,其意思与上述第一公式中的符号所表达的意思相同。
S204、根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度。
具体地,在本实施例中,所述步骤S204包括:
S2041、将不同用户对不同第一歌曲的偏好度置入歌曲偏好度矩阵中,其中,所述歌曲偏好度矩阵的行数表示用户数,所述歌曲偏好度矩阵的列数表示歌曲数;
S2042、对所述歌曲偏好度矩阵进行矩阵分解后,得到不同用户对不同歌曲特性的喜爱程度矩阵以及不同歌曲特性对不同歌曲的权重矩阵,其中,所述不同歌曲特性对不同歌曲的权重矩阵中包含有不同歌曲特性对不同第二歌曲的权重;
S2043、将所述喜爱程度矩阵与所述权重矩阵相乘后,得到歌曲评分矩阵;
S2044、从所述歌曲评分矩阵中获取得到所述第二歌曲的偏好度。
S205、将歌单所包含的若干个第一歌曲的偏好度和/或歌单所包含的若干个第二歌曲的偏好度进行求和处理后,得出所述歌单的推荐度。
具体地在本实施例中,所述歌单的推荐优选采用以下第三计算公式来计算::
或者,采用以下第四计算公式来计算:
式中,Yj3表示为第j3个歌单的推荐度;Xj4表示为第j3个歌单中第j4首歌曲的偏好度,其中,若第j4首歌曲为第一歌曲,那么则采用步骤S203所计算好的偏好度,若第j4首歌曲为第二歌曲,那么则采用步骤S2044中所述歌曲评分矩阵中获取相应的偏好度,j4=1、2、3、……、c,c表示为第j3个歌单中所包含的歌曲总数;Lj3表示为第j3个歌单的试听量,即歌单热度;E表示为车载感知因子;Gj3表示为兴趣标签命中次数;Tj3表示为第j3个歌单更新的距今时长,即其更新的时间点到当前时间点的时长;T3表示为时间衰减系数,其可与T1或T2相同或不相同,而在本实施例中,T3与T1相同。
基于上述公式可得到,在根据第一歌曲的偏好度和/或第二歌曲的偏好度求出歌单的推荐度后,会根据所述歌单热度、所述歌单更新的距今时长和/或所述兴趣标签命中次数这些参数的数值来对歌单的推荐度进行调整,其中,所述歌单热度与所述歌单的推荐度呈正比例关系,所述歌单更新的距今时长与所述歌单的推荐度呈反比例关系,所述兴趣标签命中次数与所述歌单的推荐度呈正比例关系,以令推荐的歌曲不仅更符合用户的口味,而且还能推荐更新更有热度的歌曲给用户,提高用户音乐收听的体验感。
而对于上述公式中的车载感知因子E,其也是用于通过车载感知获取的实时车载感知信息(温度、特殊天气和/或车速等),从而对歌单的推荐度进行调整,而具体的调整方式包括有:1、当车载传感器检测汽车内和/或外的温度参数高于预设温度阈值时,歌单的标签中有“燃”、“热”、“火”等标签的歌单的推荐度会有额外车载感知因子E加成,即此时E为非0的正数;2、当车速在预设时间段内持续低于预设车速阈值时,则表示车辆持续低速行驶,歌单的标签中有“轻音乐”、“安静”等标签的歌单的推荐度会有额外车载感知因子E加成,即此时E为非0的正数。也就是说,在根据第一歌曲的偏好度和/或第二歌曲的偏好度求出歌单的推荐度后,会通过获取车载感知信息,然后获取与所述车载感知信息匹配的歌单标签,当判断出所述歌单具有所述歌单标签,则利用E来增大所述歌单的推荐度,不仅能够使推荐的歌单在符合用户的口味的基础上,还能通过推荐的歌曲来提示用户当前的车载环境,这尤其适用于车载场景中。
由上述可得,本发明实施例的偏好度计算考虑了用户的歌曲播放、收藏、搜索行为、用户兴趣因子(即歌曲特性),而歌单的推荐度计算更还考虑了歌单热度、更新时间、车载因子等影响因素,并且还采用的时间因子T来对行为进行有效度衰减,并且不同行为的时间衰减度可不一样,还有还兼顾考虑了基于行为的推荐与基于兴趣因子的推荐之间的差异,而本发明实施例的推荐输出结果则是偏向于优先取基于行为的推荐结果。此外,本发明实施例的偏好度算法可支持行为叠加,当行为叠加时,歌曲的偏好度和/或歌单的推荐度会加强,例如一个歌单既命中播放行为、又命中兴趣标签时,推荐度将加速放大;而且还歌单的热度和更新时间,在同等行为偏好下,越热的歌单推荐度越高,越新的歌单推荐度越高。
S206、按照所述歌曲收藏参数对应的优先级、所述歌曲搜索参数对应的优先级、所述歌曲播放参数对应的优先级和所述车载感知信息对应的优先级,输出与所述歌曲收藏参数、所述歌曲搜索参数、所述歌曲播放参数和/或所述车载感知信息相对应的歌曲推荐理由信息。
具体地,对于任一歌单的歌曲推荐理由信息,其是通过对该歌单中偏好度最高的歌曲所涉及的歌曲收藏参数、歌曲搜索参数、歌曲播放参数,以及当前获取得到的车载感知信息按照推荐配置规则来进行相应的输出的,其中,所述推荐配置规则包括有:
第1优先级:当歌单中偏好度最高的歌曲的偏好度计算或者歌单的推荐度计算中存有E且其为非0正数,那么此时该歌单的歌曲推荐理由信息为:根据当前的车载感知信息而为您推荐;
第2优先级:当歌单中偏好度最高的歌曲的偏好度计算中存有歌曲收藏参数,那么此时该歌单的歌曲推荐理由信息为:根据您收藏的单曲《X》而推荐;
第3优先级:当歌单中偏好度最高的歌曲的偏好度计算中存有歌曲搜索参数,那么此时该歌单的歌曲推荐理由信息为:根据您搜索的单曲《X》而推荐;
第4优先级:当歌单中偏好度最高的歌曲的偏好度计算中存有歌曲播放参数,那么此时该歌单的歌曲推荐理由信息为:根据您听过的单曲《X》而推荐;
第5优先级:其它,即当歌单中偏好度最高的歌曲的偏好度计算中不存有歌曲收藏参数、歌曲搜索参数、歌曲播放参数和车载感知信息,那么此时该歌单的歌曲推荐理由信息为:根据您的喜好推荐。其中,上述5个优先级从大到小排列为:第1优先级、第2优先级、第3优先级、第4优先级、第5优先级。
S207、根据歌单的推荐度,输出歌曲推荐结果。
具体地,在推荐的若干个歌单中,计算出每一个歌单的推荐度,然后按照歌单推荐度的数值,从大到小对若干个歌单进行排序,然后对排序的若干个歌单选取若干个符合推荐规则的歌单后,将选取出的歌单输出,以实现歌曲推荐,例如,若需要一次推荐20个歌单,那么则按照歌单推荐度的数值,从大到小对若干个歌单进行排序,然后对排序的若干个歌单选取20个歌单后输出。其中,而对于所述推荐规则,其包括有:
规则1:从高到低,优先按推荐理由为第1优先级、第2优先级、第3优先级、第4优先级的歌单进行选取。若选取出的歌单个数不足20个,即选取出的歌曲单数不符合所需个数,则从推荐理由为第5优先级的歌单中,按照歌单推荐度从大到小进行选取,以令最终选取出的歌单个数为20个。
规则2:在同一批(20个)选取出的歌单结果中,不能所有歌单的推荐理由不能完全相同,不过第5优先级的理由除外。
规则3:在同一批(20个)选取出的歌单结果中,歌单不能重复出现。
规则4:近1个月已曝光过的推荐歌单不能再次推荐;而近1个月未曝光过的推荐歌单,则可以再次推荐。而对于此规则4,若其是针对歌曲推荐的,那么则是:按照歌曲的偏好度,从大到小对歌曲进行排序,其中,所述歌曲包含第二歌曲和第一歌曲,而在此实施例中,所述的第一歌曲需要其歌曲播放、搜索和/或收藏行为的产生时间已距今超过预设时间段(如1个月),否则,该第一歌曲则不在歌曲推荐的选取范围内。
由上述可见,本发明实施例相较于传统的协同过滤、纯粹的规则堆叠推荐度打分机制排序等,能够大大提高了最终输出的推荐结果与用户喜爱的歌曲之间的契合度,极大降低了算法误差(RMSE);同时无需建立歌曲或歌单之间的相似度关系矩阵,大大提高了运算效率。而且,不同于其他音乐客户端的用户交互场景,用户的体验场景在车载端,由于其使用场景的特殊性(用户不方便频繁的与音乐客户端交互,但驾驶时对听歌的需求又较高),因此,本发明实施例所实现的推荐方案特别适合应用于车载场景中,尤其是,本发明实施例的偏好度和/或推荐度的计算还增加有车载感知信息这一影响因素,因此令歌曲推荐结果非常适用于车载场景。
如图3所示,本发明实施例还提供了一种歌曲推荐系统,包括:
第一获取单元,用于获取第一歌曲的属性参数;所述属性参数包括歌曲收藏参数、歌曲搜索参数、歌曲播放参数中至少一种;
第一计算单元,用于根据所述属性参数,计算出第一歌曲的偏好度;
第二计算单元,用于根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度;
推荐单元,用于根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。
可见,本发明实施例利用第一歌曲的歌曲收藏行为参数、歌曲搜索行为参数和/或歌曲播放行为参数来计算得出第一歌曲的偏好度,然后再利用第一歌曲的偏好度来计算出用户对歌曲特性的喜爱程度值,根据用户对歌曲特性的喜爱程度值以及歌曲特性对第二歌曲的权重来计算出第二歌曲的偏好度,从而根据第一歌曲和/或第二歌曲的偏好度来实现歌曲推荐,可见,由于本发明实施例结合用户对歌曲的操作行为(包括有歌曲收藏行为、搜索行为、播放行为)来实现第一歌曲的偏好度计算,并且利用第一歌曲的偏好度来计算出用户对歌曲特性的喜爱程度值后,再计算出第二歌曲的偏好度,因此,相较于传统的协同过滤、纯粹的规则堆叠推荐,本发明实施例的方案所推荐的结果与用户喜爱的歌曲的贴合度更高,也就是说,推荐结果的准确度更高,同时在实现歌曲推荐的计算过程中无需构建歌曲或歌单之间的相似度关系矩阵,这样在提供歌曲推荐的契合准确度的基础上,还能极大地提高处理效率。
进一步作为本系统的优选实施例,所述第二计算单元包括:
第一处理模块,用于将不同用户对不同第一歌曲的偏好度置入歌曲偏好度矩阵中,其中,所述歌曲偏好度矩阵的行数表示用户数,所述歌曲偏好度矩阵的列数表示歌曲数;
第二处理模块,用于对所述歌曲偏好度矩阵进行矩阵分解后,得到不同用户对不同歌曲特性的喜爱程度矩阵以及不同歌曲特性对不同歌曲的权重矩阵,其中,所述不同歌曲特性对不同歌曲的权重矩阵中包含有不同歌曲特性对不同第二歌曲的权重;
第三处理模块,用于将所述喜爱程度矩阵与所述权重矩阵相乘后,得到歌曲评分矩阵;
第四处理模块,用于从所述歌曲评分矩阵中获取得到所述第二歌曲的偏好度。
进一步作为本系统的优选实施例,所述推荐单元包括:
第一获取模块,用于获取车载感知信息;
第二获取模块,用于获取与所述车载感知信息匹配的歌曲标签;
第一调整模块,用于当判断出所述第一歌曲具有所述歌曲标签,则增大所述第一歌曲的偏好度,和/或当判断出所述第二歌曲具有所述歌曲标签,则增大所述第二歌曲的偏好度;
第一推荐模块,用于根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。
或者,所述推荐单元包括:
第一计算模块,用于将歌单所包含的若干个第一歌曲的偏好度和/或歌单所包含的若干个第二歌曲的偏好度进行求和处理后,得出所述歌单的推荐度;
第二推荐模块,用于根据歌单的推荐度,输出歌曲推荐结果。
进一步作为本系统的优选实施例,所述第二推荐模块包括:
第一获取子模块,用于获取车载感知信息;
第二获取子模块,用于获取与所述车载感知信息匹配的歌单标签;
第一调整子模块,用于当判断出所述歌单具有所述歌单标签,则增大所述歌单的推荐度;
第一推荐子模块,用于根据所述歌单的推荐度,输出歌曲推荐结果。
进一步作为本系统的优选实施例,还包括:
第二获取单元,用于获取歌单热度、歌单更新的距今时长和/或兴趣标签命中次数;
第一调整单元,用于根据所述歌单热度、所述歌单更新的距今时长和/或所述兴趣标签命中次数来调整所述歌单的推荐度;
其中,所述歌单热度与所述歌单的推荐度呈正比例关系,所述歌单更新的距今时长与所述歌单的推荐度呈反比例关系,所述兴趣标签命中次数与所述歌单的推荐度呈正比例关系。
进一步作为本系统的优选实施例,所述歌曲收藏参数包括歌曲收藏的距今时长,其中,所述歌曲收藏的距今时长与所述第一歌曲的偏好度呈反比例关系;
或,所述歌曲搜索参数包括歌曲搜索的距今时长,其中,所述歌曲搜索的距今时长与所述第一歌曲的偏好度呈反比例关系;
或,所述歌曲播放参数包括歌曲播放时长和/或歌曲播放的距今时长,其中,所述歌曲播放时长与所述第一歌曲的偏好度呈正比例关系,所述歌曲播放的距今时长与所述第一歌曲的偏好度呈反比例关系。
进一步作为本系统的优选实施例,还包括:
理由输出单元,用于按照所述歌曲收藏参数对应的优先级、所述歌曲搜索参数对应的优先级、所述歌曲播放参数对应的优先级和所述车载感知信息对应的优先级,输出与所述歌曲收藏参数、所述歌曲搜索参数、所述歌曲播放参数和/或所述车载感知信息相对应的歌曲推荐理由信息。
上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
如图4所示,本发明实施例还提供了一种终端,该装置包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现所述一种歌曲推荐方法。其中,所述终端可以为由软件和/或硬件构成的客户端和/或服务器。
可见,上述方法实施例中的内容均适用于本终端实施例中,本终端实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。此外,本发明实施例还提供了一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行所述一种歌曲推荐方法。同样地,上述方法实施例中的内容均适用于本存储介质实施例中,本存储介质实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (11)
1.一种歌曲推荐方法,其特征在于,包括以下步骤:
获取第一歌曲的属性参数;所述属性参数包括歌曲收藏参数、歌曲搜索参数、歌曲播放参数中至少一种;
根据所述属性参数,计算出第一歌曲的偏好度;
根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度;
根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。
2.根据权利要求1所述一种歌曲推荐方法,其特征在于,所述根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度这一步骤,其包括:
将不同用户对不同第一歌曲的偏好度置入歌曲偏好度矩阵中,其中,所述歌曲偏好度矩阵的行数表示用户数,所述歌曲偏好度矩阵的列数表示歌曲数;
对所述歌曲偏好度矩阵进行矩阵分解后,得到不同用户对不同歌曲特性的喜爱程度矩阵以及不同歌曲特性对不同歌曲的权重矩阵,其中,所述不同歌曲特性对不同歌曲的权重矩阵中包含有不同歌曲特性对不同第二歌曲的权重;
将所述喜爱程度矩阵与所述权重矩阵相乘后,得到歌曲评分矩阵;
从所述歌曲评分矩阵中获取得到所述第二歌曲的偏好度。
3.根据权利要求1所述一种歌曲推荐方法,其特征在于,所述根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果这一步骤,其包括:
获取车载感知信息;
获取与所述车载感知信息匹配的歌曲标签;
当判断出所述第一歌曲具有所述歌曲标签,则增大所述第一歌曲的偏好度,和/或当判断出所述第二歌曲具有所述歌曲标签,则增大所述第二歌曲的偏好度;
根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。
4.根据权利要求1所述一种歌曲推荐方法,其特征在于,所述根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果这一步骤,其包括:
将歌单所包含的若干个第一歌曲的偏好度和/或歌单所包含的若干个第二歌曲的偏好度进行求和处理后,得出所述歌单的推荐度;
根据歌单的推荐度,输出歌曲推荐结果。
5.根据权利要求4所述一种歌曲推荐方法,其特征在于,所述根据歌单的推荐度,输出歌曲推荐结果这一步骤,其包括:
获取车载感知信息;
获取与所述车载感知信息匹配的歌单标签;
当判断出所述歌单具有所述歌单标签,则增大所述歌单的推荐度;
根据所述歌单的推荐度,输出歌曲推荐结果。
6.根据权利要求4所述一种歌曲推荐方法,其特征在于,还包括以下步骤:
获取歌单热度、歌单更新的距今时长和/或兴趣标签命中次数;
根据所述歌单热度、所述歌单更新的距今时长和/或所述兴趣标签命中次数来调整所述歌单的推荐度;
其中,所述歌单热度与所述歌单的推荐度呈正比例关系,所述歌单更新的距今时长与所述歌单的推荐度呈反比例关系,所述兴趣标签命中次数与所述歌单的推荐度呈正比例关系。
7.根据权利要求1-6任一项所述一种歌曲推荐方法,其特征在于,所述歌曲收藏参数包括歌曲收藏的距今时长,其中,所述歌曲收藏的距今时长与所述第一歌曲的偏好度呈反比例关系;
或,所述歌曲搜索参数包括歌曲搜索的距今时长,其中,所述歌曲搜索的距今时长与所述第一歌曲的偏好度呈反比例关系;
或,所述歌曲播放参数包括歌曲播放时长和/或歌曲播放的距今时长,其中,所述歌曲播放时长与所述第一歌曲的偏好度呈正比例关系,所述歌曲播放的距今时长与所述第一歌曲的偏好度呈反比例关系。
8.根据权利要求5所述一种歌曲推荐方法,其特征在于,还包括以下步骤:
按照所述歌曲收藏参数对应的优先级、所述歌曲搜索参数对应的优先级、所述歌曲播放参数对应的优先级和所述车载感知信息对应的优先级,输出与所述歌曲收藏参数、所述歌曲搜索参数、所述歌曲播放参数和/或所述车载感知信息相对应的歌曲推荐理由信息。
9.一种歌曲推荐系统,其特征在于,包括:
第一获取单元,用于获取第一歌曲的属性参数;所述属性参数包括歌曲收藏参数、歌曲搜索参数、歌曲播放参数中至少一种;
第一计算单元,用于根据所述属性参数,计算出第一歌曲的偏好度;
第二计算单元,用于根据所述第一歌曲的偏好度,计算出用户对不同歌曲特性的喜爱程度值,根据所述用户对不同歌曲特性的喜爱程度值以及不同歌曲特性对第二歌曲的权重,计算出第二歌曲的偏好度;
推荐单元,用于根据所述第一歌曲的偏好度和/或所述第二歌曲的偏好度,输出歌曲推荐结果。
10.一种终端,其特征在于:该装置包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-8任一项所述一种歌曲推荐方法。
11.一种存储介质,其中存储有处理器可执行的指令,其特征在于,所述处理器可执行的指令在由处理器执行时用于执行如权利要求1-8任一项所述一种歌曲推荐方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910068899.3A CN109885719A (zh) | 2019-01-24 | 2019-01-24 | 一种歌曲推荐方法、系统、终端及存储介质 |
PCT/CN2019/093464 WO2020151189A1 (zh) | 2019-01-24 | 2019-06-28 | 一种歌曲推荐方法、系统、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910068899.3A CN109885719A (zh) | 2019-01-24 | 2019-01-24 | 一种歌曲推荐方法、系统、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109885719A true CN109885719A (zh) | 2019-06-14 |
Family
ID=66926784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910068899.3A Pending CN109885719A (zh) | 2019-01-24 | 2019-01-24 | 一种歌曲推荐方法、系统、终端及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109885719A (zh) |
WO (1) | WO2020151189A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020151189A1 (zh) * | 2019-01-24 | 2020-07-30 | 广州小鹏汽车科技有限公司 | 一种歌曲推荐方法、系统、终端及存储介质 |
CN111626615A (zh) * | 2020-05-27 | 2020-09-04 | 腾讯音乐娱乐科技(深圳)有限公司 | 确定歌单评分的方法、装置及计算机存储介质 |
CN112201234A (zh) * | 2020-09-04 | 2021-01-08 | 广州大学 | 基于多资源的语音点播歌曲方法及装置 |
CN112417204A (zh) * | 2020-12-16 | 2021-02-26 | 吉林大学 | 一种基于实时路况的音乐推荐系统 |
CN113127674A (zh) * | 2019-12-31 | 2021-07-16 | 中移(成都)信息通信科技有限公司 | 歌单推荐方法、装置、电子设备及计算机存储介质 |
CN114881689A (zh) * | 2022-04-26 | 2022-08-09 | 驰众信息技术(上海)有限公司 | 基于矩阵分解的楼宇推荐方法和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126591A (zh) * | 2016-06-16 | 2016-11-16 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 音乐数据推荐方法与系统 |
CN107800793A (zh) * | 2017-10-27 | 2018-03-13 | 江苏大学 | 车联网环境下行车音乐主动推送系统 |
CN107885745A (zh) * | 2016-09-29 | 2018-04-06 | 亿览在线网络技术(北京)有限公司 | 一种歌曲推荐方法及装置 |
CN108304441A (zh) * | 2017-11-14 | 2018-07-20 | 腾讯科技(深圳)有限公司 | 网络资源推荐方法、装置、电子设备、服务器及存储介质 |
US10165070B2 (en) * | 2014-10-03 | 2018-12-25 | Drive Time Metrics, Inc. | Cross channel in-vehicle media consumption measurement and analysis |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7412202B2 (en) * | 2001-04-03 | 2008-08-12 | Koninklijke Philips Electronics N.V. | Method and apparatus for generating recommendations based on user preferences and environmental characteristics |
CN105868330A (zh) * | 2016-03-28 | 2016-08-17 | 乐视控股(北京)有限公司 | 一种车联网的音乐推荐方法及装置 |
CN107967280B (zh) * | 2016-10-19 | 2020-06-12 | 北京酷我科技有限公司 | 一种标签推荐歌曲的方法及系统 |
CN108540815B (zh) * | 2017-03-02 | 2022-03-08 | 腾讯科技(深圳)有限公司 | 多媒体内容播放方法、装置及系统 |
CN108629047B (zh) * | 2018-05-14 | 2023-04-14 | 平安科技(深圳)有限公司 | 一种歌曲清单生成方法及终端设备 |
CN109885719A (zh) * | 2019-01-24 | 2019-06-14 | 广州小鹏汽车科技有限公司 | 一种歌曲推荐方法、系统、终端及存储介质 |
-
2019
- 2019-01-24 CN CN201910068899.3A patent/CN109885719A/zh active Pending
- 2019-06-28 WO PCT/CN2019/093464 patent/WO2020151189A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10165070B2 (en) * | 2014-10-03 | 2018-12-25 | Drive Time Metrics, Inc. | Cross channel in-vehicle media consumption measurement and analysis |
CN106126591A (zh) * | 2016-06-16 | 2016-11-16 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 音乐数据推荐方法与系统 |
CN107885745A (zh) * | 2016-09-29 | 2018-04-06 | 亿览在线网络技术(北京)有限公司 | 一种歌曲推荐方法及装置 |
CN107800793A (zh) * | 2017-10-27 | 2018-03-13 | 江苏大学 | 车联网环境下行车音乐主动推送系统 |
CN108304441A (zh) * | 2017-11-14 | 2018-07-20 | 腾讯科技(深圳)有限公司 | 网络资源推荐方法、装置、电子设备、服务器及存储介质 |
Non-Patent Citations (1)
Title |
---|
深度学习思考者: "推荐算法(一)——音乐歌单智能推荐", 《HTTPS://CLOUD.TENCENT.COM/DEVELOPER/ARTICLE/1011636》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020151189A1 (zh) * | 2019-01-24 | 2020-07-30 | 广州小鹏汽车科技有限公司 | 一种歌曲推荐方法、系统、终端及存储介质 |
CN113127674A (zh) * | 2019-12-31 | 2021-07-16 | 中移(成都)信息通信科技有限公司 | 歌单推荐方法、装置、电子设备及计算机存储介质 |
CN113127674B (zh) * | 2019-12-31 | 2023-07-21 | 中移(成都)信息通信科技有限公司 | 歌单推荐方法、装置、电子设备及计算机存储介质 |
CN111626615A (zh) * | 2020-05-27 | 2020-09-04 | 腾讯音乐娱乐科技(深圳)有限公司 | 确定歌单评分的方法、装置及计算机存储介质 |
CN112201234A (zh) * | 2020-09-04 | 2021-01-08 | 广州大学 | 基于多资源的语音点播歌曲方法及装置 |
CN112417204A (zh) * | 2020-12-16 | 2021-02-26 | 吉林大学 | 一种基于实时路况的音乐推荐系统 |
CN112417204B (zh) * | 2020-12-16 | 2024-02-13 | 吉林大学 | 一种基于实时路况的音乐推荐系统 |
CN114881689A (zh) * | 2022-04-26 | 2022-08-09 | 驰众信息技术(上海)有限公司 | 基于矩阵分解的楼宇推荐方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2020151189A1 (zh) | 2020-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109885719A (zh) | 一种歌曲推荐方法、系统、终端及存储介质 | |
US10405016B2 (en) | Recommending media items based on take rate signals | |
CN109408665A (zh) | 一种信息推荐方法及装置、存储介质 | |
CN102654860B (zh) | 一种个性化音乐推荐方法及系统 | |
CN107832437B (zh) | 音/视频推送方法、装置、设备及存储介质 | |
US20010013009A1 (en) | System and method for computer-based marketing | |
US20160147767A1 (en) | Dynamic feedback in a recommendation system | |
CN106803190A (zh) | 一种广告个性化推送系统及方法 | |
US20110302158A1 (en) | Interest based row selection | |
CN105975472A (zh) | 一种推荐方法和装置 | |
CN107885745A (zh) | 一种歌曲推荐方法及装置 | |
CN107220365A (zh) | 基于协同过滤与关联规则并行处理的精准推荐系统及方法 | |
CN107526810B (zh) | 建立点击率预估模型的方法及装置、展示方法及装置 | |
CN106372101B (zh) | 一种视频推荐方法和装置 | |
EP3972709A1 (en) | Content-item recommendations | |
CN103455538B (zh) | 信息处理装置、信息处理方法和程序 | |
CN107657034A (zh) | 一种社交信息增强的事件社交网络推荐算法 | |
CN106570718A (zh) | 信息的投放方法及投放系统 | |
CA3150500A1 (en) | UPLOADING DEVICE PAIRING METHOD AND DEVICE | |
CN106844637A (zh) | 基于正交与聚类修剪改进多目标遗传算法的电影推荐方法 | |
CN107967280A (zh) | 一种标签推荐歌曲的方法及系统 | |
CN108280124A (zh) | 产品分类方法及装置,排行榜生成方法及装置,电子设备 | |
CN108133058A (zh) | 一种视频检索方法 | |
CN107205042A (zh) | 一种信息精准推送方法及系统 | |
US20160086086A1 (en) | Multi-media content-recommender system that learns how to elicit user preferences |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190614 |
|
RJ01 | Rejection of invention patent application after publication |