CN113868463A - 推荐模型训练方法及装置 - Google Patents
推荐模型训练方法及装置 Download PDFInfo
- Publication number
- CN113868463A CN113868463A CN202111137062.3A CN202111137062A CN113868463A CN 113868463 A CN113868463 A CN 113868463A CN 202111137062 A CN202111137062 A CN 202111137062A CN 113868463 A CN113868463 A CN 113868463A
- Authority
- CN
- China
- Prior art keywords
- audio data
- data
- song
- audio
- feature vector
- 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
Images
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9536—Search customisation based on social or collaborative filtering
-
- 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/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Library & Information Science (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种推荐模型训练方法及装置,该方法包括:基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,第一类型和第二类型不同;获取每个歌曲三元组数据中包括的各个音频数据对应的梅尔频谱特征数据;基于神经网络确定每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的各个音频特征向量,并根据各个音频特征向量确定神经网络的三元损失函数的值;根据三元损失函数的值更新神经网络的网络参数,以得到更新后神经网络作为推荐模型。采用本申请实施例,可提高音乐推荐的准确度,提升用户满意度。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种推荐模型训练方法及装置。
背景技术
随着音乐多媒体产业的数字化发展,日益增加的在线流媒体音乐服务资源需要用户耗费大量的时间和精力去搜寻自己喜爱的歌曲,而音乐个性化推荐技术则可以转变这种传统的音乐资源获取方式。得益于近年来深度学习技术和大数据科学的蓬勃发展,基于用户听歌行为(或称为用户的听歌行为数据),再结合协同过滤算法筛选出相似音乐推荐给用户,成为当前个性化音乐推荐的主要方式之一。但是,基于协同过滤的方法在部分缺乏用户听歌行为的推荐场景下存在局限性,音乐推荐的准确度不高。
发明内容
本申请实施例提供一种推荐模型训练方法及装置,可提高音乐推荐的准确度,提升用户满意度。
第一方面,本申请实施例提供了一种推荐模型训练方法,该方法包括:
基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
获取每个歌曲三元组数据中包括的各个音频数据的梅尔频谱特征数据;
基于神经网络确定所述每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的音频特征向量,并根据各个所述音频特征向量确定所述神经网络的三元损失函数的值;
根据所述三元损失函数的值更新所述神经网络的网络参数,以得到更新后神经网络,其中所述更新后神经网络作为推荐模型。
结合第一方面,在一种可能的实施方式中,所述基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,包括:
获取所述参考用户的听歌行为数据;
从所述听歌行为数据中的用户收藏音频中获取两首不重复的歌曲作为一个歌曲三元组数据中的第一音频数据和第二音频数据;
从所述听歌行为数据中的除所述用户收藏音频之外的其他音频中获取一首歌曲作为一个歌曲三元组数据中的第三音频数据。
结合第一方面,在一种可能的实施方式中,所述获取每个歌曲三元组数据中包括的各个音频数据的梅尔频谱特征数据,包括:
针对每个歌曲三元组数据中的第一音频数据、第二音频数据和第三音频数据,提取组成每个音频数据的多个音频帧中每个音频帧的梅尔频谱数据;
从每个音频数据包括的多个音频帧的梅尔频谱数据中获取目标梅尔频谱数据,所述目标梅尔频谱数据包括预设起始帧与预设结束帧之间的连续多个梅尔频谱数据;
将各个音频数据对应的目标梅尔频谱数据确定为所述各个音频数据对应的梅尔频谱特征数据。
结合第一方面,在一种可能的实施方式中,所述三元损失函数满足:
loss=max(||arrayi-arrayj||-||arrayi-arrayk||+α,0);
其中,所述loss表示所述三元损失函数的值,所述arrayi表示第一音频数据对应的音频特征向量,所述arrayj表示第二音频数据对应的音频特征向量,所述arrayk表示第三音频数据对应的音频特征向量,所述α表示最小间隙。
结合第一方面,在一种可能的实施方式中,所述方法还包括:
从目标推荐用户的听歌行为数据中获取所述目标推荐用户关联的第一类型的至少一个音频数据;
将所述目标推荐用户关联的第一类型的至少一个音频数据输入所述更新后神经网络,以获取所述至少一个音频数据中每个音频数据的音频特征向量;
根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
结合第一方面,在一种可能的实施方式中,所述方法还包括:
确定目标推荐用户的用户偏好特征向量;
所述根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,包括:
根据所述用户偏好特征向量和所述至少一个音频数据中各个音频特征向量生成融合特征向量;
根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
结合第一方面,在一种可能的实施方式中,所述确定目标推荐用户的用户偏好特征向量,包括:
基于目标推荐用户的听歌行为数据确定用户画像数据;
从所述用户画像数据中提取出用户感兴趣的歌曲类型数据和用户感兴趣的歌曲语种数据;
将所述歌曲类型数据转换为用户偏好歌曲类型特征向量,以及将所述歌曲语种数据转换为用户偏好歌曲语种特征向量;
将所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量确定为所述用户偏好特征向量。
结合第一方面,在一种可能的实施方式中,所述根据所述用户偏好特征向量和所述至少一个音频数据中各个音频特征向量生成融合特征向量,包括:
确定所述至少一个音频数据中各个音频特征向量的音频特征向量平均值;
对所述音频特征向量平均值、所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量进行拼接,以生成融合特征向量。
结合第一方面,在一种可能的实施方式中,所述根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,包括:
针对所述候选音频数据集合中每个候选音频数据,通过所述更新后神经网络获取所述每个候选音频数据的梅尔频谱特征数据对应的音频特征向量;
获取所述每个候选音频数据所属歌曲类型对应的歌曲类型特征向量和所述每个候选音频数据所属歌曲语种对应的歌曲语种特征向量;
根据各个候选音频数据的音频特征向量、歌曲类型特征向量和歌曲语种特征向量确定所述各个候选音频数据对应的特征向量;
计算所述融合特征向量与各个候选音频数据对应的特征向量之间的相似度值,并对确定出的多个相似度值进行降序排列,以将降序排序后的前n个相似度值对应的n个候选音频数据作为目标音频数据,n为大于0的整数。
第二方面,本申请实施例提供了一种推荐模型训练方法,该方法包括:
从目标推荐用户的听歌行为数据中获取所述目标推荐用户关联的第一类型的至少一个音频数据;
将所述目标推荐用户关联的第一类型的至少一个音频数据输入预先训练完成的推荐模型,以获取所述至少一个音频数据中每个音频数据的音频特征向量;其中,所述推荐模型是基于歌曲三元组数据训练得到,所述歌曲三元组数据包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
结合第二方面,在一种可能的实施方式中,所述方法还包括:
确定所述目标推荐用户的用户偏好特征向量;
所述根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,包括:
根据所述用户偏好特征向量和所述至少一个音频数据中各个音频特征向量生成融合特征向量;
根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
结合第二方面,在一种可能的实施方式中,所述确定目标推荐用户的用户偏好特征向量,包括:
基于目标推荐用户的听歌行为数据确定用户画像数据;
从所述用户画像数据中提取出用户感兴趣的歌曲类型数据和用户感兴趣的歌曲语种数据;
将所述歌曲类型数据转换为用户偏好歌曲类型特征向量,以及将所述歌曲语种数据转换为用户偏好歌曲语种特征向量;
将所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量确定为所述用户偏好特征向量。
结合第二方面,在一种可能的实施方式中,所述根据所述用户偏好特征向量和各个音频特征向量生成融合特征向量,包括:
确定所述各个音频特征向量的音频特征向量平均值;
对所述音频特征向量平均值、所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量进行拼接,以生成融合特征向量。
结合第二方面,在一种可能的实施方式中,所述根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,包括:
针对所述候选音频数据集合中每个候选音频数据,通过所述更新后神经网络获取所述每个候选音频数据的梅尔频谱特征数据对应的音频特征向量;
获取所述每个候选音频数据所属歌曲类型对应的歌曲类型特征向量和所述每个候选音频数据所属歌曲语种对应的歌曲语种特征向量;
根据各个候选音频数据的音频特征向量、歌曲类型特征向量和歌曲语种特征向量确定所述各个候选音频数据对应的特征向量;
计算所述融合特征向量与各个候选音频数据对应的特征向量之间的相似度值,并对确定出的多个相似度值进行降序排列,以将降序排序后的前n个相似度值对应的n个候选音频数据作为目标音频数据,n为大于0的整数。
第三方面,本申请实施例提供了一种推荐模型训练装置,该装置包括:
处理单元,用于基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
获取单元,用于获取每个歌曲三元组数据中包括的各个音频数据的梅尔频谱特征数据;
所述处理单元,用于基于神经网络确定所述每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的音频特征向量,并根据各个所述音频特征向量确定所述神经网络的三元损失函数的值;
所述处理单元,用于根据所述三元损失函数的值更新所述神经网络的网络参数,以得到更新后神经网络,其中所述更新后神经网络作为推荐模型。
结合第三方面,在一种可能的实施方式中,所述处理单元用于:
获取所述参考用户的听歌行为数据;
从所述听歌行为数据中的用户收藏音频中获取两首不重复的歌曲作为一个歌曲三元组数据中的第一音频数据和第二音频数据;
从所述听歌行为数据中的除所述用户收藏音频之外的其他音频中获取一首歌曲作为一个歌曲三元组数据中的第三音频数据。
结合第三方面,在一种可能的实施方式中,所述获取单元用于:
针对每个歌曲三元组数据中的第一音频数据、第二音频数据和第三音频数据,提取组成每个音频数据的多个音频帧中每个音频帧的梅尔频谱数据;
从每个音频数据包括的多个音频帧的梅尔频谱数据中获取目标梅尔频谱数据,所述目标梅尔频谱数据包括预设起始帧与预设结束帧之间的连续多个梅尔频谱数据;
将各个音频数据对应的目标梅尔频谱数据确定为所述各个音频数据对应的梅尔频谱特征数据。
结合第三方面,在一种可能的实施方式中,所述三元损失函数满足:
loss=max(||arrayi-arrayj||-||arrayi-arrayk||+α,0);
其中,所述loss表示所述三元损失函数的值,所述arrayi表示第一音频数据对应的音频特征向量,所述arrayj表示第二音频数据对应的音频特征向量,所述arrayk表示第三音频数据对应的音频特征向量,所述α表示最小间隙。
结合第三方面,在一种可能的实施方式中,所述处理单元用于:
从目标推荐用户的听歌行为数据中获取所述目标推荐用户关联的第一类型的至少一个音频数据;
将所述目标推荐用户关联的第一类型的至少一个音频数据输入所述更新后神经网络,以获取所述至少一个音频数据中每个音频数据的音频特征向量;
根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
结合第三方面,在一种可能的实施方式中,所述处理单元用于:
确定目标推荐用户的用户偏好特征向量;
所述根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,包括:
根据所述用户偏好特征向量和所述至少一个音频数据中各个音频特征向量生成融合特征向量;
根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
结合第三方面,在一种可能的实施方式中,所述获取单元用于:
基于目标推荐用户的听歌行为数据确定用户画像数据;
从所述用户画像数据中提取出用户感兴趣的歌曲类型数据和用户感兴趣的歌曲语种数据;
将所述歌曲类型数据转换为用户偏好歌曲类型特征向量,以及将所述歌曲语种数据转换为用户偏好歌曲语种特征向量;
将所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量确定为所述用户偏好特征向量。
结合第三方面,在一种可能的实施方式中,所述处理单元用于:
确定所述至少一个音频数据中各个音频特征向量的音频特征向量平均值;
对所述音频特征向量平均值、所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量进行拼接,以生成融合特征向量。
结合第三方面,在一种可能的实施方式中,所述处理单元用于:
针对所述候选音频数据集合中每个候选音频数据,通过所述更新后神经网络获取所述每个候选音频数据的梅尔频谱特征数据对应的音频特征向量;
获取所述每个候选音频数据所属歌曲类型对应的歌曲类型特征向量和所述每个候选音频数据所属歌曲语种对应的歌曲语种特征向量;
根据各个候选音频数据的音频特征向量、歌曲类型特征向量和歌曲语种特征向量确定所述各个候选音频数据对应的特征向量;
计算所述融合特征向量与各个候选音频数据对应的特征向量之间的相似度值,并对确定出的多个相似度值进行降序排列,以将降序排序后的前n个相似度值对应的n个候选音频数据作为目标音频数据,n为大于0的整数。
第四方面,本申请实施例提供了一种推荐模型训练装置,该装置包括:
获取单元,用于从目标推荐用户的听歌行为数据中获取所述目标推荐用户关联的第一类型的至少一个音频数据;
处理单元,用于将所述目标推荐用户关联的第一类型的至少一个音频数据输入预先训练完成的推荐模型,以获取所述至少一个音频数据中每个音频数据的音频特征向量;其中,所述推荐模型是基于歌曲三元组数据训练得到,所述歌曲三元组数据包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
所述处理单元,用于根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
结合第四方面,在一种可能的实施方式中,所述处理单元具体用于:
确定所述目标推荐用户的用户偏好特征向量;
所述根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,包括:
根据所述用户偏好特征向量和所述至少一个音频数据中各个音频特征向量生成融合特征向量;
根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
结合第四方面,在一种可能的实施方式中,所述处理单元具体用于:
基于目标推荐用户的听歌行为数据确定用户画像数据;
从所述用户画像数据中提取出用户感兴趣的歌曲类型数据和用户感兴趣的歌曲语种数据;
将所述歌曲类型数据转换为用户偏好歌曲类型特征向量,以及将所述歌曲语种数据转换为用户偏好歌曲语种特征向量;
将所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量确定为所述用户偏好特征向量。
结合第四方面,在一种可能的实施方式中,所述处理单元具体用于:
确定所述各个音频特征向量的音频特征向量平均值;
对所述音频特征向量平均值、所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量进行拼接,以生成融合特征向量。
结合第四方面,在一种可能的实施方式中,所述处理单元具体用于:
针对所述候选音频数据集合中每个候选音频数据,通过所述更新后神经网络获取所述每个候选音频数据的梅尔频谱特征数据对应的音频特征向量;
获取所述每个候选音频数据所属歌曲类型对应的歌曲类型特征向量和所述每个候选音频数据所属歌曲语种对应的歌曲语种特征向量;
根据各个候选音频数据的音频特征向量、歌曲类型特征向量和歌曲语种特征向量确定所述各个候选音频数据对应的特征向量;
计算所述融合特征向量与各个候选音频数据对应的特征向量之间的相似度值,并对确定出的多个相似度值进行降序排列,以将降序排序后的前n个相似度值对应的n个候选音频数据作为目标音频数据,n为大于0的整数。
第五方面,本申请实施例提供了一种终端设备,该终端设备包括处理器、存储器和收发器,该处理器、存储器和收发器相互连接。该存储器用于存储支持该终端设备执行上述第一方面和/或第一方面任一种可能的实现方式提供的方法的计算机程序,以及执行上述第二方面和/或第二方面任一种可能的实现方式提供的方法的计算机程序。该计算机程序包括程序指令,该处理器和收发器被配置用于调用上述程序指令,执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令当被处理器执行时使该处理器执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法,以及执行上述第二方面和/或第二方面任一种可能的实现方式提供的方法。
在本申请实施例中,基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括第一类型(即用户感兴趣)的第一音频数据和第二音频数据,以及第二类型(即用户不感兴趣)的第三音频数据。获取每个歌曲三元组数据中包括的各个音频数据对应的梅尔频谱特征数据。基于神经网络确定每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的各个音频特征向量,并根据各个音频特征向量确定神经网络的三元损失函数的值。根据三元损失函数的值更新神经网络的网络参数,以通过更新后神经网络进行音乐推荐。在本申请实施例中,通过用户听歌偏好数据(即歌曲三元组数据)训练神经网络,可建立起用户偏好与歌曲音频本身特征之间的共性,即从音频中提取潜在的用户关联性,摆脱了在音乐推荐使用阶段完全依靠用户行为数据的局限性,提升歌曲推荐准确度和用户满意度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的音频数据处理的场景示意图;
图2是本申请实施例提供的推荐模型训练方法的流程示意图;
图3是本申请实施例提供的神经网络的训练过程示意图;
图4是本申请实施例提供的基于推荐模型的音频推荐方法的流程示意图;
图5是本申请实施例提供的模型使用阶段的示意图;
图6是本申请实施例提供的推荐模型训练装置的结构示意图;
图7是本申请实施例提供的终端设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例涉及人工智能(Artificial Intelligence,AI)及机器学习(Machine Learning,ML)。其中,AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,其主要通过了解智能的实质,生产出一种新的能以人类智能相似的方式做出反应的智能机器,使得智能机器具有感知、推理与决策等多种功能。
AI技术是一门综合学科,其主要包括计算机视觉技术(Computer Vision,CV)、语音处理技术、自然语言处理技术以及机器学习(Machine Learning,ML)/深度学习等几大方向。其中,计算机视觉技术是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统;其通常包括音频数据处理、视频处理、视频语义理解、视频内容/行为识别等技术。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是AI的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习/深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
基于AI技术中的计算机视觉技术和机器学习技术,本申请实施例提供了一种推荐模型训练方法,该方法首先通过对用户听歌行为数据的统计分析,获取不同用户喜好的歌曲列表。然后通过随机负采样的方式为用户匹配不喜好歌曲,构建出包含两首喜好歌曲和一首不喜好歌曲的三元组数据集。通过音频预处理工具提取歌曲的梅尔频谱图,再结合三元损失函数的度量学习方式,利用深度学习神经网络(例如本申请实施例皆以卷积神经网络为例进行示意性说明)对歌曲的梅尔频谱图进行训练,获得最终的包含高层语义的40维嵌入向量(即音频特征向量)。最后,将音频特征向量与推荐系统原本的用户侧特征向量(即用户偏好歌曲类型特征向量和用户偏好歌曲语种特征向量)结合,即可实现挖掘歌曲音频自身特征提升音乐推荐效果的方案,通过流媒体等音乐服务对用户偏好进行个性化推荐。
具体地,在训练阶段,可以基于参考用户的听歌行为数据构建大量例如至少100万个三元组数据,其中每个三元组数据中包括用户喜爱的两首音频数据,以及用户不喜爱的一首音频数据;获取所有音频数据对应的梅尔频谱特征数据;对于每个三元组数据,基于神经网络(例如卷积神经网络,循环神经网络等,本申请实施例皆以卷积神经网络为例进行示意性说明)从获取的各个梅尔频谱特征数据提取音频特征向量,并根据各个音频特征向量在高维空间中的距离(例如欧式距离,曼哈顿距离等)计算三元损失函数的值;根据三元损失函数的值更新卷积神经网络的网络参数,以得到更新后的卷积神经网络。在使用阶段,针对候选音频数据集合(或描述为待推荐音频数据集合)中包括的每首候选音频数据(或描述为待推荐音频数据),可将候选音频数据的梅尔频谱特征数据输入到更新后的卷积神经网络,以通过该更新后的卷积神经网络得到对应的音频特征向量,并计算该音频特征向量与表征目标推荐用户听歌偏好的融合特征向量之间的距离,选取距离最近的一首或多首候选音频数据作为最相似的歌曲进行投放或推荐。其中,候选音频数据集合中可包括新发行的歌(即新歌)或冷歌(即播放量较少的歌曲)等,在此不做限制。采用本申请实施例,可解决音乐推荐领域中歌曲的冷启动问题,即新歌或小众歌曲因听歌用户数较少导致的推荐效果不精准的问题,提升用户满意度。
请参见图1,图1是本申请实施例提供的音频数据处理的一场景示意图。如图1所示,音频数据处理场景中包括终端设备101和服务器102。其中,终端设备101为用户所使用的设备,终端设备101可以包括但不限于:智能手机(如Android手机、iOS手机等)、平板电脑、便携式个人计算机、移动互联网设备(Mobile Internet Devices,MID)等设备;终端设备配置有显示装置,显示装置也可为显示器、显示屏、触摸屏等等,触摸屏也可为触控屏、触控面板等等,本申请实施例不做限定。
服务器102是指能够对终端设备101提供的听歌行为数据进行处理的后台设备,在根据听歌行为数据得到音乐推荐数据后,服务器102可以向终端设备101返回该音乐推荐数据。服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。此外,还可以将多个服务器组成为一个区块链网络,每个服务器为区块链网络中的一个节点。终端设备101和服务器102之间可以通过有线通信或者无线通信方式进行直接或间接地连接,本申请在此不做限制。
需要说明的是,图1所示的模型处理场景中终端设备和服务器的数量仅为举例,例如,终端设备和服务器的数量可以为多个,本申请并不对终端设备和服务器的数量进行限定。为方便描述,下面将以服务器为例进行说明。也就是说,本方案既可以通过服务器后台处理,也可以通过云端处理,处理效率高,运行速度快。
下面将结合图2至图7分别对本申请实施例提供的方法及相关装置分别进行详细说明。
请参见图2,图2为本申请实施例提供的推荐模型训练方法的流程示意图。本申请实施例提供的方法可以包括如下步骤S201至S204。
S201、基于参考用户的听歌行为数据构建至少一个歌曲三元组数据。
在一些可行的实施方式中,获取参考用户的听歌行为数据后,可基于参考用户的听歌行为数据构建至少一个歌曲三元组数据。其中,一个参考用户可基于一个参考用户标识进行标记,这里,参考用户标识可以是注册过某音乐软件的用户对应的用户账号等,在此不做限制。上述参考用户标识可以包括目标推荐用户对应的标识(为方便描述,简称目标推荐用户标识)等,在此不做限制。其中,目标推荐用户可以是任意一个音乐推荐的指向性对象,比如如果本次音乐推荐是针对用户A,此时目标推荐用户则为用户A;如果本次音乐推荐是针对用户B,此时目标推荐用户则为用户B。
其中,每个歌曲三元组数据中包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同。其中,第一类型的音频可以是用户感兴趣(即用户喜爱)的音频,第二类型的音频可以是用户不感兴趣(即用户不喜爱)的音频。因此,上述基于参考用户的听歌行为数据构建至少一个歌曲三元组数据可理解为:从听歌行为数据中的用户收藏音频中获取两首不重复的歌曲作为一个歌曲三元组数据中的第一音频数据和第二音频数据,从听歌行为数据中的除用户收藏音频之外的其他音频中获取一首歌曲作为一个歌曲三元组数据中的第三音频数据,进而,得到至少一个歌曲三元组数据。也就是说,每个歌曲三元组数据中包括用户感兴趣的第一音频数据和第二音频数据,以及用户不感兴趣的第三音频数据。具体地,在构建歌曲三元组数据时,可以根据预设抽取规则从听歌行为数据中的用户收藏音频中获取两首不重复的歌曲作为一个歌曲三元组数据中的第一音频数据和第二音频数据,以及从听歌行为数据中的除用户收藏音频之外的其他音频中随机获取一首歌曲作为一个歌曲三元组数据中的第三音频数据,其中,预设抽取规则可以是随机抽取,也可以是根据歌曲收藏时间从早到晚的顺序依次进行抽取等,在此不做限制。
其中,听歌行为数据可以是参考用户的用户在过去一段时间(例如,过去一段时间可以是当前时刻之前的24小时,或者,也可以是过去3天,或者也可以是过去一周,或者也可以是过去一个月、三个月等等,在此不做限制)的历史听歌数据和用户行为数据,其中,历史听歌数据中包括用户的歌单数据、用户听歌的时长数据、用户听歌的时段数据等数据,用户行为数据包括用户听歌“点红心”等收藏行为、歌曲循环播放行为、用户搜索行为等数据。因此,根据参考用户的听歌行为数据,可从用户的歌单数据中筛选出用户喜爱(或称为感兴趣)的歌曲列表和用户不喜欢(或称为不感兴趣)的歌曲列表。例如,可将歌单数据中被用户收藏的歌曲、用户循环播放的歌曲、用户累计听歌次数满足预设条件的歌曲或用户累计听歌时长大于预设时长的歌曲等确定为用户感兴趣的歌曲等,将歌单数据中被用户跳过的歌曲或听歌时长小于预设时长的歌曲确定为用户不感兴趣的歌曲。进一步地,可构建得到参考用户的歌曲三元组数据集。其中,歌曲三元组数据集中包括至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括用户感兴趣的第一音频数据和第二音频数据,以及用户不感兴趣的第三音频数据。也就是说,在构建任意一个歌曲三元组数据时,可从用户感兴趣的歌曲列表中随机选取出不重复的两首歌曲分别作为第一音频时间和第二音频数据,以及从用户不感兴趣的歌曲列表中随机选取一首歌曲作为第三音频数据。可选的,也可以从全曲库中随机负采样一首歌曲作为用户不喜爱的第三音频数据。其中,本申请实施例中所涉及的音频数据的文件格式可包括mp3、m4a、wav等,在此不做限制。
在本申请实施例中,一首歌曲(或称为一个音频数据)可基于一个歌曲标识(或称为音频标识)进行标记,也就是说,一个歌曲标识可唯一对应一首歌曲。其中,假设第一音频数据记为idi,第二音频数据记为idj,第三音频数据记为idk,因此,可将第一音频数据、第二音频数据和第三音频数据组合成代表用户偏好的歌曲三元组数据[idi,idj,idk]。其中,第一音频数据、第二音频数据和第三音频数据在歌曲三元组中的顺序可以随机调换,以增加数据分布的随机性。例如,歌曲三元组数据也可以为[idi,idk,idj],或者,该歌曲三元组数据也可以为[idk,idi,idj]等,随机调换方式具体根据根据实际场景确定,在此不做限制。为方便理解,以下本申请实施例皆以歌曲三元组数据为[idi,idj,idk]为例进行说明。
S202、获取每个歌曲三元组数据中包括的各个音频数据的梅尔频谱特征数据。
在一些可行的实施方式中,获取每个歌曲三元组数据中包括的各个音频数据对应的梅尔频谱特征数据可理解为:针对每个歌曲三元组数据中的第一音频数据、第二音频数据和第三音频数据,提取组成每个音频数据的多个音频帧中每个音频帧对应的梅尔频谱数据。进而,从每个音频数据包括的多个音频帧对应的多个梅尔频谱数据中获取目标梅尔频谱数据,其中,目标梅尔频谱数据包括预设起始帧与预设结束帧之间的连续多个梅尔频谱数据,进而,可以将各个音频数据对应的目标梅尔频谱数据确定为所述各个音频数据对应的梅尔频谱特征数据。也就是说,针对歌曲三元组数据集中的各个歌曲三元组数据,可对各个歌曲三元组数据中的每个音频数据进行音频预处理,以得到对应的梅尔频谱特征数据。为方便描述,这里以对一个音频数据(例如,第一音频数据)的预处理为例进行示意性说明。
具体地,可首先对第一音频数据进行分帧处理,以得到组成第一音频数据的多个音频帧,进而,提取每个音频帧的梅尔特征,该特征与人耳听觉感知接近,有利于神经网络(例如卷积神经网络等)从用户的听感角度获取相似的特征向量。在本申请实施例中,可通过对每个音频帧进行傅里叶变换,再将每个音频帧经傅里叶变换得到的线性频谱输入至梅尔滤波器组,可得到通过梅尔滤波器组输出的梅尔频谱图(即梅尔特征,也即梅尔频谱数据)。这里以构成128×N维的梅尔频谱图为例进行说明,其中,128表示梅尔滤波器组的数量,N表示音频的帧长。然后,从每个音频数据包括的多个音频帧对应的多个梅尔频谱数据中,获取预设起始帧与预设结束帧之间的连续多个梅尔频谱数据作为目标梅尔频谱数据,并将各个音频数据对应的目标梅尔频谱数据确定为所述各个音频数据对应的梅尔频谱特征数据。
例如,可以对上述梅尔频谱图在第430帧到1291帧范围内进行随机裁剪,即对音频的第10秒到30秒进行随机裁剪,以得到一段连续音频片段对应的一段梅尔频谱片段作为该音频数据对应的梅尔频谱特征数据。其中,上述一段连续音频片段的音频持续时长可以为连续10秒,或者也可以为连续15秒,20秒等等,具体根据实际应用场景确定,在此不做限制。为方便理解,本申请实施例以一段连续10秒的音频片段为例进行示意性说明。
举例来说,本申请实施例中的预设起始帧可以为第430帧,预设结束帧可以为第860帧,即可将第10秒至第20秒范围内的10秒音频片段对应的一个128×430维的梅尔频谱片段作为该音频数据对应的梅尔频谱特征数据。可选的,预设起始帧也可以为第645帧,预设结束帧也可以为第1075帧,即可将第15秒至第25秒范围内的10秒音频片段对应的一个128×430维的梅尔频谱片段作为该音频数据对应的梅尔频谱特征数据。可选的,预设起始帧也可以为第860帧,预设结束帧也可以为第1290帧,即可将第20秒至第30秒范围内的10秒音频片段对应的一个128×430维的梅尔频谱片段作为该音频数据对应的梅尔频谱特征数据等,在此不做限制。在本申请实施例中,将一个梅尔频谱片段作为一个完整音频数据对应的梅尔频谱特征数据,可降低后续在卷积神经网络中进行计算的计算复杂度,并增加卷积神经网络模型的泛化能力。
S203、基于神经网络确定每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的音频特征向量,并根据各个音频特征向量确定神经网络的三元损失函数的值。
在一些可行的实施方式中,当获取到每个歌曲三元组数据中包括的各个音频数据对应的梅尔频谱特征数据后,可进一步基于神经网络确定每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的音频特征向量,并根据各个音频特征向量确定神经网络的三元损失函数的值。其中,本申请实施例所涉及的神经网络可以是卷积神经网络、循环神经网络、BP(Back Propagation)神经网络等,在此不做限制。为方便理解,以下本申请实施例皆以卷积神经网络为例进行示意性说明。
示例性地,请参见图3,图3是本申请实施例提供的卷积神经网络的训练过程示意图。如图3所示,可将获取到的、表征用户偏好的歌曲三元组数据集中的各个歌曲三元组数据作为训练数据,并分别将歌曲三元组数据[idi,idj,idk]中每个音频数据经过步骤S202获得的梅尔频谱特征数据(如图3所示的梅尔频谱特征数据i,梅尔频谱特征数据j和梅尔频谱特征数据k)输入卷积神经网络,以分别获得三个对应的音频特征向量,即第一音频数据对应的音频特征向量i,第二音频数据对应的音频特征向量j和第三音频数据对应的音频特征向量k,为方便描述,可将音频特征向量i,音频特征向量j和音频特征向量k记为[arrayi,arrayj,arrayk],其中每个音频特征向量维度可以是1×40维,然后利用如下公式(1.1)所示的三元损失函数分别计算音频特征向量i(即arrayi)和音频特征向量j(即arrayj)之间的欧氏距离以及计算音频特征向量i(即arrayi)和音频特征向量k(即arrayk)之间的欧氏距离,从而促使卷积神经网络训练的过程中让前者音频特征向量(即用户感兴趣的第一音频数据对应的音频特征向量和第二音频数据对应的音频特征向量)相互靠近,后者音频特征向量(即用户感兴趣的第一音频数据对应的音频特征向量和用户不感兴趣的第三音频数据对应的音频特征向量)之间相互疏远,本质上使得卷积神经网络学习到用户喜爱歌曲之间的音频自身共性,不喜爱歌曲之间的音频自身显著差异性。当三元损失函数的数值随着训练不断进行而减小到稳定状态时,代表训练阶段的结束。
loss=max(||arrayi-arrayj||-||arrayi-arrayk||+α,0) (1.1)
其中,loss表示三元损失函数的值,arrayi表示第一音频数据对应的音频特征向量,arrayj表示第二音频数据对应的音频特征向量,arrayk表示第三音频数据对应的音频特征向量,α表示最小间隙。通常而言,α的取值可以为0.2。
可理解的,上述各个音频特征向量之间的距离除了可以是欧式距离,也可以是曼哈顿距离、切比雪夫距离等,具体根据实际应用场景,在此不做限制。
S204、根据三元损失函数的值更新神经网络的网络参数。
在一些可行的实施方式中,可以根据三元损失函数的值更新神经网络的网络参数,以得到更新后神经网络,进而通过更新后神经网络(例如卷积神经网络)进行音乐/音频推荐,即可将该更新后神经网络作为推荐模型用于音频推荐。也就是说,可利用如上公式(1.1)所示的三元损失函数分别计算音频特征向量i(即arrayi)和音频特征向量j(即arrayj)之间的欧氏距离以及计算音频特征向量i(即arrayi)和音频特征向量k(即arrayk)之间的欧氏距离,从而促使卷积神经网络训练的过程中让前者音频特征向量(即用户感兴趣的第一音频数据对应的音频特征向量和第二音频数据对应的音频特征向量)相互靠近,后者音频特征向量(即用户感兴趣的第一音频数据对应的音频特征向量和用户不感兴趣的第三音频数据对应的音频特征向量)之间相互疏远,本质上使得卷积神经网络学习到用户喜爱歌曲之间的音频自身共性,不喜爱歌曲之间的音频自身显著差异性。当三元损失函数的数值随着训练不断进行而减小到稳定状态时,代表训练阶段的结束,进而得到更新后神经网络,并将该更新后神经网络作为推荐模型。
在本申请实施例中,通过用户听歌偏好数据(即歌曲三元组数据)训练神经网络,以建立起用户听歌口味与歌曲音频本身特征之间的共性,直接从音频中提取潜在的用户关联性,有利于提高歌曲推荐的准确性,让用户享受到更符合自身偏好和口味的歌曲。
进一步地,可通过更新后卷积神经网络进行音乐推荐。下面将具体介绍基于更新后卷积神经网络进行音乐推荐的过程。请参见图4,图4是本申请实施例提供的基于推荐模型的音频推荐方法的流程示意图。本申请实施例提供的方法可以包括如下步骤S401至S403。
S401、从目标推荐用户的听歌行为数据中获取目标推荐用户关联的第一类型的至少一个音频数据。
在一些可行的实施方式中,从目标推荐用户的听歌行为数据中获取目标推荐用户关联的第一类型的至少一个音频数据。其中,第一类型的音频数据可以理解为目标推荐用户感兴趣的音频数据,也就是说,可基于目标推荐用户的听歌行为数据确定用户感兴趣的至少一个音频数据。其中,一个目标推荐用户一个用户,目标推荐用户可以是任意一个音乐推荐的指向性对象,比如如果本次音乐推荐是针对用户A,此时目标推荐用户则为用户A;如果本次音乐推荐是针对用户B,此时目标推荐用户则为用户B。
可选的,在一些可行的实施方式中,除了可以基于目标推荐用户的听歌行为数据确定用户感兴趣的至少一个音频数据,还可以基于目标推荐用户的听歌行为数据确定目标推荐用户的用户画像数据。该用户画像数据中可包括用户感兴趣的歌曲类型数据、用户感兴趣的歌曲语种数据,用户不感兴趣的歌曲类型数据、用户不感兴趣的歌曲语种数据等,在此不做限制。
S402、将目标推荐用户关联的第一类型的至少一个音频数据输入预先训练完成的推荐模型,以获取至少一个音频数据中每个音频数据的音频特征向量。
在一些可行的实施方式中,将目标推荐用户关联的第一类型的至少一个音频数据输入预先训练完成的推荐模型,即更新后神经网络(例如更新后卷积神经网络),进而可以获取更新后卷积神经网络输出的至少一个音频数据中每个音频数据的音频特征向量。其中,推荐模型是基于歌曲三元组数据训练得到,歌曲三元组数据包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,第一类型和第二类型不同。
可选的,在一些可行的实施方式中,除了通过更新后卷积神经网络获取至少一个音频数据中每个音频数据的梅尔频谱特征数据对应的音频特征向量,还可以进一步确定用户画像数据对应的用户偏好特征向量。进而根据用户偏好特征向量和至少一个音频特征向量生成融合特征向量,以根据融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从候选音频数据集合中确定出目标音频数据,以推荐给目标推荐用户的目标推荐用户。
其中,上述确定用户画像数据对应的用户偏好特征向量可理解为:从用户画像数据中提取出用户感兴趣的歌曲类型数据(即用户喜爱的歌曲类型,或描述为歌曲流派)和用户感兴趣的歌曲语种数据(即用户喜爱的歌曲语种)。将歌曲类型数据转换为用户偏好歌曲类型特征向量,以及将歌曲语种数据转换为用户偏好歌曲语种特征向量。进而将用户偏好歌曲类型特征向量和用户偏好歌曲语种特征向量确定为用户偏好特征向量。其中,歌曲类型数据可以包括古典、民谣、流行、说唱等,歌曲语种数据可以包括中文、英文、日文等,具体根据实际应用场景确定,在此不做限制。为方便描述,本申请实施例以79种类型,8个语种为例进行示意性说明。可理解的,本申请实施例中涉及的用户偏好歌曲类型特征向量可以是对用户感兴趣的歌曲类型数据进行打分后,再使用onehot编码方式进行编码后得到的1×79维的特征向量,用户偏好歌曲语种特征向量可以是对用户感兴趣的歌曲语种数据进行打分后,再使用onehot编码方式进行编码后得到的1×8维的特征向量。其中,用户对一个类型(或歌曲流派)的喜欢程度越高,分数越高,相应地,用户对一个语种的喜欢程度越高,其分数也越高。
S403、根据至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从候选音频数据集合中确定出目标音频数据,以推荐给目标推荐用户。
在一些可行的实施方式中,可以根据至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从候选音频数据集合中确定出目标音频数据,以推荐给目标推荐用户。具体地,可首先计算该至少一个音频特征向量的音频特征向量平均值,进一步地,针对候选音频数据集合中每个候选音频数据,通过更新后神经网络获取每个候选音频数据的梅尔频谱特征数据对应的音频特征向量。然后,计算音频特征向量平均值与各个候选音频数据对应的特征向量之间的相似度值,并对确定出的多个相似度值进行降序排列,最后,将降序排序后的前n个相似度值对应的n个候选音频数据作为目标音频数据,n为大于0的整数。其中,相似度值可以是余弦相似度值、调整余弦相似度、皮尔逊相关系数等,在此不做限制。
可选的,根据至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从候选音频数据集合中确定出目标音频数据还可以理解为:根据用户偏好特征向量和至少一个音频数据中各个音频特征向量生成融合特征向量,根据融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从候选音频数据集合中确定出目标音频数据,以推荐给目标推荐用户。
需要说明的是,上述根据用户偏好特征向量和至少一个音频特征向量生成融合特征向量可理解为:确定至少一个音频特征向量的音频特征向量平均值,对音频特征向量平均值、用户偏好歌曲类型特征向量和用户偏好歌曲语种特征向量进行拼接,以生成融合特征向量。例如,假设音频特征向量平均值为F1,用户偏好歌曲类型特征向量为F2,用户偏好歌曲语种特征向量为F3,那么基于拼接操作生成的融合特征向量F可表示为[F1,F2,F3]。
可选的,根据用户偏好特征向量和至少一个音频特征向量生成融合特征向量还可以理解为:确定至少一个音频特征向量的音频特征向量平均值,对音频特征向量平均值、用户偏好歌曲类型特征向量和用户偏好歌曲语种特征向量进行求和,以生成融合特征向量。例如,假设音频特征向量平均值为F1,用户偏好歌曲类型特征向量为F2,用户偏好歌曲语种特征向量为F3,那么基于求和操作生成的融合特征向量F=F1+F2+F3。
可选的,上述根据用户偏好特征向量和至少一个音频特征向量生成融合特征向量还可以理解为:确定至少一个音频特征向量的音频特征向量平均值,对音频特征向量平均值、用户偏好歌曲类型特征向量和用户偏好歌曲语种特征向量进行加权求和,以生成融合特征向量,其中,音频特征向量平均值对应的第一权重值、用户偏好歌曲类型特征向量对应的第二权重值和用户偏好歌曲语种特征向量对应的第三权重值之和可以为1。例如第一权重值为0.4,第二权重值为0.3,第三权重值为0.3,具体根据实际应用场景确定,在此不做限制。其中,假设音频特征向量平均值为F1,用户偏好歌曲类型特征向量为F2,用户偏好歌曲语种特征向量为F3,那么基于加权求和操作生成的融合特征向量F=0.4*F1+0.3*F2+0.3*F3。
可理解的,当采用求和方式或加权求和方式确定融合特征向量时,若参与计算的特征向量的维度小于3种特征向量中的最大维度,则可对不满足维数要求的特征向量补0或补1至最大维度。例如,在本申请实施例中,音频特征向量平均值通常为1×40,用户偏好歌曲类型特征向量为1×79,用户偏好歌曲语种特征向量为1×8,则可将音频特征向量和用户偏好歌曲语种特征向量补齐至1×79后,再进行向量求和计算或加权求和运算,以得到融合特征向量。其中,本申请实施例中的融合特征向量表征的是用户喜爱歌曲的特征向量。
其中,上述根据融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从候选音频数据集合中确定出目标音频数据可理解为:针对候选音频数据集合中每个候选音频数据,通过更新后神经网络获取每个候选音频数据的梅尔频谱特征数据对应的音频特征向量。获取每个候选音频数据所属歌曲类型对应的歌曲类型特征向量和每个候选音频数据所属歌曲语种对应的歌曲语种特征向量。根据各个候选音频数据的音频特征向量、歌曲类型特征向量和歌曲语种特征向量确定各个候选音频数据对应的特征向量。计算融合特征向量与各个候选音频数据对应的特征向量之间的相似度值,并对确定出的多个相似度值进行降序排列,以将降序排序后的前n个相似度值对应的n个候选音频数据作为目标音频数据,n为大于0的整数。其中,相似度值可以是余弦相似度值、调整余弦相似度、皮尔逊相关系数等,在此不做限制。为方便描述,本申请实施例以余弦相似度为例进行示意性说明。
示例性地,请参见图5,图5是本申请实施例提供的模型使用阶段的示意图。如图5所示,在模型使用阶段,针对目标推荐用户的听歌行为数据中的历史听歌数据,可将历史听歌数据中包括的用户感兴趣的至少一首音频数据经过步骤S202中的处理流程,得到对应的梅尔频谱特征数据,并将梅尔频谱特征数据输入到上述训练好的卷积神经网络中,以通过卷积神经网络输出对应的音频特征向量。其中,针对目标推荐用户的听歌行为数据中的用户画像数据,可根据用户画像数据获取对应的用户偏好歌曲类型特征向量和用户偏好歌曲语种特征向量,进一步地,将得到的音频数据对应的音频特征向量与用户侧特征向量(即用户偏好歌曲类型特征向量和用户偏好歌曲语种特征向量)进行拼接,以组合成更高维的特征向量(即如图5所示的融合特征向量),用以表征该用户的听歌偏好和口味。具体地,上述过程可以概括为两个步骤:一、通过用户侧特征数据的预处理,使用用户画像统计得到用户听歌行为所包含的歌曲类型、歌曲语种数据,进而分别得到相应的用户偏好歌曲类型特征向量、用户偏好歌曲语种特征向量。二、处理用户的历史听歌数据,比如从历史听歌数据中选取用户最喜爱的10首歌曲,经过步骤S203的使用阶段流程得到对应的音频特征向量,再与上述两个用户侧特征向量(即用户偏好歌曲类型特征向量和用户偏好歌曲语种特征向量)相拼接,获得最终更高维的代表用户听歌偏好和口味的融合特征向量。
进一步地,如图5所示,针对候选音频数据集合中的每首候选音频数据,可将候选音频数据经过步骤S202中的处理流程,得到对应的梅尔频谱特征数据,并通过卷积神经网络得到各个候选音频数据对应的音频特征向量,然后根据各个候选音频数据本身所属的歌曲类型和歌曲语种,确定对应的歌曲类型特征向量和歌曲语种特征向量。进而根据各个候选音频数据的音频特征向量、歌曲类型特征向量和歌曲语种特征向量确定各个候选音频数据对应的特征向量(即候选音频数据对应的融合特征向量)。最后通过计算融合特征向量和各个候选音频数据对应的特征向量的相似度值,从候选音频数据集合筛选出推荐歌曲(即目标音频数据),以将目标推荐音频数据推荐给目标推荐用户。具体地,针对上述获取到的融合特征向量,可通过如下余弦相似度公式(1.2)计算融合特征向量a与候选音频数据集合某一首歌曲的特征向量b之间的相似度。
其中,cos(θ)表示余弦相似度,a表示融合特征向量,b表示候选音频数据对应的特征向量。
其中,当该用户与候选音频数据集合所有歌曲轮流计算后,最终结果按降序排列,选取前30首作为符合用户口味的相似歌曲,在音乐软件等流媒体音乐服务终端页面上将这些相似歌曲推荐给用户,当用户点击收听被推荐的歌曲后,其听歌行为信息将反馈到以上的推荐系统中,用以更新下一次的推荐歌曲。
在本申请实施例中,基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括用户感兴趣的第一音频数据和第二音频数据,以及用户不感兴趣的第三音频数据。获取每个歌曲三元组数据中包括的各个音频数据对应的梅尔频谱特征数据。基于神经网络确定每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的各个音频特征向量,并根据各个音频特征向量确定神经网络的三元损失函数的值。根据三元损失函数的值更新神经网络的网络参数,以通过更新后神经网络进行音乐推荐。在本申请实施例中,根据用户听歌行为数据构建歌曲三元组数据来表示用户的音乐偏好,然后基于歌曲三元组数据利用度量学习的方法训练得到更新后的神经网络,可以建立起用户听歌口味与歌曲音频本身特征之间的共性。通过该更新后的神经网络获取音频自身的高层语义嵌入向量表征(即音频特征向量),并将音频特征向量与原本用户特征向量(即用户偏好特征向量)进行结合,生成融合特征向量,有利于提升推荐系统的内容投放能力。最终通过本方案,解决了新歌和冷歌存在的冷启动问题,增加了用户对推荐系统的信任度和满意度,让广大用户能够享受到更符合自身口味的歌曲。
请参见图6,图6是本申请实施例提供的推荐模型训练装置的结构示意图。本申请实施例提供的推荐模型训练装置包括:
在一种实现中,处理单元61,用于基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
获取单元62,用于获取每个歌曲三元组数据中包括的各个音频数据的梅尔频谱特征数据;
所述处理单元61,用于基于神经网络确定所述每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的音频特征向量,并根据各个所述音频特征向量确定所述神经网络的三元损失函数的值;
所述处理单元61,用于根据所述三元损失函数的值更新所述神经网络的网络参数,以得到更新后神经网络,其中所述更新后神经网络作为推荐模型。
在一种可能的实施方式中,所述处理单元61用于:
获取所述参考用户的听歌行为数据;
从所述听歌行为数据中的用户收藏音频中获取两首不重复的歌曲作为一个歌曲三元组数据中的第一音频数据和第二音频数据;
从所述听歌行为数据中的除所述用户收藏音频之外的其他音频中获取一首歌曲作为一个歌曲三元组数据中的第三音频数据。
在一种可能的实施方式中,所述获取单元62用于:
针对每个歌曲三元组数据中的第一音频数据、第二音频数据和第三音频数据,提取组成每个音频数据的多个音频帧中每个音频帧的梅尔频谱数据;
从每个音频数据包括的多个音频帧的梅尔频谱数据中获取目标梅尔频谱数据,所述目标梅尔频谱数据包括预设起始帧与预设结束帧之间的连续多个梅尔频谱数据;
将各个音频数据对应的目标梅尔频谱数据确定为所述各个音频数据对应的梅尔频谱特征数据。
在一种可能的实施方式中,所述三元损失函数满足:
loss=max(||arrayi-arrayj||-||arrayi-arrayk||+α,0);
其中,所述loss表示所述三元损失函数的值,所述arrayi表示第一音频数据对应的音频特征向量,所述arrayj表示第二音频数据对应的音频特征向量,所述arrayk表示第三音频数据对应的音频特征向量,所述α表示最小间隙。
在一种可能的实施方式中,所述处理单元61用于:
从目标推荐用户的听歌行为数据中获取所述目标推荐用户关联的第一类型的至少一个音频数据;
将所述目标推荐用户关联的第一类型的至少一个音频数据输入所述更新后神经网络,以获取所述至少一个音频数据中每个音频数据的音频特征向量;
根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
在一种可能的实施方式中,所述处理单元61用于:
确定目标推荐用户的用户偏好特征向量;
将所述目标推荐用户关联的第一类型的至少一个音频数据输入所述更新后神经网络,以获取所述至少一个音频数据中每个音频数据的音频特征向量;
根据所述用户偏好特征向量和所述至少一个音频数据中各个音频特征向量生成融合特征向量;
根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
在一种可能的实施方式中,所述获取单元62用于:
基于目标推荐用户的听歌行为数据确定用户画像数据;
从所述用户画像数据中提取出用户感兴趣的歌曲类型数据和用户感兴趣的歌曲语种数据;
将所述歌曲类型数据转换为用户偏好歌曲类型特征向量,以及将所述歌曲语种数据转换为用户偏好歌曲语种特征向量;
将所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量确定为所述用户偏好特征向量。
在一种可能的实施方式中,所述处理单元61用于:
确定所述至少一个音频数据中各个音频特征向量的音频特征向量平均值;
对所述音频特征向量平均值、所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量进行拼接,以生成融合特征向量。
在一种可能的实施方式中,所述处理单元61用于:
针对所述候选音频数据集合中每个候选音频数据,通过所述更新后神经网络获取所述每个候选音频数据的梅尔频谱特征数据对应的音频特征向量;
获取所述每个候选音频数据所属歌曲类型对应的歌曲类型特征向量和所述每个候选音频数据所属歌曲语种对应的歌曲语种特征向量;
根据各个候选音频数据的音频特征向量、歌曲类型特征向量和歌曲语种特征向量确定所述各个候选音频数据对应的特征向量;
计算所述融合特征向量与各个候选音频数据对应的特征向量之间的相似度值,并对确定出的多个相似度值进行降序排列,以将降序排序后的前n个相似度值对应的n个候选音频数据作为目标音频数据,n为大于0的整数。
在另一种实现中,获取单元62,用于从目标推荐用户的听歌行为数据中获取所述目标推荐用户关联的第一类型的至少一个音频数据;
处理单元61,用于将所述目标推荐用户关联的第一类型的至少一个音频数据输入预先训练完成的推荐模型,以获取所述至少一个音频数据中每个音频数据的音频特征向量;其中,所述推荐模型是基于歌曲三元组数据训练得到,所述歌曲三元组数据包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
所述处理单元61,用于根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
在一种可能的实施方式中,所述处理单元61具体用于:
确定所述目标推荐用户的用户偏好特征向量;
所述根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,包括:
根据所述用户偏好特征向量和所述至少一个音频数据中各个音频特征向量生成融合特征向量;
根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
在一种可能的实施方式中,所述处理单元61具体用于:
基于目标推荐用户的听歌行为数据确定用户画像数据;
从所述用户画像数据中提取出用户感兴趣的歌曲类型数据和用户感兴趣的歌曲语种数据;
将所述歌曲类型数据转换为用户偏好歌曲类型特征向量,以及将所述歌曲语种数据转换为用户偏好歌曲语种特征向量;
将所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量确定为所述用户偏好特征向量。
在一种可能的实施方式中,所述处理单元61具体用于:
确定所述各个音频特征向量的音频特征向量平均值;
对所述音频特征向量平均值、所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量进行拼接,以生成融合特征向量。
在一种可能的实施方式中,所述处理单元61具体用于:
针对所述候选音频数据集合中每个候选音频数据,通过所述更新后神经网络获取所述每个候选音频数据的梅尔频谱特征数据对应的音频特征向量;
获取所述每个候选音频数据所属歌曲类型对应的歌曲类型特征向量和所述每个候选音频数据所属歌曲语种对应的歌曲语种特征向量;
根据各个候选音频数据的音频特征向量、歌曲类型特征向量和歌曲语种特征向量确定所述各个候选音频数据对应的特征向量;
计算所述融合特征向量与各个候选音频数据对应的特征向量之间的相似度值,并对确定出的多个相似度值进行降序排列,以将降序排序后的前n个相似度值对应的n个候选音频数据作为目标音频数据,n为大于0的整数。
在本申请实施例中,推荐模型训练装置可基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括用户感兴趣的第一音频数据和第二音频数据,以及用户不感兴趣的第三音频数据。获取每个歌曲三元组数据中包括的各个音频数据对应的梅尔频谱特征数据。基于神经网络确定每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的各个音频特征向量,并根据各个音频特征向量确定神经网络的三元损失函数的值。根据三元损失函数的值更新神经网络的网络参数,以通过更新后神经网络进行音乐推荐。采用本申请实施例,可提高音乐推荐的准确度,提升用户满意度。
请参见图7,图7是本申请实施例提供的终端设备的结构示意图。如图7所示,本实施例中的终端设备可以包括:一个或多个处理器701、存储器702和收发器703。上述处理器701、存储器702和收发器703通过总线704连接。存储器702用于存储计算机程序,该计算机程序包括程序指令,处理器701和收发器703用于执行存储器702存储的程序指令,执行如下操作:
在一种实现中,基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
获取每个歌曲三元组数据中包括的各个音频数据的梅尔频谱特征数据;
基于神经网络确定所述每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的音频特征向量,并根据各个所述音频特征向量确定所述神经网络的三元损失函数的值;
根据所述三元损失函数的值更新所述神经网络的网络参数,以得到更新后神经网络,其中所述更新后神经网络作为推荐模型。
在另一种实现中,从目标推荐用户的听歌行为数据中获取所述目标推荐用户关联的第一类型的至少一个音频数据;
将所述目标推荐用户关联的第一类型的至少一个音频数据输入预先训练完成的推荐模型,以获取所述至少一个音频数据中每个音频数据的音频特征向量;其中,所述推荐模型是基于歌曲三元组数据训练得到,所述歌曲三元组数据包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
应当理解,在一些可行的实施方式中,上述处理器701可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。该存储器702可以包括只读存储器和随机存取存储器,并向处理器701提供指令和数据。存储器702的一部分还可以包括非易失性随机存取存储器。例如,存储器702还可以存储设备类型的信息。
具体实现中,上述终端设备可通过其内置的各个功能模块执行如上述图2至图5中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
在本申请实施例中,终端设备可基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括用户感兴趣的第一音频数据和第二音频数据,以及用户不感兴趣的第三音频数据。获取每个歌曲三元组数据中包括的各个音频数据对应的梅尔频谱特征数据。基于神经网络确定每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的各个音频特征向量,并根据各个音频特征向量确定神经网络的三元损失函数的值。根据三元损失函数的值更新神经网络的网络参数,以通过更新后神经网络进行音乐推荐。采用本申请实施例,可提高音乐推荐的准确度,提升用户满意度。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现图2至图5中各个步骤所提供的推荐模型训练方法,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
上述计算机可读存储介质可以是前述任一实施例提供的推荐模型训练装置或者上述终端设备的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请的权利要求书和说明书及附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
Claims (12)
1.一种推荐模型训练方法,其特征在于,所述方法包括:
基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,其中每个歌曲三元组数据中包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
获取每个歌曲三元组数据中包括的各个音频数据的梅尔频谱特征数据;
基于神经网络确定所述每个歌曲三元组数据中各个音频数据的梅尔频谱特征数据对应的音频特征向量,并根据各个所述音频特征向量确定所述神经网络的三元损失函数的值;
根据所述三元损失函数的值更新所述神经网络的网络参数,以得到更新后神经网络,其中所述更新后神经网络作为推荐模型。
2.根据权利要求1所述方法,其特征在于,所述基于参考用户的听歌行为数据构建至少一个歌曲三元组数据,包括:
获取所述参考用户的听歌行为数据;
从所述听歌行为数据中的用户收藏音频中获取两首不重复的歌曲作为一个歌曲三元组数据中的第一音频数据和第二音频数据;
从所述听歌行为数据中的除所述用户收藏音频之外的其他音频中获取一首歌曲作为一个歌曲三元组数据中的第三音频数据。
3.根据权利要求1或2所述方法,其特征在于,所述获取每个歌曲三元组数据中包括的各个音频数据的梅尔频谱特征数据,包括:
针对每个歌曲三元组数据中的第一音频数据、第二音频数据和第三音频数据,提取组成每个音频数据的多个音频帧中每个音频帧的梅尔频谱数据;
从每个音频数据包括的多个音频帧的梅尔频谱数据中获取目标梅尔频谱数据,所述目标梅尔频谱数据包括预设起始帧与预设结束帧之间的连续多个梅尔频谱数据;
将各个音频数据对应的目标梅尔频谱数据确定为所述各个音频数据对应的梅尔频谱特征数据。
4.根据权利要求1-3任一项所述方法,其特征在于,所述三元损失函数满足:
loss=max(||arrayi-arrayj||-||arrayi-arrayk||+α,0);
其中,所述loss表示所述三元损失函数的值,所述arrayi表示第一音频数据对应的音频特征向量,所述arrayj表示第二音频数据对应的音频特征向量,所述arrayk表示第三音频数据对应的音频特征向量,所述α表示最小间隙。
5.根据权利要求1-4任一项所述方法,其特征在于,所述方法还包括:
从目标推荐用户的听歌行为数据中获取所述目标推荐用户关联的第一类型的至少一个音频数据;
将所述目标推荐用户关联的第一类型的至少一个音频数据输入所述更新后神经网络,以获取所述至少一个音频数据中每个音频数据的音频特征向量;
根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
6.根据权利要求5所述方法,其特征在于,所述方法还包括:
确定目标推荐用户的用户偏好特征向量;
所述根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,包括:
根据所述用户偏好特征向量和所述至少一个音频数据中各个音频特征向量生成融合特征向量;
根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
7.根据权利要求6所述方法,其特征在于,所述确定目标推荐用户的用户偏好特征向量,包括:
基于目标推荐用户的听歌行为数据确定用户画像数据;
从所述用户画像数据中提取出用户感兴趣的歌曲类型数据和用户感兴趣的歌曲语种数据;
将所述歌曲类型数据转换为用户偏好歌曲类型特征向量,以及将所述歌曲语种数据转换为用户偏好歌曲语种特征向量;
将所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量确定为所述用户偏好特征向量。
8.根据权利要求6或7所述方法,其特征在于,所述根据所述用户偏好特征向量和所述至少一个音频数据中各个音频特征向量生成融合特征向量,包括:
确定所述至少一个音频数据中各个音频特征向量的音频特征向量平均值;
对所述音频特征向量平均值、所述用户偏好歌曲类型特征向量和所述用户偏好歌曲语种特征向量进行拼接,以生成融合特征向量。
9.根据权利要求6-8任一项所述方法,其特征在于,所述根据所述融合特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,包括:
针对所述候选音频数据集合中每个候选音频数据,通过所述更新后神经网络获取所述每个候选音频数据的梅尔频谱特征数据对应的音频特征向量;
获取所述每个候选音频数据所属歌曲类型对应的歌曲类型特征向量和所述每个候选音频数据所属歌曲语种对应的歌曲语种特征向量;
根据各个候选音频数据的音频特征向量、歌曲类型特征向量和歌曲语种特征向量确定所述各个候选音频数据对应的特征向量;
计算所述融合特征向量与各个候选音频数据对应的特征向量之间的相似度值,并对确定出的多个相似度值进行降序排列,以将降序排序后的前n个相似度值对应的n个候选音频数据作为目标音频数据,n为大于0的整数。
10.一种基于推荐模型的音频推荐方法,其特征在于,所述方法包括:
从目标推荐用户的听歌行为数据中获取所述目标推荐用户关联的第一类型的至少一个音频数据;
将所述目标推荐用户关联的第一类型的至少一个音频数据输入预先训练完成的推荐模型,以获取所述至少一个音频数据中每个音频数据的音频特征向量;其中,所述推荐模型是基于歌曲三元组数据训练得到,所述歌曲三元组数据包括第一类型的第一音频数据和第二音频数据,以及第二类型的第三音频数据,所述第一类型和所述第二类型不同;
根据所述至少一个音频数据的音频特征向量和候选音频数据集合中各个候选音频数据对应的特征向量,从所述候选音频数据集合中确定出目标音频数据,以推荐给所述目标推荐用户。
11.一种终端设备,其特征在于,包括处理器、存储器和收发器,所述处理器、所述存储器和所述收发器相互连接;
所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器和所述收发器被配置用于调用所述程序指令,执行如权利要求1-9任一项所述的方法,或者,执行如权利要求10所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-9任一项所述的方法,或者,执行如权利要求10所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111137062.3A CN113868463A (zh) | 2021-09-27 | 2021-09-27 | 推荐模型训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111137062.3A CN113868463A (zh) | 2021-09-27 | 2021-09-27 | 推荐模型训练方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113868463A true CN113868463A (zh) | 2021-12-31 |
Family
ID=78991299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111137062.3A Pending CN113868463A (zh) | 2021-09-27 | 2021-09-27 | 推荐模型训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113868463A (zh) |
-
2021
- 2021-09-27 CN CN202111137062.3A patent/CN113868463A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111444428B (zh) | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 | |
CN111428088B (zh) | 视频分类方法、装置及服务器 | |
CN111602147A (zh) | 基于非局部神经网络的机器学习模型 | |
CN111708901A (zh) | 多媒体资源推荐方法、装置、电子设备及存储介质 | |
CN112989212B (zh) | 媒体内容推荐方法、装置和设备及计算机存储介质 | |
CN113766299B (zh) | 一种视频数据播放方法、装置、设备以及介质 | |
CN110557659A (zh) | 视频推荐方法、装置、服务器及存储介质 | |
CN111954087B (zh) | 视频中图像的截取方法和装置、存储介质和电子设备 | |
CN112650842A (zh) | 基于人机交互的客服机器人意图识别方法及相关设备 | |
CN111324773A (zh) | 一种背景音乐构建方法、装置、电子设备和存储介质 | |
CN115470344A (zh) | 一种基于文本聚类的视频弹幕与评论主题融合的方法 | |
CN114281935A (zh) | 搜索结果分类模型的训练方法、装置、介质及设备 | |
CN110895656A (zh) | 一种文本相似度计算方法、装置、电子设备及存储介质 | |
CN110516086B (zh) | 一种基于深度神经网络影视标签自动获取方法 | |
Matsumoto et al. | Music video recommendation based on link prediction considering local and global structures of a network | |
CN116956183A (zh) | 多媒体资源推荐方法、模型训练方法、装置及存储介质 | |
CN116010711A (zh) | 一种融合用户信息及兴趣变化的kgcn模型电影推荐方法 | |
CN111191059A (zh) | 图像处理方法、装置、计算机存储介质及电子设备 | |
CN113741759B (zh) | 评论信息的展示方法、装置、计算机设备和存储介质 | |
CN113868463A (zh) | 推荐模型训练方法及装置 | |
CN111581335B (zh) | 一种文本表示方法及装置 | |
CN111222011B (zh) | 一种视频向量确定方法和装置 | |
CN115482021A (zh) | 多媒体信息推荐方法、装置、电子设备及存储介质 | |
CN113822065A (zh) | 关键词召回方法、装置、电子设备以及存储介质 | |
Upadhyay et al. | Mood based music playlist generator using convolutional neural network |
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 |