README_zh_CN.md 21 KB
Newer Older
Chi Song's avatar
Chi Song committed
1
<p align="center">
2
<img src="docs/img/nni_logo.png" width="300"/>
Chi Song's avatar
Chi Song committed
3
4
5
6
</p>

* * *

kvartet's avatar
kvartet committed
7
[![MIT 许可证](https://img.shields.io/badge/license-MIT-brightgreen.svg)](LICENSE) [![生成状态](https://msrasrg.visualstudio.com/NNIOpenSource/_apis/build/status/full%20test%20-%20linux?branchName=master)](https://msrasrg.visualstudio.com/NNIOpenSource/_build/latest?definitionId=62&branchName=master) [![问题](https://img.shields.io/github/issues-raw/Microsoft/nni.svg)](https://github.com/Microsoft/nni/issues?q=is%3Aissue+is%3Aopen) [![Bug](https://img.shields.io/github/issues/Microsoft/nni/bug.svg)](https://github.com/Microsoft/nni/issues?q=is%3Aissue+is%3Aopen+label%3Abug) [![拉取请求](https://img.shields.io/github/issues-pr-raw/Microsoft/nni.svg)](https://github.com/Microsoft/nni/pulls?q=is%3Apr+is%3Aopen) [![版本](https://img.shields.io/github/release/Microsoft/nni.svg)](https://github.com/Microsoft/nni/releases) [![进入 https://gitter.im/Microsoft/nni 聊天室提问](https://badges.gitter.im/Microsoft/nni.svg)](https://gitter.im/Microsoft/nni?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![文档状态](https://readthedocs.org/projects/nni/badge/?version=latest)](https://nni.readthedocs.io/zh/latest/?badge=latest)
Chi Song's avatar
Chi Song committed
8

9
[English](README.md)
Chi Song's avatar
Chi Song committed
10

kvartet's avatar
kvartet committed
11
**NNI (Neural Network Intelligence)** 是一个轻量但强大的工具包,帮助用户**自动**的进行[特征工程](docs/zh_CN/FeatureEngineering/Overview.rst)[神经网络架构搜索](docs/zh_CN/NAS/Overview.rst)[超参调优](docs/zh_CN/Tuner/BuiltinTuner.rst)以及[模型压缩](docs/zh_CN/Compression/Overview.rst)
Chi Song's avatar
Chi Song committed
12

kvartet's avatar
kvartet committed
13
NNI 管理自动机器学习 (AutoML) 的 Experiment,**调度运行**由调优算法生成的 Trial 任务来找到最好的神经网络架构和/或超参,支持**各种训练环境**,如[本机](docs/zh_CN/TrainingService/LocalMode.rst)[远程服务器](docs/zh_CN/TrainingService/RemoteMachineMode.rst)[OpenPAI](docs/zh_CN/TrainingService/PaiMode.rst)[Kubeflow](docs/zh_CN/TrainingService/KubeflowMode.rst)[基于 K8S 的 FrameworkController(如,AKS 等)](docs/zh_CN/TrainingService/FrameworkControllerMode.rst)[DLWorkspace (又称 DLTS)](docs/zh_CN/TrainingService/DLTSMode.rst), [AML (Azure Machine Learning)](docs/zh_CN/TrainingService/AMLMode.rst), [AdaptDL(又称 ADL)](docs/zh_CN/TrainingService/AdaptDLMode.rst) 和其他云服务。
Chi Song's avatar
Chi Song committed
14
15
16
17
18
19
20
21

## **使用场景**

* 想要在自己的代码、模型中试验**不同的自动机器学习算法**
* 想要在**不同的环境中**加速运行自动机器学习。
* 想要更容易**实现或试验新的自动机器学习算法**的研究员或数据科学家,包括:超参调优算法,神经网络搜索算法以及模型压缩算法。
* 在机器学习平台中**支持自动机器学习**

kvartet's avatar
kvartet committed
22
### **[NNI v1.9 已发布!](https://github.com/microsoft/nni/releases) &nbsp;[<img width="48" src="docs/img/release_icon.png" />](#nni-released-reminder)**
Chi Song's avatar
Chi Song committed
23
24
25
26
27
28

## **NNI 功能一览**

NNI 提供命令行工具以及友好的 WebUI 来管理训练的 Experiment。 通过可扩展的 API,可定制自动机器学习算法和训练平台。 为了方便新用户,NNI 内置了最新的自动机器学习算法,并为流行的训练平台提供了开箱即用的支持。

下表中,包含了 NNI 的功能,同时在不断地增添新功能,也非常希望您能贡献其中。
Chi Song's avatar
Chi Song committed
29
30

<p align="center">
Chi Song's avatar
Chi Song committed
31
  <a href="#nni-has-been-released"><img src="docs/img/overview.svg" /></a>
Chi Song's avatar
Chi Song committed
32
33
34
35
36
</p>

<table>
  <tbody>
    <tr align="center" valign="bottom">
Chi Song's avatar
Chi Song committed
37
38
    <td>
      </td>
Chi Song's avatar
Chi Song committed
39
      <td>
Chi Song's avatar
Chi Song committed
40
        <b>支持的框架和库</b>
41
        <img src="docs/img/bar.png"/>
Chi Song's avatar
Chi Song committed
42
43
      </td>
      <td>
Chi Song's avatar
Chi Song committed
44
        <b>算法</b>
45
        <img src="docs/img/bar.png"/>
Chi Song's avatar
Chi Song committed
46
47
      </td>
      <td>
Chi Song's avatar
Chi Song committed
48
        <b>训练平台</b>
49
        <img src="docs/img/bar.png"/>
Chi Song's avatar
Chi Song committed
50
51
      </td>
    </tr>
Chi Song's avatar
Chi Song committed
52
    </tr>
Chi Song's avatar
Chi Song committed
53
    <tr valign="top">
Chi Song's avatar
Chi Song committed
54
55
56
    <td align="center" valign="middle">
    <b>内置</b>
      </td>
Chi Song's avatar
Chi Song committed
57
      <td>
Chi Song's avatar
Chi Song committed
58
      <ul><li><b>支持的框架</b></li>
Chi Song's avatar
Chi Song committed
59
60
61
        <ul>
          <li>PyTorch</li>
          <li>Keras</li>
Chi Song's avatar
Chi Song committed
62
          <li>TensorFlow</li>
Chi Song's avatar
Chi Song committed
63
64
          <li>MXNet</li>
          <li>Caffe2</li>
kvartet's avatar
kvartet committed
65
          <a href="docs/zh_CN/SupportedFramework_Library.rst">更多...</a><br/>
Chi Song's avatar
Chi Song committed
66
67
68
69
70
71
72
73
        </ul>
        </ul>
      <ul>
        <li><b>支持的库</b></li>
          <ul>
           <li>Scikit-learn</li>
           <li>XGBoost</li>
           <li>LightGBM</li>
kvartet's avatar
kvartet committed
74
           <a href="docs/zh_CN/SupportedFramework_Library.rst">更多...</a><br/>
Chi Song's avatar
Chi Song committed
75
76
77
78
79
          </ul>
      </ul>
        <ul>
        <li><b>示例</b></li>
         <ul>
Chi Song's avatar
Chi Song committed
80
           <li><a href="examples/trials/mnist-pytorch">MNIST-pytorch</li></a>
Chi Song's avatar
Chi Song committed
81
           <li><a href="examples/trials/mnist-tfv1">MNIST-tensorflow</li></a>
Chi Song's avatar
Chi Song committed
82
           <li><a href="examples/trials/mnist-keras">MNIST-keras</li></a>
kvartet's avatar
kvartet committed
83
84
85
86
87
88
           <li><a href="docs/zh_CN/TrialExample/GbdtExample.rst">Auto-gbdt</a></li>
           <li><a href="docs/zh_CN/TrialExample/Cifar10Examples.rst">Cifar10-pytorch</li></a>
           <li><a href="docs/zh_CN/TrialExample/SklearnExamples.rst">Scikit-learn</a></li>
           <li><a href="docs/zh_CN/TrialExample/EfficientNet.rst">EfficientNet</a></li>
           <li><a href="docs/zh_CN/TrialExample/OpEvoExamples.rst">GPU Kernel 调优</li></a>
              <a href="docs/zh_CN/SupportedFramework_Library.rst">更多...</a><br/>
Chi Song's avatar
Chi Song committed
89
          </ul>
Chi Song's avatar
Chi Song committed
90
91
        </ul>
      </td>
Chi Song's avatar
Chi Song committed
92
      <td align="left" >
kvartet's avatar
kvartet committed
93
        <a href="docs/zh_CN/Tuner/BuiltinTuner.rst">超参调优</a>
Chi Song's avatar
Chi Song committed
94
        <ul>
Chi Song's avatar
Chi Song committed
95
          <b>穷举搜索</b>
Chi Song's avatar
Chi Song committed
96
          <ul>
kvartet's avatar
kvartet committed
97
98
99
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#Random">Random Search(随机搜索)</a></li>
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#GridSearch">Grid Search(遍历搜索)</a></li>
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#Batch">Batch(批处理)</a></li>
Chi Song's avatar
Chi Song committed
100
101
            </ul>
          <b>启发式搜索</b>
Chi Song's avatar
Chi Song committed
102
          <ul>
kvartet's avatar
kvartet committed
103
104
105
106
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#Evolution">Naïve Evolution(朴素进化)</a></li>
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#Anneal">Anneal(退火算法)</a></li>
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#Hyperband">Hyperband</a></li>
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#PBTTuner">PBT</a></li>
Chi Song's avatar
Chi Song committed
107
          </ul>
Chi Song's avatar
Chi Song committed
108
109
          <b>贝叶斯优化</b>
            <ul>
kvartet's avatar
kvartet committed
110
111
112
113
114
              <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#BOHB">BOHB</a></li>
              <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#TPE">TPE</a></li>
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#SMAC">SMAC</a></li>
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#MetisTuner">Metis Tuner</a></li>
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#GPTuner">GP Tuner</a></li>
Chi Song's avatar
Chi Song committed
115
            </ul>
Chi Song's avatar
Chi Song committed
116
          <b>基于强化学习</b>
Chi Song's avatar
Chi Song committed
117
          <ul>
kvartet's avatar
kvartet committed
118
            <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#PPOTuner">PPO Tuner</a> </li>
Chi Song's avatar
Chi Song committed
119
          </ul>
Chi Song's avatar
Chi Song committed
120
        </ul>
kvartet's avatar
kvartet committed
121
          <a href="docs/zh_CN/NAS/Overview.rst">神经网络架构搜索</a>
Chi Song's avatar
Chi Song committed
122
          <ul>
Chi Song's avatar
Chi Song committed
123
            <ul>
kvartet's avatar
kvartet committed
124
125
126
127
128
129
130
131
132
              <li><a href="docs/zh_CN/NAS/ENAS.rst">ENAS</a></li>
              <li><a href="docs/zh_CN/NAS/DARTS.rst">DARTS</a></li>
              <li><a href="docs/zh_CN/NAS/PDARTS.rst">P-DARTS</a></li>
              <li><a href="docs/zh_CN/NAS/CDARTS.rst">CDARTS</a></li>
              <li><a href="docs/zh_CN/NAS/SPOS.rst">SPOS</a></li>
              <li><a href="docs/zh_CN/NAS/Proxylessnas.rst">ProxylessNAS</a></li>
              <li><a href="docs/zh_CN/Tuner/BuiltinTuner.rst#NetworkMorphism">Network Morphism</a></li>
              <li><a href="docs/zh_CN/NAS/TextNAS.rst">TextNAS</a></li>
              <li><a href="docs/zh_CN/NAS/Cream.rst">Cream</a></li>
Chi Song's avatar
Chi Song committed
133
            </ul>
Chi Song's avatar
Chi Song committed
134
          </ul>
kvartet's avatar
kvartet committed
135
          <a href="docs/zh_CN/Compression/Overview.rst">模型压缩</a>
Chi Song's avatar
Chi Song committed
136
137
138
          <ul>
            <b>剪枝</b>
            <ul>
kvartet's avatar
kvartet committed
139
140
141
142
143
144
145
              <li><a href="docs/zh_CN/Compression/Pruner.rst#agp-pruner">AGP Pruner</a></li>
              <li><a href="docs/zh_CN/Compression/Pruner.rst#slim-pruner">Slim Pruner</a></li>
              <li><a href="docs/zh_CN/Compression/Pruner.rst#fpgm-pruner">FPGM Pruner</a></li>
              <li><a href="docs/zh_CN/Compression/Pruner.rst#netadapt-pruner">NetAdapt Pruner</a></li>
              <li><a href="docs/zh_CN/Compression/Pruner.rst#simulatedannealing-pruner">SimulatedAnnealing Pruner</a></li>
              <li><a href="docs/zh_CN/Compression/Pruner.rst#admm-pruner">ADMM Pruner</a></li>
              <li><a href="docs/zh_CN/Compression/Pruner.rst#autocompress-pruner">AutoCompress Pruner</a></li>
Chi Song's avatar
Chi Song committed
146
147
148
            </ul>
            <b>量化</b>
            <ul>
kvartet's avatar
kvartet committed
149
150
              <li><a href="docs/zh_CN/Compression/Quantizer.rst#qat-quantizer">QAT Quantizer</a></li>
              <li><a href="docs/zh_CN/Compression/Quantizer.rst#dorefa-quantizer">DoReFa Quantizer</a></li>
Chi Song's avatar
Chi Song committed
151
152
            </ul>
          </ul>
kvartet's avatar
kvartet committed
153
          <a href="docs/zh_CN/FeatureEngineering/Overview.rst">特征工程(测试版)</a>
Chi Song's avatar
Chi Song committed
154
          <ul>
kvartet's avatar
kvartet committed
155
156
          <li><a href="docs/zh_CN/FeatureEngineering/GradientFeatureSelector.rst">GradientFeatureSelector</a></li>
          <li><a href="docs/zh_CN/FeatureEngineering/GBDTSelector.rst">GBDTSelector</a></li>
Chi Song's avatar
Chi Song committed
157
          </ul>
kvartet's avatar
kvartet committed
158
          <a href="docs/zh_CN/Assessor/BuiltinAssessor.rst">提前终止算法</a>
Chi Song's avatar
Chi Song committed
159
          <ul>
kvartet's avatar
kvartet committed
160
161
          <li><a href="docs/zh_CN/Assessor/BuiltinAssessor.rst#Medianstop">Median Stop(中位数终止)</a></li>
          <li><a href="docs/zh_CN/Assessor/BuiltinAssessor.rst#Curvefitting">Curve Fitting(曲线拟合)</a></li>
Chi Song's avatar
Chi Song committed
162
          </ul>
Chi Song's avatar
Chi Song committed
163
164
165
      </td>
      <td>
      <ul>
kvartet's avatar
kvartet committed
166
167
168
        <li><a href="docs/zh_CN/TrainingService/LocalMode.rst">本机</a></li>
        <li><a href="docs/zh_CN/TrainingService/RemoteMachineMode.rst">远程计算机</a></li>
        <li><a href="docs/zh_CN/TrainingService/AMLMode.rst">AML(Azure Machine Learning)</a></li>
Chi Song's avatar
Chi Song committed
169
        <li><b>基于 Kubernetes 的平台</b></li>
kvartet's avatar
kvartet committed
170
171
172
173
174
175
176
        <ul>
          <li><a href="docs/zh_CN/TrainingService/PaiMode.rst">OpenPAI</a></li>
          <li><a href="docs/zh_CN/TrainingService/KubeflowMode.rst">Kubeflow</a></li>
          <li><a href="docs/zh_CN/TrainingService/FrameworkControllerMode.rst">基于 Kubernetes(AKS 等)的 FrameworkController</a></li>
          <li><a href="docs/zh_CN/TrainingService/DLTSMode.rst">DLWorkspace(又称  DLTS)</a></li>
          <li><a href="docs/zh_CN/TrainingService/AdaptDLMode.rst">AdaptDL(又称 ADL)</a></li>
        </ul>
Chi Song's avatar
Chi Song committed
177
178
      </ul>
      </td>
Chi Song's avatar
Chi Song committed
179
    </tr>
Chi Song's avatar
Chi Song committed
180
181
182
183
184
185
186
187
188
      <tr align="center" valign="bottom">
      </td>
      </tr>
      <tr valign="top">
       <td valign="middle">
    <b>参考</b>
      </td>
     <td style="border-top:#FF0000 solid 0px;">
      <ul>
Chi Song's avatar
Chi Song committed
189
        <li><a href="https://nni.readthedocs.io/zh/latest/autotune_ref.html#trial">Python API</a></li>
kvartet's avatar
kvartet committed
190
        <li><a href="docs/zh_CN/Tutorial/AnnotationSpec.rst">NNI Annotation</a></li>
Chi Song's avatar
Chi Song committed
191
         <li><a href="https://nni.readthedocs.io/zh/latest/installation.html">支持的操作系统</a></li>
Chi Song's avatar
Chi Song committed
192
193
194
195
      </ul>
      </td>
       <td style="border-top:#FF0000 solid 0px;">
      <ul>
kvartet's avatar
kvartet committed
196
197
198
        <li><a href="docs/zh_CN/Tuner/CustomizeTuner.rst">自定义 Tuner</a></li>
        <li><a href="docs/zh_CN/Assessor/CustomizeAssessor.rst">自定义 Assessor</a></li>
        <li><a href="docs/zh_CN/Tutorial/InstallCustomizedAlgos.rst">安装自定义的 Tuner,Assessor,Advisor</a></li>
Chi Song's avatar
Chi Song committed
199
200
201
202
      </ul>
      </td>
        <td style="border-top:#FF0000 solid 0px;">
      <ul>
kvartet's avatar
kvartet committed
203
204
        <li><a href="docs/zh_CN/TrainingService/Overview.rst">支持训练平台</li>
        <li><a href="docs/zh_CN/TrainingService/HowToImplementTrainingService.rst">实现训练平台</a></li>
Chi Song's avatar
Chi Song committed
205
      </ul>
Chi Song's avatar
Chi Song committed
206
207
      </td>
    </tr>
Chi Song's avatar
Chi Song committed
208
209
210
  </tbody>
</table>

Chi Song's avatar
Chi Song committed
211
## **安装**
Chi Song's avatar
Chi Song committed
212

Chi Song's avatar
Chi Song committed
213
### **安装**
Chi Song's avatar
Chi Song committed
214

215
NNI 支持并在 Ubuntu >= 16.04, macOS >= 10.14.1, 和 Windows 10 >= 1809 通过了测试。 在 `python 64-bit >= 3.6` 的环境中,只需要运行 `pip install` 即可完成安装。
Chi Song's avatar
Chi Song committed
216

Chi Song's avatar
Chi Song committed
217
Linux 或 macOS
Chi Song's avatar
Chi Song committed
218
219

```bash
Chi Song's avatar
Chi Song committed
220
221
222
223
224
225
226
python3 -m pip install --upgrade nni
```

Windows

```bash
python -m pip install --upgrade nni
Chi Song's avatar
Chi Song committed
227
228
```

Chi Song's avatar
Chi Song committed
229
如果想试试最新代码,可参考从源代码[安装 NNI](https://nni.readthedocs.io/zh/latest/installation.html)
Chi Song's avatar
Chi Song committed
230

Chi Song's avatar
Chi Song committed
231
Linux 和 macOS 下 NNI 系统需求[参考这里](https://nni.readthedocs.io/zh/latest/Tutorial/InstallationLinux.html#system-requirements) ,Windows [参考这里](https://nni.readthedocs.io/zh/latest/Tutorial/InstallationWin.html#system-requirements)
Chi Song's avatar
Chi Song committed
232

Chi Song's avatar
Chi Song committed
233
注意:
Chi Song's avatar
Chi Song committed
234

Chi Song's avatar
Chi Song committed
235
* 如果遇到任何权限问题,可添加 `--user` 在用户目录中安装 NNI。
kvartet's avatar
kvartet committed
236
237
* 目前,Windows 上的 NNI 支持本机,远程和 OpenPAI 模式。 强烈推荐使用 Anaconda 或 Miniconda [在 Windows 上安装 NNI](docs/zh_CN/Tutorial/InstallationWin.rst)
* 如果遇到如 `Segmentation fault` 等错误参考[常见问题](docs/zh_CN/Tutorial/FAQ.rst)。 Windows 上的 FAQ 参考[在 Windows 上使用 NNI](docs/zh_CN/Tutorial/InstallationWin.rst#faq)
Chi Song's avatar
Chi Song committed
238

Chi Song's avatar
Chi Song committed
239
### **验证安装**
Chi Song's avatar
Chi Song committed
240

Chi Song's avatar
Chi Song committed
241
以下示例基于 TensorFlow 1.x 。确保运行环境中使用的的是 ** TensorFlow 1.x**
Chi Song's avatar
Chi Song committed
242

Chi Song's avatar
Chi Song committed
243
* 通过克隆源代码下载示例。
Chi Song's avatar
Chi Song committed
244
245
   
   ```bash
kvartet's avatar
kvartet committed
246
   git clone -b v1.9 https://github.com/Microsoft/nni.git
Chi Song's avatar
Chi Song committed
247
   ```
Chi Song's avatar
Chi Song committed
248
249

* 运行 MNIST 示例。
Chi Song's avatar
Chi Song committed
250
251
252
253
254
255
256
257
258
259
260
261
   
   Linux 或 macOS
   
   ```bash
   nnictl create --config nni/examples/trials/mnist-tfv1/config.yml
   ```
   
   Windows
   
   ```bash
   nnictl create --config nni\examples\trials\mnist-tfv1\config_windows.yml
   ```
Chi Song's avatar
Chi Song committed
262

Chi Song's avatar
Chi Song committed
263
264
* 在命令行中等待输出 `INFO: Successfully started experiment!`。 此消息表明 Experiment 已成功启动。 通过命令行输出的 `Web UI url` 来访问 Experiment 的界面。

Chi Song's avatar
Chi Song committed
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
```text
INFO: Starting restful server...
INFO: Successfully started Restful server!
INFO: Setting local config...
INFO: Successfully set local config!
INFO: Starting experiment...
INFO: Successfully started experiment!
-----------------------------------------------------------------------
The experiment id is egchD4qy
The Web UI urls are: http://223.255.255.1:8080   http://127.0.0.1:8080
-----------------------------------------------------------------------

You can use these commands to get more information about the experiment
-----------------------------------------------------------------------
         commands                       description

1. nnictl experiment show        show the information of experiments
2. nnictl trial ls               list all of trial jobs
3. nnictl top                    monitor the status of running experiments
4. nnictl log stderr             show stderr log content
5. nnictl log stdout             show stdout log content
6. nnictl stop                   stop an experiment
7. nnictl trial kill             kill a trial job by id
8. nnictl --help                 get help information about nnictl
-----------------------------------------------------------------------
```

kvartet's avatar
kvartet committed
292
* 在浏览器中打开 `Web UI url`,可看到下图的 Experiment 详细信息,以及所有的 Trial 任务。 查看[这里](docs/zh_CN/Tutorial/WebUI.rst)的更多页面。
Chi Song's avatar
Chi Song committed
293
294

<table style="border: none">
kvartet's avatar
kvartet committed
295
296
    <th><img src="./docs/img/webui-img/full-oview.png" alt="drawing" width="395" height="300"/></th>
    <th><img src="./docs/img/webui-img/full-detail.png" alt="drawing" width="410" height="300"/></th>
Chi Song's avatar
Chi Song committed
297
298
299
300
</table>

## **文档**

Chi Song's avatar
Chi Song committed
301
302
303
* 要了解 NNI,请阅读 [NNI 概述](https://nni.readthedocs.io/zh/latest/Overview.html)
* 要熟悉如何使用 NNI,请阅读[文档](https://nni.readthedocs.io/zh/latest/index.html)
* 要安装并使用 NNI,参考[安装指南](https://nni.readthedocs.io/zh/latest/installation.html)
Chi Song's avatar
Chi Song committed
304
305
306

## **贡献**

Chi Song's avatar
Chi Song committed
307
本项目欢迎任何贡献和建议。 大多数贡献都需要你同意参与者许可协议(CLA),来声明你有权,并实际上授予我们有权使用你的贡献。 有关详细信息,请访问 https://cla.microsoft.com。
Chi Song's avatar
Chi Song committed
308

Chi Song's avatar
Chi Song committed
309
当你提交拉取请求时,CLA机器人会自动检查你是否需要提供CLA,并修饰这个拉取请求(例如,标签、注释)。 只需要按照机器人提供的说明进行操作即可。 CLA 只需要同意一次,就能应用到所有的代码仓库上。
Chi Song's avatar
Chi Song committed
310

Chi Song's avatar
Chi Song committed
311
该项目采用了 [ Microsoft 开源行为准则 ](https://opensource.microsoft.com/codeofconduct/)。 有关详细信息,请参阅[常见问题解答](https://opensource.microsoft.com/codeofconduct/faq/),如有任何疑问或意见可联系 opencode@microsoft.com。
Chi Song's avatar
Chi Song committed
312

Chi Song's avatar
Chi Song committed
313
熟悉贡献协议后,即可按照 NNI 开发人员教程,创建第一个 PR:
Chi Song's avatar
Chi Song committed
314

Chi Song's avatar
Chi Song committed
315
* 推荐新贡献者先从简单的问题开始:['good first issue'](https://github.com/Microsoft/nni/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22)['help-wanted'](https://github.com/microsoft/nni/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22)
kvartet's avatar
kvartet committed
316
317
318
319
320
321
322
* [NNI 开发环境安装教程](docs/zh_CN/Tutorial/SetupNniDeveloperEnvironment.rst)
* [如何调试](docs/zh_CN/Tutorial/HowToDebug.rst)
* 如果有使用上的问题,可先查看[常见问题解答](https://github.com/microsoft/nni/blob/master/docs/zh_CN/Tutorial/FAQ.rst)。如果没能解决问题,可通过 [Gitter](https://gitter.im/Microsoft/nni?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) 联系 NNI 开发团队或在 GitHub 上 [报告问题](https://github.com/microsoft/nni/issues/new/choose)
* [自定义 Tuner](docs/zh_CN/Tuner/CustomizeTuner.rst)
* [实现定制的训练平台](docs/zh_CN/TrainingService/HowToImplementTrainingService.rst)
* [在 NNI 上实现新的 NAS Trainer](docs/zh_CN/NAS/Advanced.rst)
* [自定义 Advisor](docs/zh_CN/Tuner/CustomizeAdvisor.rst)
Chi Song's avatar
Chi Song committed
323

Chi Song's avatar
Chi Song committed
324
325
326
327
## **其它代码库和参考**

经作者许可的一些 NNI 用法示例和相关文档。

Chi Song's avatar
Chi Song committed
328
* ### **外部代码库** ### 
Chi Song's avatar
Chi Song committed
329
   * 在 NNI 中运行 [ENAS](examples/nas/enas/README_zh_CN.md)
Chi Song's avatar
Chi Song committed
330
   * [NNI 中的自动特征工程](examples/feature_engineering/auto-feature-engineering/README_zh_CN.md)
kvartet's avatar
kvartet committed
331
   * 使用 NNI 的 [矩阵分解超参调优](https://github.com/microsoft/recommenders/blob/master/examples/04_model_select_and_optimize/nni_surprise_svd.ipynb)
Chi Song's avatar
Chi Song committed
332
   * [scikit-nni](https://github.com/ksachdeva/scikit-nni) 使用 NNI 为 scikit-learn 开发的超参搜索。
Chi Song's avatar
Chi Song committed
333
* ### **相关文章** ### 
kvartet's avatar
kvartet committed
334
335
336
337
338
   * [超参数优化的对比](docs/zh_CN/CommunitySharings/HpoComparison.rst)
   * [神经网络结构搜索的对比](docs/zh_CN/CommunitySharings/NasComparison.rst)
   * [并行化顺序算法:TPE](docs/zh_CN/CommunitySharings/ParallelizingTpeSearch.rst)
   * [使用 NNI 为 SVD 自动调参](docs/zh_CN/CommunitySharings/RecommendersSvd.rst)
   * [使用 NNI 为 SPTAG 自动调参](docs/zh_CN/CommunitySharings/SptagAutoTune.rst)
Chi Song's avatar
Chi Song committed
339
   * [使用 NNI 为 scikit-learn 查找超参](https://towardsdatascience.com/find-thy-hyper-parameters-for-scikit-learn-pipelines-using-microsoft-nni-f1015b1224c1)
Chi Song's avatar
Chi Song committed
340
   * **博客** - [AutoML 工具(Advisor,NNI 与 Google Vizier)的对比](http://gaocegege.com/Blog/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/katib-new#%E6%80%BB%E7%BB%93%E4%B8%8E%E5%88%86%E6%9E%90) 作者:[@gaocegege](https://github.com/gaocegege) - kubeflow/katib 的设计与实现的总结与分析章节
Chi Song's avatar
Chi Song committed
341
   * **博客** - [NNI 2019 新功能汇总](https://mp.weixin.qq.com/s/7_KRT-rRojQbNuJzkjFMuA) by @squirrelsc
Chi Song's avatar
Chi Song committed
342

Chi Song's avatar
Chi Song committed
343
## **反馈**
Chi Song's avatar
Chi Song committed
344

Chi Song's avatar
Chi Song committed
345
* [在 GitHub 上提交问题](https://github.com/microsoft/nni/issues/new/choose)
Chi Song's avatar
Chi Song committed
346
*[Stack Overflow](https://stackoverflow.com/questions/tagged/nni?sort=Newest&edited=true) 上使用 nni 标签提问。
Chi Song's avatar
Chi Song committed
347
348
349
350
*[Gitter](https://gitter.im/Microsoft/nni?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) 中参与讨论。

加入聊天组: 

Chi Song's avatar
Chi Song committed
351
352
353
| Gitter                                                                                                      |   | 微信                                                                      |
| ----------------------------------------------------------------------------------------------------------- | - | ----------------------------------------------------------------------- |
| ![图片](https://user-images.githubusercontent.com/39592018/80665738-e0574a80-8acc-11ea-91bc-0836dc4cbf89.png) | 或 | ![image](https://github.com/scarlett2018/nniutil/raw/master/wechat.png) |
Chi Song's avatar
Chi Song committed
354

Chi Song's avatar
Chi Song committed
355
356
## 相关项目

kvartet's avatar
kvartet committed
357
以探索先进技术和开放为目标,[Microsoft Research (MSR)](https://www.microsoft.com/en-us/research/group/systems-and-networking-research-group-asia/) 还发布了一些相关的开源项目。
Chi Song's avatar
Chi Song committed
358
359
360
361
362
363
364
365

* [OpenPAI](https://github.com/Microsoft/pai):作为开源平台,提供了完整的 AI 模型训练和资源管理能力,能轻松扩展,并支持各种规模的私有部署、云和混合环境。
* [FrameworkController](https://github.com/Microsoft/frameworkcontroller):开源的通用 Kubernetes Pod 控制器,通过单个控制器来编排 Kubernetes 上所有类型的应用。
* [MMdnn](https://github.com/Microsoft/MMdnn):一个完整、跨框架的解决方案,能够转换、可视化、诊断深度神经网络模型。 MMdnn 中的 "MM" 表示 model management(模型管理),而 "dnn" 是 deep neural network(深度神经网络)的缩写。
* [SPTAG](https://github.com/Microsoft/SPTAG) : Space Partition Tree And Graph (SPTAG) 是用于大规模向量的最近邻搜索场景的开源库。

我们鼓励研究人员和学生利用这些项目来加速 AI 开发和研究。

Chi Song's avatar
Chi Song committed
366
367
## **许可协议**

Chi Song's avatar
Chi Song committed
368
代码库遵循 [MIT 许可协议](LICENSE)