0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何破解历史行为稀少的用户冷启动问题

人工智能与大数据技术 来源:人工智能与大数据技术 作者:人工智能与大数据 2021-03-22 17:17 次阅读

在“精准推荐者得民心”的今天,推荐系统已成为各大互联网公司的标配。但由于现实中很多数据是非欧氏空间生成的(例如,社交网络信息网络等),一些复杂场景下的业务需求很难通过协同过滤等基于历史行为挖掘用户或产品相似性的传统算法来满足。图神经网络作为一种约束性较少、极其灵活的数据表征方式,在深度学习各主要领域中崭露头角,一系列图学习模型涌现并得到越来越多的应用。

网易云音乐在推荐领域的探索

作为国民级的音乐App,网易云音乐很久之前就将定位从传统的音乐工具软件转移到音乐内容社区,致力于联结泛音乐产品与用户,打造最懂用户的音乐 App。在音乐内容社区中,直播可以说是用户参与度极高的场景了,云音乐内部投入了大量的人力物力以求将匹配度更高的主播推荐给用户,但仍然面临多重严峻的挑战。

如何破解历史行为稀少的用户冷启动问题

众所周知,推荐系统的整体框架主要包括召回、粗排和精排3个部分。其中,最底层的召回模型具有举足轻重的作用,而成功的召回推理需要依赖充足的历史数据。但在云音乐的业务场景中,通过站内广告看到直播推荐的用户很大比例是直播功能的新用户,即没有产生过观看直播行为数据的用户。如何向这类数据稀疏的用户推荐合适的内容成了亟待解决的难题,这类问题也通常被称为冷启动。

大规模图模型如何训练?

云音乐现有计算资源已全面实现容器化部署,对于各个业务团队来说,计算资源都是有限的,需要以最高效合理的方式利用有限的资源。如何在有限的分布式资源调控策略下低本高效地完成大规模图神经网络的模型训练,成为必须攻克的难题。

PGL图神经网络助力推荐场景落地

为了解决以上问题,网易云音乐的研发团队调研了大量开源方案,最终选择了对大规模图训练更加友好的百度飞桨分布式图学习框架PGL,作为云音乐的基础框架。

基于PGL的行为域知识迁移解决冷启动问题

云音乐直播场景的新用户中,有很多在音乐、歌单、Mlog 等业务中产生过较丰富的历史行为,能否通过将这部分历史行为知识映射到直播领域,来解决“行为”数据不足的问题呢? 带着疑问,云音乐引入了图模型结构,以多种不同类型的实体(如歌曲、DJ、Query、RadioID 等)为节点,通过用户与主播、用户与歌曲、Query与主播等历史行为关系,构建了一张统一的图关系网络。 然后,基于飞桨图学习框架 PGL对图模型进行训练。先采用 DeepWalk、Metapath2Vec、GraphSage等模型学习出足够强大的Graph Embedding表示来建模实体ID;再通过向量召回,将用户在歌曲、Query等处的行为迁移到主播领域,达到召回合适主播的目的。

基于PGL通用的分布式能力进行训练

云音乐的数据规模非常庞大,数据关系即使经过裁剪也高达亿级别以上。在常用的硬件资源配备情况下,此等量级规模的数据早已成为某些开源的图神经网络框架的瓶颈,需要使用极其昂贵的计算资源才能解决。对于数据规模必将持续增大的云音乐来说,相较于使用什么类型的模型,能否在这种数据规模下训练出模型才是优先要考虑的关键问题,也是网易云音乐与PGL成功牵手的关键因素! 百度飞桨深度学习平台PaddlePaddle 2019年开源的分布式图学习框架PGL,原生支持图学习中较为独特的分布式图存储(Distributed Graph Storage)和分布式采样(Distributed Sampling),可以方便地通过上层Python接口,将 图的特征(如Side Feature等)存储在不同的Server上,也支持通用的分布式采样接口,将不同子图的采样分布式处理,并基于PaddlePaddle Fleet API来完成分布式训练(Distributed Training),实现在分布式的“瘦计算节点”上加速计算。这些能力对云音乐内容社区直播推荐遇到的训练问题来说,极具魅力! 实验对比显示,在主播推荐场景采用图计算带来有效观看大幅提升,尤其在新用户和新主播冷启动上引入其它域数据后有了明显提升。

想了解更多落地细节和实战经验?

3月16日,网易云音乐机器学习平台与框架负责人段石石,将在飞桨B站直播间分享深度学习实战进阶课程《图神经网络在云音乐业务落地》。除了上面提到的数据稀疏性、冷启动召回和大规模分布式训练等业务难题的解决方案,段老师还将分享云音乐如何应对训练数据质量、瘦计算节点等技术挑战。 3月17日,百度高级算法工程师苏炜跃将分享《分布式图学习框架PGL及其推荐应用》,重点介绍图学习算法的理论基础、图学习框架PGL的特点和优势;同时将通过演示经典大规模推荐场景的图学习训练过程,帮助大家快速学习和实现产业级的图模型实践。


责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4774

    浏览量

    100912
  • 深度学习
    +关注

    关注

    73

    文章

    5507

    浏览量

    121299
  • 开源项目
    +关注

    关注

    0

    文章

    38

    浏览量

    7211
收藏 人收藏

    评论

    相关推荐

    鸿蒙原生页面高性能解决方案上线OpenHarmony社区 助力打造高性能原生应用

    Nodepool、HMrouter和DataCache 三大解决方案,并上架OpenHarmony开源社区分,分别针对应用页面滑动、跳转、首页冷启动等关键性能场景提供高效易用的工具,助力伙伴和开发者打造
    发表于 01-02 18:00

    USB驱动问题:设备无法识别的全面指南!

    今天我把USB驱动问题,关于设备无法识别方面做一个全面指南供大家参考。连接USB无法识别模组设备,是不是驱动问题?今天就一起来聊聊如何排查解决。
    的头像 发表于 11-26 12:35 420次阅读
    USB驱<b class='flag-5'>动问</b>题:设备无法识别的全面指南!

    增加电容器设备是否可以解决电压波动问

    增加电容器设备通常 不能直接解决电压波动问题 ,但它在特定情况下可能对改善电压质量和稳定性产生间接影响。电压波动一般与以下几个因素有关: 一、电压波动的常见原因: 1、负载波动 : 当负载变化较大
    的头像 发表于 11-07 14:30 490次阅读
    增加电容器设备是否可以解决电压波<b class='flag-5'>动问</b>题

    AIC3254启动过程是怎样的?需要功能调节延时,请问怎么实现?

    AIC3254 启动问题 :没有IIS,时钟是用MSP430产生的8M给AIC3254工作时钟的,但是每次启动要用手摸一下MCLK才能启动,什么原因呢!大侠们能否说明一下AIC3254启动
    发表于 11-07 07:28

    基于DPU的容器冷启动加速解决方案

    (Serverless)计算方式,极大地简化了开发人员的工作,使他们能够专注于应用的构建与运行,而不再需要承担服务器管理的负担。 然而,FaaS模式也并非没有缺陷,其中最为人诟病的便是“冷启动”问题。所谓冷启动,是指当请求被调度到某个函数实例时,如果该实例在上次执行完代码
    的头像 发表于 09-13 11:50 443次阅读
    基于DPU的容器<b class='flag-5'>冷启动</b>加速解决方案

    bq05504冷启动电压600mV,在微弱光线下小型太阳能板达不到这么大怎么办?

    bq05504管理芯片数据手册显示冷启动电压600mV,在微弱光线下小型太阳能板达不到这么大怎么办,那就是启动不了,那还怎么收集uW级~mW的电能?
    发表于 08-13 07:28

    鸿蒙开发:PageAbility的启动模式

    启动模式对应PageAbility被启动时的行为,支持单实例模式、多实例模式两种启动模式。
    的头像 发表于 06-17 14:35 379次阅读
    鸿蒙开发:PageAbility的<b class='flag-5'>启动</b>模式

    鸿蒙Ability Kit(程序框架服务)【组件启动规则(Stage模型)】

    组件启动规则(Stage模型) 启动组件是指一切启动或连接应用组件的行为启动UIAbility、ServiceExtensionAbil
    的头像 发表于 06-10 18:47 952次阅读
    鸿蒙Ability Kit(程序框架服务)【组件<b class='flag-5'>启动</b>规则(Stage模型)】

    如果&gt;=2 传感器与GND短路,CY8CMBR3108无法启动怎么解决?

    <= 2 个焊盘短路。 然后,它立即启动并响应 I2C 请求。 我试过在冷启动前禁用所有系统诊断程序,甚至禁用配置寄存器中的所有传感器,但如果>2 焊盘短路,设备就是无法启动。 我应该从哪里开始调查? 这是否是预期
    发表于 05-31 14:27

    TC3x CAN20在冷启动复位时出现MTU故障怎么解决?

    我们观察到,由于 CAN20 在冷启动复位时出现无法纠正的错误,MTU 出现故障。 出现此问题的原因是冷开机复位后 RAM 初始化不正常。 有什么具体方法可以初始化 RAM 吗?
    发表于 05-29 08:30

    PMP31114.1-适合 3V 冷启动的同步 SEPIC PCB layout 设计

    电子发烧友网站提供《PMP31114.1-适合 3V 冷启动的同步 SEPIC PCB layout 设计.pdf》资料免费下载
    发表于 05-22 11:28 0次下载
    PMP31114.1-适合 3V <b class='flag-5'>冷启动</b>的同步 SEPIC  PCB layout 设计

    PMP22063.1-具有热/冷启动功能的汽车仪表组和显示电源 PCB layout 设计

    电子发烧友网站提供《PMP22063.1-具有热/冷启动功能的汽车仪表组和显示电源 PCB layout 设计.pdf》资料免费下载
    发表于 05-14 14:53 0次下载
    PMP22063.1-具有热/<b class='flag-5'>冷启动</b>功能的汽车仪表组和显示电源 PCB layout 设计

    设置应用冷启动优化案例

    简介 应用App的启动速度能够影响用户的首次体验,启动速度较慢的应用可能导致用户再次开启App的意图下降,或者卸载放弃该应用程序,所以,APP的启动
    发表于 04-22 16:31

    STM32Cubeide的启动报错是哪里的问题?

    STMCubeide的启动问题,java环境32位64位都测试过,还是这个问题
    发表于 04-03 06:00

    在MCAL中禁用了ALM8 [10] 和 ALM8 [17],为什么SMU AG8在冷启动时仍会报告错误?

    如图所示,我在 MCAL 中禁用了 ALM8 [10] 和 ALM8 [17],但是 SMU AG8 在冷启动时仍会报告这两个错误,而 WDG 工作正常。 但是,如果我使用调试器重置程序,则不会报告这些警报。 我能有一些建议吗? 谢谢。
    发表于 01-18 10:32