admin 管理员组

文章数量: 1087649

NNI学习(一)介绍与安装

官方文档:
(本文介绍均基于windows系统,Linux和Mac请参考GitHub的官方文档)

一、介绍

NNI (Neural Network Intelligence) 是一个工具包,可有效的帮助用户设计并调优机器学习模型的神经网络架构,复杂系统的参数(如超参)等。 NNI 的特性包括:易于使用,可扩展,灵活,高效。

NNI的体系结构:

相关概念:
Experiment(实验):实验是一次找到模型的最佳超参组合,或最好的神经网络架构的任务。 它由 Trial 和自动机器学习算法所组成。

搜索空间:是模型调优的范围。 例如,超参的取值范围。

Configuration(配置):配置是来自搜索空间的一个参数实例,每个超参都会有一个特定的值。

Trial: Trial 是一次尝试,它会使用某组配置(例如,一组超参值,或者特定的神经网络架构)。 Trial 会基于提供的配置来运行。

Tuner: Tuner 是一个自动机器学习算法,会为下一个 Trial 生成新的配置。 新的 Trial 会使用这组配置来运行。

Assessor:Assessor 分析 Trial 的中间结果(例如,测试数据集上定期的精度),来确定 Trial 是否应该被提前终止。

训练平台:是 Trial 的执行环境。 根据 Experiment 的配置,可以是本机,远程服务器组,或其它大规模训练平台(如,OpenPAI,Kubernetes)。

Experiment 的运行过程为:Tuner 接收搜索空间并生成配置。 这些配置将被提交到训练平台,如本机,远程服务器组或训练集群。 执行的性能结果会被返回给 Tuner。 然后,再生成并提交新的配置。
每次 Experiment 执行时,用户只需要定义搜索空间,改动几行代码,就能利用 NNI 内置的 Tuner/Assessor 和训练服务来搜索最好的超参组合以及神经网络结构。 基本上分为三步:
第一步:定义搜索空间
第二步:改动模型代码
第三步:定义 Experiment 配置

二、安装

和AutoKeras相比,这个装起来太简单了!!感动到哭!
官方推荐anaconda,我用anaconda prompt执行命令:

python -m pip install --upgrade nni

安装完毕可以进行验证,验证试验依赖TensorFlow:

git clone -b v0.8 .git
nnictl create --config nni\examples\trials\mnist\config_windows.yml


出现以上信息就好了
ps
第一次运行的时候出了restful server start failed的错误,查了查也没查出来怎么回事,重新运行一遍就好了。

本文标签: NNI学习(一)介绍与安装