小红书推荐系统迭代:AB测试架构的高效与稳定性策略

发布时间:2024-09-18

Image

小红书作为国内领先的生活分享平台,其推荐系统经历了从离线批处理到实时流处理的演进,不断优化以提升用户体验。在这个过程中,AB测试成为推动系统迭代的关键工具。

小红书的推荐系统架构可以分为实时和离线两个部分。在实时流处理方面,小红书采用了Apache Flink作为核心组件。用户的行为数据首先被收集到Kafka中,然后通过Flink任务进行实时处理。Flink任务会维护用户笔记画像,并实时生成训练样本。这些样本一部分存储到ClickHouse中供数据分析使用,另一部分则用于模型训练。

在离线批处理方面,小红书最初使用Hive进行处理,但随着业务发展,这种T+1的处理模式已无法满足需求。因此,小红书将离线批处理升级为实时流处理,大大提高了开发效率。

在推荐系统的优化方面,小红书采用了多种策略。在召回模型方面,小红书主要采用Item-CF算法,但同时也引入了双塔模型来解决冷启动问题。近期,小红书还引入了LLM(Large Language Models)对i2i召回进行优化,提高了推荐性能和用户体验。

在排序策略方面,小红书采用了GBDT+Sparse D&W的模型算法,通过构建click、hide、like、fav、comment、share、follow等模型特征来进行模型训练,并输出CES评分。此外,小红书还采用了全局最优的排序策略,以及基于用户体验的策略调整。

AB测试在小红书推荐系统的迭代中扮演着重要角色。小红书的AB平台采用SDK分流的方式,实验的分流逻辑内置在推荐服务中。这种做法使得小红书能够快速验证新策略的效果,从而不断优化推荐系统。

然而,小红书在实施这些策略时也面临一些挑战。例如,在使用Flink进行实时处理时,需要解决集群管理、Checkpoint和State持久化等问题。小红书通过将Flink部署在K8s集群上、使用RocksDBStateBackend等方式来应对这些挑战。

总的来说,小红书的推荐系统通过实时流处理、模型优化和AB测试等策略,不断提升推荐的精准度和用户体验。这种持续优化的态度,正是小红书能够在竞争激烈的社交平台中脱颖而出的关键。