微软自动调参工具—NNI安装与快速上手,AutoML必备工具
文章目录
- 概述
- 直观的看看里面有什么
- 安装方法
- NNI 快速入门与超参优化
- 设置超参数的搜索范围
- 配置config.yaml
听说点进蝈仔帖子的都喜欢点赞加关注~~
老规矩官网送上:
https://github.com/microsoft/nni
中文官方文档:
https://github.com/microsoft/nni/blob/master/README_zh_CN.md
鸣谢:
https://www.zhihu.com/question/297982959
概述
自动机器学习是近年来火热的应用和研究方向,各种自动机器学习工具也层出不穷,它们各有优点与局限性。有的聚焦于算法,但不支持分布式训练;有的功能强大,但没有易用的用户界面,学习成本较高;有的只支持特定领域,不提供通用功能;还有的只能在云端使用。微软自动深度学习工具 NNI 具备以下优势:
• 支持多种框架:提供基于 Python 的 SDK,支持 PyTorch、TensorFlow、scikit-learn、LightGBM 等主流框架和库;
• 支持多种训练平台:除在本机直接运行外,还能通过 SSH 调度一组 GPU 服务器,或通过 FrameworkController、KubeFlow、OpenPAI 等在 Kubernetes 下调度大规模集群;
• 支持机器学习生命周期中的多环节:特征工程、神经网络架构搜索(NAS)、超参调优和模型压缩等;
• 提供易用的命令行工具和友好的 WEB 用户界面;
• 大量的示例能帮助你很快上手;
• 最后划重点,NNI的所有文档都有中文版!
直观的看看里面有什么
安装方法
NNI 支持并在 Ubuntu >= 16.04, macOS >= 10.14.1, 和 Windows 10 >= 1809 通过了测试。 在 python 64-bit >= 3.6 的环境中,只需要运行 pip install 即可完成安装。
Linux 或 macOS
python3 -m pip install --upgrade nni
Windows
python -m pip install --upgrade nni
如果想试试最新代码,可参考从源代码安装 NNI。
Linux 和 macOS 下 NNI 系统需求参考这里 ,Windows 参考这里。
注意:
如果遇到任何权限问题,可添加 --user 在用户目录中安装 NNI。
目前,Windows 上的 NNI 支持本机,远程和 OpenPAI 模式。 强烈推荐使用 Anaconda 或 Miniconda 在 Windows 上安装 NNI。
如果遇到如 Segmentation fault 等错误参考常见问题。 Windows 上的 FAQ 参考在 Windows 上使用 NNI。 Windows 上的 FAQ 参考在 Windows 上使用 NNI。
NNI 快速入门与超参优化
NNI 的使用也非常简单:首先,定义好需要搜索的超参空间;然后,在需要调参的网络启动之前,通过 NNI 的接口读取参数并在训练中将精确度等指标传入 NNI;最后,配置好要使用的调参算法等,即可开始。具体过程可参考入门教程:
https://aka.ms/nnizq
你也可以在这里找到所有示例:
https://aka.ms/nnize
设置超参数的搜索范围
打开NNI的示例程序先来观摩一下
cd ./nni/examples/trials/mnist/
可以看到目录中有 config.yml, mnist.py ,search_space.json 三个文件,这三个文件分别决定了我们的NNI配置文件,main.py和超参数搜索空间。
1.打开 search_space.json文件
{"dropout_rate":{"_type":"uniform","_value":[0.5, 0.9]},"conv_size":{"_type":"choice","_value":[2,3,5,7]},"hidden_size":{"_type":"choice","_value":[124, 512, 1024]},"batch_size": {"_type":"choice", "_value": [1, 4, 8, 16, 32]},"learning_rate":{"_type":"choice","_value":[0.0001, 0.001, 0.01, 0.1]}
}
配置config.yaml
authorName: default
experimentName: example_mnist
trialConcurrency: 1
maxExecDuration: 1h
maxTrialNum: 10
#choice: local, remote, pai
trainingServicePlatform: local
searchSpacePath: search_space.json
#choice: true, false
useAnnotation: false
tuner:#choice: TPE, Random, Anneal, Evolution, BatchTuner, MetisTuner, GPTuner#SMAC (SMAC should be installed through nnictl)builtinTunerName: TPEclassArgs:#choice: maximize, minimizeoptimize_mode: maximize
trial:command: python3 mnist.pycodeDir: .gpuNum: 0
微软自动调参工具—NNI安装与快速上手,AutoML必备工具相关推荐
- 【调参工具】微软自动调参工具—NNI
参考链接: 微软自动调参工具-NNI-安装与使用教程(附错误解决) nni官方文档 总结一下步骤 1.pip安装nni pip install nni 2.配置search_space.json,co ...
- 微软自动调参工具—NNI—安装与使用教程(附错误解决)
简介 NNI是微软的开源自动调参的工具.人工调参实在是太麻烦了,最近试了下水,感觉还不错,能在帮你调参的同时,把可视化的工作一起给做了,简单明了.然后感觉很多博客写的并不是很明白,所以打算自己补充一下 ...
- 微软自动调参工具 NNI 使用事例教程
第一步:安装 nni的安装通过pip命令就可以安装了.并且提供了example供参考学习. 系统配置要求:tensorflow,python >= 3.5 # 安装nnipython3 -m p ...
- 微软开源自动机器学习工具 – NNI安装与使用
微软开源自动机器学习工具 – NNI安装与使用 NNI的众多特点 开启你的第一次NNI之旅 · 安装 · 三步准备实验 (1) 准备搜索空间 (2) 准备实验代码 (3)定义实验配置 · 一行命令开始 ...
- 微软nni_微软开源自动机器学习工具NNI安装与使用
微软开源自动机器学习工具NNI安装与使用 发布时间:2018-12-29 11:51, 浏览次数:951 , 标签: NNI 微软开源自动机器学习工具 – NNI安装与使用 在机器学习建模时,除了准备 ...
- NNI 自动调参使用。
前言 NNI是由微软研究院,开发的深度学习开发工具. Neural Network Intelligence 是一个工具包,可以有效帮助用户设计并调优汲取学习模型的神经网络架构,以及超参数.具有易于使 ...
- 使用Ray Tune自动调参
文章目录 前言 一.Ray Tune是什么? 二.使用步骤 1.安装包 2.引入库 3.读入数据(与Ray Tune无关) 4.构建神经网络模型(与Ray Tune无关) 5.模型的训练和测试(与Ra ...
- pytorch使用Ray-tune对原有训练模型的代码改写,自动调参(一)
借助Ray-tune可以对pytorch自动调参,下面就一步步地改写,从原始的训练代码慢慢变为可以自动调参的代码的教程• 保姆级: 文章目录 安装依赖 pytorch模型改写至自动调参 步骤1:原有代 ...
- PID自动调参simulink仿真
PID自动调参----simulink仿真-----如何高效调参 设计PID控制器 系统识别APP识别传递函数 Simulink搭建仿真控制系统 使用Maltab自动调参工具PID Tuner调节PI ...
最新文章
- 小程序中点击input控件键盘弹出时placeholder文字上移
- T-SQL查询——详解公用表达式(CTE)
- Java编译那些事儿【转】
- centos nginx不是命令_Nginx 在CentOS 6/7 上的安装与使用
- C++模板类嵌套类内部类局部类的区别
- 如何对待第一个女朋友
- linux dac 的权限,Samba CAP_DAC_OVERRIDE文件权限绕过安全限制漏洞
- oracle full table scan,ORACLE优化之执行规划(1) - TABLE FULL SCAN/INDEX FULL SCAN
- uml类图例子_五分钟带你读懂UML类图
- listview-android:打造万能通用适配器(转)
- android任意函数绘制_图片和图形 | 可绘制对象概览
- 数据分析——常见数据指标汇总
- Spring Kafka Transaction
- cmd查看自己的CPU参数
- 微信小程序-自定义三级联动
- Pycharm自动添加文件头注释和函数注释参数
- Linux 系统Buffers与Cached的区别
- Java word转pdf 精确获取文件页数(jacob)
- 3ds max 2020贴图通道
- 阿里移动发布“汇川广告平台”发力移动大数据营销