当推荐遇到社交:美图的推荐算法设计优化实践( 四 )

Bamboo:基于 tensorflow 开发,负责模型训练、离线效果评估。Bamboo 实现了推荐领域大量的 State of the Art 的模型,并且提供了丰富的 Layers,以简化算法同学的建模工作。在训练方面支持多种并行训练方式,同时通过对代码的优化实现了较高的训练效率;

MML Serving:负责模型的在线服务。底层通过 C++ 实现,在内存和并发上做了大量的优化,支持同时请求多个模型,以及在线热更。灵活的架构让我们能够很方便地接入各种机器学习框架训练的模型。

Bamboo

如果说 Spark Feature 和 MML Serving 是 MML 机器学习平台的手和脚,那么 Bamboo 就是 MML 机器学习平台的大脑。Bamboo 负责机器学习模型的训练和效果评估。我们底层采用 tensorflow 开发,对外提供封装好的组件。总的来说,Bamboo 具有以下优点:

便捷:内置了近几年推荐领域的 SOTA 模型,以及建模常用的 Layers,并且内置了部分公共数据集的访问接口,能够支持从本地磁盘,以及 HDFS 读取训练数据。数据、训练、模型评估、模型导出通过配置化实现,算法同学可以专注于模型的设计;

推荐阅读