Skip to content
This repository was archived by the owner on Sep 18, 2024. It is now read-only.

Commit 36ba04c

Browse files
Bonytuxinzhang3
andauthored
update draft note (#5668)
Co-authored-by: xinzhang3 <xinzhang3@microsoft.com>
1 parent b84d25b commit 36ba04c

4 files changed

Lines changed: 129 additions & 3 deletions

File tree

dependencies/recommended.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,5 @@ tianshou >= 0.4.1
2020
matplotlib
2121
git+https://github.com/microsoft/nn-Meter.git#egg=nn_meter
2222
sympy
23-
timm >= 0.5.4
23+
timm >= 0.5.4
24+
typing_extensions >= 4.7.0

dependencies/required.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,6 @@ scikit-learn >= 0.24.1
1919
scipy < 1.8 ; python_version < "3.8"
2020
scipy ; python_version >= "3.8"
2121
tqdm
22-
typeguard >= 3.0.0
22+
typeguard >= 3.0.0, < 4.1.3
2323
typing_extensions >= 4.7.0
2424
websockets >= 10.1

docs/source/conf.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
version = ''
3232
# The full version, including alpha/beta/rc tags
3333
# FIXME: this should be written somewhere globally
34-
release = 'v3.0rc1'
34+
release = 'v3.0pt1'
3535

3636
# -- General configuration ---------------------------------------------------
3737

@@ -117,6 +117,8 @@
117117
r'https://cla\.opensource\.microsoft\.com',
118118
r'https://www\.docker\.com/',
119119
r'https://nlp.stanford.edu/projects/glove/',
120+
r'https://code.visualstudio.com/docs/python/editing#_formatting',
121+
r'https://dl.acm.org/doi/10.1145/3352020.3352031',
120122

121123
# remove after 3.0 release
122124
r'https://nni\.readthedocs\.io/en/v2\.10/compression/overview\.html',

docs/source/release.rst

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,126 @@
55
Change Log
66
==========
77

8+
9+
Release 3.0 - 21/8/2023
10+
-----------------------
11+
12+
Web Portal
13+
^^^^^^^^^^
14+
15+
* New look and feel
16+
17+
Neural Architecture Search
18+
^^^^^^^^^^^^^^^^^^^^^^^^^^
19+
20+
* **Breaking change**: ``nni.retiarii`` is no longer maintained and tested. Please migrate to ``nni.nas``.
21+
22+
* Inherit ``nni.nas.nn.pytorch.ModelSpace``, rather than use ``@model_wrapper``.
23+
* Use ``nni.choice``, rather than ``nni.nas.nn.pytorch.ValueChoice``.
24+
* Use ``nni.nas.experiment.NasExperiment`` and ``NasExperimentConfig``, rather than ``RetiariiExperiment``.
25+
* Use ``nni.nas.model_context``, rather than ``nni.nas.fixed_arch``.
26+
* Please refer to `quickstart <https://nni.readthedocs.io/en/v3.0rc1/tutorials/hello_nas.html>`_ for more changes.
27+
28+
* A refreshed experience to construct model space.
29+
30+
* Enhanced debuggability via ``freeze()`` and ``simplify()`` APIs.
31+
* Enhanced expressiveness with ``nni.choice``, ``nni.uniform``, ``nni.normal`` and etc.
32+
* Enhanced experience of customization with ``MutableModule``, ``ModelSpace`` and ``ParamterizedModule``.
33+
* Search space with constraints is now supported.
34+
35+
* Improved robustness and stability of strategies.
36+
37+
* Supported search space types are now enriched for PolicyBaseRL, ENAS and Proxyless.
38+
* Each step of one-shot strategies can be executed alone: model mutation, evaluator mutation and training.
39+
* Most multi-trial strategies now supports specifying seed for reproducibility.
40+
* Performance of strategies have been verified on a set of benchmarks.
41+
42+
* Strategy/engine middleware.
43+
44+
* Filtering, replicating, deduplicating or retrying models submitted by any strategy.
45+
* Merging or transforming models before executing (e.g., CGO).
46+
* Arbitrarily-long chains of middlewares.
47+
48+
* New execution engine.
49+
50+
* Improved debuggability via SequentialExecutionEngine: trials can run in a single process and breakpoints are effective.
51+
* The old execution engine is now decomposed into execution engine and model format.
52+
* Enhanced extensibility of execution engines.
53+
54+
* NAS profiler and hardware-aware NAS.
55+
56+
* New profilers profile a model space, and quickly compute a profiling result for a sampled architecture or a distribution of architectures (FlopsProfiler, NumParamsProfiler and NnMeterProfiler are officially supported).
57+
* Assemble profiler with arbitrary strategies, including both multi-trial and one-shot.
58+
* Profiler are extensible. Strategies can be assembled with arbitrary customized profilers.
59+
60+
Model Compression
61+
^^^^^^^^^^^^^^^^^
62+
63+
* Compression framework is refactored, new framework import path is ``nni.contrib.compression``.
64+
65+
* Configure keys are refactored, support more detailed compression configurations.
66+
* Support multi compression methods fusion.
67+
* Support distillation as a basic compression component.
68+
* Support more compression targets, like ``input``, ``ouptut`` and any registered paramters.
69+
* Support compressing any module type by customizing module settings.
70+
71+
* Model compression support in DeepSpeed mode.
72+
73+
* Fix example bugs.
74+
75+
* Pruning
76+
77+
* Pruner interfaces have fine-tuned for easy to use.
78+
* Support configuring ``granularity`` in pruners.
79+
* Support different mask ways, multiply zero or add a large negative value.
80+
* Support manully setting dependency group and global group.
81+
* A new powerful pruning speedup is released, applicability and robustness have been greatly improved.
82+
* The end to end transformer compression tutorial has been updated, achieved more extreme compression performance.
83+
* Fix config list in the examples.
84+
85+
* Quantization
86+
87+
* Support using ``Evaluator`` to handle training/inferencing.
88+
* Support more module fusion combinations.
89+
* Support configuring ``granularity`` in quantizers.
90+
* Bias correction is supported in the Post Training Quantization algorithm.
91+
* LSQ+ quantization algorithm is supported.
92+
93+
* Distillation
94+
95+
* DynamicLayerwiseDistiller and Adaptive1dLayerwiseDistiller are supported.
96+
97+
* Compression documents now updated for the new framework, the old version please view `v2.10 <https://nni.readthedocs.io/en/v2.10/>`_ doc.
98+
* New compression examples are under `nni/examples/compression <https://github.com/microsoft/nni/tree/v3.0rc1/examples/compression>`_
99+
100+
* Create a evaluator: `nni/examples/compression/evaluator <https://github.com/microsoft/nni/tree/v3.0rc1/examples/compression/evaluator>`_
101+
* Pruning a model: `nni/examples/compression/pruning <https://github.com/microsoft/nni/tree/v3.0rc1/examples/compression/pruning>`_
102+
* Quantize a model: `nni/examples/compression/quantization <https://github.com/microsoft/nni/tree/v3.0rc1/examples/compression/quantization>`_
103+
* Fusion compression: `nni/examples/compression/fusion <https://github.com/microsoft/nni/tree/v3.0rc1/examples/compression/fusion>`_
104+
105+
106+
Training Services
107+
^^^^^^^^^^^^^^^^^
108+
109+
* **Breaking change**: NNI v3.0 cannot resume experiments created by NNI v2.x
110+
* Local training service:
111+
112+
* Reduced latency of creating trials
113+
* Fixed "GPU metric not found"
114+
* Fixed bugs about resuming trials
115+
116+
* Remote training service:
117+
118+
* ``reuse_mode`` now defaults to ``False``; setting it to ``True`` will fallback to v2.x remote training service
119+
* Reduced latency of creating trials
120+
* Fixed "GPU metric not found"
121+
* Fixed bugs about resuming trials
122+
* Supported viewing trial logs on the web portal
123+
* Supported automatic recover after temporary server failure (network fluctuation, out of memory, etc)
124+
125+
* Get rid of IoC and remove unused training services.
126+
127+
8128
Release 3.0 Preview - 5/9/2022
9129
------------------------------
10130

@@ -25,18 +145,21 @@ Neural Architecture Search
25145
* Please refer to `quickstart <https://nni.readthedocs.io/en/v3.0rc1/tutorials/hello_nas.html>`_ for more changes.
26146

27147
* A refreshed experience to construct model space.
148+
28149
* Enhanced debuggability via ``freeze()`` and ``simplify()`` APIs.
29150
* Enhanced expressiveness with ``nni.choice``, ``nni.uniform``, ``nni.normal`` and etc.
30151
* Enhanced experience of customization with ``MutableModule``, ``ModelSpace`` and ``ParamterizedModule``.
31152
* Search space with constraints is now supported.
32153

33154
* Improved robustness and stability of strategies.
155+
34156
* Supported search space types are now enriched for PolicyBaseRL, ENAS and Proxyless.
35157
* Each step of one-shot strategies can be executed alone: model mutation, evaluator mutation and training.
36158
* Most multi-trial strategies now supports specifying seed for reproducibility.
37159
* Performance of strategies have been verified on a set of benchmarks.
38160

39161
* Strategy/engine middleware.
162+
40163
* Filtering, replicating, deduplicating or retrying models submitted by any strategy.
41164
* Merging or transforming models before executing (e.g., CGO).
42165
* Arbitrarily-long chains of middlewares.

0 commit comments

Comments
 (0)