您当前的位置:首页 > 新闻 > 快讯

华为诺亚实验室开源AutoML算法工具链

时间:2020-07-05 10:47:04  来源:  作者:

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,加速模型训练和评估。

算法列表

华为诺亚实验室开源AutoML算法工具链

 

安装

1. 安装前的准备

安装Vega的主机有GPU,且需要满足如下要求:

  1. Ubuntu 16.04 or later (其他linux发行版未完全测试)。
  2. CUDA 10.0 下载 文档
  3. Python 3.7 下载
  4. pip

在安装Vega前,除了通过pip安装一些必备的软件包外,还需要单独安装 MMDetection 和 pycocotools。

1.1 通过pip安装必备软件包

在安装前,需要预先安装一些必备的软件包,可下载脚本install_dependencies.sh后安装:

bash install_dependencies.sh

在安装完成后,需要执行如下命令,确保环境设置正确:

which dask-scheduler

若该命令返回dask-scheduler的文件位置,则安装成功。若未返回路径信息,可考虑重新登录服务器,使得安装脚本设置的路径生效。 若该命令还未返回dask-scheduler文件位置,那需要将路径$HOME/.local/bin/配置到PATH环境变量中。

1.2 安装MMDetection

首先下载mmdetection-1.0rc1.zip。

然后解压后安装:

unzip mmdetection-1.0rc1.zip
cd mmdetection-1.0rc1
python3 setup.py develop --user

2. 安装Vega

完成以上准备后,下一步是在release下载vega-0.9.1-py3-none-any.whl,执行pip安装:

pip3 install vega-0.9.1.py3-none-any.whl

安装完成后,可以尝试在python中引入vega库,确保安装成功:

$ python3
Python 3.7.6 (default, Feb 27 2020, 19:54:18)
[GCC 5.3.1 20160413] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import vega
>>>

部署指导

1. 本地集群部署

1.1 部署前准备

本地集群部署Vega,需满足如下条件:

  1. Ubuntu 16.04 or later (其他Linux发行版和版本未测试)。
  2. CUDA 10.0 下载 文档
  3. Python 3.7 下载
  4. 安装pip
  5. 集群在部署时,需要预先安装一些必备的软件包,可下载脚本install_dependencies.sh后安装:
bash install_dependencies.sh
  1. 安装MPI软件, 可参考附录安装MPI完成安装过程。
  2. 安装 MMDetection(可选, 物体检测类算法所需的组件), 可参考附录安装MMDetection完成安装过程。
  3. 配置SSH互信。
  4. 构建NFS。

以上准备工作完成后,请从Vega库中下载如下部署包vega deploy package,部署包含有如下脚本,准备开始部署:

  1. 部署脚本:deploy_local_cluster.py
  2. 调测脚本:verify_local_cluster.py
  3. 从节点启动脚本: start_slave_worker.py

1.2 部署

  1. 首先配置部署信息到deploy.yml文件中,文件格式如下:master: n.n.n.n # master节点的IP地址 listen_port: 8786 # 端口号 slaves: ["n.n.n.n", "n.n.n.n", "n.n.n.n"] # slave节点地址
  2. 然后执行部署脚本在集群主节点中将deploy_local_cluster.py、verify_local_cluster.py、vega-1.0.0.whl、deploy.yml、install_dependencies.sh放到同一个文件夹中,执行如下命令,将Vega部署到主节点和从节点中:python deploy_local_cluster.py执行完成后,自动验证各个节点,会显示如下信息:success.

参考

安装MMDetection

  1. 下载MMDetection源码:在https://github.com/open-mmlab/mmdetection下载最新版本的MMDetection。
  2. 安装:切换到mmdetection目录下,执行下述命令即可编译安装:sudo python3 setup.py develop

安装MPI

安装MPI:

  1. 使用apt工具直接安装mpisudo apt-get install mpi
  2. 运行如下命令检查MPI是否可以运行mpirun

安装Apex

Apex需要从官网上获取最新的源码安装,不能直接使用pip库中的apex版本

  1. 下载apex源码: 在https://github.com/NVIDIA/apex下载最新版本的apex。
  2. 切换到apex目录下,执行下述命令即可编译安装:pip3 install -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./

配置SSH互信

网络任意两台主机都需要支持SSH互信,配置方法为:

  1. 安装ssh: sudo apt-get install sshd
  2. 分别生成密钥: ssh-keygen -t rsa 会在~/.ssh/文件下生成id_rsa, id_rsa.pub两个文件,其中id_rsa.pub是公钥
  3. 确认目录下的authorized_keys文件: 若不存在需要创建, 并chmod 600 ~/.ssh/authorized_keys改变权限。
  4. 拷贝公钥: 分别将公钥id_rsa.pub内容拷贝到其他机器的authorized_keys文件中。

构建NFS

服务器端:

  1. 安装NFS服务器:sudo apt install nfs-kernel-server
  2. 编写配置文件,将共享路径写入配置文件中:sudo echo "/data *(rw,sync,no_subtree_check,no_root_squash)" >> /etc/exports
  3. 创建共享目录:sudo mkdir -p /data
  4. 重启nfs服务器:sudo service nfs-kernel-server restart

客户端:

  1. 安装客户端工具:sudo apt install nfs-common
  2. 创建本地挂载目录sudo mkdir -p /data
  3. 挂载共享目录:sudo mount -t nfs 服务器ip:/data /data

注意:上述的共享目录(/data)的名字可以是任意的, 但需要保证主机和客户端的名字相同。

CUDA安装指导

Ubuntu下cuda安装

  1. 在英伟达官网下载安装包cuda_10.0.130_410.48_linux.run
  2. 执行安装命令: 命令如下:sudo sh cuda_10.0.130_410.48_linux.run在执行过程中,会有一系列提示,选择默认设置即可。需要注意的是其中有个选择,询问是否安装NVIDIA Accelerated Graphics Driver: Install NVIDIA Accelerated Graphics Driver for Linux‐x86_64? 请选择 no
  3. 环境变量配置: 执行:sudo gedit /etc/profile在profile文件的最后面添加内容:export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH保存profile文件,并执行以下命令,使环境变量立即生效source /etc/profile
  4. 安装cuda sample: 进入/usr/local/cuda/samples, 执行下列命令来build samples:sudo make all -j8全部编译完成后, 进入/usr/local/cuda/samples/1_Utilities/deviceQuery, 运行deviceQuery:./deviceQuery

Code https://github.com/huawei-noah/vega.git



Tags:华为诺亚实验室   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
Vega简介Vega是诺亚方舟实验室自研的AutoML算法工具链,有主要特点: 完备的AutoML能力:涵盖HPO(超参优化, HyperParameter Optimization)、Data-Augmentation、NAS(网络架构搜索...【详细内容】
2020-07-05  Tags: 华为诺亚实验室  点击:(313)  评论:(0)  加入收藏
▌简易百科推荐
就公安部单独制定新的部门规章《道路交通安全违法行为记分管理办法》并于2022年4月1日起实施,公安部交通管理局李江平局长今天(2021年12月27日)向记者进行了详细解答。李江平...【详细内容】
2021-12-27    北京日报客户端  Tags:交通违法   点击:(7)  评论:(0)  加入收藏
为打造清朗的网络生态环境,营造安全、健康、绿色的网络空间,更好维护MCN的正常运营秩序。今日头条将加强对MCN机构的管理,保障创作环境与用户体验,管理MCN机构帐号在平台相关行...【详细内容】
2021-12-24    头条安全中心  Tags:今日头条   点击:(9)  评论:(0)  加入收藏
人力资源社会保障部、民政部、退役军人事务部、全国总工会、全国工商联五部门联合开展的“2021年金秋招聘月活动”正式启动啦具体有哪些活动?一起来看...【详细内容】
2021-12-24  人力资源和社会保障部    Tags:金秋招聘   点击:(5)  评论:(0)  加入收藏
有一种天体既是彗星,又是小行星。 艺术家描绘的“法厄同”。NASA / JPL-Caltech / IPAC每年12月中旬是双子座流星雨的爆发期。2021年的双子座流星雨极大期出现在北京时间12月...【详细内容】
2021-12-14  星空天文    Tags:流星雨   点击:(15)  评论:(0)  加入收藏
中国人民银行决定于2021年12月15日下调金融机构存款准备金率0.5个百分点(不含已执行5%存款准备金率的金融机构)。本次下调后,金融机构加权平均存款准备金率为8.4%。中国人民银行...【详细内容】
2021-12-07    中国人民银行  Tags:存款准备金率   点击:(18)  评论:(0)  加入收藏
新京报快讯 据支付宝微信公众号消息,在开放共享和安全有序的原则下,支付宝与中国银联携手加速推进互联互通。最新的工作进展如下:支付宝与中国银联在2020年开始基于条码互联互...【详细内容】
2021-12-03    新京报  Tags:支付宝   点击:(17)  评论:(0)  加入收藏
今起,进返京有新政,航班、铁路、公路具体实施方案如下—— 进返京人员,须持48小时内核酸检测阴性证明和“北京健康宝”绿码。48小时怎么界定?阴性证明的形式有无要求?...【详细内容】
2021-11-17    北京日报  Tags:   点击:(69)  评论:(0)  加入收藏
今天(9日),北京市小客车指标调控管理办公室公布“配置指标申请、京牌小客车变更或转移登记申请的资格审核结果的通告”。按照《北京市小客车数量调控暂行规定》实施细则(20...【详细内容】
2021-11-10    北京日报  Tags:小客车摇号   点击:(16)  评论:(0)  加入收藏
一月一度的汽车销量排行榜,近日正式出炉。虽然受到芯片短缺等因素的影响,许多车企的产量都有所下降,部分车型的价格有所上涨,但是在10月份的销量排行榜中,许多车型依旧获得了不...【详细内容】
2021-11-10  汽车资讯库    Tags:汽车   点击:(59)  评论:(0)  加入收藏
随着交易和会员规则的落地,北交所7件基本业务规则已全部发布,市场开市运行的基础制度准备完成。根据安排,北交所开市后,新三板精选层的公司将整体平移进入北交所,成为交易所的上...【详细内容】
2021-11-05  米多课堂    Tags:北交所   点击:(24)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条