《Vega 是诺亚方舟实验室自研的 AutoML 算法工具链》

Posted cx2016

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《Vega 是诺亚方舟实验室自研的 AutoML 算法工具链》相关的知识,希望对你有一定的参考价值。

Vega 简介

Vega 是诺亚方舟实验室自研的 AutoML 算法工具链,有主要特点:

  1. 完备的 AutoML 能力:涵盖 HPO(超参优化, HyperParameter Optimization)、Data-Augmentation、NAS(网络架构搜索, Network Architecture Search)、Model Compression、Fully Train 等关键功能,同时这些功能自身都是高度解耦的,可以根据需要进行配置,构造完整的 pipeline。
  2. 业界标杆的自研算法:提供了诺亚方舟实验室自研的业界标杆算法,并提供 Model Zoo 下载 SOTA(State-of-the-art) 模型。
  3. 高并发模型训练能力:提供高性能 Trainer,加速模型训练和评估。

算法列表

分类算法说明参考
NAS SM-NAS: Structural-to-Modular NAS 两阶段物体检测架构搜索算法 开发中
NAS CARS: Continuous Evolution for Efficient Neural Architecture Search 基于连续进化的多目标高效神经网络结构搜索方法 参考
NAS SR-EA 适用于轻量级网络的自动网络架构搜索方法 参考
NAS ESR-EA: Efficient Residual Dense Block Search for Image Super-resolution 基于网络架构搜索的多目标图像超分方法 参考
NAS Adelaide-EA: SEGMENTATION-Adelaide-EA-NAS 图像分割网络架构搜索算法 参考
NAS SP-NAS: Serial-to-Parallel Backbone Search for Object Detection 面向物体检测及语义分割的高效主干网络架构搜索算法 参考
NAS Auto-Lane: CurveLane-NAS 一种端到端的车道线架构搜索算法 开发中
Model Compression Quant-EA: Quantization based on Evolutionary Algorithm 自动混合比特量化算法,使用进化策略对 CNN 网络结构每层量化位宽进行搜索 参考
Model Compression Prune-EA 使用进化策略对 CNN 网络结构进行自动剪枝压缩算法 参考
HPO ASHA: Asynchronous Successive Halving Algorithm 动态连续减半算法 参考
HPO TPE: Tree-structured Parzen Estimator Approach 一种基于树状结构 Parzen 估计方法的超参优化算法 参考
HPO BO: Bayesian Optimization 贝叶斯优化算法 参考
HPO BOHB: Hyperband with Bayesian Optimization 动态连续减半算法 参考
HPO BOSS: Bayesian Optimization via Sub-Sampling 基于贝叶斯优化框架下的一种针对计算资源受限,需要高效搜索的,具有普适性的超参优化算法 参考
Data Augmentation PBA: Population Based Augmentation: Efficient Learning of Augmentation Policy Schedules 基于 PBT 优化算法搜索数据增广策略时刻表的数据增广算法 参考
Data Augmentation cyclesr: CycleGAN + SR 底层视觉的无监督风格迁移算法 参考
Fully Train FMD 基于特征图扰动的神经网络训练方法 参考

获取和安装

请获取最新版本,参考安装指导完成安装,若希望在集群中部署 Vega,请参考部署指导

使用指导

Vega 高度模块化,可通过配置可完成搜索空间、搜索算法、pipeline 的构建,运行 Vega 应用就是加载配置文件,并根据配置来完成 AutoML 流程。 同时 Vega 提供了详细的操作示例供大家参考,可参考示例参考,如运行 CARS 算法示例:

cd examples
python3 ./run_example.py ./nas/cars/cars.yml

在使用 Vega 前,有必要充分了解配置项的含义,请参考配置指导

注意:

在运行示例前,需要在算法配置文件中配置数据集和预训练模型目录,缺省目录请参考示例参考

开发者指导

Vega 框架组件解耦,并采用注册机制来组合各个功能组件,便于扩充功能和算法,可参考开发者指导,了解 Vega 架构和主要机制。

同时可参考快速入门指导,通过实现一个简单的 CNN 网络搜索功能,通过实战快速进入 Vega 应用开发。

在 Vega 应用的开发中,最先遇到的问题就是,如何引入业务数据集到 Vega 中,可参考数据集指导

针对不同的算法,可参考算法开发指导,可根据文中提供的示例,一步步的将新算法添加到 Vega 中。

在 Automl 的大多数算法中搜索空间和网络是强相关强耦合的,我们尝试统一搜索空间的定义方式,使得同一种搜索空间能够适配不同的搜索算法,我们称之为细粒度搜索空间指导,欢迎大家尝试使用。

当然文档解决不了所有的疑问和问题,若你在使用中遇到任何问题,请及时通过 issue 反馈,我们会及时答复和解决。

参考列表

对象参考
用户 安装指导部署指导配置指导示例参考、任务参考 (分类检测分割超分)
开发者 API 参考开发者指导快速入门指导数据集指导算法开发指导细粒度搜索空间指导

合作和贡献

欢迎大家使用 Vega,有任何疑问、求助、修改 bug、贡献算法、完善文档,请在社区提交 issue,我们会及时回复沟通交流。 欢迎大家加入我们的 QQ 群: 833345709。

以上是关于《Vega 是诺亚方舟实验室自研的 AutoML 算法工具链》的主要内容,如果未能解决你的问题,请参考以下文章

gCastle | 华为诺亚方舟实验室自研的因果结构学习工具链

AI简报20220114期AI for Science催生科研新范式华为诺亚Transformer后量化技术...

阿里自研CPU大规模的应用!阿里自研的CPU有啥特点?

Apache Doris:百度自研的交互式 SQL 数据仓库正式孵化

自动化工具 自研的接口自动化测试平台

阿里动态 | 阿里云自研的云原生数据仓库AnalyticDB刷新世界纪录!