
推荐系统的冷启动
在推荐系统中,冷启动(Cold Start)问题是策略设计过程中,必须考虑的问题。
冷启动问题核心是数据问题,指的是当前系统因新用户或新物料刚创建,而没有用户行为数据以及物品信息时,难以进行准确推荐的情况。
一、什么是推荐系统中的冷启动?
推荐系统的核心是通过分析用户的历史行为(如点击、购买、评分等)以及物品的属性信息,为用户推荐其可能感兴趣的内容。然而,当遇到以下情况时,系统往往“无从下手”,这就是冷启动问题:
冷启动是指在推荐系统中,由于缺乏足够的数据(用户行为数据、物品信息等),导致无法有效进行个性化推荐的现象。
二、冷启动的分类
在实际工作场景中,核心需要解决的冷启动问题,主要分为用户冷启动(User Cold Start)以及物品冷启动(Item Cold Start)两类,在某些细分里面,还会细分系统冷启动,但对于推荐系统建设而言,往往较少面对此类问题。
1. 用户冷启动(User Cold Start)
含义:新用户刚加入平台,还没有产生任何行为数据(如没有点击、购买、评分等),系统不知道用户的兴趣偏好。
eg:
- 一个新注册的抖音用户,还没有浏览或点赞任何视频,系统如何为他推荐内容?
- 一个新用户在电商平台上第一次访问,没有浏览或购买记录,如何推荐商品?
2. 物品冷启动(Item Cold Start)
含义:新物品(如新上架的商品、新发布的视频、新写的文章)刚刚加入系统,还没有被任何用户交互过,系统缺乏关于该物品的受欢迎程度或匹配用户兴趣的数据。
eg:
- 一款新商品刚刚上架电商平台,没有任何用户购买或评价,如何推荐给潜在买家?
- 一个新上传的短视频还没有任何播放或点赞,如何让它被更多人看到?
3. 系统冷启动(System Cold Start)
含义:整个推荐系统刚刚上线,既没有用户数据,也没有物品数据,或者数据量极少,几乎无法进行任何有效的推荐。推荐推荐系统而言,此类场景较小,会有类似场景,新的商品分类或新的内容分类上线等情况。
eg:
- 一个新的短视频 App 刚上线,首批用户和视频都很少,如何构建有效的推荐机制?
- 一个初创的电商网站,刚有少量商品和用户,如何开始推荐?
三、冷启动问题的挑战
- 缺乏个性化依据:推荐系统依赖数据来学习用户兴趣与物品特征,冷启动时这些数据缺失,导致推荐不精准。
- 难以平衡探索与利用:对于新用户或新物品,系统需要在“探索(尝试推荐可能感兴趣的内容)”和“利用(基于已有信息推荐)”之间找到平衡。
- 影响用户体验与平台生态:如果新用户或新内容得不到合理曝光,可能导致用户流失或优质内容被埋没,不利于内容生态的持久性建设。
四、解决冷启动问题的常用策略
针对不同类型的冷启动问题,推荐系统通常采用多种策略进行缓解,主要包括以下几类:
✅ 一、用户冷启动的解决方案
1. 引导用户输入兴趣偏好
在用户注册或首次使用时,通过问卷、选择标签、兴趣点选择等方式,主动收集用户的兴趣信息。
eg:
- 豆瓣、小红书等平台会让新用户选择感兴趣的领域(如电影、美食、旅行等)。
- 抖音、B站等也可能在注册后引导用户选择喜欢的内容类型。
- 微博注册或流失用户重新激活都会引导关注或选择兴趣标签。
- 社交app陌陌内,注册时会引导完善兴趣标签,典型的如游戏偏好、歌曲偏好等。
2. 利用用户注册信息
通过用户的基本信息(如年龄、性别、地区、职业等)做初步推荐。
eg:
- 向年轻女性推荐美妆产品,向程序员推荐技术书籍或工具。
- 社交app陌陌内,基于地理位置及性别进行的推荐。
3. 基于热门或场景化推荐
在缺乏个性化数据时,推荐热门内容、高评分内容、时下流行内容,作为默认推荐。
eg:
- 新用户打开电商App时,先推荐“热销榜”、“新品推荐”或“大家都在买”。
4. 利用社交数据或平台内其他业务的数据
如果用户授权,可以借助社交账号登录(如微信、QQ、Google),获取用户的好友关系、兴趣图谱等,做协同推荐。
eg:
- 在社交类软件内,如微信,通过好友喜欢的商品或内容,给新用户做推荐。
- 对于功能新用户,可以考虑使用
5. 快速收集反馈,进行实时调整
在用户使用初期,实时收集点击、浏览、停留时长等反馈,迅速更新用户画像,进入常规推荐模式。
eg:
- 当新用户进入直播间后,有有效停留、互动、付费、关注等行为,实时获取此类行为数据,为用户推荐该主播所属分类的主播u2g2i或相似主播u2i2i。
- 淘宝内新用户点击查看某商品后,返回首页会发现推荐与刚刚点击的商品同分类的商品。
✅ 二、物品冷启动的解决方案
通常在企业内对于新物料会给与单独的流量比例,进行新物料的推荐。
相对简单的方案是在召回侧增加单独的召回路,在排序侧给与新物料以更高的权重,在重排侧进行流量调控策略,保证新物料的比例符合要求。
在复杂的一些公司,会有单独的新物料团队,如快手、淘宝等,注重内容生态的公司,专门的算法团队深度挖掘及优化,基于在召回、排序等全链路进行设计及研发,在最终的重排层进行物料融合。
1. 利用物品自身属性
即使新物品没有用户交互数据,通常新物品在创建时,也会有一些元数据(metadata),如标题、类别、标签、价格、品牌、描述等。
推荐系统可以通过内容过滤(Content-based Filtering)的方法,将新物品与用户过去喜欢的内容进行匹配。
eg:
- 新上架的手机,可以根据品牌、价格、功能等特点,推荐给关注类似机型的用户。
2. 基于内容的相似性推荐
通过 NLP、图像识别、标签系统等技术提取物品的内容特征,找到与之相似的已有物品,再推荐给喜欢那些物品的用户。
eg:
- 新上传的一篇科技类文章,可以推荐给常读科技内容的用户。
3. 人工规则或运营干预
对于特别重要的新物品(如促销商品、重点推广内容),可以通过运营手段进行初期曝光,积累用户反馈。
eg:
- 例如:设置“新品尝鲜”、“编辑推荐”、“首发优惠”等入口。
4. 探索机制(Exploration)
给新物品一定比例的初始曝光机会,通过观察初期用户反馈(如点击、转化)来收集数据,逐步纳入推荐主流。
在短视频平台等内容平台内,采用此类多级流量池分发机制,对于新物料给与公平的初始曝光,实时分析其曝光效果,如达到较好效果,则进入下一级流量池内。
eg:
- 例如:抖音会为新视频提供“流量池测试”,根据初始播放与互动决定是否扩大推荐。
五、冷启动问题的技术方法总结
方法类别 | 具体策略 | 适用场景 |
---|---|---|
显式收集信息 | 注册时让用户选择兴趣、填写资料 | 用户冷启动 |
热门推荐 | 推荐高热度、高评分、流行内容 | 所有冷启动类型 |
基于内容推荐 | 利用物品的标签、文本、类别等属性 | 物品冷启动、用户冷启动 |
协同过滤优化 | 利用用户-物品交互矩阵(需一定数据量) | 数据有一定积累后 |
探索与利用机制 | 给新物品/用户一定曝光机会,探索其潜力 | 物品冷启动、用户冷启动 |
社交关系利用 | 借助用户社交网络、好友行为 | 用户冷启动(有社交数据时) |
实时反馈学习 | 快速捕捉用户初期行为,动态调整推荐 | 用户冷启动 |
六、总结
问题类型 | 核心难点 | 解决方向 |
---|---|---|
用户冷启动 | 缺乏用户行为数据,不了解用户兴趣 | 引导兴趣、利用注册信息、热门推荐、快速学习 |
物品冷启动 | 新物品无用户交互,难以评估其吸引力 | 利用内容属性、相似推荐、运营曝光、探索机制 |
系统冷启动 | 几乎没有用户和物品数据 | 热门+人工+内容推荐,逐步过渡到个性化 |
🎯 总结
在实际业务中,冷启动问题往往是推荐系统必须面对的“第一道坎”。一个优秀的推荐系统,往往在冷启动阶段就设计了巧妙的策略(比如抖音的新视频流量分发机制、淘宝的新品扶持计划等),既能保障用户体验,又能促进内容生态的健康发展。
案例分析
下面列出一些行业内公司,在冷启动上的一些探索。
- 淘宝
淘宝采用实时的模型向量化召回方案,分别是基于用户实时行为的i2i向量化召回(具备准确性高,但多样性不足的情况),以及基于双塔模型的u2i2i(具备一定的准确性与较强的多样性)用户与物品相似性召回等两种方案。其中,由于I2I的trigger数量较少而深度U2I的泛化能力强,因而在新用户召回中深度U2I的pv占比较大(约为60%),深度U2I召回具有很大的优化空间。
采用基于分层的流量控制,保证新内容的基础曝光量,在基于基础曝光量的基础上,结合数据效果,增加单独的扶持热门链路,对于7天内发布的内容,给与单独的召回及排序链路,基于模型预测进行单独的召回和重排处理。
- 网易云音乐
网易采用了一种基于其他场景的历史行为数据,基于图模型构建隐形的关系链,从而迁移到新业务。
网易云音乐的冷启动,主要借用用户偏好的画像标签进行召回,组合区分,语种,艺人进行召回,在召回时针对召回分,则采用结合时间衰减因子*实时的转化率(艺人+语言+曲风的转化率),在计算规则上,采用平滑的标签转化,7天内的喜欢人数+条件初始化率/播放人数+100 + 泛化的初始化率(使用推荐歌曲所属的艺人、风格、区分的转化率代替),后续随时间边长,逐步降低。对于排序规则而言,采用双塔向量的形式,对于涉及到的统计规则类特征,则分别使用歌曲或用户偏好的语言、曲终、艺人的偏好分代替。