基于影视信息的音乐推荐方法及装置与流程

文档序号:12550857阅读:236来源:国知局
基于影视信息的音乐推荐方法及装置与流程

本发明涉及大数据推荐技术,尤其涉及一种基于影视信息的音乐推荐方法及装置。



背景技术:

随着通信技术的不断发展,越来越多的用户开始使用终端设备播放音乐。终端设备如何预测用户喜好的音乐,进而,向用户推荐音乐变得越来越重要。

目前,终端设备通过获取用户已收听的音乐的信息,预测与这些已收听的音乐的信息相近的音乐为该用户喜好的音乐,进而,将这些音乐推荐给用户。

但是,上述方式中,由于音乐的播放时长较短,用户可能出于某个偶然的原因收听了某一音乐,该音乐并不代表用户的真实兴趣。因此,终端设备获取的已收听的音乐的信息并不能反映用户的真实兴趣,基于这些已收听的音乐的信息向用户推荐的音乐可能并不是用户希望收听到的音乐。综上所述,现有技术中的音乐推荐方式的精准率较低,用户体验较差。



技术实现要素:

为解决现有技术中存在的问题,本发明提供一种基于影视信息的音乐推荐方法及装置,以提高音乐推荐的精准率,从而,提高用户体验。

第一方面,本发明实施例提供一种基于影视信息的音乐推荐方法,包括:

根据预先获取的音乐的标签建立坐标系;其中,所述坐标系包括至少一个坐标轴、位于所述坐标轴上的标签及所述标签的刻度值;

将候选音乐映射于所述坐标系中,形成音乐类别点;

将用户在预设时间段内观看过的影视信息映射于所述坐标系中,形成影视类别点;

将所述音乐类别点中与所述影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐;

向所述用户推荐所述待推荐的音乐。

如上所示的方法中,所述根据预先获取的音乐的标签建立坐标系,具体为:

将预先获取的标签分为至少一个维度;其中,所述维度的数量与所述坐标系包括的坐标轴的数量相同;

将每个维度中的标签映射于所述维度对应的坐标轴上,并确定标签在所述坐标轴上的刻度值。

如上所示的方法中,所述将每个维度中的标签映射于所述维度对应的坐标轴上,并确定标签的在所述坐标轴上的刻度值,具体为:

根据每两个标签中包括的相同的音乐的数量,确定每两个标签之间的邻相近值;

根据所述每两个标签之间的邻相近值,确定邻相近值最大的两个标签为起始位置;

确定所述邻相近值最大的两个标签中的左侧标签分别与除所述两个标签之外的其他标签的邻相近值中的最大的第一邻相近值,确定所述邻相近值最大的两个标签中的右侧标签分别与所述其他标签的邻相近值中的最大的第二邻相近值;

若所述第一邻相近值大于所述第二邻相近值,则将所述第一邻相近值对应的除所述左侧标签之外的另一个标签设置于所述左侧标签的左边,并将所述标签作为新的左侧标签;若所述第一邻相近值小于所述第二邻相近值,则将所述第二邻相近值对应的除所述右侧标签之外的另一个标签设置于所述右侧标签的右边,并将所述标签作为新的右侧标签;

确定所述左侧标签分别与除已排序标签之外的其他标签的邻相近值中的最大的第三邻相近值,确定所述右侧标签分别与所述其他标签的邻相近值中的最大的第四邻相近值,若所述第三邻相近值大于所述第四邻相近值,则将所述第三邻相近值对应的除所述左侧标签之外的另一个标签设置于所述左侧标签的左边,并将所述标签作为新的左侧标签,若所述第三邻相近值小于所述第四邻相近值,则将所述第四邻相近值对应的除所述右侧标签之外的另一个标签设置于所述右侧标签的右边,并将所述标签作为新的右侧标签;重复该步骤,直至确定所有标签的顺序;

根据最终确定的标签的顺序中,每两个相邻的标签的邻相近值确定每个标签的刻度值。

如上所示的方法中,所述根据每两个标签中包括的相同的音乐的数量,确定每两个标签之间的邻相近值,包括:

根据公式确定每两个标签之间的邻相近值;其中,num(IJ)表示标签I与标签J之间包括的相同的音乐的数量,num(I)表示标签I分别与除标签I之外的其他标签之间包括的相同的音乐的总数量,num(J)表示标签J分别与除标签J之外的其他标签之间包括的相同的音乐的总数量。

如上所示的方法中,若最终确定的标签的顺序为ADBC……IJ,则所述根据最终确定的标签的顺序中,根据每两个相邻的标签的邻相近值确定每个标签的刻度值,包括:

根据公式

确定标签A的刻度值;其中,neighbor(AD)表示标签A和标签D之间的邻相近值,Q表示分子上加数的数量;

根据公式

确定标签D的刻度值;

根据公式

确定标签B的刻度值;

根据公式

确定标签C的刻度值;

以此类推,直至根据公式

确定标签J的刻度值,实现确定每个标签的刻度值。

如上所示的方法中,所述将每个维度中的标签映射于所述维度对应的坐标轴上,并确定标签在所述坐标轴上的刻度值,包括:

将每个维度中的标签全排列映射于所述维度对应的坐标轴上;其中,每个维度中相邻标签之间的间距相等;

根据公式dis=∑m∈tagsn∈music(Qn-Rm)确定dis最小时对应的每个维度的标签的顺序为最终确定的标签的顺序;其中,m表示标签,tags为音乐的标签的集合,n表示音乐,music为所述预先获取的音乐的集合,totalnum为具有标签m的音乐的集合,Qn表示音乐n在所述坐标系中对应的点距离坐标原点的距离,j表示具有标签m的音乐,Qj表示音乐j在所述坐标系中对应的点距离坐标原点的距离,len(totalnum)为集合totalnum中元素的数量;

根据所述最终确定的标签的顺序确定标签在坐标轴上的刻度值。

如上所示的方法中,所述将所述音乐类别点中与所述影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐具体为:

根据公式确定预设条件gk,其中,β表示从所述音乐类别点中选取的N个音乐类别点的集合,N表示所述音乐类别点中与所述影视类别点的距离满足预设条件的音乐类别点的数量,Y表示影视类别点q与集合β中的音乐类别点之间的距离,y表示所述影视类别点的数量;

将所述音乐类别点中与所述影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐。

如上所示的方法中,所述坐标系包括3个坐标轴,所述3个坐标轴分别表示时间、场景及主题情感。

第二方面,本发明实施例还提供一种基于影视信息的音乐推荐装置,包括:

建立模块,用于根据预先获取的音乐的标签建立坐标系;其中,所述坐标系包括至少一个坐标轴、位于所述坐标轴上的标签及所述标签的刻度值;

第一映射模块,用于将候选音乐映射于所述坐标系中,形成音乐类别点;

第二映射模块,用于将用户在预设时间段内观看过的影视信息映射于所述坐标系中,形成影视类别点;

确定模块,用于将所述音乐类别点中与所述影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐;

推荐模块,用于向所述用户推荐所述待推荐的音乐。

如上所示的装置中,所述建立模块包括:

分类子模块,用于将预先获取的标签分为至少一个维度;其中,所述维度的数量与所述坐标系包括的坐标轴的数量相同;

映射确定子模块,用于将每个维度中的标签映射于所述维度对应的坐标轴上,并确定标签在所述坐标轴上的刻度值。

如上所示的装置中,所述映射确定子模块具体用于:

根据每两个标签中包括的相同的音乐的数量,确定每两个标签之间的邻相近值;

根据所述每两个标签之间的邻相近值,确定邻相近值最大的两个标签为起始位置;

确定所述邻相近值最大的两个标签中的左侧标签分别与除所述两个标签之外的其他标签的邻相近值中的最大的第一邻相近值,确定所述邻相近值最大的两个标签中的右侧标签分别与所述其他标签的邻相近值中的最大的第二邻相近值;

若所述第一邻相近值大于所述第二邻相近值,则将所述第一邻相近值对应的除所述左侧标签之外的另一个标签设置于所述左侧标签的左边,并将所述标签作为新的左侧标签;若所述第一邻相近值小于所述第二邻相近值,则将所述第二邻相近值对应的除所述右侧标签之外的另一个标签设置于所述右侧标签的右边,并将所述标签作为新的右侧标签;

确定所述左侧标签分别与除已排序标签之外的其他标签的邻相近值中的最大的第三邻相近值,确定所述右侧标签分别与所述其他标签的邻相近值中的最大的第四邻相近值,若所述第三邻相近值大于所述第四邻相近值,则将所述第三邻相近值对应的除所述左侧标签之外的另一个标签设置于所述左侧标签的左边,并将所述标签作为新的左侧标签,若所述第三邻相近值小于所述第四邻相近值,则将所述第四邻相近值对应的除所述右侧标签之外的另一个标签设置于所述右侧标签的右边,并将所述标签作为新的右侧标签;重复该步骤,直至确定所有标签的顺序;

根据最终确定的标签的顺序中,每两个相邻的标签的邻相近值确定每个标签的刻度值。

如上所示的装置中,所述映射确定子模块具体用于:

根据公式确定每两个标签之间的邻相近值;其中,num(IJ)表示标签I与标签J之间包括的相同的音乐的数量,num(I)表示标签I分别与除标签I之外的其他标签之间包括的相同的音乐的总数量,num(J)表示标签J分别与除标签J之外的其他标签之间包括的相同的音乐的总数量。

如上所示的装置中,若最终确定的标签的顺序为ADBC……IJ,则所述映射确定子模块具体用于:

根据公式

确定标签A的刻度值;其中,neighbor(AD)表示标签A和标签D之间的邻相近值,Q表示分子上加数的数量;

根据公式

确定标签D的刻度值;

根据公式

确定标签B的刻度值;

根据公式

确定标签C的刻度值;

以此类推,直至根据公式

确定标签J的刻度值,实现确定每个标签的刻度值。

如上所示的装置中,所述映射确定子模块具体用于:

将每个维度中的标签全排列映射于所述维度对应的坐标轴上;其中,每个维度中相邻标签之间的间距相等;

根据公式dis=∑m∈tagsn∈music(Qn-Rm)确定dis最小时对应的每个维度的标签的顺序为最终确定的标签的顺序;其中,m表示标签,tags为音乐的标签的集合,n表示音乐,music为所述预先获取的音乐的集合,totalnum为具有标签m的音乐的集合,Qn表示音乐n在所述坐标系中对应的点距离坐标原点的距离,j表示具有标签m的音乐,Qj表示音乐j在所述坐标系中对应的点距离坐标原点的距离,len(totalnum)为集合totalnum中元素的数量;

根据所述最终确定的标签的顺序确定标签在坐标轴上的刻度值。

如上所示的装置中,所述确定模块具体用于:

根据公式确定预设条件gk,其中,β表示从所述音乐类别点中选取的N个音乐类别点的集合,N表示所述音乐类别点中与所述影视类别点的距离满足预设条件的音乐类别点的数量,Y表示影视类别点q与集合β中的音乐类别点之间的距离,y表示所述影视类别点的数量

将所述音乐类别点中与所述影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐。

如上所示的装置中,所述坐标系包括3个坐标轴,所述3个坐标轴分别表示时间、场景及主题情感。

本发明实施例提供的基于影视信息的音乐推荐方法及装置,通过根据预先获取的音乐的标签建立坐标系,其中,坐标系包括至少一个坐标轴、位于坐标轴上的标签及标签的刻度值,将候选音乐映射于坐标系中,形成音乐类别点,将用户在预设时间段内观看过的影视信息映射于坐标系中,形成影视类别点,将音乐类别点中与影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐,向用户推荐待推荐的音乐,实现了将音乐信息和影视信息进行空间的量化映射,将用户观看过的影视信息渗透到音乐推荐中,即实现根据用户观看过的影视信息预测用户喜爱的音乐,由于用户观看过的影视信息更能反映用户的喜好,因此,根据用户观看过的影视信息预测的音乐即为用户喜爱的音乐,从而,提高了音乐推荐的精准率,进而,提高了用户体验。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的基于影视信息的音乐推荐方法实施例的流程示意图;

图2为图1所示实施例中确定标签顺序的示意图;

图3为图1所示实施例中确定的坐标系的示意图;

图4为本发明实施例提供的基于影视信息的音乐推荐装置实施例的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供的基于影视信息的音乐推荐方法可以由终端设备执行。本发明实施例中的终端设备可以是手持设备、车载设备、可穿戴设备、计算设备,以及各种形式的用户设备(User Equipment;简称:UE),移动台(Mobile Station;简称:MS)及终端(terminal)等。示例性地,本发明实施例的终端设备可以是智能手机、平板电脑、智能电视等。

本发明实施例提供的基于影视信息的音乐推荐方法,通过根据预先获取的音乐的标签建立坐标系,其中,坐标系包括至少一个坐标轴、位于坐标轴上的标签及标签的刻度值,将候选音乐映射于坐标系中,形成音乐类别点,将用户在预设时间段内观看过的影视信息映射于坐标系中,形成影视类别点,将音乐类别点中与影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐,向用户推荐待推荐的音乐,实现了将音乐信息和影视信息进行空间的量化映射,将用户观看过的影视信息渗透到音乐推荐中,即实现根据用户观看过的影视信息预测用户喜爱的音乐,由于用户观看过的影视信息更能反映用户的喜好,因此,根据用户观看过的影视信息预测的音乐即为用户喜爱的音乐,从而,提高了音乐推荐的精准率,进而,提高了用户体验。

下面以具体的实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。

图1为本发明实施例提供的基于影视信息的音乐推荐方法实施例的流程示意图。如图1所示,本发明实施例提供的基于影视信息的音乐推荐方法包括如下步骤:

S101:根据预先获取的音乐的标签建立坐标系。

其中,坐标系包括至少一个坐标轴、位于坐标轴上的标签及标签的刻度值,标签包括音乐标签和影视标签。

具体地,本发明实施例中所涉及的音乐可以是歌曲、戏曲及使用钢琴等乐器演奏的乐曲等,本发明实施例对此不做限制。本发明实施例中所涉及的音乐标签可以是从多个维度描述音乐的词语。示例性地,这里的维度可以包括收听音乐的时间,收听该音乐的场景以及该音乐所反映的主题情感。举例来说,歌曲《旋木》的标签可以是(下午,校园,欢快,浪漫),其中,“下午”是从收听歌曲的时间描述该歌曲,“校园”是从收听歌曲的场景描述该歌曲,“欢快、浪漫”是从该歌曲所反映的主题情感描述该歌曲。

对于获取音乐标签的具体方式,本发明实施例不做具体限定,示例的,终端设备可以通过网络抓取音乐相关数据,进而获取音乐标签。其中,基于网络数据获取到的音乐标签可以是网络中的用户在收听这些音乐之后添加的,也可以是这些音乐的制作者在发布这些音乐时添加的。

可选的,终端设备可以通过以下方法建立坐标系:将预先获取的标签分为至少一个维度,其中,维度的数量与坐标系包括的坐标轴的数量相同;将每个维度中的标签映射于维度对应的坐标轴上,并确定标签在坐标轴上的刻度值。

在将预先获取的标签分为至少一个维度时,可以基于音乐与影视共同的特征将标签集合中的标签划分成不同的维度。在一种具体的实现方式中,音乐和影视共同的描述维度可以是时间、场景及主题情感,因此,基于标签的内容将预先获取的标签组成的标签集合中的标签划分至时间、场景及主题情感中。这里的维度的数量与坐标系包括的坐标轴的数量相同,即,在最终形成的坐标系中,每个坐标轴表征不同的维度。

举例来说,假设预先获取的音乐及其标签为:

1、旋木(下午,校园,欢快,伤感,安静);

2、I'm Yours(早,开车,欢快,浪漫);

3、专属味道(工作,约会,欢快);

4、万物生(深夜,学习,安静);

5、越长大越孤单(下午,学习,安静,伤感);

6、一路上有你(中午,校园,浪漫,寂寞);

7、你别怪我(早,跑步,唯美,怀念,深情,浪漫,伤感);

8、伤了我也伤了你自己(深夜,休闲,怀旧,激情,青春,浪漫);

9、转身(下午,跑步,寂寞);

10、百恋歌(早,开车,深情,安静,怀念,伤感)。

若将标签分为时间、场景及主题情感三个维度,则将标签(下午,早,工作,深夜,中午)划分为时间维度,将标签(校园,开车,约会,学习,跑步,休闲)划分为场景维度,将标签(欢快,伤感,安静,浪漫,寂寞,唯美,怀念,深情,怀旧,激情,青春)划分为主题情感维度。将标签划分好后,将每个维度中的标签映射于该维度对应的坐标轴上,并确定标签在坐标轴上的刻度值。

示例的,根据音乐标签的维度之间是否独立,可以通过以下两种实现方式将每个维度中的音乐标签映射于该维度对应的坐标轴上,并确定标签在坐标轴上的刻度值:

在第一种可能的实现方式中,假设维度之间是相互独立的。假设这里的维度为时间、场景及主题情感三个维度,则维度之间是相互独立的意为“早晨在开车时候的伤感”与“晚上跑步时候的伤感”没有差别,都是“伤感”。

在这种实现方式中,在将每个维度中的标签映射于该维度对应的坐标轴,以及确定标签在坐标轴上的刻度值时,需要先确定标签在坐标轴上的顺序,进而,根据该顺序确定每个标签在坐标轴上的刻度值。确定不同的维度上的标签顺序以及确定标签在该维度对应的坐标轴上的刻度值时的实现过程相同。以下以主题情感维度为例说明如何确定标签的顺序以及确定标签在坐标轴上的刻度值。

具体的实现过程如下所示:根据每两个标签中包括的相同的音乐的数量,确定每两个标签之间的邻相近值;根据每两个标签之间的邻相近值,确定邻相近值最大的两个标签为起始位置;确定邻相近值最大的两个标签中的左侧标签分别与除两个标签之外的其他标签的邻相近值中的最大的第一邻相近值,确定邻相近值最大的两个标签中的右侧标签分别与其他标签的邻相近值中的最大的第二邻相近值;若第一邻相近值大于第二邻相近值,则将第一邻相近值对应的除左侧标签之外的另一个标签设置于左侧标签的左边,并将标签作为新的左侧标签;若第一邻相近值小于第二邻相近值,则将第二邻相近值对应的除右侧标签之外的另一个标签设置于右侧标签的右边,并将标签作为新的右侧标签;确定左侧标签分别与除已排序标签之外的其他标签的邻相近值中的最大的第三邻相近值,确定右侧标签分别与其他标签的邻相近值中的最大的第四邻相近值,若第三邻相近值大于第四邻相近值,则将第三邻相近值对应的除左侧标签之外的另一个标签设置于左侧标签的左边,并将标签作为新的左侧标签,若第三邻相近值小于第四邻相近值,则将第四邻相近值对应的除右侧标签之外的另一个标签设置于右侧标签的右边,并将标签作为新的右侧标签,重复该步骤,直至确定所有标签的顺序;根据最终确定的标签的顺序中,每两个相邻的标签的邻相近值确定每个标签的刻度值。

以下以主题情感维度包括(欢快,伤感,安静,浪漫)这四个标签为例进行说明。为了实现方便,可以用字母替代标签。这里用A表示欢快标签,用B表示伤感标签,用C表示安静标签,用D表示浪漫标签。基于上文的预先获取的音乐的例子,标签A包括音乐1、2和3,标签B包括音乐1、5、7和10,标签C包括音乐1、4、5和10,标签D包括音乐2、6、7和8。

可以根据公式确定每两个标签之间的邻相近值。其中,num(IJ)表示标签I与标签J之间包括的相同的音乐的数量,num(I)表示标签I分别与除标签I之外的其他标签之间包括的相同的音乐的总数量,num(J)表示标签J分别与除标签J之外的其他标签之间包括的相同的音乐的总数量。则可以确定标签A和标签B之间的邻相近值为:

其中,num(AB)表示标签A和标签B之间包括的相同的音乐的数量,num(AB)为1;num(A)为标签A分别与标签B、标签C及标签D之间包括的相同的音乐的总数量:标签A与标签B包括1个相同的音乐,标签A与标签C包括1个相同的音乐,标签A与标签D包括1个相同的音乐,则num(A)为3;num(B)为标签B分别与标签A、标签C及标签D之间包括的相同的音乐的总数量:标签B与标签A包括1个相同的音乐,标签B与标签C包括3个相同的音乐,标签B与标签D包括1个相同的音乐,则num(B)为5。综上所述,以此类推,可以确定:需要说明的是,确定每两个标签之间的邻相近值时,假设总共有M个标签,则最终确定出的邻相近值为个。

图2为图1所示实施例中确定标签顺序的示意图。在确定两个标签之间包括的相同的音乐的数量以及确定某个标签分别与除该标签之外的其他标签之间包括的相同的音乐的总数量时,可以通过在标签之间连线,并统计线段的数量来实现。如图2所示,如果两个标签之间包括有相同的音乐,则在该两个标签之间画一条线段。可以理解的是,此时,确定标签A与标签B之间包括的相同的音乐的总数量可以变换为确定标签A与标签B之间的线段的数量,确定标签A分别与除标签A之外的其他标签之间包括的相同的音乐的总数量可以变换为确定线段的一个端点为标签A的线段的总数量。

在确定出每两个标签之间的邻相近值后,确定邻相近值最大的两个标签为起始位置。对计算出的邻相近值进行排序,可知neighbor(BC)>neighbor(AD)>neighbor(BD)>neighbor(AC)>neighbor(AB),则将标签B和标签C作为起始位置。接下来,对起始位置进行左右扩展,直至将所有标签的顺序排列完毕。

以下对扩展的具体过程作一详细说明:除起始位置的标签B和标签C之外,剩余的标签为标签A和标签D。确定左侧标签B分别与标签A和标签D的邻相近值中最大的第一邻相近值确定右侧标签C分别与标签A和标签D的邻相近值中最大的第二邻相近值第一邻相近值大于第二邻相近值,则将第一邻相近值对应的除左侧标签之外的另一个标签设置于左侧标签的左边,第一邻相近值对应的标签为标签B和标签D,即,这里的另一个标签为标签D,将标签D设置于标签B的左侧,此时标签的顺序为:DBC。此时,除已排序标签D、标签B和标签C之外的其他标签为A,此时的左侧标签为D,右侧标签为C。确定左侧标签D与标签A的第三邻相近值为确定右侧标签C与标签A的第四邻相近值为第三邻相近值大于第四邻相近值,则将第三邻相近值对应的除左侧标签之外的另一个标签设置于左侧标签的左边,第三邻相近值对应的标签为标签A和标签D,即,这里的另一个标签为标签A,将标签A设置于标签D的左边。此时,所有的标签都已经排序了,最终确定的标签的顺序为ADBC。需要说明的是,如果此时还有标签没有排序,则继续进行确定第三邻相近值和第四邻相近值的过程,比较第三邻相近值和第四邻相近值,确定标签的放置位置,直至所有的标签都被排序。

在确定了所有的标签的顺序之后,需要根据最终确定的标签的顺序中,每两个相邻的标签的邻相近值确定每个标签的刻度值。需要说明的是,这里的每两个相邻的标签的邻相近值表示的是最终的标签的顺序中,所有相邻的两个标签的邻相近值。举例来说,若最终确定的顺序为ADBC,则每两个相邻的标签的邻相近值包括:标签A和标签D的邻相近值,标签D和标签B的邻相近值,标签B和标签C的邻相近值。若有M个标签,则这里的每两个相邻的标签的邻相近值共有M-1个。

举例来说,若最终确定的标签的顺序为ADBC……IJ,则可以根据公式:确定标签A的刻度值。其中,neighbor(AD)表示标签A和标签D之间的邻相近值,Q表示分子上加数的数量。Q为分子上加数的数量表示的是分子上有多少个数相加,则Q的值就为多少。根据该公式可知,起点标签的刻度值为相邻的标签之间的邻相近值的平均值。

根据公式

确定标签D的刻度值。

根据公式

确定标签B的刻度值。

根据公式

确定标签C的刻度值。

以此类推,直至根据公式

确定标签J的刻度值,实现确定每个标签的刻度值。

在确定了标签的刻度值后,即完成了主题情感维度对应的坐标轴上的标签的排列及刻度值的计算,再按照上述过程计算其他两个维度对应的坐标轴上的标签的排列及刻度值的计算,完成坐标系的建立。

在第二种可能的实现方式中,假设维度之间是相互关联的。假设这里的维度为时间、场景及主题情感三个维度,则维度之间是相互关联的意为“早晨在开车时候的伤感”与“晚上跑步时候的伤感”不同。则在将每个维度中的标签映射于该维度对应的坐标轴上,并确定标签在坐标轴上的刻度值时,需要同时考虑所有维度。

该实现方式的具体过程如下所示:将每个维度中的标签全排列映射于维度对应的坐标轴上,其中,每个维度中相邻标签之间的间距相等;根据公式dis=∑m∈tagsn∈music(Qn-Rm)确定dis最小时对应的每个维度的标签的顺序为最终确定的标签的顺序,其中,m表示标签,tags为音乐的标签的集合,n表示音乐,music为预先获取的音乐的集合,totalnum为具有标签m的音乐的集合,Qn表示音乐n在坐标系中对应的点距离坐标原点的距离,j表示具有标签m的音乐,Qj表示音乐j在坐标系中对应的点距离坐标原点的距离,len(totalnum)为集合totalnum中元素的数量;根据最终确定的标签的顺序确定标签在坐标轴上的刻度值。可选的,在坐标系包括3个坐标轴时,

在该实现方式中,每个维度上的每两个相邻的标签之间的间距是相等的。则需要确定的是所有维度上的标签的顺序。其实现原理为:在一个音乐会属于多个标签的前提下,在大数据背景下的空间坐标中,相同或相似类别的数据间距离应最小,故将每条坐标轴的次序进行全排列,且在坐标轴上所有标签间刻度间距相同。在全排列的所有情况中选定使得dis值最小的一种排列方式,即可以确定标签的排列顺序。在确定了标签的顺序后,即可以确定标签在坐标轴上的刻度值,由于相邻标签之间的间距相同,只要确定起始位置标签的值和间距值,即可以确定所有标签的刻度值。

在执行完S101之后,即可以建立坐标系。示例性地,图3为图1所示实施例中确定的坐标系的示意图。如图3所示,该坐标系包括3个坐标轴,每个坐标轴上包括多个标签。

S102:将候选音乐映射于坐标系中,形成音乐类别点。

具体地,候选音乐为用户有权限收听的音乐。需要说明的是,候选音乐和预先获取的音乐可以是完全相同的,也可以是部分相同的,也可以是完全不相同的。

候选音乐中也包括标签。根据候选音乐的标签,将候选音乐投影到S101中建立的坐标系中。举例来说,在图3所示的坐标系中,带有“安静”标签的音乐会在以下位置出现:

[(t1,p4,i2),(t1,p5,i2),(t2,p4,i2),(t3,p4,i2),(t3,p5,i2),(t4,p4,i2),(t4,p5,i2),(t5,p4,i2),(t5,p4,i2)(t5,p5,i2)]。

需要说明的是,由于候选音乐的标签与坐标系的坐标轴上的标签并不是完全对应的,所以,可以预先建立标签的归一表。在该归一表中,包括有坐标系中的标签及与坐标系中的标签相近的标签的映射关系。例如,通过长期的用户数据分析及网络抓取信息获得,如果在用户日志分析中发现带有“午后”类标签的音乐与“早上”、“室内”、“安静”标签经常同时出现,则会给候选音乐中包括“午后”标签的音乐,再添加标签“早上”、“室内”、“安静”等标签。这样,不同类的音乐就分别被投射到坐标系中。示例性地,带有“午后”标签的音乐会在位置(t1,p4,i2)出现,带有“跑步”类标签的音乐会在位置[(t1,p1,i5),(t1,p1,i6),(t5,p1,i6)]出现。

坐标系中的一个点可以对应多个音乐,一个音乐也可以映射到坐标系中的不同点上,因此,坐标系中的某个点对应的是一个音乐的类别。举例来说,图3所示坐标系中的点(t1,p4,i2)表示的是包括标签“早,室内,安静”的一类音乐。因此,将候选音乐映射在坐标系中的点称之为音乐类别点。

S103:将用户在预设时间段内观看过的影视信息映射于坐标系中,形成影视类别点。

首先,需要说明的是,本发明实施例对于预设时间段的大小不做具体限定,示例的,预设时间段可以是30天等。

具体地,影视信息可以表示用户在预设时间段内观看过的影视的简介信息。从这些简介信息中,同样获取与坐标系中的坐标轴表示的维度对应的影视标签。可选的,可以从影视的简介信息中获取时间t、场景p及情感主题i三个维度的标签。获取用户观看过的所有影视标签可以得到三元组集合M[(时间t1、场景p1、情感主题i1),(时间t2、地点p2、主题i2)…]。

将该三元组集合映射到坐标系中,形成影视类别点。

需要说明的是,与S103类似,可以通过归一表给影视添加坐标系中的标签。另外,在三元组集合M中,有的三元组不是完整的三元组,对于缺少的维度用0填充。

S104:将音乐类别点中与影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐。

具体地,在确定了音乐类别点和影视类别点后,即可以根据影视类别点的分布确定待推荐的音乐。

可选的,可以根据公式确定预设条件gk。其中,β表示从音乐类别点中选取的N个音乐类别点的集合,N表示音乐类别点中与影视类别点的距离满足预设条件的音乐类别点的数量,Y表示影视类别点q与集合β中的音乐类别点之间的距离,y表示影视类别点的数量。

当坐标系为三维坐标系时,

需要说明的是,在该公式中,假设音乐类别点的总数量为M个,则会有个不同的集合β,会有个数。每次从M个音乐类别点中取N个音乐类别点,计算的值,直至遍历完从M个音乐类别点中取N个音乐类别点的所有情况。从最终计算的个值中选取一个最小值,此时,该最小值对应的N个音乐类别点即为最终确定的音乐类别点,该N个音乐类别点对应多个音乐,该多个音乐即为待推荐的音乐。

S105:向用户推荐待推荐的音乐。

具体地,终端设备可以通过发送直接播放、文字提示等方式向用户推荐待推荐的音乐。

本发明实施例提供的基于影视信息的音乐推荐方法,通过根据预先获取的音乐的标签建立坐标系,其中,坐标系包括至少一个坐标轴、位于坐标轴上的标签及标签的刻度值,将候选音乐映射于坐标系中,形成音乐类别点,将用户在预设时间段内观看过的影视信息映射于坐标系中,形成影视类别点,将音乐类别点中与影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐,向用户推荐待推荐的音乐,实现了将音乐信息和影视信息进行空间的量化映射,将用户观看过的影视信息渗透到音乐推荐中,即实现根据用户观看过的影视信息预测用户喜爱的音乐,由于用户观看过的影视信息更能反映用户的喜好,因此,根据用户观看过的影视信息预测的音乐即为用户喜爱的音乐,从而,提高了音乐推荐的精准率,进而,提高了用户体验。

图4为本发明实施例提供的基于影视信息的音乐推荐装置实施例的结构示意图。如图4所示,本发明实施例提供的基于影视信息的音乐推荐装置包括如下模块:

建立模块41,用于根据预先获取的音乐的标签建立坐标系。

其中,坐标系包括至少一个坐标轴、位于坐标轴上的标签及标签的刻度值。

可选的,本发明实施例中,坐标系包括3个坐标轴,3个坐标轴分别表示时间、场景及主题情感。

在一种可能的实现方式中,建立模块41包括:分类子模块,用于将预先获取的标签分为至少一个维度,其中,维度的数量与坐标系包括的坐标轴的数量相同;映射确定子模块,用于将每个维度中的标签映射于维度对应的坐标轴上,并确定标签在坐标轴上的刻度值。

映射确定子模块具体用于:根据每两个标签中包括的相同的音乐的数量,确定每两个标签之间的邻相近值;根据每两个标签之间的邻相近值,确定邻相近值最大的两个标签为起始位置;确定邻相近值最大的两个标签中的左侧标签分别与除两个标签之外的其他标签的邻相近值中的最大的第一邻相近值,确定邻相近值最大的两个标签中的右侧标签分别与其他标签的邻相近值中的最大的第二邻相近值,若第一邻相近值大于第二邻相近值,则将第一邻相近值对应的除左侧标签之外的另一个标签设置于左侧标签的左边,并将标签作为新的左侧标签,若第一邻相近值小于第二邻相近值,则将第二邻相近值对应的除右侧标签之外的另一个标签设置于右侧标签的右边,并将标签作为新的右侧标签;确定左侧标签分别与除已排序标签之外的其他标签的邻相近值中的最大的第三邻相近值,确定右侧标签分别与其他标签的邻相近值中的最大的第四邻相近值,若第三邻相近值大于第四邻相近值,则将第三邻相近值对应的除左侧标签之外的另一个标签设置于左侧标签的左边,并将标签作为新的左侧标签,若第三邻相近值小于第四邻相近值,则将第四邻相近值对应的除右侧标签之外的另一个标签设置于右侧标签的右边,并将标签作为新的右侧标签,重复该步骤,直至确定所有标签的顺序;根据最终确定的标签的顺序中,每两个相邻的标签的邻相近值确定每个标签的刻度值。

映射确定子模块具体用于:根据公式确定每两个标签之间的邻相近值。其中,num(IJ)表示标签I与标签J之间包括的相同的音乐的数量,num(I)表示标签I分别与除标签I之外的其他标签之间包括的相同的音乐的总数量,num(J)表示标签J分别与除标签J之外的其他标签之间包括的相同的音乐的总数量。

若最终确定的标签的顺序为ADBC……IJ,则映射确定子模块具体用于:

根据公式

确定标签A的刻度值。其中,neighbor(AD)表示标签A和标签D之间的邻相近值,Q表示分子上加数的数量。

根据公式

确定标签D的刻度值。

根据公式

确定标签B的刻度值。

根据公式

确定标签C的刻度值。

以此类推,直至根据公式

确定标签J的刻度值,实现确定每个标签的刻度值。

在另一种可能的实现方式中,映射确定子模块具体用于:

将每个维度中的标签全排列映射于维度对应的坐标轴上,其中,每个维度中相邻标签之间的间距相等;根据公式dis=Σm∈tagsΣn∈music(Qn-Rm)确定dis最小时对应的每个维度的标签的顺序为最终确定的标签的顺序,其中,m表示标签,tags为音乐的标签的集合,n表示音乐,music为预先获取的音乐的集合,totalnum为具有标签m的音乐的集合,Qn表示音乐n在坐标系中对应的点距离坐标原点的距离,j表示具有标签m的音乐,Qj表示音乐j在坐标系中对应的点距离坐标原点的距离,len(totalnum)为集合totalnum中元素的数量;根据最终确定的标签的顺序确定标签在坐标轴上的刻度值。

第一映射模块42,用于将候选音乐映射于坐标系中,形成音乐类别点。

第二映射模块43,用于将用户在预设时间段内观看过的影视信息映射于坐标系中,形成影视类别点。

确定模块44,用于将音乐类别点中与影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐。

根据公式确定预设条件。其中,β表示从音乐类别点中选取的N个音乐类别点的集合,N表示音乐类别点中与影视类别点的距离满足预设条件的音乐类别点的数量,Y表示影视类别点q与集合β中的音乐类别点之间的距离,y表示影视类别点的数量。

推荐模块45,用于向用户推荐待推荐的音乐。

本发明实施例提供的基于影视信息的音乐推荐装置,通过设置建立模块,用于根据预先获取的音乐的标签建立坐标系,其中,坐标系包括至少一个坐标轴、位于坐标轴上的标签及标签的刻度值,第一映射模块,用于将候选音乐映射于坐标系中,形成音乐类别点,第二映射模块,用于将用户在预设时间段内观看过的影视信息映射于坐标系中,形成影视类别点,确定模块,用于将音乐类别点中与影视类别点的距离满足预设条件的音乐类别点对应的音乐确定为待推荐的音乐,推荐模块,用于向用户推荐待推荐的音乐,实现了将音乐信息和影视信息进行空间的量化映射,将用户观看过的影视信息渗透到音乐推荐中,即实现根据用户观看过的影视信息预测用户喜爱的音乐,由于用户观看过的影视信息更能反映用户的喜好,因此,根据用户观看过的影视信息预测的音乐即为用户喜爱的音乐,从而,提高了音乐推荐的精准率,进而,提高了用户体验。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1