CN106951527B - 一种歌曲推荐方法及装置 - Google Patents

一种歌曲推荐方法及装置 Download PDF

Info

Publication number
CN106951527B
CN106951527B CN201710168927.XA CN201710168927A CN106951527B CN 106951527 B CN106951527 B CN 106951527B CN 201710168927 A CN201710168927 A CN 201710168927A CN 106951527 B CN106951527 B CN 106951527B
Authority
CN
China
Prior art keywords
song
songs
user
recommended
determining
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.)
Active
Application number
CN201710168927.XA
Other languages
English (en)
Other versions
CN106951527A (zh
Inventor
石川
胡斌斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201710168927.XA priority Critical patent/CN106951527B/zh
Publication of CN106951527A publication Critical patent/CN106951527A/zh
Application granted granted Critical
Publication of CN106951527B publication Critical patent/CN106951527B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/686Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title or artist information, time, location or usage information, user ratings

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information 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为本发明实施例确定待推荐用户所对应的目标类别歌曲的流程示意图;
图5为本发明实施例从目标类别歌曲中,选取一首歌曲推荐至待推荐用户的流程示意图;
图6为本发明实施例提供的歌曲推荐装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
随着信息技术和互联网的快速发展,人类社会逐渐步入了信息过载的时代,即发现和获取有用的信息变得越来越困难。因此,推荐方法应运而生。推荐方法利用与用户相关的信息去预测用户的兴趣偏好,并做出符合用户心意的推荐,使用户方便的获取对自身有用的信息。
目前,推荐方法已经被广泛应用于各个领域,其中,歌曲推荐是一项热门的推荐。但现有歌曲推荐方法存在一些技术问题,为了解决现有技术问题,本发明实施例提供了一种歌曲推荐方法及装置。
下面首先对本发明实施例所提供的一种歌曲推荐方法进行介绍。
需要说明的是,本发明实施例所提供的一种歌曲推荐方法应用于电子设备。在实际应用中,该电子设备可以为智能手机、平板电脑、笔记本电脑等,这都是合理的。
另外,实现本发明实施例所提供的一种歌曲推荐方法的功能软件可以为独立的用于实现歌曲推荐的客户端软件。
如图1所示,本发明实施例提供的一种歌曲推荐方法,可以包括:
S101:获取多个用户的听歌记录。
每当有用户收听歌曲时,就会产生听歌记录,该听歌记录中记录有每个用户针对歌曲库中的各首歌曲的反馈信息,其中,该反馈信息可以为收听、下载和收藏中的至少一个。
由于听歌记录在一定程度上会反映用户的音乐偏好,例如:收听反映了用户仅仅是收听了这首歌曲,收藏反映了用户对这首歌曲的喜爱,下载表明了用户想要永久保存这首歌曲,喜爱程度由高到底排列为:下载,收藏,收听,因此,为了推荐一首歌曲给待推荐用户,可以通过听歌记录中所包含的待推荐用户针对歌曲库中的各首歌曲的反馈信息,来确定待推荐用户的偏好。
又由于只根据听歌记录中所包含的待推荐用户针对歌曲库中的各首歌曲的反馈信息,来确定待推荐用户的偏好,将导致重复推荐符合待推荐用户的偏好的歌曲,因此,为了增加推荐歌曲的覆盖面,需要获取多个用户的听歌记录,其中,该多个用户包括待推荐用户。
S102:根据听歌记录中的反馈信息对歌曲库中的歌曲进行聚类,得到多类歌曲。
由于歌曲库中的歌曲数量庞大,为了提高歌曲推荐速率,在获取多个用户的听歌记录后,根据听歌记录中的反馈信息对歌曲库中的歌曲进行聚类,得到多类歌曲。
上述根据听歌记录中的反馈信息对歌曲库中的歌曲进行聚类,得到多类歌曲,可以为:根据听歌记录中的反馈信息,确定与待推荐用户相似的第一类用户,并根据第一类用户的反馈信息对歌曲库中的歌曲进行聚类。参考图2,S102可以包括:
S1021:根据听歌记录中的反馈信息,确定与待推荐用户偏好相似的第一类用户。
听歌记录中记录有每个用户针对歌曲库中的各首歌曲的反馈信息,由于本发明实施例需要推荐歌曲给待推荐用户,为了增加推荐歌曲的覆盖面,需要确定与待推荐用户偏好相似的第一类用户。
上述根据听歌记录中的反馈信息,确定与待推荐用户偏好相似的第一类用户,可以为:通过计算相似度的方式确定与待推荐用户偏好相似的第一类用户。参考图3,S1021可以包括:
S10211:根据每个用户针对歌曲库中的各首歌曲的反馈信息,确定每个用户对应的偏好特征向量;
S10212:分别计算待推荐用户的偏好特征向量与第二类用户的偏好特征向量的相似度;
S10213:对第二类用户进行相似度排序,将排位在前面的预设数量个第二类用户确定为与待推荐用户偏好相似的第一类用户。
其中,根据每个用户针对歌曲库中的各首歌曲的反馈信息,确定每个用户对应的偏好特征向量可以为:
针对每个用户,将由该用户对各首歌曲的反馈信息作为元素的矩阵,确定为该用户对应的偏好特征向量。
例如:假设用户H针对歌曲库中存在的三首歌曲A、B和C的反馈信息分别为:下载、收听和收藏,则用户H对应的偏好特征向量为三维向量(下载,收听,收藏)。
在确定了每个用户的偏好特征向量后,可以通过以下公式分别计算待推荐用户的偏好特征向量与第二类用户的偏好特征向量的相似度:
其中,sim(ui)为第二类用户i与待推荐用户su的偏好特征向量的相似度,su为待推荐用户的偏好特征向量,ui为第二类用户i的偏好特征向量,|su|为待推荐用户的偏好特征向量的模,|ui|为第二类用户i的偏好特征向量的模,第二类用户为多个用户中除待推荐用户以外的其它用户。
在计算出待推荐用户与每个第二类用户的偏好特征向量的相似度后,对第二类用户进行相似度排序,由于排位在前面的第二类用户与待推荐用户较为相似,因此,将排位在前面的预设数量个第二类用户确定为与待推荐用户偏好相似的第一类用户,其中,该预设数量个可以为3个或5个等等。
为了方便理解,下面通过一具体例子对根据听歌记录中的反馈信息,确定与待推荐用户偏好相似的第一类用户进行详细说明:
例如:假设共有5个用户,分别为待推荐用户、第二类用户一、第二类用户二、第二类用户三和第二类用户四,假设歌曲库中存在三首歌曲A、B和C,每个用户对歌曲库中的各首歌曲的反馈信息如下表一所示:
表一
Figure BDA0001250573060000082
为了方便查看,假设指定收听为1,下载为2,收藏为3,则将表一简化为表二:
表二
Figure BDA0001250573060000091
根据表二中每个用户针对歌曲库中的各首歌曲的反馈信息,得到三个用户的偏好特征向量如下表三所示:
表三
待推荐用户 (1,2,3)
第二类用户一 (3,2,1)
第二类用户二 (2,1,3)
第二类用户三 (1,2,3)
第二类用户四 (1,3,2)
分别计算待推荐用户的偏好特征向量与第二类用户的偏好特征向量的相似度:
第二类用户一:
Figure BDA0001250573060000092
第二类用户二:
第二类用户三:
Figure BDA0001250573060000094
第二类用户四:
Figure BDA0001250573060000095
对第二类用户进行相似度排序,排序结果为:第二类用户三,第二类用户四,第二类用户一,第二类用户二,假设预设数量为2,则将排位在前面的2个第二类用户:第二类用户三和第二类用户四,确定为与待推荐用户偏好相似的第一类用户。
S1022:根据第一类用户针对歌曲库中的各首歌曲的反馈信息以及各首歌曲的属性信息,确定各首歌曲对应的特征向量。
在确定了与待推荐用户偏好相似的第一类用户后,获取第一类用户针对歌曲库中的各首歌曲的反馈信息以及各首歌曲的属性信息,其中,歌曲的属性信息包括歌曲所属的艺人、歌曲的发行时间、歌曲的热度和歌曲所使用的语言等。
然后通过获取的第一类用户针对歌曲库中的各首歌曲的反馈信息以及各首歌曲的属性信息,确定各首歌曲对应的特征向量,其中,通过第一类用户针对歌曲库中的各首歌曲的反馈信息以及各首歌曲的属性信息,确定各首歌曲对应的特征向量可以为:
针对每首歌曲,根据第一类用户针对该首歌曲的反馈信息,确定第一类用户针对该首歌曲的偏好特征向量,根据该首歌曲的属性信息确定该首歌曲的属性特征向量,将所确定的第一类用户针对该首歌曲的偏好特征向量与该首歌曲的属性特征向量之和确定为该首歌曲对应的特征向量。
其中,针对每首歌曲,根据第一类用户针对该首歌曲的反馈信息,确定第一类用户针对该首歌曲的偏好特征向量,可以为:
针对每首歌曲,将由各个第一类用户针对该首歌曲的反馈信息作为元素的矩阵,确定为第一类用户针对该首歌曲的偏好特征向量。
例如:承接上述例子,第一类用户为第二类用户三和第二类用户四;
针对歌曲A,根据表二,确定第一类用户针对该首歌曲的偏好特征向量为(1,1);
针对歌曲B,根据表二,确定第一类用户针对该首歌曲的偏好特征向量为(2,3);
针对歌曲C,根据表二,确定第一类用户针对该首歌曲的偏好特征向量为(3,2);
假设各个歌曲的属性信息如下表四所示,为方便查看,各个属性信息均采用数字表示:
表四
属性信息 所属的艺人 发行时间 热度 所使用的语言
歌曲A 0 1 2 3
歌曲B 4 5 6 7
歌曲C 8 9 5 4
则歌曲A的属性特征向量为(0,1,2,3),歌曲B的属性特征向量为(4,5,6,7),歌曲C的属性特征向量为(8,9,5,4);
则确定歌曲A的特征向量为(1,1,0,1,2,3),确定歌曲B的特征向量为(2,3,4,5,6,7),确定歌曲C的特征向量为(3,2,8,9,5,4)。
S1023:根据各首歌曲的特征向量对歌曲库中的歌曲进行聚类,得到多类歌曲。
在确定了各首歌曲的特征向量后,根据各首歌曲的特征向量对歌曲库中的歌曲进行聚类,得到多类歌曲,其中,可以使用现有技术中的任何一种聚类算法对歌曲库中的歌曲进行聚类,例如:使用K-meansK均值聚类算法对歌曲库中的歌曲进行聚类,由于通过聚类算法对歌曲库中的歌曲进行聚类的方式为现有技术,在此不再详细介绍。
S103:从聚类获得的多类歌曲中,确定待推荐用户所对应的目标类别歌曲。
在将歌曲库中的歌曲聚类为多类歌曲之后,需要从多类歌曲中,确定待推荐用户所对应的目标类别歌曲。
上述从聚类获得的多类歌曲中,确定待推荐用户所对应的目标类别歌曲,可以为:根据待推荐用户针对各首歌曲的累积回报值,确定推荐每类歌曲的类别概率值,根据类别概率值选取目标类别歌曲。参考图4,S103可以包括:
S1031:确定待推荐用户针对歌曲库中的各首歌曲的累积回报值。
回报就是智能体在环境中每走一步所能获得的即时反馈,可以衡量智能体每走一步的价值,即用户每收听一首歌曲,会通过一列的反馈信息来展示对这首歌曲的反应,该反馈信息即为回报。
针对于各首歌曲,通过以下公式确定待推荐用户针对歌曲库中的各首歌曲的回报值:
Figure BDA0001250573060000121
F={listen,collect,download}
其中,R(f)为用户对某一歌曲的回报函数,f为反馈,F为反馈信息集合,m为反馈信息,wm为反馈信息m的权重,I(f==Fm)为反馈信息m的布尔函数,listen为收听,collect为收藏,download为下载。
由于用户收听歌曲是一个反复的过程,即用户今天收听了歌曲M,明天仍然可以收听歌曲M,因此,针对歌曲库中的各首歌曲,不仅存在即时回报,还存在累积回报,因此,在聚类获得多类歌曲后,通过以下公式确定待推荐用户针对歌曲库中的各首歌曲的累积回报值:
Qn(s,a)=(1-αn)Qn-1(s,a)+αn[R(s,a)+γmaxa′Qn-1(s′,a′)]
Figure BDA0001250573060000122
其中,Qn(s,a)为待推荐用户对某一首歌曲的累积回报函数,s为状态,a为在状态s时所执行的动作,αn为偏好因子,R(s,a)为在状态s执行动作a的即时回报,γ为回报衰减因子,maxa′Qn-1(s′,a′)为在状态s′执行动作a′的累积回报值的最大值,VistCount(s,a)为用户重复在状态s执行动作a的次数,s′为状态s的下一个状态,a′为在状态s′时所执行的动作,n为次数。
详细的,将听歌记录中某一用户最近收听的K首歌曲确定为该用户的状态s,将每一首歌曲确定为一个动作a,则用户收听一首歌曲即为执行动作。
例如:假设K为3,3首歌曲分别为:歌曲O、歌曲P和歌曲Q,则初始状态为(歌曲O、歌曲P和歌曲Q),当用户收听了另一首歌曲R即执行动作时,则状态变为(歌曲P、歌曲Q和歌曲R)。
S1032:针对聚类获得的每类歌曲,将该类歌曲中的每首歌曲的累积回报值之和确定为该类歌曲对应的总累积回报值,并将该类歌曲对应的总累积回报值与第一数值的比值,确定为推荐该类歌曲的类别概率值。
其中,第一数值为每类歌曲对应的总累积回报值之和。
例如:聚类获得2类歌曲:W类和X类,W类歌曲包括J歌曲和K歌曲两首歌曲,X类歌曲包括L歌曲,J歌曲的累积回报值为30、K歌曲的累积回报值为40、L歌曲的累积回报值为50;
则W类歌曲对应的总累积回报值为30+40=70,X类歌曲对应的总累积回报值为50,第一数值为70+50=120;
推荐W类歌曲的类别概率值为:70/120=7/12,推荐X类歌曲的类别概率值为:50/120=5/12。
S1033:基于推荐每类歌曲的类别概率值,通过第一预设选取规则从聚类获得的多类歌曲中选取一类歌曲作为目标类别歌曲。
在确定了推荐每类歌曲的类别概率值后,如果选取类别概率值较高的类别作为目标类别歌曲,则从该目标类别歌曲中选择出的歌曲符合待推荐用户的偏好的准确性较高,同时,也会造成该类歌曲的类别概率值越来越高,使得所推荐的歌曲覆盖面较窄。
因此,为了平衡准确性与覆盖面,本发明实施例中通过第一预设选取规则从聚类获得的多类歌曲中选取一类歌曲作为目标类别歌曲,该第一预设选取规则可以为选取类别概率值最高的类别,也可以为选取类别概率值在预设范围内的类别。
S104:从目标类别歌曲中,选取一首歌曲推荐至待推荐用户。
在确定目标类别歌曲后,即可从目标类别歌曲中,选取一首歌曲推荐至待推荐用户。
上述从目标类别歌曲中,选取一首歌曲推荐至待推荐用户,可以为:根据待推荐用户针对目标类别歌曲中的各首歌曲的反馈信息,确定推荐每首歌曲的歌曲概率值,根据歌曲概率值选取一首歌曲推荐至待推荐用户。参考图5,S104可以包括:
S1041:根据待推荐用户针对目标类别歌曲中的各首歌曲的反馈信息,计算待推荐用户针对目标类别歌曲中的各首歌曲的偏好值。
通过以下公式计算待推荐用户针对目标类别歌曲中的各首歌曲的偏好值:
preference(h)=∑f∈Fcountf*wf
F={listen,collect,download}
其中,preference(h)为歌曲h的偏好值,countf为用户对歌曲h产生反馈f的次数,wf为用户对歌曲h产生反馈f时的偏好权重。
由于用户收听歌曲是一个反复的过程,即用户今天收听了歌曲M,明天仍然可以收听歌曲M,因此,针对歌曲库中的每首歌曲,用户针对该首歌曲每产生一次反馈,即可通过以下公式对该用户对该首歌曲的偏好值进行更新:
preferencen(h)=preferencen-1(h)+wf
其中,preferencen(h)为用户对歌曲h的第n次反馈所得到的偏好值,preferencen-1(h)为用户对歌曲h的第n-1次反馈所得到的偏好值。
S1042:针对目标类别歌曲中的每首歌曲,将该首歌曲的偏好值与第二数值的比值,确定为推荐该首歌曲的歌曲概率值。
其中,第二数值为目标类别歌曲中每首歌曲的偏好值之和。
例如:假设目标类别为W类歌曲,W类歌曲包括J歌曲和K歌曲两首歌曲,J歌曲的偏好值为30和K歌曲的偏好值为50;
则第二数值为30+50=80;
则推荐J歌曲的歌曲概率值为:30/80=3/8,推荐K歌曲的歌曲概率值为:50/80=5/8。
S1043:基于推荐每首歌曲的歌曲概率值,通过第二预设选取规则从目标类别歌曲中选取一首歌曲推荐至待推荐用户。
在确定了推荐每首歌曲的歌曲概率值后,如果选取歌曲概率值最高的一首歌曲推荐至待推荐用户,则符合待推荐用户的偏好的准确性较高,同时,也会造成该首歌曲的歌曲概率值越来越高,最终可能导致重复推荐该首歌曲。
因此,为了平衡准确性与覆盖面,本发明实施例中通过第二预设选取规则从目标类别歌曲中选取一首歌曲推荐至待推荐用户,该第二预设选取规则可以为选取歌曲概率值最高的一首歌,也可以为选取歌曲概率值在预设范围内的一首歌。
本发明实施例中,获取多个用户的听歌记录,根据听歌记录中的反馈信息对歌曲库中的歌曲进行聚类,得到多类歌曲,从多类歌曲中确定待推荐用户所对应的目标类别歌曲,从目标类别歌曲中,选取一首歌曲推荐至待推荐用户,由此,通过聚类的方式,将歌曲库中的歌曲进行分类,从聚类得到的多类歌曲中确定与待推荐用户对应的目标类别歌曲,再从目标类别歌曲中选取一首歌曲推荐至待推荐用户,相比于直接从歌曲库中选取一首歌曲进行推荐,大大减少了计算量,提高了歌曲推荐速率。
相对于上述方法实施例,如图6所示,本发明实施例还提供了一种歌曲推荐装置,所述装置包括:
获取模块201,用于获取多个用户的听歌记录,其中,所述多个用户中包括待推荐用户,所述听歌记录中记录有每个用户针对歌曲库中的各首歌曲的反馈信息,所述反馈信息为收听、下载和收藏中的至少一个;
聚类模块202,用于根据所述听歌记录中的所述反馈信息对所述歌曲库中的歌曲进行聚类,得到多类歌曲;
目标类别歌曲确定模块203,用于从聚类获得的多类歌曲中,确定所述待推荐用户所对应的目标类别歌曲;
选取模块204,用于从所述目标类别歌曲中,选取一首歌曲推荐至所述待推荐用户。
本发明实施例中,获取多个用户的听歌记录,根据听歌记录中的反馈信息对歌曲库中的歌曲进行聚类,得到多类歌曲,从多类歌曲中确定待推荐用户所对应的目标类别歌曲,从目标类别歌曲中,选取一首歌曲推荐至待推荐用户,由此,通过聚类的方式,将歌曲库中的歌曲进行分类,从聚类得到的多类歌曲中确定与待推荐用户对应的目标类别歌曲,再从目标类别歌曲中选取一首歌曲推荐至待推荐用户,相比于直接从歌曲库中选取一首歌曲进行推荐,大大减少了计算量,提高了歌曲推荐速率。
在一种实现方式中,所述聚类模块202,可以包括:
第一类用户确定单元,用于根据所述听歌记录中的所述反馈信息,确定与所述待推荐用户偏好相似的第一类用户;
特征向量确定单元,用于根据所述第一类用户针对歌曲库中的各首歌曲的反馈信息以及各首歌曲的属性信息,确定各首歌曲对应的特征向量;
聚类单元,用于根据各首歌曲的特征向量对歌曲库中的歌曲进行聚类,得到多类歌曲。
在一种实现方式中,所述第一类用户确定单元,可以包括:
偏好特征向量确定子单元,用于根据每个用户针对歌曲库中的各首歌曲的反馈信息,确定每个用户对应的偏好特征向量;
相似度计算子单元,用于分别计算所述待推荐用户的偏好特征向量与第二类用户的偏好特征向量的相似度,其中,所述第二类用户为所述多个用户中除所述待推荐用户以外的其它用户;
第一类用户确定子单元,用于对所述第二类用户进行相似度排序,将排位在前面的预设数量个第二类用户确定为与所述待推荐用户偏好相似的第一类用户。
在一种实现方式中,所述目标类别歌曲确定模块203,可以包括:
累积回报值确定单元,用于确定所述待推荐用户针对歌曲库中的各首歌曲的累积回报值;
类别概率值确定单元,用于针对聚类获得的每类歌曲,将该类歌曲中的每首歌曲的累积回报值之和确定为该类歌曲对应的总累积回报值,并将该类歌曲对应的总累积回报值与第一数值的比值,确定为推荐该类歌曲的类别概率值,其中,所述第一数值为每类歌曲对应的总累积回报值之和;
目标类别歌曲确定单元,用于基于推荐每类歌曲的类别概率值,通过第一预设选取规则从聚类获得的多类歌曲中选取一类歌曲作为目标类别歌曲。
在一种实现方式中,所述选取模块204,可以包括:
偏好值确定单元,用于根据所述待推荐用户针对所述目标类别歌曲中的各首歌曲的反馈信息,计算所述待推荐用户针对所述目标类别歌曲中的各首歌曲的偏好值;
歌曲概率值确定单元,用于针对所述目标类别歌曲中的每首歌曲,将该首歌曲的偏好值与第二数值的比值,确定为推荐该首歌曲的歌曲概率值,其中,所述第二数值为所述目标类别歌曲中每首歌曲的偏好值之和;
选取单元,用于基于推荐每首歌曲的歌曲概率值,通过第二预设选取规则从所述目标类别歌曲中选取一首歌曲推荐至所述待推荐用户。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (8)

1.一种歌曲推荐方法,其特征在于,所述方法包括:
获取多个用户的听歌记录,其中,所述多个用户中包括待推荐用户,所述听歌记录中记录有每个用户针对歌曲库中的各首歌曲的反馈信息,所述反馈信息为收听、下载和收藏中的至少一个;
根据所述听歌记录中的所述反馈信息对所述歌曲库中的歌曲进行聚类,得到多类歌曲;
从聚类获得的多类歌曲中,确定所述待推荐用户所对应的目标类别歌曲;
从所述目标类别歌曲中,选取一首歌曲推荐至所述待推荐用户;
所述根据所述听歌记录中的所述反馈信息对所述歌曲库中的歌曲进行聚类,得到多类歌曲的步骤,包括:
根据所述听歌记录中的所述反馈信息,确定与所述待推荐用户偏好相似的第一类用户;
根据所述第一类用户针对歌曲库中的各首歌曲的反馈信息以及各首歌曲的属性信息,确定各首歌曲对应的特征向量;
根据各首歌曲的特征向量对歌曲库中的歌曲进行聚类,得到多类歌曲。
2.根据权利要求1所述的方法,其特征在于,所述根据所述听歌记录中的所述反馈信息,确定与所述待推荐用户偏好相似的第一类用户的步骤,包括:
根据每个用户针对歌曲库中的各首歌曲的反馈信息,确定每个用户对应的偏好特征向量;
分别计算所述待推荐用户的偏好特征向量与第二类用户的偏好特征向量的相似度,其中,所述第二类用户为所述多个用户中除所述待推荐用户以外的其它用户;
对所述第二类用户进行相似度排序,将排位在前面的预设数量个第二类用户确定为与所述待推荐用户偏好相似的第一类用户。
3.根据权利要求1所述的方法,其特征在于,所述从聚类获得的多类歌曲中,确定所述待推荐用户所对应的目标类别歌曲的步骤,包括:
确定所述待推荐用户针对歌曲库中的各首歌曲的累积回报值;
针对聚类获得的每类歌曲,将该类歌曲中的每首歌曲的累积回报值之和确定为该类歌曲对应的总累积回报值,并将该类歌曲对应的总累积回报值与第一数值的比值,确定为推荐该类歌曲的类别概率值,其中,所述第一数值为每类歌曲对应的总累积回报值之和;
基于推荐每类歌曲的类别概率值,通过第一预设选取规则从聚类获得的多类歌曲中选取一类歌曲作为目标类别歌曲。
4.根据权利要求1所述的方法,其特征在于,所述从所述目标类别歌曲中,选取一首歌曲推荐至所述待推荐用户的步骤,包括:
根据所述待推荐用户针对所述目标类别歌曲中的各首歌曲的反馈信息,计算所述待推荐用户针对所述目标类别歌曲中的各首歌曲的偏好值;
针对所述目标类别歌曲中的每首歌曲,将该首歌曲的偏好值与第二数值的比值,确定为推荐该首歌曲的歌曲概率值,其中,所述第二数值为所述目标类别歌曲中每首歌曲的偏好值之和;
基于推荐每首歌曲的歌曲概率值,通过第二预设选取规则从所述目标类别歌曲中选取一首歌曲推荐至所述待推荐用户。
5.一种歌曲推荐装置,其特征在于,所述装置包括:
获取模块,用于获取多个用户的听歌记录,其中,所述多个用户中包括待推荐用户,所述听歌记录中记录有每个用户针对歌曲库中的各首歌曲的反馈信息,所述反馈信息为收听、下载和收藏中的至少一个;
聚类模块,用于根据所述听歌记录中的所述反馈信息对所述歌曲库中的歌曲进行聚类,得到多类歌曲;
目标类别歌曲确定模块,用于从聚类获得的多类歌曲中,确定所述待推荐用户所对应的目标类别歌曲;
选取模块,用于从所述目标类别歌曲中,选取一首歌曲推荐至所述待推荐用户;
所述聚类模块,包括:
第一类用户确定单元,用于根据所述听歌记录中的所述反馈信息,确定与所述待推荐用户偏好相似的第一类用户;
特征向量确定单元,用于根据所述第一类用户针对歌曲库中的各首歌曲的反馈信息以及各首歌曲的属性信息,确定各首歌曲对应的特征向量;
聚类单元,用于根据各首歌曲的特征向量对歌曲库中的歌曲进行聚类,得到多类歌曲。
6.根据权利要求5所述的装置,其特征在于,所述第一类用户确定单元,包括:
偏好特征向量确定子单元,用于根据每个用户针对歌曲库中的各首歌曲的反馈信息,确定每个用户对应的偏好特征向量;
相似度计算子单元,用于分别计算所述待推荐用户的偏好特征向量与第二类用户的偏好特征向量的相似度,其中,所述第二类用户为所述多个用户中除所述待推荐用户以外的其它用户;
第一类用户确定子单元,用于对所述第二类用户进行相似度排序,将排位在前面的预设数量个第二类用户确定为与所述待推荐用户偏好相似的第一类用户。
7.根据权利要求5所述的装置,其特征在于,所述目标类别歌曲确定模块,包括:
累积回报值确定单元,用于确定所述待推荐用户针对歌曲库中的各首歌曲的累积回报值;
类别概率值确定单元,用于针对聚类获得的每类歌曲,将该类歌曲中的每首歌曲的累积回报值之和确定为该类歌曲对应的总累积回报值,并将该类歌曲对应的总累积回报值与第一数值的比值,确定为推荐该类歌曲的类别概率值,其中,所述第一数值为每类歌曲对应的总累积回报值之和;
目标类别歌曲确定单元,用于基于推荐每类歌曲的类别概率值,通过第一预设选取规则从聚类获得的多类歌曲中选取一类歌曲作为目标类别歌曲。
8.根据权利要求5所述的装置,其特征在于,所述选取模块,包括:
偏好值确定单元,用于根据所述待推荐用户针对所述目标类别歌曲中的各首歌曲的反馈信息,计算所述待推荐用户针对所述目标类别歌曲中的各首歌曲的偏好值;
歌曲概率值确定单元,用于针对所述目标类别歌曲中的每首歌曲,将该首歌曲的偏好值与第二数值的比值,确定为推荐该首歌曲的歌曲概率值,其中,所述第二数值为所述目标类别歌曲中每首歌曲的偏好值之和;
选取单元,用于基于推荐每首歌曲的歌曲概率值,通过第二预设选取规则从所述目标类别歌曲中选取一首歌曲推荐至所述待推荐用户。
CN201710168927.XA 2017-03-21 2017-03-21 一种歌曲推荐方法及装置 Active CN106951527B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710168927.XA CN106951527B (zh) 2017-03-21 2017-03-21 一种歌曲推荐方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710168927.XA CN106951527B (zh) 2017-03-21 2017-03-21 一种歌曲推荐方法及装置

Publications (2)

Publication Number Publication Date
CN106951527A CN106951527A (zh) 2017-07-14
CN106951527B true CN106951527B (zh) 2020-01-17

Family

ID=59473512

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710168927.XA Active CN106951527B (zh) 2017-03-21 2017-03-21 一种歌曲推荐方法及装置

Country Status (1)

Country Link
CN (1) CN106951527B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109388732B (zh) * 2018-10-16 2022-02-25 腾讯音乐娱乐科技(深圳)有限公司 音乐地图的生成和显示方法、装置及存储介质
CN109670113A (zh) * 2018-12-20 2019-04-23 重庆锐云科技有限公司 一种房源推荐方法、装置及服务器
CN109857900B (zh) * 2019-02-14 2024-02-09 腾讯音乐娱乐科技(深圳)有限公司 一种相似歌曲推荐方法以及相关设备
CN111488484B (zh) * 2020-04-16 2023-04-28 北京雷石天地电子技术有限公司 基于类指数分布和tf-idf特征的歌曲推荐方法、介质和装置
CN111767426B (zh) * 2020-06-22 2024-04-26 北京声智科技有限公司 一种歌曲推荐方法及装置
CN114661988A (zh) * 2022-03-17 2022-06-24 平安国际智慧城市科技股份有限公司 基于图像识别的推荐方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080002348A (ko) * 2006-06-30 2008-01-04 (주)엔토시스 음악추천 시스템 및 그 방법
CN102402625A (zh) * 2011-12-28 2012-04-04 深圳市五巨科技有限公司 一种音乐推荐的方法及系统
CN102402534A (zh) * 2010-09-14 2012-04-04 盛乐信息技术(上海)有限公司 阅读文学作品的背景音乐推荐系统及其实现方法
CN102637178A (zh) * 2011-02-14 2012-08-15 北京瑞信在线系统技术有限公司 一种音乐推荐方法、装置及系统
CN104731954A (zh) * 2015-04-01 2015-06-24 天翼爱音乐文化科技有限公司 基于群透视音乐推荐方法与系统
CN105868372A (zh) * 2016-03-31 2016-08-17 广州酷狗计算机科技有限公司 标签分配方法及装置
CN106202205A (zh) * 2016-06-28 2016-12-07 重庆大学 基于内存计算框架和长短周期兴趣迁移及融合模型的音乐推荐方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080002348A (ko) * 2006-06-30 2008-01-04 (주)엔토시스 음악추천 시스템 및 그 방법
CN102402534A (zh) * 2010-09-14 2012-04-04 盛乐信息技术(上海)有限公司 阅读文学作品的背景音乐推荐系统及其实现方法
CN102637178A (zh) * 2011-02-14 2012-08-15 北京瑞信在线系统技术有限公司 一种音乐推荐方法、装置及系统
CN102402625A (zh) * 2011-12-28 2012-04-04 深圳市五巨科技有限公司 一种音乐推荐的方法及系统
CN104731954A (zh) * 2015-04-01 2015-06-24 天翼爱音乐文化科技有限公司 基于群透视音乐推荐方法与系统
CN105868372A (zh) * 2016-03-31 2016-08-17 广州酷狗计算机科技有限公司 标签分配方法及装置
CN106202205A (zh) * 2016-06-28 2016-12-07 重庆大学 基于内存计算框架和长短周期兴趣迁移及融合模型的音乐推荐方法

Also Published As

Publication number Publication date
CN106951527A (zh) 2017-07-14

Similar Documents

Publication Publication Date Title
CN106951527B (zh) 一种歌曲推荐方法及装置
CN109408665B (zh) 一种信息推荐方法及装置、存储介质
CN108121737B (zh) 一种业务对象属性标识的生成方法、装置和系统
CN110162695B (zh) 一种信息推送的方法及设备
TWI636416B (zh) 內容個人化之多相排序方法和系統
JP4524709B2 (ja) 情報処理装置および方法、並びに、プログラム
CN108460082B (zh) 一种推荐方法及装置,电子设备
CN109753601B (zh) 推荐信息点击率确定方法、装置及电子设备
JP5984917B2 (ja) 提案される語を提供するための方法および装置
CN107784010B (zh) 一种用于确定新闻主题的热度信息的方法与设备
CN109903086B (zh) 一种相似人群扩展方法、装置及电子设备
WO2018121700A1 (zh) 基于已安装应用来推荐应用信息的方法、装置、终端设备及存储介质
CN105022840A (zh) 一种新闻信息处理方法、新闻推荐方法和相关装置
CN104504149A (zh) 一种实现应用推荐的方法及装置
CN107729578B (zh) 一种音乐推荐方法及装置
CN110647683B (zh) 一种信息推荐方法、装置
CN111061954B (zh) 搜索结果排序方法、装置及存储介质
CN108665148B (zh) 一种电子资源质量评价方法、装置和存储介质
CN110111167A (zh) 一种确定推荐对象的方法和装置
US20190278819A1 (en) Systems and methods of providing recommendations of content items
US20130346385A1 (en) System and method for a purposeful sharing environment
CN107103028A (zh) 一种信息处理方法及装置
JP2015106347A (ja) レコメンド装置およびレコメンド方法
CN110472016A (zh) 文章推荐方法、装置、电子设备及存储介质
CN106777201B (zh) 搜索结果页上的推荐数据的排序方法及装置

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
GR01 Patent grant
GR01 Patent grant