特征平台(feature store)的定义:一个用于机器学习的数据管理层,允许共享和发现特征并创建更有效的机器学习管道。
1.特征平台业界实现
1.uber
其最早由uber于2017年提出,uber的feature store名为Michaelangelo,参考:Meet Michelangelo: Uber’s Machine Learning Platform

Michaelangelo主要提供以下6种特性,如下图所示:
- Manage data
- Train models
- Evaluate models
- Deploy models
- Make predictions
- Monitor predictions

2.美团
特征平台所能解决的一些问题:
- 特征迭代成本高:框架缺乏配置化管理,新特征上线需要同时改动离线侧和在线侧代码,迭代周期较长。
- 特征复用困难:外卖不同业务线间存在相似场景,使特征的复用成为可能,但框架缺乏对复用能力的很好支撑,导致资源浪费、特征价值无法充分发挥。
- 平台化能力缺失:框架提供了特征读写的底层开发能力,但缺乏对特征迭代完整周期的平台化追踪和管理能力。
其他美团的文章:美团配送实时特征平台建设实践
3.字节跳动
特征存储所解决的一些问题:
存储原始特征:由于在线特征抽取在特征调研上的低效率,我们期望能够存储原始特征;
离线调研能力:在原始特征的基础上,可以进行离线调研,从而提升特征调研效率;
支持特征回填:支持特征回填,在调研完成后,可以将历史数据全部刷上调研好的特征;
降低存储成本:充分利用数据分布的特殊性,降低存储成本,腾出资源来存储原始特征;
降低训练成本:训练时只读需要的特征,而非全量特征,降低训练成本;
提升训练速度:训练时尽量降低数据的拷贝和序列化反序列化开销。
2.特征拼接问题
1.离线拼接(离线特征)
以天级的batch任务来实现特征和曝光/点击的join,比如