案例简介
网易云音乐作为国民级的音乐 App,很久之前就将定位从传统的音乐工具软件转移到音乐内容社区,直播是社区运营的重要环节。虽然已经投入了大量的人力物力,但想将合适的主播推荐给对其感兴趣的用户仍然面临颇多挑战。 例如,用户直播互动行为数据稀少的情况下如何推荐、在有限的分布式资源调控策略下如何低成本完成超大规模(数据关系即使经过裁剪也高达亿边级以上)的图神经网络的模型训练等。
为了解决以上问题,网易云音乐的研发团队调研了大量开源方案,最终选择了对大规模图训练更加友好的百度飞桨分布式图学习框架PGL,作为网易云音乐的基础框架。
众所周知,推荐系统的整体框架主要包括召回、粗排和精排三个部分。其中,最底层的召回模型具有举足轻重的作用,而成功的召回推理需要依赖充足的历史数据。但在网易云音乐的业务场景中,通过站内广告看到直播推荐的用户很大比例是直播功能的新用户,即没有产生过观看直播行为数据的用户。如何向这类数据稀疏的用户推荐合适的内容成了亟待解决的难题,这类问题也通常被称为冷启动。
网易云音乐现有计算资源已全面实现容器化部署,对于各个业务团队来说,计算资源都是有限的,需要以最高效合理的方式利用有限的资源。如何在有限的分布式资源调控策略下低本高效地完成大规模图 神经网络的模型训练,成为必须攻克的难题。
技术方案
冷启动问题
网易云音乐直播场景的新用户中,有很多在音乐、歌单、Mlog 等业务中产生过较丰富的历史行为,能否通过将这部分历史行为知识映射到直播领域,来解决“行为”数据不足的问题呢?
带着疑问,网易云音乐引入了图模型结构,以多种不同类型的实体(如歌曲、DJ、Query、RadioID 等)为节点, 通过用户与主播、用户与歌曲、Query 与主播等历史行为关系,构建了一张统一的图关系网络。
然后,基于飞桨图学习框架 PGL 对图模型进行训练。先采用 DeepWalk、Metapath2Vec、GraphSage 等模型学习出足够强大的 Graph Embedding表示来建模实体 ID;再通过向量召回,将用户在歌曲、Query等处的行为迁移到主播领域,达到召回合适主播的目的。
网易云音乐的数据规模非常庞大,数据关系即使经过裁剪也高达亿级别以上。在常用的硬件资源配备情况下,此等量级规模的数据早已成为某些开源的图神经网络框架的瓶颈,需要使用极其昂贵的计算资源才能解决。对于数据规模必将持续增大的网易云音乐来说,相较于使用什么类型的模型,能否在这种数据规模下训练出模型才是优先要考虑的关键问题。
百度飞桨深度学习开源平台 2019 年开源的分布式图学习框架 PGL,原生支持图学习中较为独特的分布式图存储(Distributed Graph Storage)和分布式采样(Distributed Sampling),可以方便地通过上层 Python 接口,将图的特征(如 Side Feature 等)存储在不同的 Server 上,也支持通用的分布式采样接口,将不同子图的采样分布式处理,并基于 PaddlePaddle Fleet API 来完成分布式训练(Distributed Training),实现在分布式的“瘦计算节点”上加速计算。
网易云音乐播放页的个性化主播推荐功能更新上线后,有效观看率大幅提升。不仅突破了“超大数据规模下模型训练” 的业务瓶颈,还大大降低了使用昂贵计算资源的成本。
案例企业简介
网易云音乐是一款专注于发现与分享的音乐产品,依托专业音乐人、DJ、好友推荐及社交功能,为用户打造全新的 音乐生活。
案例简介
网易云音乐作为国民级的音乐 App,很久之前就将定位从传统的音乐工具软件转移到音乐内容社区,直播是社区运营的重要环节。虽然已经投入了大量的人力物力,但想将合适的主播推荐给对其感兴趣的用户仍然面临颇多挑战。 例如,用户直播互动行为数据稀少的情况下如何推荐、在有限的分布式资源调控策略下如何低成本完成超大规模(数据关系即使经过裁剪也高达亿边级以上)的图神经网络的模型训练等。
为了解决以上问题,网易云音乐的研发团队调研了大量开源方案,最终选择了对大规模图训练更加友好的百度飞桨分布式图学习框架PGL,作为网易云音乐的基础框架。
众所周知,推荐系统的整体框架主要包括召回、粗排和精排三个部分。其中,最底层的召回模型具有举足轻重的作用,而成功的召回推理需要依赖充足的历史数据。但在网易云音乐的业务场景中,通过站内广告看到直播推荐的用户很大比例是直播功能的新用户,即没有产生过观看直播行为数据的用户。如何向这类数据稀疏的用户推荐合适的内容成了亟待解决的难题,这类问题也通常被称为冷启动。
网易云音乐现有计算资源已全面实现容器化部署,对于各个业务团队来说,计算资源都是有限的,需要以最高效合理的方式利用有限的资源。如何在有限的分布式资源调控策略下低本高效地完成大规模图 神经网络的模型训练,成为必须攻克的难题。
技术方案
冷启动问题
网易云音乐直播场景的新用户中,有很多在音乐、歌单、Mlog 等业务中产生过较丰富的历史行为,能否通过将这部分历史行为知识映射到直播领域,来解决“行为”数据不足的问题呢?
带着疑问,网易云音乐引入了图模型结构,以多种不同类型的实体(如歌曲、DJ、Query、RadioID 等)为节点, 通过用户与主播、用户与歌曲、Query 与主播等历史行为关系,构建了一张统一的图关系网络。
然后,基于飞桨图学习框架 PGL 对图模型进行训练。先采用 DeepWalk、Metapath2Vec、GraphSage 等模型学习出足够强大的 Graph Embedding表示来建模实体 ID;再通过向量召回,将用户在歌曲、Query等处的行为迁移到主播领域,达到召回合适主播的目的。
网易云音乐的数据规模非常庞大,数据关系即使经过裁剪也高达亿级别以上。在常用的硬件资源配备情况下,此等量级规模的数据早已成为某些开源的图神经网络框架的瓶颈,需要使用极其昂贵的计算资源才能解决。对于数据规模必将持续增大的网易云音乐来说,相较于使用什么类型的模型,能否在这种数据规模下训练出模型才是优先要考虑的关键问题。
百度飞桨深度学习开源平台 2019 年开源的分布式图学习框架 PGL,原生支持图学习中较为独特的分布式图存储(Distributed Graph Storage)和分布式采样(Distributed Sampling),可以方便地通过上层 Python 接口,将图的特征(如 Side Feature 等)存储在不同的 Server 上,也支持通用的分布式采样接口,将不同子图的采样分布式处理,并基于 PaddlePaddle Fleet API 来完成分布式训练(Distributed Training),实现在分布式的“瘦计算节点”上加速计算。
网易云音乐播放页的个性化主播推荐功能更新上线后,有效观看率大幅提升。不仅突破了“超大数据规模下模型训练” 的业务瓶颈,还大大降低了使用昂贵计算资源的成本。
案例企业简介
网易云音乐是一款专注于发现与分享的音乐产品,依托专业音乐人、DJ、好友推荐及社交功能,为用户打造全新的 音乐生活。