确定关联歌单的方法、装置、设备及存储介质与流程

    专利2022-07-08  106


    本申请涉及互联网技术领域,特别涉及一种确定关联歌单的方法、装置、设备及存储介质。



    背景技术:

    随着互联网技术的发展,用户在移动终端中通过音乐应用程序播放音乐是常见的一种播放音乐的方式。

    在音乐应用程序会展示一些包括有相同特点歌曲的歌单,例如歌单中包括的各个歌曲都为90年代的歌曲或都为英文歌曲等等。这些歌单可以由用户进行设置,例如用户可以将一些相同特点或自己喜爱的歌曲设置在同一个歌单中,并设置歌单的名称以及为歌单添加用于描述歌单中歌曲特点的分类标签等,然后可以在音乐应用程序共享自己的歌单。用户也可以在音乐应用程序中根据自己对音乐的喜好选择不同的歌单进行收听。

    一些音乐应用程序为了迎合用户对音乐的喜好实现智能推送歌单,可以在用户选择收听一个歌单之后,向用户推送与用户选择歌单对应的关联歌单,其中,关联歌单中的歌曲可以与用户选择的歌单中的歌曲具有相同特点,例如都是华语流行歌曲、都是90年代的歌曲等。

    在实现本申请的过程中,发明人发现相关技术至少存在以下问题:

    在相关技术中,一般都是根据两个歌单的名称和分类标签是否相关,来确定两个歌单是否为关联歌单,但是由于歌单的名称或分类标签大多用户自己设置的,可能对歌单中歌曲的特点的描述并不准确,所以仅通过歌单的名称或分类标签确定两个歌单是否为关联歌单的准确性较低。



    技术实现要素:

    本申请实施例提供了一种确定关联歌单的方法、装置、设备及存储介质,能够提高确定关联歌单的准确性的问题。所述技术方案如下:

    第一方面、提供了一种确定关联歌单的方法,所述方法包括:

    确定目标歌单的歌单描述信息对应的描述信息特征向量,并确定所述目标歌单中包括的各歌曲对应的歌曲特征向量,其中,所述歌曲对应的歌曲特征向量用于表示所述歌曲在歌单库中所归属的一个或多个歌单;

    基于所述歌曲特征向量和所述描述信息特征向量,确定所述目标歌单的歌单特征向量;

    确定所述目标歌单的歌单特征向量与所述歌单库中除所述目标歌单外的其他歌单的歌单特征向量的相似度,将所述相似度中满足预设条件的目标相似度对应的其他歌单确定为所述目标歌单的关联歌单。

    可选的,所述歌单描述信息包括歌单名称和歌单的分类标签;

    所述确定目标歌单的歌单描述信息对应的描述信息特征向量,包括:

    基于预先设置的词组与词组向量的对应关系,确定所述目标歌单的歌单名称中包括的各词组对应的词组向量;

    基于预设的分类标签与预设标签向量中各位置的对应关系,确定所述目标歌单的至少一个分类标签对应的第一位置,将所述预设标签向量中所述第一位置的数值设置为第一数值,将所述预设标签向量中除所述第一位置之外的其他位置的数值设置为第二数值,得到所述目标歌单的至少一个标签对应的标签向量;

    所述确定所述目标歌单中包括的各歌曲对应的歌曲特征向量,包括:

    基于预先设置的歌曲与歌曲特征向量的对应关系,确定所述目标歌单中包括的各歌曲对应的歌曲特征向量。

    可选的,所述基于所述歌曲特征向量和所述描述信息特征向量,确定所述目标歌单的歌单特征向量,包括:

    将所述歌曲特征向量和所述描述信息特征向量组成合成向量,将所述合成向量输入到经过训练的歌单特征提取模型,得到所述目标歌单的歌单特征向量。

    可选的,所述将所述合成向量输入到经过训练的歌单特征提取模型,得到所述目标歌单的歌单特征向量之前,所述方法还包括:

    获取目标样本歌单的第一合成向量、所述目标样本歌单对应的正样本歌单的第二合成向量、以及所述目标样本歌单对应的负样本歌单的第三合成向量,其中,所述正样本歌单为所述目标样本歌单的关联歌单,所述负样本歌单为所述目标样本歌单的非关联歌单;

    将所述第一合成向量、所述第二合成向量以及所述第三合成向量,分别输入到所述待训练的歌单特征提取模型中,得到所述目标样本歌单对应的第一歌单特征向量、所述正样本歌单对应的第二歌单特征向量以及所述负样本歌单对应的第三歌单特征向量;

    基于预设的损失函数确定所述第一歌曲特征向量、所述第二歌曲特征向量以及所述第三歌曲特征向量对应的残差值,基于所述残差值对所述待训练的歌单特征提取模型进行训练,得到训练后的歌单特征提取模型。

    可选的,所述获取目标样本歌单的第一合成向量、所述目标样本歌单对应的正样本歌单的第二合成向量、以及所述目标样本歌单对应的负样本歌单的第三合成向量之前,所述方法还包括:

    获取预设时间段内各用户收听的第一歌单集合;

    对于每个用户收听的第一歌单集合,删除所述第一歌单集合中收听时长未在预设收听时长范围内的第一歌单,得到第二歌单集合;

    对于每个第二歌单集合,确定所述第二歌单集合中收听次数超过第一预设次数的第二歌单,基于所述第二歌单的收听次数以及第一预设次数与删除概率的对应关系,确定所述第二歌单对应的删除概率,基于每个第二歌单对应的删除概率,对所述第二歌单集合进行歌单删减处理,得到每个第三歌单集合;

    将任一歌单确定为目标样本歌单,将与所述目标样本歌单同时存在于同一第三歌单集合的次数超过第二预设次数的歌单确定为所述目标样本歌单对应的正样本歌单,将所述第三歌单集合中除所述正样本歌单之外的其他歌单确定为所述目标样本歌单对应的负样本歌单。

    第二方面,提供了一种确定关联歌单的装置,所述装置包括:

    第一确定模块,用于确定目标歌单的歌单描述信息对应的描述信息特征向量,并确定所述目标歌单中包括的各歌曲对应的歌曲特征向量,其中,所述歌曲对应的歌曲特征向量用于表示所述歌曲在歌单库中所归属的一个或多个歌单;

    第二确定模块,用于基于所述歌曲特征向量和所述描述信息特征向量,确定所述目标歌单的歌单特征向量;

    第三确定模块,用于确定所述目标歌单的歌单特征向量与所述歌单库中除所述目标歌单外的其他歌单的歌单特征向量的相似度,将所述相似度中满足预设条件的目标相似度对应的其他歌单确定为所述目标歌单的关联歌单。

    可选的,所述歌单描述信息包括歌单名称和歌单的分类标签;

    所述第一确定模块,用于:

    基于预先设置的词组与词组向量的对应关系,确定所述目标歌单的歌单名称中包括的各词组对应的词组向量;基于预设的分类标签与预设标签向量中各位置的对应关系,确定所述目标歌单的至少一个分类标签对应的第一位置,将所述预设标签向量中所述第一位置的数值设置为第一数值,将所述预设标签向量中除所述第一位置之外的其他位置的数值设置为第二数值,得到所述目标歌单的至少一个标签对应的标签向量;

    基于预先设置的歌曲与歌曲特征向量的对应关系,确定所述目标歌单中包括的各歌曲对应的歌曲特征向量。

    可选的,所述第二确定模块,用于:

    将所述歌曲特征向量和所述描述信息特征向量组成合成向量,将所述合成向量输入到经过训练的歌单特征提取模型,得到所述目标歌单的歌单特征向量。

    可选的,所述第二确定模块,还用于:

    获取目标样本歌单的第一合成向量、所述目标样本歌单对应的正样本歌单的第二合成向量、以及所述目标样本歌单对应的负样本歌单的第三合成向量,其中,所述正样本歌单为所述目标样本歌单的关联歌单,所述负样本歌单为所述目标样本歌单的非关联歌单;

    将所述第一合成向量、所述第二合成向量以及所述第三合成向量,分别输入到所述待训练的歌单特征提取模型中,得到所述目标样本歌单对应的第一歌单特征向量、所述正样本歌单对应的第二歌单特征向量以及所述负样本歌单对应的第三歌单特征向量;

    基于预设的损失函数确定所述第一歌曲特征向量、所述第二歌曲特征向量以及所述第三歌曲特征向量对应的残差值,基于所述残差值对所述待训练的歌单特征提取模型进行训练,得到训练后的歌单特征提取模型。

    可选的,所述第二确定模块,还用于:

    获取预设时间段内各用户收听的第一歌单集合;

    对于每个用户收听的第一歌单集合,删除所述第一歌单集合中收听时长未在预设收听时长范围内的第一歌单,得到第二歌单集合;

    对于每个第二歌单集合,确定所述第二歌单集合中收听次数超过第一预设次数的第二歌单,基于所述第二歌单的收听次数以及第一预设次数与删除概率的对应关系,确定所述第二歌单对应的删除概率,基于每个第二歌单对应的删除概率,对所述第二歌单集合进行歌单删减处理,得到每个第三歌单集合;

    将任一歌单确定为目标样本歌单,将与所述目标样本歌单同时存在于同一第三歌单集合的次数超过第二预设次数的歌单确定为所述目标样本歌单对应的正样本歌单,将所述第三歌单集合中除所述正样本歌单之外的其他歌单确定为所述目标样本歌单对应的负样本歌单。

    第三方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上所述的确定关联歌单的方法所执行的操作。

    第四方面,提供了一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如上所述的确定关联歌单的方法所执行的操作。

    本申请实施例提供的技术方案带来的有益效果是:

    通过歌单的描述信息的描述信息特征向量以及歌单的各歌曲对应的歌曲特征向量,确定目标歌单的歌单特征向量,然后将与目标歌单的歌单特征向量相似度最高的歌单特征向量对应的歌单确定为目标歌单的关联歌单。可见本申请实施例确定关联歌单时除了使用歌单描述信息还使用了歌单内歌曲的歌曲特征向量,增加了确定关联歌单的参考信息,从而提高了确定关联歌单的准确性。

    附图说明

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

    图1是本申请实施例提供的确定关联歌单的方法流程图;

    图2是本申请实施例提供的确定关联歌单的方法示意图;

    图3是本申请实施例提供的确定关联歌单的方法示意图;

    图4是本申请实施例中获得样本歌单对的方法流程图;

    图5是本申请实施例提供的确定关联歌单的装置结构示意图;

    图6是本申请实施例提供的服务器的结构示意图。

    具体实施方式

    为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

    本申请实施例提供的一种确定关联歌单的方法,可以由终端或服务器实现,其中,终端可以运行有播放音乐的音乐播放应用程序,终端可以具备摄像头、麦克风、耳机等部件,终端具有通信功能,可以接入互联网,终端可以是手机、平板电脑、智能穿戴设备、台式计算机、笔记本电脑等。服务器可以是上述音乐播放应用程序的后台服务器,服务器可以与终端建立通信。该服务器可以是一个单独的服务器也可以是一个服务器组,如果是单独的服务器,该服务器可以负责下述方案中的所有处理,如果是服务器组,服务器组中的不同服务器分别可以负责下述方案中的不同处理,具体的处理分配情况可以由技术人员根据实际需求任意设置,此处不再赘述。

    在音乐播放应用程序中,一般会设置有歌曲推荐界面,在歌曲推荐界面中可以显示有不同的歌曲以及不同的歌单,在歌单中可以包括多首具有相同特点的歌曲,例如歌单中包括的各个歌曲都为90年代的歌曲,或都为英文歌曲等等。在歌曲推荐界面中显示歌单时,可以显示歌单对应的歌单封面、歌单名称、以及歌单对应的分类标签等。用户可以根据自己的喜好在歌曲推荐界面中选择歌单,收听选择的歌单中的各个歌曲。用户也可以在音乐播放应用程序中设置歌单,例如可以将自己喜欢收听的一些歌曲设置在一个歌单中,并设置歌单封面、歌单名称、歌单的分类标签等,例如歌单名称可以是“中学时代最爱的歌曲”,分类标签可以添加“校园”、“青春”、“90后”、“情歌”等等。本申请实施例提供的一种确定关联歌单的方法,可以根据用户收听的歌单为用户推荐对应的关联歌单,即推荐的歌单中的歌曲与用户收听的歌单中的歌曲具有相同的特点。

    图1是本申请实施例提供的一种确定关联歌单的方法流程图。参见图1,该实施例包括步骤101-步骤103。

    步骤101、确定目标歌单的歌单描述信息对应的描述信息特征向量,并确定目标歌单中包括的各歌曲对应的歌曲特征向量。

    其中,歌单库中可以包括对应音乐播放应用程序中的所有歌单,目标歌单可以是歌单库中任意一个歌单,歌单描述信息包括歌单名称、歌单详情描述以及歌单的分类标签等。目标歌单中的歌曲对应的歌曲特征向量用于表示该歌曲在歌单库中所归属的一个或多个歌单,可以由该歌曲所归属的一个或多个歌单的标识信息进行特征提取得到的。

    在本实施例中以歌单名称以及分类标签为例对描述信息特征向量的确定过程进行说明。

    在实施中,服务器可以获取目标歌单的歌单名称以及分类标签,然后获取歌单名称以及分类标签中的描述关键词,然后将描述关键词输入到预先训练的语义识别模型,提取描述关键词对应的特征向量,将描述关键词对应的特征向量确定为歌单描述信息对应的描述信息特征向量。对于目标歌单中每个歌曲,可以获取包含该歌曲的一个或多个歌单的标识信息,然后将该或该些歌单的标识信息组成向量,并通过训练完成的神经网络模型进行特征提取得到该歌曲的歌曲特征向量。其中,歌单的标识信息可以为歌单的标识,例如歌单的id(identitydocument,标识序列号)。

    可选的,在服务器中可以预先存储描述信息与描述信息特征向量的对应关系,以及各个歌曲与歌曲特征向量的对应关系,然后根据预先存储的对应关系确定目标歌单的歌单描述信息对应的描述信息特征向量和目标歌单中各歌曲对应的歌曲特征向量,相应的处理如下:

    步骤1011、基于预先设置的词组与词组向量的对应关系,确定目标歌单的歌单名称中包括的各词组对应的词组向量。

    其中,词组可以为歌单名称中可能出现的描述关键词。技术人员可以预先建立一个词组库,然后使用神经网络模型,例如word2vec模型,对各个词组进行向量无监督训练,得到每个词组对应的词组向量,然后可以存储每个词组与词组向量的对应关系。在获取到目标歌单的歌单名称之后,可以根据预先设置的语料库和停用词对歌单名称进行切词处理,即提取歌单名称中出现的描述关键词。例如,歌单名称为“90年代的人必听的情歌”,则对应的描述关键词可以是“90年代”和“情歌”等。在确定歌单名称中出现的描述关键词之后,可以根据词组与词组向量的对应关系,确定各个描述关键词对应的词组向量。

    由于不同的歌单名称对应的描述关键词的个数可能不同,所以得到词组向量的个数也会不同。所以可以对得到的词组向量进行处理,例如可以对歌单名称对应的所有的词组向量进行最小池化处理、最大池化处理以及平均池化处理,分别得到对歌单名称对应的所有的词组向量的最小池化向量、最大池化向量以及平均池化向量。然后将最小池化向量、最大池化向量以及平均池化向量组成目标歌单对应的词组向量,这样虽然不同的歌单名称对应有不同个数的描述关键词,但通过池化处理可以将不同个数的描述关键词通过固定维度的向量表示。

    步骤1012、基于预设的分类标签与预设标签向量中各位置的对应关系,确定目标歌单的至少一个分类标签对应的第一位置,将预设标签向量中第一位置的数值设置为第一数值,将预设标签向量中除第一位置之外的其他位置的数值设置为第二数值,得到目标歌单的至少一个标签对应的标签向量。

    其中,预设标签向量可以为一个固定维度的向量。技术人员可以预先统计各个歌单中出现的分类标签建立分类标签库,或者,可以预先建立分类标签库供用户在分类标签库中选择分类标签添加到对应的歌单中。技术人员可以设置分类标签库中所有的分类标签与预设标签向量各个位置的对应关系,当获取到目标歌单的分类标签之后,可以根据one-hot(独热)编码生成目标歌单的至少一个分类标签对应的标签向量。例如,分类标签库中所有的分类标签的个数为100个,则预设标签向量可以包括有100个位置,如果目标歌单中包括4个分类标签且分别对应预设标签向量第一个位置、第二个位置、第十个位置和第二十二个位置,则第一个位置、第二个位置、第十个位置和第二十二个位置可以统称为第一位置,则可以将预设标签向量中的第一位置的数值设置为第一数值,例如1,将预设标签向量中的除第一位置之外的第二位置的数值设置为第二数值,例如0,如此可以得到目标歌单的至少一个标签对应的标签向量。

    另外,一般预设标签向量为一维向量,所以还可以对至少一个标签对应的标签向量进行升维处理,例如通过tf-idf处理,得到目标歌单的至少一个标签对应的高维度标签向量。

    步骤1013、基于预先设置的歌曲与歌曲特征向量的对应关系,确定目标歌单中包括的各歌曲对应的歌曲特征向量。

    其中,每个歌曲可以对应有唯一的歌曲标识,例如歌曲id。每个歌单可以对应有唯一的歌单标识信息,歌单的标识信息可以为歌单标识,例如歌单id。技术人员可以预先在歌曲库中选取一部分歌曲作为样本歌曲,对于每个样本歌曲,在样本歌单库中获取包括该样本歌曲的所有歌单的标识信息,然后使用包括该样本歌曲的所有歌单的标识信息组成的向量对神经网络模型进行向量无监督训练,得到训练完成的神经网络模型。其中,神经网络模型可以为word2vec模型,样本歌单库可以为预先在歌单库中选取的一部分歌单组成的歌单库,例如通过设置日期,将在某个日期之前建立的所有歌单组成样本歌单库。

    在得到训练完成的神经网络模型后,对于歌曲库中的每个歌曲,可以将每个歌曲在歌单库所属的所有歌单的标识信息输入到训练完成的神经网络模型中进行特征提取,得到每个歌曲对应的歌曲特征向量,然后可以存储歌曲id与歌曲特征向量的对应关系。对于目标歌单中的每个歌曲,可以根据每个歌曲的歌曲id,以及上述存储的歌曲id与歌曲特征向量之间的对应关系,确定目标歌单中每个歌曲对应的歌曲特征向量。

    另外,基于预先训练完成的神经网络模型,还可以通过以下方式获得目标歌单中歌曲的特征向量。对于目标歌单中的歌曲,确定该歌曲所属的所有歌单并获得各个歌单的标识信息,进而将该歌曲所有歌单的标识信息输入至训练完成的神经网络模型中进行特征提取,以得到该歌曲对应的歌曲特征向量。目标歌单中的每个歌曲均按照该种方式进行特征提取,便可以得到各个歌曲各自的歌曲特征向量。

    需要说明的是,对于任意两个歌曲,如果分别包含这两个歌曲的所有歌单大致相同,则这两个歌曲对应的歌曲特征向量可以具有较高的相似度。

    由于不同的歌单中包括的歌曲的个数可能不同,所以得到歌曲特征向量的个数也会不同。所以可以对得到的歌曲特征向量进行处理,例如可以对歌单对应的所有的歌曲特征向量进行最小池化处理、最大池化处理以及平均池化处理,分别得到,歌单对应的所有歌曲特征向量的最小池化向量、最大池化向量以及平均池化向量。然后将对应的最小池化向量、最大池化向量以及平均池化向量组成目标歌单对应的歌曲特征向量,这样虽然不同的歌单对应的歌曲的个数不同,但通过池化处理可以将不同个数的歌曲通过固定维度的向量表示。

    其中需要说明的是在通过上述步骤1011、1012、1013的处理在时序上没有先后顺序。如图2所示,在得到目标歌单对应的词组向量、标签向量和歌曲特征向量之后,可以将词组向量、标签向量和歌曲特征向量组成目标歌单对应的合成向量即歌单特征向量。

    步骤102、基于歌曲特征向量和描述信息特征向量,确定目标歌单的歌单特征向量。

    在实施中,在得到目标歌单的歌曲特征向量和描述信息特征向量之后,可以将歌曲特征向量和描述信息特征向量进行拼接组成目标歌单的歌单特征向量。

    可选的,可以将歌曲特征向量和描述信息特征向量组成合成向量,将合成向量输入到经过训练的歌单特征提取模型,得到目标歌单的歌单特征向量。

    在实施中,可以歌曲特征向量和描述信息特征向量组成合成向量,然后将合成向量输入到经过训练的歌单特征提取模型中,得到目标歌单的歌单特征向量。

    其中歌单特征提取模型的训练过程可以如下:

    步骤1021、获取目标样本歌单的第一合成向量、目标样本歌单对应的正样本歌单的第二合成向量、以及目标样本歌单对应的负样本歌单的第三合成向量。

    其中,目标样本歌单可以是任意一个样本歌单,正样本歌单为目标样本歌单的关联歌单,负样本歌单为目标样本歌单的非关联歌单。为了便于理解,可以将目标样本歌单与正样本歌单称为正样本歌单对,将目标样本歌单与负样本歌单称为负样本歌单对。

    步骤1022、将第一合成向量、第二合成向量以及第三合成向量,分别输入到待训练的歌单特征提取模型中,得到目标样本歌单对应的第一歌单特征向量、正样本歌单对应的第二歌单特征向量以及负样本歌单对应的第三歌单特征向量;

    在实施中,可以设置三个相同的待训练的歌单特征提取模型,如歌单特征提取模型a、歌单特征提取模型b、歌单特征提取模型c。如图3所示,分别将第一合成向量输入到歌单特征提取模型a、将第二合成向量输入到歌单特征提取模型b、将第三合成向量输入到歌单特征提取模型c。这三个歌单特征提取模型可以组成歌单特征提取模型训练框架,分别包括输入层、表示层和匹配层。在输入层,可以分别将780维的第一合成向量、第二合成向量和第三合成向量输入到歌单特征提取模型训练框架中。在表示层可以分别对第一合成向量、第二合成向量和第三合成向量提取特征,分别得到目标样本歌单对应的第一歌单特征向量、正样本歌单对应的第二歌单特征向量以及负样本歌单对应的第三歌单特征向量。在匹配层中对第一歌单特征向量和第二歌单特征向量求对应的第一余弦相似度,第一歌单特征向量和第三歌单特征向量求对应的第二余弦相似度,也就是说,匹配层可以计算正样本歌单对内两个歌单之间的余弦相似度,以及计算负样本歌单对内两个歌单的余弦相似度。如图中的r(s,q )表示对第一歌单特征向量s和第二歌单特征向量q 进行余弦相似度计算,p(d |s)为计算得到对应的第一余弦相似度,r(s,q-)表示对第一歌单特征向量s和第三歌单特征向量q-进行余弦相似度计算,p(d-|s)为计算得到第二余弦相似度。表示层使用两层全连接网络,wi表示第i层权重矩阵,bi表示第i层bias项,因此第一个隐层向量11(256维向量)和输出向量y(128维向量)可以分别表示为:

    l1=f(w1x b1)

    y=f(w2l1 b2)

    其中f表示隐含层和输出的激活函数,本申请实施例使用tanh激活函数。最终输出y为一个128维的歌单低维语义向量。x为输入层的输入向量,第一合成向量、第二合成向量和第三合成向量可以分别作为输入向量代入到上式中,分别求得对应的隐层向量l1,第一合成向量、第二合成向量和第三合成向量可以由上述步骤101中的处理得到,此处不再赘述。

    步骤1023、基于预设的损失函数确定歌曲特征向量第一歌曲特征向量、歌曲特征向量第二歌曲特征向量以及歌曲特征向量第三歌曲特征向量对应的残差值,基于残差值对待训练的歌单特征提取模型进行训练,得到训练后的歌单特征提取模型。

    在实施中,可以根据第一余弦相似度和第二余弦相似度以及预先设置的损失函数确定对应的残差值,然后可以根据确定的残差值分别对歌单特征提取模型a、歌单特征提取模型b、歌单特征提取模型c进行训练,得到训练后的歌单特征提取模型。

    其中,本申请实施例可以建立dssm(deepstructuredsemanticmodels,深度语义模型)对歌单特征提取模型进行训练,即可以通过设置多组歌单样本空间,分别对歌单特征提取模型进行训练,每个歌单样本空间中可以包括预设数目个歌单,在预设数目个歌单中既包括正样本歌单对和负样本歌单对,对应的损失函数如下:

    其中γ为softmax平滑因子,d 为目标样本歌单s的对应的置信相似歌单(即正样本歌单),d`为整个歌单样本空间。r(s,d )为目标样本歌单的第一歌单特征向量与对应正样本歌单第二歌单特征向量的余弦相似度,r(s,d`)为目标样本歌单的第一歌单特征向量与对应歌单样本空间中任一样本歌单的歌单特征向量的余弦相似度。l(λ)为残差值。在训练过程中,残差值会在表示层的全连接中反向传播,通过随机梯度下降使模型收敛,得到歌单特征提取模型中各网络层的参数。

    另外需要说明的是,训练完成的歌单特征提取模型a、歌单特征提取模型b、歌单特征提取模型c为相同的歌单特征提取模型,在应用时,应用其中的一个歌单特征提取模型即可。

    步骤103、确定目标歌单的歌单特征向量与歌单库中除目标歌单外的其他歌单的歌单特征向量的相似度,将相似度中满足预设条件的目标相似度对应的其他歌单确定为目标歌单的关联歌单。

    在实施中,当服务器接收到向终端推送目标歌单的关联歌单的通知时,可以获取目标歌单的歌单特征向量以及歌单库中除目标歌单外的其他歌单的歌单特征向量,然后计算目标歌单的歌单特征向量与其他歌单的歌单特征向量的相似度,例如计算目标歌单的歌单特征向量与其他歌单的歌单特征向量的空间距离值。然后在计算得到的目标歌单对应的多个相似度中,根据预设条件确定目标相似度,然后将目标相似度对应的歌单确定为目标歌单的关联歌单。其中预设条件可以由技术人员预先设置,例如可以将多个相似度中超过相似度阈值的相似度确定为目标相似度,或者将多个相似度中相似度最高的预设数目个相似度确定为目标相似度等等。然后将目标相似度对应的歌单确定为目标歌单的关联歌单。例如将相似度最高的3个歌单确定为目标歌单的关联歌单。然后服务器可以向终端发送包括关联歌单播放选项的推送通知。

    本申请实施例,通过歌单的描述信息的描述信息特征向量以及歌单的各歌曲对应的歌曲特征向量,确定目标歌单的歌单特征向量,然后将与目标歌单的歌单特征向量相似度最高的歌单特征向量对应的歌单确定为目标歌单的关联歌单。可见本申请实施例可以通过歌单中的歌曲与歌单的描述信息共同确定对应的关联歌单,丰富了确定关联歌单的参考信息,能够提高确定关联歌单的准确性。

    图4是本申请实施例中获得样本歌单对的一方法流程图,该方法可用于在训练歌单特征提取模型之前,即在执行步骤1021-1023之前,可以获取用户收听歌单的行为数据,根据用户收听歌单的行为数据确定每个训练样本歌单对应的正样本歌单和负样本歌单,该方法包括:

    步骤401、获取预设时间段内各用户收听的第一歌单集合。

    其中,预设时间段可以由技术人员进行设置,可以是一周或一个月等等,此处不对具体的时间段长度进行限定。用户收听的第一歌单集合即为用户在预设的时间段内听过的所有歌单的集合。

    步骤402、对于每个用户收听的第一歌单集合中,删除第一歌单集合中收听时长未在预设收听时长范围内的第一歌单,得到第二歌单集合。

    在实施中,由于有些用户选择收听某个歌单之后,可能由于歌单中的歌曲并不是自己喜爱的风格,所以在听了很短的时间之后就切换到其他的歌单,也有一些用户可能仅是为了在某些场合播放音乐会随机选择一些歌单并循环播放,例如在商场中播放背景音乐。所以技术人员可以通过计算用户平均收听歌单的时长,设置对应的收听时长范围,然后将每个用户收听的第一歌单集合中,删除收听时长未在预设收听时长范围内的第一歌单,得到每个用户的听歌单行为集合,即第二歌单集合。另外还可以清除第二歌单集合中无意义命名的歌单以及缺少分类标签的歌单,其中无意义命名的歌单的歌单名称可以预先存储在服务器中,当歌单的名称为预先存储的无意义命名的歌单名称时,则可以删除对应的歌单。

    步骤403、对于每个第二歌单集合,确定第二歌单集合中收听次数超过第一预设次数的第二歌单,基于第二歌单的收听次数以及第一预设次数与删除概率的对应关系,确定第二歌单对应的删除概率,基于每个第二歌单对应的删除概率,对第二歌单集合进行歌单删减处理,得到每个第三歌单集合。

    在实施中,由于一些歌单是热门歌单,即该歌单的收听次数超过了第一预设次数。例如,收听次数超过了100万的歌单为热门歌单。而由于热门歌单的收听次数较多,所以热门歌单可能会出现在各个用户的第二歌单集合中。也就是说,即使歌曲的风格差异较大的两个热门歌单,也有可能同时存在于多个第二歌单集合中,这样会影响后续确定正样本歌单对的准确性。所以技术人员可以根据歌单的收听次数设置对应的删除概率,对于每个用户对应的第二歌单集合,可以将第二歌单中的热门歌单根据预设的收听次数与删除概率的对应关系确定热门歌单对应的删除概率值,然后根据删除概率对热门歌单进行删除,以降低第二歌单集合中包括热门歌单的概率,然后将进行歌单删减处理之后的第二歌单集合确定为第三歌单集合。例如,在获取的1000个用户的第二歌单集合中,热门歌单a在500个第二歌单集合中出现,且确定热门歌单a的删除概率为50%,则对热门歌单a进行歌单删除处理之后,包括热门歌单a第三歌单集合的数量可以大概为250个。这样,通过设置删除概率对歌单集合中的热门歌单进行删除处理,能够降低将热门歌单在歌单集合中存在的概率,以避免后续步骤404处理时,可能将不同风格的热门歌单确定为正样本歌单对。

    步骤404、将任一歌单确定为目标样本歌单,将与目标样本歌单同时存在于同一第三歌单集合的次数超过第二预设次数的歌单确定为目标样本歌单对应的正样本歌单,将第三歌单集合中除正样本歌单之外的其他歌单确定为目标样本歌单对应的负样本歌单。

    在实施中,对于任一歌单,如果存在该歌单同时存在于同一第三歌单集合的次数超过第二预设次数的歌单,也就说同时收听这两个歌单的用户比较多,则可以将这两个歌单确定为正样本歌单对,在所有第三歌单集合中,可以将除正样本歌单对之外的歌单确定为该歌单的负样本歌单。

    本申请实施例通过获取各个用户对歌单的收听行为数据,根据用户对歌单的收听行为数据对用户收听的歌单集合进行筛选,然后根据用户对筛选之后的歌单的收听数据确定相关联的正样本歌单对和非关联的负样本歌单对,从而为歌曲特征提取模型提供训练样本。

    上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。

    图5是本申请实施例提供的确定关联歌单的装置结构示意图,该装置可以是上述实施例中的服务器,该装置包括:

    第一确定模块510,用于确定目标歌单的歌单描述信息对应的描述信息特征向量,并确定所述目标歌单中包括的各歌曲对应的歌曲特征向量,其中,所述歌曲对应的歌曲特征向量用于表示所述歌曲在歌单库中所归属的一个或多个歌单;

    第二确定模块520,用于基于所述歌曲特征向量和所述描述信息特征向量,确定所述目标歌单的歌单特征向量;

    第三确定模块530,用于确定所述目标歌单的歌单特征向量与所述歌单库中除所述目标歌单外的其他歌单的歌单特征向量的相似度,将所述相似度中满足预设条件的目标相似度对应的其他歌单确定为所述目标歌单的关联歌单。

    可选的,所述歌单描述信息包括歌单名称和歌单的分类标签;

    所述第一确定模块510,用于:

    基于预先设置的词组与词组向量的对应关系,确定所述目标歌单的歌单名称中包括的各词组对应的词组向量;基于预设的分类标签与预设标签向量中各位置的对应关系,确定所述目标歌单的至少一个分类标签对应的第一位置,将所述预设标签向量中所述第一位置的数值设置为第一数值,将所述预设标签向量中除所述第一位置之外的其他位置的数值设置为第二数值,得到所述目标歌单的至少一个标签对应的标签向量;

    基于预先设置的歌曲与歌曲特征向量的对应关系,确定所述目标歌单中包括的各歌曲对应的歌曲特征向量。

    可选的,所述第二确定模块520,用于:

    将所述歌曲特征向量和所述描述信息特征向量组成合成向量,将所述合成向量输入到经过训练的歌单特征提取模型,得到所述目标歌单的歌单特征向量。

    可选的,所述第二确定模块520,还用于:

    获取目标样本歌单的第一合成向量、所述目标样本歌单对应的正样本歌单的第二合成向量、以及所述目标样本歌单对应的负样本歌单的第三合成向量,其中,所述正样本歌单为所述目标样本歌单的关联歌单,所述负样本歌单为所述目标样本歌单的非关联歌单;

    将所述第一合成向量、所述第二合成向量以及所述第三合成向量,分别输入到所述待训练的歌单特征提取模型中,得到所述目标样本歌单对应的第一歌单特征向量、所述正样本歌单对应的第二歌单特征向量以及所述负样本歌单对应的第三歌单特征向量;

    基于预设的损失函数确定所述第一歌曲特征向量、所述第二歌曲特征向量以及所述第三歌曲特征向量对应的残差值,基于所述残差值对所述待训练的歌单特征提取模型进行训练,得到训练后的歌单特征提取模型。

    可选的,所述第二确定模块520,还用于:

    获取预设时间段内各用户收听的第一歌单集合;

    对于每个用户收听的第一歌单集合,删除所述第一歌单集合中收听时长未在预设收听时长范围内的第一歌单,得到第二歌单集合;

    对于每个第二歌单集合,确定所述第二歌单集合中收听次数超过第一预设次数的第二歌单,基于所述第二歌单的收听次数以及第一预设次数与删除概率的对应关系,确定所述第二歌单对应的删除概率,基于每个第二歌单对应的删除概率,对所述第二歌单集合进行歌单删减处理,得到每个第三歌单集合;

    将任一歌单确定为目标样本歌单,将与所述目标样本歌单同时存在于同一第三歌单集合的次数超过第二预设次数的歌单确定为所述目标样本歌单对应的正样本歌单,将所述第三歌单集合中除所述正样本歌单之外的其他歌单确定为所述目标样本歌单对应的负样本歌单。

    需要说明的是:上述实施例提供的确定关联歌单的装置在确定关联歌单时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的确定关联歌单的装置与确定关联歌单的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

    图6是本申请实施例提供的一种服务器的结构示意图,该服务器600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessingunits,cpu)601和一个或一个以上的存储器602,其中,所述存储器602中存储有至少一条指令,所述至少一条指令由所述处理器601加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。

    在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述实施例中确定关联歌单的方法。该计算机可读存储介质可以是非暂态的。例如,所述计算机可读存储介质可以是rom(read-onlymemory,只读存储器,)、ram(randomaccessmemory,随机存取存储器)、cd-rom、磁带、软盘和光数据存储设备等。

    本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

    以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。


    技术特征:

    1.一种确定关联歌单的方法,其特征在于,所述方法包括:

    确定目标歌单的歌单描述信息对应的描述信息特征向量,并确定所述目标歌单中包括的各歌曲对应的歌曲特征向量,其中,所述歌曲对应的歌曲特征向量用于表示所述歌曲在歌单库中所归属的一个或多个歌单;

    基于所述歌曲特征向量和所述描述信息特征向量,确定所述目标歌单的歌单特征向量;

    确定所述目标歌单的歌单特征向量与所述歌单库中除所述目标歌单外的其他歌单的歌单特征向量的相似度,将所述相似度中满足预设条件的目标相似度对应的其他歌单确定为所述目标歌单的关联歌单。

    2.根据权利要求1所述的方法,其特征在于,所述歌单描述信息包括歌单名称和歌单的分类标签;

    所述确定目标歌单的歌单描述信息对应的描述信息特征向量,包括:

    基于预先设置的词组与词组向量的对应关系,确定所述目标歌单的歌单名称中包括的各词组对应的词组向量;

    基于预设的分类标签与预设标签向量中各位置的对应关系,确定所述目标歌单的至少一个分类标签对应的第一位置,将所述预设标签向量中所述第一位置的数值设置为第一数值,将所述预设标签向量中除所述第一位置之外的其他位置的数值设置为第二数值,得到所述目标歌单的至少一个标签对应的标签向量;

    所述确定所述目标歌单中包括的各歌曲对应的歌曲特征向量,包括:

    基于预先设置的歌曲与歌曲特征向量的对应关系,确定所述目标歌单中包括的各歌曲对应的歌曲特征向量。

    3.根据权利要求1所述的方法,其特征在于,所述基于所述歌曲特征向量和所述描述信息特征向量,确定所述目标歌单的歌单特征向量,包括:

    将所述歌曲特征向量和所述描述信息特征向量组成合成向量,将所述合成向量输入到经过训练的歌单特征提取模型,得到所述目标歌单的歌单特征向量。

    4.根据权利要求3所述的方法,其特征在于,所述将所述合成向量输入到经过训练的歌单特征提取模型,得到所述目标歌单的歌单特征向量之前,所述方法还包括:

    获取目标样本歌单的第一合成向量、所述目标样本歌单对应的正样本歌单的第二合成向量以及所述目标样本歌单对应的负样本歌单的第三合成向量,其中,所述正样本歌单为所述目标样本歌单的关联歌单,所述负样本歌单为所述目标样本歌单的非关联歌单;

    将所述第一合成向量、所述第二合成向量以及所述第三合成向量,分别输入到所述待训练的歌单特征提取模型中,得到所述目标样本歌单对应的第一歌单特征向量、所述正样本歌单对应的第二歌单特征向量以及所述负样本歌单对应的第三歌单特征向量;

    基于预设的损失函数确定所述第一歌曲特征向量、所述第二歌曲特征向量以及所述第三歌曲特征向量对应的残差值,基于所述残差值对所述待训练的歌单特征提取模型进行训练,得到训练后的歌单特征提取模型。

    5.根据权利要求4所述的方法,其特征在于,所述获取目标样本歌单的第一合成向量、所述目标样本歌单对应的正样本歌单的第二合成向量以及所述目标样本歌单对应的负样本歌单的第三合成向量之前,所述方法还包括:

    获取预设时间段内各用户收听的第一歌单集合;

    对于每个用户收听的第一歌单集合,删除所述第一歌单集合中收听时长未在预设收听时长范围内的第一歌单,得到第二歌单集合;

    对于每个第二歌单集合,确定所述第二歌单集合中收听次数超过第一预设次数的第二歌单,基于所述第二歌单的收听次数以及第一预设次数与删除概率的对应关系,确定所述第二歌单对应的删除概率,基于每个第二歌单对应的删除概率,对所述第二歌单集合进行歌单删减处理,得到每个第三歌单集合;

    将任一歌单确定为目标样本歌单,将与所述目标样本歌单同时存在于同一第三歌单集合的次数超过第二预设次数的歌单确定为所述目标样本歌单对应的正样本歌单,将所述第三歌单集合中除所述正样本歌单之外的其他歌单确定为所述目标样本歌单对应的负样本歌单。

    6.一种确定关联歌单的装置,其特征在于,所述装置包括:

    第一确定模块,用于确定目标歌单的歌单描述信息对应的描述信息特征向量,并确定所述目标歌单中包括的各歌曲对应的歌曲特征向量,其中,所述歌曲对应的歌曲特征向量用于表示所述歌曲在歌单库中所归属的一个或多个歌单;

    第二确定模块,用于基于所述歌曲特征向量和所述描述信息特征向量,确定所述目标歌单的歌单特征向量;

    第三确定模块,用于确定所述目标歌单的歌单特征向量与所述歌单库中除所述目标歌单外的其他歌单的歌单特征向量的相似度,将所述相似度中满足预设条件的目标相似度对应的其他歌单确定为所述目标歌单的关联歌单。

    7.根据权利要求6所述的装置,其特征在于,所述歌单描述信息包括歌单名称和歌单的分类标签;

    所述第一确定模块,用于:

    基于预先设置的词组与词组向量的对应关系,确定所述目标歌单的歌单名称中包括的各词组对应的词组向量;基于预设的分类标签与预设标签向量中各位置的对应关系,确定所述目标歌单的至少一个分类标签对应的第一位置,将所述预设标签向量中所述第一位置的数值设置为第一数值,将所述预设标签向量中除所述第一位置之外的其他位置的数值设置为第二数值,得到所述目标歌单的至少一个标签对应的标签向量;

    基于预先设置的歌曲与歌曲特征向量的对应关系,确定所述目标歌单中包括的各歌曲对应的歌曲特征向量。

    8.根据权利要求6所述的装置,其特征在于,所述第二确定模块,用于:

    将所述歌曲特征向量和所述描述信息特征向量组成合成向量,将所述合成向量输入到经过训练的歌单特征提取模型,得到所述目标歌单的歌单特征向量。

    9.根据权利要求8所述的装置,其特征在于,所述第二确定模块,还用于:

    获取目标样本歌单的第一合成向量、所述目标样本歌单对应的正样本歌单的第二合成向量、以及所述目标样本歌单对应的负样本歌单的第三合成向量,其中,所述正样本歌单为所述目标样本歌单的关联歌单,所述负样本歌单为所述目标样本歌单的非关联歌单;

    将所述第一合成向量、所述第二合成向量以及所述第三合成向量,分别输入到所述待训练的歌单特征提取模型中,得到所述目标样本歌单对应的第一歌单特征向量、所述正样本歌单对应的第二歌单特征向量以及所述负样本歌单对应的第三歌单特征向量;

    基于预设的损失函数确定所述第一歌曲特征向量、所述第二歌曲特征向量以及所述第三歌曲特征向量对应的残差值,基于所述残差值对所述待训练的歌单特征提取模型进行训练,得到训练后的歌单特征提取模型。

    10.根据权利要求9所述的装置,其特征在于,所述第二确定模块,还用于:

    获取预设时间段内各用户收听的第一歌单集合;

    对于每个用户收听的第一歌单集合,删除所述第一歌单集合中收听时长未在预设收听时长范围内的第一歌单,得到第二歌单集合;

    对于每个第二歌单集合,确定所述第二歌单集合中收听次数超过第一预设次数的第二歌单,基于所述第二歌单的收听次数以及第一预设次数与删除概率的对应关系,确定所述第二歌单对应的删除概率,基于每个第二歌单对应的删除概率,对所述第二歌单集合进行歌单删减处理,得到每个第三歌单集合;

    将任一歌单确定为目标样本歌单,将与所述目标样本歌单同时存在于同一第三歌单集合的次数超过第二预设次数的歌单确定为所述目标样本歌单对应的正样本歌单,将所述第三歌单集合中除所述正样本歌单之外的其他歌单确定为所述目标样本歌单对应的负样本歌单。

    11.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至权利要求5任一项所述的确定关联歌单的方法所执行的操作。

    12.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至权利要求5任一项所述的确定关联歌单的方法所执行的操作。

    技术总结
    本申请公开了一种确定关联歌单的方法、装置、设备及存储介质,属于互联网技术领域。所述方法包括:确定目标歌单的歌单描述信息对应的描述信息特征向量,并确定所述目标歌单中包括的各歌曲对应的歌曲特征向量,其中,所述歌曲对应的歌曲特征向量用于表示所述歌曲在歌单库中所归属的一个或多个歌单;基于所述歌曲特征向量和所述描述信息特征向量,确定所述目标歌单的歌单特征向量;确定所述目标歌单的歌单特征向量与所述歌单库中除所述目标歌单外的其他歌单的歌单特征向量的相似度,将所述相似度中满足预设条件的目标相似度对应的其他歌单确定为所述目标歌单的关联歌单。采用本申请可以提高确定关联歌单的准确度。

    技术研发人员:萧永乐;顾旻玮
    受保护的技术使用者:腾讯音乐娱乐科技(深圳)有限公司
    技术研发日:2020.12.01
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-21504.html

    最新回复(0)