开屏广告会在用户打开小红书 APP 时进行全屏展现,整屏曝光带来的沉浸式视觉体验,能够高效帮助品牌和产品提升用户认知。配合丰富的交互样式与落地页类型,小红书开屏广告已成为诸多品牌在新品上市、品牌活动等期间快速触达目标用户的强力助推器。
目前小红书的开屏广告主要支持以合约的方式售卖,即客户采买流量时,提前与平台确认预定的曝光量,在投放当天由平台自动投放并保证曝光量满足预期。
近年来在品效结合的大背景下,除了保量,投放开屏广告的客户更希望平台能够优化广告的投放效果。在实际的业务场景中,客户主要基于 CTR 来评估广告的投放表现。过去小红书的开屏广告投放更多注重的是订单保量,未充分考虑如何优化投放效果,我们希望通过将投放策略升级为流量优选,在满足订单保量的前提下,优化开屏广告的 CTR。
接下来我们将分两部分介绍小红书开屏广告的投放策略:
● 第一部分介绍我们如何在较为理想的情况下通过流量优选满足客户对开屏广告保量和效果的诉求。我们从问题定义与形式化出发,通过推导得到流量优选的最优分配策略,并基于反馈调节实现了在线的流量分配;
● 第二部分介绍决策机制升级。在工程落地时,由于小红书对用户体验的高要求,APP 启动时间被压缩得很短以致难以进行实时广告决策,我们设计了异步决策的方案,并在此基础上进一步实现了开屏广告的动态加载机制,在满足用户体验要求的前提下落地了开屏的流量优选。
小红书开屏广告的流量优选,目标是在满足保量的基础上,尽可能优化广告 CTR。这是一个典型的流量分配问题,业内针对此类问题的常⽤做法是对分配问题进⾏形式化建模,并通过对偶求解的⽅式将问题进⾏转换,求解出流量最优分配公式,然后基于最优分配公式,采用反馈调节的方式实现流量优选的落地。遵循这一思路,我们先介绍问题形式化建模与求解。
问题定义与求解
我们定义开屏全天流量集合为
其中公式(1)表示每个订单均需要满足保量约束,公式(2)表示每个流量最多只能分配给一个订单。
考虑到实际投放时,可能由于售卖过多导致无法保量,进而上述问题无解,因此引入各个订单的缺量惩罚权重
该最优公式对应的流量优选策略为:同一流量上所有订单基于上述公式计算各自的 rank score,如果有订单的 rank score 大于0,则 rank score 最大的订单竞得该流量;如所有订单的 rank score 均小于0,则无订单竞得该流量,用户在本次启动 APP 时不会看到开屏广告。
在线分配策略
通过问题形式化和推导,我们得到了最优的流量分配策略。在假设全天流量集合已知的前提下,可以直接通过 LP 求解的方式得到每个订单的最优
根据公式
具体的方案上,算法策略每隔一段时间(比如5分钟)会获取在投的开屏广告当天累计的曝光量,同时结合不同订单的保量目标和大盘流量的分布,得到每个订单预期的曝光量。对于每个订单,单独根据各自的预期曝光量和实际曝光量,反馈更新各个订单的
用户体验高要求
对小红书这样一个社区平台来说,广大用户是平台得以持续发展的根基,一直以来小红书对用户体验都尤为重视。我们不希望因为开屏广告让用户在启动APP时等待太久,导致用户体验不佳甚至用户流失,因此APP的启动时长被压缩得很短。
异步决策机制
上文提到,很多时候 APP 启动的执行时间不足以决策“本次”开屏曝光的内容,我们就转换思路,仍旧保持提前加载全部物料的机制,但是调整广告决策的方式。我们假设绝大多数用户的兴趣在相邻两次开屏曝光之间不会有大的变化,这样就可以在尽可能不损失广告投放效果的前提下,将决策机制从决策“本次”调整为决策“下次”开屏曝光的内容。通过异步交互,每次广告请求返回的结果,用于下一次用户在开屏的曝光,这样就不受APP启动时长的限制,实现开屏广告的流量优选。这种异步决策机制的具体逻辑可以参考下图:
在用户完成开屏广告曝光之后,APP 会发起广告请求,广告系统会基于流量优选决策该用户下一次开屏广告的展现内容并返回,客户端会将返回结果缓存到本地;在下一次用户打开 APP 时,读取 APP 的本地缓存,为用户展示相应的广告,并在完成曝光后继续请求接下来的广告内容。
动态决策机制
异步决策机制也不是十全十美的,在异步机制下,广告请求和曝光之前有天然延时,进而使得流量优选存在决策延时,影响优选的效果。为了提升开屏广告决策的时效性,一方面我们适当增加了异步决策的请求时机,尽可能缩短流量优选中“请求→曝光”的间隔;另一方面,我们也在一些 APP 启动时长更长的流量中,落地了实时请求,进一步提高广告决策的时效性。
具体的方案是,我们根据 APP 启动的类型将广告流量分为热启和冷启两部分,热启主要指 APP 从后台切换至前台时曝光的开屏广告,此时 APP 的启动流程很短,我们采用直接读取已有的异步决策结果的方式确定本次启动展示的广告;冷启则是 APP 从无后台的状态启动时的开屏广告,由于涉及 APP 初始化等流程,启动时间较长,可以采用实时请求的方案,执行完整个“广告请求→在线决策→结果下发”的流程。通过“热启+异步决策”和“冷启+实时决策”,我们实现了小红书开屏广告的动态决策机制,并在此基础上落地了开屏广告的流量优选。
为了满足客户对保量和投放效果的诉求,同时考虑到小红书开屏场景对用户体验的高要求,我们落地了“流量优选+动态决策”机制这一整套解决方案,达成了业务目标。未来的迭代主要分为以下几个方向:
1)参数调控方面,目前流量优选的参数调控采用了不同订单独立更新的策略,各个订单的参数更新相互影响,未来会考虑采用基于 RL 或 MPC 的更复杂的调控策略解决上述问题;
2)延时决策方面,在动态决策机制下,广告请求→曝光的延时普遍存在,进而影响投放的效果,后续会考虑在线上决策时引入对用户后续行为的预估进行优化;
3)物料加载方面,开屏广告的物料仍采用的是全量提前加载,随着广告物料数的增多会影响系统性能并增加客户端的存储负担,我们也会探索实时物料加载机制,减少非必要的物料下发。
蜡笔(韩仲醒) 小红书信息流广告算法部
小红书机制策略算法工程师,硕士毕业于中国科学院大学,在效果广告和品牌广告的机制策略方面有较为丰富的经验,目前主要从事品牌广告机制策略相关的工作。
旭凤(田增光) 小红书商业技术工程部
小红书商业化后端开发工程师,硕士毕业于北京邮电大学,先后从事效果广告、品牌广告方向的引擎架构建设和产品能力建设,现专注于商业化品牌广告的持续迭代。
青山(邢志壮) 小红书信息流广告算法部
小红书机制策略算法工程师,硕士毕业于北京邮电大学,先后在品牌广告、客户机制方向从事相关工作,现专注于品牌广告和流量机制方向的相关研究和探索。
信息流广告算法-机制策略方向(北京)
工作职责
1. 基于小红书海量的用户行为数据,建立并优化广告系统的算法和机制,包括但不限于内容理解、用户理解、召回策略以及计费机制;
2. 对业界前沿技术保持敏感,结合业务特点,探索将前沿的算法技术应用于实际业务,实现技术落地。
任职资格
1. 计算机相关专业,本科以上学历,2年以上工作经验;
2. 在机器学习,数据挖掘,推荐系统,富媒体建模等一个或多个算法领域有扎实的理论基础和丰富的研发经验,对算法原理及应用有较深入的理解;
3. 具有很强的编程能力,至少熟练java/python/golang/c++其中一种开发语言;
4. 良好的逻辑思维能力,善于发现和推理不同事物之间的关系和影响;
5. 具备优秀的分析和解决问题的能力,对解决具有挑战的问题充满激情,具备良好的主动性和求知欲,具备良好的沟通协作和抗压能力;
6. 有较多的程序开发经验,对数据结构和算法知识应用熟练,有大数据处理经验者更优;
7. 在互联网效果和品牌广告、自然搜索、自然推荐中某一领域有工作经验则更佳。
广告开发工程师-商业技术部(北京)
工作职责
1. 负责公司大规模分布式广告系统的工程建设和优化,包括检索服务、策略工程等方向
2. 负责广告系统的数据流建设以及系统资源与框架优化,为业务迭代提供架构能力、资源与计算能力
3. 参与提升和完善广告系统全链路的效率以及稳定性的建设,包括性能、可靠性、可用性、可观测性等诊断体系和工具的建设
4. 深入理解广告变现,参与产品创新的技术方案落地
任职资格
1. 计算机相关专业,本科以上学历, 2年以上工作经验
2. 熟悉 Java(或C++),具备优秀的编码能力和扎实的算法和数据结构基础,复杂业务系统研发经验
3. 熟悉linux网络编程、多线程处理,熟悉应用c++/java环境下主流开发框架,熟悉MySQL,Redis,kafka,RocketMQ等开源系统
4. 责任心强,积极主动,有良好的沟通能力和团队合作能力
5. 对数据敏感,具备优秀的逻辑思维,对解决挑战性问题充满热情,善于解决问题和分析问题
欢迎感兴趣的朋友投递简历至:
REDtech@xiaohongshu.com
并抄送至下方邮箱以获得最快速响应:
rubick@xiaohongshu.com
xufeng@xiaohongshu.com
往期精彩内容指路
添加小助手,了解更多内容
微信号 / REDtech01