在线优化技术在快手联盟上的实践和产品化
灵魂拷问与探索策略
面对选择时,应如何思考?是利用经验选择“认为”最有利的选项(Exploitation),还是跳出经验尝试新选项以追求全局最优(Exploration)?一种能辅助选择并最大化长期收益的技术应运而生。
Online Multi-armed Bandit (MAB) 技术简介
MAB技术解决N个候选项中每次选择K个以达成长期目标的问题。其核心是E&E(Exploration & Exploitation)策略,通过平衡经验利用和新选项探索来最大化收益。MAB适用于冷启场景(如冷用户、冷商品、冷系统)和大促场景,弥补了传统机器学习模型的不足(如无数据、实时性、冷启动、动态性等)。
MAB 问题定义与假设
MAB假设Arm与Reward直接相关且独立,每次Reward采样独立同分布(iid)。主要算法包括:
- ε-greedy:选择经验均值最大的候选,或随机选择。
- UCB1:结合置信区间选择。
- Thompson Sampling:基于后验分布采样选择。
Regret Bound:与分布无关的算法(如UCB1) regret Bound为 O(T log T),与分布相关的算法(如TS) regret Bound为 O(T)。
MAB 在业务中的挑战与“大坑”
- 问题建模:需明确Machine、Arm和Reward计算。
- 算法假设:业务场景可能不满足算法假设。
- 超参数调优:在线长链路中,超参数调优复杂且影响较大。
快手广告联盟内循环起量建模过程
业务核心问题
如何在联盟场景下帮助内循环广告快速起量,同时不影响已起量广告。难点包括:
- 现有联盟消耗量大。
- 流量位每日变化大。
- 内循环广告缺乏相似行业参考。
- 外部APP场景转化率与站内差异大。
问题建模与解法
建模1:填充率探索策略(双侧冷启)
- Machine:小店订单广告整体。
- Arm:不同媒体Pos。
- 解法:pos优胜劣汰,动态调整Top K pos。
建模2:媒体探索机制(单侧冷启)
- Machine:按App、行业、场景等粒度划分。
- Arm:广告作者、单元、账户等粒度。
- 解法:Bandit排序作用于Ecpm,优选广告粒度。
建模3:链路优化(引入E&E机制)
- Machine:按account划分。
- Arm:不同创意cid。
- 解法:∈-greedy Based Cascading Bandit With Time Decay,提升单日内累计指标。
迭代优化
随着数据积累,模型能力增强,需将探索能力融合到模型中。维度探索策略(如Contextual Bandit)可提升效果。
算法迭代与转化关系
- 填充率探索 → 媒体探索 → 维度探索。
- 随着数据量增加,模型能力提升,探索策略从精细到粗粒度演化。
快手Online Bandits算法栈及其产品化
算法栈
- 方向:解决各类E&E问题,涵盖多种算法(如UCB1、TS、LinUCB等)。
- 改进:从Reward分布、Arm假设、Policy、训练数据、目标、架构等方面持续优化。
产品系统架构
- 远程服务模式:通过Library SDK提供API。
- Offline Algorithm Library:离线算法库支持批量赋能。
产品能力
- 算子层:支持多种算法(如GNN Bandit、Neural Linear Bandit等)。
- 应用问题层:覆盖打磨、完备、多元化场景。
- 门槛能力:自动寻优、在线调参、仿真模拟等。
AutoBandit:自动寻优Bandit算法
研究动机
如何从众多候选Bandit算法中自动寻找最优算法并动态调优超参数。
挑战
Idea
- 将自动优选过程刻画为级联在线E&E优化算法。
- 反向过程并行学习多候选算法和超参数。
效果
- 累计后悔度与单最优算法方案持平,持续找到最优方案。
总结
快手通过MAB技术解决联盟广告起量问题,从填充率探索到媒体探索再到链路优化,逐步提升模型能力。产品化栈支持多种算法和场景,并通过AutoBandit实现自动寻优。随着数据积累,探索与模型融合,实现持续优化。