当前位置: 首页 > 专利查询>浙江大学专利>正文

一种基于收听上下文的音乐推荐方法技术

技术编号:15104540 阅读:103 留言:0更新日期:2017-04-08 15:01
本发明专利技术提供了一种在音乐推荐中结合用户收听上下文提高音乐推荐效果的方法,主要是利用神经语言模型从用户的音乐收听序列中提取音乐的特征向量,再从用户的完整收听序列和最近收听子序列中提取用户的全局兴趣和收听上下文兴趣,最后在推荐的时候综合考虑用户的全局兴趣和当前收听上下文兴趣,从而能够让推荐的音乐符合用户的实时需求和偏好。

【技术实现步骤摘要】

本专利技术涉及数据挖掘与推荐系统领域,主要涉及一种基于收听上下文的音乐推荐方法
技术介绍
随着互联网应用的发展,推荐系统也越来越受到大家的关注,并且在工业界以及学术界都取得了巨大的成功。传统单一维度的推荐系统已经不能满足用户个性化的需求,而上下文相关的推荐系统不仅能够较好的帮助用户解决信息过载的问题,而且能够更加充分的挖掘用户的随时间、环境等上下文而变化的特定需求。然而在基于上下文推荐系统的设计中,对用户上下文(尤其是情感上下文)的提取、建模以及与推荐系统的结合的策略较少且不够成熟,因此已有推荐系统算法没有结合收听上下文信息。但是在很多场景下,用户的收听上下文往往会主导用户的需求,例如用户的全局偏好包括摇滚乐和纯音乐,但是用户在晚上休息的时候,会更喜欢后者。
技术实现思路
针对传统音乐推荐系统的缺点,本专利技术提出了一种在音乐推荐算法中加入用户收听上下文的方法,具体包括如下的内容:一种基于收听上下文的音乐推荐方法,包括以下步骤:S1基于神经语言模型的音乐特征的提取;S2用户收听上下文的提取和建模;S3基于用户收听上下文的音乐推荐。进一步的,步骤S1包括:S10获取用户的完整音乐收听序列,包括音乐ID、播放时间、播放设备;S11根据播放时间和播放设备,对用户的完整音乐收听序列进行分组,得到子序列;S12利用神经语言模型处理所有用户的完整音乐收听序列,得到每首音乐的粗粒度的特征向量,利用神经语言模型处理所有用户的子序列,得到每首音乐的细粒度的特征向量,其中,具有相似收听上下文的音乐具有相似的特征向量。优选的,步骤S12中,根据对效率和准确度的要求指定特征向量的维度,以得到推荐结果更准确的高维度特征向量,或者计算效率更高的低维度特征向量。进一步的,步骤S2包括:S20把用户的完整音乐收听序列中的所有音乐的粗粒度特征向量进行平均,得到用户的全局兴趣向量;S21把用户的最近的音乐收听子序列中的所有音乐的细粒度特征向量进行平均,得到用户的收听上下文兴趣向量。进一步的,步骤S3包括:S30根据用户的全局兴趣向量和完整音乐收听序列计算用户之间的相似度,其计算公式为:sim(u,v)=λ·Σm∈Mu∩Mv1|Mu|×|Mv|+θ·cos(p→gu,p→gv)]]>其中,u表示目标用户,v表示数据库中的另外一个用户;Mu表示用户u所收听的音乐集合,Mv表示用户v所收听的音乐集合;表示用户u的全局兴趣向量,表示用户v的全局兴趣向量;是和的余弦相似度;λ和θ是权重系数;S31计算目标用户u对音乐m的兴趣,计算公式如下:其中,u表示目标用户;Uu,k表示与u最相似的k个用户的集合,Um表示收听过音乐m的用户集合;表示用户u的收听上下文兴趣向量,表示音乐m的细粒度特征向量;是和的余弦相似度;ω和是权重系数;S32利用步骤S31中的计算结果对所有音乐进行排序,把前N个推荐给目标用户u。本专利技术有益的效果是:首次利用神经语言模型(skip-gram)从用户的完整收听序列和子序列中获取音乐的不同粒度的特征,分别表示为粗粒度特征向量和细粒度特征向量,为音乐特征提取困难的问题提供了一种可靠的解决方法;根据用户的完整收听序列和最近收听子序列中的音乐的特征向量获取用户的全局兴趣和收听上下文兴趣,为用户的收听上下文的提取和建模困难的问题提供了一种可行的思路;提出了一种能够综合考虑用户全局兴趣和收听上下文兴趣的推荐方法,能够使得推荐的音乐更符合目标用户当前的偏好,从而减少用户的搜索成本并提高用户的满意度。附图说明图1为本专利技术的基于收听上下文的音乐推荐方法的推荐系统架构示意图;图2为本专利技术的基于收听上下文的音乐推荐方法的用户音乐偏好预测流程示意图。具体实施方式为了进一步理解本专利技术,下面结合实施例对本专利技术优选实施方案进行描述,但是应当理解,这些描述只是为进一步说明本专利技术的特征和优点,而不是对本专利技术权利要求的限制。在本专利技术的一个实施例中,基于收听上下文的音乐推荐方法,包括以下步骤:S1基于神经语言模型的音乐特征的提取;S2用户收听上下文的提取和建模;S3基于用户收听上下文的音乐推荐。具体的,本实施例的推荐方法包括以下步骤:获取用户的完整的音乐收听序列,收听序列中的每条记录包括音乐ID、播放时间、播放设备。根据播放时间和播放设备,对用户的完整收听序列进行分组,得到子序列,播放时间靠近且播放设备相同的记录会分到同一个子序列里面,而播放时间间隔过长或者播放设备不同的记录会分到不同的子序列里面。利用神经语言模型(skip-gram)分别处理所有用户的完整收听序列和子序列,将每首音乐表示为粗粒度特征向量和细粒度特征向量,其中,具有相似收听上下文(在序列中的前面和后面的音乐)的音乐具有相似的特征向量。优选的,此处可根据对效率和准确度的要求指定向量的维度,从而获得合适的特征向量(利用高维度特征向量的推荐结果更准确,而低维度特征向量的计算效率更高)。把用户的完整的音乐收听序列中的所有音乐的粗粒度特征向量进行平均,得到用户的全局兴趣向量;把用户的最近的音乐收听序列中的所有音乐的细粒度特征向量进行平均,得到用户的收听上下文兴趣向量。根据用户的全局兴趣和完整收听序列计算用户之间的相似度,其计算公式为:sim(u,v)=λ·Σm∈Mu∩Mv1|Mu|×|Mv|+θ·cos(p→gu,p→gv)]]>其中,●u是目标用户,而v是数据库中的另外一个用户;●Mu是用户u所收听的音乐集合,而Mv是用户v所收听的音乐条目集合;●是用户u的全局兴趣向量,而是用户v的全局兴趣向量;●是和的余弦相似度;●λ和θ是权重系数,一般均取值为1。计算目标用户u对音乐m的兴趣,计算公式如下:其中,●u是目标用户;●Uu,k是与u最相似的k个用户的集合;●Um是收听过音乐m的用户集合;●是用户u的收听上下文兴趣向量,而是音乐m的细粒度特征向量;●是和的余弦相似度;<本文档来自技高网...

【技术保护点】
一种基于收听上下文的音乐推荐方法,其特征在于,包括以下步骤:S1基于神经语言模型的音乐特征的提取;S2用户收听上下文的提取和建模;S3基于用户收听上下文的音乐推荐。

【技术特征摘要】
1.一种基于收听上下文的音乐推荐方法,其特征在于,包括以下步骤:
S1基于神经语言模型的音乐特征的提取;
S2用户收听上下文的提取和建模;
S3基于用户收听上下文的音乐推荐。
2.根据权利要求1所述的基于收听上下文的音乐推荐方法,其特征在于,
步骤S1包括:
S10获取用户的完整音乐收听序列,序列中每条收听记录包括音乐ID、播
放时间、播放设备;
S11根据播放时间和播放设备,对每个用户的完整音乐收听序列进行分组,
得到一系列子序列,其中,在完整音乐收听序列中的播放时间接近并且播放设
备相同的收听记录会被分到同一个子序列中;
S12利用神经语言模型处理所有用户的完整音乐收听序列,得到每首音乐
的粗粒度的特征向量,利用神经语言模型处理所有用户的子序列,得到每首音
乐的细粒度的特征向量,其中,具有相似收听上下文的音乐具有相似的特征向
量。
3.根据权利要求2所述的基于收听上下文的音乐推荐方法,其特征在于,
步骤S12中,根据对效率和准确度的要求指定特征向量的维度,以得到推荐结
果更准确的高维度特征向量,或者计算效率更高的低维度特征向量。
4.根据权利要求2或3所述的基于收听上下文的音乐推荐方法,其特征在
于,步骤S2包括:
S20把用户的完整音乐收听序列中的所有音乐的粗粒度特征向量进行平均,...

【专利技术属性】
技术研发人员:邓水光王东京周劲松李莹吴健尹建伟吴朝晖
申请(专利权)人:浙江大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1