From 3658374ea79b4627140a4f4bfcae5897509c873b Mon Sep 17 00:00:00 2001
From: Guy Jacob <guy.jacob@intel.com>
Date: Fri, 22 Jun 2018 02:15:31 +0300
Subject: [PATCH] Updated docs related to quantization

---
 .gitignore                                 |   1 +
 docs-src/docs/algo_quantization.md         |  58 +-
 docs-src/docs/design.md                    |  30 +-
 docs-src/docs/imgs/training_quant_flow.png | Bin 0 -> 101597 bytes
 docs-src/docs/imgs/use-flow.png            | Bin 75598 -> 224802 bytes
 docs-src/docs/quantization.md              |  31 +-
 docs-src/docs/schedule.md                  |  61 +-
 docs-src/docs/usage.md                     |  12 +-
 docs/algo_quantization/index.html          |  53 +-
 docs/design/index.html                     |  25 +-
 docs/imgs/baidu_rnn_pruning.png            | Bin 0 -> 266165 bytes
 docs/imgs/training_quant_flow.png          | Bin 0 -> 101597 bytes
 docs/imgs/use-flow.png                     | Bin 75598 -> 224802 bytes
 docs/index.html                            |   2 +-
 docs/quantization/index.html               |  28 +-
 docs/schedule/index.html                   |  60 +-
 docs/search/search_index.json              | 663 +++++++++++----------
 docs/sitemap.xml                           |  24 +-
 docs/usage/index.html                      |  29 +-
 19 files changed, 687 insertions(+), 390 deletions(-)
 create mode 100644 docs-src/docs/imgs/training_quant_flow.png
 mode change 100755 => 100644 docs-src/docs/imgs/use-flow.png
 create mode 100644 docs/imgs/baidu_rnn_pruning.png
 create mode 100644 docs/imgs/training_quant_flow.png

diff --git a/.gitignore b/.gitignore
index 8f641a3..69edb25 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,4 @@ env/
 .env/
 .idea/
 logs/
+.DS_Store
diff --git a/docs-src/docs/algo_quantization.md b/docs-src/docs/algo_quantization.md
index 05f6654..964d90f 100644
--- a/docs-src/docs/algo_quantization.md
+++ b/docs-src/docs/algo_quantization.md
@@ -1,5 +1,55 @@
 # Quantization Algorithms
 
+The following quantization methods are currently implemented in Distiller:
+
+## DoReFa
+
+(As proposed in [DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients](https://arxiv.org/abs/1606.06160))  
+  
+In this method, we first define the quantization function \(quantize_k\), which takes a real value \(a_f \in [0, 1]\) and outputs a discrete-valued \(a_q \in \left\{ \frac{0}{2^k-1}, \frac{1}{2^k-1}, ... , \frac{2^k-1}{2^k-1} \right\}\), where \(k\) is the number of bits used for quantization.
+
+\[a_q = quantize_k(a_f) = \frac{1}{2^k-1} round \left( \left(2^k - 1 \right) a_f \right)\]
+
+Activations are clipped to the \([0, 1]\) range and then quantized as follows:
+
+\[x_q = quantize_k(x_f)\]
+
+For weights, we define the following function \(f\), which takes an unbounded real valued input and outputs a real value in \([0, 1]\):
+
+\[f(w) = \frac{tanh(w)}{2 max(|tanh(w)|)} + \frac{1}{2} \]
+
+Now we can use \(quantize_k\) to get quantized weight values, as follows:
+
+\[w_q = 2 quantize_k \left( f(w_f) \right) - 1\]
+
+This method requires training the model with quantization, as discussed [here](quantization.md#training-with-quantization). Use the `DorefaQuantizer` class to transform an existing model to a model suitable for training with quantization using DoReFa.
+
+### Notes:
+
+- Gradients quantization as proposed in the paper is not supported yet.
+- The paper defines special handling for binary weights which isn't supported in Distiller yet.
+
+## WRPN
+
+(As proposed in [WRPN: Wide Reduced-Precision Networks](https://arxiv.org/abs/1709.01134))  
+
+In this method, activations are clipped to \([0, 1]\) and quantized as follows (\(k\) is the number of bits used for quantization):
+
+\[x_q = \frac{1}{2^k-1} round \left( \left(2^k - 1 \right) x_f \right)\]
+
+Weights are clipped to \([-1, 1]\) and quantized as follows:
+
+\[w_q = \frac{1}{2^{k-1}-1} round \left( \left(2^{k-1} - 1 \right)w_f \right)\]
+
+Note that \(k-1\) bits are used to quantize weights, leaving one bit for sign.
+
+This method requires training the model with quantization, as discussed [here](quantization/#training-with-quantization). Use the `WRPNQuantizer` class to transform an existing model to a model suitable for training with quantization using WRPN.
+
+### Notes:
+
+- The paper proposed widening of layers as a means to reduce accuracy loss. This isn't implemented as part of `WRPNQuantizer` at the moment. To experiment with this, modify your model implementation to have wider layers.
+- The paper defines special handling for binary weights which isn't supported in Distiller yet.
+
 ## Symmetric Linear Quantization
 
 In this method, a float value is quantized by multiplying with a numeric constant (the **scale factor**), hence it is **Linear**. We use a signed integer to represent the quantized range, with no quantization bias (or "offset") used. As a result, the floating-point range considered for quantization is **symmetric** with respect to zero.  
@@ -10,14 +60,16 @@ Let us denote the original floating-point tensor by \(x_f\), the quantized tenso
 (The \(round\) operation is round-to-nearest-integer)  
   
 Let's see how a **convolution** or **fully-connected (FC)** layer is quantized using this method: (we denote input, output, weights and bias with  \(x, y, w\) and \(b\) respectively)
-\[y_f = \sum{x_f w_f} + b_f = \sum{\frac{x_q}{q_x} \frac{w_q}{q_w}} + \frac{b_q}{q_b} = \frac{1}{q_x q_w} \sum{(x_q w_q + \frac{q_b}{q_x q_w}b_q)}\]
-\[y_q = round(q_y y_f) = round(\frac{q_y}{q_x q_w} \sum{(x_q w_q + \frac{q_b}{q_x q_w}b_q)})\]
+\[y_f = \sum{x_f w_f} + b_f = \sum{\frac{x_q}{q_x} \frac{w_q}{q_w}} + \frac{b_q}{q_b} = \frac{1}{q_x q_w} \sum{ \left( x_q w_q + \frac{q_b}{q_x q_w}b_q \right) }\]
+\[y_q = round(q_y y_f) = round\left(\frac{q_y}{q_x q_w} \sum{ \left( x_q w_q + \frac{q_b}{q_x q_w}b_q \right) } \right) \]
 Note how the bias has to be re-scaled to match the scale of the summation.
 
 ### Implementation
+
 We've implemented **convolution** and **FC** using this method.  
 
-- They are implemented by wrapping the existing PyTorch layers with quantization and de-quantization operations. That is - the computation is done on floating-point tensors, but the values themselves are restricted to integer values.  
+- They are implemented by wrapping the existing PyTorch layers with quantization and de-quantization operations. That is - the computation is done on floating-point tensors, but the values themselves are restricted to integer values. The wrapper is implemented in the `RangeLinearQuantParamLayerWrapper` class.  
 - All other layers are unaffected and are executed using their original FP32 implementation.  
+- To automatically transform an existing model to a quantized model using this method, use the `SymmetricLinearQuantizer` class.
 - For weights and bias the scale factor is determined once at quantization setup ("offline"), and for activations it is determined dynamically at runtime ("online").  
 - **Important note:** Currently, this method is implemented as **inference only**, with no back-propagation functionality. Hence, it can only be used to quantize a pre-trained FP32 model, with no re-training. As such, using it with \(n < 8\) is likely to lead to severe accuracy degradation for any non-trivial workload.
\ No newline at end of file
diff --git a/docs-src/docs/design.md b/docs-src/docs/design.md
index 0fbf94a..e7a3a7c 100755
--- a/docs-src/docs/design.md
+++ b/docs-src/docs/design.md
@@ -47,20 +47,36 @@ A quantized model is obtained by replacing existing operations with quantized ve
 
 In Distiller we will provide a set of quantized versions of common operations which will enable implementation of different quantization methods. The user can write a quantized model from scratch, using the quantized operations provided.
 
-We also provide a mechanism which takes an existing model and automatically replaces required operations with quantized versions. The high-level flow is as follows:
+We also provide a mechanism which takes an existing model and automatically replaces required operations with quantized versions. This mechanism is exposed by the `Quantizer` class. `Quantizer` should be sub-classed for each quantization method.
 
-- Define a **mapping** between the module types to be replaced (e.g. Conv2D, Linear, etc.) to a function which generates the replacement module.
+### Model Transformation
+
+The high-level flow is as follows:
+
+- Define a **mapping** between the module types to be replaced (e.g. Conv2D, Linear, etc.) to a function which generates the replacement module. The mapping is defined in the `replacement_factory` attribute of the `Quantizer` class.
 - Iterate over the modules defined in the model. For each module, if its type is in the mapping, call the replacement generation function. We pass the existing module to this function to allow wrapping of it.
-- Replace the existing module with the module returned by the function.
+- Replace the existing module with the module returned by the function. It is important to note that the **name** of the module **does not** change, as that could break the `forward` function of the parent module.
 
-Different quantization methods may, obviously, use different quantized operations. In addition, different methods may employ different "strategies" of replacing / wrapping existing modules. For instance, some methods replace ReLU with another activation function, while others keep it. Hence, for each quantization method, a different **mapping** will likely be defined.
+Different quantization methods may, obviously, use different quantized operations. In addition, different methods may employ different "strategies" of replacing / wrapping existing modules. For instance, some methods replace ReLU with another activation function, while others keep it. Hence, for each quantization method, a different **mapping** will likely be defined.  
+Each sub-class of `Quantizer` should populate the `replacement_factory` dictionary attribute with the appropriate mapping.
 
-This mechanism is exposed by the `Quantizer` class:
+### Flexible Bit-Widths
 
-- `Quantizer` should be sub-classed for each quantization method.
 - Each instance of `Quantizer` is parameterized by the number of bits to be used for quantization of different tensor types. The default ones are activations and weights. These are the `bits_activations` and `bits_weights` parameters in `Quantizer`'s constructor. Sub-classes may define bit-widths for other tensor types as needed.
 - We also want to be able to override the default number of bits mentioned in the bullet above for certain layers. These could be very specific layers. However, many models are comprised of building blocks ("container" modules, such as Sequential) which contain several modules, and it is likely we'll want to override settings for entire blocks, or for a certain module across different blocks. When such building blocks are used, the names of the internal modules usually follow some pattern.
    - So, for this purpose, Quantizer also accepts a mapping of regular expressions to number of bits. This allows the user to override specific layers using they're exact name, or a group of layers via a regular expression. This mapping is passed via the `bits_overrides` parameter in the constructor.
 
+### Weights Quantization
+
+The `Quantizer` class also provides an API to quantize the weights of all layers at once. To use it, the `param_quantization_fn` attribute needs to point to a function that accepts a tensor and the number of bits. During model transformation, the `Quantizer` class will build a list of all model parameters that need to be quantized along with their bit-width. Then, the `quantize_params` function can be called, which will iterate over all parameters and quantize them using `params_quantization_fn`.
+
+### Training with Quantization
+
+The `Quantizer` class supports training with quantization in the loop, as described [here](quantization.md#training-with-quantization). This is enabled by setting `train_with_fp_copy=True` in the `Quantizer` constructor. At model transformation, in each module that has parameters that should be quantized, a new `torch.nn.Parameter` is added, which will maintain the required full precision copy of the parameters. Note that this is done in-place - a new module **is not** created. We preferred not to sub-class the existing PyTorch modules for this purpose. In order to this in-place, and also guarantee proper back-propagation through the weights quantization function, we employ the following "hack":
+
+1. The existing `torch.nn.Parameter`, e.g. `weights`, is replaced by a `torch.nn.Parameter` named `float_weight`.
+2. To maintain the existing functionality of the module, we then register a `buffer` in the module with the original name - `weights`.
+3. During training, `float_weight` will be passed to `param_quantization_fn` and the result will be stored in `weight`.
+
 The base `Quantizer` class is implemented in `distiller/quantization/quantizer.py`.  
-For a simple sub-class implementing symmetric linear quantization, see `SymmetricLinearQuantizer` in `distiller/quantization/range_linear.py`.
+For a simple sub-class implementing symmetric linear quantization, see `SymmetricLinearQuantizer` in `distiller/quantization/range_linear.py`. For examples of lower-precision methods using training with quantization see `DorefaQuantizer` and `WRPNQuantizer` in `distiller/quantization/clipped_linear.py`
diff --git a/docs-src/docs/imgs/training_quant_flow.png b/docs-src/docs/imgs/training_quant_flow.png
new file mode 100644
index 0000000000000000000000000000000000000000..5c91c1d44075b40aea10926d28320465be02c6b3
GIT binary patch
literal 101597
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
ADF6Tf

literal 0
HcmV?d00001

diff --git a/docs-src/docs/imgs/use-flow.png b/docs-src/docs/imgs/use-flow.png
old mode 100755
new mode 100644
index 4b1ff29980eb5a0c5cec1e417d7df35bc1a1f466..de4a3bb64413cdaa89659d78379eaffbbc4ab066
GIT binary patch
literal 224802
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%0DRa_#b#nyI{k!>3%j
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

literal 75598
zcmY&=b97u$zjkb=F&j6w-NtHc+cqa@%*HkvJ85j&wryvUJAL2p-nG6z&YCqdXP-H1
zpN&Vq3I8cCfsBBU00stzEG79v2@DMU5p=}C!GJ!|5f^;}y?{F_Nr-|~O%k4f-oQIZ
zYC3~~;b8nbz|C`JK~03gq<)B~cz~bl!uljFY<z4bb&MEH)jVy&MT7+eLTXD?Dm^$a
zuHLx%G+8ySE?SkVX|Gx7x-NEriL4AGd556G0nS|$GS*)Nrld9<Fo%gvGCyNeyzgS}
zvhOmVI;UP@?}W&-*dg%2qXWc+$#c;yxZqM(<z!sGYmr0vbl$Tq;(LoPorscc_f51|
z&cLxFLcA8O(bu?*i{dcp*^G>j6Q19tQG1UUTkbv}H>OhbQs`;(kiB}IrN)X6*))#q
z-+IYW>g9YJFn_#g_SmpaNJvmGEGlXN4};ARxlZ5bJH(u|sa#}QH4ADo#^SeLtf;lC
z)={Hvl8K<8$(tsaZCu8|h-glkpfgKIy{<ME$=6={jeh-d-EJIaed`I?e*(vnv@a0`
zRQXeSAJ#U1^V+=S*M@K%x8CAeYv}|Fr<D!^4y>}pC**VaHfOHq6S-#H!YR=!Zst|M
zmy!x0XO}aui(T$zY-#Ni>c`LPuqSm%hW(B}FW3x~x}Ht*jpo9X$9MU_rK{e2DJCT{
zBI2BTAUt}%3Z9tM!jc~%c@QU0=6D!RHizSkta<8P2oHnp>lzN8I%(db5<Ii_H7}ia
z<w>ovgr6X<+uF-{A3CMkO=`t1M#c&QcE*y;#TP5aaQN5=nwp~{689FJkj2f~o!Lrz
zRw(vbF1$pd>fDpLlA-V^Cw%~q&*nD;9T&i_w7d)#eo~i64hUD#ZYZZ_>EBHK7<P=&
zh@9TN?NzfIFE1~_e>3;xS>7*A{ZBqQAdrQHyMhV8(mM;00GqyVep9whn;ladZJ6(;
zKNT9>s&bH{g(u*C260KnFwM@6SX~if8@MHMN1&!8CQcJ7C{g!V`+HB2o)$Ec=7x7*
z2i))6ks07~Sg9m(FyA)@U1sYdQsPG030{SJm4HUkPb~0X3xIW^&h3EbfZZNSl(*(!
zQ!T!NgBHum4qB7fE3dDh%jh|rB!qWQ=Y5CFFDU3zwm`_pIE_TS3sWsWeVv(xo5utn
zC;e^V>}VM`qH1&NIg2K#{)_BSi?vfVb@J=|D4YdHIV<sNH7}__t%eO8j8^JNbd;*{
z%Be%NpcrT%bK?N$?M+OCCHJ|tfBrNlL>|J9VgMu9n(*pILTi{O0hc>}7^>*gH>_XD
z&CeLbc@|}edS1v!pN3;c0{G~sYE**zj)x^mz~?O^8I^FTVtV%(TwJT4G&_a*L!F`q
z%$=}n%WmS9EX(qamV7*)(6K|nK*;|X$(X>fdi0b$UJtBcQ7-V~f`no~{w^%UkK8Ax
zAN)&;xag-vk*E+7J|KjwdkanU#6~bD_R!sq!j+D*Gvgr^k<_A82*M|z!2$|D5KNEP
z_Ok=ipi$E3i93zEu!N%jSLE8>?>SBAI-o-tq5K2}*X@2&qDGu&v-uIO=jkQg{=>oA
zem%1Hz(U}Y{iPdOc@4#n&@n`zPVvnTvl5>szt}G+e@}hZQm+kOwg?!LF-o*M<$39?
z-3Tl18Y`cEJP_>quS*`X_c+f<;|NdBGXEQgNX;m|swO5BN?mL~zD+UPWo)4u^GqFH
zyMT3{7mx5rqy!~2ago~ZWTM{-{}ieSZv9or_Oede$4UD0fzqH^<gHWq3krHTyPzba
z{iL6bpIi7)frysiskr;cn7j8FGJX16p4nR<q-~k6RH(v;65>nwWk0b&{mA@p-+sOG
zL`Z7Z^tM(8Ey0=_YBztSqYut^I%`GThlx@2>HaE`V3crS56N6vyj2P8DMHHMc_Ozr
ztpZN8Yzme^iaTFfD-_Hvt~RCZ=l|3gqzQS}+@E5Q3;FM`IeKSgyS#XnVD%tfbO=Zr
zuMSz;;vy~6A3lbm^0ix)r~}&s1Tk9WCISMe9?ig1aaLZ@kCE!%o_hpLei-4rI84}i
z-cH!>tEhFBam($_iQi)}jo%hA%70_TM1f(%&!RDgeTdTs0-e#?91C}H)Z!AMGp5e^
zXqzXhQ*Zn@>&2wk87l<bnl{a9%mR>KfVERy6XsLgZ_&?CP|N*6UykGrR1#`*2u6!`
zdJZaIbW~CP&<~FWu-0=+XC=X?acq<j5ziHFqVP2qr5A>G6vZt*S*pU_ONS{6KAb~@
z(r@_G1kP(pp-Q?v#E@e>Q2rJZF253I<Ch(w7|PBn7&v*9^s3V3pFYPl>MfjBq<ti#
zt`Zu11_xI=AtWjue|dRiO%OyZmf~flm)y-4HDrMcsb2Y(=IJI@g~c_PVxfWB`yGOU
ztxHl`dV_Sc-o{3>qtzt>jp;HaTUjIgPc*A&pbZ8lIvLN)07eKvN<DMxt+?<=+RP3e
zhME{28A0X9<>U*aPVD|O9^rT0u%NH=$$g@M+qBy)BJpTgjGkgePE^$TP62rZ4Ruli
za2F`S+FxNFjz}Ydg4z2S9j+Y&Yeg|pMRob|>~sOn%rGe80%6t?X3uv!MNgJcR-(d~
z-g3vs#uwP&=^ORJ$>5yzpuR~?9Y%|DDkVEBi;npP{}H-08RuP{MrC+iy=FkG|Jh7J
zO9s6BUL6P(X|gisKH4R?Li722uAO>6#_s>RKlFG-MVHedLG10?@_yNfRdy^Kx5<GM
z9p_z@PV3uh@X89;I)4(MfaiI;W$&ii3IzT=@{Kef*7bj_rtbrz=o(gZBmA)jU)XZE
z(sqCr_>TQ~sQS%`*>XiQPs)Gt8F2d!xioBC?MsPRf}Ah|*%}GG>cA5Ae6y4y<K>p8
zBWPJOp2aMQUOr-y9Q4h6ze%W*8dhnR4k1zusW%Iey8QO_DNJH*rx<MQ$f*0eq`51(
zS^W|Xc2yVx1+HdzJv``u4<|N0t>7&j{>iy*!-=;|_~YT^FoHFjiQ;X?w{`gaThM;8
zCnhC5w<JH!7J|;l?Ir%p+1nY~n}gd=6P*$v4hVd}9eHjz@cr*`#|0rcjQ$0GJXQS=
zYTR3O#@8UPfw8l(CTS%n{06n=L{WmL#I@B6xNPsUa$BcemnM2mW+~7uCQx?yYp+k+
zxswPKG+e%RbNG6Yc%E(s$0uhoefA1(pV@{coxJR_0QYw&ooTTicG3l$){+viM6&x0
zO!l((PPt)`F}J0UBf~ymKOc&?7e;fE7*+k5sUq>Ob1qwyI4@*=^X2%cljVAT9=EX_
zeA>0DKtNVH?W;7kH?m4`p7Sy$NZcor7%|^$KQaE!Aof;H5>f8~MwW~*z_FTmllYy;
ztoR)#))}nVI>fiXkDV2P1?4NC9Zb@EI6`_27c@@<7k!mXwilqV_i2HKgpbu>ZOVDy
zsd_n5aq`%j#O0PtfmRL~JuM`^J-n@q2Z$`mIS-B$G*2Z2QL`P~A-_$w$X`vvSwKz3
zf>xKiz5J&pXDAC3KjRa%6<2OKKWGec%MD)td=uevou-4__SXY5%`R#&u~9xlE9#bM
z_KC2EOL)aPh*h?c91MbyUxuzJZPn?;<2z6M&<s9fU%$~WiMvzeh#Kfox9rTaU<F_B
zr&G1XW)8Zv>(xO9p#&}W860++9ZHVS(I>|)8ENStciL%P;jIW=nSZME0O;Fsbl{tr
zGRde7;y>3U&JH*XL{^-Re~o9bOAcWCA$qoVF;Y+C@(erg1?vA&-Q9EbUidmEqWHk`
zy7@V>=ROV@P6Ab%G8*kXD6OC&^6{`j^#VMjOC$i`P*CP1c5WCQymhbYCy(b88sWz?
z4_w3IG9RptRbbeh?P`)Ac+*U6aqRk6epG>W<jlx`&xQ!+*i!*~fLj!pZ!^JD3C)Dd
zsP5D#)5l}!>~eJmhqR#AF6YZabp4Jts*MuVaW%;-AMwW?ArCmR&P(jrm9X+7uh3Sf
z<KC0{h02F*die>bfv^^P@%}^>HyqV9h2!5*+3mp>RUsLT%gF+zT^u-%?H^RKPepZ}
zTkujL-?q>Ok<S%Ie)>5YZ{en1@i-fd^{DW~C)=K@RfYA=DrrX6VHysE#Uh1f^wNiK
z@B+p!xVdENn6H`pgTZIHYUH00Z;nInR*KgHjap1}{11wA%Xg*!qJ$|cjEfpjv}1z+
zc&;6sMRbQ9_euTgSBQBNOS>uXJR2SlCGO@|dlLJ&PSSWTl2%RP=Sid&iwoiv=W~~6
zd`H*mfbxEo;JD**6frRT5$0;N^iq9h!ikf$+(vaQ@e6%a20vyPsCt&G598E!a|PU7
zh*!N=7v)NTDTQ_VG!Sx{+dN0{IaI-P^dvJdLYtL)DjX2->B48VB?4!*21}@f4!h0N
zf2BR%k^@QN8~aRyM65Fk)%B^-n)!<(VCEx)dDwx?;SmQ0W!7YBUwBUZG0D)k?Ue+3
zkepB;si=aI!k+=eFN81PER3p&$bH3Og}cwd^LjGnoHh`ZUT@ccPOv^}8<=DiJPgV@
z0}BcZtbyCM;Hml-5`u=L*E=0;Dx$H)&f;NgBgjF^@4+IT-@U1yuavf&4bt@><v!wT
zfd{)R;dQ2;@GXR^uWlC8ZE-XuYT(VR1)DFwE*`1%vz?P8#;PQz7@!#KOvM$#q!ReM
zj{VqR82jFm8gGzb;98<Khq_78AOT>q+IKij?mxChJ(zK8;HuzIaMij=KDlL|R0p5~
z@QS7?T>r5pz$*Hmce7HUk8g;0t}dxC2}k|#%#x03`!uWNqgjI+HrZx$H@mzsod`P*
zJS`_}#crKVYL=&sa4eK8k#Xx4Yq%)Fyi}hTzJHm5)zr6=yWBJ?NgtO#(tnLIyT2JJ
zhdi)+R6G}A16`HsGJiAxNzpzt;UP`A;cksJFm(?6J|Yq_cE<FOh>uxu;UP-saz%56
zLt&tXDV{$|vl4uWaKQ@AzL2g8X?a0vH;tglV`j3{<=m9KnymNUuz6Yu&l4nL6i3R5
z@d3HSFY6WBqxy&b1Uau)s=|mRAuRY?K=E=znESgD5yEY}#{`1`2NOab<K@xw>fDwT
zImDt@jYVaD-Jh*Wh1^TU^}(ge4C&Yh@t0bf2efmi01=>OD*IgTd2o!<@k+{&#Z7?o
z=)Q?LX&<+El1^+G0P_z~TaSg9J}3LG6B=XOFeWg;OIg!b;<RPCL6q}Lf3JZj$ZKyB
zfRq<u{N8vDE7Y5B9Rm73!`J(vtKe_`Kc_s>f}sSU;rjOyJ0+2H%yzH1$LIWaf*!08
zh{E0HKK58mJ?v8#-@Xb718f8wFr0w`tWZI};fF``Rn@L!lLd7Pg1`BtjOXOeo;c-p
z^SnZCw|!y&A~d@<P%_gHNwJkNTe|2DH%b8ajTTVs5J@1AsfULOREHG_n5#>*30^rW
zHh9(KlpT&DG|x}V4)YQM&-a5@p0Uv5WbK`y?u6;QIk|@33g$Uxj~2SUGOa_s>(JM4
zg;wr08@3I*?j&^ni+3{Vxvy==Xda>E@98WSkAQ2O{aPE;ItEYi3&0xTxv#cT^Y+&z
zJo;Wp*SCbT9oaN`K&39c2Erj?-R{SD^RGg~VzAo3kax=^NN1I@SLROVsrJMHrT(?I
zmrHyH)g%?=!x~TDii;`9UVX`6<aHWMnSAc#ajsF2f7U{8>_i@cb;p@zppd1MNmZq@
z=-6d(iM*U48<_`YZ46ER>E@lB({FzJqr++j_L`fMj`R5*dKPVT{~vZ2)BQ3hZ0W%c
z!9hA*Z$4#^`rY5JHzhze&vq^&0i|~`5Pk!Ej!Et|D-OJh04~YTjw<toiEL&|zp+ip
z=!>{34ps^+rmu|(TwQN4Z6M`Ki7B=uKSVdL;i)#YiI?$WqrkM&mR^glC?q6S%SCSk
zhcx5+`8<DtBQXO^R-PwJFM`9D^tZ?yyF`uit?*J)@7NqgDvJU-$-?p7!EeU)zDX2Y
zMtWXyy*%egi)R49=&SA!GaC0<Y-|u6;Az8)R5ixPPq5JtVQmW*8?lu@k0A$Q2$=a@
zVGP<BvUNzT^qYSk09-OA0om4<$O*zgG1IBeY;Cme{N^JsRe}T{++~1d;IyCiSp}%(
zmpwo;c+;RtI4~g%(uaXTbaYUdo|xg_6ir*_S+Ey?;ah<gvkEAxd+mWX_-^#I3TX(S
zrk!$mC|i4ET0Jr~btD;01t(9rohej&cSiuR!^D6O;3W;n3B!&S2BM{M+G;f{SWRdi
z;eEB!Un3!yeIkfHcbccTiz80r*|Q!4Odjy|3fs6926FrYINy*m6ib+b;jyhPQ1ItG
z6&;Y`*nt^iwVYPrvE^or9&%z)eQ5hVB~$dVZ_W1dhB^d*-%dy<;mcc>%l`>xb7c(A
z{E=fU#P?9yYK<FBf{C5)U{cI$EZ_F|LZ33XZv!{!%ssVx<u9-ODmYT7E>9x#tRXEu
zsy3gopB>HsO8{;>UqIy^kXv*KXQAw~Q9Eniqzv^pg21`fxx9W`^-STkJ%;LyZFogb
zedlFmdb4GLg8hW;jR1HSh4|BXiV3W=KBl6cNG;ODrV)PkA}^Zn0GIut6(MN9E;q}$
zTwbG!;HYH{yi|QjyhERS8uuSJg%R+r6wif5+a`P*3F9~4P9vxVxA$x8fW9oV&jVqH
z2362m%?sIc50}hvI-&Emx_jiz_P|7+RzD_)TUu(*6K3J#5G&9;cm2l~vJ7UaEuk0*
zA(jN*)6<VG26a5$5y!Q=92ged7eQz(9RegA$N};hzmrc#!KvuRG~(G8MgIF{6&%9W
zxk`x-Opi+hq(A(FcI*%nfPls23`kX7vn;f2_IlC^SYqs7Cwi%7YNu{XC%nG#;@hI6
z-QV0;BsqWeH%SVsX#KW&7M&N{QYQb236Z{REh<4`tp@dKaB%}a{5}XpJJk_7ZhExy
zz)cZj7>`NCvZKOUC0$(PN{$u<ZGb(2TO5CO{v89qv2Go@tWNsx9FI6-2KUcOqAA$`
zWGt%fw8+NO78o$~qcz9BrmUYF4V|y8F_8hB1McgcUAYYEh=Eb3bj@U3&)a(N3sr)g
z*gP9)W-cFvUonDB7%QbxD~g!v8d$tDKUqsEOJg1?5!ZTbTy5092TNJ{G5hDQv)Z>u
zoo-d;4X}^6>KNLgWmo5Hd9XNv-P@_8=|qJ>PI!7?GZ6_%Rw{1&fp{3e2blfqbT;tv
z$VxoGpBmD}AC`oYCOp_LG?i4VZLn&X8By>1-{0Jl4Z4zgtr$C?W616Z)%~^EeN#uX
z<R@wb;1YJCF1J)0BOy~@;2DiiR}4%J_rNYi5i$&FQ{$EdB^f5?Qd^mUYw1Ko6hz4d
zc^cQ$wca+y5pzpcQ0d43#J6(mCbN@3Z9WJcx5V-^mS|cWc1x)|HR)c<sARcOL~us|
z*DKK$47v_QnM!%t=cM1yXI?^w9@RJ{`K+9UwH!g+R+x)`Bej&>oL@c@<LG6&oOHB$
z-+yBhs+%sjDHC&@hP^G(9vsb<=;9c*Ep(T`Z<(nzL<eP-`8LtLB%TlD3qcB>J5wWz
z3oTT}xLSq^N{~;hz*&%ZD}OB=D`kW5!I}LrMz~wPQ_im&%U*Fx^*39lMC)ev03-h+
ztwBnhGeh+zS!)^UDBh*iH~Fv5^s6lf4qgo5g@_d(1&RK-x1nVGSp0UU#U~HPz?HM=
z?;(>8E+xfs88%;D7Y7-;BoWH5L*nqOO!LcbBU&BfOwnHWULe``K!eqo9xIbz)3MlH
zKRtyNo(iV59!`f!Hw<g`QCd-ySHi;d1K%<Psn84ab#VA-p0l^_-sAK%YLTT5raZ-F
z4><7-aHqXGkNpDBbfZ|LU{SV5E$ygd(MZTD7e|dYm}e@#-W)#or@qdx;P}xv9OGk_
zo{ou`s4(MIGA7xVJD?6C*wUAC`D|DY_vJ);-FB+pn63a2s=+GWhznqREmvO3vSi=1
z8*O&6L+V;Akk(xGznm!szTYr5jC4I5`5m$0h7bbJonf&P3|}ZL85uDFK!M!?)itHs
z=V(R!$280%BL3fbFzhJ?BdbTBZSuEqNBWWCxg7uGNsb3`*iuCJTA30_F?#QsLUZ5X
z!pA{-yLin4jG`siSZQ!<Tox1JhCh5&sTKJbOfNHASc*c<TV$r3z>RXc{iWtfMeD+Z
zFYO*uB=QsS5_)>H`Zm0|a2GEmx(r;pobn<5pHhwTUeHoOE~&E*137x-i?~P9rd$(5
z)pp)*NeKto{RrpWiB#@FK>bEm0$A9+-)lg?l@3Kpf&6&wB%mjzuVmkx$%icCDW`kX
zOs~bJmsFGAx)5K(=dW8czuyo){RuwZRA;jqv8QWVqDnZ8NlS_XF};7sC#~o9i-L(@
za+vO~1Nll^9jM-%cG?r>(a$gCBUy?j0|+5dYbKA!AGiIw>XOxyGo%(ZOdq!E8Dy~?
ztvYVPhzGuha>Qhxp2y<bKOeQYA2+M9QZ{cw-4Dj>pJV_9DwQMhQCA&i>9+&*x;oat
z=4$#B9HAAO59douEIhc+M`xjS=>-<FsxK%Ai<kUlPeONJ)k4O48%>eM!I$DT;Wb{}
z(&;lfF@ne(7{ijwI|bfvQ*LKgJ0co1T`yz9;gVN0Iv<*w^%*y6cynfoO&!ko->-_C
zj!n!S6wgTSvTs;!Z}ysZ1<hVg^o4%gyHObXKEb82`Q^Uv7Ryk8(``9+_w@{7-!JI;
zdnuq8Z+E|D_s4hY<c37TJe(~`H4#~P2xs4{pDIKPE0cl7!nc`u(*<~NMgeIOKHnsX
zn>ri2uRS{KWjRsDOJX1OHf>tpHxS}GT;9Q2oK~4%E^JfiAXXx9*zan#BD$-C=R!ue
z1Xpv}6&GWffQsR|d0({;l9)KhM9_xHh$QwWLOZE*?ANL7tCtx|YFy50=S&f^kpfE}
z6`tr5H+A#()1DTGL#^G)#dQ4Mv(lFRi*z3RKa<&}x4$7Fw7aYeS9})~)?^~~^Gx$;
zGPG~(|8e$RJ#JLUuMYPJXE^BdT{LE|lS^Mv&&)Xb>C8N~$EjAz3Jo0ru^XuZ=IOGa
znFjL~8MUiQGW=|M%Xfj@^8;W#uT;k5->KQT;VtWT-M@D0i=<&;)_K!xPb23Gn;dr#
z$Q9&0I2K#gCRr6+>NnSkd3(hq2x$jh2W34yN7=J*h|6R+j0+|Bc!B{b$17v!`Oct0
z7oh?q?%h5e$YDqx=<<{kfaLcFU&nK2N+)xf;r|$P((Ks#Gkc47|2WH36?*s?;}hu8
z$}|1AmzOs+M7rMsTcw1!`+i?dQqC!dx2a9s>dJWO8MOW}<Zkkor!1~I=@&R(`n&6K
z`vD_*1$)c$7z=A-^1v8J7B2#@jAUA*@qFiRSi0)dSjC?M&3JIezy*2Tav)B^mr}FP
z?}x1itaSZnZ@Aun4=oEObCboR{RJb*W-bG_7@NYxMI0y84n!XQ^D`|8HB(akaBV1;
zk_kM`KG00uX)DNetU6s#M^C${F>pE5_$M=F@zNeMpMR}m*B4{c+J*`U)rZ8nmfMF%
z6MC6bG}H!%_>}?UR~ej&Zy)YRC?D5{T)Tm4ZFiFCzj|HXBd;csK}uYAw1ZnPdllEm
z?oftsT{%{5oJCps9MF-h#al!v<?}wr31(k<A}t7c(;I5o5u}MlEVneh#&+>3CwcCX
z+Yjd{r%m_z_BQTVMw2=^F$<3kr0Ytk@G%mv>2FvKBnK%4dO0Awq)$j~&#_2K1}+$m
zTx~(bkn$xqA}bGL2Uyr=v&nOAcZzoe8EEo2QYduBQkp5}9eBwJN(H(atmj^)`f+Lu
zqMnEMDAwKgy9}-TJqpNnyv;e#K47}48gS|+))<kiLp~e0@&uaS&YhW;K3qthS8SnT
z%f|6*SY3MD>T;wSWpGzA;@^$?|MdtVJ4rb4WFE`OB8DF>#7zF>`>@1Cqtv;x!(~t@
z*@w|)r?pQ>M)6ZqwR7F?XG_>JXDi;HiMjSzp`>Zro@hI4s|ye}uS5n=A#qvS%FR7k
zR>HZ&gvUu*lol~Ie|f7k-&}vttp&#I_t?w%^U9S`n8Aq7_{*{}4}kmM`X}2bd?g*~
z5!g-IN;|Z-ivR94G`1u)GOZ_r<%#FHCRN6mD4|s10-cBY%S}eq#9_OL`N}Ec%fuz2
z!8FAd;)hv!4zg6}$V(qb+q`g~^8>OIdyG1e!c9Auqr~js+eEhQ?(H9T%+R3R#7|rt
z$Bw6&FmrAfGG&xvv*gB&3*}{hL}mUZDRbQr<3;e1j83z?O&iS5LqC{0WT>0jlAJ7k
z`aR)MXKIvqPts#Nhwws>k}hOXLmO7vUPmZ=5hSw>6_d0R^p<a1-bB)aCx|y)fC<A3
z&RVEoegcmJ4$E8aPOR*Dmm6cF>}H6*j!msf#Pc)1El>T3Mr{1vl_a<*(DlCiQ%+XR
zhNtk_z?<y7Sb`OOHs7-E;6lPKB(kt%{pmim?nO9)%vCKVGb=NhL1MOU-)h|D`C%eu
z^zVnjJoxK2OJFJ5pp^q+pmm<N&W`~<pcwhI7TPqvxAjRliYjWm_)YAGTD+NZ1U!^U
z;0e&D4!cm~VjRt?f&%kZ#+dy3yd8DjRtJh4P=a}cF(A#4kA2*blo;lXM_13{>@BfL
z;i8&%CzlfZ62`8XF}2X=Wv~Uw$hccS9I?kZLVh%6-hIOfgTl892EP6aiki+JA(mYG
zR0;x2^n8ffCPOjqz8u^6VC+a8Bp2SkiD?eb*=66&DF-MpRu&mi*;Lv7^y_<uHyPZ(
z%b1b_l`>SwdpF7yO_=woqJzL6gpmPU@_6SV9*AZxV-jeqO+nP}3aT3Ro8AyXp?;z=
z3WQbR@TkGTq9)Yzu&QefMA#{08iBZdJ3`6;$TE+4fiIdUeQ3^cY4+-BNL`FS9ib!)
zW^(EFLS%+UFA%9mY8!MsFM*A>J*QdRT~Qk^>rMq8z8w5;Nm}`zAR<Eu;se?!*1jc9
zP^@`3ED`DHrqtuc)l#Ww6cB}?qK~NKw>uM)FC(hoGC!6CX<vD-GL70q_KXwj=OT}7
z;YOH{Tn$8%G4WcgNE+wZc-%BQF2Z!!>#EE4qJ9JCdA#GqE{;oCNm_YZ(mySNNu_4q
z-}ec&x}P#VC)0+618MWS-r?X|zbpoV2-z^<G=4e46M^V#eb9cp1ylXIYSOP`I58Kb
z%&|~{JgRTvJT~gQ4cD%?q#f5gug>x%E$PKhk95JmuPJuRSaT&Zd$ZGp3NG&=iD;z-
zVZ!}zk#it0Tf6Riq96vPYGT&8jk_Z{3ySi}nA5YUZXvc6+(W)nb|*6?KD5P*vOVcD
zbbWjj)$OBR{h{$ScKA{8NGy}mMK+uD@t)VgHzsOzwUtvq|5Y0$^XDR1Q!D`kRGMe-
zAOlFi$X)oi$S=5v4V6mD`=P&|QBIeUskqe7I9c_4^#9NeW3q=ySz(EmlGE=Kbiyg&
zxPc}nA*zCbpYJ3`kCT{4I4JJ<p{vSmF9>fboK;naBj{VEiw-0NOE_goHAK#X_k})O
zR1jxg9QNB#8Dtgrvlnux8()gR)P$whJC7Pf32i#f84uofqb1iL?^}k*@o8fkplKac
zNWVX$Y|NazJs%)7MpAiorH&C9WwKolf*NZr`6?L&F#6IobV5Hw&8|_GyHeI<6xSV4
zt0#&3Lk3KFz^PS7PE^SprcF5WDkmUp5tS?ff{hoR3+qRAw0R)<Tc3fbKIAP&Ka8lk
zQ$E=`9qbvrLj*|<Nh|lOOQfQo<EK~Dj{x$5s}<tVoQ%-@36TvhxKVH470#EBgS~xm
zi-XU1mmsZ@?tpmgj4w#H$GZl?M({9nOz-<z|CEJ@-`n-yxnQ~csHy(D0+%5uSeNHi
zDe(OW02sNo|9NqW0(ho~UU+|zOzgCb=a^VVg4o-l@Ue=Z4S+worIgEIgg2Xw(>v8k
zcRG<Fo)(aQu~p4e{m9^KkG&Ujz~hig{}cK(z?QJM5UbC;6T0w%$y$W5$ivauYRMsW
zm+kJH7NdQakXZyiEbHPJS=0y&7Z&?I$2kH!XojA&i08U|&VTA<uY&w2<0%*~1K&bM
zvZ_Nvt}-&zP0-atKj|Y`aYxs%EE_3-x1?!CLC&8e7_#sjqU}}C&A{D&AaDGD!YF;3
zrz__o4T9b~aG&S+H0H#NLgjS~sQX2+o2S;B+Lazb1msE6IM9*=9kB)+p+gn36a&Dm
zhR_3s9Vbi*eTx<+L~tN?#L4Rf(LF8(gafC*V0EJ?w_Q3JQzeAJfeLa$gtn(4B1Djc
zCsRUO-9ZOOB76QPcXFrMTWvNKQ72nObKqmF`;ODS=6_(xHohwoS4wAcO2{tzi}z+S
zXHG@q^BI$aasyff5L(9ewgR)@r+tOYX`Tb4{hN@5l7`sLp~*VMa7-r-Ww(Z`S{cP2
zR+<ElnG0SU)7k2F0#TNlnETXQ9g@&WGZg~xKL)zn`$|nIRIx@knNK!d7ruxg$g+%n
z(+@JVGd*l`SG)Y<@(PZ&5wbCK5W-WC<o1{7WBuY!N*A+5<Xy2;s!*pL)nOd<nE7>&
zb1lAAR{0H=Z=e6b`m<|W?6>;oUp*ahgjCwZzP8X1FIJrXZ(HSgTX=XM@33d4XbsMj
zzx|KSC^#?ykj0U4<^HffvpH2;<ZEL%5??iKSKXDMu?54x>K6DC4k{0%Qv0%?qvGRI
z2k4h{S+(R=jQ4@WKk}ch(CNOjJipA;lYE0P)3szEMRBoZb_c8777h=h(^CETm=Wh7
z2NXXSILJ7Rk|ylQLh7Mz`mn&Dn=}8c8Cd{%y2@bykJAfP+ESD;vn~flK3%#lV2_Tf
z|74W`(V;9Z4c!d2OqW2e<T@PLzAK2#@GxBU_|vN@UlO;QHi6vXYL*~U)v8opsN$y`
zCuU0J$D&Ndr&JCq#YW@4%{?qcG?uUONX4U$KPAe8Kzg6`caRohefAsWCkc#S*7z_W
z<WLo#Q|?q{N%9NV6j7*fV->AeX7S||*Le!a#Yz;I#zr>WUML2BOT})~y42wolT)P&
zT%7o3PS->%>V%&WMKs;V-LZSOlagFks()9Egie7dX4Xu$ewX^bBcxAfTeI7L%QVKa
zVGXYLc;-%&utAF7_v^}kbFaEOPQpH;eEc!X0D3!-$Lic?$2pw<I2<XAEu?`~ExYOl
zb><k6#6q2pZ%tJk{h}~-%hYx1o*so)G?5A>-k^>(iDiCEL{1D)i?I!rA4L^urRd?q
zkyA~lHpV`-|G<PxSmhlns<D?m{0vbWo3G=V#6!jTK`XoF8D=+?u#{{Uv_>Xzsl~1-
zr<oyS%A7yTa)6AD8qdJtZTbk>^1TZ5Us-=lZFx^1ar6cFy`~8EH3;4lVQ%8q!QjE+
zCB#McOy=W}2Y7?>K<!6NpC5QI`Xg9?*zw^f<kxgl;9;^1i$;dtB9+0*K=a%FNOPwm
z53~j+EG~@R#~dQh#HD_YA03x*Uiu2Dy;<d&FFVl<UY3dAYi9WzOTso_@8p(0@Q6Fk
z<Z}*T4iY=U!Qvd2WsbCQJ=n0}yT28b79_+wk<|>`JR-nyu2@XFaxv328$H#2z2=Xb
zc)F0wnd#{K2POsX3&Jniyp{x}rJwEGJaQ4m`st$O32;An+@oW^SQX!Qy-K9t;TN-+
za`I4Rg?GNIj}FNu(2azF+aaZv$ybSsH{--vUgG$_$wKSR_~>Lg;9~<%qB5(rV8#8|
za$_&J;YEuNz4Cs^Y?me0G5g{G?o|hy@M$rLacSJfSE{{;AyN6h@@D-$Es3K_Hqp+C
zyDmTj8#(r-DtGMNRZ4&|w$frs-Miy428Z{s!cav`-Bp#={3}Fw{aZas$*Q#`#MmWa
zy5dSqKl_KYwtwDQu=6P_Irt2nzMbNS*XJJc%m1em>rA237cf{Nkp6)xe<cA!0riiH
zn6UM^D*BB7QiQOdUuS=Rf973X^@C^^Cbxg)h-_+J^jxHx4d0I<-QW7GhZsw$2)U&=
ziEp82UdX_^1%!~+%)p_Pw}*O(a?fSiVI|Dc`U)isX%11j*b!r`Ad|1xQQEpiHTUn3
zBvuERtb>)DJGrDdK{R%*=&<?ssPpJds;EeRaUo|^L~+JEbI|z-)JeY+JL5YDJWefM
zS(j<6X*i@;2<!d~6$j1C(8~{Tj%=+TK@5WPdTFG=JvQSM$pHa8uO>_lar5>fR%$Sg
zx-m9ZPy7%1rpSM%A7-DruHm3a0YG+Hz&<<gq|0!nX@r4*RRzbbS3r?MB@swUZZs~O
z;zotgAnr3o*9TjC@0|&`c{6*~cPHeb<oprO)?woe$H6PE$d)D}N9DV>$)3TK#wAjD
z`!K}Sm8`&Z-iO%k#a8c_^<nb~$Nbq7PrcbYXQzaIBR6C89`cNs-y)IVtqfK+_7h~j
zE}@Ecpx0>7kE15oW13gUR1AY{G8;l*!8V8J>Xnq^9!w<7euN8`roW$v8_N1QEd*8n
z$wPp=MTj`o=Zra>LWu^;4k8<Bkpkcch0E3SSHKEE=13)Y8wboUsr}P&DY@@STt&Kf
z;2wVcNRRK8qr~C!5mDO@C?7M$IV5b4N*n*Bt@~@PUOt8CQYq!`fd?NjNQ!1?^w=@0
z(!4eSoA_OlA7HiTZrrC1vO!wOr&%>wPxVNA%?N~Z|IiHBqEC(DI*SmiaU6|F$V8GE
zv|pXQt>h=obCp9v%p8igjVY#{)4DR}|0a?)D#6Y9Z}{;+7&OKnz+`f?LWHfX%G$i2
zF3Z0|MqDCeluT8Q-yq-BTg#q>2#dPVs8OEfsTr1+b0w#(ro!gZ^Wnb^*+liY=r15Y
z910+I5y3xTdDY$B#&8p&h{wzlPMz3>Xl@?Y99D)gc5M6;4L4jZBiV<Ycl*OPfEaHi
zG3;1_*l!R)0{J9Ghd;9GVHripl1|9q{y=dzZbVu-^Hkb?-YCasN4LLF;U4)M!0-;7
zrLSA})p*9fQHUe-@6wKrPK@zrDk=5C$zimLT&B-wG()bsp1j(wSG6^-;2+7z$T*8w
z`?qTU9JH750rcHbj2|Y~pG9)5W$_vHcnmy&*E%x-^*6Pt?R}C|=n&>=0wx*^1&Z`V
zf7!^2dgMd<8t;a9z$t|sK4`JnRAI{2)Ja5aEX`%6C-|Mt<HY2XQK@Y=pbh?>U7Caw
zu#EuaY4Jk>9{)uGWBjm6d)hqj4pnz)Uub6Hy{NPhHo!ed(oU_YFOT6C%Yh-cW<HBI
zM&b}g8}5cW$*}D^0M<XE?`N9wMD`^L<;dW&7|{Bm5q(_4KJ7K!LhgIv^YgllDUlzp
z@m{J%OGK&!g|E+^AotZzPvd@)m$W-2#(Qq?Vahu*<`apPgl}fZr;J@g+Ti*j5tCnG
z=Bk+2K=bVzav%ndXWn~DH;zt5=8x*P0=J5cbEJZ~_GbZ)or+t@if=<~{XXpFe@NXg
zK774}ZW4d<hGz-7*@X;NDUWb!3c0igHhk;cd+=0lOtoj|^pS41(fM4jG3<*k=-p5k
zTRvBgl+A0hu{W^*FhT8zfJYo=oEEocdXa5^$0-d*q;PY=^OnolIfFOqlQ+M`8z;^S
zVcaPuQ=oPR2n_3LBsx-EB#=wQ*oc-gm%usikim(jCT4F*or_-+cK+Kl{u@n|)mID&
z5IOhZ!Ma?jKN<@N2#DTjbtS+-$Kq%)cR1$GSXhKTu_iOfK5`Ce6lO1Azu&>L2u~JH
zP^GQL*LSw$yoOYZPcck3sqN_^wt(-)f8=a*BCehXDzf=S^N&)<OLkFEGB!WSmiGPD
zO3i6AU#c~hB90C1!o%R^aE<51@!6q<JVyHD_16bsdgOo8JIG)TCyCr3u5A?d%!RjO
zD28awsD1?{ZQ?MtCfE=>&LGozz`fP?J#FK&4W<DG>Tmy9<B}fV0u~0RSfPP1a)}zR
z39I%w003Bfy4va@Sb?|`*{49|6WlmPkt0l+wpta6GWAp}yY&wk7g#<TgoV%QmsdKP
zbv?)Qi=S`FS#1S@qyn_*{!N<a`vKtqCdNI}A9L*lJ;EWLEKvT=#(&#qS8qz;iAd+w
z^YioToaHz<0?N)BNgbHNHc(hcy2T-O>O9X0FyO=zyzx*bUW8aUIX?vd{3ZZ6og?<W
zPXhVnXMjo}K_6WJ&~j-{>hM}84HvimqO?oRWqgX#_yA@@;dYo+S=MNrlH5v)MnI5Z
z&(ts<yF6ir!N(yIG|zUO)v43BuAQQN=8PW;=8s8X&2c?I4XZ}s?uRev8Z=)k1M(Lf
z|6QEW@Ab4E?t0*dZ6*`5)%D<5WZ@)GT-39&7BcEpI)zd9R+*@UVxJe0<8gZWr`4}a
zYB}4i{>du}Oa_LafIMG<e!F);q<AivJ_cn1-xL%8C`E=cGr_Pb+4+ZN5HZr^2kX<8
zhmMQ@T3A>Z4Tm<uY0&~;+4s8W4&T_1z0v*Et@MT9S5UQ9Iv%)@?K|W1#`D_p(s=XI
zfIB<LF?DYsw%>eIqeKh}Ye?RdTn`Eg!n;<pClj8|%)@gE7>G{(B6l8r9xJY6_b!eU
zX#Yd;RVljr<=<rW)4AUqB>y=VDTC=NaARxng|E?VJ%Ru}JHt?FN04D6GGOqp=gmTq
zdJyQAtpaA+GO)mbz2zkB6D(-6zCXJJr_HUQR*@ihi)=DZXmu6;Uu6O)5*`C;u*x!P
z{?A$cPsKv+#6L1W;gVEk0V|%%BYQKUXa;*pw&4;jd?o@Kv1ccUx|q>mi<UQOPEJl<
z5C|Ad{yA2l*kd%XQY|qlIe8J-`F3f%OM1EI%RT~%YU2YQ0|QX9t(gQ$*Jc>ehDS#c
z>Q^At4v&u5Y88S>TLs2<TtY8|dI;GXWwg{fP4<(1Y`Ko9a_M;<B&j==WiD8$Dj(Ji
zXLvuJucQb(tvi>}jA%%K_K=5cd3A5Od%S-^C>c<AvZDz7O5<s6)j;6Qdn}n@(s6H4
zz@kn=-}C*UI>?Qfhg`m@2xVj#^edc8h^4ynrZ}KU_mtsID2Lj&Vu)Q2irz$|NF<Mc
z6L2xu3i^B=5|Z5IAEbB5+>#HpuTTXOvnYjx7>t72t4B#WRtA~d62ckVr!h%__1I9C
zfA>(<^1g?{c*zyB5a)OXYRYa*P$~Q!Ibxd~SyT!Xl!dC{)tjz}WWp128nwA2+0tYp
zc+C2u&eOsL^)+LGtN^oZn7ny1S&mNdu}b4+K~KWbk)?iiM^BHU_GXta#c|=s99lqm
z%b+={r;na;>5$22H-6R7gx*oJ2B~FVv0O$fd>ka*uC2{NV!pdI)akzn<g0OUH3$jK
zmFTnfTgT7HC)i4dPbDA6b&J^5y7iWdEVI|<z}DYg1f~&IdsX)jxWx~sPhwgBtZ9EA
zaFY^DVklxXM(?=O_5AP!aF$cJol(df#-JzE3+s8`>5hz#LS$$R{4&P2CcSrwOqDw(
z!_<R)jdt)OC1_ZJQjT1*MYr!%UB~O$T_!noK6l^~um)u>nz6)Ae~BRXs_Lr{K&*bz
zClG!0sDv9&b+q(v9%;*+H`o42@zuCS^VYXVgtC)#*@J-;eFD2NP{R=-mFQDxc4Jqg
zRnE_KjIhPTMqlidn(g*X>=N5zM_`xyAfCmy$la!f|9$<fjt}c(w-O!K%CP-_Ve4-`
z<FIaRtHP72m^%Ayq?8YKy$7IyO>kHRpTH8~7_od<43OMwS0EAlNI^+?F~AT7?K%3+
z5ZzwVsY5Od)j(C06D0nX+4uFHyLsgOPu~|G-(oH^;W8#c?j;;Mh5@U}?1<bm@s0c-
zT^qD=1=c$R%9m%$mbX(&>5R$d6lp)jaF2GCGiz)*8cIQ46>K>o`n$o$<j`zSIX7Z?
z5uWD}ZL}2gkYc;<2JJ1G^DJ=Fr(P4Oi=Q-qh`PXW)EL|(<GxMdm^nWOekZS(H0)6u
zqsicKaJIAKRNrC?#J0X#epMIMp8*H06`SCE9i{2~j=TME<qXGHZt!ipVa?Vy$v-s5
zhTBUorvYOuN$9p-dVup)f7wp&5!{n4Hnnq<lFX5B6~EUZZLsmC$<?rB@hK8s2Lk5x
zld?jEPtDMH<*t$qehXWiQN7E>AA!k6Q%8x2!47t4X4nOK5tHI|(r6bJu`{yHbFS~v
zt{641oj6mM5@^>iisEd3{JX1<x4$b|sj1xCb|o72t9uuidvOL62y(&fz8hbH)}0Ye
zKW9|%7WqW5Cvm^RDws%n>7gIBr(_*HbwQ`U{_)e@Ka`OeJJy@Iz1G)H5f~{oEwm%A
z4NbH@onDkWZO0)y9824%rT{j!pygucoJ7_QYD5$i1Xci0BxV5d@fbntjgOl;-R`+g
z9JTJblXj!UF}N&b>@@7>4?s|@O~jW{Ydw2uAFQ1^;ds8>iShceokX@>N4|qgYsPrU
zAvWfR%Ii#Rlrtix*eyZzI{A`OeZ3dq$M|^$=H|I`d8KAi<s-AW*4ahZtt?2B`YUFs
zS|;uq>z^}VC4HSJo`~GBzY8bfq=MEnI<Q}1E-*nf<)U6cqfzyHC<<~|czDa#B^(y6
ziKTDz<Z2U06M(;6hbVzezwiVPWKpIcM-}Y<YCICkRkK(7f+E76$H^<V2csOflQ`C(
z6c&SE`W6GJt2PZBk(oz4FYvU?#wEis_V7;^W4$<(!9_e=LLZ)q)7rohkFJW!uVHaV
zBl22jz9ovFED#K7{0Fi*f8F0WqaDwhy2LSP5X(IbAlH&ZWEYDuO#BKEX@Bl-xA^AP
zdhlE-J2E<wu(i=B>_!fdvr+>@kxc7;_)LK+R#v!fH&d)ZbsO0pa-<IBBB%4qK*_8F
zd{Zvv1=rffuiZB_Ow6mNa4ui4F6iio$9iIvY@*_hio=QiQ=RjCU=4z4sNfk41hiiB
zKiilz61;%9*2^ncP_p&yQgs)MnoSRAqqif@LRvKLf)9E8&`SO%SqdgEuNU#U8iC}`
zmUHWNK`$G<0X%4Jd8OsI4Zn*Fvt}C9SA4%3HA1-!(1%DSBGpHb)+t(EgdA3lbXb19
zLMyT~x<cDnZ-{o`%{oN88RQ-)R!-tzXy8b6OAhnJj@;+tuXB1shey@@7W-ik)BbQG
zt=VaaGdoH4C&qb}Co9?n^ymY(k(HJflkl1CUcNsg=h;(?AKe*16-yEk4JxL|e@x$Y
z%=lgY3GV>jn?^SEQ)~*ydOc-QW@1+gOSI#0*cNrAEl4zNd>i8=Nu1s$)ogM^#rFM1
zJ4Pg|M4dK=R2{f~&35$e`j~QArS`CY%>~7WBt9(I85td&CH9$oS*f<5ZCk>czPu){
z-<X~*E-r2qk{JHkfKyZCJwWPCk@yuSbDTEbd{Z}A!|JbD(g+b2>s*dq94~iZr<)u)
z!-leJdk(zr-uE)Uq}SLh<EY^;JqgR8lqUW!&<+CAQ_M6Ary~rN7@PSt)Rsf#hQQ%T
zvRmm9^)~O9zJH_pyVcAsSo!QDHp|2%@$+d>*IKttEfmyJZHcl~6vQ}5e|~&$g=KjW
z2TNJc3&wS7EeG=<S8cm9RHB1Z5U_@2rnh!AO#*oXsyN)V=&BMxE!TNkt?&W(=s(R~
zoXCzw|3=I^2G1V%z(!0h_;X+vpf({uEh~Ox9ej4Es{B;XzxW4OF7A`6O2xNzppcx7
zO2}OHzDyv(V7w}mPtW`Vw=-Tk&CS5CKf|Zj^zU3E|HX}8ziwZRm2M@y+Wa3F0_nU&
z{|q7Blw$<T|HDH&|DYwe+pF~do!7woFaOrcID<9&pG4X}0Mds(-Q$crB(J~H52wLA
zj)V#yKb;Hqjn-9KM6uMP!`2+ZUc(^(YPCWs5NkO?Ci6&EP(BPL0hC4fJ+;9|&3Zeq
zXUR8a2fIxF&&ly<*BkjE_*(IvPjv}QW@6;${s{qD;V~)Qe{yJK1)8-NkpEVY0+KZs
zI!S!v*QYqVf>+5Dd2|enFK|ZmN#}uNE8g_qABlv>CFbe|7Dn|uod;3l9fQ1v2L*;q
zPKqISAspEZ1PEK!?OSaskj~~b$@&5hBBS3Zd@t<2*?sRPCdQy?p2(pXC}Py?JP4?e
z=AA9h;ZgJZ*#FAvCyDBLGG}k<FHHqwROy6f86W;M6p2Y*R(MqR^FmE?g!7ZRp&ka*
zZRSL)i|L?ZJK@L+3XmMhpe{><5Is#D9HUfAhSLgN_?L@PS5T`%dzST1OQ06@YDo-R
z7LN>ifU+)gtSs<vrAD}|K{fZw%0qpBjN1i|mw3A*#oXfNWWx_x{6!gr$e9r1677AK
zKBZz-n6vSm5ym*><@D8F7As*cO?KbEKCOm1gxugp_O4m1^YobJ?il6vjCF9A*qTuf
zt6Ou$!PuU!tB-P^hk5Z~eb*Qp>iIe-Gc^23pGm9l*QOviB;&Sq;{p#47x&c{b01VW
zL;00Tl%8~Wk#P+*``1}F9Un?jM6(V7Dtz4t7U|ojuF?K12~bY$f}8A;v#?a3X58{5
z*Ltrq)Gj`ybD6^5*S~``jmy-R^GZfBXkaewr7~{*x0>7jJ$J1~b$>du|CfxbHnOy~
z^g3W`#bYFB7Co*t+vc0Xv+OuMH0+F;dp{+7CMokkV?F3~UgYxMZKjW|GUz=6m_ez3
z>y*|F44eA!g$S&=npr~Njr=*equTSKqhKWj`;##=gKE>-#GTGGSRN07l~$5dP;Q=9
zrP)qP5hK^>_FjY=#+UB5G}X(gx;IZ10jSH{18o$e=z9|}Z1z5F1E(-J<m66WqXl11
z67D>oR_woD=>H_F?I|8OGjB7s$2@)O@fEln9g4d1kOw=1t4w~#$Lc=0r_py5%Wz<w
zLWB}WNs+1Gp89)u{$inxC6^TW2wk6r<Q4EYAYlb5;FOfYWN{<Bsn)>Au3qEjBxs<w
z6lr9Tr);ZRzXEZCeqE)jmgy(V9>c3!WKtE&?`PsLFR(MEW&>T3d1UGxJO{6J+A2UY
zy53YL88PR!b$ybdajz$hW@eG;Gw#GQA>;3&<9dw0I7kH2jUGEIv|{H_XFsu+3fha`
zkQyYr(rPtgpE$ekloKOi^}5P3P_`cR<NdT&{Yjcnv7Kh589fzsw8%W+jFh5IB-s7*
zRr$!S>$-puQlqk;qbb@4DO+tC#WCm98_dGoKD63`TJ_q3dd(6sIU|aYfi=Pz>uv`o
zEoOs~CrbkOOuqFLM7)$tJ~i^48~#eHcjrfmZ}y3A30LEBmgH}v>e?tHV>$N8?Y%~L
zo6V8$`yraF#C|RqTT&KYBvqTxwoXK+mvI?KF)3rz$nhXeHQ|$ftGLSFV#IW|OPd;r
zU-ouqPiDSDP`6p#OaYg4>ynpIzZ<8E2*2|ycHBu}Pse^Z-_Z#9rylK@TM3OQOUxY`
zR8MdLM%%Ejx<U$ixNecQPNB*Em(jDoN7iFaqv7}b9C4&93iz`!mn~jp@0SbJCimUM
zx4@RY>6ofN_O<PuHW}?mwyDK-#x^3XgtPUL@2|-#tac6xj&1yPmi`g%PZ_!q^uRO6
z&a2;Fdv2%WdFn8#!uZ?1hk&!SQj1QbB7Qtka&#Y~lTdcGTQ-g3&Zy`22L0U9dGWX)
zenA7e9h(%B-SAaslHHXcsW$&LTK$O^^GH=<Hi~KQ!{DfB$O@`-6Wh)4_ZGhFa!Z#D
z$=C*}wjG?ftIIGYegem+htC~>Mb;&f@JJ1#H*+huPqAEZ(y5pK`(FT~XEM#-oXmQf
z^;t9*E>f8M7(peorGi9!HEq3TPu0~b7hQgj7QyN<9U6Mi4jt`XUL~26v?|Zp)xhXY
zb7a&w;<*q>pU;e&w!cmJ{5epPMm1vb1G=>e{vbL2e;K(p3^>eir8w#01?kpS02;CP
z0o}JB+nGiOcPc$Fww@MOP%o2|1*Vg~L}uHZqbjzXbz(|P0W=r~Gi!&V=Qoi1-d(`h
z*+Lw7lCS>lX9#HbBJK0BBXNT8tky36Qs?M&{+{O1?aw3PMLPrsjGZ10vV^PJW-(HU
zeb;SfIA7@G94-rcoSsybP2ny(jMfaLc(Ujqy$46CJGlrLe*x?EB-6{rD0JHBTE<}~
zB+o?SGU|2CCWqWdODlZBBjJ+D&Hsn0a}1BG4cm3&G&UQnv7Jn8wXtp6wrx9&Z98df
z+qSi*?{{qdogXu^X3e^JUFQ=W>j+2l9+tHjbViR?={W|4G<^^Vsjd`!FByyJ<D3N^
zu&t7-HBVZd$p#nbo;F*d^K2V{Q}fFqDxiF?44b4-Ot1kcES3Rib*n6%OD9VqA3u%6
zw}#J`wq{S#DJH|C+?e=0`wfT%jZvIEiHmB-Ne^xNc3ozFXRHJ9^J5KzPmT-Y$N|U3
z!zTu6PRUqFRM@Wg^5`Pq;Nw|+Ix&qz#>i9q{!RITW}oD*cB5!bChOew=VRPmUq~4X
z5h8u`pRx_rNC5!z_xWRPk-(9}ola!Sw4W(5SU(ePyq@Bisg~mx!%Z%`)kUstxE<x2
zesEAS?({Oj(q(OJxdrX#^6~W%`p;HdP^59?$JEH8A(X*&U_CLmsC2;ilWO0QBPN-6
zw}}5py|`Wp{;(gKsw<?k4*vr6x0>~N1Pwc9QyEYGofLlWjw$ut!;FH}B=gt>H5URL
z!94(rjB0#buR;hU4ltR!tm*{A#bx1_okr&UHlTH{yfVaylSR#Z3<7$QX}s`rA+MAT
zlKy$j=TS~#jP5Q@+n>oggHO%O1y;bZnr4ldplXF|w1f%y+DTMqp{|Fe1AKM;V@a!!
zrPf=^;9z?+GCV&ZPi>aKd-TI6!N8=hsBi#c_ep|Sy6+>`tsA8BdFks_J}t(~I64L{
zVZMSVb)Gt7T;deCZ_JrY;(MRsIf?cgk%{Rnz1#yedyo!|Z_l$sgp_azZuH~$<qt~J
z*X9EXIvIq%?P<IPbeiuEiEYNt5n^(O1_$JZ=%|rf<g}|8>rdZ)mT93ULnn_?YLW0S
zv+sTCSg*$LlACsP9>_h>f~GyDpqY-7K3-10+hp*8Tm~S$d|qw(Lw0I-63*H_x8*$N
zywt!6*S2tt?(2COz8nVJE|*j5CN0A@hlFAtKId%N))GIE$#szB*zgdFU=27$Ma2^6
zu%qsC3R|~1R`7gmnzL@deiKNb;Cqgu5#f}3H!0dj!=QBFf>LSl4b0azj=gza`^pbp
z{C);%_qB4DBMzt;8`Sj$ad9NMzrZ2U;dLsZ$>uEcUoN+RzB%3CRJVqN1a684%*f#&
z-$uu}+qyuji^-kkei^ph<2nTi`_9ug$sWO3P5{iWRK%s9`k5a5Vg~lL$PtE}R~`{n
zoGzx{xamNRWE-N_yf<!PBfouQWaKH)z79&=Vs=b(@}0L6_F{TBsVejN#H@F_w!xjI
z*~-#xxcVi$%Olh3fXhVR4XNnz*VtV###Uj@rMgq~Q9HL8zV#}cW}-ZsxLu}ai7iBQ
zD;PqLQ02?7+|PVsAFhK@%#wB2fFEkd;2<&Nch-zh{+_-BtxPSCt_%OY_}#QXNn+z?
zEWlHCjoJUe6~K-O2{NBqpIeFOuPlC%ASjsjjoEW)S=`M-1f}8O4vIek?n$rd+fh6>
z!*y<OhQ{`{Xo_Fm{6(YXpkrSJ$r*7fe`sI_IdW93);%<t_z$&^QnA1$(orz+=u-M%
z>X<o|0GjPm3rR*My8wco!MJ26w$HqdV{<;)9`wG{06Dhv-z_)UY|p*by**KfkMz2N
zQ-7Na=;$~h&!E<XcJU#~K_#M+VYG$vt}?fzB-hRPjn)(IrgQ?`KCp@fS0l2FTz6K%
zu>NHA=}tup5S>i{<fdxJq6^GsyFDuG+!}KR&RD8+{6K>Imbd`SJ*loUC^L!jGy?KS
z%!k}48wMc$^hmJ+Ij@}h{V^nP!@*&rPX^D`n~AwKn1-)07!tc)en**=E{>+)4MUrG
z?O%QD_*Z&Hl7PsRyQ?kL()WdrIA|jf>8;GS58PDKw;iMR{R|!It=iuPkR`MboX->(
zJ5rhHige?Z_j~f&y(&06jSL=7SNMouR^M1U`A;C~Z-Fvptj0@v(w#=vu!QN4Ao30G
z4TMpd)MR$z+6*SYZp5$G#Q>9!z0aei#}8BWXiKrQ{vDE>?+Hwe3gm~a_NNT7l79Ah
zSYZBTM!zGD?(5YGQ1kMh5++mM<m$O64(9bam8NxmV69ika+MwC;=aN1JFD3S*y<L5
z!rFPE9WGP&u6O&D`vn?9Up4cQ74)%KpI4vU{W4E3^j+t?&dqiGF6QmuRTG;jJ{4DT
zrKM>0s;;9dq2DK{h#!#t_knLnm|sJ8_XthGhlnu-cV2-GkDZ?vN)NijKzbne@;l+{
zYUT2P1@A5a$4?eg0x)g_TPzNV^9=dfj@sRtK+;ge-?^t@m9>s2o}{9D$b`?h0{0F@
z<zx~l-tQ)AU-#^++NFrjSm5c8-!B+yPJ-DuL0#F8)}-c>GjwRgkfB}n6_elhUnAl=
zig6nrpCtz-#cvC)%T=O&QtTw0V{?e+nE9km=lE>nghe4Fkq~CkBu<>0S<{DQ%-k1#
z)(aBQg3Y{>jJY{Z&CK2Adv*Ro?felCZDAZ0KX(1{$<BSS^0ZXe`eY(i`hhFqv2kfI
z3meGRU}N&!Ae2<>HFMl0S?}!IP?m7X5JsQIr(M-*8n_QyZ`crl{75ES0#i}$jyEv_
zoNZEFL2eo?C+YE5fbKx%+E%$M?X)T}mbyoOZM9;tp!vbU6HS8r+ybrVAX&2tH9yiF
zh-Getu%$)&yE9*Jjl8GolvAOAq5rMyFG>q)mC#q9E>a4JOqSh`hWJE%WB!HDDtFp1
za_!R4fIp-Mu8hRprDVOC0c~k8nkdFX5ND<czqTO)mfQOxk%J~r$T2^T@fbOEVwLEZ
zGuootI+}ujElSgZ4qkrKd?FU*2Rh5J#-UuI>GN#s3#`tx9rX2If9Fd%j``w0ezS16
zaC46|;Js0zgqQ`}E+n;*_~U0cjCxEUAlgUh9X&}+(Q-a|+lxE%mZ=_3J?}a6Lb`$`
zz8g*{k?~1u2%~Jmt4k_aVZ2_7I_Q>cDCyi@FIkL@5nU&zfdeBA4fE$G_|H?f7tpc+
zF$AQ;r2%@WtiP20*v$?8O87Nabdr-3*;Y+84viJ~9N;;r`6s|u9qY^x`t1+e+=S$G
z^SJg?Z#wU3yIp1usp6xFR?x+5^YV2Y!@Sqby&eiGHcd{&8a)(pOb?fXtf&5yEJ{df
z=&Ep%2CQ~t((jzTyxmxSF?abqrF=35PiV-@qzQ3W^xzxhNkr6oo5U85V`!$)2B^&h
zCm%pCUm4FJD|%r}BgMZlLdm9OfYr{s!Q}7a?!@$l?pV|3x+e<jJq}iBQ8xlX-Aom;
zEhC3&>|dCW2|x#ErW`N4LfP?fiSk6Lm8V%uz-aoud{*X_x2KUizp~gi(>4YSDj;C#
zGy3>`=A+$U+P1iDw`^mIrB#ek6^pNig1F<25)*Wy=iWz!A~R=#kgbh6+smf%{cbMm
zR1v|ki`}HcT*ql?u_0#}lbD^)YlRniR5l`{o0<^$66sJ`E~SpJJN@r2<L<c}^?UoD
z2E~I>#6I7M!_RU5x=#)rwT|@`AEaWZH;bpwBbAHt)RAA$C+%ZxT4Kn@ElNeihcAvQ
zw#q^lXw1GaO(p02`F^&w!Gx4ijm)QND>?EOgN!kA=eY3kSK$g$hNqoZqpzwwiHItn
zzZcY_0eQUtMm@au`nXnLB=a6l(eWawC7FSg`eI0mMie`{mH5~gq)S4$#l<7K)aFH>
z`d~LSJ&s$nsRmw<ffJ-ZQDdJxW~a5yyB>ykDXHQlz#-wC!879a`(x{~R*w%9AW6Pa
zVHvN2vUaCG{E-m1-`J^-32J?JH1=a^PcU^R;iU=sy}?t`B}l+n;sGxj+!-{@B&V;J
zx*%>V6v6M*=l2V|LC(DYB~@d>`PY~+=~w8$Bnrqnhe;-w@2e!j;i-+lw@pK7zKn3U
z-S!=C-B^8=;zJp{A<m=T2im&X7nTs8;N0H!>TL298T`WcJ(i+!wo*zHz=3t1@|20M
zfPW@2N1=<!fUs~m2tFocnM8gZQmD1LY|I{9$j|NGE&_;%5#7Q^+P*s@8YV>rPFk<=
z^MRifUQ+SPf}JQh>>A^XfX4Q<@<kNHqGyJm3?IKeo9LKouUSXCu0l!qRG3YbB4&J=
z-TwVAU+65`;dS}vfZLCaX4l|wnlB^}!w{qyX)7zZ@goNYu{3&iSzLp3HJ`kpNeGox
z&tQi_3EO`zEcYQ1k`-|(;(f%@a}#dHZcna;9gp0~$`HABoo1{wcDouXsvo0@!S|P-
z5dsgzHre9Lm%C{s3oI<6?pFYN^_TGKG*&?}y%j$J2`A+9Pba|EQ$T8Ym)93%;R0T{
z|FHM#lH8<=`XC@4A9WhdZ@X%+hXRj!kkRy-`+1Vajof!wm`hCV=+AafIPBSVP?-6q
zb{eTd@Z*r?wFuRj4!-BJLhQQ{ILg2@)vtvz`4D|-**xy;7sSP}eC+;%8G`Wyn|Op#
zNbpiS=e}PwvHg27-EH#G`sqYL0(Kg4!ltA&%=a1fU&#hAhBEe`U_C5wvBi<cQKoM{
z&>7`uKW|3^$hfya6g>Y(uGYIB#ifV0G7Q5^?n@nh7U?5Q#@764{~dN*kIqPRIt4}`
zp#>S+^^FJmD}to~8HM24f5a<<wKYeij>L0rU=!KBHK{2sokgdH{p(TY1^bYFD?Ei=
zAv>P`PtYZAGWirq`PymLFlloQO>4vqnyALs;{f;V`G?A=)rjzLq<slv&ig`<#{LBQ
zni4qkm>Y;N6VC5*7rJy}7ytEAyRTD%9Ll+KAi^dQ@$(MeBk1=F%L=n^by*^@k_Aff
zI3p{~MC<%(DdSbh%g2lleaaNurBd8SQ3rnDSRiBYG`LLt*UR4n&P=*tVXBqTmcvFJ
z{ZDTh!Ml6s=R*RY4{EpT#j*XD9L@4jFUrHftw*4t%_k1~N*zwnKJNqts<^NyW~EzJ
z^d-`>I+Z*)t0Pzex*rs5f9YpNn6~LD0G#guHMO?p+ugX^7Y-DosSVLC@-kmA<wgs^
zTjJbm*ImZazDx6z5W<JvpEKzDMhSR9Ws(>`!Q@Af+D>-I5sb9oj{@S2C%ma&ezpkf
zd!DNvbQM_LA5Tm#CsCMVa()m{VJ9ojFDMeO%PP|6ciT_&Nj5%l`LEnl+GXp!9Tab;
zG}=ifBG(+X`qw{7wpcSVH{DPY?&e5s^TjL$x_i9-g5q~{;XUi!3(yMPgn0o{4gch+
zka#{1x}>PC_s$MJ20Qw=HdeSlp9iQ-7`eN=@#nrm6?iqsHRogh|6cSiopf=m`$gQj
z=~T942^}U~eG2Sn*v58>IEl;C2vN!VgKl|x>vS`-!-J0FvR=iG<m#5?PzFO~=CQPO
z!J_Z>d|)%rpXHMLJjz)NAv^)|9W7fD<4)EU3~n&Yjds3u)=P|T+pRIDnxtofn7tC<
zILS<4(wvG7#tgM^4mIqG$L6}mYzS<1x@1+Wi14&aUu{2AC&I|~s8i!pl0!}dTfvt3
zjc>Sh`tr+`W|aB|156=CLLz#@K*ETW_Mjp^Fi#!gjjA&N-q*E>iHVhegm9XqPq-$i
zy@vgkWtw+vgvT^6dgL0_1i_389IAuJEYPlxgQ1pT_|4yttAy*`#fskcoo+XsCOD{C
ze?gzVDgSRJqYeZ3pYQmBfa_Nn=8^@{{buP{Zzal%FHOE%gR;5ROO*!z>&L{)<2dh>
zzy#C?mI{HMRy-qFO&P;>O>Lh*@6KJ~#<KlKHAR|3d4z3m&MR~YFO%EMOCbQP^-gPx
z_-%IaKtk|on6$+L5qyyL*OT;W6qMJ3#`9;B^qZYe>?fkG@iwFI>=J2Lgun;3y*sLe
zmzIplslf%9-(TnI#~Jbsm?-{oF<t&Aj#j5lSGV`a7yDuK1S3@99rjD^&C|0=>Scdu
z(#|Y0<2T-xJ>}YIQUxMF8eSaDVrEDonwhazSB_p$J5I6Dw6W39ZFTn6$hZfTQeu90
zgT}vDyjEqE17FZ2(tTgG|2l<hBNNKdc*1H+VXNG8iWhQF+N`oPMmC+kntwKH2~8L=
zlgDz?k}NJ@7CtgwUz{4k7-h9UO;$&C%YmQi6FSC<iSzEUums-a7I(8-%S&!>1zq~d
z<5dVuu3qOCd6*h4@Dm3H)l$sIs7GjQ<Wds!IvhoGON~tqSiZyeO`2laahKzdi)iHc
zi;J>aIjhJV)iGM6P%2Csh%65wGEAsD*Q`+8daRl4d&ssfL8+ZF+ijCZGi2URCZvU<
ziLe)+ZiP7?QCr9#jafvwtdGu%c^93Wp6rZ&+i4TH-a^B4TNu8Vq#h9M>Lj>(_}Jsl
z0nCpYMH@Vf#$Zq6&A)!F+tZ8V-GO?29(vsJpm7r1j(ga|rXfaJNJrf_R^kFTBbDtw
zju-z4TKKh)ul2B(XlO8=SkXSZ{YIX4`r`j$X3#8e39T0oGTrIn@n~UZI^U&`KRVAP
zwGsU%g82qr@hX-5?5{oaV-OKp6>7^<$^MB5v(qMz!~V5ryqYr?55Ur<u%=gXO8#$C
zg!jYm!G|Uh`f4wA@3X_z2zB~;Zrv<C1)#e1<YT1otO_Lt^swuodbFP_Z~Xj+CF&=+
zCbJ(9Bi7%v^hQ?wAu5mCZTL-^+oBDB?)Y^#_0Z4xvE~@T$^@@0qu@XA0TmKqt42Q`
zTJ?#}^kz&CxK4Ilm}I*yjOH{R(_?sU_}xQ_^FP6o^GsA5^8YA#aKM#$HHnRf&!(3c
z2PYIc@p9CxF*KT8HA`D_ah_LqtvAxFYL^_dfb=oo2FnXc^{H7ibytPo!YB9ENL<qZ
zzDt69v&8En38=XCG1Ir1+bE%~{_o42hV~5ck#I&GNTnX=R5=F8by4hw{%Mf=nkoLb
z>@RM=>Qe*|L;y2pQhA@2i(XmYRT;AB9dzoolpqqW3P{zKxiGv%s~lUQVZ`vQhhYx4
z^6$XWc@@w;a-s#A_$5;_#D7~i#LneDs~XjFP4szdR7`DA+8coR4&>>Y8Mrz$2=0$9
z>*{K7Z1gm;DhO}sD>qWFF^ToFm3o<by%Uu!np*II%#D)nMx%dE(7|Rqzf&_5q&u&^
zECOqaYwhh5L|IT55OZ-sf@Cg#63DEDAA?%C6EmvuY4%<dIaO?Nexp<*Z|Q{za54PD
zT->8Z7jQrb;!|$>Qrw<KcOnR^L_Y*`H;1mUcWqq<&Ngv~1`!h65gTtHPfjhs>5xF5
z;W@L&L`vyYO27K<NgWI<qSIdn+-P9aPBsUu{-Q2Dw}me(N(FDBFZ^JiH)^8!w|T_4
za<*&U-PLcNx_Bq=)6_IXMbze(sa9-&&2=RCM~Bhv&E@FRR8%*glB1)fqw6bW8O9}l
zIsEv2;Wb6ZwsiD-f<Jtf@&tnsK`NOVq~4y)_D|r&w&{nN|2jH4T6KSaf3UN;Tfiu<
zYQCuc7IX~hHN_UqPcixg(R%A}SI7KlP^0O4$iSRg?#V2DJFy^{Q{lb?2Y2-a*_vW@
zp?!tLs1e7fEu|p_l!9qo^};InY|Rvi;aRJkly8h<QwYfv;akObGvMW2tzsZwOXMa>
z+DN5$GEg{VZCFo<P)pX%{E&+$YfV_r(5YZc-IGZpbXlKb0srgqbl6?mCFDS&Yj%ly
ze7i;l3RlBeRGiH--7faz9hbb@CDN5kn4&6^3OOuvQ8$BG_ZuTZ%^$P^1qaPnF5-2v
z+hWyHnR(IeX<JLndO>L;|Lsulk>rI7Dg1@uZbo0uZu2qV?a6!Bkqh=Wh4uVu8g><y
z##rpz4ZQOStJyd2I-yuk1ngsJ?xL-ACwot&F*us(U$inYzS=R(CyW=+Wbu^G{VrCj
z&98Z*3MQm*&G=b%tC+Z1r%}xu5aojAX7b>{_mK(h7&6Hjba+}v_AUgRv_PeT&WhJQ
z+~$%u7~MnX<lr%C1~iCzWB$P9nSm@VlGtZ2FL!hIfqkp^?z;H-ef^uo`NWyY@I>PC
zcy-vQ3%ch8P|EGU&a7WcfEbnB6z+@P1q83OUq2ky3q>Ge#)kgjwBL8?CE9`2YMQQv
zK(U^@3kpGd_1DvZ^G%ZDGmg5b!ZnUb)c!tW&qSiL`Ak*1xLXW=MLQS#lsMl2=Vq|N
z_S4{)3U=s*+;!_+qH8h!{yV&g@2CmQ^rX-YH8eB2hrTq#Aaa*~d}hVC(c9CNMwoqR
zQo^)Djgdh?lWb*{!q%~k4YvMpl;LVj%C7U=wG}6RteD}(9CxdR)S56*C~j51r7lzn
zUztUp*B1bV==}o;sfH2IHC7lqa{c|c05Zu0h66j+k&wXIE2o8F%me$NE;x`GC+<5%
zxzR~sl;}c{yxG+ATOU1Q5LA09k2UH%x=s7?=2^PPx|(85YnRJvYHHPmhL&}7$2PX(
zM6M)Q_KS<%2ektkJ7$BHl>AD*FdZ+D(Y0b#{kZ9sZ6d(edxs6N3a>~peXmrFLrPN8
zz9wn6NC^c8Cw!)h4CYiaaP$nGDPzKO@=p_PS^G_xminoG&u)2j=J9ugG+#zVeXYqO
zPV)Led|g%>?gpPH?SxT9-9~lTn^8hql#mqC>LNE}{$1>xC5v0v4eP=vr=(qWL8c?!
z)Es9^(ueokZVhdP;ix1I-myXRPGs^I@kZ>o2a^n8;4_tR-lVK#c3>eE^{3ZkoB4kK
z;NV6C-5>spw_L6)-4I#k_*)(k3O4piNsl>oMzZ1)Xh%&xnl2UkN6|TIx~JJ|(f5{v
z@s5@>4D<y3cje`nV4bY}$*XfzAqAV4uJ3d_RF@-$Jm?>_CrO*r*j8%)#YPKWrz6;~
zJ~{L2;Iue;+ITMZRiD;>r00jE$t>=pL^SnNk#q9;w1G(r)5D3rWWOlm?c}hQp{RzR
z;Bd`J0_XGNEA$Q7SQuzVBEL;^Lcf$d<w5!05N_PKcQA3hiOO=XRviBYbS@fhcL`53
z?A<TWJ!VlWt%No|Sug;%)2Sh!n&nY$>7>5D3@ZaeEch;8QaGucJ|m=o6P;YnGVo*U
zDK3Ag*3!e%ZhSS*{mEcC)z5iiz)$;qy#vlt_QUH20vM6rAg=tK6+pUL{zTo84Mx$^
zSwrUG=BOJ${d`FJ^XCuB*h%~=a{J1D5b!q<fQ6}~fb3O}vUGExw_XJa;=onCOBk4x
z`xJfWyE%fus6Juvu3RB}dKEF#-Znp5%lWsDcVL|Hz={5*qqzQ))b{IY2;gmAN&yNj
z?nne(yP1v$x-U*TKiwKPUE1rw{0gbl$ifWzsfxSxV&-XcxVBXLygWh@pO6wADe8W$
zB{rgdW(ExU7E=u$?hE(3v-HvKkMt~8?g?BrzX4d=jijz$l}>Rm)N6pEi|zN5{z0aX
z;mE=1*`a?qc8I$sO1b-@<6Ir8=RcM2G}mjB(?Z{wLH-X~s~^B3$f^U(>EVBJdjgT}
zt=(bZ|H%ezum4jaj3Qm9rd{z%;r<KfxL5pIUjK<)rVXJ}X~rFLi=zI?YNK3otGfP&
zWX=R$A(F|P_kUma4&l$`^gmK9M#w!wijm{RQPb>EoK|1u0F}nc7x@Q2=Y>wScW@~9
zg@<A@csM9Y995w&qDDzc8OLlg$zuP6`-ZF5(bb_vxZN12=SG-C-4*3hytusP3Uzwg
zOb_k}(9!kw{`}J0JJpf=E8&$mc5soD-M??wC<WA1q9wcfV@{@WSijsJAn)w#h%hoT
z2B}I9=>Y}CS3ngqU!{6uxI)ICMqG#eMo1m*hKo12n0AFXYu#bfEb_<bnW?rUD{#N@
zaq0323<eN5ZYv+j;MUw0;f_rv;BuZ=Av*IA)T&WR)H?5n<OBkz(G{PvAa~4!5Hfy<
z#4f6TCmF)<V?#rOPd*v~eri;7Uj~C;R5C)8Z`dO7|8o!4FhS`%t_5!{fE@LN6`YpG
zm9MIcT1Tlm&T8n=&9Row$tamA+W45ID-~S$*E|6bCJ*WSs}+x<lJ1+;ZUWE4G?P@9
z?6K2Xv?*W8!^EQ}_s#Drre^fewi~%EkF%-K>j<B*K*d%%42XihzCQoeW@o_d-A1o<
z2J`fxb4Gx_e|p)wvzDyHcZC*%gCEUn_E()xvRNE%r*m>$-IT9;PEgWr43+)TI#-Vw
z(&S+<@bR2`s0VqtB}wmlSM)qDk83tpy}aSE#f$hD7|J8)+q&5<BErJ+7IA6rD#c*h
zzqTD;*R#LH02#`8dArLEW~fWr>@*|~SJQ_Bw$Jc0`fMLqu)Sy!vp(Kina#6C?DW85
zCj)Z}LE-futUNY_hlPj7y<?dM({0e1F|qp-<3@CwXs%pjVNZh4&!ZDx;(ST&@?{6{
zV2Xfj^lu?ae3p);jeSfMOp=u7Q&Nr&yF|9@`R|o_6U4jWhy`=hhzWAGa;0&MdR6Jr
zf`j5BN@QD)K}CPsh5ZM-`!=aAdv3fOVpm3XYU&8;OU5R@{Y@@t?|pdGUrA*8Ok`ux
z>|gVV{Ks|b7$8>RHfkMf7aO~~yH)qDGVGkBw#r@f<LPIxh_!G2J3a6{8d5O?XA3v;
z<6ihHu051*IiJ5iAICCCc}V$_tt65Yur*~ntx-T^yk-)6Z~5-NayqZRMV50ke>Rm>
zx~I^t)UA844?%zxr)_>GC5j5<|C@6?`!*&e?m<5q5cuu8Uk~h{V<dbr&eNvH@A?G~
zHM5LIK9fS~YC{d>=E5w*#kI>UZU<whDNiTkQ82!*2+LL2uMRhG=pSoV2G#?JQj!YL
zI6}T1E70**nrp9r?nrb|x)+GG#add1xTPl<Z<^A_^v|2FqOh4SeFV;93Lx6}Ov#9P
zaX}(o-SP%_zWbDow!HSjE`WJ$Yzp}LOaRqqyaGK9uA>J&wyzgYm~4X+BabDVk{`8f
zC4sxqM(-U!s{^)f>h#GiohZ_}pMl%$i^b7s=sX7{O?A@j9LU{~rL(JkB25OjtaaN@
zDeuRTZo|9m{#|xGJR6Wwjkq#Pu)Mp*APW!8@&orH%U?b-wBYHwONYBnvV9XqpU1K4
zKBkKP6P(<<1_K?d>1C|8-P1ID3@nd{lurfJd)E%jG$I}@jut(yg&=;uc1L(fSu<H!
zp3pSfb@z-VTaTp$GAI3#WNZUq<?RIQ%pw@1a1U6Xdu_SA%A^q<ywZD$n{r9YV{z-C
zX#g%IYb_?N$Lyb{vFjAk;_>vf86*)DMWggzubGw`4&bs{@1_0kbjkx`Y7&>zi?ptC
zcihr<?%A*ULs45kcg$aOx-(2k&wG8lw2l4osJj%3DoU2N?Hlv!5|={-^jvdx84lKR
zapY$K96wP&9IyPB5gk4KKb;AIf!B+0YVzCFT0B{b&niXn+v6M4tT|cVxe5-KjlQ~j
zq%W~cL;lDHz0vgS9n6>jJfQXMFQ+|Aw{&><>14}z%RTtZi3wdw@T$F=`HSRA?H4!=
zMJlTK5u5obp<{d-cA+&=n_VTd`W(SM0F-<@SB>iZ_ajFHGhh*UbKjZWn4N`%;esJ{
z`K9fPRBvdZW%=Q`RI#_=t_tmnchd)RN#)cE*jYWX<qOPizQ5e{OJl6%ICxT`QjxB%
zN}mcaJ$vICj}ec;G5Pi;b6$|4FQ5>hQ#EUH2_YOMH_WUL2h4YSkAZT!-`7;Uy4Ig_
zCDKMgZ=o=cUjn)P*)O@pK#8h^PW9lcm1qXNuzhp*k`1gx1LqtM-H|aG=`K~2vD@qV
zTgv=OX<{kjjtc{7jAaG4veeFI!n^9&wlIH4FT$i-`*dg1^2Or`ygsfH83OJ{sQT+S
z5RsPmk`>L%+ZVF#3gyLf9&!;fBm1c&W-<~=buA8FBFW1R&$bqGYNLtdjk+(_uK9M|
z9af;oTZfB))bV*<>7ILSP)Mr)@wF<0haQv_MbA#HKcWA}Z-rR%k$1aAvti*z$db(F
zC~Z#N+miSj?$qD|;X;;|@`1Ve7w8G?6JP7XX5?v?{Y_C8=+%HGYnxk*%c^TJF}856
zdLf-jH`uSTKTZiUnt=Lq4t2sWPYbY)M*NpUD_BxqO3^O&InOYr_WdL!g0biTirkHY
z!$_v?x%+5n*P_w@W@(1mQnrVNhl2*EVk`EBM@gRsUQ*)2+3S%JxJ=YAC~`QRKMOxT
zF9=#eQ?SDxNW6a>3f2aqJxm!rD80e}iw3Wtb0q6#a?*ia=Cs2_an+W^#W#ce(E+5?
zeTi#2EDOY(vRF(No22h2H}(hTGfb4c%A2k}o#%jfYP!X^0_Uoc%tIHXw%K{NEn|(>
zscc&W@Y0)*AXQ5uHRT9ijE}sb=<f;xlVRp*t{tb$X+i#w#ndyNSj4Pn$Q&wE2B+N3
zL;^Vv671^=;P*PNa>#IfcS05xv=}!goEd`SKf4%@k!y1KBQ}f$wD6=H7MCEf;;=z1
z^N5_o;P$*eEcLe|O$z_G)vT;N8i?G^4QnS%>97iYUdO1!l>o2RrKXFib1p^JsxxRF
zo2JBnKhk;9IqLHza^X6^Pl$BDSR{qc)92M>-lRJmwGn*WSSo*z^u9E9Sx?)Hb@+*w
zL!r3Hpw<O_{95l>VG`X(A&y2zR;N2zAo80G02mmx1bZ$Jn7O4te?Aei^=IU@s{aO%
zj$0?}FGEX&hoRAzbsnHANyrElu(WmVJ`i13<n*QLll1S$pQ!z<_&iEk$~FK*zVR&X
zO^^IW5^utzjStd!h5wsTlg-m*;>{IsfYv%!BCAhPS}+PCm_I}KKu<{Tb2Ot+_i-(O
zj^-K-g7^}%A&xjWH9b9V7JT#<0d<ky7(F2s_p+a@a%Ot|1(wryD-0nW3@Jd1r55oK
zyW`tOOt7_InL3*Y+J~@bCztekpD5|@2s|wL7+#8OLfRe^67#;wf%;ALIj8bZAMGyD
z%~jiPWL>=Gsq@FJNY}2OyF&%dWQ;?8EKO>4w)VxD8OwG`o8Ak&SW_(3cl4=&7Z5A`
z-uc?~;hB;q{V8CP^D`P@Q7|bvJ~!qsXBKDs&!u(B`X!IDv_LVAgcjKQ_kf$`K@evF
zMJ3VhEpw(9&ID3Nz;pVd;-s@qn8eU#Hl)=@{qv0jqhG4$ohYM6%;N%tQ~O8AHy<E-
z98@5Pzh#52`+b(xelYW97JB#d<Bs6(<{pH++7e+w2w6V#xT0k`lPqA_P7#^gMfB}d
z26L<~g8Z+6O+`uyVBJgaM!wnOz5kSz)MfJv$P|8hk48Tfe}qdU;k~EitNGZBgF^>z
z;Xjm>PATvH2y98)!{q5p+q1+DtTL{e3g&x%{Pn&03n|DFHQfilSl#UQGMSft|6zsI
zssAGw*g<#)sOy;K5;C|5wn^hBk-L#4-OfUBAH=CFMIgRxdMD@rR=fnWwK`?YuI3jh
zjbn{H6$2xsBT|l`+xVeEV>{4W19}!L?xm1DU@5Na1q4rp=OH7+iPwn-)SR*iAj5R`
z2n^~t+#pMFa~|q0c8{I~u5y5DK}=iPXLCaDFG%p2q+RrJfI1{Mum*#AgFF3n!S=H?
z-DWGtc3QF^ZLg6xyYPzwPhY)ivux93^QfT7jQ`H(8R&WQ8ew=d|J$ChSry;=5)3;V
ziT2BFi}jXm{E?a+PZ0;Orcbz8Vb_1qb#^pbZt*y}mLaQh-0`^^X1`>_Y$z=nKc9a*
zerW(vckxSG7n2mM%0I_v$Na_gjnVBOVPn_QQrqyFP#tOc5wj|b+GjA|aI9DJn!UxB
zWty0I7$GErNK2CX%y7=n^JVtI;UGVZ#1P{3WlBjSk-Hb!IAuzcQv*YGB5{1)Rn;&f
zaq3Nu-kW%3aG9Z4<WLT$)c){D4#$t5p4mCAJVi?kW`7hN_rMm=${*|8tV$j!9Z$g9
zDt{rkWM5V|Bu42nJd()qvRGh)MbPYK+_N18L`i8$nT!M?Q^vzJ4>0q!;@W9?yFITU
z8tTZ#jb||Ic6gc29dCOW#J0@b`L3`4PK%E0xPPf|+)|iE0X~dx-c-U_*yM_D(!B8-
zfSoWwgF*@SrWSb9kCBA<zwT-AY5C$ugyQZ#&NFHm^}R>97=0Hq*o-kFPQue6!K!3v
z0xoD`!l9ZjH>9I<KT{So5SyENw>$LKLybO3mDaS_SbZKAa4|-No@nC8!4L7i>9ryk
zveQy4S*x>1tXH5c5knZUGPxOs8x{|ao?3;hA$izq7Owm0vq&LXK3#}yS&}>L4J03-
zA)U(8h?AQX|BWW0IG9yai&qF;C4qwu6!xF@`Pz=MpWBs?*SLyb&zA&8WE(B1N~Od!
zKz6ur$pII2Vgm3=;D0RAqU=E@ScTjz2$HTMQ$?5<OB4)~@O{2fEo}Zsol21&i`V%$
z^P<Eod6m|J^0RjsG8u`i?N{fs`0{T-IYQDkuTMjt+!;YK74!++1E=xjnhSZnIDIk^
z&|Qa*L&31)Q@odwtp@)X+-2&f4yima;S};=fd=-(0B8ysmsS(#>69-055R#`x8tFy
z1myS2Z)R5OIn-ym;q<=bHY2CBAqU^Yzx*^X`i248+8W(D$v!RRNv2Ba>3ASIG&8HR
z!*$!tbf6WgaKCnuSVSjQAeg>xP;JJL=RKZ!6SGkwdRohkM@y<x$ylADPE|$st5>{!
zsGrgZ{~eYzib5UOI(Lu_JkSO4KX1b4qFlflTM0~O#U$-dC^#@wOX9iSs@5G_GN<fY
z<}p2*lQJ32H!IkGkb4|`TZ<mq>5#8AxM8x<4}O32J3E+^D(M%gl|2-Yn(}S>cw%QC
zxs7p=lHrv^(L;O^r!mDzQ(q$HN%6C}U?enK6IeXu-rIJbdJyj@X)I{TSMKuc_k3Pv
z-ZxQYXz>%U{ta<xre5+oU8VNX#0y$qg@~y$Pougfa9(`q%jpz(g2%X!64rsCC;)%4
zgDrW*T8mh;GH-B#1`06sFK@<6Y7=dy@mKS@41{Y%K)y}LB}!Os!uy+|M3`<Ki`6Vs
zRNV=OTlK4ej;1`gSZlrXtbxyzisi0iC+xQGjoa{J^9N;RSxCklz1v_?d~kdXJ8k;x
zAzJzlpTmM>T6z*_1b<p$z`7ab$iQP|WWLYsgp9b`+46^a1dQX^(|%8(&yT$W0Lg^?
zNyUum7!|=T4#5RS@#-OHAxK1Y85hv>gTj5bGQFjBVYzs^0u@ed*@EjX<Vk1?ocW|a
zP+MeRG7Ky))Wz=9{i%MN#@)l3wi<t}li^t?Kzj9NA15Tycr(8Z7|*L*Qj^P2Q}3Rq
zhot@&BG1N8yq};!M0;~Mlwjn!VeF?scZSB6cO>k&Sr#mg<P?S9z(eaX0v9y|37nuu
z5+j1kULi$JE!V;zhP;thej{mMcy0t&Y^Bgr@E@y8-~oNV2S0D4Vh~ayre)z@A0CIm
zhVqU)$@RJ(M>p9Dt)Ymfd}FeM0~wb&f=fMvr}sCfkCSc~d=#39rrs6Jk~D!#j2XSW
zwOx*N1hE>Bs4)+91NO<Qh$Fx0kS;8huf{N4&ZnIfajy=o@lS5Xm<e)H=bo!AO7bfl
z&eo0<#d)8sS(Q_vf3-VNOWTQG6hANMtSJJYbDbt}zmO5zNLAY=WwYMY-INxy3Pk5Z
z=>|(X0Kq(!Wey6a(b8KHysl`0@Ruq6(PD+)fNVtXV}D5^Jul-b(J<`+3e+xMMs}nK
zf7t9j*c!*$nW*K17fkUpf8HViHU<?&B6k6Ge%FqpE`FmkN>d!NE!=ZQ`wLPuZUI|b
zo|7IX%vcB1-N)vhNYB}M)wex&VPEgtY;n1_=>!YJFo&ak(y%3a_<Up=(NnQR9EJKk
zC`gjIwcUz*n@)qdsn~DCu8?_Qysn4pG50^9YdGM)hr69+An5_9SOqZpzId28m2ah}
zr|gvPhFOXfOw$nx>8Trbp~0ge!tns6_#$7N_4A;E*I`iJLrYhE!#+^N$HT=Gl61ri
z3VL+}*+^lYuTfcTsCVl35l}Ev$F~4k0?vTL<8H)6u$7=nJ4krw*tgz2o3R7vfp%Dp
zL0P;k^7^5Yv5AOcV%tkAHwUl!1t75j57IJ$Ls+z?M*XR%-s|`iJ@`6J;WAnTdk{DF
zuQR515eb-R_$r4tQrp#*y(PK}<}_0v(8C4@Bv(Kza)AD2K^{l!f)%%9g`EtrFfY7A
z#>T&Z{;kd~kt%l6(R5D>Eo>3SB*uV!w*em(4lOe8Rd%DydqiTB9TBP*HdBYWe<J!_
zLr5Rl41gN9r!A);^SO5+hMc8M&9b+at2ZnrCQeHOPtA_cBFlT_@W!az7oz?9LO6)M
zp6BruQWfHMO4SscO;Q?5cm%2vAw`xT>aU&3-+*SCc=kAen5}9YJvg~n8&1mzQIltM
zG+YvPfkJHy$HgoI5~3zF_L9QUj*N$en8~YdLtc&sQmSJ+80&c#eC0caCsQ#xCMyUz
zruVo{N?8q$r?s@i8PV(Dw&?bKmZ@!w(33XFv>A9X#gK1ionnn9)@<21AxC`XMl>kp
zwcb`RQ+>zMOp5fbbDQR0L|JAhQOSz%>tgH-d0%k{(Q@YMOvA~#dg&;sFo%(f@BIsm
zLwp*KN9FG~XPDCQEhDy0GEJkVFQsZ`uA=UC+@(ST&)gY^e*?!2Tj4n$#$~qL84y=J
zhLZ!GCo*rG$NV()B-dFqU9jwLIGrD}K%B;H*vF4N@vyB`3MUv<<`>64*NF?S(W$5f
zTN*hp=%F6IopZPxrtXv((%k%rh8S0*u|_c<S<~EtmjY2(=@Sx~=Nw9L6jPjM`}sZ;
zC2cLiC@iT*@uu5QkRz}{ViVr$4dMe?>VxhoZ5i_Y7CIwZyzz}a{?1XuLAD+2VXZd|
z2*rmw>NwGU`sVlc%kVH_X+r4U1uTEA{vbh%q7eM|6=|Nup<L|FPpj8zC5<G`beuxO
zSGa<`G<9b%@ia;U+^2)G4r>a}<qV|dCf&c{FGE%l`(V%6sJTiyOe9if=YD0=V(rnR
zlO!+p?Dm7@af?GN%=CYYWpR0>yPU`TnWYbhkhV12bs(xIL;%l3;FY`qT@Q+?G2UD>
z;N7pcOsxm;l(#pN1|tXb%CLz+BWTa71UhjA6l42e8_r>x{+SQWv4_pbsv^FI^w~_3
zbU?RZ6A9nucLm-9-u+ddyXe8&3+|LZK`>r7DN{HFpvY_OpfFVCil-aIXhSRRKUE~D
zP8B;{7en|0w|OA1KkhfF4+ark{(5M{j0CXL#}4+~d3qgFk_#Qa*XD$$*v>ICWN0Gb
zDrop1L7ByiTE5@Ha^75>5-}U|#<D?YB7|7o)p{2obFhPAV`J+v82Qjo<wU+F1WX+Z
z%{hDrT}FxHlij+pN|9E8(4ouV6^)xkwXsgr;rYmhF)qN)mIvWunVWMRXT2l;lURTB
zJ36`U$u)0WAWgk^yw-LcH1($39A_J9>zfsaWE^9`Dy2nDsBRlh!PQlpK9{&tS)?Fx
zI_Bn9(0qLX)x>$X&bum}#k&GHaR(e}8U{g>q#OEeyN}Nw=N#rPzBOjA+XiBWUze7!
ze)fe)7XgdB?y4Q*!Bg+%^SvcS{z`{f>ra4L5VhRm?_adp$zeUM*tbPzbn?TILTd#2
zMAte~9VO8R4|2)M<(i+=M^Ru1s0Z%40+k<NktbQSA%>7FFJf_kB`St1oxs6qtimrV
z{*Q0k5q{nf;uMBSZRLkiDH)h@NioPzu>s5eK^%{sUZz$av7K1fbV+Sxw{m6W<*?Ha
z>O5HYJ%5C&(m|JkUDx8)t>b_PafVIY6EDB%^PCgjH2F`%u(V26gm}{i1zCLntYYS`
zAQ?d~O1zK|MO-?&kyKl3^(q$3D^-s&sI<QbHF0-Urs^t?8Tz?(jSrJ6M;WpdA|~le
z{W+IQ{ZBx_mduzaB<wwu0PMsfv;?HWJ1#Uh{dE-`h$?w_qAg1#HtWdv#nDEA+=Kqm
zcIoS=27L=o*iLd50_a^w#Ke#@FE8Ts7W7k}&k9U1xbqb&PMY44b(I$%hZix3h>bg|
z*Kd21viX1vh6!4nRXe!%x7ujiMlr6rJxTM^B*g4uJB;M8p;UtzWpnukjy$D=K#QAk
zeXeZZD0NjaKHA<q>35@~>pd_rjGUX^edH)C@c3>bgv7WaW7+d%zId)6I$zZm${(o&
z>Dw`w$<&(5Q<L|-ralb3I)*FsL7X99)a>joxUVwyCT1#&_hh}yNPF-5*}=Qa646is
zhpr<GsoU74E6VTwgstS@CLEWs8*=z&Z$;khiAbh=4?<>^?lfM3J-HN*&Mgd*nMr%8
z{zG+TN9|Eep|TrhYa7-Q@@SCmGl5%iu{~IX!9q#htpx@qJ&Iq=SDRH$93N{Ixcdpb
z6kJ>#V_S?Pm92aeUVLl$e#5rEXV265OQslk_BfR16|ge*I0_PA#vFe1H-Xx*tO9fh
zBAcMb9AZMVK<t}hSHz9pK!&&x2k<M0ybiOn_|CobYrVvp`0fDFGpnz<FMf^%Ijh5)
z@YDB{La-ppfW3lxd%8(ub2XEo{jkDj1jG^v_sQoS`=tYBWMmuVnKSN~tkdhvOV83!
z6!nJ_tPf_59Y$?P+)ObpkIb3z)|&k%OX^>3tIpf4LYJ&_%j5Q?&l6Gtr?7GUv0;o{
zlbo{MmV>oZQUOLJ(I@YS51H_%^pH&d3c=g+<1PqRP|`<>T2xJY&q5gDwHo$j73v)b
z)|LSKYd-d|igW3k7K*;{$zlEde7WG{?3o=~>G+5}WnHMAg}S5C`ZpskOMV~D<$w8n
z*;x9C-4rR8HL1O}vfr42-m5{wY956pU<r&Bsb=IkqhJsPncALE?R~LzdXm0BW$s!R
zaF8bIvL_A5s9DL@S?rIglW*c%d)bBZvpQZ1Kmd;K0<8Z!h6F%>6c69z8JUu7KV%G8
zA;6}DK4aB#bfBQbm<|n)GK%HZ_`(NTgND5shmW@LdlnnUI+-Z^hS||^LoR+zF<iRi
z4rU8?cl<|eLKGJ2{&y4$3+P8Ae-gXmsn8s`xV?G9GV!}Uq5#oXEUD>X!8GtZr<UIk
z(3+F60nrb4bG%~qkelzg9$Nsa5bY7pk05V!xPR{ztcIU!U`X1895?A$;#?~a*09v3
zaU}9>zu(+DQ%>~5g^b~*!^&mv8>+X7GdO|!Oj`D15SfESm3AR0Q&ctkzA6~#iqMZG
z@i%!UEvv2<*Y`7%^mUuU+RJMDXPFCyt0)N^Ln~l+ZHUU2*fzFZ1ChX73vU+ueqQRL
zboulPN2ey546XHwJ(nN;Y?nazMNPS({g-|}ISYxr{(kt%p3z<Jj}^PZH#LZH>1T{G
z*wx>|+fhz$hEI&enTS7$N>v2rzS7UR8Z-^xPORP_71^CkUUB>;U(H|J2--dfg}1{w
z_x3HC>G;!TV;$nT#=5IM#+LT!x4O{LN4Kr#nYNLk#q83)LT>AH+MV*ov!?BOoOKX`
zaURj;`+c52Ee=r55vNi02o18vNThykK5`jS2l{P8#S&`FbmO!`%cN+1J#~;jfUq!Q
z=2E9G(|<dDjn9`%qf6zHKWEE$cQ{Dyh59~TJF|Rmw1&DBZ?j?dolVlrMhwqWNI#}E
zZUT|7Q!#1`!AeC+16=#d@V}WJrp%A9y5_xAZ#TWo+IN2Zcl@n5^{K2nA2-0J%R;D+
zo_kgGstNG+T``+F_2UsS*z7{5h2o9Lq9u+R&%+Q{f@+IF#;FzSk)U5jFLn&S=;98h
zeH?HEQ|K+RM@n4?j`^9JiR2<3*t8y4tLqo8hpRtgTHYAQKLk4WZhdi|f3?GX-gl3M
z9aOB8OLRIl`9B3c)<Rva>(s=pA*l|wozm>N6Sj-v@NUvQ3<l#I<+SQ28^X)Q>HzB1
zacbfJ5G9Be{fUyE*WUZt{g+nJ21qzfve9b1L1NQMqq-}OjC~$~rW_uk<KA&NpwnO9
z4{DqPwwyHBDcPi7Va{inKP&MF*Tp^%EI0eMOZ6?s>yX+rYa`E5&b=}GR?mlJlg408
z&lII(9L?`B^#~qtF=YL5iL@62kBZ5wD^^I>M<bcOM`VPNC={YBZ9&LfKaLgubxe%?
zFdb%e`f=6>1%ru-T3bZPuI}c3pxo$m3LGYlnOYXh2YD@S4SgP8>25h*3Y$QWHHiiV
z{WYmdqpcq<GLU<+9i=TxWL+LP;I(}0)4E)yt8M=pdZD`X+k4#rV<%K7lgRe4fqLH;
znf=DxfcJSfKCjw}p0Q+Gz5<-+xC8e<_+Ca?Wm#7y4Vu2w@phEbOYFHZYW*m_8kH4&
zYz^zB6U$?p9GMS$trQ=XQpHrwu#Bq^e2>gnCY0t^P|EoRoSUxm>t8fO1KzgM6g3l<
zFb!{`m#9Y@q#<WXZ#J5QCzLa{Oy=O{yxQPPEP~TJm#t2tES9Hp9e%RE-6}o7GqpA9
zn~N^J68fqZPvYXtZsNnYgsqXs+MY7zcb}T^LEz4McL*XTa;UjuFwEvWx_9_~(iMhz
z{gR%WJ|(poSzk>Ya3}3<7z-dd(PXn|AYR=1+=8+S<ptBIq8pSo%_CxSgBzIS9l(^s
zCA&YOPtPuG5~roB9@gH*IHyS_N}2c(b>#Xos8C)6q7iE!b4{<0S-(Iy+~@%$V$>Z&
z!`AA5JsP$ig=61N77G#b#7VC&Q`RoO8<IMkTHF&uU=N5%MB0rU@pI*LJL3cDOE1(-
zq9qcfijDO8)5P7*AK=Tve>??uJAVp~3Tmv?oUJb`FGNN}T7}%A&-@tz{nR4|89nmL
zz!>>S6K(7ZEit>3r%XdUH1<A9QghU<vgo_MjPRWS9wTTAV4FqLSLG0LCprIEb5{dF
z)0~W#6Gv=gwM_BGzrK!TLh76y(O1lnNOS%^<TXd)_dSdcE;Zhf&*Q-|Glk}5IX&sE
zWXs`z<{T-7=;`xyt1<#7J15d>xjLI$;8LAS;V<=>z&@a{^CBL*03Gnv?Cx;}8q(gO
z#c5Kp?()HNuA`rPu3%)&oLarn@e88>=ytY*Fh58smocfZMYa{V@1LSeS}~YYg7>n9
zZ~w+Ur^RMb!E^H}>UL9*WscnIohbwGI<S0+X{V3-(&!YjTJ7frU9R?+UK*<n*y_#H
zrxeLi*vsFCdeWrhM$Ag=r;z%s+$?dyKOD62j4ToF_j0D7uX0A}gGV)N74Y2%PnjKe
z&~P+4whaYauQL8%Y^~~jl1=qPZ5l``;yo^Y??X&&cd^s4xpY;I%$jJUns4gM+prt1
zemob0&q~+%8JgM`B_ys|khh@{5cr4oGT7O;_edc(j}G*N9(-joE7h-3Jf_b_J@=K3
z;FBpcY4U%w0KRAmRRWe3Yy(P+Wulz!1T5dey_dLf(UA$psgswsJtpW&<0Q{bF+eBy
zm}!-PzCHidpo=he_CJ+ca|s3quw#dRm}=?0S~O1c;_ABB8LdGv;GLG?qgVI7TTVzy
zfwC8w(f{C{l8B1&FVc;y5K(GN!bL2zlV|S2PQTZD_Nj*zXd`?yjlCy6ub#YG^gq`b
z-n=C3b)@mN9%idlnZ%8#otH$YN>kA!qxb31SSTj&iwpwx33*goS-zrw2m3TFW!lk}
z#wDd<pK8$0hL`=D@Z0C`#<7XETD)p$veU_`D>vp=56}|(9&~H#FRmrrT<-Mj^u;<D
zQ$w!Sy-L>+Dxb3^Lax)qtgg5$))}^$Kn&_fQEjXeQ3>rPcjS>CCYI?x%UbvLgAko1
z?2IZ6Nr!c7lOe{&p&Myw)(%r!e!l#LzdJ}KOUN5Il;Ui7f9wmI*&j!1#2O7TIxtWb
zH5JK)@bDDPAJ0mxa;|<GUd!NrrZf7U%EF{XH3KMkr|iHWa4uIusVUc)g1AUe_nb8p
zMB|oUkTyS4u5yKCs1^Bho*kj(9v!NJAoa4dCts6wh}8|(H=USmP^57T2dve&1L6V2
zD#)P`Fbex)xV#fRA4KyU5}9(<t5m>qe%)d=?d}U#=^ipdx4RsNu-t6kkU3)&3L9im
z-hdY>&u;q|Q^?3ktrX5rqk(Wp$;1O=(ZAL0Ls5ZXbPE&O2?GlyiSp=1z(=eWw|piZ
z@wyjbF|eU8FBkIoet=6aKcK0qT@Zc5R~V_V%=GA^{VGh0px(_f4Ex#_wzpMt^p*_f
zcKXwN&!L7tjf3gC_pNDatz0kD?k`w4=7#O=Udij3$-PrmbzVVB<Cn+(MbtTPN7_Z(
zx?|gBr_-^Wip`E~+qR94?WAMdwr$&Xa_hV2o^gLb)u`Gv_FHSMIoC6@q;jp1QXW0!
z_$`k?jfvQ@N8^fCN_;pmap<1f)25M?0k}sVdOt`%#x2j4&#)(#H!QzE%$8F6e)a|@
zkT{7L8QR}HtZSyb7WUWb*XYcw2^z@CMM0D<`SbJ}0ZmXj45Sc7zVd{=hKA>CRSTKb
zsmzdnP7)G50|o#fD+=w!5IZpV?X^Ee0}XLO=DLv%01%Fi?{4}Tm(~(z8~G`buofRk
ze9s`5w(cuB%at^E@c2=EO|70WIdSaE1ZJCm*{Ck!7FZnc?vLVcUB{uc1v>>U{;0&V
zu(Z|JLfCLNI2=Hx?_x0!p|#^sH`N%{Q9~U<@c}MvnSLxy<N7-i=LQ~6fkb_^TqBG3
zZ5=O=mm)a&UVr^vUcO3TGOMMHNHOaF)$U`<_9XQ@(lL5^Hlz)Q@KA*0LWSVN5xA$e
z0gih|Zg!q<yHfK@%siUlkrOTQM|v0@FJRTPLOji?B*5&2LtO{q*-yk6!fx70s73X4
zTh;0mz4RXc@7ipK!s?pf*~bMk=Fg%PYF<RlcyVO(;K(Q`)0n>mp>mCXx%f&XUX5R(
zBl#=H7a~#UXX25eG+0jzDEj~pJURPmp!vtF4w2M;f65{h8P-ZmU4MVSzkPB}68U4}
z$%mbArgn$-KGc?4Aib>a*I)|}nf1CqZC+LuP9>a>y4kKX(x}ZX`rJ%N<@g1U!?&<D
z5pgX_p7A7mdwfL8jKS9Y*q87dA4dNB)e=RX`gTl;agC~Fn!)q<bflvCqtSjy^q^-h
zJ}KRAP%Jr0LQY8?)W2}*Nh?(qkXk+6Gnzd%a04q*zWNn_@3ybM`n~2m`lU*k>^)AD
zLO|a|ww?p1kmxLdhT4ABFhuI&?A{@Z5hhlpbnt6+{{2jMEpFyvlN=Mv9Fq?@I=pH`
zEqy}wY(5xDTeqkEGhphkLH@#T_!AGqO`lgPmYG-RI&N@U4gi%FL@6gS^io>q%qgjO
z08v&gcr#sEKIm}NSKNfV_R&>>6?`6~8@$iq6fBmAW^O5D{vKp4qghP)uk~WzEE|}o
z<AL8AF6)vgG?30}BMe(45RsKJL9aXZ*hrt(`#YLnk15rbj&77J_RX8+TA)K%B{e@d
z5;eU<8`<9qB?=d^PuIjjR2Wal0`DDaRxId$`N3fsO0)ouiHA^Pwqr5Ky^d<N^cYf^
za3T?ue^wPS9xX9r{y_9n)5kpkKI$9W)T7R8-6pA8psu>jyFM=S*7d_jl2!G?)sZ5F
zVQ3&iOoQl90b%y!HB0#@*k=F9eP+z4;GcP~Sx0hjUG75H;{R4>qo(lMclQr&4{Y{P
z+yG#Uz!{+ZKCjHq&@+p7^Rs5Xwx|Oh$}$aS+be$+>`0r{k(%(tbpVo2Vw9lWhD7QZ
z`#yy)AkW28Xohf<o#?n_(|SJxvA3fG%f#R<1tAYo_S?%e_)r>7fQ<mg-f)2{-at>+
zlO)^5Yl<T%?jBt;uXtkr#IibQoTOTtoMSs-q?Lcy`FE6n9*d{vZa~aYyvf8Tu{oUA
z`Q%UCq|@$Am}p|JDYWo(I5NU<Os!*lMaPG(StPb$hz%&s*gf`zpr`-|hhgLS1E7@M
z2kwK5)uwMY_^NlV|H@?mNhhLr2rM$k*YS`>z<kx{eo`?JWn_~9f{>=vMJChsEtkDN
zRmf(p|7$Z`M;;+?DugHhrW@_K2gIgoh}_e&N<jwV>;;=l;(6yTjbDe5QAT~u^A1nb
z5R6fo0iz2{%%InEmy8Sl-8%jqDi@b{Kcj^sheWwf@mrBVJ>LnfLgH99EBIs%ug<Md
zfzaoDpJKzv+xkka@3f`psP~@loZhKVim)glUDt<UG-VO=Ws-T)GQtQ*<VH;&O_NpK
zkCKo43-$Ff#)%Xg7#!I5gBP-_5o-#i5(cQN5^K?8f;UpNW#3Qa@|#G3k1-6u*=4sf
z7`~|+%LKxnNk#L`!xO?;Z}~HpKJdh~lGvn9@d?@;@TpqIH~V_#d|ceC>Vu>}Df%E{
zQkP)qIAK_EJ1B^}h>_s!<jK*-Uz1SzoMzrqF~mhO8Vo_rv%pEo4NG7z&jBBgaM3;H
znmfT);axs6#63II7MJi<l7f<nBo%`MlpU{f;EXe-T8IHm4&4a8l!|M`#t4>==X1@I
z4Yh8m$<q`mq-K%7HABezKcxBWX~M!ZJaRjJ@Noy1YNt#Smaxc)0{N^6b+{DT7B6Wt
zM_})=li6!T>)qzF==+IqcUlmFTaNkiMUS&Q1eDSsg*chT_D7M5EiF5JL46&LQ~o3s
zoIT3ZGzWe4Q{S&a<dd16bTOcZ+0>?GgY#1bB}#UCTWAnrBh^age$6yCkytWU?7PfQ
z@%}CiEetR5r7l`_Kbtbnx#=_V8q8yUF{Es__^^I_xqg1AH=cML4ZDu7=!aKE3dJ-!
z=Y`oXk*@qT4{zw0z{!cx>o?&IyCw0m`{PiTnDNhi78;%gNaFz19Fb9aC<frM%m<&q
zvE@goj~o=`Y?s@t5fO7`vCnd+$cj~YP$;Cxj;aXL<Mk2$w$P0-`9^U_BO0De!9DC8
zKiY%j(K3G?s`a0C&2NFPp2T;4i>S`x6DZ0y#!?#TR<VKOQK}OlhnH^u4uRNvB!fmg
z7@@r9*Z1o2Q6e$)c~Om5{Q`;Tyx`O!hJcPM@O={Z3Ezke2En4Ytq@u8(k{?q_T`bj
z*KvQ@CTbF$g=$(|uXc<ddK$R{!Y=9ge%XE;Mc$2<Y%6NelkHx2pBi9vypTj3Sy_bB
zl$iT`!yt1UVClBtp4xgIBxn!U)|4vZKsaT2!M1LV`?^<4POkr;9%`8F$B5Z}J<p(`
z5Xg%1Z4t*#$)@>!`69SeT|m#}%p~_FU<-4HDRug_LuT6a!w_x-s<_Yl@d%>kA2AZq
z>^u3it&pLKeGb&OC#S+oI$Uo}4Wi7h@7tTq-G$tB{I_<ON_05q2Vd7S>_Jb8VN5Ll
zeRXJiiFK)No3?Bp*X{S$v$Olvuji3#q7K=v_vPlFMBv^;XINUnT%fj<+a)&)Bndl?
z<0j?l(CvC420i$}a0&qIYI|4}C?HPS|34dzKO33AOpYjeK;CJF#+92e6<*h!(CeTB
zyZAmPx&Y(;{0&2S2U4BaSLbCN#&465xRo@a&ytj-k<R6bBr&2k1fv}l5pA8I;z|5h
zi8S+}-AZ8c$p!5z?8rqI9-ZJ-g9uN{AI18w=@L~bS##radoKY64VdjSgF<C%@X-sf
z)yC??p?zSGqon)G`1rwjGo1qG?KaRu+z1W)tD)j^ztcwl+bW(+!uKw@fMJ@U<d-9)
zk6Bb#=MPBcN?lbCzr07{qvr!T{k#u#Ej_Vs!+bJ8xeLVt^yUB7^&YC4k?94h2FR>k
z@NhX&JElH2Nc3b(pJ7xK4=3g4O2N(a+U%-b-)Th*VxHvSuN$H9<3xlemI&GVd%=-u
zld0^*#k^3UM?0LynbW#@?0hQg1q?cRKg&RwHm?Q1X#qhz&$io*;HB#njpFY^IlA$x
zv&s4rl!6C*)XVO>7B7H_1G(=L#j@`TqZSlK<ZhoUZ{c|?s_u?9{&rvSE3FOQS_3jF
z?5X7UIG>l1amzn`#o!RWa|i9uS|OGhNzS>@1D_}3=W$<6a-Tyh=x|>%5yGm1h?ssr
zixwDy|GZ0+{}S_N4oGBAUof0urHbVs*S3;b{pLEQ(QJdX*}5v_<Z(H1Oee#=3He~z
z9$CfEkfa5~P03MS8E#-5wwmaDGfBtky&EQmM963}GF&j|i(YAK{fjh9M3<fBBm=nS
z=i&EeK2?wL)|V78yB)%jck*?DyF_z`<7^QMvJPjt1;$uDM>zYf`s<Mpw*5j;L@Vk#
z%Ji*NeTtP0waa1v<U&kOt8%`m%fycObHe-vh1oe~U<$xALxZ=UkCRg*e@fkCz!So`
zVfJn{4X<aI2*47ip-fPna}f}nXJ=o^o6h9iM$bkALrD0PmI_m<f<jdxxhYzbCgOfK
zfvz=1!A(Eqgw&uKL*^KQzzDq9^P`1ZDa`+Y5P6=cyht7W{4&a<-$o4MLOQpjH8WGL
zU!=#S#U)uiL{{=e{+0m+YKoHG(>W`nHZm*oH-^UvGgqR&@qB0cXro?<K5zl_eI!@{
zp5={^@;d`I1#0uRlYb^nDP+?j6;n3Zp8W;c?HI_Bf3ag5T1bIzk=^}4iV`I?O8H??
z9`+y7p{1a7Mw$o3kd`Q|hDitzL%}Zh_n%{py}{$xIo~ZZ@+JQIs@e2)7b$(2{ohF$
z8B+Bq-lWp{I}!fWMCmZHa)?`Iv(TAHz=8C!khrfeB<O!7KSQVQv0{oKcTNa@W9MB$
zcePcgEXPP-kse;|W4tsM>Q;++Q^^sw+dlgg4EfWFrO&^KUFk+c1Sfi%h0B72==&FG
z#q0djf`bfS9|XL`gGNjm7@i?FnQxlwE>Wk>Th5%@q_w?-?Rk8H7Je9>Dn6Zh3xfMQ
z9C8=7j<sk1muxt)CK2nbl^ombllG%pS=O%@ci3~-)b7i@;Iu8ui}^0y%4>TXvL{Z8
zMVB7XqQ_Lat{pE%1SE{@sj!Z2u*Ek36g3L#BOk49K?Is}?JG0l@_-K{`CA|%X|BvI
zFSvZp7B4vV;nW@((66S7m%y<DXKc&?Yde#L@izv|<fRIF^iiu10)ky%|A5VMygC#o
z!v;(=)s@`8)a^2sES{SiMP~b}qswg?ofg1FeN5_{y`9t~{-L9Ld=$Ph(a<Uj6LTra
z$2CuJOkK0(Z;yz@Sual#`wn>_G$8`00Q>K5q4+oHkAT&Nw#k7Z`k$RySQN*_G@izA
zO=Yl$d$T%(M3!3&RNYl_a}{`Q-%`ksRtv~Fn+C0IKdx|I)=Qc8URb3p-q6m&SBjAF
zOMzmUaU)N(qFsgeG>l#q1QJog^KMv)0rM7`|I44WCBZSe)Ptg9R|zHo82b$oRO9t&
z83NuE-1>RqG)aj_p{E@Q>jCe*xEGG{dkaDBF9p#5_L8$UDnueh{kn5>KOCK_K?Nqu
zBwAi0p9-F-Y6P~_p07p(5H)I$eBT~U8Dsvvd;)2x3bi0*FtuB~h~b3YqPd#TLE%yq
z<F{jqoKW9Nc1*TdxW5O4pr)PSWW4|S1B2J`#7~Z8$!2DdckeSk-U*5!bHY(Xfro?Z
zZ$q-fz^N}`K{N2w1kaGCo$V{{h3K_Y2_*0x|F=}-Uhxo53*Dksf(&`-!Q88)s4q|#
z3n>cRV>%%OeZecUt|;Z%aadwxk1r$?zu2@?%E5R5maIr`IsD5YBcr3Y=;-J)v8>Cj
zWbqd3nJ0^nF2HyKe?8G2l4w-xGFIhejO(iEYEuEwD{(^}r!NnNZw?O*7nuuQa0YQX
z+p(#ss=HQgUp##}s-BQ64a@6kq5!73J))2g*TdNy?}g<vWDvTLVNHjPM~osO6=mh5
zS1&-ZH8zr{r3H~{DD)XUw_vWPaX**EA73nZ=mz2O*VrLp5!tY&wz>1qJQBj%Q_40#
z<|n0YFnO!2xZtFZ1e@yEU%acta6{35p{B=hsEV#y26zq&fjO}mTvAk2Wq*PZczVmI
z(f3<lv%a1|iS_&y0Hc4;>o};Nh<F`#9z#MPEzVg6?|Tp2R5A?<y^i4!cl2m+LBK$=
zu1tvYa@qs@=5X%s@2Lr5R`^5))6m2;;Y^a)28EN~3?~R@`O2&OR#y$JTb4}=DMl8T
zeI*o_>d1jc#q&~CS-H?VAB|DC@Ti1*ixhnBWLo9L9R#$co3mcUhqrQ!79TGGT3$ii
z5A!31l1b(4jGUZ%l}MOu;VA<cXE!@b-oI_TmcvrOilK@m_qs>BUy8^Z7vyjI^-eEu
zsL5pdyI0tzHk$3NOns_X|JhG?Hj#|Y%VwcNhJBaf@B<dBP47c2DYZmlB&lSHdivy+
z1AS{;NePSg=(6(O-;2sngBLXZ%b2+B5bKNiW!W`Ne5mNGt<C<`a$9jDuQdWfNQ|wY
zyA-k9bGrL5mXus-%IZx;9Ss~vSQMoRGYASLIN3f=^W`iZv-v0|u)v{Jdq6UP4H-n_
z;-#n2`#qU`I2ITuiK@cKyQIVYYYsnqw=O95Ce7*(sR{Q)H&-$la_dz`2tDr<%Foi@
zzflQt+_o??omY@cIK(avL&*nC`@7Cu(6@W*TMy+3DcrwGijYul5;8NqOm4Yo0jiCQ
z+KzJ@YVo={%FZ_jqY1-y#umpL&q;V)c80F$dudO_V8=fKlCS>T0DND8cuyO{M?(Im
z&4EO~)i7++eEjp*uVdliA=zle=v2K%HAR}EV(1IDzU?%Vc)~9ORGQPL10Z+apz&8u
z_3ta`qeqrEp^c;|4p+n0MN{iK)>R(144HUHSFicGVdzw88A_F7(ZM#0=5b{eT}Ai3
zg;GT*UP7e61M!`OIf;{pay(q_@9d~<+KvU_X>t8`S}|#WeHPG=);K_~M)Ue*;I=mu
zVd(9azZf{7z8iyhf<}8U#Sk-KZcZHtHr&Hz<K1AKKEB`5ug(0H!}477%tDwl6hk8N
zfLdl?5qfjr)I~=POYRaOMmFp!F3l>Oa%TuQe6a$bFyH3tnVDk-pYnA*QGb8C$cz19
z3$$+`=_>B$KJ{iOa}ega1?}VkLG};A7Sxgy1gnkaedsSM2_dE~D~T}N@#+^YIja`T
zUM=J<qPmLQ<h9_ah+7t?Lf~PnL=DL|w!trWAdcj2UB}ze0%smJKSKWZ&`+7=$a?Tl
z2Z>$MaZmZkTN4%#qP5@GKt$Og7Ckd~rq<5>4T%b_*9s2~NF244D*x^mwdU>crJw8!
z%TF-i5x>eLGMu_mkRl?}LuMW2j@yv9Ti8L!X|vZNaus9eTlmj1yI|V#JtUT&8@@Rs
z?bc74*Zj-bIs}Sx6Qz7nC6q(>Z;$(+1zh~UmVu#@g9Sy7RHLaMl}tQix5TxIEb%P+
zGb!JY238-|z;AIsVhR9_?bQU{x9tBi1x#N~>(@zp@DlA4Nd51NMJfk~9rtmF%uh){
zO{{*OL;4LgC<grC?4~6TBA0cfCvu9%F5Z@H4s>jIfCt&P4XDJf2K!d=SZV`klFj_5
zZD0PFwe>{skFn88-)Tp5oc}0dx1LUC@m4m_cw3%!^{_T>#b57cW^?_1TIF~GCw$nS
zi|7kZMsbf$(RjlK2^@KUVQO;+_RB!)W6qFZ_Zc7f!(`RDS_WO)-BLtL;zB~+t~AGq
z+Q!JgvhphE-eUc5S}_MkjF#Lv#~H?;H_hmtToK@sac&mZ<}I;M4^dA18A4;I2e+~s
zWW(mdf{|dF`VdFlOmqb}K@YYOA3pEKju8KMJk)mPISP^jxX$PJ^*me0{TqiVZQuqs
zEx9w@PBi}ze`V)<^a&VnQP;mW@IM#VwAN`hBqu0TQ{{A7b!9fM$(=MzY}6@obX<*H
zxQwJDSN@*t9zWgAYjYLW9YKC^_X0FL0{8>b+f1q$Zv-)a&*BNZrPGqAdq<S-xmw>&
zs2m}n4!~%AaGOkas<`a)7^6SGZ2=wv4!lL711x6(;2@w3dGFlTqRnd7sJmfLK_X)H
z;>e2YPAG}QFYzZN7T{ri6fU3KGtls;;L<7?(^mEF6Im-X)3KX7UNVG=3C-cY`%1Ub
z0hAh+MCA9C?WHIubf7@fhW5dOJFb71NDr68fq40HB(WQG)9Zt-!=!b)s9g4=%UsO^
z%yGMujBy(NW<4+9y(c-622(0#T1@BK%Rb}2vATO1Xgz?W1Ab7bs}1<4Y#bBAefOH!
z65aQlq@+gZq<u{N4CSxrbS7qI*Jbvl<*0P7f&s!YnR_nG>S0>t!@)n!Nf;@`MMbOz
z$DNIX$eDw{K04y`wu05oZ$>VEAO8*JM6Wxl>lE^xJ{N0<&vL24PW++H^P9|IY7TF%
z+4tp5gsAgw!8`h~(O&ePee3!2cxYN(-l#s5jrYDhwCeX5H`Ca@g%W%)^wrur;m2!a
zT7qd!b}P>vQBG$`Q$7a-Fhz0p?}P-ii_ZONb#<(ijBD}%fg{iJJJHr@MP<~nYhpRy
zXJbk+Z5LInb@zR>nCZp#$LvPPTe_K#Y2&JvtIxgaG_LjcW$5#!&Y#2-{f20dv*2dH
zOFestaddfUbyW@D*Zw=-eAlJKJsl?oCeA)*%j13`kpAFMFw3^y{hk;49nWd*5j<-3
zSl%Qhi)eZ0arqHrz3sI9tZF2kI;L@XS7N*M`1+O};g&j@1ZVYC$E_->>os}%lBkbh
z<+<4X<v^gYif$qzBBJsz+xF7dK7fKod#aA+jbr%hH9=v1QV+@|cs-BUSDQ*I()fLC
z(Wkk7iP_@LYWqZjnb-Gq_Veq*@ZEn^RX2_6cuw(;{q5DWuAA3dSEc1q+nJ>%WBWed
z_v^;L-}UOMI$XF|jGlKTNE?c(+BWEYC^6@ImNwj0dYBw^O;}+#zHlXVNKwoT`?kAN
zwjX!FF$@{CCuL|QzHodk<2_N<&EHuV#{`oO?YJ%DxtY(dZ1zVnKbw8@;e6qa-?DJJ
zgI%*do!-8pi6)tS;6AcY>XWwx`}g_Y?jD^NjRDQ$o$Xb{7VfgLQ#uvp@F~zRIw=o_
zg=VK{|M{h1DthNnic;u0`>pD|99K(-8lto8?F-4+088h$K?YcL;=T#htRZAf6kV8u
zQ})cvFkNuZ9$G5MnQx!9#jRvqT~)81R`@!~gs0E$n$v>_s~D)5yM2(997Ur_n%cWJ
z@3PI8Vd3TdUk5Y%G65sE$UGPR+hRlH4O)2Xlgi2*>0X45dOI{}_Ss}iL*@$J_sv@E
z*6TbWBKlq&NT(*d*6RS?s`^F(|0cQEa`=6&O&2$#hIxZV&q)(zfQ|Y3`1R-Bty^Is
zgRa87n50>%P=!l712Lk>qwIG}x|htJgW)d@9?wo2_s8pRvO^IFhgI5~!=~!TT@*xH
zakJEy4#M{3OW0myO-9>n`f}2om|<rM6a17#!o5>?lMh<Ajc7JQdDAb<seuWLde7-c
zO^$unBWKM|%7y-?X{+|j>j_NMBgFk{`0ilG&#9>G0KD#6(T^q2<M|f0K0NTq;hDb)
ztqyl9{%-~C>?umBi8dS!eAj$;cTc#Q4Y<bM5_iBdzB2+i|IrC%ZozHeE3+hwjF#)N
znw80!n#g3C$G-|=%b+#+%sA_v=HEQTd4bGvE2!7;BCHl38i4jYY%3b?Bjz%dNviNU
zG%uy0`^z|gEa5fB023LNXjeGENm>AoHyE~RfmNQ=u@xQZ)T$~3+?%BsIKOw8JrL^%
z++JT%Bh2A4SXA`=ShdypIKPJV`@w!p(&~6yI0}riIpqcC>i)Ryv^+}&E?CVpuzQ^z
z+lRW?ek{&$ckwV8Zm@W&2^Ug4>SU<?wM6^7{;~JeVsyOrTts{f%_5unY-rHiSsCH{
ztI8~(>B_%Yhmr*452Y0v0%~&@g0Kx#o{$s<+{TL*N9tm_G@9oxe%@=68br!-*b2Df
znHq6LVI!x1s}{0y5;%Z4brlV-j}w0d7D2&fir4%6Qlt~A|LUfQRN&T2+u5-`N&KCN
zr`ZVt*)LfnBxeo{ae=^jMR4(Qa=Ua#_wCS}tc+Iitvqi9#OQT61ON#u!f<BJMrkGc
z!lI;rPt$^mD#=!E+QenvE-EgezgUYNVp2HK)sKnY*Y%6jmw;QZVA`jR!HE#}4TNy0
zW-n|Mi)N*sV;x8y@r(40z}wK-P{XBxt<W9B!D3yHQCk=sokn67o`>h~eld!b3zxgN
zWF1kzT!nMyj7n4-0_v+F(ccri6s=-UB+xX1s0tzF*V8WQkW*P>08*%?s)URF_rf~(
zF%nE@eH4aHF_H48Tmjhf`QHZ3@`mg=^_}(FLcU7~;0$>+5yEa-2!@f4vBg|jkL#Jp
z4MxcAY@@DVD&Avhz-EpQ4efKZ6{Ut{EIjI9*E~n8bdK6CXD-vnro!VPn$$U%Zgi7$
z)*fc;T1Q)l6nf=v{C>&5>FJIzT}j!)(XD8r@hSu&ach|(;o)DB&<&1%-N~h2WBy^s
zc?GRpGW2U!GT`79R+ZdK^LSpP<wxpCgh$BK5NtHDLHMWQQBzS#-Y|M!O7krYAR;$B
z{KxU&9cD1oNM*OxDO@ypLxtWwH#D74{jDv)`~t@)Z*kE<=d~Rb5-TGe-|)xqCl`r&
zJafUpx|FwewAam8y~9V3>>=NDCWnw<+%w^B*x!*Aj+c{ta{TJjQZg|@b&zCC8EqhD
zjplui7t1Qj@*fqgLki}hY9cxYVMzO6SmLtDYu686==B8%ivYX1cJ70kmlwN2Fl}!A
zrNNl1ro8EMQc#BYaz2H^_F(=TW)h*AErmd(mW02FOw!T}1<V+-Ff6Z^MBQWvkIqaq
zmY@yy;Bg+Q#Fa9%;Q4xUNJ2lf#nn>P^!Gx?kQA;Bd>?jsMSDz;;;FB{>Iw=g3LT!G
zwEu`(R|pi?@Hp+}5*C!>5rcARh<+n-Mf)vYHj#;W8_b0<W&y;AR^Wial6mUug8WyA
z7TdGX`9eBxioVGh(*P<u<W`nfWe;WPI|hkSd}_vUb5vNt*r*uurG>o8Pyt0G7&vPR
zXJeo1;I31Owx}OiiX{JJ7+go48GKgNtipoRTe$XdW$7D%4blIrZ6Ov{DWxoK-8&JX
zyc#v$a6p863!srEj$Obz8QpABX<FVeIlFvQcph(Di}D+gm5%^%dmlW;O(n@wx$Tr@
zmyESAs3;iJc{5w9A#n@ut?zFRrliPO$VA3$>w-53Fj+`jv9B}pV8{(l|Am)s4%1Oi
z3lB674jBB_cq0J8kcYacys0d}%^9F58X-XX634|oGu|vq8HD-fVs%hz7xGi-7$7#I
zqacyM9|I?<n%i`e)a;g9=cI4h8|B-$aORY__z0W}@{uikz|t1+D;EaV?XqOK%Hgs?
zi|kMapz?Q0G?Wf_0Y6$=28>#7;kH3rxd+b$;W4|AM7XqC$WV)2l~MwaY~TcP@iD<h
z8vC9-Am2?4+O{mLmCZ>l5aJfxiH?|wJOcjznVr_Nf__H)xPGgsu@!t(ja&{nvnQ44
z7p?i~B6X#ZUe$L%67s-n^x#I!ecc>*qePy>g$)6@MH-uOP;f&s@dy;S$|U8L`5_?n
z{NJ#~`y${<x_ogK9TR6VYfOGwX*^ia&()iPC!vCtqI_<nbvFVSh^CTJuP*;g5G3o%
zGr!vK`YAZ6R8l47zz&@~oxZ>gkpcKe2L2*62ka`*LHA83on<oH-7HHGm!KYhgPvW*
z`iiejnEoma4dx=Jp+T+Ql@o)_WLi~JTvnPbah%;8nje<s41+nqog{XeN@Ua=a&*mD
zK89cfK4=5o?%KH?ezN<{dcRuhZY(a|Kiql;`Wb+{OsI2C8PtZ;vItvW^zCp_Q;n%t
z`t!`Pd(Tw55c!`*R&5PidunPB_bNsmAGyBiM)R{H&lJDd_+eI*Byzw>?>6qbT=)`J
zAj6N?I|^Z!FUo&J(OCpf^Bd#>hRKT-^YV#*#b6x2R7iN|$}SO~rvRIZ)gbMWtD}nz
zea<>Z!?oaxz^<oOWQGRE{a3Bw(`hJJP*&w4eE<;^94lJ;ALl7z*M0X~C)H;|WMC`j
zjV!Yie07%GoE@w7`C;g)b>ee!ZV4U&3VQv$ZK(RXfzSb!un<kK#la$TCM+NYq#F!u
zS)V+F{|{v79eQC|iK#v4dFROl^HS^-Q1LdAOq2vE2pp@;0PA}?cu;be0*+{v2D%A+
z_}20>qPe(?xh}l8#a%Opfg#6lGvGWanxCH7uMMmNs@b>3xU%sXw5xXwTr~n%4rB@L
z<ZS~?v+AAH>&U2FWJ_dEiUP~da1ZQ!TJh;=Qtog|g4SqIF&&O{4vyRKEt<qD>;H6p
z$37PpZ~aUwt);A8yOs0Z?9zI*JBGnY!zUwgNi;;bTd$ZuOit2_8H-OaUJ;+751-wL
ztN1Rg>it>XM3|sx{4X^2H5S%1{IQpI=fRcD`(uhw)zFYvG=LU}9f=j?IdNR}aq-J7
z@`OHdYQEaVOf>yjRQQUfpy&p6hGnmBIR||2(J4a_hq?+CFBzFKVks-(Fq#Z@jpQlp
z%~GEm#M4{W(c65<QCv)V87kz~eZ}YF<dI*Vj)!;ZhUBpLq6V&>-U=$(^wBoeQGI)Q
zlvK*_b9CiZ2~;$GLkO|91O@B+2{KUkgYd+Hmnvy-@hgmen=i?549&~b?mrh%v2dtv
z!MjAXdNP;gqU^;5om$|f!kD^n8>ah*rD;S!Kp`h_PHh5RXxjF{;DApcFiQZWlkJ^@
zOIm04pILKtwD+PMYIdRoc6K5Rv41jE=~+KV8BrAe90yTk(N1@DV_g$4*$XqdkX&YR
zT|U14acC@6ESniboBPT8Tf-m^2Y1cG*t(#j>8s`dQ+2GG&zI9-n0x8%9imXDOB@XP
zVbl7T(PTFM>pFY2q9J*kKJmTfakR2p;jbrz(m7Ol1!a0)ALoSh>+@sachv^>0qgML
z$POJ8Yw`i4>gE=AWBv4x4s*jSW7Kg}(=Y@wojv{EtHM7)<$CnmK8{?s5GBN;a$Jv_
zzshynI?vtWIq)`_yp<woGFb!-NCk_U^8WB_QM?Xww;TD&mPSd*ow3wHx!|JHN7K=>
zxaS1*SJ;ZkJo1l9M<z53oUl>&BC$N}jcJSqi>@ZM)3MIBiKfiC^b5(KH9DTh^;~5>
zvcAuNQ;SB=2eZkb!pt!nYA)Y5%GI|GpF>IHb7{Bluj-g96KoJ-SPz-is~bC*FjYZE
z6BOTELED=-c@CW3<$hEmT;_IzsNHy`3{$TTDl7bvDt|Dq-B;5g@`UU+uzNbc-v|+n
z6%NW%0UX_Xap<98mfF}+H%ns=nIc|HoJu{fmS<V2#N4-T677J7oMtIXGG=FNpZc<b
zYX3)`!vcXj>W_3pT(KM{EqTU*9Axm+q@@@Yj|ezzRF{J5mGSmaiMYGROk6HIu6inI
z$(MBy08P5tOfcIc?bq9K9<ehEpqZ8|t+GwLI};6;ZWbD6hk18k=$7`Dt$)bAAf=(C
z86zjcanUG8x`@O&`Yz*2$)u|OL*b=?d6GdG10e*n1{aEnPk=%J?CF@Uu@aX{zohYJ
zmnO9R?x`)b{~}{h{I*Ao<IJojj73*nkaD-?U2`FQgS8$GlG5-(A41KuGt|Z11Zb7Z
zb`akIksG5R=5ty6^Dg*nc=7n502VZT+My2m=7uDt=S(xg{jdYdaA+8Rwo4@=9Hfp5
zV!^jgIdliP+<GZg8mbP8U~igWHrYri)`^c<yOP2o5utZcZ%>+v7LMI#G1;Wv!@ZRJ
zF|OUdn8+#`n!1mdsO97QfP3Qs@tJak*um{l;6{Pc<<0xch@Aukras9EI262Gv6b0F
z8N@jBfXu(w!N&+c8A=06Gl-py0S-ZB-}n8T{dRV_yVnh^q8iWiiFdFE;?@v~C*rh|
zUXBT)4KqstP-W+6XdlOZd>|spy$Bh6B*U4?X2|O*LTQ0zg!=qh3dHM)g}dMmt3f!Y
z@F&LsbBavL?}C3x5glDuxfT31D||$4e@Nv6y=gx#so4m64SGsrd=H{4sjOb}){pwP
z;mZZueP%9lkS4#f2!;;}w1+VmHEPZDc9!!;$qsnE00_$(Otgx{{Ajd&2K%GR>*VdZ
zf;unu>$v>3Haz4+J)d@)BKrqh)Wt&UPZES1Ak*G8ny_Q%v&G7|Nlj<TKy=dhWh8|Z
z6Xp*s@x*|E@6TQxWZfh!Uek(>rd_}MI7s9!ykjlaUs9NIIN=bInfQZ^M82LGO8&&Z
zW4l&)hTfAW<0cY0Qb*X!Ao>>_MaMCi#SG)+fBX7aCvYvjgxVwjOp>K(Nk6EP`Zd0p
zA_Fo+O5IEt9Lpm|D`}=p96ulXRr*uW_^E|uRP>`?ti9g&JsxziS_VpPj09Xd2C|gT
zX&sbCe&g(|AB~JLhLMSk8e_Q!6h5;4+5d1omHNugRLJ{7bmG^j_i6_tld};MrcgXp
z6)6(7*Edo5;l1iq9GJWD310=O429Wc^xqJ}s?@aLSL|>RvF|ufA#WKcI2%!=j$1>v
zYy`E(deK~|{~S-KT5oy@tJ3wmtJZm)@JO~Vtuq5pN9fd*ykLN912b!CHljak=NGl5
z+HC!{yk4+>ZtWc&FJ@;{3I?IxuiJQA@2;Nq?;hT{57~8FP!DD*8u9vJ0+aM+58%UH
zgL;mA!O7LBk+k?Utya`&$rz6+BH=9REuW75LG*3Znmdg5!9e%H^{Po4y|#fVgt1W=
zkz=Qv+%cc`iy4SDLsjMcfa6EUL}7)+(n%=9LYPeOF^|BS@c6M5!bD?1m&PS{BqyyJ
zS%8s&IDTe5JSz(w#;qbsMtnm(Zejr9sK!Rf<?In9!DwJ%T6|RHK*mV4-C}QJxos{v
zEw=D>j-3MmhdsoPOhzXxP5e=A8m$tEO=ssqK%Hp1wOxS8k@lOh#RvY4TLtA+w<b50
z+lM1&IzXKuV_grBo0vo5RB$28EmyUchbhqvx(}{(4_^0cYr{_M>vNZ|wB4*j3u>Fk
zqHf=dufenW<9;)X31}c`rcEux<kyVNRI-P_L&?O7?db?kV47-CA@b>ox$Py&qIdv+
zbET#)4G>D#Z}!)&6%=?g!jwXoQFMmNIG;U~^Me-=-#NeE9W>Kd4R7t4nE3*XLBFRi
zu>#@uGCuQ((b-w9>tVuw-ng6wC4V``p|Hva_7wCB<-IPAA*TAoVkM5hxS(v4Lx}1p
zv@Bgst5WFyEzw5=tUKd?KkZgo8LxdlSz}398P!X0QPUDeCUC`V@78B6l}?|;VCQ5L
zZ?{{<GyPF?ETZ;5$cPP|8LhKOn!`e|pbXMO+_5`-kbWI&tY2g;HVt3kSM)yJ|D@8Z
zgfwwWzbPTk_FrQ%_87+=Wn&e`f=9peLf?R99ttXrorNeJVx;%3liN6%0jr^zF&4Za
z?Wb|LUSv)x@`L+*g~JDb6*eg*+k2ox{dm*rXfHSpjX>1EQrNr4U^vm*{B!5=Y?sIv
zClb01qRa6eROIXetI<mX0z0%83<m=~Ad~aWNpm9Z1*B%bFK~HWGBT-iwW!91<7dgg
z{Ozz!t44P}2oJj{9v4JKpujx--@RZm>h<hP@x57Y3)25R4d#FS1O-&n!8^}`NEeFg
zMN9D*?^lwNn;hE5jI;gmT)+Z)0jnv2riM@xM_aSPyq40i(zPWpbZ8nL_;df@6^`R$
z<lCkFbUoK+1=XO-rih=aVv+_#x@|e7*U(TlOyk;Sr;JjsRM%o~Y}-GjyBz`InWy>>
zM9ZyO42JKCNb9SJa2BIjLW)R<zzVmY(WUr$v9FKc;JT`YKDMI?hvG`1)ppftw}T;I
z6PYdoyTSFr$dMMb@fikC5E+c?odR*(wj(<d4C4!4fgn*E!zL4jmreW!I^U3(IF>Oi
zD>CGFnnd3qzC;#~pd#cYm|8bb!}s}9>iTUg0+{0?!jhN3Ykn%@tF5hTO8Flkj&k~n
zm=Mo)guaUN$0V1A4Upn7n}}k;(vm}+^N#g(Q}$s!sN#NLxm@-vC%{d13I$tmVn~41
zO!5>?_IF^5PA0lnaRGak&HIfPBajm3k(VT^b;sHmokci<38DG(L+d)#RnCAVs8CJo
z4|TU@7b1ws;22epADdSNCfbm_|8&%g4N;;PZT11?ipvhCw)^J@UPhAfVFvqT5=4Sn
z6N&Q>Q$;}RClPh??{8PG250Iw#h8cQD_AhJ@+<`GdYGk1X2v5gF7b;nMoOfx8rva~
z(<o@SHca^ZYnz-l4;=>&m88M4yOq|uU3k3MDz>87W#|Th|5&9Q4;eAYdW4?d){=rp
zg(i+RV#7}l+;91%-g5`MsJQC63}G>Vm1mdCIM|IA9PiKNYI?=l1^;2j+)D36M_CCB
zuPN)vrv>s@GP@}DC*jlvPpSrVVdBbYg~*5UCx<<yB*}WqZ_dE(jtXVLVg$Xk{a|G(
zkqM5j!a5xt9Z&g~?6SmAKHpYp2vHVZEY+nETOBo1e3v0dRWO8UvmF|umUxdA12j+s
z6wjO0@shE=(KJ+?Egl!bDohfFX1;ollnHEZ=`Q#A4il@H?e5M_WtTq5If6V0QYspF
z@Jlh)jtJ&-Jv$?U3W}(*SWB!^!XKA7$B*Ao6kpg9CoJqZ)vE|T#Uf-gwBT!^FwW&L
z-U>CuHGARTE*)P3*H<U8w@f#YUkai+iswv0Ph-UtIT5Kx&-x5M=ZD84jG}xHy~z7`
z#vN+>1r_ZGSa^+LZC>*cyVgF%@9P3->OvZ|g~79>5K_LZv&R?89AO#-j}*j$)DDr?
zoJor4<ev^O%SC{;G$(`sj*C63n^GQ|{r0&sjh6{aCGxJ@G_=b@QfpcgE@_h(yyAd^
zK6~0?uRq*Z;dcH&E~Gigsd$DdTW`o`E41i(wB7(s>($=v-j7l!)L-*wsaImp10rZ4
zr4|lWeCYd=^pz?$KMJ}BqE!$v%TA$noq3J`;H6fl;k9EJy-J)KH1M1bWm;*kr#d5M
z%?vCttuxcq-#`O@3mz^u$FPLqbu<e0G*(;W+gl(yNM$Y3TzEV3rsyqdLV541V^R}Z
zmT4Rg*uSSdXoSt!hk{{|V6x8AKTnyID(*Y?zl@0GaMnm{?k4uHqU1GwuL?TrjLyW(
z-cTacmh$PmWdAfyh}K{>emlZQWPzwo4JC-Dag*N<BMJFuf*0;K{$$Rc<~dWJkxyHC
z;@AU8l@z(W)zb;L60pOSV3a>OCxq+1IlEk~`$+f{w-!ob|9D0`E2zJL#R5jFBq2xQ
zKafEfi}#QFxAF<Zf5R%B7F2hD2Wk0-4&xbS&YhZC^!00wHFkA8`Qh$kr?#bW6H)5a
zoG@yA>t0`DW=uu_$jg*?|JIX)_poDrou7o+Wp0ymBVvtV8<DRdGk(J`p-Aex=Qb9C
z+oY_8m<@0R{aff%Gh1nw1<HOmK}Nf7=~wG;)u<pm)dJ?b-K38<;YsU8s~febp@XtM
z_R$@1^W6l?X*^646pe5pR@+O#9=hrpsh}B<p$@nWM^g>HzIko`s=3Ag)0xG8+5B_m
zMhv<MwlpbYY1oHI0)oWgyX@=Z<gu-sR~t~MbTc5NxID2M@>V8g?n_1_%;Kg4;;;!S
zKbC(uUcIoidX6SCe_Z=>IPS;0?}w26sE`JL>)S#K_+rhjMCIG&3=_iTJhM6u^D9~_
z9ICsLaAgeIs+oGDC`?H%6Tn(&6lG2laO1l#{3Jf-;SA!j<aVf=N6kNMd)+@Evl2Iq
zVg`ZBw2YIQ%B}IOSc92&4I{0M{Dr6*?Bzn%<~v*qsz$H&uh`OeZ=ya2jD1+}pubu`
z=auas$=7(52E&+WMV~IN?oTE~dkwCC7==4ZBud1rSXURS#z!NuCgv9j<~5lVF_gbg
z=I}wP_$!O_^Ft@|;S{75rVLIgi%&6RSAfW10<~-In$}+)r*lv?*N_>7dTb1sO=xr@
z!uM}dH+qKH&+PG%e>^TwbFZMZET$|@{s6PPR}N0mvJ6?*cK&+?bo%wi?zg-!KSIS4
z6n?*WqQ}Z}yS~=NHQDB+TYst%827CO4aX4GJU=N~g*7j#lc+*YcOz1V^@8b<YJg@r
zIiAIM4ygUKpbZao(_x~LBtltVZLTDf^ix6TA7&nHFmJksTQjXt5Va8Vv^5&X?P?)}
zd;B=6^0vYJ5!lJ)%V3QAkif*0{5UvvX8mxb^mRo$S``J&+EcR(MK>={s$s_N?9WmW
zkQ6oK7qbJ``gAQ+oq7Y@;N(EYlWSVIUuBXGlkJtk<65bQX<W&$Dd6X4_17-tGIRnv
zBw$Z#t_h1DHaZL-DiL-?>h;!dyRCM5jQDhF9HJ_*hDSf(x^6smGG-4Kimy8zsN}fI
z87`yXAc{M*LzK8tX(AD7&o;z`516^K);zU4+ZPoCEeAS)BpBx~oPtev+NHAN$Aa20
ziQu21g8TgFpyXKjJ4okG%!6@1!(MTY|Hj`eeErTW5RN)$R+UcpJ+l`L8+a!5(f{Fd
z^&xigrv9=|QVIolYlVAr5JK>0z7`j<4)WmX4C%Sd>GV~z(z+OH|K49d?#g&xTa;xN
zzWX`LxR!aOEZWW-(fUiUGUvCsRR+87lG=5|%=5&UH3@NMj4-FHzA<Hasp=Y6<QT)=
zx4)R`nAb~Ywbk!6gN9xgZAz?iafB~@VVUOHfav{~3B&V0f!S-!QuDY2lV!FGS)OES
zF@_E5m6g`OSZnI)@Ia(g)g|_SBH*K2Ew44*T0IbSac(?t=afxw98Cq54uG^+xs>Qm
zthbHXMvwjWZm(-cV`^RB*Y?N9$5*r1KS5ET6@7u6uKxZ`ZsoxL9(QoAE^6m40&gQ^
zV!QWGJ_~-rcW!KpZdC5TrBus}jJ`c4Uh@QU4}gNHuY?W_{(Ss3z)s65<<!;u);jPD
zG?r24Ud^KSaxkjQsq-g`>vIS)l*OXyI2VVeue+D30_f^6v>L_>Hcj14$aICf>mh9H
zLivt7qB^iZR7F1N<mRt-5@TnIL-`kvd)ub1t!NE(=SL^Moh~t6;X(zspg=G0`e00t
z3<_h8!&;*?!y$0FF*Eb31AMvIfAuAbSFf|fXwzqMfhQZuUsWkN<Xmoj(mkk_JQ%X}
zM(|&tRUsaDY$QzLS>~vsdAOkYFaQo;%uc4Wt=jrWNmVB@Fam#99iIi1tFR8!xsGut
z4^=3q@BCerm(h|G_!Gd{)FUsbE#D*GxYt#PtNl+@E|@K3nKMY#w^mJPv*=FEn$v{;
zNvWAe{#RY9$4b5xc$x+CPz%*{wJP$kDi97-I&(8!c+G%VcD*0O{Gi9YsrJ;6y-0pG
zr*!ZxKusFR@VprQ(j<tX5OcCp=hIQpl_X<WKw)Tb{@X5agI~Y27Wy{vy!-NhX<tH>
zr$x=)Q>_nG?<$Cm_NTYN;VU@kJiU6;l0ofkx2)i@un!4^ewdCT)HK3u_+_MiG$G%1
zD9=-VmzidBDGD?j_|T+QYM_xf8I=yy1jIU0F4Ay0>k|On^&hLYf|6btB>;nQVW?=h
z0Hp;PI+v$@*`N-0V9NAwI|Wdz!V$Vi2U<>6f}RfT5UsR~*PCDaC%QU9Y&6M`X`nN?
zy7+pJ@8d@h9G2ZLdYN9md1Qe+TKF4z3&KLeCi6w=@sPRH2Q?N@ELeXTYF(Wm9+$Ue
z1OxWA{6-frn9mJb@P=66kwRQcyv3k(I97{oaYJMK3Ozb2Z&byOC86Nhg3sVgcRC7e
zN&?r2S)Xz<?y?cE+jCpJb!-4dMP%S^_iTg&1SQ>Yvfv*8dY5|U`G+Y_1`HYk9HLCV
zU;s`d#S_5a*^CVrC4MJ7LW*ZjewcQ(F%u6&p6gi&!7KA!?^C9R#BW<fTL$B~)Yaf5
z#AV8pk!a{$Pe>%T84CqC!`A_K{KwAv6%l;6PoZ;1fL^N3x-h(!bsHQeB^u;82*F!1
zVV#W2lU~zI<syn@!&~m+u&-0D5r7Yp5ELRNZgz3g?a4!^`U9Kg4(PCczy?+{&)9uC
z<~y<5Urp^NFWK6;Wfwa*&Zc5#DdbWGJoitK?mmZ*zo!5s1^u|>Q@Xz}a}>3%L~q@A
z=MEmjiSRsLli0Rbo1m8MT^!LcnJ;ND@vAX|e=NDks7Q%FB{yCZ+6&!~$lU4hL?yC2
zXMTy1&1nA@YpZ<_aL@BS#J<g>Zndj<OsAe~j^xM>hagM57R%MQmsFOn;qJLlvg(>I
z-zRj*1R(nZ+?CGXXt6`RTB9hvTPa#HMM+qsGD*NFRtpF<{tIev_5(-%R=jMJ3<H6%
z^iHE_))pfnjSWtXmd1_@>J=$uJcA;3xZQAnxV(H!ipNdLz}C$Drjf!GIAb@3X3!G?
zUg~=27a5A!)#V+0<y1!_pQXe!l}K9fg~Fd}*NM$b7ja0g_(0kwSE*xLVN0D3Vm75h
z4o0HV*hwO#L~L#3>UH4L6&jJvt_*DiEzKh>liRG5+6F3h^j+*SpFiSR(uy4(Z24<Z
zb{EW-<O^R|r#p#Z6uVotdBeXd%D-4&$0c2rL=`I;-WMa`#l^+A#PZ=#V5+#c#H*I~
zko+@q-oWeXO4JU#75Vx3zd1=%a4pKQ+VJr9=0szd)h~Nxt}qo72Ga2kYnPWsXA_F{
zAk7uUx0D~F9m*<1$1F1yAp7X4%7tGX6O70?2H+ApmXCq?WdKAXo^Qntz{?2l#z8WJ
zZeT~JODN5^SuA>@ij;JVcE}*-z~QZA0o0MZ#TA7b4Tm^thv09HuU+)^Ea$rYf~2cU
zOBGB4ZU;LVXJ=<dQQhcJV4lZ{`QPRL1nB=2AJwKGmY0`PL_|avkBQd#EIu*^H*RS+
ztcJ9?#Rv6WMn^lm+#Lo@N`Lq_W4+D4zGm+S*PW{YR}QKYBYzbNI@<n)Oc4XlW^eGr
z2#Vd|vNcyay_vzDI{Ob$rG%0?8axVkzK%>d|H#t~*YuQDl%_D0OHh~$NIGZ1!Qpfh
zYb)?_=oIxLt^9ek8P-C0?8*ddF9*22mL@<z{Mw!b*c%{K$;XO85GvDFmsVOT@&J#U
z`9H@Fe77FY`hgSIXKO2`m}m@s5(|xE2QvlZpb49%HKA(3;PI_r-p(KER(m9Ozg*2h
zP2u4?mj7h|;2uP?wi|6`TbY$iuD!JmZJs;<3+75KR@aKTm2*7py^tl@@A_3MwEAE+
zchQ-g@?ihR)=gmPU9Qn|!As@qWnYP|vLJ~Dy%8#Ao`i-8S0X(v8Bdvdc&-)3(!)U;
z#;BL<XW;V1Ek3knesG&{(}&^T4FxIL$1ty?{6|T?;jy6k4(V#G!Sy<u_k0GkVAt}N
zxO5(W`dRb`fsVy2H1O9U;8_Ohps&((DewESd>@J~Pq*Q^Z?E67I6&W^GHa4?!lz7j
zLuwGZBar1iYE{q9nQxE?8=1ax6tY&vU{-y`X2X>6`7~qK%u9~00UP#Xo7=Li4?$kw
zhYU*mEW*sim#?QPh}vLM<F%B|1_EgBW|p9RvtV$O=9q%U*;V_xOS|S~x27vrlPrRy
zy{jt>h#)Zuvg`8m*LC|SLc(w)KU&zvJYZ{lB8%H~YGT7N)*C8RO&X$=a|+_sUH14X
zgZd)FIx|xnPMep9QGM-teR7j|d-ekS)sT@Sb(E2vd;U>tJEq7x<DkW%o>{9BJ7?|M
zPa%VF3jptiN+A_rznXa6VR6hDpCBe>vAEFH+HHoiqm1uC)yBcdyFR-*I61pc&+q2u
zL4q(gzjufgCltLzI6Yx<oPVZ;<sKrEoOOQ3?aF6WRo=$4&&#4t8&iddsk)rcQhR(O
zaeML}sb`bYTo(nx`3hlheT#j&eZ3UvO4O=hbbJs#0dH9aQT&>p56X@qJ?we8cc!EE
zM1zjOd1O@FUK%sT3x~-A=f3ERsrS^Jo~2bb$PBHwA?wMr&#bjrZ+FF6uMr`lBiqDE
z%~~`wInPa4l~$>_OatiJd!L3aC@7HIYoi<}t(=Fi_CD7OC{91*7t*9&rg3$$#jy9A
zM!*V2AJBPu@$m3~biP`14yca3W}R69%`4+@e*vm!j?c_ewYucOVlNf%kC76{GYW16
zb;>p+T|&>#1iY7&6z;$XV;~5s+nY7XTEb?l%Y5Iq%QaYzzdrM#!Dv~#{P;N>;L}3=
z+<RgB_<$rS@BJ$)`a$RZz9d0;dj=XVqu~sj(`KkMqjJdrEd~yltupqT-3H!#nXHwV
ze%;GydWa2*jfSY|ZKzeTI{kh?0gHWF@Tt>%x0#H2{x4{2j`uq_YwYls@<)4CwK+q;
z!5hy<uflMl({JY1Rs+!EFJ4b8`xO5BG-te}VFJz?ZU*X~j01~{7@#AiE9|-EdyUV4
z_Cym4PaZh4tt0sAa?<S5bJA&2LD#05&Z^UAzUH{VdRJ}H?As0M?)MumXOgPytu&$H
zt%ew$dX2kH9vXM+S`M7fEBOky+xA8UDOGFhZtcuTgFC;Ny~X$9gR0dw+wt2GMI29+
z4>rW<FeRFe4lgF|hyMe<KtaE};;?!aqK@nh-n#h5iK-uW+>dcL-@B5}LQ4D@&x4zm
z^)NgO7CZ}y>RGVmnUjlaZeU2;YVj;HEz$K<=<f4)R-I>o&l%6X_NULL78e!6<6zFi
zgL*tZE^hmg!v|@0=VF+qb}k4h%$2rI|2iKW9T5*EXsQ_wXu)1Hd~A%pP=n>f?1B%4
zwI@E*viQx?uG~fqn{DVfRK7z#bNtW^q@F)cddB_iTe*q2kHJLTPvSAQ`;EsM`)B*g
z`sQ)!Se~P@zS$Sg%QkXsZf<U3@1f9lAN^o?ll2Ernet&~uZq0gUB!ww=H&n9nI{*m
zTel_#@e0OCo)bJLe~!s^-0HmiCfV+{<q5AxeJZ;y?o%Hl&lO+F9oxQrd$-%~yt~`P
zt8cjXz2COEeY0|p6wVw_W#sPaB&HAVVR`niBXaJVbIW_%w{MRGI19B_UWbvYb6p%8
zsodD`x9zcNKY2s4-G8w>V_)T-g$nv+8{PxnQwnb0U*2zCH^2E&k?>VNJZP**bD%mL
zsMbqaosM*yM#lk8t}23;-<+T*<T+_ksPjWX&&idO8z)tMtI1SNy4+?IWNN>fIF0+z
zRQAW`mitL+9Q<aV6i(d7PgQ-Z{pvb+jJ>|uj>P`ueh&{1ho_%@x|3Cyy|)~Rs+Le^
z2U7=ku_ndE#)lmXqfk%8CTeafGMYS8!iV4LH^;^6s%f67>r(w!$+I`!eDhkLX6<IY
z`onsUUp5?O`)W~6UZMD9!$F6T0B_gNzWCqmvuDkCaqr%}*>E?gYgYHdc)yL~;<c-L
zt;St;KS~Fo_N!+>-AlGp{oC@C=TLpCbF(eCtK;$WymK4JR#D$PjzpoZ%<mNL{P1sX
zSL4A?O_~EW!vQ|HnluM4mIIs!jgy*j0;7=U^F@KA+VGo`sG3aqt@f$D)PAKsa=Y4R
zJYMZr6QkOvj%VK_+x==n=Dw=VZF?+_;dvc8b?W4H&GZ`{`+Uhx7pApUm*!m6KX=Q@
z-*==WCB@*FWPBJrMRP2pqm_`uPrKt**H+cIYlCO<o*fMfTRJABMd6b(M&5tybh7Kg
zQ?VRtwTOX*@66w9?$|QG_uY>^x$C)So_b}~s#WngSXnB_$l}3+2Rpy?(o2KKj~~At
ze@lMjo5br<%vSf?ct36L7x&3=^I(v@{pvZY4W99SahzN@s&|6|oqwyb@VuHd2Wpf9
zTCmqBI~!$ZoVe5^#R-caPF|caX^Q855+^YJRue716&WX0+x<L-A9XzY<%G!(N$ul)
zb*yoJP4&$_W&a@|A&!qf{&<U^z@VW&tv%>aP(>s>2TAJNF+>D;yXJ3LyY6sCMn(cQ
zCE-JXP61D?os&PuOR{%emz`%n{`g}WtQE0CMvY2)?cT}%y!*}hE~gW?HmL^Tit>@#
z_tfXhT|ay5y7tff`^DKEI&}X0<BvZG!_o9T=Rf-BqaF`F`o#Tiu1*tIuU;KJZrnKf
zr^yTTjH%~<+iLn*sBYh7&jQAvo<rkvX55b^Wn(uAbdH}NO_~EW&H*jhYn-KxwnH^h
zaf0InMj=E2uSiW|Y9dtM+^>%1Z?#>0tK;~swi(+Qk2P*rZH@cYHuY`Xciyo}mo9af
zGGz({3fqz7aqqwXzE7`yS6sb(*HM?)lq^}qtz>uQ|K2loU{2V<eOsfVP9?zvO+ik9
zuJV|f@<hI=a~a2`#;d;3?DFvJ;K73qpMLsjPF7adPvgc<Y5MsS)9<+X<$10tnN+%~
zM@dM7d*uBkULQR+ZTMei-V8r;@h1xxE<E-A`yY4e)vxcv3F&#G0;~>2NUNl8n#6m+
zMUPtekT*tNsNY7Op-EXAd;8Tk^?f17R@Jw0KYz1tl3F;F{H6cZ9H=D@7&U-eI)(1G
z5psYN87E^3D)r&tw%gP`ephF|vAyxPI<}(z)qdkK>bKf=-m!iA_kSoZDe29an3%Dl
zp`k$-qnx1Iwr%T$T>Tl}uiWoU@R_QJdD?znZemp5_6|!HE!-O)A5S69SOiK#ep6ee
z5L07P-)d~?Z`<$c?6*Be{jH8Y@48FJq4ulx>bnrU$p7lAui|#^+xd&XyIAw;y;E`-
z`CcYQ(Lq&oHaXq&pYPXurQ|!0x_0`FSN-(MZx6KY)b*LIVP{9Z@V`|7W+b}92hTAu
z7?Y`p6u|1as%Xp{qZ)TbZPb2sJ;rafuc~7&bieAi>W2jvph<J!&vHO(?0=Sn`uL0G
zKvk1mZSJpD-_B;UXH<N~SXXDqU^g$n<KdB!r!4vThx7A`0|5~mvOglWS_@-GfX)o+
z(!x@lpB=Mj&z^V$&C!xUVa^Y=P!$PJjjl4P*0?L_;LjXyJl1mJ#EF6hzx)y&+_d@p
ze(gK8y<udJj=!uw=u`mc*y<2rbPq(tJIvp5Bxw4T9Y;HwT%C`eh-?1qrcmFo(@734
zW|PzI-McwIQLwX9Wp=mMy>V<8y8q7{%X3wAyuI=0ZJGnM$^k9dYn8pa^ZLvIRMcE&
zHk;-w-gfL7AjB00`+Fq}=oEa=)7``E>!tf#6Vs?{S4}QXW^vb5R}`&VvwGv1GiR9M
zM1ig}bq35)Ypk9`M8nHW6l5H0Ap+l0aXri4c>7(qd#4WgM|Mtr@QU5xPPssss}AJ?
zz-Io2!w}e}US>y=>1br4!;YiTj;)&d3h>OlbLUP5U{bJ?M_fcHvpIfh(j3qnsE7kv
zuvf$xy}hw>zyz)IVEay85_cRq9en(3qG$6!Z}*~NOY<gvo~}!_9jO+72%#VB=Oy}d
zXqxxIe||jzzcDp*3Mzj1n`YYjBGfTdNoB%4EG#VZo;z><ebLh8LuQQbHR(i5if{Ot
zWCs?0sSf2L_kY=rW6lL=pOp)CKy*9H@~!~rNl2hzr*(t#RJE)l)j6kbqdCyfIiO#b
zhJJ_j^<6Xvh7TW}nVXZh`HF5WlD*yCtSfegJ3RK`V%K}$Tp*4{GX=eBa&vJKBYU?g
zPD@KYy>8vQgwniiWrnA4rx~7tvc8#gIbJSG@}ae7KKa-qFZA!w^w6yn2V}Pi_Oo6{
zO&}J?kwP7vIUpdx&BfW82MY=Qq+q8BUM(c*8;>w_O_~Fjo&#F2UwWSFGu96dNFkDy
zkuvY<p<N>TbZAycUpX{(k(x!hTs`u3cedU#u5a4ng$p*|2&%D4TQ}xz*H?kXaZ|YG
zty!}s{>?XDee8zeUBYh~(<?7Hzzc|~7j8MHVE1r0TXXXYRmvo~uXl?cj#-oDz-8lr
z7VMXe_4>s1fCHA^y?gI>b8?Do*W5R&Plw<O8nUOGv*^(#*xEA4v+$KyUfG9(DXb{i
zi8iN#<|rKNt6;~_r5iymSU&mWlT%;M{o=7($8_I){fO>`?Lz`CSh#aB;N{|C%`Yh6
z!bhzPj6AB(ydu9eX%5sn2ee?Xbr$Or)ME}%h*)y7(iin?-DKO8L0zk_s^h?xO?<6)
zUo|l6z`or(QOS&cbP96@%~81XH@ERq--Q*gfu{4k=bwK*blI{c|9xWmkkC6O4=8Na
z#21^ZPbC_=lQlOtk31qNp<ds4RB|=?U(JC_zybQNG-(cK4phQ{K7IPc59rggli6&(
za@o#fj@2pl!tOG%^Gt`L;+>{X7~1sNr~Wo}!o&$qZmzDUA|oT?b0N9Vgl6o9LP`Kz
zjvYIe+`Dg|)IObCd-U$us^#WGQReJwmb7&;JEDGjv*JE&{ZG&R^7HLr4zmbU-oHu<
zY$!a_*P%I3D;&^*y;j(&J8eK5FdaH{sOZKUZVbvRury0d&kH#gomeeP7mB@$)XZGd
zvK_}=Hyns`4{6@4)!nmin)u)Y4_wo%O`BCKmo20A-q18rYieq0aY}M>T-R>hayqnZ
z;x=_?_l`fUJtT@ORO~A!0^JPk98%P|sr$)qzMi`Wt(9O`F$q<7Qu!(LUd@39&w*-9
zPz|07`T{ivD&~L{8g^kqLfno3FXx5RhIB465lXI_R8(XU329lTq|6+XRXDh#PIptY
zlXJ^65fK6C!W$n}!E?rk?_%{kM&mk2T%^znQSi`154m>j(xppsPI152=55T+FQT$t
zHPICB>1MX(WMy#CqudniQ&|M6?nJlH9BAYm(0S~Q`~lFHUnK{mM!j+4#<NqVU3VzR
z$0N0O`)0xWPp~*!#YEX3;O!v>b!};#Jg9SS>tJt@l@!18m!IbCPDx6R{pFWmD709&
zUI{}6pfv<-)EXTf-PUY&d1lk0$dQY;9}U=iDAHUF<Xy?k62b0Tl#`pycm~BA?vwXH
zHq!rS4rmTk%7F_N?DbuvsFWFcr{+Kf9IzrNEPu?HF){A0J_m;PZtDlZ&K&FW$jjYD
zv}odE>C__7(xY{gq9AYQ)F7vv@buHM@%#4gJ+^4!!s8JU5iA13V_E%<?yv@9IZIAX
zZc%JC{bkwqqhnU@iwN0#Fv<Zr>eZe%OyGp4n^R$Kb`oO{D9nu?{HaNEKy#of4pc|5
zI}RK;Fv!WnBhYGb@HSfuoh%lMoQM!iR8{|azve)L-~gZbxpU_Rj-4_seMpa1md_UM
z5cx&t(AE4r-9&JJcX6AhKBi7B{B!!W3rg?S!Y3&vChqi#rHl4|`Q?`<3JYa!HU$>#
z(v<AV)ZAdSQ3nTy@zBm^#-?Pn$jHhQ0lsclKhF?Lv85Oo09H{5KYLMev8lM&;=sSv
zcKj`htrp?s>WcQRmh3YUPhSi52J!aji@4Mrs8BNZ@893a$;m6k<YwwDiXBJgSX_o%
zgsH2^!Q?3%tWH>hS9=wHsV_>OPjjHgIbagjeJ2vFxhpqWZolnT$L{T#io+-41n}cU
zvj87!uXX_iqk6WEZxiI1nURuo_Ryid;kW;DZWt<|u~<1%+f?Bf3U&sB@k2i{gThqm
z8-CVrLj1v14pvL*><N9h-7vhHV@_V4V|sSBb5?edLuOvSQ+7^)Q&wJ~b7oGyYj%E-
z8H*!_oO}y14GPV9g#~6;Cnv}D&HNk}tPA&R(xgc@7Z;Z%US3`y?(Xhcn2-vvaIk2F
zqJBRkdi0fZ0Pm1Br_fsLU@9)a3OEN!MZ%69J5q6!(j=;M+1VA&S6+Fgo7L*n#=+I;
zjsmOswk)fcQ;OBoJHzS$Rl^KbgNNBYwDJ+_y_y5{mIF{8p;5MJ;wf&K&`)@Jc!_!I
z4~eU;=wO{PpiNPJUUtl`t=rbkoA<*(MA4^0J6FP--xS_Tp!2tal;u8Z@5;Yk<qM0p
zb(-L2@R>Ptrq$2S&)>(#CkR5gDTHzp{0{K+^z_2V)7#tI4PS2V9v<!{M<-va)fDXD
zVD=GaM{j2r7dNvoIY0C4GsWp?>1O;b%uX%>@*b6P@zL{6oxcBia5cgK)JSy1qTiBe
zv0B2-MFoqC3bHq4WMsr0KYlzNXW%@ctbKM*c%F2gJbAK9T2}64;ovko!|FaU+7j%Z
zAp>{q9)Ec@o;PZnVKf-Srp<NL^q=4(%3cfB6t^HX%PtvtT|pB$*BbY!V~pF3opZl&
zUuEspJ|1s8#@OE_`Hhp~e-|eQ(Ysv}G5<fe1K&JfELgEoY+Uwh@$sXf`=TSGe=8`+
zjmL1PjZ=Utjhup<+xSfZPeI-g&GEcjv;s2zfD!+!%*FsgepEaGV+v$kfupmtTX0a5
zp{|}j*AzRrG|3Y#j#(C0mwb~8n1kj{NER^TP-izpA)reMQ424i@tHtpnluL*5(i)$
z#M56aTuu3qyt&0e4jDOKA}d`K7JeEY9`;3IVj_h*=MN>|&%6BdUXkIW#ynUg9A;!#
zJ+C-g+}f$Q4#xGc`jeyC!S4Ib=v(;kL?L{3nkwdiGk`$+yxav#WG12fXk=W9UAgIq
z$<(Q|+EyMaaoLg+@Y7))6@^8`f;G0eP%z^dZp$s;vsa!<+MD28wMyJ|RO=MZ$XzZ*
zT3A6zKv}s1*q#{e#qiA*qRnL`xv;PZ$ac{o*hfS~M~j@yG~r+=6m1-03axn=JChR=
ze#Xi=9OERY3e9Iq$XBGD%U&<*b=BO-IiFByQ;0(v3s-z7<dsloY>o;Rbm-Qj=TjE5
z>(Dq$P;j=@&7n~4DrE<SxCw`u(S;dZII;_FJ8#Ouc1@ZC4VMF${e%y6gszT}Io9H$
zo!d5VxCvKF1%d88PRcS87vE)6?kyQPa^!fc$@JD~OK`VnOH+rsDAYOfw;sGk+&OKq
zU<9%)rDx}f*S}vY{`2i>+g+FaZ!#M(3UVA3YRILdWZDl~TJc{+%5-Vd3;IIoQE}6l
zKH{P4hl|$1eo_FlgM`#9@%j&I#fJ;Fh+J7%tEAhhL%NCQ=1fGSvWs~3v!&v<jR(t}
z@44G1h?~at6?0yhCw3f(5?5W>P27F;U@@d;Tk-H)^Tm&A36Xw|*nZm3?&8~(d&IlH
zY(zQJ=HmUwt`q*=o?^&7?~3#sKCdOz4F2nHp8czE2j=>#->(sWYz|esF3)$VV26nV
zYh}DoMHnkTR=z1#(a|v`*OHU`duCedinzEqUU&*V#D(WYHOOE&T$e3Tc=OR!!dwY*
zZd3al23~RHm-!B^!y}5Dd1niE>;q3Ff8{?VU0`u29AE(8hvD)(oV{q$9B70bFhhp-
zc07^qRFt(Y^x*!-GBY!29i(vQr<`fNEO?H=a>c^&&dB26j>%RZ2=%)C24$ea*1tYq
zDvm_PmAl0R1c{2LqEz>&f9IAEdRK~+%pCE~&l^Ns3g>+L^vDgv#n2vY#ggqu#N1`O
z>^Hi=t?io!iVq+}ySE7zYxW#R-(liZOo~8#aWQ>lPx0cNljXkq-}z0Tx>mW~+cx(X
zkKa5>tloXRobWBz$nb}smz#L{wsB%9&S4bRh9>goag;xO?u!*--V3wEv$u^GfBR^W
z+|H-(rMsqxAdKzD)qCZ6ZI8X=e{)b){KIefd!;5xfrE%|3%+9=TDi6Kb)D$%<eUt_
z9>&(CAHH-H>`H3kXM-hPD>+091&I=wfAd2!4H+{0ZbZOcdAz8dcOIg1OE%m47rUsT
zYc1U#bM&@G#(^SOv<?(^aOve3KBz;dZg)nWJpMnRJjQ|zeCMdS^P3;(597B$u*;a#
zBInj=Rxd~Ry0E2^_e~ygdH*TEWO@J~A=^Tu$`1rnXAy#&E{16KZ64qw1uyGEQ(Lx2
z9xl$J3AD+$<a9yvwEb2kN79t->FOdf;E#25GzoWCCzz<sRaU(sv?euGXQ#5Y*Lg!}
z;_C%7xk)6Uo^^g9?`!4s=#3*pyO2OJ4_fp)(3Vp(a*=*iEX)u}`yyhb)_(7GL&f*2
z_J~afPnGqV4PK;Y=8C5Np5hVo@#5DjD?Jg-^2spoBW<b5_BpT)@Z9hIx=}oM{Rpvm
z>k+Z}&?#}l$X;UHfKKB5-!?&0KU~g=Q0d8QeJ9@w+;IwY2P&obcH|Ra5}77fk>{A}
z?Cx67zC(u&15TVc!H9UZqAooUTN*x*A?md-zKo{k&6~S9IGLX~TGYzFz~lk5R5j)q
z*`^xp8a`k36*g)Pm>|8);*=%Cw~I&7Oiv%5O%Uv~2J#(a{0_A-InR_yjod=ZRfv3V
zQy|P{YaJKr7`&V|3Lrr22{g_F0p9N7x0i1d`@>_z3;$a|%x(y6Z*j-eL1Gxp#Gn1K
zU2HrUA>MxITCwTCNzoLV;f<sE2wxvJQBYVcep<axEZB5N>^d4PPsehSEt~j>=jTii
z!+N(9?k;ALlUF2G?mQ;u!#urVe}wcI2l;x4*Y3YsY&#Sw0`dF$QN1BRvjsKN;l0}n
zYQ8kXPan}soJq<MH~jM}aTec3+VI{3qG$VN!WD~vLET%6hapUN9F7vVzdBF)o3HHF
zTKxOAiK27sAh|$DNzV~0cO4a<FWQdtBpJIZ``seYM@+u5tJrerq*#G5$0lb;i!vJ&
z;kk&%-|zgqQQSPPub4HVzu0%;tjJF<SuBvpN221zhP@}mT`;rH-*8YIwy~6yorwJ*
zz9Bj>P5ip{fOz2gVd8i2k?kvTKcvBe@dd^{x^D;Z?!(uKhu@hmp1EbLShO`1f<9E7
zgjIpo?>a$JzTh7Yh!2`$*()R^S-REB!@;SbtB1EAO-VcP;fqJ@RcY*X<w`K5OG~f{
znh_yCJ<aOrpKkItS<008OFIsIHqC+h%z-rFY03~Dp58wG;{pOQvj7UEggXU1=NGG*
zl?Z>`Bd6Ha8|L_Wam@_6YT3j`bZik=HeL!2RMZlQ5TqG7`Qn##2gH*zM~k)l!o|jY
zC&ew328aP&TZzboG^rIb(5oea#~%I5ND&6X^X5<Mgb7;v7zmhaM)Z(DU3mxqJA`~?
z!h^ni$0X6GQ;1j!t#a4V(_%=EHez7c*1{LyBsr*FMe70kY!Bhxw_^x2|7@`Zi-(N|
zP601GQ=Ep2VA`-AA`4@qz&eZI#x#I<*wWh&us4nCBf7R~D)t^fBUV6YC&CBLAhOOa
zgT%X!UMn(l3&n@OZ5CO1`EndXd$p6+gRhtE7AMZ0FWlQS^AjGh031J^AkN^twt|v>
zQ}d5Fn<6^m9IUdXh*9(La2w3ubQt6BF8Ou$>p#n2In~DYo7edB`h()eF}=l8v&IUx
zrxnB=sdK;i<2v!bXJ?AHAHGJ=rSc725RtK|GH}k`ahGo!rMr~y_*Qbd<nJ83bl#3R
zeh3I`iJioO=ZDepWT<-a@Uu~plf}VlT8hQnT?_R_dH?lA*8m4lb3&w8z1@S|yazbD
zdF&7(`3$<HwoXlq3WP}sc3{q!0%5~<1_%wd*L`w>Ief;r{$g~$PGy6oS$xy}6A17+
zB%`#K?>HuI7~NZ3JFKVhfH`~^1aV?omRJM<6`z_Z!9^IP#>K&>e{2=YcOHkpvx?~W
zG|{7da|CvUh*0>&!ypX1wGI{|`n4CU&}QD+{m_gPq$cU<?kYNj1c<&6`1`}p%CVRs
zfP-PSp1Wj+*mW!#!ZZn%g+k#1q`v-LT8b11(6!KhV-hp$nwY8m_w5`afJ-h8pNf;`
zq!#Sv;so<_N71uwbMff=zl&A7j>+T0&m@amC-%o8qm|%qdxE`*pO;*8B;(u^y7q|I
zo&W(p5LN;%P>e+LIwR+4otQOYpcsJb*mJzZnqh3Geshs^HYrWEzvt?qVqlk6V$0!E
zYWI2HjC$V->q=Bys_4_Ph4_BuZpmMJ7Mb%7z8o9MUX!vPaukg0Ms9$cqshSs8yFSN
zPiaWEY|?1|K~B3Fw)gH?R(Cir%JZ$!GDTmw=D<a809hoC4rZqiv!huRlA?yliJjV0
z2{bHzKx4PKVI|;DUtTzBukD%#h#u{N%Rb%PHkH0_T#uxPm?ZHF%)tY@wGuO7Vs?RG
zq-mXk(@42k5G>jf3Spli1^&8yC&USu&I5hirAgcw0=Z|0V5zmwhZah0JsIZjt%oDU
zdbFkKzGI6Z;RDT`#I&zu_^-cMyj`|QO3xBN+JY4!Pq3CZtpKSoKc{Bp*wuQuJr@=L
z_L~jgJcI3cECu^mEM$N)Ab!I*!l9W{`(6zJza0_jbSDhPwb~<I11-l)8LO;(Cigot
zmC(+-%bME1V^Ksc^+qh1+_AW-Y<{MzgzXCey?V{?9>UiH{ISz7$IH#m03o4P&uh)i
zFM!nmsdV-R!UO6k0ayaukqc%9s(?XKsB-~*&ID3N$6njRDk?%@JYi{`E7?-pXVd*_
z4m4a2<l!AcO0h4paflH?<$?2!QXtN0>`00?BeEA?70kSKj7OQ6{Ga?_AyTYP8%Ab@
zFr>Bf9DTEVx0o@uj|{|m1u0V-4n)9=eNJO#KK1d_@et@)W#(z(R-cSb7R`gag+H`r
z3YgYS{eTZpBz8imbHAdn$av`^XHIxC`0(kwrf>{DohY(xBFoh=7yHfNzLvqh;vj;}
zXo6Q(U>bud;B#=kkRU3G=hNx<6zThJhIBWMm8NxDq7V&%d*e((x@>E^pVu9JCP{p}
zV4L_CBG^}KKPs&dw(Zp4R`8bXU;BQYY`<<#xc&Bc<Y-a3W#RzQxmA$(4K9?)NSoV+
zxPqnI!bCC_HuZ&MHVM>H2a}b8oG%(*I0|;YSoP!O!a!?-3JTmDJWaw&g3mN=R@4T2
zb)Suh14Mv@IB<uRmD;3IB9sDAWVE-|t4W7iF*QhPcjrF&A`d2SBeiPkgGh8lrK4S|
zAYakU-y6u4#><9=4LQx=I7L(vy^yyJbE?Q?bUY*{P0>_isWltbSw^i>@GHO-_91=!
zISf)PPc(IxP}RY}Y|C-*qlkwWVH~cAn76T%OP{y|im?Oo!sDahtELH_f|Icc#(ue<
ze+T(`!txLx1O4Rna)%933;$u&UYN{NWMEt%tOT}w84qE5F0LYAUAX<KL4xg#yk=W2
zSh}`uBJR0%ux$I(CyT`%SXLgsak%K+v3ZGQz}RWs|82tk<3q-~$8Yti`y;Q#5&B@w
zNd=<5SOsg56}oH9fj`9o`3_mF^q49If=YyPtutq*o)V@^n&T;?Z9htIxI*Z@a_>};
z08{vTzig6$b2lJLy-TYmB~vago#|-wkGDkBIPs|2r;mrL=!RTx_H!~eMGEz!Q3*JY
zqnI$Tlkk9WcR-q%3;G`f(>JwwMwOpVs62n3LXL=dTpW18H?PKN?+)anEyaS1vlH?Z
zU>e6*XwnWn6)%11!G7LyLBSL{HwgNUEdwF&9YuHrQSoO}GNey_aJM#MOuvrOtsqU^
z=$HNbBJcdc>xT+|2=^b5?pBc>o>qdioE-5_fYprZ-x0a?Z6qJ;U4z_)_FQbeG<TKg
zhZq31_r|p=V$^0+`2Sx-U}8*Srufg-t3)bFasL~+?R0I-!D3)o@3xilO7&F-zbV+2
zaOd#U-*s@PdPtX>0}|yC?;__QO&7)i&S6B;Y^1~s=R;FA*C+{J@A%;iG%7}(+ulqD
znNgdJL=e`UQwKxvwieT$`3iwvXQiMRj#Ra${yIk7_1Z6G*GvKX{$ta{>xjzEL{$Au
zq<hhK&!~E)Y7vQT&E9Zmvhm`X+2dt?`HCG!#nnT5h}n|{N+0-U1cs#}!rjfE3n%*&
zgS563MC>!IYbMaz=B+^x-kC(ZW^YE!Q|OKA+g?P*B+J-<L@ZD~{(X!1E5`TX<JXI~
z0dkXuG(LjMOd8Zx>^^oz{Iq7D{gY$s8$Ygx#@<9~&LLRHEJS|zNyH&AC;z6=eWVa&
zB>I-nNCf*axY9l`Vtobt`b%*9byz5+q%-Kda$1ATgr!>!i&@|o!G#pDI@({y_Y;ij
zpYr5qa50ob&L4@26L0^tK|FEONVr#u#4!XgGO(_mk$TxUY`%1wGzTi=K-bnyMSI{(
z!~!2<XIONF?evcF93U#@z%DHSkL@qMUS2a`UgghFcmINAP$>&asLQ|Wtzh>C_{qDE
zTz4MF2`T&5ymev;e6ugyIZ-_Q$r5qkWUS10e+`hSjIzFQbT8zAPmrJ}TnG>pg&-^o
z{xe5v$mtL~ul=x23U&I3NpaA~Z~FJQIOnzE%?GX#?>#bI3LFYYnwpu<UKJ6xbshvS
z)8lSNg|OSP@ECI6yGVm0j!Ai1y6uQG=|2Pny7wQSE)Isrim6Y1fynW*V#?n>llk6@
zU%N{Nmr<}TgwT9*-g>Fgm+$G^UyK`=@%%S}RtuWBXCR=EX>By|(+B^+TffPGKL+hp
zhn@m&8JOti%owq%>4mu~#i)KABw!C))7L)&3#~_xZulX9Xb4PWq)!)a6J21UAJqp7
zp>h4h2lF?}AVgyu{abUOHaI|c*LYax{`l{mcDql;J4aN-*)RWKcmKs~9E@y~>qhhx
zTY-V01$*^5$oZ6W+W3K;8=YVWmz2U#?pyugFlyAOllzN10(p)Fnd&yV!94BEN*wl_
zyO2`UHVffvCgNKTBG9G37{ZIqiReaQ#sD{8nB0GO{uT)!bI%*U3Ri6RL%w<<a?Vqs
zebb*!-?<_>E*J^!15+}C(9Qycg;CsjI3Eko&`iy9c(^)CzkLoOyKRZ4bNc07a4si+
zn<OLG-7ato`l0XH71t_L&(L=oOw_!MbUo0V&v*eBn4sc;@<!7+7cIu|+Mb(#)1=Sq
zcSpb89xgKAk5TvWDOoaFpY8$`l*jfo*K@o?;mbkpyph<K7p|4w<eZ#BnQu;a1*6*;
z1CW(d{`!sW^Yd|!a4wqA+;LCx5%kDx0bAmAn!z)Uiwh1eLh3rTaflVo3ZufdZQJ%7
z#+r!FnbL2XHn?i42Umen)-VklHp~whZz=1G`qpsIHQ$|4u)jEWh1d_2OQvKhq7{j$
zvwM!6Rh$0w_niRGQi8oUYF%`IHQ<SxMoFNqYXFSZP^blBr=FfQMhf;$GhZpYtXJ=u
zDtZCv>$d;Svl}d2*07%b80;7-Vk3{e92FI{6_-E_lygloKDqT$V`tSc$kQr`+Pje`
z6!P+sZibH}2zE}f+|G#d<op~F2d$dX-}Yu+BGpo}Cm0Q1>O#KgHVxTVML;Y(XK}F=
zh4?Uj;0bUMP@$kgKU{ni7L`Wuqpc)trzt!W+jDYpFVTrHO24#Kg<p(RFF?v2Kg4j4
zP0B>dou$GBLCF~GGn;)82*^lW;K)UeabxLkd+iG$tkdzSh>QhkDr%#*YYx;V2lfFZ
zYBe%CXx&r9_x4;ctlC<)zv;X8_HdRK!@51vni-v!JFXR0!TOdmTN77bF9mx|T)4eH
z_@Wj;@K!~9scWJvY=uJI-T>?jt3*4uv%}u;cD7N_LeI9dM{m*`&>T=4ptXot7q$y%
z#=y{O_88(oR_{74R_;FMj-wF0@7f`<3*urF;`qsfyNWB|x(b9<kV?mjokzttsB*}~
ztv#Z(YQlidVs!rw;^|M9lz~}!0zq=};4V@?uiG0TBH&^R1cWxLHeP`MRR*JS!OcQX
z3kb%A)K*qqoCWtE0kU}f$4}gV6xlTK2HbbV)@Xq=S;p%0Y9As3fZsu!jh$hq#dpgQ
zNLw2BVmn46Z?+Ehmo+oIfl)EKe|wRcRUrQL<uciHSkHFidenSq+uToLXY59%%VwZ(
zDwi8Ahul8}d?6G!$Gi`&#ti@&V_Vkkn2Gos7OG->3q?Z#2|gXjpr0(<j&xcospW}$
zd-H*-;pS_PB2t9-o(2TVWWa78mu`+O$PBs}u06tb)B4F&VY*b;B95v|=_}u5z5A<C
z3wCPO->=vsXfm%Ty{q2cQ9WSI0nLFL<p2Y8>AEs%?6gX8anH0{LP)nm4F#iM?~iiC
zEM&BY+WsyJQcQgTa@7n#Qqd9*qer`@;vX}|0>(L8)^4yTP$>9%wr>jmF=B!sEEW6)
z-E;kb&e#kAu*{MnB4iUEPtm_?OR*b4!UT8f0kAHXW;UabWrzhxf`#!Uf^Z2JO${~-
zSw7sx@dsmZ^3KE8LYsG!!L+*&xYq>PF*l9ri++)@QbExt*1fnD!LTl7WC_8dNWiSU
zM@w82Q?Zcv$E?vZ;B`B&MqJ>Yqd*?it&KEt5>RUdvR(dj_Y}Fn*}5fCx+jSR;^*lu
z-IM-UtW3C~v)GOC7zI0l$yjS+{>H<01v_0PM^W3NXS-&y+;lj=#!e&fmVw4xz_8HO
zknU|{_D?z%6CrS`GMJcd#1d528hv~&OJ|K*u+yiz4y(grnvV_sv&(WP^hq@bGzaP=
z2WCLKqd=k%BvEsxcDEh~mN^9l;^2u`am$neQaHpQt(2Cqp$H0fKu``dVG;me&H07(
zAwo~aORX?8GFFU*Hhu*(==J*|>}ra1)iK?bQQx!<DB>??Y*+C&92Y^H76U!=P(&PD
zbOk799V>?QYL7C^O|dN&3xGJODffb~WBXO8KS2m?UdtE+wDv=W(T~W|S&#XUMX6e0
zA>xA+*sF$ili5Oaf7+501R?#~REmBA%r+slDNupZAwj`hoSbA}@&WLNsl@Jx#~BQP
zI<ilDSOcQuv2C0Ai?zGMCG@rn`fCP^jTmUq93x|kSPheD#YW<JS@*&g_FA>!0&FF+
zb_OFO$_qi(L<eP-5#h9(Lx{J7m4R-^McYDU+)z_w=8zaS(NL&7#~R92Rr5Od0B{wn
zNpnDRKy#oX4)p8PLUceqiBh>P136E|VcvjXr>4CX>7n<diXrPKEZKfU3iM$}-;6@0
z$uVfgDbN(tV0veODoxIw?k*CNIvE;so8SNh$^N<gYX;xOVeznH$8p)e7h;D}GxB8V
zWWr4Q!_S<AD1KH+Wcg@s1i?~cS2PjP<PI=Nv;IX~a;99E5CS_IMXRR6>fnc{^W2p4
z1v`(YcFgPiXu%c<b<N;j1`m(!-wEdQGi52NbT_bX#`e(Kz$Fsnnpm{U8TcE-^<d`F
zNmw6@mJv0^3;8BLjsp3U1-5c=t+XV>mR8Ut2v;hyo(SgU56eJ)K_(VK@o=@^`Yzt9
zc_G8QByAhDV80|B)+f;%&>X1O9H1Y13sNzakDakN6qF=ttA|d-N&!xj`RYB#;CJ^y
zA)^rSE^sDT#EE`f`mG0{5Yh;wZu&tJrXXcuCJOz^fU4{<j_qmsRzzi<!gP4AHo(Z}
zC}_fVgbBU{v~FtO%mk{8+5v5n0lC+pSk_34k3_H>U-Xj-E!Pj<v_#mWq_iAy5)~m?
zzk)<FKeb{nEMEM*T@hz6v`kR@BesBAJ6)d?-kSjLO`rSow@(Jr<Y`$Li~jd$RNu@}
zeg``zE#a4e0e0F{w28&P*1$sW2ufkIisXj9r%?PW3>7?MMGCHg)|Q4qmEZBYc7?c?
zyq#+0T-SzI*T=&NpfcXs?&sf?QAK_6#dC6S6vc?PuW<EU+IMC5({?<SjYaR%9H=c0
zoB^WbQ2-<<!ESpVYPa8^8X<$U{{7_&iMhZs%iBXwOO2J<{&mB9ipOsrA--C?OO|2I
zg|^xTh?Nz+Lp%rfF)M{;c%$$Sgw{_DR}oF}QwDbvpZx6xF?Z=sS*AKGyFfI<!ofBc
zm?mzcS)YASs1tIV=J7MY)G&&+?}5=l&AlR`KR?|DKAV|8?1T6m8(;>f$zKuY0|ITa
z0W*-M0h?nq789cfbdbS@_hTXO)smg!^F`aFIi7u$_`X#SLNtfzygKN7_O6u{f^Syr
z7Rz@W5mSfsfIFm<`1!?KQB87>j3r3LLaQNA{SoYt06uQ6(yx?|4s((5>1zmgqL#10
z8RkA;Z#PU7MKFOC$(;AHQ-ZhLAAps4GJ<&u@bWoBFcSobx%BpkK0|6P>OM$e4lRKZ
zw*fG5wLqQwB;?meVN&FaEz7SO?wKp9&Cz$rl^P?2ZG#uR&=38K_V(EukKU#^P+J@z
z_5|MpE<zQlN14K&Cgmkt!^HpHa~04iyCdS7sFM3c3=rff;#dcvf7ce`06?Y~G0yZ-
zR$Khr%+btNEzwr+MN0tv(-c~KpBSJ=P$_D^Ef68jsBuT^zY>0GmYR-*X`4hp^b|zN
z6ZZP=A1_AWSxNu*Tzh4S04zNR-!Td{wr5}--(hN~^uIHI{vdqu8xEW-F-xOgGsb|S
zN=y)WqH6p@GdQ8O(=a#C4^D*2I7H=>53~aCV&!5VKgm;G>-s|xV(ozw;(tqbiyxn#
zB?fhGCADap$65NhZHT{gS5Q$P--h*RCt<YD4aZuNu8Tft9Z|{zBl}%|cS0XMEhHQp
zXEQUlC9(SElI`N#)qBK~0LXf9`Y`d{{7uLP(1QIOUoXKgg3|o=zNs=LqvOr5$OrTi
zoVG?!K{FK}Z9e2xS$y~sP-yaHSChz}8O-1wt>wz}B>YY9&)*_`T)nrfI|iYQMy>hf
zZ{90LKlGv4bm$~-^;?RMkP_1y(Y?0Bl`tbs2j2ZQAb3mi*a;2GbQ?zEwhs1_J}e$b
zw7u7X`1c`vaK@bUaX|HYZq7t0+@A&R{BNl9ZluQnq;V5qcjvq^4;B2PjJx!2&4EkG
zfgWv}V_^!gDuen<A<0EBqtf|~rl8dF&j=uUV#Y{mVkep<D@Ky|+_N$yqq+N{sL|QP
z3~}4!fr#2}E`>4YHqH%PD030f4FPYA(q=juD<U!-?I9pVzBO-ytW7a{(g38THHTm?
zNw1^8;sUr00?`<Zcj9cam_4z-=#SU{YQ^4Ah|GA$85O=05$d;186^IKvdbGG#Lpz9
z3nDyD!-C`=fZFbdx*5v=mrda~5PcD0k12B(LOk|k^!XSBCKoRYH-$=GbpvFs50nKW
z_OS})wXk9kK<3BQ```ml7h{mt=Z*LP`oo!`=Zdtojr&iEm+qV*t{&D6=JGgk`;;q0
zzs@b?!bFXU3oG)<2T}cF;EGs{G(XN!JofHuhKTF2Xj!@YxU`-Gp<3rH;2#71wxH~`
zAI`^U{V-T$Xhmr#RDU$~2Eg%001rE~M_U<SGZ&cbmC;Wx%$9=vt)JG5ZJ{+M*segN
z=oADD(x-L26fU>2aS$r^TbQom4L&x!Gw_oYN==2wwr?INK6vapMBoO?+}R~~ahZGC
z1c5uujeYUX$#UP5AO9hPhK%Q9%FN?8j}oi#;xSTHljcBO<G{b?OeiPRIlkod97J9p
zMa_wy<#1V`iDvLwC_TIaKHF#r8fAsrfqZaBvq|(uj`-U59uWBuAWZkV1BhsEKYX>g
z3((S^{;^GJ%#4~J2lMdD5N5aj-wz@g3x+oUk<A73jIsStk0Mum1~c_B1cxc;XKL~v
zp@szOO00bQK2d~4#5VN*==;Bm2c{1dQ?BeH7=^zb^T;|x;Ll&TU%YhpWSHI4#gxB)
zCPGn{;r=&&mC())-Y`P^ebzXs^{2tV{@$;fF6wp=BAQ5@_g^zq%$a<JH2)JFllkd;
zQPUy@f;|s&2p1F&T|WYfyh$Xaq$4%&s91#T0hZS09K-1LndAG5Z=Rhc1NB%Y``=$I
z!y;s~Tu^av=|JS<BIVlQJ;Ybf+$8$Wc}tr6w;`zU+vPjOomXEem4r_gZWU|yoWQ)~
zAwK=vjnX1mgaunD`h4}fRb_Dk7j?mP?4SlC*y%TNhsh-XQIF9u1t~3;=AM>8ezH&t
z{YYHNRYY9z`2c2>D{W~yuAm_+t2tw3eHMWj75UxNp`L)CC6G*BQK1ZCaff+|5Uo`a
z%~%|2MZP3z^sQ0!APp~mI<#gZ++}5bvp^23*-b&7>FM9M0uJ|_|I6NSEJ(2x1#Y6w
z!?TC^t5k#GN}tu`zJZ_dO%!fnAsy-8!Wg$=GGXzSzyEbC@cWM-#pH<8KzJ?&$Z+xq
z4)B!P!ZV*QwKoL4O>^LqbAaw6YOcPMpRs#xzMDmsbHFlu7nrl&a{3F>bZxXw(fqx7
zSGX7+`o3uD>kX*oJXA=`lXJ|Py(eUv6}57j^Pc%)sd(X=719;P6Eo`m<!@Gt&!7Qw
zZlk|H6Hv|Ylu0TC6f@@_7LywO;D;gvdEgYFsq7!7Y}U-+See?(c_=zDRonw1PLnpR
z1Vqy0ewxhJA3TA|i*6F^hTEuBSB9eb1FU|(tUpjT50s3k<ljty+R(!A2^Jj8O{bqc
z1@C$)=BvB{T0bme831~iGRT?{zL<BTG1uh5O-Mi>$=}lJn)vu95(j|WIX81bz?g>Y
zQVpBewG)cU#3w#O<xOXp*-I=XS@8cqi<pO(zFsX;<9JUv-#z)^BJr=!m&+hOE{bS*
zkpM)9HE1YQwS=j|S2_{k1viZBEkPb=Mwtck6a6U!Y`72D?<}hDFtp?V1e<U_wO_6P
znf5^+R##LyoBPk1;_>%>mp+z(Xix0*gp_RY+K+4GDv)`oBu18w=+zd*V<w7L($s7c
z43PP9@ecHPTmmJ~ztb525Fb5pBUY75#r^QxFhBJ3McZY;l{UzqbcKIw5XXh6%pHfL
z#O<%nE5~7)l3si8YSA5LD;n*Y8gl$>qI|KxLx6{yt6AJVbqFf74Md4m5BR_UHi6an
zZ|e`C8r^=G%2BREn?Kk`TbKmLqU34<(rs8<omAo^uxX4x@y^Hzp`ry$bG)=;(AO52
z@7H0HN`qgEFQp_LoPpIeO?|gtb%pff5jQ|iVrW2(gC?*IIPQ*VgXLHbN5+*NtiLn|
zE-wcdRK|*p)g@&Tx7VKL>9ou|DU{ic=6ez~@G`<C3N3yhb4v)@_`aOMJQNG_w8Y!s
zp*B`y`og(@$c8{Q_Fo1`t-3=ynyz!$0nbq~3~72V%CX4wutX><^!7_-p>%)g;pM*g
z{wk|MxgDi{P&wi!0}Bye568uiA_a}jF~=m8`rg&f(r<ZP5WYv@`XkTO@f7k#vS4Aw
zAVw++W%CbCrTA&QR(bv40o@l=KvbW`{_6YhdM()9;e%myF%}&OMY_TlFi|n^>sI(s
zSk{!9G5t9wP@{axkZxk)6<y2nIeFtKtm#93>!GWWdJ!pp{dkdR-z-2(LLdrFUtaJ{
zeT$VL5vJ%1`tQA0!9-MuN@SY>vzRZ&Ay@PEX@f*lAUA!qU^7;J2-ZNK0}v?l^4(X-
z60P4uaIS%$>{KjrLPzz)Vxp<oi<SKfnDMwUuqEb_{`cF};$OFp$IE3Ee*koXrmHac
z@~FknfFJvQnAi57I4hR_yb+}e{RB(V&K%!YrjgLkXZz3_&v6#MtWyZcxnWcvaXr#=
zHe$uh38NzNM&M2xEM$!3aXCqyLY;b2D+I}LT*o1x3C&pcQk8bdzmve12&BZ&2gslu
zMSM}|OPdcL-n3!e#iQ`a-TnH{m0DHQvHDwcpgwY-q6M<;wVeMRRS)jEy8X-Zos+R;
zr>ESdkSvq<WqU6EM^$5z0$;5#DmYD5eW=51`KGqp>z?yiL#28x*m+Z!7fHCl#fVC!
zZ-%KKEdzbU!+#keQzkxvw#cBAjNCl&&)MT8J}@<Gl_$xd5?7dSxF|RYVMQSoiT<9y
zeS#Q{=u74|9)+;I1vSvyGz%1ypZpBLDM_;O8_jDUKY0UECOV)N`f2GO;+Tjy#Zs!z
zASjGlG0o-l;}E0RA33ZP><c%C3Tvq;o5v`Mg)f_dH+Nk<NWNPe;1gpGEg!;W0bUZ9
znn+eJ{col8V>80_KtznJ3qNU47hoc%lwmQeK8@e(XUm}|z)|{&YvA8{;JRTjS1mI(
zDffFMYR7kiWut6mPGO7%$yI;<T(%2AKeSZD0enN{vX<)re^7v*Nk~TyZ`<=ySLlZf
zhehIb<O;uW-!uftbeAT3+dlN)ngf~xngf~x)#E_D7wo)DYM_kvqz{MbRwp1RC~USI
ziiDpiUFL#PW2QNXIK(X1ssuaDP1J~)mZeNbEPjvyzcnK$3G#3XC{x|rHWN`0n$(n~
zMvO&mW=<jyoZ_X)pBTi72u-*@JO;x2oLRY0pi&#sSLlnQFr$gc9?@S^41X9`v0Qy}
zO!W8Bbr6X0P(xo1-yatj^uN)J#cLl9q^n-AKCm>SDzad&e{Rc!|7{!m=7fzL4LHf}
zYl16kD*bF+SY#-ZB*sMlprU*P4RM^*#JNbSh@9c#;B_k#q_G`MjoT2R%3wYQAMw7G
znIer1^>57q%>m5;&4DU8&>#dmHFD-olISxbus`WI{4x}jq-^+J_?wk~JeWUSO57HP
zs8H38n^}*YzzZx~z=Z<S!F-`<M<al&Omjs$_Du6Lx5=Dr9t@)Cp82OWNfhi1?qd)N
zugmBcqE&#48m7(oAy>UBq9A7KNE5$sXwmJ&G`K0aV6jIBP>1>hxE^@zij2ZJ0j6{=
zjwEOX7ECaYsAgr~4AN<Wbhso$659*%<FznQ=XVr!_}6XYMQ`9)Gq^{S=78pa=78qF
zg>#@{73;$Lx@<>Kt7VOJTgpOkM2T3p-BbQ=;5wDtKp{>4d;x-I2!BXHNU#V7=GkhJ
zYMW7DQBW~x%$6t+dAw~Ow(ZLPHkGuOf6FnH_=Ff+VC;kbZ!<Jv0ytE+oGkNGccRkN
z3Z%2$fyz{bfwV`|vT5C5MuGY;6-5yRKBI6u!_CkV1ssgyVjKQVeCCdTt)yR`{n;a0
zK^Vx#sQm|kyB&yBIorPM9jCWx4rmT&4rmUP=RkRhR(@Zj_{#|bk$Ijh&cNUFv9r!F
z@tj$-AOc_yTsRzoS)HIQjBKZ1Wx$@qe@5^gg(~rlt0D=l2x&!&0WAj=rLwUfre+Y9
z)f>=}JQpnrOjSvQcFt6_K$L0Zc$q%O8qZx2l$QuUH;YbGmpJB6k&cpwMG>)+?Ge$Z
zTycI^1O*yDT+lGmG#38;{UvVT001V#Nkl<ZMF{X?9q7sM@wbFaf^iRAY`Ec=W>_#h
zdGjdY32pu-pm8yB)h=P-l9rtV<g7(vDBKEkEy#1AF$KIg(qUMIiNSoDGzY4~0ls5i
zcy4HQ(^NM(z;~O-dNQaMzb`4_e2h`zb0VYWFXH5k>EhhPYp6@q=<S^}v-j>0g21|Q
z;+tiA;7e~R{yJd*%<C2jB0+>A6NKB>fIFN9Y+(k=eS!2fRtWkl$~pD`del<nW)u9O
zDvAQ;GBwr_h+;nrp}Gszk0N4{>>d`0m;fRoO+e)(=B+a7KNaaRpCb31IpK_&|9aVO
z(FvOHO@Od$(Zo-D@y8B{wq&<MI~!?bh=wcSzu&DDUp_s<P7B~N0|9Gz@AjfI78GR!
zA)Jk@fDJ%)VlW;-EINh+A=19L6u!%M977OavIv6KeH{u*To071Zve={Dp*EWMp=KQ
zKiJn=q`ocObV%GhzMm{W!ChQP-2;$`NrStJ`Rfl#6g%5v_1~HU<v4&zo9_-|P7;7k
z{w*-iZHa|b7#2c^WuwK-ww?aFmN<ZW<c89&cV0C}&LxLV#bAECbdl;@Ok6v(2duJ1
z01XShsB;hM))HuaE#<ua@xm>3bNXwEdzE(E=mk5q=+}Q(C*e@<zIuoRZD37df*25(
zMf%>MEpJDGggLMLDBgYeI`I>V2GDQJe9yOk*(f0sS@6J^%4Lu1tB^y_g~UV1t$*!-
zY2qNTqo+Rgg}tWYi^bcKhL$1b077vhG~st~o{u5a-}!YTECh~74I3fu0bC;K5TfEK
zIKN-DTQHdILWnt?gmayPJo8bAfVU+UN#MswjAJlD$`Uu=_E&$Dg8gAYU*0&nkK_ei
z7^hLv@yQSWkk?b0P&fAf!dEM#@88Y2MAKr4MWz&XY7r#CER1dSZ_NRF9B@YP?ClU3
z3>5ti$cgsov%mdCbZ#9a?tT4NWVJ-wYofQ+A_pMXg@?Pdc>az_;+anu%j~1VqVrv<
zwKW76%%eo5O94R5%H78xoG<*`gzvp>crS4!AiGsib8U_HLi(*Yf}I5c9{*sW_{S%U
zrLUJ4xfq)AYUGH^XzS9eCJZ5gT8MJS+QX_0A5*GEKKOwY)P#RjM1MG==tn;Mp$LYC
znU57?3P4uqH>O`*kwT(cfBPFK%jgXt8%J>#0bfLJQhsfYV?Ts!hZ!#e5a--ER3F(G
z+aFsFOOPB2_{stRjv>V^;@4zp9iYD?8>>nZukTf0ufLCi1#L=^=TcdB7_k7A3C^vE
zI`4Gz|A}0<6$lJrBu3Ux{l^zFlYsg8jNE5t!0`Lulf@H^ZPjlIccWRIx$0j6Qj@sP
zG))n0ihN`ZYNB4*=GLzO>eM<^ezJ#ze-;axfp@+wtkkA*kRgEBfpvSsrL~MGQJORd
zs^S34qtXqudrP#`2CHg+x%ba|{uY@r@(vd8JCNm4pJ*^(stM8h@q(@5lRviBr=kDp
zu`=j)f5cf?l!tisZ~e6KPxo099n>4aP9aFYvk|J1W*b{%CAQ;sTf`^|D<eE2qs$di
zxKl{cyv|5DYMSQ}wkf2fETp;7@v9aM#<m1^V5*#5Dji$dn9mL2yyhHlaWRmaU{Nrl
zCh_{Xjm@3)S5#lP#_1ZmQ%br!rMm>_?v@Ve?i#wJhwhY+h9RU!KtiM$L5ZP3;?DQp
zf8w6=^I7Yxv-dvhjpzBirPqz*ViapMEt)_<A0nwG?(+9=Vb}O=f$(O^KezBKGE{OR
zX=e;-PQ-?~h&<7rgI_t)H78l2>uEX8@lA-HSCdC$^#w1h)V1lz-*xVzDX36FzHxPy
znwad4<XNL9gLc|lASa(F;tUSioMr9$Gd`<76R_x8=m}A2`?uCxh(drY7E7A5=Iy4V
zM+R3HCa$aZX9`S>oh-GdLU~c0;*jNEBNJ``84Zdgo%{0oESO^z@UeO0H+ZrM!Zaxe
z%$>potHhR6F4AWRMJGS26Gfw<*hAcV$eVH75(ofwzKBIv^5?TW663T+N3_yj1NT^@
zb#4)n)nFj(ZR4mCV5Mo;q6dk03H$HQ;J=Ll51ab@Uv1IqiTpjNIE85?F;Qkg_Rqbd
z5=sBGsbgzXHDLWzM^=x{<?IQD=fzmr)1rK|n|Ws#S&_YlI45Wb^@tERnNGF6AtJj!
zbdAxSPhFU|BnwC<kFSFkOzIQ3O67H^o-J)rAe{o3vay4O<$JvbQ*7RrNe@c4zCB8#
z^0T|t_)64N17Si}50t&W^L%j?4Fq2iWJAm_#gF%JeN(!z%J^9ig_qKg@_V(2?wTH=
z*2OV|ubL&CG4`3scbLcs|8Ok)Jbvhzpo~T8!>IP`Na@lhRJ2q)LZ7M$YPEh)*0q(i
zA6%_Q*Jzvg#iKlYa5Mh;{Dlo!kw?Z4I?SM+x5G>v@qh@e)Hft##wM#o&1#_zc14k7
z8OG|t$;BuAyn)a;msG2m&ZDgyKkd7xc{v!1`Tpk*vD%3{vL5o!bYm=t6pB;`sn7KF
zb`xVX!IaHYj5Ri>BmI5!O36L6d7mkptQ=1${-6v!K2sjFvHadCn0bC{;2kzUvkCh^
zXuaUnR(F6u&_Li*MiG-<(~ykPyf<!YUa|TU6P#kyysR=iPaYTXgG2%-50YX`9`aSt
z#E4?MQO4Af%4)n;Dj)usCZhA_zY-6!yFBR!ndkBJlG6y`K!bUa&cVRmJ~jFtt1)_t
zwaIUG&tE&!b4TA9^_(I5qs-Lt+x(+M`Sea8xY3L^WY8%dC8rPVP%Ao8?qMlPGLc7i
zM4mGV0mH^(j6OdO2zsPKZO90qq0wfEf(ddi1d&E|T+!hN4!qx|9!Iub5pzK7iuFq=
z;0Lwgucgv$AF3qVmyz2BOY$~b(iauLWgw9gu7A-GT0D)Ejoxt+%8r_?y;r!{gX{c}
zl@zOgT43}8aWQT~u>n}zbi!{$S*#qR^Ad-9*TRu5)`v;xmqnu8O_AnJxZ8)jy`II@
z!X=Y6xW?sTz_#LL+|Q?mIJtfTzmS5MY%B5yuAYiiZ6IaywIBkXnPYz!5>_Ro4p2B0
zzrel|3&3c~fUpMmq%qC_Mt-^E{n_DEkR#acA+bzIk@hcKZ!eTrH!+zK&Flk3B~_+k
zd%o;=_I964s!=NdMf1SMK15}ZTBy!?HI`~~aUwk_aR=!L&N_Q|4C0PJo}DPeXEccB
z!>z36&JX)`%~b75nMlg`UgJoi!!C&Q)q$Nw*DmWKkVt<Pm%$ZGCYQ4s`A56H2VHR4
zDO)l1{ai%)HPO4WUfm2UN~b&jk=ohcEdDWyNj;Ss1(@CdEF+!uH3Cwu8NnJtMIxks
z)qJ7$aq}KVDAZCEjD-yTRa_^=zA|-oN>9qj^#vwhd1B1US|rps&of3-z&Q!N&Tn0I
zxqGDKbUl8S##7?t|4T0(lQZ<N;)5XXizjBzkJtUiOs{Rjue_$!MFz^@b4Iqki4zXy
ziUJ!Y-D1QXy%4qGx4vOb-T<H$6QZIrlVSAd9y12*1{G_w3z_{L_4ATM&L9mwU(vKL
z#sOL3?X2mPB>@5^gp0xX6XiY2Q&Lk?BMeE1eP${ILfPvw%Smijy)qP$!kjK$b~6MN
z5z2#$Bt96)xTKTfQC3bS%FO0ViWM<hlxv6mf9ZKD>0VL&M0?7tLr9k-_H{d$Hdx?O
zn|>IfSr45DV1L*wvZrt5wByh@-id-wzQlU0u6;5lt6jqK=P#8tkB7<quW#K+l-f!X
ztxI^KZ@D@)J{b+IDs0H*J;hbK=X?RtW8%oxMnZ3f1gg-5u}Y~u4SKaVA<I4*u_Xhs
zQ1k)B+uL3PE82h_P=)X=k=SSg;l^cEBZX>BwGbF+wyni=5LnCB9ep%cp@u}spQ!l3
zDbwLdLx0?AyCp-h0}ZjR(y52zh0itRHyRmAc`Mr*I#NfpKA*I#Oi@&AwUwigvP)O7
zsjy;Gk{%}(B;z5IeIH2veYnh$aPGwx%{Lo>dd$6JB->fZix42HajPUwPQanw#$26)
zGRaSqe|7b`6`G^*uWF~CG&hOX;G96ZX^SO8IPj_McK`*|&EKZ|0|q+kek#ZS&NmhG
z#K~W;=4gfjZxTh{D$v@`KjyqMO~$W;F(X)Khqwb{hqFY06MJRRjjPj~^k~oCUZZ@T
zFoi#WEo_DHg8^F{yb1b@N>Ak-!G{ew*T0!8kF@`nLQ)<^aCG`rgVb(JPJY~eb);ls
z@dz%Um|(;}QRLdnCHD-%HmT1rl1Y-wb+9o(NRuW1pbgQ}lvN#>@P=?$Z{%X6Wn=j#
zAWf3tLmEj{BiIWw^fhp}usD}o%sRDAC0ztaCAPk4Qqyu_CwbHL^S9AipHR%bj-QtC
z6bSJcLAO*`b{K0!ZCj}$!`Z)mfL-~@Cms{hwY(IY%E;u}-FS|GV-ww)urHVL#j*+u
zIBcxvcHFQd5{n|N&3<P0kk1=4I6<Vd^3fV%Rb5v4&*^!yt_HpTDpjg;Q}$rcmytDb
zeP{)R>KX+!Q$qCRywBxKeAqdAB}>Lr%8@<s8aIg$N46;dRJ2P34$oY*Xni728mgWh
zAB{geB`;W*m-X=_^$jPgP3-)3ih7Ot?UCEAZ^ATpdbWqGc17p2_0U>}UMvu&;5??5
z+1kVJ*Bq6%<vtni&o~c!ZK#Am`|X+=%eq{2N8AUD;U#9zh|xH?(d`+M(MeS~hE0jK
z?)Z*n!5pfzs16L;!bUcu96I|Q^6qs);7q)>AR#K*cCDns-c<lrqi1$%iC|9$IdYa4
z8Y%K=8U0J&OCG!&hDF$aXYV-T@tB<Kg<Ck&UCx^c!4H(WUHF!jbbpr9aN6v@_TaGj
zmT`x8!%CN88jLHv7|uziVjrxwsz%MY*<jnl8`a%Q4a{E|yIPzbLYE4%JygC_L_Mx+
zo>u;1I9^C@w&-c9s!c5i=-ob&@(fA4zZk6BUze8tX*jU}kzd(8(JT5+VS6L-lMq<`
z@p{?%odO{#33lJxp>;f=+u-ddV_r|-NI<t1HLLrZ@9$?rUQE4^ngP}Ogi$|{jS+q2
zmr)^615saP!YNUkC79!^?llY1gAi?m)kpgvoWAr(`FOf?Nc@kVoSCAPonC6#;@{JR
z+CJm&stPP1DU7~}vsBR(B*E5ncPMR^apRXDIDS)z{<5FnLz%~6d2?U@!EDJGtje6O
z-HQ`c_R?RlDx#BFx0#m!CS63?fehXm?!#kYZWeT-p$LE@mL08A8Yi2^nj`l-AVW^g
z=0LK6{w%H~U!PEwvywRew=>+zj&7ic{j}d`B>E<+m*^LXX@!B7=A$dZ&SLoN7tp`%
zNr_|DQToNYQ&<Py?;IL}Y-K^P0OnM%l8~yq0O5Cu#F(10>IbP}RW+i5MU~JULkCqC
z1O0;r<?q6=Jg9i6WeipJ^+P<j5{OR~En7JI6ab$`9#=dWPm^I}BizTXyc{8N`cgd?
zVQ7CkZt8Y}Ag*lcI}*7xliS=yU5s`Pwob*lLi;AS=U0XOC*p*X_9JxecH0I7J_N+r
zqVJ>WTlhKY43TydJ5PdOpORghWEfiLu49dMO>c43BSytjFGAUNu`$X4)ww2gRr4)p
z0Hxq%f&i0ZUjX&~r$MuJ-ODS>Zmo1L3V;YrE{Wi@?yq2zPX=RtZQcuBuyxu^aNpfI
zS#<Chf<z+)LiusLg%rjEMZYpI&+VYul$S~C<}RsW5{N)_)R#obKWM*N6-69l;h>Wm
z1_Zw11Jd8S0j_OoIC|NpCe<55@1%YPpnIWlj2J0^G7E>{V~_;|2sFNH<Z@N@#v^?d
zS4b~{_jXdq(bkL~iFI4Q{luMGJ-v8%PK(bZ*{-ihlkpBdJY%!rY}O%QAseJlNja2%
zZ-UKv-;(Y>+IRhLC<N(#)7?9K`d4On0ngJ*%V+Rw?x~>r>W~mRw-~z7aRyQs#cVb4
zAn~$1AEp5L$LTMiOPbF@gF}tEJx;FqD#HiwlVrFrzsT!goKZ5oQ9QT>UO;irSKc^l
z4IF-T4W>u2p<Hjtx+mMIeU;fE)ttYxlpvOSC)*f>up<|#peI3U9Q6F+oPVzi2KX4R
z`!o5EY-`0RuSQOBu;$`J*b)d|@ul2dGG9vsbgEl-SF)?^&^q{7Q$4>6X|n9pIGC)h
zjP)hgz|~UqnWnhK*;4LkSA6L}IX$jDHu6ulPr8VU?L^gow-Pv1qK5wk><YsK)57<v
zb@&G(q=J-61T;P0oG9_qY3a1w(q{qzyq|P11QgT4UfyB!nGW3bC~Q8Re{$Uc&@z@p
zU)YzK^OCyT?vT~EMprewt`W0C4|2W&lbTfYgAX1FS~mg`^zVatpU$$Hf3t_~q{yqx
z&q}q#4YRDx%M5%?-}^xw8s6#Ipfc7kPI{NGy^q~lT^0R9^)UH38-;&gh#)<=nV`?+
z1j%{C9m;Jc-JTcl(98zG?g%igz4s!ikb~h1<6SEr*m=|;noXVL^I!<Y{rh!K(z{mE
z%Fmg*icp<+?X+z+8+QD!U4~R*tnKTu!_FAqu)-*-5d*X>YD2>b#mwtALi&97j&$wa
zd`||?>i1G^l0lhv-Rozcj`5`_6xc5hD!BB>NjO>ADuqlCy?H*|xchysxBldX1ewWu
zZ0&qFwZzOFSNos6J0D{?oAz<u&5duK_9SqDoGV`W)7qbav+zyNvcF<ARmoxNwCS&N
z)aR4*=|-auiFl;4qN(W{AlQZz#l7=f7(B6f-~Xv{0DrIJ^$NsESG56YnPI&Yz&}}*
zF$Rp})@JyCNBX_cHrOzZMW9Vt?ve2=v=#=nY`Ev^K>U;x!4{m6`QB8Amta220k~`y
z@6G45@`B2RX9<jDD6~2KDzXo)aC0bfW$#>IG9i#>mh|=R)I}C$fQQsAt4zp@bxvkb
zf-9!8a?z%jp!YznmFV{Fb<j9guz!UAvbX>f`x_(5-O!+s#a`yHm&a?rtO*C)x##I6
z;eAwxoYDR9PSUED1fSsi6+3@=JM_Q=cFkoAR{x}#>yB699ERI~u-kV^aFZV%HmGqg
zuie3|D1fr|{0suOyBy&d{d^Z}I{i)x)fMeeEVV=yT@z?78sXDceWGtHb)<a-cRB=*
zMk$rj&pX^}5^mdF=;Ljk5st%m8uck1FqV?>K~&+RCCH3%scHcLRCoU-csKJxNyu{Q
zJIL9hReD@N%JECtVyK6POQn)tAe8!mgJ;wL*us=6KxX;35Q2ZeZrZfX)Yf@|lZ4-_
zbCfNn@gVjWS@y<(d9d92+TtHyPL%{8O-$SM!2X;IEPYS`^m?)LbBMlbKPBJ^ByHD+
zFR`0EkH>{9Aswg}0!#!h4l1!b>q1t02KZjw_whLjNt9yUHou&TnMs3y0pA}q(Wx23
z=if=*gW48bt;e2b9eln$Rt$E9O&2AU%9mGei^Ma~xX}pS%T)r!WQjPI_KfB7&-LDL
z>P~ze`4o9{QH{}j8Anmd?C4V6yp{_Db7)R+s$EkH{;rcRTSD3|l3^|q@xCa5On$@o
z#Gp-C$Me(8L)w>%VHY$m?U@2A`pB{$V0GfKE%-<zSIEt)#)D?Zhu<VbjL5A*ew~Bb
zP1fWB$x9)p>s$72om(AuqegB?T~)cwOWToP<cm!XbE$S`vy_5Lpq)I(+Tz72sc|4K
zd`^DAaX<976YjvWQ>_y0W3RHL=Cm>+AUGyxI!_!7pcM@xwJ6`jm(O%|?cFKv=!nLM
z^UIQrcP6KuQ4pvo{!y!P3w2TID;r8Fw!*h2Z4~%&y2i7`g@R*KPsx=(8@@1hli`v1
z>NLjJ7VI3l<9y)7lq2HYJ3AIYqkgWQcr&SZbPR<uY9%Gai5@jOM~`z&g&3hP7Q(lG
zXR=EDgk{!tG>yFC$Ah*!P(?*PRz?gSl>Cw0yK4fMo7|bOf^m~x`MT=0DLn#(GqVC?
zp?r!<{7z)<8c&0k`EjS}2K;syot|0DydOn(Q}RCY_j~b&??V?>fz$eTad))D>qeT8
zk8@$l*KX*qUphpeo^>y+@BbuktI;K7)K)8{Mh-F_wL938S;-|30|&dc7iU#6d9)sG
zqRkM9r(ngw1j}n2kKBRI-?|-nF)YQy{u0CnDE|A~^<xtrkqDvZA{V>OS4LJy%nt59
zej*%l7fo=2+MswH`kZkm+OoZ_&Cp-2SC`)Dg+zMFEEW>7+w(5Q0d{vu`x#RzwB!fS
z9-A*-1BtQAxAE#+PUW7!(H_tKCE8HL99b0~>jgaP_VocSIc73~FZdf!oTy1_PvVHD
zwaj;Or4HdoF1qj|8@CsG+V=DnBT0)isaAW6l8lSE;%O=trHX4xH0)BHi@zr=af(Z5
z!Eji8#Zt+?vHwl*Q!Z3yh<^exxjg{G@2jmcm4&I;sPKN#LMSO`H3YURH<s<m4VT09
z$>^SM_vUzxjh+~eGmy8W{^KEo|M<rOk)(|{!F$9ZOw(0T{GXZa!!OHCkaVB(cu(=E
zimUw!PfF#qSgirZ#cr$W+le)fsX1)qwDa4X-!1be;Z0B^mRTfT@H1~9%q%{AW}O7@
zn<+xFXzI(ad#?dO(=GrezQE)S*~0uAp0luhX!{jaIPZ|}TO{ob+b4i9weVRzY}-u7
z=kVj(LOwAsIH;i(Ks_}PBSqG`F?;7fS=o?4<k3~~L9kv6zoE_Y#x%5Jlv-!+?5le%
z_MYt$d-agMDhc*tvuAyK2c?rIeSfXhUvHP%i6?FI5hFJXv#GTPE0TB*iAg@0EVhX8
zWJl}|=Jfl2%|^KDIOGQe_nolxs?AVZco*91;~mMKoc|%ds+<-$2q<NeTI*bZrQI{N
z<KZp3x2h;Th{$fZ413SRu*^{|L2xOGu#o0)u+<|oJBc9(Z<`lssfzpJ&pE-LHqj{=
zYsx~L&yRtKTXj4YJX>l>E97e<`i#3|=;gjU-1ixSCN|sgcA^Ir;r!<3N=2>+Wr8GL
z^&tnv+e|+zHdd#G9=MP1j`^ifief0tzThBM3Ave9h!utU@GZ0#lMsY**Rdva?hYps
z#)wht7S#1ugk9hE%|u4$zf$;4@3@#^Y|n_D@Q=866>>5ki|&T#+3@$mvDju%2S0wB
z7s#C%iTzF$lYv($^PHUv&a-Dq+CkejTL$Yj#k&Qn_q4@=<+j06%;;Eta3P61Xqee4
z%u!sudv$~#CzXhpaRt*=rBou4(vC!Y{cAcwdCdF2ka{)-R}j+#UlUH3A~nwl<0#HB
z2^>lo?pEAAcs(;N{{#%zxP2zSIh1p;E;?30!^GevVPsq<Fka~LjJq`dW_Elc56+YB
z$s9_udXz$7UCC;z!^mt9waVUr!fF)?RI{R3|9<y!&bhAtw4#jb$t^rTnRh~YfxD~6
z4A^42{as{5hP#e?L2h23H~-7(WK{Twp1&t%#1q@De7&Ec;yf)u5gS5>fIPQ^y=s+?
z^{2}cTgOu%Jvu#}eW>X9(3X0fSGal&_H<|dscIIml_r>F`GZy_%whTjW;1VIY)h`(
zdZYc8!O}2CsK&~WP2Qf0>KJdBT-MH*B3=PXV<|BhS@;$mLJ&ilZ%Yccz)&5{-5@*b
z8VM-;?VP$_!*3%oF<#q~|83(Wv=EtW6j7j>6vY>6s%bzOr*e2y0ADOV<4o8niOjyI
zE|>a-NOSlx@=SDu!{Qv@0jPb}O3@cN35}N}D`0Wf)E+@y-Dx#Ea{9?8@%}ps*t*qB
z6tc!DNV25YlAh{RSo*F`niKWc6b<^>)tRU9oLW~?lSf+oF<VW>3FtTkS5&9fH2Ert
z3v3KM=X$+dU*9ehq3<IH0@=XE#JO0vXraB2dvJ7WDsn(PD^+_V*gnd<IGJ$Fgn7+6
z7SB)Q(BG#sNVe6o=u2Ht^TM_(J)L8D!dPed76EDj56C?6_@itgAbLU)KS4e#i1~vF
zTKR{iGf)j!E@Fk(D2?DRanEwAv(^x~O`79*+A~w*?nr_tMWX85#QHSi;3&i?z&Avw
z3=h)*HoSQSehg)?lc*lo_SL?x*P|$e8KWjv4~OKxP<1=?=1X{6PX^?BH{yZ=j}w*<
zo^lR^yZk{%^JFbLAK>`nws;`Mjj(<9x3<1~?pU!w9exu_-)LwA%TYl^Mb!Q1p4<^v
zy;$t_<);EGk<Xm2Pa4M2gh|iOfCwiG%Q?I7+q7!C!-Q9^EhY<uTEstSc*>OzA(h|o
zdFfFQggB>raP<oZEd~KcPz@PH;fy-Y7(=@z>(x{HJ_Yp%Ti&fEl(yza&?DAjoNilf
z0Lmf3zb_ul4MZgJ6?ezWAEFMP5Q#-0*(2s<LNzL^V{Omk*~Jlv;Tp%rg8~|RkngWA
z7%r^Rw`a8N8gHK;3tf_t4R-g_i%&B@ljh`<5Jq;?lBH_23{x4H+SUa>AAK*?%YIdk
zuzkD;XlNlzr$6~ccas43fk>h^G7QJGo}^?iKK(Q^K@%I|jc?P4WF`8m418n0UhdOv
z99BJBLfQ~5X2`2p8TL5Ldm*hjB#+Djp(OatEYDHG-$T{ux4fm;e59Ix6mBwLSv@NG
zx}r7=uM&7ouqO8TA|cvK)8}P?S<aM`W{_m?mByKq%`k$FqA6n~yIhohw0FJ@=fIMn
z;W-PuafFdS7QH*hf?cFCdT|3>kR206!p&+56a7aJE0|6sU+;c7+i%`ShrNsu@O@~#
zIt%RUp^I&1OFyd@NraFL!>dy!=>Lu?A|vpzOh0c5vf&!VwoDPeA+@_Ya#V;OZH*7}
zKXl~@K3*nBJ(b|+Z^vJflJ0i@b6L?cb*n*QvAEH2XC^Fcar_4khfP418t%O$qyV!J
z+T2yu)Cj;z<;+75BtdUQhKkYf-bhZL9KdW+oHm3eC=bjUEybNb+(nnUr&)awsJ*l`
z%}F>4q|M)9`^<KoeZd@3A?G>ToXo(mfm#-T%|_aqirNXbM4@?kJl{Ja8_dv8dHI{q
zy?33uhp)_;i=IE0<fFTn2cDdC0|J54kpQT=a*Ar<A%$~QjAWRw8hf#0+*8xyIvo6+
z>mT_rsyHW`no0jy0Z)`;kW=D@ATUqapbw)J2?_fgSC^Ohk_!*9BUT#mdy=|(^93bY
zSw#Ei(DOg`^H+DiQvi*wN3+aMV(iL!LLox~VcW&Rfo$%A=D0Fp26@?XE)W2*n^j`!
z2;Ilx7|ODzlcAy5>8uSd)%f}+Mvlj)8XIN)a)MB=mOX9hD^C$J9FQ9%szgleSaT-s
zb9B8i9uxEZHxn7{O@(v0#i#+6mu^syiBm_lX3#(JBf*9CKC!Wzn%H2>@av&MWD@UT
z0<}P%$*c#k*l{p0mgWVynM;XRpgao;Mf0*z{A~_8$V!C12er&Kmf)<JyTCmS{44CJ
zD7TkX1ie4NX}f3IiF+u!XeW^8_9ylpBR(!YPj}ggsV1_YnVQt{icjDe=ju8iR>NQ=
za?Se~9u2tb0&D}!zX(~nAB7#l$=3i!qsQGAB{fu3RPY7%sjPKwGh&)?WUK*;VVQD%
zXKZVR6#ip7#~}h_5%q||75#gGMooYAMQf}4_Tk}?x5X~Cd{rc?YLO4Q3d??AN)*lJ
zB0on%8J#rGhKW(g_>8eAnz()UE#DzYg%8<az;$BItX5D47llFm>ux9m?v<><#%71`
z@^1N$rSfuN0SkVzsow~?eNLz8>FXMA51>`!+|oYmHufeaF4QsNmcq>yh?5Mc65-H&
zAFnWC>NSMv?A%<movXbqcZYb+aA=f47_OMsS#`h7EVmZvEZ>vhDtRedz|akoIRd(q
zyE5!!B&X1>$2WHOWAePs*}`=FbkYuHhNs`>V#daL<g8Q91cK~%*Bvu~69(c}ZZ<N-
z$)7)e?j8!y(t0ykvSn^Q(A?P<a3@?)Y$5}w{7!ZgL+NZs!)>7pI*>_(jbpW7#B^8j
zO8+X%3X*&$1XBreG5Kg<fMz&HyyrrqIWkWM<e}3^>$E~AQcJ`_or^e|``qn*dUOn#
zS)c3p49Zf*%W5z*%!-!B?^khO3oqHz3F?1=GrOj!WomP~5T;@&a`&DpD`pQEjgO~U
z_`eI-3h+aIt3!(_h|%Zyo-~uKVxwsO9n2`~o}~bRSy{SP$)sFCeLcbcp5DGL4&JQ+
z`Hcnw%p&Ocpc*$a^uO}DTYCuS8IP<!yhAJJeL@@J;*^qq43ekyQZfe~9#9|Z)+wA5
zGLnI#o(~_Eem2MS5nia7I##kv7pjR4J7&mzt`j+%pP!FJL_}=*`BQSEH!z?x(h4u8
z?iWrL07|bR5|oBWD=0*Yo3Fvj>L?4z7HX+&r4x83^q>I;mQq7X#3mOXCj%8ReP60Q
zisc4Amh1u?)W4xk<RvvYM3n^Z@9RJA3ZLyK*TtZQx!{y&)PgF{vii39nJUuKx|;E3
zSj!$hZ;1Z4GafRRpkT6e+QTbIGAr*`T()0&p#+rF1ZicGXviG4OAR_=yur53V*ZbI
zinw1?enc_P0$-PsT@fh7ysV2>-nYWS-)#fbUJ{n9gGM2+?1&op37O3K(quKstm&7J
zJQ3U^bR!)OnvyU4@$dl_yAPPiOWRiJ$cLeVxi!&nJ=1pMS7mR?J)t3EfpMG5lF_B`
z3NIxMx@fpI6*L|T1xn6NP~@oh7Z+OY?bGMgJ~?=$GNAW#q^=Y>@8R-S?P9+M{&sLo
z{|!IvGaR!)G4#;A;kbO(W}HQX>-lC^a$IaebV0jZ`wDyWKa|@?YHc+{C;^uLJkQD4
z(2At4R;_Jt*DN&T_+AJ8IBhtU<(GO=45w!J7=RH^nE{oM-4xovk0<sYdC7t?xfSO4
zPBvK=S0q8ue05L8Yqk??^kwQXL<%T5md{Ohn`UpM<<v}tg}A?!<orE6YJS9nf4f=4
zn-3K5-GUaf-WBG2dqnYWa#?)y2J?g!eYwcy$zX_s+FNswS7_ZZ7I{?yo=*y(*N4<`
zU)@t)9^X)ZPd{%S6lO%fmb5*Hdub9Y`+sq33sB#OhpxnGY(K6)BET<IMJ<J9IjgAu
E0c$=fmH+?%

diff --git a/docs-src/docs/quantization.md b/docs-src/docs/quantization.md
index 738be35..366d12c 100644
--- a/docs-src/docs/quantization.md
+++ b/docs-src/docs/quantization.md
@@ -35,27 +35,39 @@ The result of multiplying two \(n\)-bit integers is, at most, a \(2n\)-bit numbe
 ## "Conservative" Quantization: INT8
 
 In many cases, taking a model trained for FP32 and directly quantizing it to INT8, without any re-training, can result in a relatively low loss of accuracy (which may or may not be acceptable, depending on the use case). Some fine-tuning can further improve the accuracy ([Gysel at al., 2018](#gysel-et-al-2018)).  
-As mentioned above, a scale factor is used to adapt the dynamic range of the tensor at hand to that of the integer format. This scale factor needs to be calculated per-layer per-tensor (. The simplest way is to map the min/max values of the float tensor to the min/max of the integer format. For weights and biases this is easy, as they are set once training is complete. For activations, the min/max float values can be obtained "online" during inference, or "offline".
+As mentioned above, a scale factor is used to adapt the dynamic range of the tensor at hand to that of the integer format. This scale factor needs to be calculated per-layer per-tensor. The simplest way is to map the min/max values of the float tensor to the min/max of the integer format. For weights and biases this is easy, as they are set once training is complete. For activations, the min/max float values can be obtained "online" during inference, or "offline".
 
 - **Offline** means gathering activations statistics before deploying the model, either during training or by running a few "calibration" batches on the trained FP32 model. Based on these gathered statistics, the scaled factors are calculated and are fixed once the model is deployed. This method has the risk of encountering values outside the previously observed ranges at runtime. These values will be clipped, which might lead to accuracy degradation.
 - **Online** means calculating the min/max values for each tensor dynamically during runtime. In this method clipping cannot occur, however the added computation resources required to calculate the min/max values at runtime might be prohibitive.
 
-It is important to note, however, that the full float range of an activations tensor usually includes elements which are statistically outliers. These values can be discarded by using a narrower min/max range, effectively allowing some clipping to occur in favor of increasing the resolution provided to the part of the distribution containing most of the information. Statistical measures can be used to intelligently select where to clip the original range in order to preserve as much information as possible ([Migacz, 2017](#migacz-2017))  
+It is important to note, however, that the full float range of an activations tensor usually includes elements which are statistically outliers. These values can be discarded by using a narrower min/max range, effectively allowing some clipping to occur in favor of increasing the resolution provided to the part of the distribution containing most of the information. Statistical measures can be used to intelligently select where to clip the original range in order to preserve as much information as possible ([Migacz, 2017](#migacz-2017)).  
 
-Another possible optimization point is **scale-factor scope**. The most common way is use a single scale-factor per-layer
+Another possible optimization point is **scale-factor scope**. The most common way is use a single scale-factor per-layer, but it is also possible to calculate a scale-factor per-channel. This can be beneficial if the weight distributions vary greatly between channels.
 
 ## "Aggressive" Quantization: INT4 and Lower
 
 Naively quantizing a FP32 model to INT4 and lower usually incurs significant accuracy degradation. Many works have tried to mitigate this effect. They usually employ one or more of the following concepts in order to improve model accuracy:
 
-- **Training / Re-Training**: For INT4 and lower, training is required in order to obtain reasonable accuracy. This means training with quantization of weights and activations "baked" into the training procedure. This is not straight forward, since quantization operations are usually not differentiable. This is usually worked-around by using "straight-through estimator" ([Bengio, 2013](#bengio-et-al-2013)) to approximate the gradient of these operations.  
-[Zhou S et al., 2016](#zhou-et-al-2016) have shown that bootstrapping the quantized model with trained FP32 weights leads to higher accuracy, as opposed to training from scratch. Other methods *require* a trained FP32 model, either as a starting point ([Zhou A et al., 2017](#zhou-et-al-2017)), or as a teacher network in a student-teacher training setup ([Mishra and Marr, 2018](#mishra-and-marr-2018)).
+- **Training / Re-Training**: For INT4 and lower, training is required in order to obtain reasonable accuracy. The training loop is modified to take quantization into account. See details in the [next section](#training-with-quantization).  
+[Zhou S et al., 2016](#zhou-et-al-2016) have shown that bootstrapping the quantized model with trained FP32 weights leads to higher accuracy, as opposed to training from scratch. Other methods *require* a trained FP32 model, either as a starting point ([Zhou A et al., 2017](#zhou-et-al-2017)), or as a teacher network in a knowledge distillation training setup ([Mishra and Marr, 2018](#mishra-and-marr-2018)).
 - **Replacing the activation function**: The most common activation function in vision models is ReLU, which is unbounded. That is - its dynamic range is not limited for positive inputs. This is very problematic for INT4 and below due to the very limited range and resolution. Therefore, most methods replace ReLU with another function which is bounded. In some cases a clipping function with hard coded values is used ([Zhou S et al., 2016](#zhou-et-al-2016), [Mishra et al., 2018](#mishra-et-al-2018)). Another method learns the clipping value per layer, with better results ([Choi et al., 2018](#choi-et-al-2018)). Once the clipping value is set, the scale factor used for quantization is also set, and no further calibration steps are required (as opposed to INT8 methods described above).
 - **Modifying network structure**: [Mishra et al., 2018](#mishra-et-al-2018) try to compensate for the loss of information due to quantization by using wider layers (more channels). [Lin et al., 2017](#lin-et-al-2017) proposed a binary quantization method in which a single FP32 convolution is replaced with multiple binary convolutions, each scaled to represent a different "base", covering a larger dynamic range overall.
 - **First and last layer**: Many methods do not quantize the first and last layer of the model. It has been observed by [Han et al., 2015](#han-et-al-2015) that the first convolutional layer is more sensitive to weights pruning, and some quantization works cite the same reason and show it empirically ([Zhou S et al., 2016](#zhou-et-al-2016), [Choi et al., 2018](#choi-et-al-2018)). Some works also note that these layers usually constitute a very small portion of the overall computation within the model, further reducing the motivation to quantize them ([Rastegari et al., 2016](#rastegari-et-al-2016)). Most methods keep the first and last layers at FP32. However, [Choi et al., 2018](#choi-et-al-2018) showed that "conservative" quantization of these layers, e.g. to INT8, does not reduce accuracy.
 - **Iterative quantization**: Most methods quantize the entire model at once. [Zhou A et al., 2017](#zhou-et-al-2017) employ an iterative method, which starts with a trained FP32 baseline, and quantizes only a portion of the model at the time followed by several epochs of re-training to recover the accuracy loss from quantization.
 - **Mixed Weights and Activations Precision**: It has been observed that activations are more sensitive to quantization than weights ([Zhou S et al., 2016](#zhou-et-al-2016)). Hence it is not uncommon to see experiments with activations quantized to a higher precision compared to weights. Some works have focused solely on quantizing weights, keeping the activations at FP32 ([Li et al., 2016](#li-et-al-2016), [Zhu et al., 2016](#zhu-et-al-2016)).
 
+## Training with Quantization
+
+As mentioned above, in order to minimize the loss of accuracy from "aggressive" quantization, many methods that target INT4 and lower involve training the model in a way that considers the quantization. This means training with quantization of weights and activations "baked" into the training procedure. The training graph usually looks like this:
+
+![Training with Quantization](imgs/training_quant_flow.png)
+
+A full precision copy of the weights is maintained throughout the training process ("weights_fp" in the diagram). Its purpose is to accumulate the small changes from the gradients without loss of precision (Note that the quantization of the weights is an integral part of the training graph, meaning that we back-propagate through it as well). Once the model is trained, only the quantized weights are used for inference.  
+In the diagram we show "layer N" as the conv + batch-norm + activation combination, but the same applies to fully-connected layers, element-wise operations, etc. During training, the operations within "layer N" can still run in full precision, with the "quantize" operations in the boundaries ensuring discrete-valued weights and activations. This is sometimes called "simulated quantization".  
+
+### Straight-Through Estimator
+An important question in this context is how to back-propagate through the quantization functions. These functions are discrete-valued, hence their derivative is 0 almost everywhere. So, using their gradients as-is would severly hinder the learning process. An approximation commonly used to overcome this issue is the "straight-through estimator" (STE) ([Hinton et al., 2012](#hinton-et-al-2012), [Bengio, 2013](#bengio-et-al-2013)), which simply passes the gradient through these functions as-is.  
+
 ## References
 <div id="dally-2015"></div>
 **William Dally**. High-Performance Hardware for Machine Learning. [Tutorial, NIPS, 2015](https://media.nips.cc/Conferences/2015/tutorialslides/Dally-NIPS-Tutorial-2015.pdf)
@@ -72,9 +84,6 @@ Naively quantizing a FP32 model to INT4 and lower usually incurs significant acc
 <div id="migacz-2017"></div>
 **Szymon Migacz**. 8-bit Inference with TensorRT. [GTC San Jose, 2017](http://on-demand.gputechconf.com/gtc/2017/presentation/s7310-8-bit-inference-with-tensorrt.pdf)
 
-<div id="bengio-et-al-2013"></div>
-**Yoshua Bengio, Nicholas Leonard and Aaron Courville**. Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation. [arxiv:1308.3432, 2013](https://arxiv.org/abs/1308.3432)
-
 <div id="zhou-et-al-2016"></div>
 **Shuchang Zhou, Zekun Ni, Xinyu Zhou, He Wen, Yuxin Wu and Yuheng Zou**. DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients. [arxiv:1606.06160](https://arxiv.org/abs/1606.06160)
 
@@ -101,3 +110,9 @@ Naively quantizing a FP32 model to INT4 and lower usually incurs significant acc
 
 <div id="zhu-et-al-2016"></div>
 **Chenzhuo Zhu, Song Han, Huizi Mao and William J. Dally**. Trained Ternary Quantization. [arxiv:1612.01064](https://arxiv.org/abs/1612.01064)
+
+<div id="bengio-et-al-2013"></div>
+**Yoshua Bengio, Nicholas Leonard and Aaron Courville**. Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation. [arxiv:1308.3432, 2013](https://arxiv.org/abs/1308.3432)
+
+<div id="hinton-et-al-2012"></div>
+**Geoffrey Hinton, Nitish Srivastava, Kevin Swersky, Tijmen Tieleman and Abdelrahman Mohamed**. Neural Networks for Machine Learning. [Coursera, video lectures, 2012](https://www.coursera.org/learn/neural-networks)
diff --git a/docs-src/docs/schedule.md b/docs-src/docs/schedule.md
index 18e97cb..0089277 100755
--- a/docs-src/docs/schedule.md
+++ b/docs-src/docs/schedule.md
@@ -1,17 +1,16 @@
 # Compression scheduler
-In iterative pruning, we create some kind of pruning regimen that specifies how to prune, and what to prune at every stage of the pruning and training stages. This motivated the design of ```CompressionScheduler```: it needed to be part of the training loop, and to be able to make and implement pruning, regularization and (later) quantization decisions.  We wanted to be able to change the particulars of the compression schedule, w/o touching the code, and settled on using YAML as a container for this specification.  We found that when we make many experiments on the same code base, it is easier to maintain all of these experiments if we decouple the differences from the code-base.  Therefore, we added to the scheduler support for learning-rate decay scheduling because, again, we wanted the freedom to change the LR-decay policy without changing code.  
+In iterative pruning, we create some kind of pruning regimen that specifies how to prune, and what to prune at every stage of the pruning and training stages. This motivated the design of ```CompressionScheduler```: it needed to be part of the training loop, and to be able to make and implement pruning, regularization and quantization decisions.  We wanted to be able to change the particulars of the compression schedule, w/o touching the code, and settled on using YAML as a container for this specification.  We found that when we make many experiments on the same code base, it is easier to maintain all of these experiments if we decouple the differences from the code-base.  Therefore, we added to the scheduler support for learning-rate decay scheduling because, again, we wanted the freedom to change the LR-decay policy without changing code.  
 
 ## High level overview
-Let's briefly discuss the main mechanisms and abstractions: A schedule specification is composed of a list of sections defining instances of Pruners, Regularizers, LR-scheduler and Policies.
+Let's briefly discuss the main mechanisms and abstractions: A schedule specification is composed of a list of sections defining instances of Pruners, Regularizers, Quantizers, LR-scheduler and Policies.
 
-  -  Pruners and Regularizers are very similar: they implement either a Pruning algorithm or a Regularization algorithm.  
+  - Pruners, Regularizers and Quantizers are very similar: They implement either a Pruning/Regularization/Quantization algorithm, respectively. 
   - An LR-scheduler specifies the LR-decay algorithm.  
 
 These define the **what** part of the schedule.  
 
-The Policies define the **when** part of the schedule: at which epoch to start applying the Pruner/Regularizer/LR-decay, the epoch to end, and how often to invoke the policy (frequency of application).  A policy also defines the instance of Pruner/Regularizer/LR-decay it is managing.
-<br>
-The CompressionScheduler is configured from a YAML file or from a dictionary, but you can also manually create Policies, Pruners and Regularizers from code.
+The Policies define the **when** part of the schedule: at which epoch to start applying the Pruner/Regularizer/Quantizer/LR-decay, the epoch to end, and how often to invoke the policy (frequency of application).  A policy also defines the instance of Pruner/Regularizer/Quantizer/LR-decay it is managing.  
+The CompressionScheduler is configured from a YAML file or from a dictionary, but you can also manually create Policies, Pruners, Regularizers and Quantizers from code.
 
 ## Syntax through example
 We'll use ```alexnet.schedule_agp.yaml``` to explain some of the YAML syntax for configuring Sensitivity Pruning of Alexnet.
@@ -53,9 +52,9 @@ There is only one version of the YAML syntax, and the version number is not veri
 ```
 version: 1
 ```
-In the ```pruners``` section, we define the instances of pruners we want the scheduler to instantiate and use.<br>
-We define a single pruner instance, named ```my_pruner``` of algorithm ```SensitivityPruner```.  We will refer to this instance in the ```Policies``` section.<br>
-Then we list the sensitivity multipliers, \\(s\\), of each of the weight tensors.<br>
+In the ```pruners``` section, we define the instances of pruners we want the scheduler to instantiate and use.  
+We define a single pruner instance, named ```my_pruner```, of algorithm ```SensitivityPruner```.  We will refer to this instance in the ```Policies``` section.  
+Then we list the sensitivity multipliers, \\(s\\), of each of the weight tensors.  
 You may list as many Pruners as you want in this section, as long as each has a unique name.  You can several types of pruners in one schedule.
 
 ```
@@ -73,7 +72,7 @@ pruners:
       'classifier.6.weight': 0.6
 ```
 
-Next, we want to specify the learning-rate decay scheduling in the ```lr_schedulers``` section.  We assign a name to this instance: ```pruning_lr```.  As in the ```pruners``` section, you may use any name, as long as all LR-schedulers have a unique name.  At the moment, only one instance of LR-scheduler is allowed.  You can use any LR-scheduler class that ```torch.optim.lr_scheduler``` supports and pass their arguments.  The keyword arguments (kwargs) are passed directly to the constructor of the subclasses of [_LRScheduler](http://pytorch.org/docs/master/_modules/torch/optim/lr_scheduler.html), so that as new LR-schedulers are added to ```torch.optim.lr_scheduler```, they can be used without changing the application code.
+Next, we want to specify the learning-rate decay scheduling in the ```lr_schedulers``` section.  We assign a name to this instance: ```pruning_lr```.  As in the ```pruners``` section, you may use any name, as long as all LR-schedulers have a unique name.  At the moment, only one instance of LR-scheduler is allowed.  The LR-scheduler must be a subclass of PyTorch's [\_LRScheduler](http://pytorch.org/docs/master/_modules/torch/optim/lr_scheduler.html).  You can use any of the schedulers defined in ```torch.optim.lr_scheduler``` (see [here](https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate)).  In addition, we've implemented some additional schedulers in Distiller (see [here](https://github.com/NervanaSystems/distiller/blob/master/distiller/learning_rate.py)). The keyword arguments (kwargs) are passed directly to the LR-scheduler's constructor, so that as new LR-schedulers are added to ```torch.optim.lr_scheduler```, they can be used without changing the application code.
 
 ```
 lr_schedulers:
@@ -82,7 +81,7 @@ lr_schedulers:
      gamma: 0.9
 ```   
 
-Finally, we define the ```policies``` section which defines the actual scheduling.  A ```Policy``` manages an instance of a ```Pruner```, ```Regularizer```, or ```LRSchedule```, by naming the instance.  In the example below, a ```PruningPolicy``` uses the pruner instance named ```my_pruner```: it activates it at a frequency of 2 epochs (i.e. every other epoch), starting at epoch 0, and ending at epoch 38.  
+Finally, we define the ```policies``` section which defines the actual scheduling.  A ```Policy``` manages an instance of a ```Pruner```, ```Regularizer```, `Quantizer`, or ```LRScheduler```, by naming the instance.  In the example below, a ```PruningPolicy``` uses the pruner instance named ```my_pruner```: it activates it at a frequency of 2 epochs (i.e. every other epoch), starting at epoch 0, and ending at epoch 38.  
 ```
 policies:
   - pruner:
@@ -238,3 +237,43 @@ policies:
     frequency: 1
 
 ```
+
+## Quantization
+
+Similarly to pruners and regularizers, specifying a quantizer in the scheduler YAML follows the constructor arguments of the `Quantizer` class (see details [here](design.md#quantization)).
+Let's see an example:
+
+```
+quantizers:
+  dorefa_quantizer:
+    class: DorefaQuantizer
+    bits_activations: 8
+    bits_weights: 4
+    bits_overrides:
+      conv1:
+        wts: null
+        acts: null
+      relu1:
+        wts: null
+        acts: null
+      final_relu:
+        wts: null
+        acts: null
+      fc:
+        wts: null
+        acts: null
+```
+
+- The specific quantization method we're instantiating here is `DorefaQuantizer`.
+- Then we define the default bit-widths for activations and weights, in this case 8 and 4-bits, respectively. 
+- Then, we define the `bits_overrides` mapping. In this case, we choose not to quantize the first and last layer of the model. In the case of `DorefaQuantizer`, the weights are quantized as part of the convolution / FC layers, but the activations are quantized in separate layers, which replace the ReLU layers in the original model (remember - even though we replaced the ReLU modules with our own quantization modules, the name of the modules isn't changed). So, in all, we need to reference the first layer with parameters `conv1`, the first activation layer `relu1`, the last activation layer `final_relu` and the last layer with parameters `fc`.
+- Specifying `null` means "do not quantize".
+- Note that for quantizers, we reference names of modules, not names of parameters as we do for pruners and regularizers.
+- We can also reference **groups of layers** in the `bits_overrides` mapping. This is done using regular expressions. Suppose we have a sub-module in our model named `block1`, which contains multiple convolution layers which we would like to quantize to, say, 2-bits. The convolution layers are named `conv1`, `conv2` and so on. In that case we would define the following:
+
+```
+bits_overrides:
+  block1.conv*:
+    wts: 2
+    acts: null
+```
diff --git a/docs-src/docs/usage.md b/docs-src/docs/usage.md
index 507fc6f..b659472 100755
--- a/docs-src/docs/usage.md
+++ b/docs-src/docs/usage.md
@@ -107,14 +107,20 @@ For more details on the example schedules, you can refer to the coverage of the
     - Filter-wise pruning sensitivity-analysis:
       - ResNet20 (CIFAR10)
       - ResNet56 (CIFAR10)
+<br><br>
 * **examples/sensitivity-pruning**:
     - AlexNet sensitivity pruning with Iterative Pruning
     - AlexNet sensitivity pruning with One-Shot Pruning
-
+<br><br>
 * **examples/ssl**:
     - ResNet20 baseline training (CIFAR10 dataset)
     - Structured Sparsity Learning (SSL) with layer removal on ResNet20
     - SSL with channels removal on ResNet20
+<br><br>
+* **examples/quantization**:
+    - AlexNet w. Batch-Norm (base FP32 + DoReFa)
+    - Pre-activation ResNet20 on CIFAR10 (base FP32 + DoReFa)
+    - Pre-activation ResNet18 on ImageNEt (base FP32 + DoReFa)
 
 
 ## Experiment reproducibility
@@ -135,8 +141,8 @@ The ```sense``` command-line argument can be set to either ```element``` or ```f
 
 There is also a [Jupyter notebook](http://localhost:8888/notebooks/sensitivity_analysis.ipynb) with example invocations, outputs and explanations.
 
-## Quantization
-Currently Distiller support 8-bit quantization only (quantization of lower precision data types will follow shortly) which does not require training, so any model (whether pruned or not) can be quantized.<br>
+## "Direct" Quantization Without Training
+Distiller supports 8-bit quantization of trained modules without re-training (using [Symmetric Linear Quantization](algo_quantization.md#symmetric-linear-quantization)). So, any model (whether pruned or not) can be quantized.  
 Use the ```--quantize``` command-line flag, together with ```--evaluate``` to evaluate the accuracy of your model after quantization.  The following example qunatizes ResNet18 for ImageNet:
 ```
 $ python3 compress_classifier.py -a resnet18 ../../../data.imagenet  --pretrained --quantize --evaluate
diff --git a/docs/algo_quantization/index.html b/docs/algo_quantization/index.html
index b14f5a1..238d053 100644
--- a/docs/algo_quantization/index.html
+++ b/docs/algo_quantization/index.html
@@ -104,6 +104,10 @@
     
         <ul>
         
+            <li><a class="toctree-l4" href="#dorefa">DoReFa</a></li>
+        
+            <li><a class="toctree-l4" href="#wrpn">WRPN</a></li>
+        
             <li><a class="toctree-l4" href="#symmetric-linear-quantization">Symmetric Linear Quantization</a></li>
         
         </ul>
@@ -166,6 +170,48 @@
             <div class="section">
               
                 <h1 id="quantization-algorithms">Quantization Algorithms</h1>
+<p>The following quantization methods are currently implemented in Distiller:</p>
+<h2 id="dorefa">DoReFa</h2>
+<p>(As proposed in <a href="https://arxiv.org/abs/1606.06160">DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients</a>)  </p>
+<p>In this method, we first define the quantization function <script type="math/tex">quantize_k</script>, which takes a real value <script type="math/tex">a_f \in [0, 1]</script> and outputs a discrete-valued <script type="math/tex">a_q \in \left\{ \frac{0}{2^k-1}, \frac{1}{2^k-1}, ... , \frac{2^k-1}{2^k-1} \right\}</script>, where <script type="math/tex">k</script> is the number of bits used for quantization.</p>
+<p>
+<script type="math/tex; mode=display">a_q = quantize_k(a_f) = \frac{1}{2^k-1} round \left( \left(2^k - 1 \right) a_f \right)</script>
+</p>
+<p>Activations are clipped to the <script type="math/tex">[0, 1]</script> range and then quantized as follows:</p>
+<p>
+<script type="math/tex; mode=display">x_q = quantize_k(x_f)</script>
+</p>
+<p>For weights, we define the following function <script type="math/tex">f</script>, which takes an unbounded real valued input and outputs a real value in <script type="math/tex">[0, 1]</script>:</p>
+<p>
+<script type="math/tex; mode=display">f(w) = \frac{tanh(w)}{2 max(|tanh(w)|)} + \frac{1}{2} </script>
+</p>
+<p>Now we can use <script type="math/tex">quantize_k</script> to get quantized weight values, as follows:</p>
+<p>
+<script type="math/tex; mode=display">w_q = 2 quantize_k \left( f(w_f) \right) - 1</script>
+</p>
+<p>This method requires training the model with quantization, as discussed <a href="../quantization/index.html#training-with-quantization">here</a>. Use the <code>DorefaQuantizer</code> class to transform an existing model to a model suitable for training with quantization using DoReFa.</p>
+<h3 id="notes">Notes:</h3>
+<ul>
+<li>Gradients quantization as proposed in the paper is not supported yet.</li>
+<li>The paper defines special handling for binary weights which isn't supported in Distiller yet.</li>
+</ul>
+<h2 id="wrpn">WRPN</h2>
+<p>(As proposed in <a href="https://arxiv.org/abs/1709.01134">WRPN: Wide Reduced-Precision Networks</a>)  </p>
+<p>In this method, activations are clipped to <script type="math/tex">[0, 1]</script> and quantized as follows (<script type="math/tex">k</script> is the number of bits used for quantization):</p>
+<p>
+<script type="math/tex; mode=display">x_q = \frac{1}{2^k-1} round \left( \left(2^k - 1 \right) x_f \right)</script>
+</p>
+<p>Weights are clipped to <script type="math/tex">[-1, 1]</script> and quantized as follows:</p>
+<p>
+<script type="math/tex; mode=display">w_q = \frac{1}{2^{k-1}-1} round \left( \left(2^{k-1} - 1 \right)w_f \right)</script>
+</p>
+<p>Note that <script type="math/tex">k-1</script> bits are used to quantize weights, leaving one bit for sign.</p>
+<p>This method requires training the model with quantization, as discussed <a href="../quantization/#training-with-quantization">here</a>. Use the <code>WRPNQuantizer</code> class to transform an existing model to a model suitable for training with quantization using WRPN.</p>
+<h3 id="notes_1">Notes:</h3>
+<ul>
+<li>The paper proposed widening of layers as a means to reduce accuracy loss. This isn't implemented as part of <code>WRPNQuantizer</code> at the moment. To experiment with this, modify your model implementation to have wider layers.</li>
+<li>The paper defines special handling for binary weights which isn't supported in Distiller yet.</li>
+</ul>
 <h2 id="symmetric-linear-quantization">Symmetric Linear Quantization</h2>
 <p>In this method, a float value is quantized by multiplying with a numeric constant (the <strong>scale factor</strong>), hence it is <strong>Linear</strong>. We use a signed integer to represent the quantized range, with no quantization bias (or "offset") used. As a result, the floating-point range considered for quantization is <strong>symmetric</strong> with respect to zero.<br />
 In the current implementation the scale factor is chosen so that the entire range of the floating-point tensor is quantized (we do not attempt to remove outliers).<br />
@@ -174,14 +220,15 @@ Let us denote the original floating-point tensor by <script type="math/tex">x_f<
 <script type="math/tex; mode=display">x_q = round(q_x x_f)</script>
 (The <script type="math/tex">round</script> operation is round-to-nearest-integer)  </p>
 <p>Let's see how a <strong>convolution</strong> or <strong>fully-connected (FC)</strong> layer is quantized using this method: (we denote input, output, weights and bias with  <script type="math/tex">x, y, w</script> and <script type="math/tex">b</script> respectively)
-<script type="math/tex; mode=display">y_f = \sum{x_f w_f} + b_f = \sum{\frac{x_q}{q_x} \frac{w_q}{q_w}} + \frac{b_q}{q_b} = \frac{1}{q_x q_w} \sum{(x_q w_q + \frac{q_b}{q_x q_w}b_q)}</script>
-<script type="math/tex; mode=display">y_q = round(q_y y_f) = round(\frac{q_y}{q_x q_w} \sum{(x_q w_q + \frac{q_b}{q_x q_w}b_q)})</script>
+<script type="math/tex; mode=display">y_f = \sum{x_f w_f} + b_f = \sum{\frac{x_q}{q_x} \frac{w_q}{q_w}} + \frac{b_q}{q_b} = \frac{1}{q_x q_w} \sum{ \left( x_q w_q + \frac{q_b}{q_x q_w}b_q \right) }</script>
+<script type="math/tex; mode=display">y_q = round(q_y y_f) = round\left(\frac{q_y}{q_x q_w} \sum{ \left( x_q w_q + \frac{q_b}{q_x q_w}b_q \right) } \right) </script>
 Note how the bias has to be re-scaled to match the scale of the summation.</p>
 <h3 id="implementation">Implementation</h3>
 <p>We've implemented <strong>convolution</strong> and <strong>FC</strong> using this method.  </p>
 <ul>
-<li>They are implemented by wrapping the existing PyTorch layers with quantization and de-quantization operations. That is - the computation is done on floating-point tensors, but the values themselves are restricted to integer values.  </li>
+<li>They are implemented by wrapping the existing PyTorch layers with quantization and de-quantization operations. That is - the computation is done on floating-point tensors, but the values themselves are restricted to integer values. The wrapper is implemented in the <code>RangeLinearQuantParamLayerWrapper</code> class.  </li>
 <li>All other layers are unaffected and are executed using their original FP32 implementation.  </li>
+<li>To automatically transform an existing model to a quantized model using this method, use the <code>SymmetricLinearQuantizer</code> class.</li>
 <li>For weights and bias the scale factor is determined once at quantization setup ("offline"), and for activations it is determined dynamically at runtime ("online").  </li>
 <li><strong>Important note:</strong> Currently, this method is implemented as <strong>inference only</strong>, with no back-propagation functionality. Hence, it can only be used to quantize a pre-trained FP32 model, with no re-training. As such, using it with <script type="math/tex">n < 8</script> is likely to lead to severe accuracy degradation for any non-trivial workload.</li>
 </ul>
diff --git a/docs/design/index.html b/docs/design/index.html
index aeff42b..bf89613 100644
--- a/docs/design/index.html
+++ b/docs/design/index.html
@@ -208,22 +208,33 @@ train():
 <h2 id="quantization">Quantization</h2>
 <p>A quantized model is obtained by replacing existing operations with quantized versions. The quantized versions can be either complete replacements, or wrappers. A wrapper will use the existing modules internally and add quantization and de-quantization operations before/after as necessary.</p>
 <p>In Distiller we will provide a set of quantized versions of common operations which will enable implementation of different quantization methods. The user can write a quantized model from scratch, using the quantized operations provided.</p>
-<p>We also provide a mechanism which takes an existing model and automatically replaces required operations with quantized versions. The high-level flow is as follows:</p>
+<p>We also provide a mechanism which takes an existing model and automatically replaces required operations with quantized versions. This mechanism is exposed by the <code>Quantizer</code> class. <code>Quantizer</code> should be sub-classed for each quantization method.</p>
+<h3 id="model-transformation">Model Transformation</h3>
+<p>The high-level flow is as follows:</p>
 <ul>
-<li>Define a <strong>mapping</strong> between the module types to be replaced (e.g. Conv2D, Linear, etc.) to a function which generates the replacement module.</li>
+<li>Define a <strong>mapping</strong> between the module types to be replaced (e.g. Conv2D, Linear, etc.) to a function which generates the replacement module. The mapping is defined in the <code>replacement_factory</code> attribute of the <code>Quantizer</code> class.</li>
 <li>Iterate over the modules defined in the model. For each module, if its type is in the mapping, call the replacement generation function. We pass the existing module to this function to allow wrapping of it.</li>
-<li>Replace the existing module with the module returned by the function.</li>
+<li>Replace the existing module with the module returned by the function. It is important to note that the <strong>name</strong> of the module <strong>does not</strong> change, as that could break the <code>forward</code> function of the parent module.</li>
 </ul>
-<p>Different quantization methods may, obviously, use different quantized operations. In addition, different methods may employ different "strategies" of replacing / wrapping existing modules. For instance, some methods replace ReLU with another activation function, while others keep it. Hence, for each quantization method, a different <strong>mapping</strong> will likely be defined.</p>
-<p>This mechanism is exposed by the <code>Quantizer</code> class:</p>
+<p>Different quantization methods may, obviously, use different quantized operations. In addition, different methods may employ different "strategies" of replacing / wrapping existing modules. For instance, some methods replace ReLU with another activation function, while others keep it. Hence, for each quantization method, a different <strong>mapping</strong> will likely be defined.<br />
+Each sub-class of <code>Quantizer</code> should populate the <code>replacement_factory</code> dictionary attribute with the appropriate mapping.</p>
+<h3 id="flexible-bit-widths">Flexible Bit-Widths</h3>
 <ul>
-<li><code>Quantizer</code> should be sub-classed for each quantization method.</li>
 <li>Each instance of <code>Quantizer</code> is parameterized by the number of bits to be used for quantization of different tensor types. The default ones are activations and weights. These are the <code>bits_activations</code> and <code>bits_weights</code> parameters in <code>Quantizer</code>'s constructor. Sub-classes may define bit-widths for other tensor types as needed.</li>
 <li>We also want to be able to override the default number of bits mentioned in the bullet above for certain layers. These could be very specific layers. However, many models are comprised of building blocks ("container" modules, such as Sequential) which contain several modules, and it is likely we'll want to override settings for entire blocks, or for a certain module across different blocks. When such building blocks are used, the names of the internal modules usually follow some pattern.</li>
 <li>So, for this purpose, Quantizer also accepts a mapping of regular expressions to number of bits. This allows the user to override specific layers using they're exact name, or a group of layers via a regular expression. This mapping is passed via the <code>bits_overrides</code> parameter in the constructor.</li>
 </ul>
+<h3 id="weights-quantization">Weights Quantization</h3>
+<p>The <code>Quantizer</code> class also provides an API to quantize the weights of all layers at once. To use it, the <code>param_quantization_fn</code> attribute needs to point to a function that accepts a tensor and the number of bits. During model transformation, the <code>Quantizer</code> class will build a list of all model parameters that need to be quantized along with their bit-width. Then, the <code>quantize_params</code> function can be called, which will iterate over all parameters and quantize them using <code>params_quantization_fn</code>.</p>
+<h3 id="training-with-quantization">Training with Quantization</h3>
+<p>The <code>Quantizer</code> class supports training with quantization in the loop, as described <a href="../quantization/index.html#training-with-quantization">here</a>. This is enabled by setting <code>train_with_fp_copy=True</code> in the <code>Quantizer</code> constructor. At model transformation, in each module that has parameters that should be quantized, a new <code>torch.nn.Parameter</code> is added, which will maintain the required full precision copy of the parameters. Note that this is done in-place - a new module <strong>is not</strong> created. We preferred not to sub-class the existing PyTorch modules for this purpose. In order to this in-place, and also guarantee proper back-propagation through the weights quantization function, we employ the following "hack":</p>
+<ol>
+<li>The existing <code>torch.nn.Parameter</code>, e.g. <code>weights</code>, is replaced by a <code>torch.nn.Parameter</code> named <code>float_weight</code>.</li>
+<li>To maintain the existing functionality of the module, we then register a <code>buffer</code> in the module with the original name - <code>weights</code>.</li>
+<li>During training, <code>float_weight</code> will be passed to <code>param_quantization_fn</code> and the result will be stored in <code>weight</code>.</li>
+</ol>
 <p>The base <code>Quantizer</code> class is implemented in <code>distiller/quantization/quantizer.py</code>.<br />
-For a simple sub-class implementing symmetric linear quantization, see <code>SymmetricLinearQuantizer</code> in <code>distiller/quantization/range_linear.py</code>.</p>
+For a simple sub-class implementing symmetric linear quantization, see <code>SymmetricLinearQuantizer</code> in <code>distiller/quantization/range_linear.py</code>. For examples of lower-precision methods using training with quantization see <code>DorefaQuantizer</code> and <code>WRPNQuantizer</code> in <code>distiller/quantization/clipped_linear.py</code></p>
               
             </div>
           </div>
diff --git a/docs/imgs/baidu_rnn_pruning.png b/docs/imgs/baidu_rnn_pruning.png
new file mode 100644
index 0000000000000000000000000000000000000000..ab4a3960a54354b7335967c4b39709a7f57cdea5
GIT binary patch
literal 266165
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
XraaHru`HB;fqvwqUP*oyHxB-PVa%ME

literal 0
HcmV?d00001

diff --git a/docs/imgs/training_quant_flow.png b/docs/imgs/training_quant_flow.png
new file mode 100644
index 0000000000000000000000000000000000000000..5c91c1d44075b40aea10926d28320465be02c6b3
GIT binary patch
literal 101597
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
ADF6Tf

literal 0
HcmV?d00001

diff --git a/docs/imgs/use-flow.png b/docs/imgs/use-flow.png
index 4b1ff29980eb5a0c5cec1e417d7df35bc1a1f466..de4a3bb64413cdaa89659d78379eaffbbc4ab066 100644
GIT binary patch
literal 224802
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%0DRa_#b#nyI{k!>3%j
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

literal 75598
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
E0c$=fmH+?%

diff --git a/docs/index.html b/docs/index.html
index 1a40362..1f3be6c 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -246,5 +246,5 @@ And of course, if we used a sparse or compressed representation, then we are red
 
 <!--
 MkDocs version : 0.17.2
-Build Date UTC : 2018-06-14 11:48:24
+Build Date UTC : 2018-06-21 23:06:46
 -->
diff --git a/docs/quantization/index.html b/docs/quantization/index.html
index b2b475d..4726339 100644
--- a/docs/quantization/index.html
+++ b/docs/quantization/index.html
@@ -97,6 +97,8 @@
         
             <li><a class="toctree-l4" href="#aggressive-quantization-int4-and-lower">"Aggressive" Quantization: INT4 and Lower</a></li>
         
+            <li><a class="toctree-l4" href="#training-with-quantization">Training with Quantization</a></li>
+        
             <li><a class="toctree-l4" href="#references">References</a></li>
         
         </ul>
@@ -214,24 +216,31 @@ Note that this scale factor is, in most cases, a floating-point number. Hence, e
 The result of multiplying two <script type="math/tex">n</script>-bit integers is, at most, a <script type="math/tex">2n</script>-bit number. In convolution layers, such multiplications are accumulated <script type="math/tex">c\cdot k^2</script> times, where <script type="math/tex">c</script> is the number of input channels and <script type="math/tex">k</script> is the kernel width (assuming a square kernel). Hence, to avoid overflowing, the accumulator should be <script type="math/tex">2n + M</script>-bits wide, where M is at least <script type="math/tex">log_2(c\cdot k^2)</script>. In many cases 32-bit accumulators are used, however for INT4 and lower it might be possible to use less than 32 -bits, depending on the expected use cases and layer widths.</p>
 <h2 id="conservative-quantization-int8">"Conservative" Quantization: INT8</h2>
 <p>In many cases, taking a model trained for FP32 and directly quantizing it to INT8, without any re-training, can result in a relatively low loss of accuracy (which may or may not be acceptable, depending on the use case). Some fine-tuning can further improve the accuracy (<a href="#gysel-et-al-2018">Gysel at al., 2018</a>).<br />
-As mentioned above, a scale factor is used to adapt the dynamic range of the tensor at hand to that of the integer format. This scale factor needs to be calculated per-layer per-tensor (. The simplest way is to map the min/max values of the float tensor to the min/max of the integer format. For weights and biases this is easy, as they are set once training is complete. For activations, the min/max float values can be obtained "online" during inference, or "offline".</p>
+As mentioned above, a scale factor is used to adapt the dynamic range of the tensor at hand to that of the integer format. This scale factor needs to be calculated per-layer per-tensor. The simplest way is to map the min/max values of the float tensor to the min/max of the integer format. For weights and biases this is easy, as they are set once training is complete. For activations, the min/max float values can be obtained "online" during inference, or "offline".</p>
 <ul>
 <li><strong>Offline</strong> means gathering activations statistics before deploying the model, either during training or by running a few "calibration" batches on the trained FP32 model. Based on these gathered statistics, the scaled factors are calculated and are fixed once the model is deployed. This method has the risk of encountering values outside the previously observed ranges at runtime. These values will be clipped, which might lead to accuracy degradation.</li>
 <li><strong>Online</strong> means calculating the min/max values for each tensor dynamically during runtime. In this method clipping cannot occur, however the added computation resources required to calculate the min/max values at runtime might be prohibitive.</li>
 </ul>
-<p>It is important to note, however, that the full float range of an activations tensor usually includes elements which are statistically outliers. These values can be discarded by using a narrower min/max range, effectively allowing some clipping to occur in favor of increasing the resolution provided to the part of the distribution containing most of the information. Statistical measures can be used to intelligently select where to clip the original range in order to preserve as much information as possible (<a href="#migacz-2017">Migacz, 2017</a>)  </p>
-<p>Another possible optimization point is <strong>scale-factor scope</strong>. The most common way is use a single scale-factor per-layer</p>
+<p>It is important to note, however, that the full float range of an activations tensor usually includes elements which are statistically outliers. These values can be discarded by using a narrower min/max range, effectively allowing some clipping to occur in favor of increasing the resolution provided to the part of the distribution containing most of the information. Statistical measures can be used to intelligently select where to clip the original range in order to preserve as much information as possible (<a href="#migacz-2017">Migacz, 2017</a>).  </p>
+<p>Another possible optimization point is <strong>scale-factor scope</strong>. The most common way is use a single scale-factor per-layer, but it is also possible to calculate a scale-factor per-channel. This can be beneficial if the weight distributions vary greatly between channels.</p>
 <h2 id="aggressive-quantization-int4-and-lower">"Aggressive" Quantization: INT4 and Lower</h2>
 <p>Naively quantizing a FP32 model to INT4 and lower usually incurs significant accuracy degradation. Many works have tried to mitigate this effect. They usually employ one or more of the following concepts in order to improve model accuracy:</p>
 <ul>
-<li><strong>Training / Re-Training</strong>: For INT4 and lower, training is required in order to obtain reasonable accuracy. This means training with quantization of weights and activations "baked" into the training procedure. This is not straight forward, since quantization operations are usually not differentiable. This is usually worked-around by using "straight-through estimator" (<a href="#bengio-et-al-2013">Bengio, 2013</a>) to approximate the gradient of these operations.<br />
-<a href="#zhou-et-al-2016">Zhou S et al., 2016</a> have shown that bootstrapping the quantized model with trained FP32 weights leads to higher accuracy, as opposed to training from scratch. Other methods <em>require</em> a trained FP32 model, either as a starting point (<a href="#zhou-et-al-2017">Zhou A et al., 2017</a>), or as a teacher network in a student-teacher training setup (<a href="#mishra-and-marr-2018">Mishra and Marr, 2018</a>).</li>
+<li><strong>Training / Re-Training</strong>: For INT4 and lower, training is required in order to obtain reasonable accuracy. The training loop is modified to take quantization into account. See details in the <a href="#training-with-quantization">next section</a>.<br />
+<a href="#zhou-et-al-2016">Zhou S et al., 2016</a> have shown that bootstrapping the quantized model with trained FP32 weights leads to higher accuracy, as opposed to training from scratch. Other methods <em>require</em> a trained FP32 model, either as a starting point (<a href="#zhou-et-al-2017">Zhou A et al., 2017</a>), or as a teacher network in a knowledge distillation training setup (<a href="#mishra-and-marr-2018">Mishra and Marr, 2018</a>).</li>
 <li><strong>Replacing the activation function</strong>: The most common activation function in vision models is ReLU, which is unbounded. That is - its dynamic range is not limited for positive inputs. This is very problematic for INT4 and below due to the very limited range and resolution. Therefore, most methods replace ReLU with another function which is bounded. In some cases a clipping function with hard coded values is used (<a href="#zhou-et-al-2016">Zhou S et al., 2016</a>, <a href="#mishra-et-al-2018">Mishra et al., 2018</a>). Another method learns the clipping value per layer, with better results (<a href="#choi-et-al-2018">Choi et al., 2018</a>). Once the clipping value is set, the scale factor used for quantization is also set, and no further calibration steps are required (as opposed to INT8 methods described above).</li>
 <li><strong>Modifying network structure</strong>: <a href="#mishra-et-al-2018">Mishra et al., 2018</a> try to compensate for the loss of information due to quantization by using wider layers (more channels). <a href="#lin-et-al-2017">Lin et al., 2017</a> proposed a binary quantization method in which a single FP32 convolution is replaced with multiple binary convolutions, each scaled to represent a different "base", covering a larger dynamic range overall.</li>
 <li><strong>First and last layer</strong>: Many methods do not quantize the first and last layer of the model. It has been observed by <a href="#han-et-al-2015">Han et al., 2015</a> that the first convolutional layer is more sensitive to weights pruning, and some quantization works cite the same reason and show it empirically (<a href="#zhou-et-al-2016">Zhou S et al., 2016</a>, <a href="#choi-et-al-2018">Choi et al., 2018</a>). Some works also note that these layers usually constitute a very small portion of the overall computation within the model, further reducing the motivation to quantize them (<a href="#rastegari-et-al-2016">Rastegari et al., 2016</a>). Most methods keep the first and last layers at FP32. However, <a href="#choi-et-al-2018">Choi et al., 2018</a> showed that "conservative" quantization of these layers, e.g. to INT8, does not reduce accuracy.</li>
 <li><strong>Iterative quantization</strong>: Most methods quantize the entire model at once. <a href="#zhou-et-al-2017">Zhou A et al., 2017</a> employ an iterative method, which starts with a trained FP32 baseline, and quantizes only a portion of the model at the time followed by several epochs of re-training to recover the accuracy loss from quantization.</li>
 <li><strong>Mixed Weights and Activations Precision</strong>: It has been observed that activations are more sensitive to quantization than weights (<a href="#zhou-et-al-2016">Zhou S et al., 2016</a>). Hence it is not uncommon to see experiments with activations quantized to a higher precision compared to weights. Some works have focused solely on quantizing weights, keeping the activations at FP32 (<a href="#li-et-al-2016">Li et al., 2016</a>, <a href="#zhu-et-al-2016">Zhu et al., 2016</a>).</li>
 </ul>
+<h2 id="training-with-quantization">Training with Quantization</h2>
+<p>As mentioned above, in order to minimize the loss of accuracy from "aggressive" quantization, many methods that target INT4 and lower involve training the model in a way that considers the quantization. This means training with quantization of weights and activations "baked" into the training procedure. The training graph usually looks like this:</p>
+<p><img alt="Training with Quantization" src="../imgs/training_quant_flow.png" /></p>
+<p>A full precision copy of the weights is maintained throughout the training process ("weights_fp" in the diagram). Its purpose is to accumulate the small changes from the gradients without loss of precision (Note that the quantization of the weights is an integral part of the training graph, meaning that we back-propagate through it as well). Once the model is trained, only the quantized weights are used for inference.<br />
+In the diagram we show "layer N" as the conv + batch-norm + activation combination, but the same applies to fully-connected layers, element-wise operations, etc. During training, the operations within "layer N" can still run in full precision, with the "quantize" operations in the boundaries ensuring discrete-valued weights and activations. This is sometimes called "simulated quantization".  </p>
+<h3 id="straight-through-estimator">Straight-Through Estimator</h3>
+<p>An important question in this context is how to back-propagate through the quantization functions. These functions are discrete-valued, hence their derivative is 0 almost everywhere. So, using their gradients as-is would severly hinder the learning process. An approximation commonly used to overcome this issue is the "straight-through estimator" (STE) (<a href="#hinton-et-al-2012">Hinton et al., 2012</a>, <a href="#bengio-et-al-2013">Bengio, 2013</a>), which simply passes the gradient through these functions as-is.  </p>
 <h2 id="references">References</h2>
 <p><div id="dally-2015"></div>
 <strong>William Dally</strong>. High-Performance Hardware for Machine Learning. <a href="https://media.nips.cc/Conferences/2015/tutorialslides/Dally-NIPS-Tutorial-2015.pdf">Tutorial, NIPS, 2015</a></p>
@@ -247,9 +256,6 @@ As mentioned above, a scale factor is used to adapt the dynamic range of the ten
 <div id="migacz-2017"></div>
 
 <p><strong>Szymon Migacz</strong>. 8-bit Inference with TensorRT. <a href="http://on-demand.gputechconf.com/gtc/2017/presentation/s7310-8-bit-inference-with-tensorrt.pdf">GTC San Jose, 2017</a></p>
-<div id="bengio-et-al-2013"></div>
-
-<p><strong>Yoshua Bengio, Nicholas Leonard and Aaron Courville</strong>. Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation. <a href="https://arxiv.org/abs/1308.3432">arxiv:1308.3432, 2013</a></p>
 <div id="zhou-et-al-2016"></div>
 
 <p><strong>Shuchang Zhou, Zekun Ni, Xinyu Zhou, He Wen, Yuxin Wu and Yuheng Zou</strong>. DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients. <a href="https://arxiv.org/abs/1606.06160">arxiv:1606.06160</a></p>
@@ -277,6 +283,12 @@ As mentioned above, a scale factor is used to adapt the dynamic range of the ten
 <div id="zhu-et-al-2016"></div>
 
 <p><strong>Chenzhuo Zhu, Song Han, Huizi Mao and William J. Dally</strong>. Trained Ternary Quantization. <a href="https://arxiv.org/abs/1612.01064">arxiv:1612.01064</a></p>
+<div id="bengio-et-al-2013"></div>
+
+<p><strong>Yoshua Bengio, Nicholas Leonard and Aaron Courville</strong>. Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation. <a href="https://arxiv.org/abs/1308.3432">arxiv:1308.3432, 2013</a></p>
+<div id="hinton-et-al-2012"></div>
+
+<p><strong>Geoffrey Hinton, Nitish Srivastava, Kevin Swersky, Tijmen Tieleman and Abdelrahman Mohamed</strong>. Neural Networks for Machine Learning. <a href="https://www.coursera.org/learn/neural-networks">Coursera, video lectures, 2012</a></p>
               
             </div>
           </div>
diff --git a/docs/schedule/index.html b/docs/schedule/index.html
index 8d0af64..2bf4ccc 100644
--- a/docs/schedule/index.html
+++ b/docs/schedule/index.html
@@ -80,6 +80,8 @@
         
             <li><a class="toctree-l3" href="#mixing-it-up">Mixing it up</a></li>
         
+            <li><a class="toctree-l3" href="#quantization">Quantization</a></li>
+        
         </ul>
     
 
@@ -168,17 +170,16 @@
             <div class="section">
               
                 <h1 id="compression-scheduler">Compression scheduler</h1>
-<p>In iterative pruning, we create some kind of pruning regimen that specifies how to prune, and what to prune at every stage of the pruning and training stages. This motivated the design of <code>CompressionScheduler</code>: it needed to be part of the training loop, and to be able to make and implement pruning, regularization and (later) quantization decisions.  We wanted to be able to change the particulars of the compression schedule, w/o touching the code, and settled on using YAML as a container for this specification.  We found that when we make many experiments on the same code base, it is easier to maintain all of these experiments if we decouple the differences from the code-base.  Therefore, we added to the scheduler support for learning-rate decay scheduling because, again, we wanted the freedom to change the LR-decay policy without changing code.  </p>
+<p>In iterative pruning, we create some kind of pruning regimen that specifies how to prune, and what to prune at every stage of the pruning and training stages. This motivated the design of <code>CompressionScheduler</code>: it needed to be part of the training loop, and to be able to make and implement pruning, regularization and quantization decisions.  We wanted to be able to change the particulars of the compression schedule, w/o touching the code, and settled on using YAML as a container for this specification.  We found that when we make many experiments on the same code base, it is easier to maintain all of these experiments if we decouple the differences from the code-base.  Therefore, we added to the scheduler support for learning-rate decay scheduling because, again, we wanted the freedom to change the LR-decay policy without changing code.  </p>
 <h2 id="high-level-overview">High level overview</h2>
-<p>Let's briefly discuss the main mechanisms and abstractions: A schedule specification is composed of a list of sections defining instances of Pruners, Regularizers, LR-scheduler and Policies.</p>
+<p>Let's briefly discuss the main mechanisms and abstractions: A schedule specification is composed of a list of sections defining instances of Pruners, Regularizers, Quantizers, LR-scheduler and Policies.</p>
 <ul>
-<li>Pruners and Regularizers are very similar: they implement either a Pruning algorithm or a Regularization algorithm.  </li>
+<li>Pruners, Regularizers and Quantizers are very similar: They implement either a Pruning/Regularization/Quantization algorithm, respectively. </li>
 <li>An LR-scheduler specifies the LR-decay algorithm.  </li>
 </ul>
 <p>These define the <strong>what</strong> part of the schedule.  </p>
-<p>The Policies define the <strong>when</strong> part of the schedule: at which epoch to start applying the Pruner/Regularizer/LR-decay, the epoch to end, and how often to invoke the policy (frequency of application).  A policy also defines the instance of Pruner/Regularizer/LR-decay it is managing.
-<br>
-The CompressionScheduler is configured from a YAML file or from a dictionary, but you can also manually create Policies, Pruners and Regularizers from code.</p>
+<p>The Policies define the <strong>when</strong> part of the schedule: at which epoch to start applying the Pruner/Regularizer/Quantizer/LR-decay, the epoch to end, and how often to invoke the policy (frequency of application).  A policy also defines the instance of Pruner/Regularizer/Quantizer/LR-decay it is managing.<br />
+The CompressionScheduler is configured from a YAML file or from a dictionary, but you can also manually create Policies, Pruners, Regularizers and Quantizers from code.</p>
 <h2 id="syntax-through-example">Syntax through example</h2>
 <p>We'll use <code>alexnet.schedule_agp.yaml</code> to explain some of the YAML syntax for configuring Sensitivity Pruning of Alexnet.</p>
 <pre><code>version: 1
@@ -218,9 +219,9 @@ policies:
 <pre><code>version: 1
 </code></pre>
 
-<p>In the <code>pruners</code> section, we define the instances of pruners we want the scheduler to instantiate and use.<br>
-We define a single pruner instance, named <code>my_pruner</code> of algorithm <code>SensitivityPruner</code>.  We will refer to this instance in the <code>Policies</code> section.<br>
-Then we list the sensitivity multipliers, \(s\), of each of the weight tensors.<br>
+<p>In the <code>pruners</code> section, we define the instances of pruners we want the scheduler to instantiate and use.<br />
+We define a single pruner instance, named <code>my_pruner</code>, of algorithm <code>SensitivityPruner</code>.  We will refer to this instance in the <code>Policies</code> section.<br />
+Then we list the sensitivity multipliers, \(s\), of each of the weight tensors.<br />
 You may list as many Pruners as you want in this section, as long as each has a unique name.  You can several types of pruners in one schedule.</p>
 <pre><code>pruners:
   my_pruner:
@@ -236,14 +237,14 @@ You may list as many Pruners as you want in this section, as long as each has a
       'classifier.6.weight': 0.6
 </code></pre>
 
-<p>Next, we want to specify the learning-rate decay scheduling in the <code>lr_schedulers</code> section.  We assign a name to this instance: <code>pruning_lr</code>.  As in the <code>pruners</code> section, you may use any name, as long as all LR-schedulers have a unique name.  At the moment, only one instance of LR-scheduler is allowed.  You can use any LR-scheduler class that <code>torch.optim.lr_scheduler</code> supports and pass their arguments.  The keyword arguments (kwargs) are passed directly to the constructor of the subclasses of <a href="http://pytorch.org/docs/master/_modules/torch/optim/lr_scheduler.html">_LRScheduler</a>, so that as new LR-schedulers are added to <code>torch.optim.lr_scheduler</code>, they can be used without changing the application code.</p>
+<p>Next, we want to specify the learning-rate decay scheduling in the <code>lr_schedulers</code> section.  We assign a name to this instance: <code>pruning_lr</code>.  As in the <code>pruners</code> section, you may use any name, as long as all LR-schedulers have a unique name.  At the moment, only one instance of LR-scheduler is allowed.  The LR-scheduler must be a subclass of PyTorch's <a href="http://pytorch.org/docs/master/_modules/torch/optim/lr_scheduler.html">_LRScheduler</a>.  You can use any of the schedulers defined in <code>torch.optim.lr_scheduler</code> (see <a href="https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate">here</a>).  In addition, we've implemented some additional schedulers in Distiller (see <a href="https://github.com/NervanaSystems/distiller/blob/master/distiller/learning_rate.py">here</a>). The keyword arguments (kwargs) are passed directly to the LR-scheduler's constructor, so that as new LR-schedulers are added to <code>torch.optim.lr_scheduler</code>, they can be used without changing the application code.</p>
 <pre><code>lr_schedulers:
    pruning_lr:
      class: ExponentialLR
      gamma: 0.9
 </code></pre>
 
-<p>Finally, we define the <code>policies</code> section which defines the actual scheduling.  A <code>Policy</code> manages an instance of a <code>Pruner</code>, <code>Regularizer</code>, or <code>LRSchedule</code>, by naming the instance.  In the example below, a <code>PruningPolicy</code> uses the pruner instance named <code>my_pruner</code>: it activates it at a frequency of 2 epochs (i.e. every other epoch), starting at epoch 0, and ending at epoch 38.  </p>
+<p>Finally, we define the <code>policies</code> section which defines the actual scheduling.  A <code>Policy</code> manages an instance of a <code>Pruner</code>, <code>Regularizer</code>, <code>Quantizer</code>, or <code>LRScheduler</code>, by naming the instance.  In the example below, a <code>PruningPolicy</code> uses the pruner instance named <code>my_pruner</code>: it activates it at a frequency of 2 epochs (i.e. every other epoch), starting at epoch 0, and ending at epoch 38.  </p>
 <pre><code>policies:
   - pruner:
       instance_name : 'my_pruner'
@@ -397,6 +398,43 @@ policies:
     ending_epoch: 200
     frequency: 1
 
+</code></pre>
+
+<h2 id="quantization">Quantization</h2>
+<p>Similarly to pruners and regularizers, specifying a quantizer in the scheduler YAML follows the constructor arguments of the <code>Quantizer</code> class (see details <a href="../design/index.html#quantization">here</a>).
+Let's see an example:</p>
+<pre><code>quantizers:
+  dorefa_quantizer:
+    class: DorefaQuantizer
+    bits_activations: 8
+    bits_weights: 4
+    bits_overrides:
+      conv1:
+        wts: null
+        acts: null
+      relu1:
+        wts: null
+        acts: null
+      final_relu:
+        wts: null
+        acts: null
+      fc:
+        wts: null
+        acts: null
+</code></pre>
+
+<ul>
+<li>The specific quantization method we're instantiating here is <code>DorefaQuantizer</code>.</li>
+<li>Then we define the default bit-widths for activations and weights, in this case 8 and 4-bits, respectively. </li>
+<li>Then, we define the <code>bits_overrides</code> mapping. In this case, we choose not to quantize the first and last layer of the model. In the case of <code>DorefaQuantizer</code>, the weights are quantized as part of the convolution / FC layers, but the activations are quantized in separate layers, which replace the ReLU layers in the original model (remember - even though we replaced the ReLU modules with our own quantization modules, the name of the modules isn't changed). So, in all, we need to reference the first layer with parameters <code>conv1</code>, the first activation layer <code>relu1</code>, the last activation layer <code>final_relu</code> and the last layer with parameters <code>fc</code>.</li>
+<li>Specifying <code>null</code> means "do not quantize".</li>
+<li>Note that for quantizers, we reference names of modules, not names of parameters as we do for pruners and regularizers.</li>
+<li>We can also reference <strong>groups of layers</strong> in the <code>bits_overrides</code> mapping. This is done using regular expressions. Suppose we have a sub-module in our model named <code>block1</code>, which contains multiple convolution layers which we would like to quantize to, say, 2-bits. The convolution layers are named <code>conv1</code>, <code>conv2</code> and so on. In that case we would define the following:</li>
+</ul>
+<pre><code>bits_overrides:
+  block1.conv*:
+    wts: 2
+    acts: null
 </code></pre>
               
             </div>
diff --git a/docs/search/search_index.json b/docs/search/search_index.json
index 6e6344c..2181117 100644
--- a/docs/search/search_index.json
+++ b/docs/search/search_index.json
@@ -1,509 +1,564 @@
 {
     "docs": [
         {
-            "location": "/index.html",
-            "text": "Distiller Documentation\n\n\nWhat is Distiller\n\n\nDistiller\n is an open-source Python package for neural network compression research.\n\n\nNetwork compression can reduce the footprint of a neural network, increase its inference speed and save energy. Distiller provides a \nPyTorch\n environment for prototyping and analyzing compression algorithms, such as sparsity-inducing methods and low precision arithmetic.\n\n\nDistiller contains:\n\n\n\n\nA framework for integrating pruning, regularization and quantization algorithms.\n\n\nA set of tools for analyzing and evaluating compression performance.\n\n\nExample implementations of state-of-the-art compression algorithms.\n\n\n\n\nMotivation\n\n\nA sparse tensor is any tensor that contains some zeros, but sparse tensors are usually only interesting if they contain a significant number of zeros.  A sparse neural network performs computations using some sparse tensors (preferably many).  These tensors can be parameters (weights and biases) or activations (feature maps).\n\n\nWhy do we care about sparsity?\n\nPresent day neural networks tend to be deep, with millions of weights and activations.  Refer to GoogLeNet or ResNet50, for a couple of examples.\nThese large models are compute-intensive which means that even with dedicated acceleration hardware, the inference pass (network evaluation) will take time.  You might think that latency is an issue only in certain cases, such as autonomous driving systems, but in fact, whenever we humans interact with our phones and computers, we are sensitive to the latency of the interaction.  We don't like to wait for search results or for an application or web-page to load, and we are especially sensitive in realtime interactions such as speech recognition.  So inference latency is often something we want to minimize.\n\n\nLarge models are also memory-intensive with millions of parameters.  Moving around all of the data required to compute inference results consumes energy, which is a problem on a mobile device as well as in a server environment.  Data center server-racks are limited by their power-envelope and their ToC (total cost of ownership) is correlated to their power consumption and thermal characteristics.  In the mobile device environment, we are obviously always aware of the implications of power consumption on the device battery.\nInference performance in the data center is often measured using a KPI (key performance indicator) which folds latency and power considerations: inferences per second, per Watt (inferences/sec/watt).\n\n\nThe storage and transfer of large neural networks is also a challenge in mobile device environments, because of limitations on application sizes and long application download times.\n\n\nFor these reasons, we wish to compress the network as much as possible, to reduce the amount of bandwidth and compute required.  Inducing sparseness, through regularization or pruning, in neural-network models, is one way to compress the network (quantization is another method).\nSparse neural networks hold the promise of speed, small size, and energy efficiency.  \n\n\nSmaller\n\n\nSparse NN model representations can be compressed by taking advantage of the fact that the tensor elements are dominated by zeros.  The compression format, if any, is very HW and SW specific, and the optimal format may be different per tensor (an obvious example: largely dense tensors should not be compressed).  The compute hardware needs to support the compressions formats, for representation compression to be meaningful.  Compression representation decisions might interact with algorithms such as the use of tiles for memory accesses.  Data such as a parameter tensor is read/written from/to main system memory compressed, but the computation can be dense or sparse.  In dense compute we use dense operators, so the compressed data eventually needs to be decompressed into its full, dense size.  The best we can do is bring the compressed representation as close as possible to the compute engine.\n\nSparse compute, on the other hand, operates on the sparse representation which never requires decompression (we therefore distinguish between sparse representation and compressed representation).  This is not a simple matter to implement in HW, and often means lower utilization of the vectorized compute engines.  Therefore, there is a third class of representations, which take advantage of specific hardware characteristics.  For example, for a vectorized compute engine we can remove an entire zero-weights vector and skip its computation (this uses structured pruning or regularization).\n\n\nFaster\n\n\nMany of the layers in modern neural-networks are bandwidth-bound, which means that the execution latency is dominated by the available bandwidth. In essence, the hardware spends more time bringing data close to the compute engines, than actually performing the computations.  Fully-connected layers, RNNs and LSTMs are some examples of bandwidth-dominated operations.\n\nReducing the bandwidth required by these layers, will immediately speed them up.\n\nSome pruning algorithms prune entire kernels, filters and even layers from the network without adversely impacting the final accuracy.  Depending on the hardware implementation, these methods can be leveraged to skip computations, thus reducing latency and power.\n\n\nMore energy efficient\n\n\nBecause we pay two orders-of-magnitude more energy to access off-chip memory (e.g. DDR) compared to on-chip memory (e.g. SRAM or cache), many hardware designs employ a multi-layered cache hierarchy.  Fitting the parameters and activations of a network in these on-chip caches can make a big difference on the required bandwidth, the total inference latency, and off course reduce power consumption.\n\nAnd of course, if we used a sparse or compressed representation, then we are reducing the data throughput and therefore the energy consumption.",
+            "location": "/index.html", 
+            "text": "Distiller Documentation\n\n\nWhat is Distiller\n\n\nDistiller\n is an open-source Python package for neural network compression research.\n\n\nNetwork compression can reduce the footprint of a neural network, increase its inference speed and save energy. Distiller provides a \nPyTorch\n environment for prototyping and analyzing compression algorithms, such as sparsity-inducing methods and low precision arithmetic.\n\n\nDistiller contains:\n\n\n\n\nA framework for integrating pruning, regularization and quantization algorithms.\n\n\nA set of tools for analyzing and evaluating compression performance.\n\n\nExample implementations of state-of-the-art compression algorithms.\n\n\n\n\nMotivation\n\n\nA sparse tensor is any tensor that contains some zeros, but sparse tensors are usually only interesting if they contain a significant number of zeros.  A sparse neural network performs computations using some sparse tensors (preferably many).  These tensors can be parameters (weights and biases) or activations (feature maps).\n\n\nWhy do we care about sparsity?\n\nPresent day neural networks tend to be deep, with millions of weights and activations.  Refer to GoogLeNet or ResNet50, for a couple of examples.\nThese large models are compute-intensive which means that even with dedicated acceleration hardware, the inference pass (network evaluation) will take time.  You might think that latency is an issue only in certain cases, such as autonomous driving systems, but in fact, whenever we humans interact with our phones and computers, we are sensitive to the latency of the interaction.  We don't like to wait for search results or for an application or web-page to load, and we are especially sensitive in realtime interactions such as speech recognition.  So inference latency is often something we want to minimize.\n\n\nLarge models are also memory-intensive with millions of parameters.  Moving around all of the data required to compute inference results consumes energy, which is a problem on a mobile device as well as in a server environment.  Data center server-racks are limited by their power-envelope and their ToC (total cost of ownership) is correlated to their power consumption and thermal characteristics.  In the mobile device environment, we are obviously always aware of the implications of power consumption on the device battery.\nInference performance in the data center is often measured using a KPI (key performance indicator) which folds latency and power considerations: inferences per second, per Watt (inferences/sec/watt).\n\n\nThe storage and transfer of large neural networks is also a challenge in mobile device environments, because of limitations on application sizes and long application download times.\n\n\nFor these reasons, we wish to compress the network as much as possible, to reduce the amount of bandwidth and compute required.  Inducing sparseness, through regularization or pruning, in neural-network models, is one way to compress the network (quantization is another method).\nSparse neural networks hold the promise of speed, small size, and energy efficiency.  \n\n\nSmaller\n\n\nSparse NN model representations can be compressed by taking advantage of the fact that the tensor elements are dominated by zeros.  The compression format, if any, is very HW and SW specific, and the optimal format may be different per tensor (an obvious example: largely dense tensors should not be compressed).  The compute hardware needs to support the compressions formats, for representation compression to be meaningful.  Compression representation decisions might interact with algorithms such as the use of tiles for memory accesses.  Data such as a parameter tensor is read/written from/to main system memory compressed, but the computation can be dense or sparse.  In dense compute we use dense operators, so the compressed data eventually needs to be decompressed into its full, dense size.  The best we can do is bring the compressed representation as close as possible to the compute engine.\n\nSparse compute, on the other hand, operates on the sparse representation which never requires decompression (we therefore distinguish between sparse representation and compressed representation).  This is not a simple matter to implement in HW, and often means lower utilization of the vectorized compute engines.  Therefore, there is a third class of representations, which take advantage of specific hardware characteristics.  For example, for a vectorized compute engine we can remove an entire zero-weights vector and skip its computation (this uses structured pruning or regularization).\n\n\nFaster\n\n\nMany of the layers in modern neural-networks are bandwidth-bound, which means that the execution latency is dominated by the available bandwidth. In essence, the hardware spends more time bringing data close to the compute engines, than actually performing the computations.  Fully-connected layers, RNNs and LSTMs are some examples of bandwidth-dominated operations.\n\nReducing the bandwidth required by these layers, will immediately speed them up.\n\nSome pruning algorithms prune entire kernels, filters and even layers from the network without adversely impacting the final accuracy.  Depending on the hardware implementation, these methods can be leveraged to skip computations, thus reducing latency and power.\n\n\nMore energy efficient\n\n\nBecause we pay two orders-of-magnitude more energy to access off-chip memory (e.g. DDR) compared to on-chip memory (e.g. SRAM or cache), many hardware designs employ a multi-layered cache hierarchy.  Fitting the parameters and activations of a network in these on-chip caches can make a big difference on the required bandwidth, the total inference latency, and off course reduce power consumption.\n\nAnd of course, if we used a sparse or compressed representation, then we are reducing the data throughput and therefore the energy consumption.", 
             "title": "Home"
-        },
+        }, 
         {
-            "location": "/index.html#distiller-documentation",
-            "text": "",
+            "location": "/index.html#distiller-documentation", 
+            "text": "", 
             "title": "Distiller Documentation"
-        },
+        }, 
         {
-            "location": "/index.html#what-is-distiller",
-            "text": "Distiller  is an open-source Python package for neural network compression research.  Network compression can reduce the footprint of a neural network, increase its inference speed and save energy. Distiller provides a  PyTorch  environment for prototyping and analyzing compression algorithms, such as sparsity-inducing methods and low precision arithmetic.  Distiller contains:   A framework for integrating pruning, regularization and quantization algorithms.  A set of tools for analyzing and evaluating compression performance.  Example implementations of state-of-the-art compression algorithms.",
+            "location": "/index.html#what-is-distiller", 
+            "text": "Distiller  is an open-source Python package for neural network compression research.  Network compression can reduce the footprint of a neural network, increase its inference speed and save energy. Distiller provides a  PyTorch  environment for prototyping and analyzing compression algorithms, such as sparsity-inducing methods and low precision arithmetic.  Distiller contains:   A framework for integrating pruning, regularization and quantization algorithms.  A set of tools for analyzing and evaluating compression performance.  Example implementations of state-of-the-art compression algorithms.", 
             "title": "What is Distiller"
-        },
+        }, 
         {
-            "location": "/index.html#motivation",
-            "text": "A sparse tensor is any tensor that contains some zeros, but sparse tensors are usually only interesting if they contain a significant number of zeros.  A sparse neural network performs computations using some sparse tensors (preferably many).  These tensors can be parameters (weights and biases) or activations (feature maps).  Why do we care about sparsity? \nPresent day neural networks tend to be deep, with millions of weights and activations.  Refer to GoogLeNet or ResNet50, for a couple of examples.\nThese large models are compute-intensive which means that even with dedicated acceleration hardware, the inference pass (network evaluation) will take time.  You might think that latency is an issue only in certain cases, such as autonomous driving systems, but in fact, whenever we humans interact with our phones and computers, we are sensitive to the latency of the interaction.  We don't like to wait for search results or for an application or web-page to load, and we are especially sensitive in realtime interactions such as speech recognition.  So inference latency is often something we want to minimize. \nLarge models are also memory-intensive with millions of parameters.  Moving around all of the data required to compute inference results consumes energy, which is a problem on a mobile device as well as in a server environment.  Data center server-racks are limited by their power-envelope and their ToC (total cost of ownership) is correlated to their power consumption and thermal characteristics.  In the mobile device environment, we are obviously always aware of the implications of power consumption on the device battery.\nInference performance in the data center is often measured using a KPI (key performance indicator) which folds latency and power considerations: inferences per second, per Watt (inferences/sec/watt). \nThe storage and transfer of large neural networks is also a challenge in mobile device environments, because of limitations on application sizes and long application download times. \nFor these reasons, we wish to compress the network as much as possible, to reduce the amount of bandwidth and compute required.  Inducing sparseness, through regularization or pruning, in neural-network models, is one way to compress the network (quantization is another method).\nSparse neural networks hold the promise of speed, small size, and energy efficiency.",
+            "location": "/index.html#motivation", 
+            "text": "A sparse tensor is any tensor that contains some zeros, but sparse tensors are usually only interesting if they contain a significant number of zeros.  A sparse neural network performs computations using some sparse tensors (preferably many).  These tensors can be parameters (weights and biases) or activations (feature maps).  Why do we care about sparsity? \nPresent day neural networks tend to be deep, with millions of weights and activations.  Refer to GoogLeNet or ResNet50, for a couple of examples.\nThese large models are compute-intensive which means that even with dedicated acceleration hardware, the inference pass (network evaluation) will take time.  You might think that latency is an issue only in certain cases, such as autonomous driving systems, but in fact, whenever we humans interact with our phones and computers, we are sensitive to the latency of the interaction.  We don't like to wait for search results or for an application or web-page to load, and we are especially sensitive in realtime interactions such as speech recognition.  So inference latency is often something we want to minimize. \nLarge models are also memory-intensive with millions of parameters.  Moving around all of the data required to compute inference results consumes energy, which is a problem on a mobile device as well as in a server environment.  Data center server-racks are limited by their power-envelope and their ToC (total cost of ownership) is correlated to their power consumption and thermal characteristics.  In the mobile device environment, we are obviously always aware of the implications of power consumption on the device battery.\nInference performance in the data center is often measured using a KPI (key performance indicator) which folds latency and power considerations: inferences per second, per Watt (inferences/sec/watt). \nThe storage and transfer of large neural networks is also a challenge in mobile device environments, because of limitations on application sizes and long application download times. \nFor these reasons, we wish to compress the network as much as possible, to reduce the amount of bandwidth and compute required.  Inducing sparseness, through regularization or pruning, in neural-network models, is one way to compress the network (quantization is another method).\nSparse neural networks hold the promise of speed, small size, and energy efficiency.", 
             "title": "Motivation"
-        },
+        }, 
         {
-            "location": "/index.html#smaller",
-            "text": "Sparse NN model representations can be compressed by taking advantage of the fact that the tensor elements are dominated by zeros.  The compression format, if any, is very HW and SW specific, and the optimal format may be different per tensor (an obvious example: largely dense tensors should not be compressed).  The compute hardware needs to support the compressions formats, for representation compression to be meaningful.  Compression representation decisions might interact with algorithms such as the use of tiles for memory accesses.  Data such as a parameter tensor is read/written from/to main system memory compressed, but the computation can be dense or sparse.  In dense compute we use dense operators, so the compressed data eventually needs to be decompressed into its full, dense size.  The best we can do is bring the compressed representation as close as possible to the compute engine. \nSparse compute, on the other hand, operates on the sparse representation which never requires decompression (we therefore distinguish between sparse representation and compressed representation).  This is not a simple matter to implement in HW, and often means lower utilization of the vectorized compute engines.  Therefore, there is a third class of representations, which take advantage of specific hardware characteristics.  For example, for a vectorized compute engine we can remove an entire zero-weights vector and skip its computation (this uses structured pruning or regularization).",
+            "location": "/index.html#smaller", 
+            "text": "Sparse NN model representations can be compressed by taking advantage of the fact that the tensor elements are dominated by zeros.  The compression format, if any, is very HW and SW specific, and the optimal format may be different per tensor (an obvious example: largely dense tensors should not be compressed).  The compute hardware needs to support the compressions formats, for representation compression to be meaningful.  Compression representation decisions might interact with algorithms such as the use of tiles for memory accesses.  Data such as a parameter tensor is read/written from/to main system memory compressed, but the computation can be dense or sparse.  In dense compute we use dense operators, so the compressed data eventually needs to be decompressed into its full, dense size.  The best we can do is bring the compressed representation as close as possible to the compute engine. \nSparse compute, on the other hand, operates on the sparse representation which never requires decompression (we therefore distinguish between sparse representation and compressed representation).  This is not a simple matter to implement in HW, and often means lower utilization of the vectorized compute engines.  Therefore, there is a third class of representations, which take advantage of specific hardware characteristics.  For example, for a vectorized compute engine we can remove an entire zero-weights vector and skip its computation (this uses structured pruning or regularization).", 
             "title": "Smaller"
-        },
+        }, 
         {
-            "location": "/index.html#faster",
-            "text": "Many of the layers in modern neural-networks are bandwidth-bound, which means that the execution latency is dominated by the available bandwidth. In essence, the hardware spends more time bringing data close to the compute engines, than actually performing the computations.  Fully-connected layers, RNNs and LSTMs are some examples of bandwidth-dominated operations. \nReducing the bandwidth required by these layers, will immediately speed them up. \nSome pruning algorithms prune entire kernels, filters and even layers from the network without adversely impacting the final accuracy.  Depending on the hardware implementation, these methods can be leveraged to skip computations, thus reducing latency and power.",
+            "location": "/index.html#faster", 
+            "text": "Many of the layers in modern neural-networks are bandwidth-bound, which means that the execution latency is dominated by the available bandwidth. In essence, the hardware spends more time bringing data close to the compute engines, than actually performing the computations.  Fully-connected layers, RNNs and LSTMs are some examples of bandwidth-dominated operations. \nReducing the bandwidth required by these layers, will immediately speed them up. \nSome pruning algorithms prune entire kernels, filters and even layers from the network without adversely impacting the final accuracy.  Depending on the hardware implementation, these methods can be leveraged to skip computations, thus reducing latency and power.", 
             "title": "Faster"
-        },
+        }, 
         {
-            "location": "/index.html#more-energy-efficient",
-            "text": "Because we pay two orders-of-magnitude more energy to access off-chip memory (e.g. DDR) compared to on-chip memory (e.g. SRAM or cache), many hardware designs employ a multi-layered cache hierarchy.  Fitting the parameters and activations of a network in these on-chip caches can make a big difference on the required bandwidth, the total inference latency, and off course reduce power consumption. \nAnd of course, if we used a sparse or compressed representation, then we are reducing the data throughput and therefore the energy consumption.",
+            "location": "/index.html#more-energy-efficient", 
+            "text": "Because we pay two orders-of-magnitude more energy to access off-chip memory (e.g. DDR) compared to on-chip memory (e.g. SRAM or cache), many hardware designs employ a multi-layered cache hierarchy.  Fitting the parameters and activations of a network in these on-chip caches can make a big difference on the required bandwidth, the total inference latency, and off course reduce power consumption. \nAnd of course, if we used a sparse or compressed representation, then we are reducing the data throughput and therefore the energy consumption.", 
             "title": "More energy efficient"
-        },
+        }, 
         {
-            "location": "/install/index.html",
-            "text": "Distiller Installation\n\n\nThese instructions will help get Distiller up and running on your local machine.\n\n\nYou may also want to refer to these resources:\n\n\n\n\nDataset installation\n instructions.\n\n\nJupyter installation\n instructions.\n\n\n\n\nNotes:\n- Distiller has only been tested on Ubuntu 16.04 LTS, and with Python 3.5.\n- If you are not using a GPU, you might need to make small adjustments to the code.\n\n\nClone Distiller\n\n\nClone the Distiller code repository from github:\n\n\n$ git clone https://github.com/NervanaSystems/distiller.git\n\n\n\n\nThe rest of the documentation that follows, assumes that you have cloned your repository to a directory called \ndistiller\n. \n\n\nCreate a Python virtual environment\n\n\nWe recommend using a \nPython virtual environment\n, but that of course, is up to you.\nThere's nothing special about using Distiller in a virtual environment, but we provide some instructions, for completeness.\n\nBefore creating the virtual environment, make sure you are located in directory \ndistiller\n.  After creating the environment, you should see a directory called \ndistiller/env\n.\n\n\n\nUsing virtualenv\n\n\nIf you don't have virtualenv installed, you can find the installation instructions \nhere\n.\n\n\nTo create the environment, execute:\n\n\n$ python3 -m virtualenv env\n\n\n\n\nThis creates a subdirectory named \nenv\n where the python virtual environment is stored, and configures the current shell to use it as the default python environment.\n\n\nUsing venv\n\n\nIf you prefer to use \nvenv\n, then begin by installing it:\n\n\n$ sudo apt-get install python3-venv\n\n\n\n\nThen create the environment:\n\n\n$ python3 -m venv env\n\n\n\n\nAs with virtualenv, this creates a directory called \ndistiller/env\n.\n\n\nActivate the environment\n\n\nThe environment activation and deactivation commands for \nvenv\n and \nvirtualenv\n are the same.\n\n\n!NOTE: Make sure to activate the environment, before proceeding with the installation of the dependency packages:\n\n\n$ source env/bin/activate\n\n\n\n\nInstall dependencies\n\n\nFinally, install Distiller's dependency packages using \npip3\n:\n\n\n$ pip3 install -r requirements.txt\n\n\n\n\nPyTorch is included in the \nrequirements.txt\n file, and will currently download PyTorch version 3.1 for CUDA 8.0.  This is the setup we've used for testing Distiller.",
+            "location": "/install/index.html", 
+            "text": "Distiller Installation\n\n\nThese instructions will help get Distiller up and running on your local machine.\n\n\nYou may also want to refer to these resources:\n\n\n\n\nDataset installation\n instructions.\n\n\nJupyter installation\n instructions.\n\n\n\n\nNotes:\n- Distiller has only been tested on Ubuntu 16.04 LTS, and with Python 3.5.\n- If you are not using a GPU, you might need to make small adjustments to the code.\n\n\nClone Distiller\n\n\nClone the Distiller code repository from github:\n\n\n$ git clone https://github.com/NervanaSystems/distiller.git\n\n\n\n\nThe rest of the documentation that follows, assumes that you have cloned your repository to a directory called \ndistiller\n. \n\n\nCreate a Python virtual environment\n\n\nWe recommend using a \nPython virtual environment\n, but that of course, is up to you.\nThere's nothing special about using Distiller in a virtual environment, but we provide some instructions, for completeness.\n\nBefore creating the virtual environment, make sure you are located in directory \ndistiller\n.  After creating the environment, you should see a directory called \ndistiller/env\n.\n\n\n\nUsing virtualenv\n\n\nIf you don't have virtualenv installed, you can find the installation instructions \nhere\n.\n\n\nTo create the environment, execute:\n\n\n$ python3 -m virtualenv env\n\n\n\n\nThis creates a subdirectory named \nenv\n where the python virtual environment is stored, and configures the current shell to use it as the default python environment.\n\n\nUsing venv\n\n\nIf you prefer to use \nvenv\n, then begin by installing it:\n\n\n$ sudo apt-get install python3-venv\n\n\n\n\nThen create the environment:\n\n\n$ python3 -m venv env\n\n\n\n\nAs with virtualenv, this creates a directory called \ndistiller/env\n.\n\n\nActivate the environment\n\n\nThe environment activation and deactivation commands for \nvenv\n and \nvirtualenv\n are the same.\n\n\n!NOTE: Make sure to activate the environment, before proceeding with the installation of the dependency packages:\n\n\n$ source env/bin/activate\n\n\n\n\nInstall dependencies\n\n\nFinally, install Distiller's dependency packages using \npip3\n:\n\n\n$ pip3 install -r requirements.txt\n\n\n\n\nPyTorch is included in the \nrequirements.txt\n file, and will currently download PyTorch version 3.1 for CUDA 8.0.  This is the setup we've used for testing Distiller.", 
             "title": "Installation"
-        },
+        }, 
         {
-            "location": "/install/index.html#distiller-installation",
-            "text": "These instructions will help get Distiller up and running on your local machine.  You may also want to refer to these resources:   Dataset installation  instructions.  Jupyter installation  instructions.   Notes:\n- Distiller has only been tested on Ubuntu 16.04 LTS, and with Python 3.5.\n- If you are not using a GPU, you might need to make small adjustments to the code.",
+            "location": "/install/index.html#distiller-installation", 
+            "text": "These instructions will help get Distiller up and running on your local machine.  You may also want to refer to these resources:   Dataset installation  instructions.  Jupyter installation  instructions.   Notes:\n- Distiller has only been tested on Ubuntu 16.04 LTS, and with Python 3.5.\n- If you are not using a GPU, you might need to make small adjustments to the code.", 
             "title": "Distiller Installation"
-        },
+        }, 
         {
-            "location": "/install/index.html#clone-distiller",
-            "text": "Clone the Distiller code repository from github:  $ git clone https://github.com/NervanaSystems/distiller.git  The rest of the documentation that follows, assumes that you have cloned your repository to a directory called  distiller .",
+            "location": "/install/index.html#clone-distiller", 
+            "text": "Clone the Distiller code repository from github:  $ git clone https://github.com/NervanaSystems/distiller.git  The rest of the documentation that follows, assumes that you have cloned your repository to a directory called  distiller .", 
             "title": "Clone Distiller"
-        },
+        }, 
         {
-            "location": "/install/index.html#create-a-python-virtual-environment",
-            "text": "We recommend using a  Python virtual environment , but that of course, is up to you.\nThere's nothing special about using Distiller in a virtual environment, but we provide some instructions, for completeness. \nBefore creating the virtual environment, make sure you are located in directory  distiller .  After creating the environment, you should see a directory called  distiller/env .",
+            "location": "/install/index.html#create-a-python-virtual-environment", 
+            "text": "We recommend using a  Python virtual environment , but that of course, is up to you.\nThere's nothing special about using Distiller in a virtual environment, but we provide some instructions, for completeness. \nBefore creating the virtual environment, make sure you are located in directory  distiller .  After creating the environment, you should see a directory called  distiller/env .", 
             "title": "Create a Python virtual environment"
-        },
+        }, 
         {
-            "location": "/install/index.html#using-virtualenv",
-            "text": "If you don't have virtualenv installed, you can find the installation instructions  here .  To create the environment, execute:  $ python3 -m virtualenv env  This creates a subdirectory named  env  where the python virtual environment is stored, and configures the current shell to use it as the default python environment.",
+            "location": "/install/index.html#using-virtualenv", 
+            "text": "If you don't have virtualenv installed, you can find the installation instructions  here .  To create the environment, execute:  $ python3 -m virtualenv env  This creates a subdirectory named  env  where the python virtual environment is stored, and configures the current shell to use it as the default python environment.", 
             "title": "Using virtualenv"
-        },
+        }, 
         {
-            "location": "/install/index.html#using-venv",
-            "text": "If you prefer to use  venv , then begin by installing it:  $ sudo apt-get install python3-venv  Then create the environment:  $ python3 -m venv env  As with virtualenv, this creates a directory called  distiller/env .",
+            "location": "/install/index.html#using-venv", 
+            "text": "If you prefer to use  venv , then begin by installing it:  $ sudo apt-get install python3-venv  Then create the environment:  $ python3 -m venv env  As with virtualenv, this creates a directory called  distiller/env .", 
             "title": "Using venv"
-        },
+        }, 
         {
-            "location": "/install/index.html#activate-the-environment",
-            "text": "The environment activation and deactivation commands for  venv  and  virtualenv  are the same.  !NOTE: Make sure to activate the environment, before proceeding with the installation of the dependency packages:  $ source env/bin/activate",
+            "location": "/install/index.html#activate-the-environment", 
+            "text": "The environment activation and deactivation commands for  venv  and  virtualenv  are the same.  !NOTE: Make sure to activate the environment, before proceeding with the installation of the dependency packages:  $ source env/bin/activate", 
             "title": "Activate the environment"
-        },
+        }, 
         {
-            "location": "/install/index.html#install-dependencies",
-            "text": "Finally, install Distiller's dependency packages using  pip3 :  $ pip3 install -r requirements.txt  PyTorch is included in the  requirements.txt  file, and will currently download PyTorch version 3.1 for CUDA 8.0.  This is the setup we've used for testing Distiller.",
+            "location": "/install/index.html#install-dependencies", 
+            "text": "Finally, install Distiller's dependency packages using  pip3 :  $ pip3 install -r requirements.txt  PyTorch is included in the  requirements.txt  file, and will currently download PyTorch version 3.1 for CUDA 8.0.  This is the setup we've used for testing Distiller.", 
             "title": "Install dependencies"
-        },
+        }, 
         {
-            "location": "/usage/index.html",
-            "text": "Using the sample application\n\n\nThe Distiller repository contains a sample application, \ndistiller/examples/classifier_compression/compress_classifier.py\n, and a set of scheduling files which demonstrate Distiller's features.  Following is a brief discussion of how to use this application and the accompanying schedules.\n\n\nYou might also want to refer to the following resources:\n\n\n\n\nAn \nexplanation\n of the scheduler file format.\n\n\nAn in-depth \ndiscussion\n of how we used these schedule files to implement several state-of-the-art DNN compression research papers.\n\n\n\n\nThe sample application supports various features for compression of image classification DNNs, and gives an example of how to integrate distiller in your own application.  The code is documented and should be considered the best source of documentation, but we provide some elaboration here.\n\n\nThis diagram shows how where \ncompress_classifier.py\n fits in the compression workflow, and how we integrate the Jupyter notebooks as part of our research work.\n\n\n\nCommand line arguments\n\n\nTo get help on the command line arguments, invoke:\n\n\n$ python3 compress_classifier.py --help\n\n\n\n\nFor example:\n\n\n$ time python3 compress_classifier.py -a alexnet --lr 0.005 -p 50 ../../../data.imagenet -j 44 --epochs 90 --pretrained --compress=../sensitivity-pruning/alexnet.schedule_sensitivity.yaml\n\nParameters:\n +----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n |    | Name                      | Shape            |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean |\n |----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n |  0 | features.module.0.weight  | (64, 3, 11, 11)  |         23232 |          13411 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   42.27359 | 0.14391 | -0.00002 |    0.08805 |\n |  1 | features.module.3.weight  | (192, 64, 5, 5)  |        307200 |         115560 |    0.00000 |    0.00000 |  0.00000 |  1.91243 |  0.00000 |   62.38281 | 0.04703 | -0.00250 |    0.02289 |\n |  2 | features.module.6.weight  | (384, 192, 3, 3) |        663552 |         256565 |    0.00000 |    0.00000 |  0.00000 |  6.18490 |  0.00000 |   61.33445 | 0.03354 | -0.00184 |    0.01803 |\n |  3 | features.module.8.weight  | (256, 384, 3, 3) |        884736 |         315065 |    0.00000 |    0.00000 |  0.00000 |  6.96411 |  0.00000 |   64.38881 | 0.02646 | -0.00168 |    0.01422 |\n |  4 | features.module.10.weight | (256, 256, 3, 3) |        589824 |         186938 |    0.00000 |    0.00000 |  0.00000 | 15.49225 |  0.00000 |   68.30614 | 0.02714 | -0.00246 |    0.01409 |\n |  5 | classifier.1.weight       | (4096, 9216)     |      37748736 |        3398881 |    0.00000 |    0.21973 |  0.00000 |  0.21973 |  0.00000 |   90.99604 | 0.00589 | -0.00020 |    0.00168 |\n |  6 | classifier.4.weight       | (4096, 4096)     |      16777216 |        1782769 |    0.21973 |    3.46680 |  0.00000 |  3.46680 |  0.00000 |   89.37387 | 0.00849 | -0.00066 |    0.00263 |\n |  7 | classifier.6.weight       | (1000, 4096)     |       4096000 |         994738 |    3.36914 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   75.71440 | 0.01718 |  0.00030 |    0.00778 |\n |  8 | Total sparsity:           | -                |      61090496 |        7063928 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   88.43694 | 0.00000 |  0.00000 |    0.00000 |\n +----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n 2018-04-04 21:30:52,499 - Total sparsity: 88.44\n\n 2018-04-04 21:30:52,499 - --- validate (epoch=89)-----------\n 2018-04-04 21:30:52,499 - 128116 samples (256 per mini-batch)\n 2018-04-04 21:31:04,646 - Epoch: [89][   50/  500]    Loss 2.175988    Top1 51.289063    Top5 74.023438\n 2018-04-04 21:31:06,427 - Epoch: [89][  100/  500]    Loss 2.171564    Top1 51.175781    Top5 74.308594\n 2018-04-04 21:31:11,432 - Epoch: [89][  150/  500]    Loss 2.159347    Top1 51.546875    Top5 74.473958\n 2018-04-04 21:31:14,364 - Epoch: [89][  200/  500]    Loss 2.156857    Top1 51.585938    Top5 74.568359\n 2018-04-04 21:31:18,381 - Epoch: [89][  250/  500]    Loss 2.152790    Top1 51.707813    Top5 74.681250\n 2018-04-04 21:31:22,195 - Epoch: [89][  300/  500]    Loss 2.149962    Top1 51.791667    Top5 74.755208\n 2018-04-04 21:31:25,508 - Epoch: [89][  350/  500]    Loss 2.150936    Top1 51.827009    Top5 74.767857\n 2018-04-04 21:31:29,538 - Epoch: [89][  400/  500]    Loss 2.150853    Top1 51.781250    Top5 74.763672\n 2018-04-04 21:31:32,842 - Epoch: [89][  450/  500]    Loss 2.150156    Top1 51.828125    Top5 74.821181\n 2018-04-04 21:31:35,338 - Epoch: [89][  500/  500]    Loss 2.150417    Top1 51.833594    Top5 74.817187\n 2018-04-04 21:31:35,357 - ==> Top1: 51.838    Top5: 74.817    Loss: 2.150\n\n 2018-04-04 21:31:35,364 - Saving checkpoint\n 2018-04-04 21:31:39,251 - --- test ---------------------\n 2018-04-04 21:31:39,252 - 50000 samples (256 per mini-batch)\n 2018-04-04 21:31:51,512 - Test: [   50/  195]    Loss 1.487607    Top1 63.273438    Top5 85.695312\n 2018-04-04 21:31:55,015 - Test: [  100/  195]    Loss 1.638043    Top1 60.636719    Top5 83.664062\n 2018-04-04 21:31:58,732 - Test: [  150/  195]    Loss 1.833214    Top1 57.619792    Top5 80.447917\n 2018-04-04 21:32:01,274 - ==> Top1: 56.606    Top5: 79.446    Loss: 1.893\n\n\n\n\nLet's look at the command line again:\n\n\n$ time python3 compress_classifier.py -a alexnet --lr 0.005 -p 50 ../../../data.imagenet -j 44 --epochs 90 --pretrained --compress=../sensitivity-pruning/alexnet.schedule_sensitivity.yaml\n\n\n\n\nIn this example, we prune a TorchVision pre-trained AlexNet network, using the following configuration:\n\n\n\n\nLearning-rate of 0.005\n\n\nPrint progress every 50 mini-batches.\n\n\nUse 44 worker threads to load data (make sure to use something suitable for your machine).\n\n\nRun for 90 epochs.  Torchvision's pre-trained models did not store the epoch metadata, so pruning starts at epoch 0.  When you train and prune your own networks, the last training epoch is saved as a metadata with the model.  Therefore, when you load such models, the first epoch is not 0, but it is the last training epoch.\n\n\nThe pruning schedule is provided in \nalexnet.schedule_sensitivity.yaml\n\n\nLog files are written to directory \nlogs\n.\n\n\n\n\nExamples\n\n\nDistiller comes with several example schedules which can be used together with \ncompress_classifier.py\n.\nThese example schedules (YAML) files, contain the command line that is used in order to invoke the schedule (so that you can easily recreate the results in your environment), together with the results of the pruning or regularization.  The results usually contain a table showing the sparsity of  each of the model parameters, together with the validation and test top1, top5 and loss scores.\n\n\nFor more details on the example schedules, you can refer to the coverage of the \nModel Zoo\n.\n\n\n\n\nexamples/agp-pruning\n:\n\n\nAutomated Gradual Pruning (AGP) on MobileNet and ResNet18 (ImageNet dataset)\n\n\n\n\n\n\n\nexamples/hybrid\n:\n\n\nAlexNet AGP with 2D (kernel) regularization (ImageNet dataset)\n\n\nAlexNet sensitivity pruning with 2D regularization\n\n\n\n\n\n\n\nexamples/network_slimming\n:\n\n\nResNet20 Network Slimming (this is work-in-progress)\n\n\n\n\n\n\n\nexamples/pruning_filters_for_efficient_convnets\n:\n\n\nResNet56 baseline training (CIFAR10 dataset)\n\n\nResNet56 filter removal using filter ranking\n\n\n\n\n\n\n\nexamples/sensitivity_analysis\n:\n\n\nElement-wise pruning sensitivity-analysis:\n\n\nAlexNet (ImageNet)\n\n\nMobileNet (ImageNet)\n\n\nResNet18 (ImageNet)\n\n\nResNet20 (CIFAR10)\n\n\nResNet34 (ImageNet)\n\n\nFilter-wise pruning sensitivity-analysis:\n\n\nResNet20 (CIFAR10)\n\n\nResNet56 (CIFAR10)\n\n\n\n\n\n\n\n\nexamples/sensitivity-pruning\n:\n\n\n\n\nAlexNet sensitivity pruning with Iterative Pruning\n\n\nAlexNet sensitivity pruning with One-Shot Pruning\n\n\n\n\n\n\n\n\nexamples/ssl\n:\n\n\n\n\nResNet20 baseline training (CIFAR10 dataset)\n\n\nStructured Sparsity Learning (SSL) with layer removal on ResNet20\n\n\nSSL with channels removal on ResNet20\n\n\n\n\n\n\n\n\nExperiment reproducibility\n\n\nExperiment reproducibility is sometimes important.  Pete Warden recently expounded about this in his \nblog\n.\n\nPyTorch's support for deterministic execution requires us to use only one thread for loading data (other wise the multi-threaded execution of the data loaders can create random order and change the results), and to set the seed of the CPU and GPU PRNGs.  Using the \n--deterministic\n command-line flag and setting \nj=1\n will produce reproducible results (for the same PyTorch version).\n\n\nPerforming pruning sensitivity analysis\n\n\nDistiller supports element-wise and filter-wise pruning sensitivity analysis.  In both cases, L1-norm is used to rank which elements or filters to prune.  For example, when running filter-pruning sensitivity analysis, the L1-norm of the filters of each layer's weights tensor are calculated, and the bottom x% are set to zero.  \n\nThe analysis process is quite long, because currently we use the entire test dataset to assess the accuracy performance at each pruning level of each weights tensor.  Using a small dataset for this would save much time and we plan on assessing if this will provide sufficient results.\n\nResults are output as a CSV file (\nsensitivity.csv\n) and PNG file (\nsensitivity.png\n).  The implementation is in \ndistiller/sensitivity.py\n and it contains further details about process and the format of the CSV file.\n\n\nThe example below performs element-wise pruning sensitivity analysis on ResNet20 for CIFAR10:\n\n\n$ python3 compress_classifier.py -a resnet20_cifar ../../../data.cifar10/ -j=1 --resume=../cifar10/resnet20/checkpoint_trained_dense.pth.tar --sense=element\n\n\n\n\nThe \nsense\n command-line argument can be set to either \nelement\n or \nfilter\n, depending on the type of analysis you want done.\n\n\nThere is also a \nJupyter notebook\n with example invocations, outputs and explanations.\n\n\nQuantization\n\n\nCurrently Distiller support 8-bit quantization only (quantization of lower precision data types will follow shortly) which does not require training, so any model (whether pruned or not) can be quantized.\n\nUse the \n--quantize\n command-line flag, together with \n--evaluate\n to evaluate the accuracy of your model after quantization.  The following example qunatizes ResNet18 for ImageNet:\n\n\n$ python3 compress_classifier.py -a resnet18 ../../../data.imagenet  --pretrained --quantize --evaluate\n\n\n\n\nGenerates:\n\n\nPreparing model for quantization\n--- test ---------------------\n50000 samples (256 per mini-batch)\nTest: [   10/  195]    Loss 0.856354    Top1 79.257812    Top5 92.500000\nTest: [   20/  195]    Loss 0.923131    Top1 76.953125    Top5 92.246094\nTest: [   30/  195]    Loss 0.885186    Top1 77.955729    Top5 92.486979\nTest: [   40/  195]    Loss 0.930263    Top1 76.181641    Top5 92.597656\nTest: [   50/  195]    Loss 0.931062    Top1 75.726562    Top5 92.906250\nTest: [   60/  195]    Loss 0.932019    Top1 75.651042    Top5 93.151042\nTest: [   70/  195]    Loss 0.921287    Top1 76.060268    Top5 93.270089\nTest: [   80/  195]    Loss 0.932539    Top1 75.986328    Top5 93.100586\nTest: [   90/  195]    Loss 0.996000    Top1 74.700521    Top5 92.330729\nTest: [  100/  195]    Loss 1.066699    Top1 73.289062    Top5 91.437500\nTest: [  110/  195]    Loss 1.100970    Top1 72.574574    Top5 91.001420\nTest: [  120/  195]    Loss 1.122376    Top1 72.268880    Top5 90.696615\nTest: [  130/  195]    Loss 1.171726    Top1 71.198918    Top5 90.120192\nTest: [  140/  195]    Loss 1.191500    Top1 70.797991    Top5 89.902344\nTest: [  150/  195]    Loss 1.219954    Top1 70.210938    Top5 89.453125\nTest: [  160/  195]    Loss 1.240942    Top1 69.855957    Top5 89.162598\nTest: [  170/  195]    Loss 1.265741    Top1 69.342831    Top5 88.807445\nTest: [  180/  195]    Loss 1.281185    Top1 69.051649    Top5 88.589410\nTest: [  190/  195]    Loss 1.279682    Top1 69.019326    Top5 88.632812\n==> Top1: 69.130    Top5: 88.732    Loss: 1.276\n\n\n\n\nSummaries\n\n\nYou can use the sample compression application to generate model summary reports, such as the attributes and compute summary report (see screen capture below).\nYou can log sparsity statistics (written to console and CSV file), performance, optimizer and model information, and also create a PNG image of the DNN.\nCreating a PNG image is an experimental feature (it relies on features which are not available on PyTorch 3.1 and that we hope will be available in PyTorch's next release), so to use it you will need to compile the PyTorch master branch, and hope for the best ;-).\n\n\n$ python3 compress_classifier.py --resume=../ssl/checkpoints/checkpoint_trained_ch_regularized_dense.pth.tar -a=resnet20_cifar ../../../data.cifar10 --summary=compute\n\n\n\n\nGenerates:\n\n\n+----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------+\n|    | Name                         | Type   | Attrs    | IFM             |   IFM volume | OFM             |   OFM volume |   Weights volume |    MACs |\n|----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------|\n|  0 | module.conv1                 | Conv2d | k=(3, 3) | (1, 3, 32, 32)  |         3072 | (1, 16, 32, 32) |        16384 |              432 |  442368 |\n|  1 | module.layer1.0.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  2 | module.layer1.0.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  3 | module.layer1.1.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  4 | module.layer1.1.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  5 | module.layer1.2.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  6 | module.layer1.2.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  7 | module.layer2.0.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 32, 16, 16) |         8192 |             4608 | 1179648 |\n|  8 | module.layer2.0.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n|  9 | module.layer2.0.downsample.0 | Conv2d | k=(1, 1) | (1, 16, 32, 32) |        16384 | (1, 32, 16, 16) |         8192 |              512 |  131072 |\n| 10 | module.layer2.1.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 11 | module.layer2.1.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 12 | module.layer2.2.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 13 | module.layer2.2.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 14 | module.layer3.0.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 64, 8, 8)   |         4096 |            18432 | 1179648 |\n| 15 | module.layer3.0.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 16 | module.layer3.0.downsample.0 | Conv2d | k=(1, 1) | (1, 32, 16, 16) |         8192 | (1, 64, 8, 8)   |         4096 |             2048 |  131072 |\n| 17 | module.layer3.1.conv1        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 18 | module.layer3.1.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 19 | module.layer3.2.conv1        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 20 | module.layer3.2.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 21 | module.fc                    | Linear |          | (1, 64)         |           64 | (1, 10)         |           10 |              640 |     640 |\n+----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------+\nTotal MACs: 40,813,184\n\n\n\n\nUsing TensorBoard\n\n\nGoogle's \nTensorBoard\n is an excellent tool for visualizing the progress of DNN training.  Distiller's logger supports writing performance indicators and parameter statistics in a file format that can be read by TensorBoard (Distiller uses TensorFlow's APIs in order to do this, which is why Distiller requires the installation of TensorFlow).\n\nTo view the graphs, invoke the TensorBoard server.  For example:\n\n\n$ tensorboard --logdir=logs\n\n\n\n\nDistillers's setup (requirements.txt) installs TensorFlow for CPU. If you want a different installation, please follow the \nTensorFlow installation instructions\n.\n\n\nCollecting feature-maps statistics\n\n\nIn CNNs with ReLU layers, ReLU activations (feature-maps) also exhibit a nice level of sparsity (50-60% sparsity is typical). \n\nYou can collect activation statistics using the \n--act_stats\n command-line flag.\n\n\nUsing the Jupyter notebooks\n\n\nThe Jupyter notebooks contain many examples of how to use the statistics summaries generated by Distiller.  They are explained in a separate page.\n\n\nGenerating this documentation\n\n\nInstall mkdocs and the required packages by executing:\n\n\n$ pip3 install -r doc-requirements.txt\n\n\n\n\nTo build the project documentation run:\n\n\n$ cd distiller/docs-src\n$ mkdocs build --clean\n\n\n\n\nThis will create a folder named 'site' which contains the documentation website.\nOpen distiller/docs/site/index.html to view the documentation home page.",
+            "location": "/usage/index.html", 
+            "text": "Using the sample application\n\n\nThe Distiller repository contains a sample application, \ndistiller/examples/classifier_compression/compress_classifier.py\n, and a set of scheduling files which demonstrate Distiller's features.  Following is a brief discussion of how to use this application and the accompanying schedules.\n\n\nYou might also want to refer to the following resources:\n\n\n\n\nAn \nexplanation\n of the scheduler file format.\n\n\nAn in-depth \ndiscussion\n of how we used these schedule files to implement several state-of-the-art DNN compression research papers.\n\n\n\n\nThe sample application supports various features for compression of image classification DNNs, and gives an example of how to integrate distiller in your own application.  The code is documented and should be considered the best source of documentation, but we provide some elaboration here.\n\n\nThis diagram shows how where \ncompress_classifier.py\n fits in the compression workflow, and how we integrate the Jupyter notebooks as part of our research work.\n\n\n\nCommand line arguments\n\n\nTo get help on the command line arguments, invoke:\n\n\n$ python3 compress_classifier.py --help\n\n\n\n\nFor example:\n\n\n$ time python3 compress_classifier.py -a alexnet --lr 0.005 -p 50 ../../../data.imagenet -j 44 --epochs 90 --pretrained --compress=../sensitivity-pruning/alexnet.schedule_sensitivity.yaml\n\nParameters:\n +----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n |    | Name                      | Shape            |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean |\n |----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n |  0 | features.module.0.weight  | (64, 3, 11, 11)  |         23232 |          13411 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   42.27359 | 0.14391 | -0.00002 |    0.08805 |\n |  1 | features.module.3.weight  | (192, 64, 5, 5)  |        307200 |         115560 |    0.00000 |    0.00000 |  0.00000 |  1.91243 |  0.00000 |   62.38281 | 0.04703 | -0.00250 |    0.02289 |\n |  2 | features.module.6.weight  | (384, 192, 3, 3) |        663552 |         256565 |    0.00000 |    0.00000 |  0.00000 |  6.18490 |  0.00000 |   61.33445 | 0.03354 | -0.00184 |    0.01803 |\n |  3 | features.module.8.weight  | (256, 384, 3, 3) |        884736 |         315065 |    0.00000 |    0.00000 |  0.00000 |  6.96411 |  0.00000 |   64.38881 | 0.02646 | -0.00168 |    0.01422 |\n |  4 | features.module.10.weight | (256, 256, 3, 3) |        589824 |         186938 |    0.00000 |    0.00000 |  0.00000 | 15.49225 |  0.00000 |   68.30614 | 0.02714 | -0.00246 |    0.01409 |\n |  5 | classifier.1.weight       | (4096, 9216)     |      37748736 |        3398881 |    0.00000 |    0.21973 |  0.00000 |  0.21973 |  0.00000 |   90.99604 | 0.00589 | -0.00020 |    0.00168 |\n |  6 | classifier.4.weight       | (4096, 4096)     |      16777216 |        1782769 |    0.21973 |    3.46680 |  0.00000 |  3.46680 |  0.00000 |   89.37387 | 0.00849 | -0.00066 |    0.00263 |\n |  7 | classifier.6.weight       | (1000, 4096)     |       4096000 |         994738 |    3.36914 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   75.71440 | 0.01718 |  0.00030 |    0.00778 |\n |  8 | Total sparsity:           | -                |      61090496 |        7063928 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   88.43694 | 0.00000 |  0.00000 |    0.00000 |\n +----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n 2018-04-04 21:30:52,499 - Total sparsity: 88.44\n\n 2018-04-04 21:30:52,499 - --- validate (epoch=89)-----------\n 2018-04-04 21:30:52,499 - 128116 samples (256 per mini-batch)\n 2018-04-04 21:31:04,646 - Epoch: [89][   50/  500]    Loss 2.175988    Top1 51.289063    Top5 74.023438\n 2018-04-04 21:31:06,427 - Epoch: [89][  100/  500]    Loss 2.171564    Top1 51.175781    Top5 74.308594\n 2018-04-04 21:31:11,432 - Epoch: [89][  150/  500]    Loss 2.159347    Top1 51.546875    Top5 74.473958\n 2018-04-04 21:31:14,364 - Epoch: [89][  200/  500]    Loss 2.156857    Top1 51.585938    Top5 74.568359\n 2018-04-04 21:31:18,381 - Epoch: [89][  250/  500]    Loss 2.152790    Top1 51.707813    Top5 74.681250\n 2018-04-04 21:31:22,195 - Epoch: [89][  300/  500]    Loss 2.149962    Top1 51.791667    Top5 74.755208\n 2018-04-04 21:31:25,508 - Epoch: [89][  350/  500]    Loss 2.150936    Top1 51.827009    Top5 74.767857\n 2018-04-04 21:31:29,538 - Epoch: [89][  400/  500]    Loss 2.150853    Top1 51.781250    Top5 74.763672\n 2018-04-04 21:31:32,842 - Epoch: [89][  450/  500]    Loss 2.150156    Top1 51.828125    Top5 74.821181\n 2018-04-04 21:31:35,338 - Epoch: [89][  500/  500]    Loss 2.150417    Top1 51.833594    Top5 74.817187\n 2018-04-04 21:31:35,357 - ==\n Top1: 51.838    Top5: 74.817    Loss: 2.150\n\n 2018-04-04 21:31:35,364 - Saving checkpoint\n 2018-04-04 21:31:39,251 - --- test ---------------------\n 2018-04-04 21:31:39,252 - 50000 samples (256 per mini-batch)\n 2018-04-04 21:31:51,512 - Test: [   50/  195]    Loss 1.487607    Top1 63.273438    Top5 85.695312\n 2018-04-04 21:31:55,015 - Test: [  100/  195]    Loss 1.638043    Top1 60.636719    Top5 83.664062\n 2018-04-04 21:31:58,732 - Test: [  150/  195]    Loss 1.833214    Top1 57.619792    Top5 80.447917\n 2018-04-04 21:32:01,274 - ==\n Top1: 56.606    Top5: 79.446    Loss: 1.893\n\n\n\n\nLet's look at the command line again:\n\n\n$ time python3 compress_classifier.py -a alexnet --lr 0.005 -p 50 ../../../data.imagenet -j 44 --epochs 90 --pretrained --compress=../sensitivity-pruning/alexnet.schedule_sensitivity.yaml\n\n\n\n\nIn this example, we prune a TorchVision pre-trained AlexNet network, using the following configuration:\n\n\n\n\nLearning-rate of 0.005\n\n\nPrint progress every 50 mini-batches.\n\n\nUse 44 worker threads to load data (make sure to use something suitable for your machine).\n\n\nRun for 90 epochs.  Torchvision's pre-trained models did not store the epoch metadata, so pruning starts at epoch 0.  When you train and prune your own networks, the last training epoch is saved as a metadata with the model.  Therefore, when you load such models, the first epoch is not 0, but it is the last training epoch.\n\n\nThe pruning schedule is provided in \nalexnet.schedule_sensitivity.yaml\n\n\nLog files are written to directory \nlogs\n.\n\n\n\n\nExamples\n\n\nDistiller comes with several example schedules which can be used together with \ncompress_classifier.py\n.\nThese example schedules (YAML) files, contain the command line that is used in order to invoke the schedule (so that you can easily recreate the results in your environment), together with the results of the pruning or regularization.  The results usually contain a table showing the sparsity of  each of the model parameters, together with the validation and test top1, top5 and loss scores.\n\n\nFor more details on the example schedules, you can refer to the coverage of the \nModel Zoo\n.\n\n\n\n\nexamples/agp-pruning\n:\n\n\nAutomated Gradual Pruning (AGP) on MobileNet and ResNet18 (ImageNet dataset)\n\n\n\n\n\n\n\nexamples/hybrid\n:\n\n\nAlexNet AGP with 2D (kernel) regularization (ImageNet dataset)\n\n\nAlexNet sensitivity pruning with 2D regularization\n\n\n\n\n\n\n\nexamples/network_slimming\n:\n\n\nResNet20 Network Slimming (this is work-in-progress)\n\n\n\n\n\n\n\nexamples/pruning_filters_for_efficient_convnets\n:\n\n\nResNet56 baseline training (CIFAR10 dataset)\n\n\nResNet56 filter removal using filter ranking\n\n\n\n\n\n\n\nexamples/sensitivity_analysis\n:\n\n\nElement-wise pruning sensitivity-analysis:\n\n\nAlexNet (ImageNet)\n\n\nMobileNet (ImageNet)\n\n\nResNet18 (ImageNet)\n\n\nResNet20 (CIFAR10)\n\n\nResNet34 (ImageNet)\n\n\nFilter-wise pruning sensitivity-analysis:\n\n\nResNet20 (CIFAR10)\n\n\nResNet56 (CIFAR10)\n\n\n\n\n\n\n\nexamples/sensitivity-pruning\n:\n\n\nAlexNet sensitivity pruning with Iterative Pruning\n\n\nAlexNet sensitivity pruning with One-Shot Pruning\n\n\n\n\n\n\n\nexamples/ssl\n:\n\n\nResNet20 baseline training (CIFAR10 dataset)\n\n\nStructured Sparsity Learning (SSL) with layer removal on ResNet20\n\n\nSSL with channels removal on ResNet20\n\n\n\n\n\n\n\nexamples/quantization\n:\n\n\nAlexNet w. Batch-Norm (base FP32 + DoReFa)\n\n\nPre-activation ResNet20 on CIFAR10 (base FP32 + DoReFa)\n\n\nPre-activation ResNet18 on ImageNEt (base FP32 + DoReFa)\n\n\n\n\n\n\n\n\nExperiment reproducibility\n\n\nExperiment reproducibility is sometimes important.  Pete Warden recently expounded about this in his \nblog\n.\n\nPyTorch's support for deterministic execution requires us to use only one thread for loading data (other wise the multi-threaded execution of the data loaders can create random order and change the results), and to set the seed of the CPU and GPU PRNGs.  Using the \n--deterministic\n command-line flag and setting \nj=1\n will produce reproducible results (for the same PyTorch version).\n\n\nPerforming pruning sensitivity analysis\n\n\nDistiller supports element-wise and filter-wise pruning sensitivity analysis.  In both cases, L1-norm is used to rank which elements or filters to prune.  For example, when running filter-pruning sensitivity analysis, the L1-norm of the filters of each layer's weights tensor are calculated, and the bottom x% are set to zero.  \n\nThe analysis process is quite long, because currently we use the entire test dataset to assess the accuracy performance at each pruning level of each weights tensor.  Using a small dataset for this would save much time and we plan on assessing if this will provide sufficient results.\n\nResults are output as a CSV file (\nsensitivity.csv\n) and PNG file (\nsensitivity.png\n).  The implementation is in \ndistiller/sensitivity.py\n and it contains further details about process and the format of the CSV file.\n\n\nThe example below performs element-wise pruning sensitivity analysis on ResNet20 for CIFAR10:\n\n\n$ python3 compress_classifier.py -a resnet20_cifar ../../../data.cifar10/ -j=1 --resume=../cifar10/resnet20/checkpoint_trained_dense.pth.tar --sense=element\n\n\n\n\nThe \nsense\n command-line argument can be set to either \nelement\n or \nfilter\n, depending on the type of analysis you want done.\n\n\nThere is also a \nJupyter notebook\n with example invocations, outputs and explanations.\n\n\n\"Direct\" Quantization Without Training\n\n\nDistiller supports 8-bit quantization of trained modules without re-training (using \nSymmetric Linear Quantization\n). So, any model (whether pruned or not) can be quantized.\n\nUse the \n--quantize\n command-line flag, together with \n--evaluate\n to evaluate the accuracy of your model after quantization.  The following example qunatizes ResNet18 for ImageNet:\n\n\n$ python3 compress_classifier.py -a resnet18 ../../../data.imagenet  --pretrained --quantize --evaluate\n\n\n\n\nGenerates:\n\n\nPreparing model for quantization\n--- test ---------------------\n50000 samples (256 per mini-batch)\nTest: [   10/  195]    Loss 0.856354    Top1 79.257812    Top5 92.500000\nTest: [   20/  195]    Loss 0.923131    Top1 76.953125    Top5 92.246094\nTest: [   30/  195]    Loss 0.885186    Top1 77.955729    Top5 92.486979\nTest: [   40/  195]    Loss 0.930263    Top1 76.181641    Top5 92.597656\nTest: [   50/  195]    Loss 0.931062    Top1 75.726562    Top5 92.906250\nTest: [   60/  195]    Loss 0.932019    Top1 75.651042    Top5 93.151042\nTest: [   70/  195]    Loss 0.921287    Top1 76.060268    Top5 93.270089\nTest: [   80/  195]    Loss 0.932539    Top1 75.986328    Top5 93.100586\nTest: [   90/  195]    Loss 0.996000    Top1 74.700521    Top5 92.330729\nTest: [  100/  195]    Loss 1.066699    Top1 73.289062    Top5 91.437500\nTest: [  110/  195]    Loss 1.100970    Top1 72.574574    Top5 91.001420\nTest: [  120/  195]    Loss 1.122376    Top1 72.268880    Top5 90.696615\nTest: [  130/  195]    Loss 1.171726    Top1 71.198918    Top5 90.120192\nTest: [  140/  195]    Loss 1.191500    Top1 70.797991    Top5 89.902344\nTest: [  150/  195]    Loss 1.219954    Top1 70.210938    Top5 89.453125\nTest: [  160/  195]    Loss 1.240942    Top1 69.855957    Top5 89.162598\nTest: [  170/  195]    Loss 1.265741    Top1 69.342831    Top5 88.807445\nTest: [  180/  195]    Loss 1.281185    Top1 69.051649    Top5 88.589410\nTest: [  190/  195]    Loss 1.279682    Top1 69.019326    Top5 88.632812\n==\n Top1: 69.130    Top5: 88.732    Loss: 1.276\n\n\n\n\nSummaries\n\n\nYou can use the sample compression application to generate model summary reports, such as the attributes and compute summary report (see screen capture below).\nYou can log sparsity statistics (written to console and CSV file), performance, optimizer and model information, and also create a PNG image of the DNN.\nCreating a PNG image is an experimental feature (it relies on features which are not available on PyTorch 3.1 and that we hope will be available in PyTorch's next release), so to use it you will need to compile the PyTorch master branch, and hope for the best ;-).\n\n\n$ python3 compress_classifier.py --resume=../ssl/checkpoints/checkpoint_trained_ch_regularized_dense.pth.tar -a=resnet20_cifar ../../../data.cifar10 --summary=compute\n\n\n\n\nGenerates:\n\n\n+----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------+\n|    | Name                         | Type   | Attrs    | IFM             |   IFM volume | OFM             |   OFM volume |   Weights volume |    MACs |\n|----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------|\n|  0 | module.conv1                 | Conv2d | k=(3, 3) | (1, 3, 32, 32)  |         3072 | (1, 16, 32, 32) |        16384 |              432 |  442368 |\n|  1 | module.layer1.0.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  2 | module.layer1.0.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  3 | module.layer1.1.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  4 | module.layer1.1.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  5 | module.layer1.2.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  6 | module.layer1.2.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  7 | module.layer2.0.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 32, 16, 16) |         8192 |             4608 | 1179648 |\n|  8 | module.layer2.0.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n|  9 | module.layer2.0.downsample.0 | Conv2d | k=(1, 1) | (1, 16, 32, 32) |        16384 | (1, 32, 16, 16) |         8192 |              512 |  131072 |\n| 10 | module.layer2.1.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 11 | module.layer2.1.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 12 | module.layer2.2.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 13 | module.layer2.2.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 14 | module.layer3.0.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 64, 8, 8)   |         4096 |            18432 | 1179648 |\n| 15 | module.layer3.0.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 16 | module.layer3.0.downsample.0 | Conv2d | k=(1, 1) | (1, 32, 16, 16) |         8192 | (1, 64, 8, 8)   |         4096 |             2048 |  131072 |\n| 17 | module.layer3.1.conv1        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 18 | module.layer3.1.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 19 | module.layer3.2.conv1        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 20 | module.layer3.2.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 21 | module.fc                    | Linear |          | (1, 64)         |           64 | (1, 10)         |           10 |              640 |     640 |\n+----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------+\nTotal MACs: 40,813,184\n\n\n\n\nUsing TensorBoard\n\n\nGoogle's \nTensorBoard\n is an excellent tool for visualizing the progress of DNN training.  Distiller's logger supports writing performance indicators and parameter statistics in a file format that can be read by TensorBoard (Distiller uses TensorFlow's APIs in order to do this, which is why Distiller requires the installation of TensorFlow).\n\nTo view the graphs, invoke the TensorBoard server.  For example:\n\n\n$ tensorboard --logdir=logs\n\n\n\n\nDistillers's setup (requirements.txt) installs TensorFlow for CPU. If you want a different installation, please follow the \nTensorFlow installation instructions\n.\n\n\nCollecting feature-maps statistics\n\n\nIn CNNs with ReLU layers, ReLU activations (feature-maps) also exhibit a nice level of sparsity (50-60% sparsity is typical). \n\nYou can collect activation statistics using the \n--act_stats\n command-line flag.\n\n\nUsing the Jupyter notebooks\n\n\nThe Jupyter notebooks contain many examples of how to use the statistics summaries generated by Distiller.  They are explained in a separate page.\n\n\nGenerating this documentation\n\n\nInstall mkdocs and the required packages by executing:\n\n\n$ pip3 install -r doc-requirements.txt\n\n\n\n\nTo build the project documentation run:\n\n\n$ cd distiller/docs-src\n$ mkdocs build --clean\n\n\n\n\nThis will create a folder named 'site' which contains the documentation website.\nOpen distiller/docs/site/index.html to view the documentation home page.", 
             "title": "Usage"
-        },
+        }, 
         {
-            "location": "/usage/index.html#using-the-sample-application",
-            "text": "The Distiller repository contains a sample application,  distiller/examples/classifier_compression/compress_classifier.py , and a set of scheduling files which demonstrate Distiller's features.  Following is a brief discussion of how to use this application and the accompanying schedules.  You might also want to refer to the following resources:   An  explanation  of the scheduler file format.  An in-depth  discussion  of how we used these schedule files to implement several state-of-the-art DNN compression research papers.   The sample application supports various features for compression of image classification DNNs, and gives an example of how to integrate distiller in your own application.  The code is documented and should be considered the best source of documentation, but we provide some elaboration here.  This diagram shows how where  compress_classifier.py  fits in the compression workflow, and how we integrate the Jupyter notebooks as part of our research work.",
+            "location": "/usage/index.html#using-the-sample-application", 
+            "text": "The Distiller repository contains a sample application,  distiller/examples/classifier_compression/compress_classifier.py , and a set of scheduling files which demonstrate Distiller's features.  Following is a brief discussion of how to use this application and the accompanying schedules.  You might also want to refer to the following resources:   An  explanation  of the scheduler file format.  An in-depth  discussion  of how we used these schedule files to implement several state-of-the-art DNN compression research papers.   The sample application supports various features for compression of image classification DNNs, and gives an example of how to integrate distiller in your own application.  The code is documented and should be considered the best source of documentation, but we provide some elaboration here.  This diagram shows how where  compress_classifier.py  fits in the compression workflow, and how we integrate the Jupyter notebooks as part of our research work.", 
             "title": "Using the sample application"
-        },
+        }, 
         {
-            "location": "/usage/index.html#command-line-arguments",
-            "text": "To get help on the command line arguments, invoke:  $ python3 compress_classifier.py --help  For example:  $ time python3 compress_classifier.py -a alexnet --lr 0.005 -p 50 ../../../data.imagenet -j 44 --epochs 90 --pretrained --compress=../sensitivity-pruning/alexnet.schedule_sensitivity.yaml\n\nParameters:\n +----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n |    | Name                      | Shape            |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean |\n |----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n |  0 | features.module.0.weight  | (64, 3, 11, 11)  |         23232 |          13411 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   42.27359 | 0.14391 | -0.00002 |    0.08805 |\n |  1 | features.module.3.weight  | (192, 64, 5, 5)  |        307200 |         115560 |    0.00000 |    0.00000 |  0.00000 |  1.91243 |  0.00000 |   62.38281 | 0.04703 | -0.00250 |    0.02289 |\n |  2 | features.module.6.weight  | (384, 192, 3, 3) |        663552 |         256565 |    0.00000 |    0.00000 |  0.00000 |  6.18490 |  0.00000 |   61.33445 | 0.03354 | -0.00184 |    0.01803 |\n |  3 | features.module.8.weight  | (256, 384, 3, 3) |        884736 |         315065 |    0.00000 |    0.00000 |  0.00000 |  6.96411 |  0.00000 |   64.38881 | 0.02646 | -0.00168 |    0.01422 |\n |  4 | features.module.10.weight | (256, 256, 3, 3) |        589824 |         186938 |    0.00000 |    0.00000 |  0.00000 | 15.49225 |  0.00000 |   68.30614 | 0.02714 | -0.00246 |    0.01409 |\n |  5 | classifier.1.weight       | (4096, 9216)     |      37748736 |        3398881 |    0.00000 |    0.21973 |  0.00000 |  0.21973 |  0.00000 |   90.99604 | 0.00589 | -0.00020 |    0.00168 |\n |  6 | classifier.4.weight       | (4096, 4096)     |      16777216 |        1782769 |    0.21973 |    3.46680 |  0.00000 |  3.46680 |  0.00000 |   89.37387 | 0.00849 | -0.00066 |    0.00263 |\n |  7 | classifier.6.weight       | (1000, 4096)     |       4096000 |         994738 |    3.36914 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   75.71440 | 0.01718 |  0.00030 |    0.00778 |\n |  8 | Total sparsity:           | -                |      61090496 |        7063928 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   88.43694 | 0.00000 |  0.00000 |    0.00000 |\n +----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n 2018-04-04 21:30:52,499 - Total sparsity: 88.44\n\n 2018-04-04 21:30:52,499 - --- validate (epoch=89)-----------\n 2018-04-04 21:30:52,499 - 128116 samples (256 per mini-batch)\n 2018-04-04 21:31:04,646 - Epoch: [89][   50/  500]    Loss 2.175988    Top1 51.289063    Top5 74.023438\n 2018-04-04 21:31:06,427 - Epoch: [89][  100/  500]    Loss 2.171564    Top1 51.175781    Top5 74.308594\n 2018-04-04 21:31:11,432 - Epoch: [89][  150/  500]    Loss 2.159347    Top1 51.546875    Top5 74.473958\n 2018-04-04 21:31:14,364 - Epoch: [89][  200/  500]    Loss 2.156857    Top1 51.585938    Top5 74.568359\n 2018-04-04 21:31:18,381 - Epoch: [89][  250/  500]    Loss 2.152790    Top1 51.707813    Top5 74.681250\n 2018-04-04 21:31:22,195 - Epoch: [89][  300/  500]    Loss 2.149962    Top1 51.791667    Top5 74.755208\n 2018-04-04 21:31:25,508 - Epoch: [89][  350/  500]    Loss 2.150936    Top1 51.827009    Top5 74.767857\n 2018-04-04 21:31:29,538 - Epoch: [89][  400/  500]    Loss 2.150853    Top1 51.781250    Top5 74.763672\n 2018-04-04 21:31:32,842 - Epoch: [89][  450/  500]    Loss 2.150156    Top1 51.828125    Top5 74.821181\n 2018-04-04 21:31:35,338 - Epoch: [89][  500/  500]    Loss 2.150417    Top1 51.833594    Top5 74.817187\n 2018-04-04 21:31:35,357 - ==> Top1: 51.838    Top5: 74.817    Loss: 2.150\n\n 2018-04-04 21:31:35,364 - Saving checkpoint\n 2018-04-04 21:31:39,251 - --- test ---------------------\n 2018-04-04 21:31:39,252 - 50000 samples (256 per mini-batch)\n 2018-04-04 21:31:51,512 - Test: [   50/  195]    Loss 1.487607    Top1 63.273438    Top5 85.695312\n 2018-04-04 21:31:55,015 - Test: [  100/  195]    Loss 1.638043    Top1 60.636719    Top5 83.664062\n 2018-04-04 21:31:58,732 - Test: [  150/  195]    Loss 1.833214    Top1 57.619792    Top5 80.447917\n 2018-04-04 21:32:01,274 - ==> Top1: 56.606    Top5: 79.446    Loss: 1.893  Let's look at the command line again:  $ time python3 compress_classifier.py -a alexnet --lr 0.005 -p 50 ../../../data.imagenet -j 44 --epochs 90 --pretrained --compress=../sensitivity-pruning/alexnet.schedule_sensitivity.yaml  In this example, we prune a TorchVision pre-trained AlexNet network, using the following configuration:   Learning-rate of 0.005  Print progress every 50 mini-batches.  Use 44 worker threads to load data (make sure to use something suitable for your machine).  Run for 90 epochs.  Torchvision's pre-trained models did not store the epoch metadata, so pruning starts at epoch 0.  When you train and prune your own networks, the last training epoch is saved as a metadata with the model.  Therefore, when you load such models, the first epoch is not 0, but it is the last training epoch.  The pruning schedule is provided in  alexnet.schedule_sensitivity.yaml  Log files are written to directory  logs .",
+            "location": "/usage/index.html#command-line-arguments", 
+            "text": "To get help on the command line arguments, invoke:  $ python3 compress_classifier.py --help  For example:  $ time python3 compress_classifier.py -a alexnet --lr 0.005 -p 50 ../../../data.imagenet -j 44 --epochs 90 --pretrained --compress=../sensitivity-pruning/alexnet.schedule_sensitivity.yaml\n\nParameters:\n +----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n |    | Name                      | Shape            |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean |\n |----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n |  0 | features.module.0.weight  | (64, 3, 11, 11)  |         23232 |          13411 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   42.27359 | 0.14391 | -0.00002 |    0.08805 |\n |  1 | features.module.3.weight  | (192, 64, 5, 5)  |        307200 |         115560 |    0.00000 |    0.00000 |  0.00000 |  1.91243 |  0.00000 |   62.38281 | 0.04703 | -0.00250 |    0.02289 |\n |  2 | features.module.6.weight  | (384, 192, 3, 3) |        663552 |         256565 |    0.00000 |    0.00000 |  0.00000 |  6.18490 |  0.00000 |   61.33445 | 0.03354 | -0.00184 |    0.01803 |\n |  3 | features.module.8.weight  | (256, 384, 3, 3) |        884736 |         315065 |    0.00000 |    0.00000 |  0.00000 |  6.96411 |  0.00000 |   64.38881 | 0.02646 | -0.00168 |    0.01422 |\n |  4 | features.module.10.weight | (256, 256, 3, 3) |        589824 |         186938 |    0.00000 |    0.00000 |  0.00000 | 15.49225 |  0.00000 |   68.30614 | 0.02714 | -0.00246 |    0.01409 |\n |  5 | classifier.1.weight       | (4096, 9216)     |      37748736 |        3398881 |    0.00000 |    0.21973 |  0.00000 |  0.21973 |  0.00000 |   90.99604 | 0.00589 | -0.00020 |    0.00168 |\n |  6 | classifier.4.weight       | (4096, 4096)     |      16777216 |        1782769 |    0.21973 |    3.46680 |  0.00000 |  3.46680 |  0.00000 |   89.37387 | 0.00849 | -0.00066 |    0.00263 |\n |  7 | classifier.6.weight       | (1000, 4096)     |       4096000 |         994738 |    3.36914 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   75.71440 | 0.01718 |  0.00030 |    0.00778 |\n |  8 | Total sparsity:           | -                |      61090496 |        7063928 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   88.43694 | 0.00000 |  0.00000 |    0.00000 |\n +----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n 2018-04-04 21:30:52,499 - Total sparsity: 88.44\n\n 2018-04-04 21:30:52,499 - --- validate (epoch=89)-----------\n 2018-04-04 21:30:52,499 - 128116 samples (256 per mini-batch)\n 2018-04-04 21:31:04,646 - Epoch: [89][   50/  500]    Loss 2.175988    Top1 51.289063    Top5 74.023438\n 2018-04-04 21:31:06,427 - Epoch: [89][  100/  500]    Loss 2.171564    Top1 51.175781    Top5 74.308594\n 2018-04-04 21:31:11,432 - Epoch: [89][  150/  500]    Loss 2.159347    Top1 51.546875    Top5 74.473958\n 2018-04-04 21:31:14,364 - Epoch: [89][  200/  500]    Loss 2.156857    Top1 51.585938    Top5 74.568359\n 2018-04-04 21:31:18,381 - Epoch: [89][  250/  500]    Loss 2.152790    Top1 51.707813    Top5 74.681250\n 2018-04-04 21:31:22,195 - Epoch: [89][  300/  500]    Loss 2.149962    Top1 51.791667    Top5 74.755208\n 2018-04-04 21:31:25,508 - Epoch: [89][  350/  500]    Loss 2.150936    Top1 51.827009    Top5 74.767857\n 2018-04-04 21:31:29,538 - Epoch: [89][  400/  500]    Loss 2.150853    Top1 51.781250    Top5 74.763672\n 2018-04-04 21:31:32,842 - Epoch: [89][  450/  500]    Loss 2.150156    Top1 51.828125    Top5 74.821181\n 2018-04-04 21:31:35,338 - Epoch: [89][  500/  500]    Loss 2.150417    Top1 51.833594    Top5 74.817187\n 2018-04-04 21:31:35,357 - ==  Top1: 51.838    Top5: 74.817    Loss: 2.150\n\n 2018-04-04 21:31:35,364 - Saving checkpoint\n 2018-04-04 21:31:39,251 - --- test ---------------------\n 2018-04-04 21:31:39,252 - 50000 samples (256 per mini-batch)\n 2018-04-04 21:31:51,512 - Test: [   50/  195]    Loss 1.487607    Top1 63.273438    Top5 85.695312\n 2018-04-04 21:31:55,015 - Test: [  100/  195]    Loss 1.638043    Top1 60.636719    Top5 83.664062\n 2018-04-04 21:31:58,732 - Test: [  150/  195]    Loss 1.833214    Top1 57.619792    Top5 80.447917\n 2018-04-04 21:32:01,274 - ==  Top1: 56.606    Top5: 79.446    Loss: 1.893  Let's look at the command line again:  $ time python3 compress_classifier.py -a alexnet --lr 0.005 -p 50 ../../../data.imagenet -j 44 --epochs 90 --pretrained --compress=../sensitivity-pruning/alexnet.schedule_sensitivity.yaml  In this example, we prune a TorchVision pre-trained AlexNet network, using the following configuration:   Learning-rate of 0.005  Print progress every 50 mini-batches.  Use 44 worker threads to load data (make sure to use something suitable for your machine).  Run for 90 epochs.  Torchvision's pre-trained models did not store the epoch metadata, so pruning starts at epoch 0.  When you train and prune your own networks, the last training epoch is saved as a metadata with the model.  Therefore, when you load such models, the first epoch is not 0, but it is the last training epoch.  The pruning schedule is provided in  alexnet.schedule_sensitivity.yaml  Log files are written to directory  logs .", 
             "title": "Command line arguments"
-        },
+        }, 
         {
-            "location": "/usage/index.html#examples",
-            "text": "Distiller comes with several example schedules which can be used together with  compress_classifier.py .\nThese example schedules (YAML) files, contain the command line that is used in order to invoke the schedule (so that you can easily recreate the results in your environment), together with the results of the pruning or regularization.  The results usually contain a table showing the sparsity of  each of the model parameters, together with the validation and test top1, top5 and loss scores.  For more details on the example schedules, you can refer to the coverage of the  Model Zoo .   examples/agp-pruning :  Automated Gradual Pruning (AGP) on MobileNet and ResNet18 (ImageNet dataset)    examples/hybrid :  AlexNet AGP with 2D (kernel) regularization (ImageNet dataset)  AlexNet sensitivity pruning with 2D regularization    examples/network_slimming :  ResNet20 Network Slimming (this is work-in-progress)    examples/pruning_filters_for_efficient_convnets :  ResNet56 baseline training (CIFAR10 dataset)  ResNet56 filter removal using filter ranking    examples/sensitivity_analysis :  Element-wise pruning sensitivity-analysis:  AlexNet (ImageNet)  MobileNet (ImageNet)  ResNet18 (ImageNet)  ResNet20 (CIFAR10)  ResNet34 (ImageNet)  Filter-wise pruning sensitivity-analysis:  ResNet20 (CIFAR10)  ResNet56 (CIFAR10)     examples/sensitivity-pruning :   AlexNet sensitivity pruning with Iterative Pruning  AlexNet sensitivity pruning with One-Shot Pruning     examples/ssl :   ResNet20 baseline training (CIFAR10 dataset)  Structured Sparsity Learning (SSL) with layer removal on ResNet20  SSL with channels removal on ResNet20",
+            "location": "/usage/index.html#examples", 
+            "text": "Distiller comes with several example schedules which can be used together with  compress_classifier.py .\nThese example schedules (YAML) files, contain the command line that is used in order to invoke the schedule (so that you can easily recreate the results in your environment), together with the results of the pruning or regularization.  The results usually contain a table showing the sparsity of  each of the model parameters, together with the validation and test top1, top5 and loss scores.  For more details on the example schedules, you can refer to the coverage of the  Model Zoo .   examples/agp-pruning :  Automated Gradual Pruning (AGP) on MobileNet and ResNet18 (ImageNet dataset)    examples/hybrid :  AlexNet AGP with 2D (kernel) regularization (ImageNet dataset)  AlexNet sensitivity pruning with 2D regularization    examples/network_slimming :  ResNet20 Network Slimming (this is work-in-progress)    examples/pruning_filters_for_efficient_convnets :  ResNet56 baseline training (CIFAR10 dataset)  ResNet56 filter removal using filter ranking    examples/sensitivity_analysis :  Element-wise pruning sensitivity-analysis:  AlexNet (ImageNet)  MobileNet (ImageNet)  ResNet18 (ImageNet)  ResNet20 (CIFAR10)  ResNet34 (ImageNet)  Filter-wise pruning sensitivity-analysis:  ResNet20 (CIFAR10)  ResNet56 (CIFAR10)    examples/sensitivity-pruning :  AlexNet sensitivity pruning with Iterative Pruning  AlexNet sensitivity pruning with One-Shot Pruning    examples/ssl :  ResNet20 baseline training (CIFAR10 dataset)  Structured Sparsity Learning (SSL) with layer removal on ResNet20  SSL with channels removal on ResNet20    examples/quantization :  AlexNet w. Batch-Norm (base FP32 + DoReFa)  Pre-activation ResNet20 on CIFAR10 (base FP32 + DoReFa)  Pre-activation ResNet18 on ImageNEt (base FP32 + DoReFa)", 
             "title": "Examples"
-        },
+        }, 
         {
-            "location": "/usage/index.html#experiment-reproducibility",
-            "text": "Experiment reproducibility is sometimes important.  Pete Warden recently expounded about this in his  blog . \nPyTorch's support for deterministic execution requires us to use only one thread for loading data (other wise the multi-threaded execution of the data loaders can create random order and change the results), and to set the seed of the CPU and GPU PRNGs.  Using the  --deterministic  command-line flag and setting  j=1  will produce reproducible results (for the same PyTorch version).",
+            "location": "/usage/index.html#experiment-reproducibility", 
+            "text": "Experiment reproducibility is sometimes important.  Pete Warden recently expounded about this in his  blog . \nPyTorch's support for deterministic execution requires us to use only one thread for loading data (other wise the multi-threaded execution of the data loaders can create random order and change the results), and to set the seed of the CPU and GPU PRNGs.  Using the  --deterministic  command-line flag and setting  j=1  will produce reproducible results (for the same PyTorch version).", 
             "title": "Experiment reproducibility"
-        },
+        }, 
         {
-            "location": "/usage/index.html#performing-pruning-sensitivity-analysis",
-            "text": "Distiller supports element-wise and filter-wise pruning sensitivity analysis.  In both cases, L1-norm is used to rank which elements or filters to prune.  For example, when running filter-pruning sensitivity analysis, the L1-norm of the filters of each layer's weights tensor are calculated, and the bottom x% are set to zero.   \nThe analysis process is quite long, because currently we use the entire test dataset to assess the accuracy performance at each pruning level of each weights tensor.  Using a small dataset for this would save much time and we plan on assessing if this will provide sufficient results. \nResults are output as a CSV file ( sensitivity.csv ) and PNG file ( sensitivity.png ).  The implementation is in  distiller/sensitivity.py  and it contains further details about process and the format of the CSV file.  The example below performs element-wise pruning sensitivity analysis on ResNet20 for CIFAR10:  $ python3 compress_classifier.py -a resnet20_cifar ../../../data.cifar10/ -j=1 --resume=../cifar10/resnet20/checkpoint_trained_dense.pth.tar --sense=element  The  sense  command-line argument can be set to either  element  or  filter , depending on the type of analysis you want done.  There is also a  Jupyter notebook  with example invocations, outputs and explanations.",
+            "location": "/usage/index.html#performing-pruning-sensitivity-analysis", 
+            "text": "Distiller supports element-wise and filter-wise pruning sensitivity analysis.  In both cases, L1-norm is used to rank which elements or filters to prune.  For example, when running filter-pruning sensitivity analysis, the L1-norm of the filters of each layer's weights tensor are calculated, and the bottom x% are set to zero.   \nThe analysis process is quite long, because currently we use the entire test dataset to assess the accuracy performance at each pruning level of each weights tensor.  Using a small dataset for this would save much time and we plan on assessing if this will provide sufficient results. \nResults are output as a CSV file ( sensitivity.csv ) and PNG file ( sensitivity.png ).  The implementation is in  distiller/sensitivity.py  and it contains further details about process and the format of the CSV file.  The example below performs element-wise pruning sensitivity analysis on ResNet20 for CIFAR10:  $ python3 compress_classifier.py -a resnet20_cifar ../../../data.cifar10/ -j=1 --resume=../cifar10/resnet20/checkpoint_trained_dense.pth.tar --sense=element  The  sense  command-line argument can be set to either  element  or  filter , depending on the type of analysis you want done.  There is also a  Jupyter notebook  with example invocations, outputs and explanations.", 
             "title": "Performing pruning sensitivity analysis"
-        },
+        }, 
         {
-            "location": "/usage/index.html#quantization",
-            "text": "Currently Distiller support 8-bit quantization only (quantization of lower precision data types will follow shortly) which does not require training, so any model (whether pruned or not) can be quantized. \nUse the  --quantize  command-line flag, together with  --evaluate  to evaluate the accuracy of your model after quantization.  The following example qunatizes ResNet18 for ImageNet:  $ python3 compress_classifier.py -a resnet18 ../../../data.imagenet  --pretrained --quantize --evaluate  Generates:  Preparing model for quantization\n--- test ---------------------\n50000 samples (256 per mini-batch)\nTest: [   10/  195]    Loss 0.856354    Top1 79.257812    Top5 92.500000\nTest: [   20/  195]    Loss 0.923131    Top1 76.953125    Top5 92.246094\nTest: [   30/  195]    Loss 0.885186    Top1 77.955729    Top5 92.486979\nTest: [   40/  195]    Loss 0.930263    Top1 76.181641    Top5 92.597656\nTest: [   50/  195]    Loss 0.931062    Top1 75.726562    Top5 92.906250\nTest: [   60/  195]    Loss 0.932019    Top1 75.651042    Top5 93.151042\nTest: [   70/  195]    Loss 0.921287    Top1 76.060268    Top5 93.270089\nTest: [   80/  195]    Loss 0.932539    Top1 75.986328    Top5 93.100586\nTest: [   90/  195]    Loss 0.996000    Top1 74.700521    Top5 92.330729\nTest: [  100/  195]    Loss 1.066699    Top1 73.289062    Top5 91.437500\nTest: [  110/  195]    Loss 1.100970    Top1 72.574574    Top5 91.001420\nTest: [  120/  195]    Loss 1.122376    Top1 72.268880    Top5 90.696615\nTest: [  130/  195]    Loss 1.171726    Top1 71.198918    Top5 90.120192\nTest: [  140/  195]    Loss 1.191500    Top1 70.797991    Top5 89.902344\nTest: [  150/  195]    Loss 1.219954    Top1 70.210938    Top5 89.453125\nTest: [  160/  195]    Loss 1.240942    Top1 69.855957    Top5 89.162598\nTest: [  170/  195]    Loss 1.265741    Top1 69.342831    Top5 88.807445\nTest: [  180/  195]    Loss 1.281185    Top1 69.051649    Top5 88.589410\nTest: [  190/  195]    Loss 1.279682    Top1 69.019326    Top5 88.632812\n==> Top1: 69.130    Top5: 88.732    Loss: 1.276",
-            "title": "Quantization"
-        },
+            "location": "/usage/index.html#direct-quantization-without-training", 
+            "text": "Distiller supports 8-bit quantization of trained modules without re-training (using  Symmetric Linear Quantization ). So, any model (whether pruned or not) can be quantized. \nUse the  --quantize  command-line flag, together with  --evaluate  to evaluate the accuracy of your model after quantization.  The following example qunatizes ResNet18 for ImageNet:  $ python3 compress_classifier.py -a resnet18 ../../../data.imagenet  --pretrained --quantize --evaluate  Generates:  Preparing model for quantization\n--- test ---------------------\n50000 samples (256 per mini-batch)\nTest: [   10/  195]    Loss 0.856354    Top1 79.257812    Top5 92.500000\nTest: [   20/  195]    Loss 0.923131    Top1 76.953125    Top5 92.246094\nTest: [   30/  195]    Loss 0.885186    Top1 77.955729    Top5 92.486979\nTest: [   40/  195]    Loss 0.930263    Top1 76.181641    Top5 92.597656\nTest: [   50/  195]    Loss 0.931062    Top1 75.726562    Top5 92.906250\nTest: [   60/  195]    Loss 0.932019    Top1 75.651042    Top5 93.151042\nTest: [   70/  195]    Loss 0.921287    Top1 76.060268    Top5 93.270089\nTest: [   80/  195]    Loss 0.932539    Top1 75.986328    Top5 93.100586\nTest: [   90/  195]    Loss 0.996000    Top1 74.700521    Top5 92.330729\nTest: [  100/  195]    Loss 1.066699    Top1 73.289062    Top5 91.437500\nTest: [  110/  195]    Loss 1.100970    Top1 72.574574    Top5 91.001420\nTest: [  120/  195]    Loss 1.122376    Top1 72.268880    Top5 90.696615\nTest: [  130/  195]    Loss 1.171726    Top1 71.198918    Top5 90.120192\nTest: [  140/  195]    Loss 1.191500    Top1 70.797991    Top5 89.902344\nTest: [  150/  195]    Loss 1.219954    Top1 70.210938    Top5 89.453125\nTest: [  160/  195]    Loss 1.240942    Top1 69.855957    Top5 89.162598\nTest: [  170/  195]    Loss 1.265741    Top1 69.342831    Top5 88.807445\nTest: [  180/  195]    Loss 1.281185    Top1 69.051649    Top5 88.589410\nTest: [  190/  195]    Loss 1.279682    Top1 69.019326    Top5 88.632812\n==  Top1: 69.130    Top5: 88.732    Loss: 1.276", 
+            "title": "\"Direct\" Quantization Without Training"
+        }, 
         {
-            "location": "/usage/index.html#summaries",
-            "text": "You can use the sample compression application to generate model summary reports, such as the attributes and compute summary report (see screen capture below).\nYou can log sparsity statistics (written to console and CSV file), performance, optimizer and model information, and also create a PNG image of the DNN.\nCreating a PNG image is an experimental feature (it relies on features which are not available on PyTorch 3.1 and that we hope will be available in PyTorch's next release), so to use it you will need to compile the PyTorch master branch, and hope for the best ;-).  $ python3 compress_classifier.py --resume=../ssl/checkpoints/checkpoint_trained_ch_regularized_dense.pth.tar -a=resnet20_cifar ../../../data.cifar10 --summary=compute  Generates:  +----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------+\n|    | Name                         | Type   | Attrs    | IFM             |   IFM volume | OFM             |   OFM volume |   Weights volume |    MACs |\n|----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------|\n|  0 | module.conv1                 | Conv2d | k=(3, 3) | (1, 3, 32, 32)  |         3072 | (1, 16, 32, 32) |        16384 |              432 |  442368 |\n|  1 | module.layer1.0.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  2 | module.layer1.0.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  3 | module.layer1.1.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  4 | module.layer1.1.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  5 | module.layer1.2.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  6 | module.layer1.2.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  7 | module.layer2.0.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 32, 16, 16) |         8192 |             4608 | 1179648 |\n|  8 | module.layer2.0.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n|  9 | module.layer2.0.downsample.0 | Conv2d | k=(1, 1) | (1, 16, 32, 32) |        16384 | (1, 32, 16, 16) |         8192 |              512 |  131072 |\n| 10 | module.layer2.1.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 11 | module.layer2.1.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 12 | module.layer2.2.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 13 | module.layer2.2.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 14 | module.layer3.0.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 64, 8, 8)   |         4096 |            18432 | 1179648 |\n| 15 | module.layer3.0.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 16 | module.layer3.0.downsample.0 | Conv2d | k=(1, 1) | (1, 32, 16, 16) |         8192 | (1, 64, 8, 8)   |         4096 |             2048 |  131072 |\n| 17 | module.layer3.1.conv1        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 18 | module.layer3.1.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 19 | module.layer3.2.conv1        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 20 | module.layer3.2.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 21 | module.fc                    | Linear |          | (1, 64)         |           64 | (1, 10)         |           10 |              640 |     640 |\n+----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------+\nTotal MACs: 40,813,184",
+            "location": "/usage/index.html#summaries", 
+            "text": "You can use the sample compression application to generate model summary reports, such as the attributes and compute summary report (see screen capture below).\nYou can log sparsity statistics (written to console and CSV file), performance, optimizer and model information, and also create a PNG image of the DNN.\nCreating a PNG image is an experimental feature (it relies on features which are not available on PyTorch 3.1 and that we hope will be available in PyTorch's next release), so to use it you will need to compile the PyTorch master branch, and hope for the best ;-).  $ python3 compress_classifier.py --resume=../ssl/checkpoints/checkpoint_trained_ch_regularized_dense.pth.tar -a=resnet20_cifar ../../../data.cifar10 --summary=compute  Generates:  +----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------+\n|    | Name                         | Type   | Attrs    | IFM             |   IFM volume | OFM             |   OFM volume |   Weights volume |    MACs |\n|----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------|\n|  0 | module.conv1                 | Conv2d | k=(3, 3) | (1, 3, 32, 32)  |         3072 | (1, 16, 32, 32) |        16384 |              432 |  442368 |\n|  1 | module.layer1.0.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  2 | module.layer1.0.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  3 | module.layer1.1.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  4 | module.layer1.1.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  5 | module.layer1.2.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  6 | module.layer1.2.conv2        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 16, 32, 32) |        16384 |             2304 | 2359296 |\n|  7 | module.layer2.0.conv1        | Conv2d | k=(3, 3) | (1, 16, 32, 32) |        16384 | (1, 32, 16, 16) |         8192 |             4608 | 1179648 |\n|  8 | module.layer2.0.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n|  9 | module.layer2.0.downsample.0 | Conv2d | k=(1, 1) | (1, 16, 32, 32) |        16384 | (1, 32, 16, 16) |         8192 |              512 |  131072 |\n| 10 | module.layer2.1.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 11 | module.layer2.1.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 12 | module.layer2.2.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 13 | module.layer2.2.conv2        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 32, 16, 16) |         8192 |             9216 | 2359296 |\n| 14 | module.layer3.0.conv1        | Conv2d | k=(3, 3) | (1, 32, 16, 16) |         8192 | (1, 64, 8, 8)   |         4096 |            18432 | 1179648 |\n| 15 | module.layer3.0.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 16 | module.layer3.0.downsample.0 | Conv2d | k=(1, 1) | (1, 32, 16, 16) |         8192 | (1, 64, 8, 8)   |         4096 |             2048 |  131072 |\n| 17 | module.layer3.1.conv1        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 18 | module.layer3.1.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 19 | module.layer3.2.conv1        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 20 | module.layer3.2.conv2        | Conv2d | k=(3, 3) | (1, 64, 8, 8)   |         4096 | (1, 64, 8, 8)   |         4096 |            36864 | 2359296 |\n| 21 | module.fc                    | Linear |          | (1, 64)         |           64 | (1, 10)         |           10 |              640 |     640 |\n+----+------------------------------+--------+----------+-----------------+--------------+-----------------+--------------+------------------+---------+\nTotal MACs: 40,813,184", 
             "title": "Summaries"
-        },
+        }, 
         {
-            "location": "/usage/index.html#using-tensorboard",
-            "text": "Google's  TensorBoard  is an excellent tool for visualizing the progress of DNN training.  Distiller's logger supports writing performance indicators and parameter statistics in a file format that can be read by TensorBoard (Distiller uses TensorFlow's APIs in order to do this, which is why Distiller requires the installation of TensorFlow). \nTo view the graphs, invoke the TensorBoard server.  For example:  $ tensorboard --logdir=logs  Distillers's setup (requirements.txt) installs TensorFlow for CPU. If you want a different installation, please follow the  TensorFlow installation instructions .",
+            "location": "/usage/index.html#using-tensorboard", 
+            "text": "Google's  TensorBoard  is an excellent tool for visualizing the progress of DNN training.  Distiller's logger supports writing performance indicators and parameter statistics in a file format that can be read by TensorBoard (Distiller uses TensorFlow's APIs in order to do this, which is why Distiller requires the installation of TensorFlow). \nTo view the graphs, invoke the TensorBoard server.  For example:  $ tensorboard --logdir=logs  Distillers's setup (requirements.txt) installs TensorFlow for CPU. If you want a different installation, please follow the  TensorFlow installation instructions .", 
             "title": "Using TensorBoard"
-        },
+        }, 
         {
-            "location": "/usage/index.html#collecting-feature-maps-statistics",
-            "text": "In CNNs with ReLU layers, ReLU activations (feature-maps) also exhibit a nice level of sparsity (50-60% sparsity is typical).  \nYou can collect activation statistics using the  --act_stats  command-line flag.",
+            "location": "/usage/index.html#collecting-feature-maps-statistics", 
+            "text": "In CNNs with ReLU layers, ReLU activations (feature-maps) also exhibit a nice level of sparsity (50-60% sparsity is typical).  \nYou can collect activation statistics using the  --act_stats  command-line flag.", 
             "title": "Collecting feature-maps statistics"
-        },
+        }, 
         {
-            "location": "/usage/index.html#using-the-jupyter-notebooks",
-            "text": "The Jupyter notebooks contain many examples of how to use the statistics summaries generated by Distiller.  They are explained in a separate page.",
+            "location": "/usage/index.html#using-the-jupyter-notebooks", 
+            "text": "The Jupyter notebooks contain many examples of how to use the statistics summaries generated by Distiller.  They are explained in a separate page.", 
             "title": "Using the Jupyter notebooks"
-        },
+        }, 
         {
-            "location": "/usage/index.html#generating-this-documentation",
-            "text": "Install mkdocs and the required packages by executing:  $ pip3 install -r doc-requirements.txt  To build the project documentation run:  $ cd distiller/docs-src\n$ mkdocs build --clean  This will create a folder named 'site' which contains the documentation website.\nOpen distiller/docs/site/index.html to view the documentation home page.",
+            "location": "/usage/index.html#generating-this-documentation", 
+            "text": "Install mkdocs and the required packages by executing:  $ pip3 install -r doc-requirements.txt  To build the project documentation run:  $ cd distiller/docs-src\n$ mkdocs build --clean  This will create a folder named 'site' which contains the documentation website.\nOpen distiller/docs/site/index.html to view the documentation home page.", 
             "title": "Generating this documentation"
-        },
+        }, 
         {
-            "location": "/schedule/index.html",
-            "text": "Compression scheduler\n\n\nIn iterative pruning, we create some kind of pruning regimen that specifies how to prune, and what to prune at every stage of the pruning and training stages. This motivated the design of \nCompressionScheduler\n: it needed to be part of the training loop, and to be able to make and implement pruning, regularization and (later) quantization decisions.  We wanted to be able to change the particulars of the compression schedule, w/o touching the code, and settled on using YAML as a container for this specification.  We found that when we make many experiments on the same code base, it is easier to maintain all of these experiments if we decouple the differences from the code-base.  Therefore, we added to the scheduler support for learning-rate decay scheduling because, again, we wanted the freedom to change the LR-decay policy without changing code.  \n\n\nHigh level overview\n\n\nLet's briefly discuss the main mechanisms and abstractions: A schedule specification is composed of a list of sections defining instances of Pruners, Regularizers, LR-scheduler and Policies.\n\n\n\n\nPruners and Regularizers are very similar: they implement either a Pruning algorithm or a Regularization algorithm.  \n\n\nAn LR-scheduler specifies the LR-decay algorithm.  \n\n\n\n\nThese define the \nwhat\n part of the schedule.  \n\n\nThe Policies define the \nwhen\n part of the schedule: at which epoch to start applying the Pruner/Regularizer/LR-decay, the epoch to end, and how often to invoke the policy (frequency of application).  A policy also defines the instance of Pruner/Regularizer/LR-decay it is managing.\n\n\nThe CompressionScheduler is configured from a YAML file or from a dictionary, but you can also manually create Policies, Pruners and Regularizers from code.\n\n\nSyntax through example\n\n\nWe'll use \nalexnet.schedule_agp.yaml\n to explain some of the YAML syntax for configuring Sensitivity Pruning of Alexnet.\n\n\nversion: 1\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\nlr_schedulers:\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1\n\n\n\n\nThere is only one version of the YAML syntax, and the version number is not verified at the moment.  However, to be future-proof it is probably better to let the YAML parser know that you are using version-1 syntax, in case there is ever a version 2.\n\n\nversion: 1\n\n\n\n\nIn the \npruners\n section, we define the instances of pruners we want the scheduler to instantiate and use.\n\nWe define a single pruner instance, named \nmy_pruner\n of algorithm \nSensitivityPruner\n.  We will refer to this instance in the \nPolicies\n section.\n\nThen we list the sensitivity multipliers, \\(s\\), of each of the weight tensors.\n\nYou may list as many Pruners as you want in this section, as long as each has a unique name.  You can several types of pruners in one schedule.\n\n\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.6\n\n\n\n\nNext, we want to specify the learning-rate decay scheduling in the \nlr_schedulers\n section.  We assign a name to this instance: \npruning_lr\n.  As in the \npruners\n section, you may use any name, as long as all LR-schedulers have a unique name.  At the moment, only one instance of LR-scheduler is allowed.  You can use any LR-scheduler class that \ntorch.optim.lr_scheduler\n supports and pass their arguments.  The keyword arguments (kwargs) are passed directly to the constructor of the subclasses of \n_LRScheduler\n, so that as new LR-schedulers are added to \ntorch.optim.lr_scheduler\n, they can be used without changing the application code.\n\n\nlr_schedulers:\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\n\n\n\nFinally, we define the \npolicies\n section which defines the actual scheduling.  A \nPolicy\n manages an instance of a \nPruner\n, \nRegularizer\n, or \nLRSchedule\n, by naming the instance.  In the example below, a \nPruningPolicy\n uses the pruner instance named \nmy_pruner\n: it activates it at a frequency of 2 epochs (i.e. every other epoch), starting at epoch 0, and ending at epoch 38.  \n\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1\n\n\n\n\nThis is \niterative pruning\n:\n\n\n\n\n\n\nTrain Connectivity\n\n\n\n\n\n\nPrune Connections\n\n\n\n\n\n\nRetrain Weights\n\n\n\n\n\n\nGoto 2\n\n\n\n\n\n\nIt is described  in \nLearning both Weights and Connections for Efficient Neural Networks\n:\n\n\n\n\n\"Our method prunes redundant connections using a three-step method. First, we train the network to learn which connections are important. Next, we prune the unimportant connections. Finally, we retrain the network to fine tune the weights of the remaining connections...After an initial training phase, we remove all connections whose weight is lower than a threshold. This pruning converts a dense, fully-connected layer to a sparse layer. This first phase learns the topology of the networks \u2014 learning which connections are important and removing the unimportant connections. We then retrain the sparse network so the remaining connections can compensate for the connections that have been removed. The phases of pruning and retraining may be repeated iteratively to further reduce network complexity.\"\n\n\n\n\nRegularization\n\n\nYou can also define and schedule regularization.\n\n\nL1 regularization\n\n\nFormat (this is an informal specification, not a valid \nABNF\n specification):\n\n\nregularizers:\n  <REGULARIZER_NAME_STR>:\n    class: L1Regularizer\n    reg_regims:\n      <PYTORCH_PARAM_NAME_STR>: <STRENGTH_FLOAT>\n      ...\n      <PYTORCH_PARAM_NAME_STR>: <STRENGTH_FLOAT>\n    threshold_criteria: [Mean_Abs | Max]\n\n\n\n\nFor example:\n\n\nversion: 1\n\nregularizers:\n  my_L1_reg:\n    class: L1Regularizer\n    reg_regims:\n      'module.layer3.1.conv1.weight': 0.000002\n      'module.layer3.1.conv2.weight': 0.000002\n      'module.layer3.1.conv3.weight': 0.000002\n      'module.layer3.2.conv1.weight': 0.000002\n    threshold_criteria: Mean_Abs\n\npolicies:\n  - regularizer:\n      instance_name: my_L1_reg\n    starting_epoch: 0\n    ending_epoch: 60\n    frequency: 1\n\n\n\n\nGroup regularization\n\n\nFormat (informal specification):\n\n\nFormat:\n  regularizers:\n    <REGULARIZER_NAME_STR>:\n      class: L1Regularizer\n      reg_regims:\n        <PYTORCH_PARAM_NAME_STR>: [<STRENGTH_FLOAT>, <'2D' | '3D' | '4D' | 'Channels' | 'Cols' | 'Rows'>]\n        <PYTORCH_PARAM_NAME_STR>: [<STRENGTH_FLOAT>, <'2D' | '3D' | '4D' | 'Channels' | 'Cols' | 'Rows'>]\n      threshold_criteria: [Mean_Abs | Max]\n\n\n\n\nFor example:\n\n\nversion: 1\n\nregularizers:\n  my_filter_regularizer:\n    class: GroupLassoRegularizer\n    reg_regims:\n      'module.layer3.1.conv1.weight': [0.00005, '3D']\n      'module.layer3.1.conv2.weight': [0.00005, '3D']\n      'module.layer3.1.conv3.weight': [0.00005, '3D']\n      'module.layer3.2.conv1.weight': [0.00005, '3D']\n    threshold_criteria: Mean_Abs\n\npolicies:\n  - regularizer:\n      instance_name: my_filter_regularizer\n    starting_epoch: 0\n    ending_epoch: 60\n    frequency: 1\n\n\n\n\nMixing it up\n\n\nYou can mix pruning and regularization.\n\n\nversion: 1\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\nregularizers:\n  2d_groups_regularizer:\n    class: GroupLassoRegularizer\n    reg_regims:\n      'features.module.0.weight': [0.000012, '2D']\n      'features.module.3.weight': [0.000012, '2D']\n      'features.module.6.weight': [0.000012, '2D']\n      'features.module.8.weight': [0.000012, '2D']\n      'features.module.10.weight': [0.000012, '2D']\n\n\nlr_schedulers:\n  # Learning rate decay scheduler\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - regularizer:\n      instance_name: '2d_groups_regularizer'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 1\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1",
+            "location": "/schedule/index.html", 
+            "text": "Compression scheduler\n\n\nIn iterative pruning, we create some kind of pruning regimen that specifies how to prune, and what to prune at every stage of the pruning and training stages. This motivated the design of \nCompressionScheduler\n: it needed to be part of the training loop, and to be able to make and implement pruning, regularization and quantization decisions.  We wanted to be able to change the particulars of the compression schedule, w/o touching the code, and settled on using YAML as a container for this specification.  We found that when we make many experiments on the same code base, it is easier to maintain all of these experiments if we decouple the differences from the code-base.  Therefore, we added to the scheduler support for learning-rate decay scheduling because, again, we wanted the freedom to change the LR-decay policy without changing code.  \n\n\nHigh level overview\n\n\nLet's briefly discuss the main mechanisms and abstractions: A schedule specification is composed of a list of sections defining instances of Pruners, Regularizers, Quantizers, LR-scheduler and Policies.\n\n\n\n\nPruners, Regularizers and Quantizers are very similar: They implement either a Pruning/Regularization/Quantization algorithm, respectively. \n\n\nAn LR-scheduler specifies the LR-decay algorithm.  \n\n\n\n\nThese define the \nwhat\n part of the schedule.  \n\n\nThe Policies define the \nwhen\n part of the schedule: at which epoch to start applying the Pruner/Regularizer/Quantizer/LR-decay, the epoch to end, and how often to invoke the policy (frequency of application).  A policy also defines the instance of Pruner/Regularizer/Quantizer/LR-decay it is managing.\n\nThe CompressionScheduler is configured from a YAML file or from a dictionary, but you can also manually create Policies, Pruners, Regularizers and Quantizers from code.\n\n\nSyntax through example\n\n\nWe'll use \nalexnet.schedule_agp.yaml\n to explain some of the YAML syntax for configuring Sensitivity Pruning of Alexnet.\n\n\nversion: 1\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\nlr_schedulers:\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1\n\n\n\n\nThere is only one version of the YAML syntax, and the version number is not verified at the moment.  However, to be future-proof it is probably better to let the YAML parser know that you are using version-1 syntax, in case there is ever a version 2.\n\n\nversion: 1\n\n\n\n\nIn the \npruners\n section, we define the instances of pruners we want the scheduler to instantiate and use.\n\nWe define a single pruner instance, named \nmy_pruner\n, of algorithm \nSensitivityPruner\n.  We will refer to this instance in the \nPolicies\n section.\n\nThen we list the sensitivity multipliers, \\(s\\), of each of the weight tensors.\n\nYou may list as many Pruners as you want in this section, as long as each has a unique name.  You can several types of pruners in one schedule.\n\n\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.6\n\n\n\n\nNext, we want to specify the learning-rate decay scheduling in the \nlr_schedulers\n section.  We assign a name to this instance: \npruning_lr\n.  As in the \npruners\n section, you may use any name, as long as all LR-schedulers have a unique name.  At the moment, only one instance of LR-scheduler is allowed.  The LR-scheduler must be a subclass of PyTorch's \n_LRScheduler\n.  You can use any of the schedulers defined in \ntorch.optim.lr_scheduler\n (see \nhere\n).  In addition, we've implemented some additional schedulers in Distiller (see \nhere\n). The keyword arguments (kwargs) are passed directly to the LR-scheduler's constructor, so that as new LR-schedulers are added to \ntorch.optim.lr_scheduler\n, they can be used without changing the application code.\n\n\nlr_schedulers:\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\n\n\n\nFinally, we define the \npolicies\n section which defines the actual scheduling.  A \nPolicy\n manages an instance of a \nPruner\n, \nRegularizer\n, \nQuantizer\n, or \nLRScheduler\n, by naming the instance.  In the example below, a \nPruningPolicy\n uses the pruner instance named \nmy_pruner\n: it activates it at a frequency of 2 epochs (i.e. every other epoch), starting at epoch 0, and ending at epoch 38.  \n\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1\n\n\n\n\nThis is \niterative pruning\n:\n\n\n\n\n\n\nTrain Connectivity\n\n\n\n\n\n\nPrune Connections\n\n\n\n\n\n\nRetrain Weights\n\n\n\n\n\n\nGoto 2\n\n\n\n\n\n\nIt is described  in \nLearning both Weights and Connections for Efficient Neural Networks\n:\n\n\n\n\n\"Our method prunes redundant connections using a three-step method. First, we train the network to learn which connections are important. Next, we prune the unimportant connections. Finally, we retrain the network to fine tune the weights of the remaining connections...After an initial training phase, we remove all connections whose weight is lower than a threshold. This pruning converts a dense, fully-connected layer to a sparse layer. This first phase learns the topology of the networks \u2014 learning which connections are important and removing the unimportant connections. We then retrain the sparse network so the remaining connections can compensate for the connections that have been removed. The phases of pruning and retraining may be repeated iteratively to further reduce network complexity.\"\n\n\n\n\nRegularization\n\n\nYou can also define and schedule regularization.\n\n\nL1 regularization\n\n\nFormat (this is an informal specification, not a valid \nABNF\n specification):\n\n\nregularizers:\n  \nREGULARIZER_NAME_STR\n:\n    class: L1Regularizer\n    reg_regims:\n      \nPYTORCH_PARAM_NAME_STR\n: \nSTRENGTH_FLOAT\n\n      ...\n      \nPYTORCH_PARAM_NAME_STR\n: \nSTRENGTH_FLOAT\n\n    threshold_criteria: [Mean_Abs | Max]\n\n\n\n\nFor example:\n\n\nversion: 1\n\nregularizers:\n  my_L1_reg:\n    class: L1Regularizer\n    reg_regims:\n      'module.layer3.1.conv1.weight': 0.000002\n      'module.layer3.1.conv2.weight': 0.000002\n      'module.layer3.1.conv3.weight': 0.000002\n      'module.layer3.2.conv1.weight': 0.000002\n    threshold_criteria: Mean_Abs\n\npolicies:\n  - regularizer:\n      instance_name: my_L1_reg\n    starting_epoch: 0\n    ending_epoch: 60\n    frequency: 1\n\n\n\n\nGroup regularization\n\n\nFormat (informal specification):\n\n\nFormat:\n  regularizers:\n    \nREGULARIZER_NAME_STR\n:\n      class: L1Regularizer\n      reg_regims:\n        \nPYTORCH_PARAM_NAME_STR\n: [\nSTRENGTH_FLOAT\n, \n'2D' | '3D' | '4D' | 'Channels' | 'Cols' | 'Rows'\n]\n        \nPYTORCH_PARAM_NAME_STR\n: [\nSTRENGTH_FLOAT\n, \n'2D' | '3D' | '4D' | 'Channels' | 'Cols' | 'Rows'\n]\n      threshold_criteria: [Mean_Abs | Max]\n\n\n\n\nFor example:\n\n\nversion: 1\n\nregularizers:\n  my_filter_regularizer:\n    class: GroupLassoRegularizer\n    reg_regims:\n      'module.layer3.1.conv1.weight': [0.00005, '3D']\n      'module.layer3.1.conv2.weight': [0.00005, '3D']\n      'module.layer3.1.conv3.weight': [0.00005, '3D']\n      'module.layer3.2.conv1.weight': [0.00005, '3D']\n    threshold_criteria: Mean_Abs\n\npolicies:\n  - regularizer:\n      instance_name: my_filter_regularizer\n    starting_epoch: 0\n    ending_epoch: 60\n    frequency: 1\n\n\n\n\nMixing it up\n\n\nYou can mix pruning and regularization.\n\n\nversion: 1\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\nregularizers:\n  2d_groups_regularizer:\n    class: GroupLassoRegularizer\n    reg_regims:\n      'features.module.0.weight': [0.000012, '2D']\n      'features.module.3.weight': [0.000012, '2D']\n      'features.module.6.weight': [0.000012, '2D']\n      'features.module.8.weight': [0.000012, '2D']\n      'features.module.10.weight': [0.000012, '2D']\n\n\nlr_schedulers:\n  # Learning rate decay scheduler\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - regularizer:\n      instance_name: '2d_groups_regularizer'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 1\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1\n\n\n\n\n\nQuantization\n\n\nSimilarly to pruners and regularizers, specifying a quantizer in the scheduler YAML follows the constructor arguments of the \nQuantizer\n class (see details \nhere\n).\nLet's see an example:\n\n\nquantizers:\n  dorefa_quantizer:\n    class: DorefaQuantizer\n    bits_activations: 8\n    bits_weights: 4\n    bits_overrides:\n      conv1:\n        wts: null\n        acts: null\n      relu1:\n        wts: null\n        acts: null\n      final_relu:\n        wts: null\n        acts: null\n      fc:\n        wts: null\n        acts: null\n\n\n\n\n\n\nThe specific quantization method we're instantiating here is \nDorefaQuantizer\n.\n\n\nThen we define the default bit-widths for activations and weights, in this case 8 and 4-bits, respectively. \n\n\nThen, we define the \nbits_overrides\n mapping. In this case, we choose not to quantize the first and last layer of the model. In the case of \nDorefaQuantizer\n, the weights are quantized as part of the convolution / FC layers, but the activations are quantized in separate layers, which replace the ReLU layers in the original model (remember - even though we replaced the ReLU modules with our own quantization modules, the name of the modules isn't changed). So, in all, we need to reference the first layer with parameters \nconv1\n, the first activation layer \nrelu1\n, the last activation layer \nfinal_relu\n and the last layer with parameters \nfc\n.\n\n\nSpecifying \nnull\n means \"do not quantize\".\n\n\nNote that for quantizers, we reference names of modules, not names of parameters as we do for pruners and regularizers.\n\n\nWe can also reference \ngroups of layers\n in the \nbits_overrides\n mapping. This is done using regular expressions. Suppose we have a sub-module in our model named \nblock1\n, which contains multiple convolution layers which we would like to quantize to, say, 2-bits. The convolution layers are named \nconv1\n, \nconv2\n and so on. In that case we would define the following:\n\n\n\n\nbits_overrides:\n  block1.conv*:\n    wts: 2\n    acts: null", 
             "title": "Compression scheduling"
-        },
+        }, 
         {
-            "location": "/schedule/index.html#compression-scheduler",
-            "text": "In iterative pruning, we create some kind of pruning regimen that specifies how to prune, and what to prune at every stage of the pruning and training stages. This motivated the design of  CompressionScheduler : it needed to be part of the training loop, and to be able to make and implement pruning, regularization and (later) quantization decisions.  We wanted to be able to change the particulars of the compression schedule, w/o touching the code, and settled on using YAML as a container for this specification.  We found that when we make many experiments on the same code base, it is easier to maintain all of these experiments if we decouple the differences from the code-base.  Therefore, we added to the scheduler support for learning-rate decay scheduling because, again, we wanted the freedom to change the LR-decay policy without changing code.",
+            "location": "/schedule/index.html#compression-scheduler", 
+            "text": "In iterative pruning, we create some kind of pruning regimen that specifies how to prune, and what to prune at every stage of the pruning and training stages. This motivated the design of  CompressionScheduler : it needed to be part of the training loop, and to be able to make and implement pruning, regularization and quantization decisions.  We wanted to be able to change the particulars of the compression schedule, w/o touching the code, and settled on using YAML as a container for this specification.  We found that when we make many experiments on the same code base, it is easier to maintain all of these experiments if we decouple the differences from the code-base.  Therefore, we added to the scheduler support for learning-rate decay scheduling because, again, we wanted the freedom to change the LR-decay policy without changing code.", 
             "title": "Compression scheduler"
-        },
+        }, 
         {
-            "location": "/schedule/index.html#high-level-overview",
-            "text": "Let's briefly discuss the main mechanisms and abstractions: A schedule specification is composed of a list of sections defining instances of Pruners, Regularizers, LR-scheduler and Policies.   Pruners and Regularizers are very similar: they implement either a Pruning algorithm or a Regularization algorithm.    An LR-scheduler specifies the LR-decay algorithm.     These define the  what  part of the schedule.    The Policies define the  when  part of the schedule: at which epoch to start applying the Pruner/Regularizer/LR-decay, the epoch to end, and how often to invoke the policy (frequency of application).  A policy also defines the instance of Pruner/Regularizer/LR-decay it is managing. \nThe CompressionScheduler is configured from a YAML file or from a dictionary, but you can also manually create Policies, Pruners and Regularizers from code.",
+            "location": "/schedule/index.html#high-level-overview", 
+            "text": "Let's briefly discuss the main mechanisms and abstractions: A schedule specification is composed of a list of sections defining instances of Pruners, Regularizers, Quantizers, LR-scheduler and Policies.   Pruners, Regularizers and Quantizers are very similar: They implement either a Pruning/Regularization/Quantization algorithm, respectively.   An LR-scheduler specifies the LR-decay algorithm.     These define the  what  part of the schedule.    The Policies define the  when  part of the schedule: at which epoch to start applying the Pruner/Regularizer/Quantizer/LR-decay, the epoch to end, and how often to invoke the policy (frequency of application).  A policy also defines the instance of Pruner/Regularizer/Quantizer/LR-decay it is managing. \nThe CompressionScheduler is configured from a YAML file or from a dictionary, but you can also manually create Policies, Pruners, Regularizers and Quantizers from code.", 
             "title": "High level overview"
-        },
+        }, 
         {
-            "location": "/schedule/index.html#syntax-through-example",
-            "text": "We'll use  alexnet.schedule_agp.yaml  to explain some of the YAML syntax for configuring Sensitivity Pruning of Alexnet.  version: 1\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\nlr_schedulers:\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1  There is only one version of the YAML syntax, and the version number is not verified at the moment.  However, to be future-proof it is probably better to let the YAML parser know that you are using version-1 syntax, in case there is ever a version 2.  version: 1  In the  pruners  section, we define the instances of pruners we want the scheduler to instantiate and use. \nWe define a single pruner instance, named  my_pruner  of algorithm  SensitivityPruner .  We will refer to this instance in the  Policies  section. \nThen we list the sensitivity multipliers, \\(s\\), of each of the weight tensors. \nYou may list as many Pruners as you want in this section, as long as each has a unique name.  You can several types of pruners in one schedule.  pruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.6  Next, we want to specify the learning-rate decay scheduling in the  lr_schedulers  section.  We assign a name to this instance:  pruning_lr .  As in the  pruners  section, you may use any name, as long as all LR-schedulers have a unique name.  At the moment, only one instance of LR-scheduler is allowed.  You can use any LR-scheduler class that  torch.optim.lr_scheduler  supports and pass their arguments.  The keyword arguments (kwargs) are passed directly to the constructor of the subclasses of  _LRScheduler , so that as new LR-schedulers are added to  torch.optim.lr_scheduler , they can be used without changing the application code.  lr_schedulers:\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9  Finally, we define the  policies  section which defines the actual scheduling.  A  Policy  manages an instance of a  Pruner ,  Regularizer , or  LRSchedule , by naming the instance.  In the example below, a  PruningPolicy  uses the pruner instance named  my_pruner : it activates it at a frequency of 2 epochs (i.e. every other epoch), starting at epoch 0, and ending at epoch 38.    policies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1  This is  iterative pruning :    Train Connectivity    Prune Connections    Retrain Weights    Goto 2    It is described  in  Learning both Weights and Connections for Efficient Neural Networks :   \"Our method prunes redundant connections using a three-step method. First, we train the network to learn which connections are important. Next, we prune the unimportant connections. Finally, we retrain the network to fine tune the weights of the remaining connections...After an initial training phase, we remove all connections whose weight is lower than a threshold. This pruning converts a dense, fully-connected layer to a sparse layer. This first phase learns the topology of the networks \u2014 learning which connections are important and removing the unimportant connections. We then retrain the sparse network so the remaining connections can compensate for the connections that have been removed. The phases of pruning and retraining may be repeated iteratively to further reduce network complexity.\"",
+            "location": "/schedule/index.html#syntax-through-example", 
+            "text": "We'll use  alexnet.schedule_agp.yaml  to explain some of the YAML syntax for configuring Sensitivity Pruning of Alexnet.  version: 1\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\nlr_schedulers:\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1  There is only one version of the YAML syntax, and the version number is not verified at the moment.  However, to be future-proof it is probably better to let the YAML parser know that you are using version-1 syntax, in case there is ever a version 2.  version: 1  In the  pruners  section, we define the instances of pruners we want the scheduler to instantiate and use. \nWe define a single pruner instance, named  my_pruner , of algorithm  SensitivityPruner .  We will refer to this instance in the  Policies  section. \nThen we list the sensitivity multipliers, \\(s\\), of each of the weight tensors. \nYou may list as many Pruners as you want in this section, as long as each has a unique name.  You can several types of pruners in one schedule.  pruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.6  Next, we want to specify the learning-rate decay scheduling in the  lr_schedulers  section.  We assign a name to this instance:  pruning_lr .  As in the  pruners  section, you may use any name, as long as all LR-schedulers have a unique name.  At the moment, only one instance of LR-scheduler is allowed.  The LR-scheduler must be a subclass of PyTorch's  _LRScheduler .  You can use any of the schedulers defined in  torch.optim.lr_scheduler  (see  here ).  In addition, we've implemented some additional schedulers in Distiller (see  here ). The keyword arguments (kwargs) are passed directly to the LR-scheduler's constructor, so that as new LR-schedulers are added to  torch.optim.lr_scheduler , they can be used without changing the application code.  lr_schedulers:\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9  Finally, we define the  policies  section which defines the actual scheduling.  A  Policy  manages an instance of a  Pruner ,  Regularizer ,  Quantizer , or  LRScheduler , by naming the instance.  In the example below, a  PruningPolicy  uses the pruner instance named  my_pruner : it activates it at a frequency of 2 epochs (i.e. every other epoch), starting at epoch 0, and ending at epoch 38.    policies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1  This is  iterative pruning :    Train Connectivity    Prune Connections    Retrain Weights    Goto 2    It is described  in  Learning both Weights and Connections for Efficient Neural Networks :   \"Our method prunes redundant connections using a three-step method. First, we train the network to learn which connections are important. Next, we prune the unimportant connections. Finally, we retrain the network to fine tune the weights of the remaining connections...After an initial training phase, we remove all connections whose weight is lower than a threshold. This pruning converts a dense, fully-connected layer to a sparse layer. This first phase learns the topology of the networks \u2014 learning which connections are important and removing the unimportant connections. We then retrain the sparse network so the remaining connections can compensate for the connections that have been removed. The phases of pruning and retraining may be repeated iteratively to further reduce network complexity.\"", 
             "title": "Syntax through example"
-        },
+        }, 
         {
-            "location": "/schedule/index.html#regularization",
-            "text": "You can also define and schedule regularization.",
+            "location": "/schedule/index.html#regularization", 
+            "text": "You can also define and schedule regularization.", 
             "title": "Regularization"
-        },
+        }, 
         {
-            "location": "/schedule/index.html#l1-regularization",
-            "text": "Format (this is an informal specification, not a valid  ABNF  specification):  regularizers:\n  <REGULARIZER_NAME_STR>:\n    class: L1Regularizer\n    reg_regims:\n      <PYTORCH_PARAM_NAME_STR>: <STRENGTH_FLOAT>\n      ...\n      <PYTORCH_PARAM_NAME_STR>: <STRENGTH_FLOAT>\n    threshold_criteria: [Mean_Abs | Max]  For example:  version: 1\n\nregularizers:\n  my_L1_reg:\n    class: L1Regularizer\n    reg_regims:\n      'module.layer3.1.conv1.weight': 0.000002\n      'module.layer3.1.conv2.weight': 0.000002\n      'module.layer3.1.conv3.weight': 0.000002\n      'module.layer3.2.conv1.weight': 0.000002\n    threshold_criteria: Mean_Abs\n\npolicies:\n  - regularizer:\n      instance_name: my_L1_reg\n    starting_epoch: 0\n    ending_epoch: 60\n    frequency: 1",
+            "location": "/schedule/index.html#l1-regularization", 
+            "text": "Format (this is an informal specification, not a valid  ABNF  specification):  regularizers:\n   REGULARIZER_NAME_STR :\n    class: L1Regularizer\n    reg_regims:\n       PYTORCH_PARAM_NAME_STR :  STRENGTH_FLOAT \n      ...\n       PYTORCH_PARAM_NAME_STR :  STRENGTH_FLOAT \n    threshold_criteria: [Mean_Abs | Max]  For example:  version: 1\n\nregularizers:\n  my_L1_reg:\n    class: L1Regularizer\n    reg_regims:\n      'module.layer3.1.conv1.weight': 0.000002\n      'module.layer3.1.conv2.weight': 0.000002\n      'module.layer3.1.conv3.weight': 0.000002\n      'module.layer3.2.conv1.weight': 0.000002\n    threshold_criteria: Mean_Abs\n\npolicies:\n  - regularizer:\n      instance_name: my_L1_reg\n    starting_epoch: 0\n    ending_epoch: 60\n    frequency: 1", 
             "title": "L1 regularization"
-        },
+        }, 
         {
-            "location": "/schedule/index.html#group-regularization",
-            "text": "Format (informal specification):  Format:\n  regularizers:\n    <REGULARIZER_NAME_STR>:\n      class: L1Regularizer\n      reg_regims:\n        <PYTORCH_PARAM_NAME_STR>: [<STRENGTH_FLOAT>, <'2D' | '3D' | '4D' | 'Channels' | 'Cols' | 'Rows'>]\n        <PYTORCH_PARAM_NAME_STR>: [<STRENGTH_FLOAT>, <'2D' | '3D' | '4D' | 'Channels' | 'Cols' | 'Rows'>]\n      threshold_criteria: [Mean_Abs | Max]  For example:  version: 1\n\nregularizers:\n  my_filter_regularizer:\n    class: GroupLassoRegularizer\n    reg_regims:\n      'module.layer3.1.conv1.weight': [0.00005, '3D']\n      'module.layer3.1.conv2.weight': [0.00005, '3D']\n      'module.layer3.1.conv3.weight': [0.00005, '3D']\n      'module.layer3.2.conv1.weight': [0.00005, '3D']\n    threshold_criteria: Mean_Abs\n\npolicies:\n  - regularizer:\n      instance_name: my_filter_regularizer\n    starting_epoch: 0\n    ending_epoch: 60\n    frequency: 1",
+            "location": "/schedule/index.html#group-regularization", 
+            "text": "Format (informal specification):  Format:\n  regularizers:\n     REGULARIZER_NAME_STR :\n      class: L1Regularizer\n      reg_regims:\n         PYTORCH_PARAM_NAME_STR : [ STRENGTH_FLOAT ,  '2D' | '3D' | '4D' | 'Channels' | 'Cols' | 'Rows' ]\n         PYTORCH_PARAM_NAME_STR : [ STRENGTH_FLOAT ,  '2D' | '3D' | '4D' | 'Channels' | 'Cols' | 'Rows' ]\n      threshold_criteria: [Mean_Abs | Max]  For example:  version: 1\n\nregularizers:\n  my_filter_regularizer:\n    class: GroupLassoRegularizer\n    reg_regims:\n      'module.layer3.1.conv1.weight': [0.00005, '3D']\n      'module.layer3.1.conv2.weight': [0.00005, '3D']\n      'module.layer3.1.conv3.weight': [0.00005, '3D']\n      'module.layer3.2.conv1.weight': [0.00005, '3D']\n    threshold_criteria: Mean_Abs\n\npolicies:\n  - regularizer:\n      instance_name: my_filter_regularizer\n    starting_epoch: 0\n    ending_epoch: 60\n    frequency: 1", 
             "title": "Group regularization"
-        },
+        }, 
         {
-            "location": "/schedule/index.html#mixing-it-up",
-            "text": "You can mix pruning and regularization.  version: 1\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\nregularizers:\n  2d_groups_regularizer:\n    class: GroupLassoRegularizer\n    reg_regims:\n      'features.module.0.weight': [0.000012, '2D']\n      'features.module.3.weight': [0.000012, '2D']\n      'features.module.6.weight': [0.000012, '2D']\n      'features.module.8.weight': [0.000012, '2D']\n      'features.module.10.weight': [0.000012, '2D']\n\n\nlr_schedulers:\n  # Learning rate decay scheduler\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - regularizer:\n      instance_name: '2d_groups_regularizer'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 1\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1",
+            "location": "/schedule/index.html#mixing-it-up", 
+            "text": "You can mix pruning and regularization.  version: 1\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\nregularizers:\n  2d_groups_regularizer:\n    class: GroupLassoRegularizer\n    reg_regims:\n      'features.module.0.weight': [0.000012, '2D']\n      'features.module.3.weight': [0.000012, '2D']\n      'features.module.6.weight': [0.000012, '2D']\n      'features.module.8.weight': [0.000012, '2D']\n      'features.module.10.weight': [0.000012, '2D']\n\n\nlr_schedulers:\n  # Learning rate decay scheduler\n   pruning_lr:\n     class: ExponentialLR\n     gamma: 0.9\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n  - regularizer:\n      instance_name: '2d_groups_regularizer'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 1\n\n  - lr_scheduler:\n      instance_name: pruning_lr\n    starting_epoch: 24\n    ending_epoch: 200\n    frequency: 1", 
             "title": "Mixing it up"
-        },
+        }, 
+        {
+            "location": "/schedule/index.html#quantization", 
+            "text": "Similarly to pruners and regularizers, specifying a quantizer in the scheduler YAML follows the constructor arguments of the  Quantizer  class (see details  here ).\nLet's see an example:  quantizers:\n  dorefa_quantizer:\n    class: DorefaQuantizer\n    bits_activations: 8\n    bits_weights: 4\n    bits_overrides:\n      conv1:\n        wts: null\n        acts: null\n      relu1:\n        wts: null\n        acts: null\n      final_relu:\n        wts: null\n        acts: null\n      fc:\n        wts: null\n        acts: null   The specific quantization method we're instantiating here is  DorefaQuantizer .  Then we define the default bit-widths for activations and weights, in this case 8 and 4-bits, respectively.   Then, we define the  bits_overrides  mapping. In this case, we choose not to quantize the first and last layer of the model. In the case of  DorefaQuantizer , the weights are quantized as part of the convolution / FC layers, but the activations are quantized in separate layers, which replace the ReLU layers in the original model (remember - even though we replaced the ReLU modules with our own quantization modules, the name of the modules isn't changed). So, in all, we need to reference the first layer with parameters  conv1 , the first activation layer  relu1 , the last activation layer  final_relu  and the last layer with parameters  fc .  Specifying  null  means \"do not quantize\".  Note that for quantizers, we reference names of modules, not names of parameters as we do for pruners and regularizers.  We can also reference  groups of layers  in the  bits_overrides  mapping. This is done using regular expressions. Suppose we have a sub-module in our model named  block1 , which contains multiple convolution layers which we would like to quantize to, say, 2-bits. The convolution layers are named  conv1 ,  conv2  and so on. In that case we would define the following:   bits_overrides:\n  block1.conv*:\n    wts: 2\n    acts: null", 
+            "title": "Quantization"
+        }, 
         {
-            "location": "/pruning/index.html",
-            "text": "Pruning\n\n\nA common methodology for inducing sparsity in weights and activations is called \npruning\n.  Pruning is the application of a binary criteria to decide which weights to prune: weights which match the pruning criteria are assigned a value of zero.  Pruned elements are \"trimmed\" from the model: we zero their values and also make sure they don't take part in the back-propagation process.\n\n\nWe can prune weights, biases, and activations.  Biases are few and their contribution to a layer's output is relatively large, so there is little incentive to prune them.  We usually see sparse activations following a ReLU layer, because ReLU quenches negative activations to exact zero (\\(ReLU(x): max(0,x)\\)).   Sparsity in weights is less common, as weights tend to be very small, but are often not exact zeros.\n\n\n\nLet's define sparsity\n\n\nSparsity is a a measure of how many elements in a tensor are exact zeros, relative to the tensor size.  A tensor is considered sparse if \"most\" of its elements are zero.  How much is \"most\", is not strictly defined, but when you see a sparse tensor you know it ;-)\n\nThe \n\\(l_0\\)-\"norm\" function\n measures how many zero-elements are in a tensor \nx\n:\n\\[\\lVert x \\rVert_0\\;=\\;|x_1|^0 + |x_2|^0 + ... + |x_n|^0 \\]\nIn other words, an element contributes either a value of 1 or 0 to \\(l_0\\).  Anything but an exact zero contributes a value of 1 - that's pretty cool.\n\nSometimes it helps to think about density, the number of non-zero elements (NNZ) and sparsity's complement:\n\\[\ndensity = 1 - sparsity\n\\]\nYou can use \ndistiller.sparsity\n and \ndistiller.density\n to query a PyTorch tensor's sparsity and density.\n\n\nWhat is weights pruning?\n\n\nWeights pruning, or model pruning, is a set of methods to increase the sparsity (amount of zero-valued elements in a tensor) of a network's weights.  In general, the term 'parameters' refers to both weights and bias tensors of a model.  Biases are rarely, if ever, pruned because there are very few bias elements compared to weights elements, and it is just not worth the trouble.\n\n\nPruning requires a criteria for choosing which elements to prune - this is called the \npruning criteria\n.  The most common pruning criteria is the absolute value of each element: the element's absolute value is compared to some threshold value, and if it is below the threshold the element is set to zero (i.e. pruned) .  This is implemented by the \ndistiller.MagnitudeParameterPruner\n class.  The idea behind this method, is that weights with small \\(l_1\\)-norms (absolute value) contribute little to the final result (low saliency), so they are less important and can be removed.\n\n\nA related idea motivating pruning, is that models are over-parametrized and contain redundant logic and features.  Therefore, some of these redundancies can be removed by setting their weights to zero.\n\n\nAnd yet another way to think of pruning is to phrase it as a search for a set of weights with as many zeros as possible, which still produces acceptable inference accuracies compared to the dense-model (non-pruned model).  Another way to look at it, is to imagine that because of the very high-dimensionality of the parameter space, the immediate space around the dense-model's solution likely contains some sparse solutions, and we want to use find these sparse solutions. \n\n\n\n\nPruning schedule\n\n\nThe most straight-forward to prune is to take a trained model and prune it once; also called \none-shot pruning\n.  In \nLearning both Weights and Connections for Efficient Neural Networks\n Song Han et. al show that this is surprisingly effective, but also leaves a lot of potential sparsity untapped.  The surprise is what they call the \"free lunch\" effect: \n\"reducing 2x the connections without losing accuracy even without retraining.\"\n\nHowever, they also note that when employing a pruning-followed-by-retraining regimen, they can achieve much better results (higher sparsity at no accuracy loss).  This is called \niterative pruning\n, and the retraining that follows pruning is often referred to as \nfine-tuning\n. How the pruning criteria changes between iterations, how many iterations we perform and how often, and which tensors are pruned - this is collectively called the \npruning schedule\n.\n\n\nWe can think of iterative pruning as repeatedly learning which weights are important, removing the least important ones based on some importance criteria, and then retraining the model to let it \"recover\" from the pruning by adjusting the remaining weights.  At each iteration, we prune more weights.\n\nThe decision of when to stop pruning is also expressed in the schedule, and it depends on the pruning algorithm.  For example, if we are trying to achieve a specific sparsity level, then we stop when the pruning achieves that level.  And if we are pruning weights structures in order to reduce the required compute budget, then we stop the pruning when this compute reduction is achieved.\n\n\nDistiller supports expressing the pruning schedule as a YAML file (which is then executed by an instance of a PruningScheduler).\n\n\nPruning granularity\n\n\nPruning individual weight elements is called \nelement-wise pruning\n, and it is also sometimes referred to as \nfine-grained\n pruning.\n\n\nCoarse-grained pruning\n - also referred to as \nstructured pruning\n, \ngroup pruning\n, or \nblock pruning\n - is pruning entire groups of elements which have some significance.  Groups come in various shapes and sizes, but an easy to visualize group-pruning is filter-pruning, in which entire filters are removed.\n\n\nSensitivity analysis\n\n\nThe hard part about inducing sparsity via pruning is determining what threshold, or sparsity level, to use for each layer's tensors.  Sensitivity analysis is a method that tries to help us rank the tensors by their sensitivity to pruning.  \n\nThe idea is to set the pruning level (percentage) of a specific layer, and then to prune once, run an evaluation on the test dataset and record the accuracy score.  We do this for all of the parameterized layers, and for each layer we examine several sparsity levels.  This should teach us about the \"sensitivity\" of each of the layers to pruning.\n\n\nThe evaluated model should be trained to maximum accuracy before running the analysis, because we aim to understand the behavior of the trained model's performance in relation to pruning of a specific weights tensor.\n\n\nMuch as we can prune structures, we can also perform sensitivity analysis on structures.  Distiller implements element-wise pruning sensitivity analysis using the \\(l_1\\)-norm of individual elements; and filter-wise pruning sensitivity analysis using the mean \\(l_1\\)-norm of filters.\n\n\n\nThe authors of \nPruning Filters for Efficient ConvNets\n describe how they do sensitivity analysis:\n\n\n\n\n\"To understand the sensitivity of each layer, we prune each layer independently and evaluate the resulting pruned network\u2019s accuracy on the validation set. Figure 2(b) shows that layers that maintain their accuracy as filters are pruned away correspond to layers with larger slopes in Figure 2(a). On the contrary, layers with relatively flat slopes are more sensitive to pruning. We empirically determine the number of filters to prune for each layer based on their sensitivity to pruning. For deep networks such as VGG-16 or ResNets, we observe that layers in the same stage (with the same feature map size) have a similar sensitivity to pruning. To avoid introducing layer-wise meta-parameters, we use the same pruning ratio for all layers in the same stage. For layers that are sensitive to pruning, we prune a smaller percentage of these layers or completely skip pruning them.\"\n\n\n\n\nThe diagram below shows the results of running an element-wise sensitivity analysis on Alexnet, using Distillers's \nperform_sensitivity_analysis\n utility function.\n\n\nAs reported by Song Han, and exhibited in the diagram, in Alexnet the feature detecting layers (convolution layers) are more sensitive to pruning, and their sensitivity drops, the deeper they are.  The fully-connected layers are much less sensitive, which is great, because that's where most of the parameters are.\n\n\n\n\nReferences\n\n\n \nSong Han, Jeff Pool, John Tran, William J. Dally\n.\n    \nLearning both Weights and Connections for Efficient Neural Networks\n,\n     arXiv:1607.04381v2,\n    2015.\n\n\n\n\n\nHao Li, Asim Kadav, Igor Durdanovic, Hanan Samet, Hans Peter Graf\n.\n    \nPruning Filters for Efficient ConvNets\n,\n     arXiv:1608.08710v3,\n    2017.",
+            "location": "/pruning/index.html", 
+            "text": "Pruning\n\n\nA common methodology for inducing sparsity in weights and activations is called \npruning\n.  Pruning is the application of a binary criteria to decide which weights to prune: weights which match the pruning criteria are assigned a value of zero.  Pruned elements are \"trimmed\" from the model: we zero their values and also make sure they don't take part in the back-propagation process.\n\n\nWe can prune weights, biases, and activations.  Biases are few and their contribution to a layer's output is relatively large, so there is little incentive to prune them.  We usually see sparse activations following a ReLU layer, because ReLU quenches negative activations to exact zero (\\(ReLU(x): max(0,x)\\)).   Sparsity in weights is less common, as weights tend to be very small, but are often not exact zeros.\n\n\n\nLet's define sparsity\n\n\nSparsity is a a measure of how many elements in a tensor are exact zeros, relative to the tensor size.  A tensor is considered sparse if \"most\" of its elements are zero.  How much is \"most\", is not strictly defined, but when you see a sparse tensor you know it ;-)\n\nThe \n\\(l_0\\)-\"norm\" function\n measures how many zero-elements are in a tensor \nx\n:\n\\[\\lVert x \\rVert_0\\;=\\;|x_1|^0 + |x_2|^0 + ... + |x_n|^0 \\]\nIn other words, an element contributes either a value of 1 or 0 to \\(l_0\\).  Anything but an exact zero contributes a value of 1 - that's pretty cool.\n\nSometimes it helps to think about density, the number of non-zero elements (NNZ) and sparsity's complement:\n\\[\ndensity = 1 - sparsity\n\\]\nYou can use \ndistiller.sparsity\n and \ndistiller.density\n to query a PyTorch tensor's sparsity and density.\n\n\nWhat is weights pruning?\n\n\nWeights pruning, or model pruning, is a set of methods to increase the sparsity (amount of zero-valued elements in a tensor) of a network's weights.  In general, the term 'parameters' refers to both weights and bias tensors of a model.  Biases are rarely, if ever, pruned because there are very few bias elements compared to weights elements, and it is just not worth the trouble.\n\n\nPruning requires a criteria for choosing which elements to prune - this is called the \npruning criteria\n.  The most common pruning criteria is the absolute value of each element: the element's absolute value is compared to some threshold value, and if it is below the threshold the element is set to zero (i.e. pruned) .  This is implemented by the \ndistiller.MagnitudeParameterPruner\n class.  The idea behind this method, is that weights with small \\(l_1\\)-norms (absolute value) contribute little to the final result (low saliency), so they are less important and can be removed.\n\n\nA related idea motivating pruning, is that models are over-parametrized and contain redundant logic and features.  Therefore, some of these redundancies can be removed by setting their weights to zero.\n\n\nAnd yet another way to think of pruning is to phrase it as a search for a set of weights with as many zeros as possible, which still produces acceptable inference accuracies compared to the dense-model (non-pruned model).  Another way to look at it, is to imagine that because of the very high-dimensionality of the parameter space, the immediate space around the dense-model's solution likely contains some sparse solutions, and we want to use find these sparse solutions. \n\n\n\n\nPruning schedule\n\n\nThe most straight-forward to prune is to take a trained model and prune it once; also called \none-shot pruning\n.  In \nLearning both Weights and Connections for Efficient Neural Networks\n Song Han et. al show that this is surprisingly effective, but also leaves a lot of potential sparsity untapped.  The surprise is what they call the \"free lunch\" effect: \n\"reducing 2x the connections without losing accuracy even without retraining.\"\n\nHowever, they also note that when employing a pruning-followed-by-retraining regimen, they can achieve much better results (higher sparsity at no accuracy loss).  This is called \niterative pruning\n, and the retraining that follows pruning is often referred to as \nfine-tuning\n. How the pruning criteria changes between iterations, how many iterations we perform and how often, and which tensors are pruned - this is collectively called the \npruning schedule\n.\n\n\nWe can think of iterative pruning as repeatedly learning which weights are important, removing the least important ones based on some importance criteria, and then retraining the model to let it \"recover\" from the pruning by adjusting the remaining weights.  At each iteration, we prune more weights.\n\nThe decision of when to stop pruning is also expressed in the schedule, and it depends on the pruning algorithm.  For example, if we are trying to achieve a specific sparsity level, then we stop when the pruning achieves that level.  And if we are pruning weights structures in order to reduce the required compute budget, then we stop the pruning when this compute reduction is achieved.\n\n\nDistiller supports expressing the pruning schedule as a YAML file (which is then executed by an instance of a PruningScheduler).\n\n\nPruning granularity\n\n\nPruning individual weight elements is called \nelement-wise pruning\n, and it is also sometimes referred to as \nfine-grained\n pruning.\n\n\nCoarse-grained pruning\n - also referred to as \nstructured pruning\n, \ngroup pruning\n, or \nblock pruning\n - is pruning entire groups of elements which have some significance.  Groups come in various shapes and sizes, but an easy to visualize group-pruning is filter-pruning, in which entire filters are removed.\n\n\nSensitivity analysis\n\n\nThe hard part about inducing sparsity via pruning is determining what threshold, or sparsity level, to use for each layer's tensors.  Sensitivity analysis is a method that tries to help us rank the tensors by their sensitivity to pruning.  \n\nThe idea is to set the pruning level (percentage) of a specific layer, and then to prune once, run an evaluation on the test dataset and record the accuracy score.  We do this for all of the parameterized layers, and for each layer we examine several sparsity levels.  This should teach us about the \"sensitivity\" of each of the layers to pruning.\n\n\nThe evaluated model should be trained to maximum accuracy before running the analysis, because we aim to understand the behavior of the trained model's performance in relation to pruning of a specific weights tensor.\n\n\nMuch as we can prune structures, we can also perform sensitivity analysis on structures.  Distiller implements element-wise pruning sensitivity analysis using the \\(l_1\\)-norm of individual elements; and filter-wise pruning sensitivity analysis using the mean \\(l_1\\)-norm of filters.\n\n\n\nThe authors of \nPruning Filters for Efficient ConvNets\n describe how they do sensitivity analysis:\n\n\n\n\n\"To understand the sensitivity of each layer, we prune each layer independently and evaluate the resulting pruned network\u2019s accuracy on the validation set. Figure 2(b) shows that layers that maintain their accuracy as filters are pruned away correspond to layers with larger slopes in Figure 2(a). On the contrary, layers with relatively flat slopes are more sensitive to pruning. We empirically determine the number of filters to prune for each layer based on their sensitivity to pruning. For deep networks such as VGG-16 or ResNets, we observe that layers in the same stage (with the same feature map size) have a similar sensitivity to pruning. To avoid introducing layer-wise meta-parameters, we use the same pruning ratio for all layers in the same stage. For layers that are sensitive to pruning, we prune a smaller percentage of these layers or completely skip pruning them.\"\n\n\n\n\nThe diagram below shows the results of running an element-wise sensitivity analysis on Alexnet, using Distillers's \nperform_sensitivity_analysis\n utility function.\n\n\nAs reported by Song Han, and exhibited in the diagram, in Alexnet the feature detecting layers (convolution layers) are more sensitive to pruning, and their sensitivity drops, the deeper they are.  The fully-connected layers are much less sensitive, which is great, because that's where most of the parameters are.\n\n\n\n\nReferences\n\n\n \nSong Han, Jeff Pool, John Tran, William J. Dally\n.\n    \nLearning both Weights and Connections for Efficient Neural Networks\n,\n     arXiv:1607.04381v2,\n    2015.\n\n\n\n\n\nHao Li, Asim Kadav, Igor Durdanovic, Hanan Samet, Hans Peter Graf\n.\n    \nPruning Filters for Efficient ConvNets\n,\n     arXiv:1608.08710v3,\n    2017.", 
             "title": "Pruning"
-        },
+        }, 
         {
-            "location": "/pruning/index.html#pruning",
-            "text": "A common methodology for inducing sparsity in weights and activations is called  pruning .  Pruning is the application of a binary criteria to decide which weights to prune: weights which match the pruning criteria are assigned a value of zero.  Pruned elements are \"trimmed\" from the model: we zero their values and also make sure they don't take part in the back-propagation process.  We can prune weights, biases, and activations.  Biases are few and their contribution to a layer's output is relatively large, so there is little incentive to prune them.  We usually see sparse activations following a ReLU layer, because ReLU quenches negative activations to exact zero (\\(ReLU(x): max(0,x)\\)).   Sparsity in weights is less common, as weights tend to be very small, but are often not exact zeros.",
+            "location": "/pruning/index.html#pruning", 
+            "text": "A common methodology for inducing sparsity in weights and activations is called  pruning .  Pruning is the application of a binary criteria to decide which weights to prune: weights which match the pruning criteria are assigned a value of zero.  Pruned elements are \"trimmed\" from the model: we zero their values and also make sure they don't take part in the back-propagation process.  We can prune weights, biases, and activations.  Biases are few and their contribution to a layer's output is relatively large, so there is little incentive to prune them.  We usually see sparse activations following a ReLU layer, because ReLU quenches negative activations to exact zero (\\(ReLU(x): max(0,x)\\)).   Sparsity in weights is less common, as weights tend to be very small, but are often not exact zeros.", 
             "title": "Pruning"
-        },
+        }, 
         {
-            "location": "/pruning/index.html#lets-define-sparsity",
-            "text": "Sparsity is a a measure of how many elements in a tensor are exact zeros, relative to the tensor size.  A tensor is considered sparse if \"most\" of its elements are zero.  How much is \"most\", is not strictly defined, but when you see a sparse tensor you know it ;-) \nThe  \\(l_0\\)-\"norm\" function  measures how many zero-elements are in a tensor  x :\n\\[\\lVert x \\rVert_0\\;=\\;|x_1|^0 + |x_2|^0 + ... + |x_n|^0 \\]\nIn other words, an element contributes either a value of 1 or 0 to \\(l_0\\).  Anything but an exact zero contributes a value of 1 - that's pretty cool. \nSometimes it helps to think about density, the number of non-zero elements (NNZ) and sparsity's complement:\n\\[\ndensity = 1 - sparsity\n\\]\nYou can use  distiller.sparsity  and  distiller.density  to query a PyTorch tensor's sparsity and density.",
+            "location": "/pruning/index.html#lets-define-sparsity", 
+            "text": "Sparsity is a a measure of how many elements in a tensor are exact zeros, relative to the tensor size.  A tensor is considered sparse if \"most\" of its elements are zero.  How much is \"most\", is not strictly defined, but when you see a sparse tensor you know it ;-) \nThe  \\(l_0\\)-\"norm\" function  measures how many zero-elements are in a tensor  x :\n\\[\\lVert x \\rVert_0\\;=\\;|x_1|^0 + |x_2|^0 + ... + |x_n|^0 \\]\nIn other words, an element contributes either a value of 1 or 0 to \\(l_0\\).  Anything but an exact zero contributes a value of 1 - that's pretty cool. \nSometimes it helps to think about density, the number of non-zero elements (NNZ) and sparsity's complement:\n\\[\ndensity = 1 - sparsity\n\\]\nYou can use  distiller.sparsity  and  distiller.density  to query a PyTorch tensor's sparsity and density.", 
             "title": "Let's define sparsity"
-        },
+        }, 
         {
-            "location": "/pruning/index.html#what-is-weights-pruning",
-            "text": "Weights pruning, or model pruning, is a set of methods to increase the sparsity (amount of zero-valued elements in a tensor) of a network's weights.  In general, the term 'parameters' refers to both weights and bias tensors of a model.  Biases are rarely, if ever, pruned because there are very few bias elements compared to weights elements, and it is just not worth the trouble. \nPruning requires a criteria for choosing which elements to prune - this is called the  pruning criteria .  The most common pruning criteria is the absolute value of each element: the element's absolute value is compared to some threshold value, and if it is below the threshold the element is set to zero (i.e. pruned) .  This is implemented by the  distiller.MagnitudeParameterPruner  class.  The idea behind this method, is that weights with small \\(l_1\\)-norms (absolute value) contribute little to the final result (low saliency), so they are less important and can be removed. \nA related idea motivating pruning, is that models are over-parametrized and contain redundant logic and features.  Therefore, some of these redundancies can be removed by setting their weights to zero. \nAnd yet another way to think of pruning is to phrase it as a search for a set of weights with as many zeros as possible, which still produces acceptable inference accuracies compared to the dense-model (non-pruned model).  Another way to look at it, is to imagine that because of the very high-dimensionality of the parameter space, the immediate space around the dense-model's solution likely contains some sparse solutions, and we want to use find these sparse solutions.",
+            "location": "/pruning/index.html#what-is-weights-pruning", 
+            "text": "Weights pruning, or model pruning, is a set of methods to increase the sparsity (amount of zero-valued elements in a tensor) of a network's weights.  In general, the term 'parameters' refers to both weights and bias tensors of a model.  Biases are rarely, if ever, pruned because there are very few bias elements compared to weights elements, and it is just not worth the trouble. \nPruning requires a criteria for choosing which elements to prune - this is called the  pruning criteria .  The most common pruning criteria is the absolute value of each element: the element's absolute value is compared to some threshold value, and if it is below the threshold the element is set to zero (i.e. pruned) .  This is implemented by the  distiller.MagnitudeParameterPruner  class.  The idea behind this method, is that weights with small \\(l_1\\)-norms (absolute value) contribute little to the final result (low saliency), so they are less important and can be removed. \nA related idea motivating pruning, is that models are over-parametrized and contain redundant logic and features.  Therefore, some of these redundancies can be removed by setting their weights to zero. \nAnd yet another way to think of pruning is to phrase it as a search for a set of weights with as many zeros as possible, which still produces acceptable inference accuracies compared to the dense-model (non-pruned model).  Another way to look at it, is to imagine that because of the very high-dimensionality of the parameter space, the immediate space around the dense-model's solution likely contains some sparse solutions, and we want to use find these sparse solutions.", 
             "title": "What is weights pruning?"
-        },
+        }, 
         {
-            "location": "/pruning/index.html#pruning-schedule",
-            "text": "The most straight-forward to prune is to take a trained model and prune it once; also called  one-shot pruning .  In  Learning both Weights and Connections for Efficient Neural Networks  Song Han et. al show that this is surprisingly effective, but also leaves a lot of potential sparsity untapped.  The surprise is what they call the \"free lunch\" effect:  \"reducing 2x the connections without losing accuracy even without retraining.\" \nHowever, they also note that when employing a pruning-followed-by-retraining regimen, they can achieve much better results (higher sparsity at no accuracy loss).  This is called  iterative pruning , and the retraining that follows pruning is often referred to as  fine-tuning . How the pruning criteria changes between iterations, how many iterations we perform and how often, and which tensors are pruned - this is collectively called the  pruning schedule . \nWe can think of iterative pruning as repeatedly learning which weights are important, removing the least important ones based on some importance criteria, and then retraining the model to let it \"recover\" from the pruning by adjusting the remaining weights.  At each iteration, we prune more weights. \nThe decision of when to stop pruning is also expressed in the schedule, and it depends on the pruning algorithm.  For example, if we are trying to achieve a specific sparsity level, then we stop when the pruning achieves that level.  And if we are pruning weights structures in order to reduce the required compute budget, then we stop the pruning when this compute reduction is achieved. \nDistiller supports expressing the pruning schedule as a YAML file (which is then executed by an instance of a PruningScheduler).",
+            "location": "/pruning/index.html#pruning-schedule", 
+            "text": "The most straight-forward to prune is to take a trained model and prune it once; also called  one-shot pruning .  In  Learning both Weights and Connections for Efficient Neural Networks  Song Han et. al show that this is surprisingly effective, but also leaves a lot of potential sparsity untapped.  The surprise is what they call the \"free lunch\" effect:  \"reducing 2x the connections without losing accuracy even without retraining.\" \nHowever, they also note that when employing a pruning-followed-by-retraining regimen, they can achieve much better results (higher sparsity at no accuracy loss).  This is called  iterative pruning , and the retraining that follows pruning is often referred to as  fine-tuning . How the pruning criteria changes between iterations, how many iterations we perform and how often, and which tensors are pruned - this is collectively called the  pruning schedule . \nWe can think of iterative pruning as repeatedly learning which weights are important, removing the least important ones based on some importance criteria, and then retraining the model to let it \"recover\" from the pruning by adjusting the remaining weights.  At each iteration, we prune more weights. \nThe decision of when to stop pruning is also expressed in the schedule, and it depends on the pruning algorithm.  For example, if we are trying to achieve a specific sparsity level, then we stop when the pruning achieves that level.  And if we are pruning weights structures in order to reduce the required compute budget, then we stop the pruning when this compute reduction is achieved. \nDistiller supports expressing the pruning schedule as a YAML file (which is then executed by an instance of a PruningScheduler).", 
             "title": "Pruning schedule"
-        },
+        }, 
         {
-            "location": "/pruning/index.html#pruning-granularity",
-            "text": "Pruning individual weight elements is called  element-wise pruning , and it is also sometimes referred to as  fine-grained  pruning.  Coarse-grained pruning  - also referred to as  structured pruning ,  group pruning , or  block pruning  - is pruning entire groups of elements which have some significance.  Groups come in various shapes and sizes, but an easy to visualize group-pruning is filter-pruning, in which entire filters are removed.",
+            "location": "/pruning/index.html#pruning-granularity", 
+            "text": "Pruning individual weight elements is called  element-wise pruning , and it is also sometimes referred to as  fine-grained  pruning.  Coarse-grained pruning  - also referred to as  structured pruning ,  group pruning , or  block pruning  - is pruning entire groups of elements which have some significance.  Groups come in various shapes and sizes, but an easy to visualize group-pruning is filter-pruning, in which entire filters are removed.", 
             "title": "Pruning granularity"
-        },
+        }, 
         {
-            "location": "/pruning/index.html#sensitivity-analysis",
-            "text": "The hard part about inducing sparsity via pruning is determining what threshold, or sparsity level, to use for each layer's tensors.  Sensitivity analysis is a method that tries to help us rank the tensors by their sensitivity to pruning.   \nThe idea is to set the pruning level (percentage) of a specific layer, and then to prune once, run an evaluation on the test dataset and record the accuracy score.  We do this for all of the parameterized layers, and for each layer we examine several sparsity levels.  This should teach us about the \"sensitivity\" of each of the layers to pruning. \nThe evaluated model should be trained to maximum accuracy before running the analysis, because we aim to understand the behavior of the trained model's performance in relation to pruning of a specific weights tensor. \nMuch as we can prune structures, we can also perform sensitivity analysis on structures.  Distiller implements element-wise pruning sensitivity analysis using the \\(l_1\\)-norm of individual elements; and filter-wise pruning sensitivity analysis using the mean \\(l_1\\)-norm of filters.  The authors of  Pruning Filters for Efficient ConvNets  describe how they do sensitivity analysis:   \"To understand the sensitivity of each layer, we prune each layer independently and evaluate the resulting pruned network\u2019s accuracy on the validation set. Figure 2(b) shows that layers that maintain their accuracy as filters are pruned away correspond to layers with larger slopes in Figure 2(a). On the contrary, layers with relatively flat slopes are more sensitive to pruning. We empirically determine the number of filters to prune for each layer based on their sensitivity to pruning. For deep networks such as VGG-16 or ResNets, we observe that layers in the same stage (with the same feature map size) have a similar sensitivity to pruning. To avoid introducing layer-wise meta-parameters, we use the same pruning ratio for all layers in the same stage. For layers that are sensitive to pruning, we prune a smaller percentage of these layers or completely skip pruning them.\"   The diagram below shows the results of running an element-wise sensitivity analysis on Alexnet, using Distillers's  perform_sensitivity_analysis  utility function. \nAs reported by Song Han, and exhibited in the diagram, in Alexnet the feature detecting layers (convolution layers) are more sensitive to pruning, and their sensitivity drops, the deeper they are.  The fully-connected layers are much less sensitive, which is great, because that's where most of the parameters are.",
+            "location": "/pruning/index.html#sensitivity-analysis", 
+            "text": "The hard part about inducing sparsity via pruning is determining what threshold, or sparsity level, to use for each layer's tensors.  Sensitivity analysis is a method that tries to help us rank the tensors by their sensitivity to pruning.   \nThe idea is to set the pruning level (percentage) of a specific layer, and then to prune once, run an evaluation on the test dataset and record the accuracy score.  We do this for all of the parameterized layers, and for each layer we examine several sparsity levels.  This should teach us about the \"sensitivity\" of each of the layers to pruning. \nThe evaluated model should be trained to maximum accuracy before running the analysis, because we aim to understand the behavior of the trained model's performance in relation to pruning of a specific weights tensor. \nMuch as we can prune structures, we can also perform sensitivity analysis on structures.  Distiller implements element-wise pruning sensitivity analysis using the \\(l_1\\)-norm of individual elements; and filter-wise pruning sensitivity analysis using the mean \\(l_1\\)-norm of filters.  The authors of  Pruning Filters for Efficient ConvNets  describe how they do sensitivity analysis:   \"To understand the sensitivity of each layer, we prune each layer independently and evaluate the resulting pruned network\u2019s accuracy on the validation set. Figure 2(b) shows that layers that maintain their accuracy as filters are pruned away correspond to layers with larger slopes in Figure 2(a). On the contrary, layers with relatively flat slopes are more sensitive to pruning. We empirically determine the number of filters to prune for each layer based on their sensitivity to pruning. For deep networks such as VGG-16 or ResNets, we observe that layers in the same stage (with the same feature map size) have a similar sensitivity to pruning. To avoid introducing layer-wise meta-parameters, we use the same pruning ratio for all layers in the same stage. For layers that are sensitive to pruning, we prune a smaller percentage of these layers or completely skip pruning them.\"   The diagram below shows the results of running an element-wise sensitivity analysis on Alexnet, using Distillers's  perform_sensitivity_analysis  utility function. \nAs reported by Song Han, and exhibited in the diagram, in Alexnet the feature detecting layers (convolution layers) are more sensitive to pruning, and their sensitivity drops, the deeper they are.  The fully-connected layers are much less sensitive, which is great, because that's where most of the parameters are.", 
             "title": "Sensitivity analysis"
-        },
+        }, 
         {
-            "location": "/pruning/index.html#references",
-            "text": "Song Han, Jeff Pool, John Tran, William J. Dally .\n     Learning both Weights and Connections for Efficient Neural Networks ,\n     arXiv:1607.04381v2,\n    2015.   Hao Li, Asim Kadav, Igor Durdanovic, Hanan Samet, Hans Peter Graf .\n     Pruning Filters for Efficient ConvNets ,\n     arXiv:1608.08710v3,\n    2017.",
+            "location": "/pruning/index.html#references", 
+            "text": "Song Han, Jeff Pool, John Tran, William J. Dally .\n     Learning both Weights and Connections for Efficient Neural Networks ,\n     arXiv:1607.04381v2,\n    2015.   Hao Li, Asim Kadav, Igor Durdanovic, Hanan Samet, Hans Peter Graf .\n     Pruning Filters for Efficient ConvNets ,\n     arXiv:1608.08710v3,\n    2017.", 
             "title": "References"
-        },
+        }, 
         {
-            "location": "/regularization/index.html",
-            "text": "Regularization\n\n\nIn their book \nDeep Learning\n Ian Goodfellow et al. define regularization as\n\n\n\n\n\"any modification we make to a learning algorithm that is intended to reduce its generalization error, but not its training error.\"\n\n\n\n\nPyTorch's \noptimizers\n use \\(l_2\\) parameter regularization to limit the capacity of models (i.e. reduce the variance).\n\n\nIn general, we can write this as:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R R(W)\n\\]\nAnd specifically,\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R \\lVert W \\rVert_2^2\n\\]\nWhere W is the collection of all weight elements in the network (i.e. this is model.parameters()), \\(loss(W;x;y)\\) is the total training loss, and \\(loss_D(W)\\) is the data loss (i.e. the error of the objective function, also called the loss function, or \ncriterion\n in the Distiller sample image classifier compression application).\n\n\noptimizer = optim.SGD(model.parameters(), lr = 0.01, momentum=0.9, weight_decay=0.0001)\ncriterion = nn.CrossEntropyLoss()\n...\nfor input, target in dataset:\n    optimizer.zero_grad()\n    output = model(input)\n    loss = criterion(output, target)\n    loss.backward()\n    optimizer.step()\n\n\n\n\n\\(\\lambda_R\\) is a scalar called the \nregularization strength\n, and it balances the data error and the regularization error.  In PyTorch, this is the \nweight_decay\n argument.\n\n\n\\(\\lVert W \\rVert_2^2\\) is the square of the \\(l_2\\)-norm of W, and as such it is a \nmagnitude\n, or sizing, of the weights tensor.\n\\[\n\\lVert W \\rVert_2^2 = \\sum_{l=1}^{L}  \\sum_{i=1}^{n} |w_{l,i}|^2 \\;\\;where \\;n = torch.numel(w_l)\n\\]\n\n\n\\(L\\) is the number of layers in the network; and the notation about used 1-based numbering to simplify the notation.\n\n\nThe qualitative differences between the \\(l_2\\)-norm, and the squared \\(l_2\\)-norm is explained in \nDeep Learning\n.\n\n\nSparsity and Regularization\n\n\nWe mention regularization because there is an interesting interaction between regularization and some DNN sparsity-inducing methods.\n\n\nIn \nDense-Sparse-Dense (DSD)\n, Song Han et al. use pruning as a regularizer to improve a model's accuracy:\n\n\n\n\n\"Sparsity is a powerful form of regularization. Our intuition is that, once the network arrives at a local minimum given the sparsity constraint, relaxing the constraint gives the network more freedom to escape the saddle point and arrive at a higher-accuracy local minimum.\"\n\n\n\n\nRegularization can also be used to induce sparsity.  To induce element-wise sparsity we can use the \\(l_1\\)-norm, \\(\\lVert W \\rVert_1\\).\n\\[\n\\lVert W \\rVert_1 = l_1(W) = \\sum_{i=1}^{|W|} |w_i|\n\\]\n\n\n\\(l_2\\)-norm regularization reduces overfitting and improves a model's accuracy by shrinking large parameters, but it does not force these parameters to absolute zero.  \\(l_1\\)-norm regularization sets some of the parameter elements to zero, therefore limiting the model's capacity while making the model simpler.  This is sometimes referred to as \nfeature selection\n and gives us another interpretation of pruning.\n\n\nOne\n of Distiller's Jupyter notebooks explains how the \\(l_1\\)-norm regularizer induces sparsity, and how it interacts with \\(l_2\\)-norm regularization.\n\n\nIf we configure \nweight_decay\n to zero and use \\(l_1\\)-norm regularization, then we have:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R \\lVert W \\rVert_1\n\\]\nIf we use both regularizers, we have:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_{R_2} \\lVert W \\rVert_2^2  + \\lambda_{R_1} \\lVert W \\rVert_1\n\\]\n\n\nClass \ndistiller.L1Regularizer\n implements \\(l_1\\)-norm regularization, and of course, you can also schedule regularization.\n\n\nl1_regularizer = distiller.s(model.parameters())\n...\nloss = criterion(output, target) + lambda * l1_regularizer()\n\n\n\n\nGroup Regularization\n\n\nIn Group Regularization, we penalize entire groups of parameter elements, instead of individual elements.  Therefore, entire groups are either sparsified (i.e. all of the group elements have a value of zero) or not.  The group structures have to be pre-defined.\n\n\nTo the data loss, and the element-wise regularization (if any), we can add group-wise regularization penalty.  We represent all of the parameter groups in layer \\(l\\) as \\( W_l^{(G)} \\), and we add the penalty of all groups for all layers.  It gets a bit messy, but not overly complicated:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R R(W) + \\lambda_g \\sum_{l=1}^{L} R_g(W_l^{(G)})\n\\]\n\n\nLet's denote all of the weight elements in group \\(g\\) as \\(w^{(g)}\\).\n\n\n\\[\nR_g(w^{(g)}) = \\sum_{g=1}^{G} \\lVert w^{(g)} \\rVert_g = \\sum_{g=1}^{G} \\sum_{i=1}^{|w^{(g)}|} {(w_i^{(g)})}^2\n\\]\nwhere \\(w^{(g)} \\in w^{(l)} \\) and \\( |w^{(g)}| \\) is the number of elements in \\( w^{(g)} \\).\n\n\n\\( \\lambda_g \\sum_{l=1}^{L} R_g(W_l^{(G)}) \\) is called the Group Lasso regularizer.  Much as in \\(l_1\\)-norm regularization we sum the magnitudes of all tensor elements, in Group Lasso we sum the magnitudes of element structures (i.e. groups).\n\n\n\nGroup Regularization is also called Block Regularization, Structured Regularization, or coarse-grained sparsity (remember that element-wise sparsity is sometimes referred to as fine-grained sparsity).  Group sparsity exhibits regularity (i.e. its shape is regular), and therefore\nit can be beneficial to improve inference speed.\n\n\nHuizi-et-al-2017\n provides an overview of some of the different groups: kernel, channel, filter, layers.  Fiber structures such as matrix columns and rows, as well as various shaped structures (block sparsity), and even \nintra kernel strided sparsity\n can also be used.\n\n\ndistiller.GroupLassoRegularizer\n currently implements most of these groups, and you can easily add new groups.\n\n\nReferences\n\n\n \nIan Goodfellow and Yoshua Bengio and Aaron Courville\n.\n    \nDeep Learning\n,\n     arXiv:1607.04381v2,\n    2017.\n\n\n\n\n\nSong Han, Jeff Pool, Sharan Narang, Huizi Mao, Enhao Gong, Shijian Tang, Erich Elsen, Peter Vajda, Manohar Paluri, John Tran, Bryan Catanzaro, William J. Dally\n.\n    \nDSD: Dense-Sparse-Dense Training for Deep Neural Networks\n,\n     arXiv:1607.04381v2,\n    2017.\n\n\n\n\n\nHuizi Mao, Song Han, Jeff Pool, Wenshuo Li, Xingyu Liu, Yu Wang, William J. Dally\n.\n    \nExploring the Regularity of Sparse Structure in Convolutional Neural Networks\n,\n    arXiv:1705.08922v3,\n    2017.\n\n\n\n\n\nSajid Anwar, Kyuyeon Hwang, and Wonyong Sung\n.\n    \nStructured pruning of deep convolutional neural networks\n,\n    arXiv:1512.08571,\n    2015",
+            "location": "/regularization/index.html", 
+            "text": "Regularization\n\n\nIn their book \nDeep Learning\n Ian Goodfellow et al. define regularization as\n\n\n\n\n\"any modification we make to a learning algorithm that is intended to reduce its generalization error, but not its training error.\"\n\n\n\n\nPyTorch's \noptimizers\n use \\(l_2\\) parameter regularization to limit the capacity of models (i.e. reduce the variance).\n\n\nIn general, we can write this as:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R R(W)\n\\]\nAnd specifically,\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R \\lVert W \\rVert_2^2\n\\]\nWhere W is the collection of all weight elements in the network (i.e. this is model.parameters()), \\(loss(W;x;y)\\) is the total training loss, and \\(loss_D(W)\\) is the data loss (i.e. the error of the objective function, also called the loss function, or \ncriterion\n in the Distiller sample image classifier compression application).\n\n\noptimizer = optim.SGD(model.parameters(), lr = 0.01, momentum=0.9, weight_decay=0.0001)\ncriterion = nn.CrossEntropyLoss()\n...\nfor input, target in dataset:\n    optimizer.zero_grad()\n    output = model(input)\n    loss = criterion(output, target)\n    loss.backward()\n    optimizer.step()\n\n\n\n\n\\(\\lambda_R\\) is a scalar called the \nregularization strength\n, and it balances the data error and the regularization error.  In PyTorch, this is the \nweight_decay\n argument.\n\n\n\\(\\lVert W \\rVert_2^2\\) is the square of the \\(l_2\\)-norm of W, and as such it is a \nmagnitude\n, or sizing, of the weights tensor.\n\\[\n\\lVert W \\rVert_2^2 = \\sum_{l=1}^{L}  \\sum_{i=1}^{n} |w_{l,i}|^2 \\;\\;where \\;n = torch.numel(w_l)\n\\]\n\n\n\\(L\\) is the number of layers in the network; and the notation about used 1-based numbering to simplify the notation.\n\n\nThe qualitative differences between the \\(l_2\\)-norm, and the squared \\(l_2\\)-norm is explained in \nDeep Learning\n.\n\n\nSparsity and Regularization\n\n\nWe mention regularization because there is an interesting interaction between regularization and some DNN sparsity-inducing methods.\n\n\nIn \nDense-Sparse-Dense (DSD)\n, Song Han et al. use pruning as a regularizer to improve a model's accuracy:\n\n\n\n\n\"Sparsity is a powerful form of regularization. Our intuition is that, once the network arrives at a local minimum given the sparsity constraint, relaxing the constraint gives the network more freedom to escape the saddle point and arrive at a higher-accuracy local minimum.\"\n\n\n\n\nRegularization can also be used to induce sparsity.  To induce element-wise sparsity we can use the \\(l_1\\)-norm, \\(\\lVert W \\rVert_1\\).\n\\[\n\\lVert W \\rVert_1 = l_1(W) = \\sum_{i=1}^{|W|} |w_i|\n\\]\n\n\n\\(l_2\\)-norm regularization reduces overfitting and improves a model's accuracy by shrinking large parameters, but it does not force these parameters to absolute zero.  \\(l_1\\)-norm regularization sets some of the parameter elements to zero, therefore limiting the model's capacity while making the model simpler.  This is sometimes referred to as \nfeature selection\n and gives us another interpretation of pruning.\n\n\nOne\n of Distiller's Jupyter notebooks explains how the \\(l_1\\)-norm regularizer induces sparsity, and how it interacts with \\(l_2\\)-norm regularization.\n\n\nIf we configure \nweight_decay\n to zero and use \\(l_1\\)-norm regularization, then we have:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R \\lVert W \\rVert_1\n\\]\nIf we use both regularizers, we have:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_{R_2} \\lVert W \\rVert_2^2  + \\lambda_{R_1} \\lVert W \\rVert_1\n\\]\n\n\nClass \ndistiller.L1Regularizer\n implements \\(l_1\\)-norm regularization, and of course, you can also schedule regularization.\n\n\nl1_regularizer = distiller.s(model.parameters())\n...\nloss = criterion(output, target) + lambda * l1_regularizer()\n\n\n\n\nGroup Regularization\n\n\nIn Group Regularization, we penalize entire groups of parameter elements, instead of individual elements.  Therefore, entire groups are either sparsified (i.e. all of the group elements have a value of zero) or not.  The group structures have to be pre-defined.\n\n\nTo the data loss, and the element-wise regularization (if any), we can add group-wise regularization penalty.  We represent all of the parameter groups in layer \\(l\\) as \\( W_l^{(G)} \\), and we add the penalty of all groups for all layers.  It gets a bit messy, but not overly complicated:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R R(W) + \\lambda_g \\sum_{l=1}^{L} R_g(W_l^{(G)})\n\\]\n\n\nLet's denote all of the weight elements in group \\(g\\) as \\(w^{(g)}\\).\n\n\n\\[\nR_g(w^{(g)}) = \\sum_{g=1}^{G} \\lVert w^{(g)} \\rVert_g = \\sum_{g=1}^{G} \\sum_{i=1}^{|w^{(g)}|} {(w_i^{(g)})}^2\n\\]\nwhere \\(w^{(g)} \\in w^{(l)} \\) and \\( |w^{(g)}| \\) is the number of elements in \\( w^{(g)} \\).\n\n\n\\( \\lambda_g \\sum_{l=1}^{L} R_g(W_l^{(G)}) \\) is called the Group Lasso regularizer.  Much as in \\(l_1\\)-norm regularization we sum the magnitudes of all tensor elements, in Group Lasso we sum the magnitudes of element structures (i.e. groups).\n\n\n\nGroup Regularization is also called Block Regularization, Structured Regularization, or coarse-grained sparsity (remember that element-wise sparsity is sometimes referred to as fine-grained sparsity).  Group sparsity exhibits regularity (i.e. its shape is regular), and therefore\nit can be beneficial to improve inference speed.\n\n\nHuizi-et-al-2017\n provides an overview of some of the different groups: kernel, channel, filter, layers.  Fiber structures such as matrix columns and rows, as well as various shaped structures (block sparsity), and even \nintra kernel strided sparsity\n can also be used.\n\n\ndistiller.GroupLassoRegularizer\n currently implements most of these groups, and you can easily add new groups.\n\n\nReferences\n\n\n \nIan Goodfellow and Yoshua Bengio and Aaron Courville\n.\n    \nDeep Learning\n,\n     arXiv:1607.04381v2,\n    2017.\n\n\n\n\n\nSong Han, Jeff Pool, Sharan Narang, Huizi Mao, Enhao Gong, Shijian Tang, Erich Elsen, Peter Vajda, Manohar Paluri, John Tran, Bryan Catanzaro, William J. Dally\n.\n    \nDSD: Dense-Sparse-Dense Training for Deep Neural Networks\n,\n     arXiv:1607.04381v2,\n    2017.\n\n\n\n\n\nHuizi Mao, Song Han, Jeff Pool, Wenshuo Li, Xingyu Liu, Yu Wang, William J. Dally\n.\n    \nExploring the Regularity of Sparse Structure in Convolutional Neural Networks\n,\n    arXiv:1705.08922v3,\n    2017.\n\n\n\n\n\nSajid Anwar, Kyuyeon Hwang, and Wonyong Sung\n.\n    \nStructured pruning of deep convolutional neural networks\n,\n    arXiv:1512.08571,\n    2015", 
             "title": "Regularization"
-        },
+        }, 
         {
-            "location": "/regularization/index.html#regularization",
-            "text": "In their book  Deep Learning  Ian Goodfellow et al. define regularization as   \"any modification we make to a learning algorithm that is intended to reduce its generalization error, but not its training error.\"   PyTorch's  optimizers  use \\(l_2\\) parameter regularization to limit the capacity of models (i.e. reduce the variance).  In general, we can write this as:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R R(W)\n\\]\nAnd specifically,\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R \\lVert W \\rVert_2^2\n\\]\nWhere W is the collection of all weight elements in the network (i.e. this is model.parameters()), \\(loss(W;x;y)\\) is the total training loss, and \\(loss_D(W)\\) is the data loss (i.e. the error of the objective function, also called the loss function, or  criterion  in the Distiller sample image classifier compression application).  optimizer = optim.SGD(model.parameters(), lr = 0.01, momentum=0.9, weight_decay=0.0001)\ncriterion = nn.CrossEntropyLoss()\n...\nfor input, target in dataset:\n    optimizer.zero_grad()\n    output = model(input)\n    loss = criterion(output, target)\n    loss.backward()\n    optimizer.step()  \\(\\lambda_R\\) is a scalar called the  regularization strength , and it balances the data error and the regularization error.  In PyTorch, this is the  weight_decay  argument.  \\(\\lVert W \\rVert_2^2\\) is the square of the \\(l_2\\)-norm of W, and as such it is a  magnitude , or sizing, of the weights tensor.\n\\[\n\\lVert W \\rVert_2^2 = \\sum_{l=1}^{L}  \\sum_{i=1}^{n} |w_{l,i}|^2 \\;\\;where \\;n = torch.numel(w_l)\n\\]  \\(L\\) is the number of layers in the network; and the notation about used 1-based numbering to simplify the notation.  The qualitative differences between the \\(l_2\\)-norm, and the squared \\(l_2\\)-norm is explained in  Deep Learning .",
+            "location": "/regularization/index.html#regularization", 
+            "text": "In their book  Deep Learning  Ian Goodfellow et al. define regularization as   \"any modification we make to a learning algorithm that is intended to reduce its generalization error, but not its training error.\"   PyTorch's  optimizers  use \\(l_2\\) parameter regularization to limit the capacity of models (i.e. reduce the variance).  In general, we can write this as:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R R(W)\n\\]\nAnd specifically,\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R \\lVert W \\rVert_2^2\n\\]\nWhere W is the collection of all weight elements in the network (i.e. this is model.parameters()), \\(loss(W;x;y)\\) is the total training loss, and \\(loss_D(W)\\) is the data loss (i.e. the error of the objective function, also called the loss function, or  criterion  in the Distiller sample image classifier compression application).  optimizer = optim.SGD(model.parameters(), lr = 0.01, momentum=0.9, weight_decay=0.0001)\ncriterion = nn.CrossEntropyLoss()\n...\nfor input, target in dataset:\n    optimizer.zero_grad()\n    output = model(input)\n    loss = criterion(output, target)\n    loss.backward()\n    optimizer.step()  \\(\\lambda_R\\) is a scalar called the  regularization strength , and it balances the data error and the regularization error.  In PyTorch, this is the  weight_decay  argument.  \\(\\lVert W \\rVert_2^2\\) is the square of the \\(l_2\\)-norm of W, and as such it is a  magnitude , or sizing, of the weights tensor.\n\\[\n\\lVert W \\rVert_2^2 = \\sum_{l=1}^{L}  \\sum_{i=1}^{n} |w_{l,i}|^2 \\;\\;where \\;n = torch.numel(w_l)\n\\]  \\(L\\) is the number of layers in the network; and the notation about used 1-based numbering to simplify the notation.  The qualitative differences between the \\(l_2\\)-norm, and the squared \\(l_2\\)-norm is explained in  Deep Learning .", 
             "title": "Regularization"
-        },
+        }, 
         {
-            "location": "/regularization/index.html#sparsity-and-regularization",
-            "text": "We mention regularization because there is an interesting interaction between regularization and some DNN sparsity-inducing methods.  In  Dense-Sparse-Dense (DSD) , Song Han et al. use pruning as a regularizer to improve a model's accuracy:   \"Sparsity is a powerful form of regularization. Our intuition is that, once the network arrives at a local minimum given the sparsity constraint, relaxing the constraint gives the network more freedom to escape the saddle point and arrive at a higher-accuracy local minimum.\"   Regularization can also be used to induce sparsity.  To induce element-wise sparsity we can use the \\(l_1\\)-norm, \\(\\lVert W \\rVert_1\\).\n\\[\n\\lVert W \\rVert_1 = l_1(W) = \\sum_{i=1}^{|W|} |w_i|\n\\]  \\(l_2\\)-norm regularization reduces overfitting and improves a model's accuracy by shrinking large parameters, but it does not force these parameters to absolute zero.  \\(l_1\\)-norm regularization sets some of the parameter elements to zero, therefore limiting the model's capacity while making the model simpler.  This is sometimes referred to as  feature selection  and gives us another interpretation of pruning.  One  of Distiller's Jupyter notebooks explains how the \\(l_1\\)-norm regularizer induces sparsity, and how it interacts with \\(l_2\\)-norm regularization.  If we configure  weight_decay  to zero and use \\(l_1\\)-norm regularization, then we have:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R \\lVert W \\rVert_1\n\\]\nIf we use both regularizers, we have:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_{R_2} \\lVert W \\rVert_2^2  + \\lambda_{R_1} \\lVert W \\rVert_1\n\\]  Class  distiller.L1Regularizer  implements \\(l_1\\)-norm regularization, and of course, you can also schedule regularization.  l1_regularizer = distiller.s(model.parameters())\n...\nloss = criterion(output, target) + lambda * l1_regularizer()",
+            "location": "/regularization/index.html#sparsity-and-regularization", 
+            "text": "We mention regularization because there is an interesting interaction between regularization and some DNN sparsity-inducing methods.  In  Dense-Sparse-Dense (DSD) , Song Han et al. use pruning as a regularizer to improve a model's accuracy:   \"Sparsity is a powerful form of regularization. Our intuition is that, once the network arrives at a local minimum given the sparsity constraint, relaxing the constraint gives the network more freedom to escape the saddle point and arrive at a higher-accuracy local minimum.\"   Regularization can also be used to induce sparsity.  To induce element-wise sparsity we can use the \\(l_1\\)-norm, \\(\\lVert W \\rVert_1\\).\n\\[\n\\lVert W \\rVert_1 = l_1(W) = \\sum_{i=1}^{|W|} |w_i|\n\\]  \\(l_2\\)-norm regularization reduces overfitting and improves a model's accuracy by shrinking large parameters, but it does not force these parameters to absolute zero.  \\(l_1\\)-norm regularization sets some of the parameter elements to zero, therefore limiting the model's capacity while making the model simpler.  This is sometimes referred to as  feature selection  and gives us another interpretation of pruning.  One  of Distiller's Jupyter notebooks explains how the \\(l_1\\)-norm regularizer induces sparsity, and how it interacts with \\(l_2\\)-norm regularization.  If we configure  weight_decay  to zero and use \\(l_1\\)-norm regularization, then we have:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R \\lVert W \\rVert_1\n\\]\nIf we use both regularizers, we have:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_{R_2} \\lVert W \\rVert_2^2  + \\lambda_{R_1} \\lVert W \\rVert_1\n\\]  Class  distiller.L1Regularizer  implements \\(l_1\\)-norm regularization, and of course, you can also schedule regularization.  l1_regularizer = distiller.s(model.parameters())\n...\nloss = criterion(output, target) + lambda * l1_regularizer()", 
             "title": "Sparsity and Regularization"
-        },
+        }, 
         {
-            "location": "/regularization/index.html#group-regularization",
-            "text": "In Group Regularization, we penalize entire groups of parameter elements, instead of individual elements.  Therefore, entire groups are either sparsified (i.e. all of the group elements have a value of zero) or not.  The group structures have to be pre-defined.  To the data loss, and the element-wise regularization (if any), we can add group-wise regularization penalty.  We represent all of the parameter groups in layer \\(l\\) as \\( W_l^{(G)} \\), and we add the penalty of all groups for all layers.  It gets a bit messy, but not overly complicated:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R R(W) + \\lambda_g \\sum_{l=1}^{L} R_g(W_l^{(G)})\n\\]  Let's denote all of the weight elements in group \\(g\\) as \\(w^{(g)}\\).  \\[\nR_g(w^{(g)}) = \\sum_{g=1}^{G} \\lVert w^{(g)} \\rVert_g = \\sum_{g=1}^{G} \\sum_{i=1}^{|w^{(g)}|} {(w_i^{(g)})}^2\n\\]\nwhere \\(w^{(g)} \\in w^{(l)} \\) and \\( |w^{(g)}| \\) is the number of elements in \\( w^{(g)} \\).  \\( \\lambda_g \\sum_{l=1}^{L} R_g(W_l^{(G)}) \\) is called the Group Lasso regularizer.  Much as in \\(l_1\\)-norm regularization we sum the magnitudes of all tensor elements, in Group Lasso we sum the magnitudes of element structures (i.e. groups).  \nGroup Regularization is also called Block Regularization, Structured Regularization, or coarse-grained sparsity (remember that element-wise sparsity is sometimes referred to as fine-grained sparsity).  Group sparsity exhibits regularity (i.e. its shape is regular), and therefore\nit can be beneficial to improve inference speed.  Huizi-et-al-2017  provides an overview of some of the different groups: kernel, channel, filter, layers.  Fiber structures such as matrix columns and rows, as well as various shaped structures (block sparsity), and even  intra kernel strided sparsity  can also be used.  distiller.GroupLassoRegularizer  currently implements most of these groups, and you can easily add new groups.",
+            "location": "/regularization/index.html#group-regularization", 
+            "text": "In Group Regularization, we penalize entire groups of parameter elements, instead of individual elements.  Therefore, entire groups are either sparsified (i.e. all of the group elements have a value of zero) or not.  The group structures have to be pre-defined.  To the data loss, and the element-wise regularization (if any), we can add group-wise regularization penalty.  We represent all of the parameter groups in layer \\(l\\) as \\( W_l^{(G)} \\), and we add the penalty of all groups for all layers.  It gets a bit messy, but not overly complicated:\n\\[\nloss(W;x;y) = loss_D(W;x;y) + \\lambda_R R(W) + \\lambda_g \\sum_{l=1}^{L} R_g(W_l^{(G)})\n\\]  Let's denote all of the weight elements in group \\(g\\) as \\(w^{(g)}\\).  \\[\nR_g(w^{(g)}) = \\sum_{g=1}^{G} \\lVert w^{(g)} \\rVert_g = \\sum_{g=1}^{G} \\sum_{i=1}^{|w^{(g)}|} {(w_i^{(g)})}^2\n\\]\nwhere \\(w^{(g)} \\in w^{(l)} \\) and \\( |w^{(g)}| \\) is the number of elements in \\( w^{(g)} \\).  \\( \\lambda_g \\sum_{l=1}^{L} R_g(W_l^{(G)}) \\) is called the Group Lasso regularizer.  Much as in \\(l_1\\)-norm regularization we sum the magnitudes of all tensor elements, in Group Lasso we sum the magnitudes of element structures (i.e. groups).  \nGroup Regularization is also called Block Regularization, Structured Regularization, or coarse-grained sparsity (remember that element-wise sparsity is sometimes referred to as fine-grained sparsity).  Group sparsity exhibits regularity (i.e. its shape is regular), and therefore\nit can be beneficial to improve inference speed.  Huizi-et-al-2017  provides an overview of some of the different groups: kernel, channel, filter, layers.  Fiber structures such as matrix columns and rows, as well as various shaped structures (block sparsity), and even  intra kernel strided sparsity  can also be used.  distiller.GroupLassoRegularizer  currently implements most of these groups, and you can easily add new groups.", 
             "title": "Group Regularization"
-        },
+        }, 
         {
-            "location": "/regularization/index.html#references",
-            "text": "Ian Goodfellow and Yoshua Bengio and Aaron Courville .\n     Deep Learning ,\n     arXiv:1607.04381v2,\n    2017.   Song Han, Jeff Pool, Sharan Narang, Huizi Mao, Enhao Gong, Shijian Tang, Erich Elsen, Peter Vajda, Manohar Paluri, John Tran, Bryan Catanzaro, William J. Dally .\n     DSD: Dense-Sparse-Dense Training for Deep Neural Networks ,\n     arXiv:1607.04381v2,\n    2017.   Huizi Mao, Song Han, Jeff Pool, Wenshuo Li, Xingyu Liu, Yu Wang, William J. Dally .\n     Exploring the Regularity of Sparse Structure in Convolutional Neural Networks ,\n    arXiv:1705.08922v3,\n    2017.   Sajid Anwar, Kyuyeon Hwang, and Wonyong Sung .\n     Structured pruning of deep convolutional neural networks ,\n    arXiv:1512.08571,\n    2015",
+            "location": "/regularization/index.html#references", 
+            "text": "Ian Goodfellow and Yoshua Bengio and Aaron Courville .\n     Deep Learning ,\n     arXiv:1607.04381v2,\n    2017.   Song Han, Jeff Pool, Sharan Narang, Huizi Mao, Enhao Gong, Shijian Tang, Erich Elsen, Peter Vajda, Manohar Paluri, John Tran, Bryan Catanzaro, William J. Dally .\n     DSD: Dense-Sparse-Dense Training for Deep Neural Networks ,\n     arXiv:1607.04381v2,\n    2017.   Huizi Mao, Song Han, Jeff Pool, Wenshuo Li, Xingyu Liu, Yu Wang, William J. Dally .\n     Exploring the Regularity of Sparse Structure in Convolutional Neural Networks ,\n    arXiv:1705.08922v3,\n    2017.   Sajid Anwar, Kyuyeon Hwang, and Wonyong Sung .\n     Structured pruning of deep convolutional neural networks ,\n    arXiv:1512.08571,\n    2015", 
             "title": "References"
-        },
+        }, 
         {
-            "location": "/quantization/index.html",
-            "text": "Quantization\n\n\nQuantization refers to the process of reducing the number of bits that represent a number. In the context of deep learning, the predominant numerical format used for research and for deployment has so far been 32-bit floating point, or FP32. However, the desire for reduced bandwidth and compute requirements of deep learning models has driven research into using lower-precision numerical formats. It has been extensively demonstrated that weights and activations can be represented using 8-bit integers (or INT8) without incurring significant loss in accuracy. The use of even lower bit-widths, such as 4/2/1-bits, is an active field of research that has also shown great progress.\n\n\nNote that this discussion is on quantization only in the context of more efficient inference. Using lower-precision numerics for more efficient training is currently out of scope.\n\n\nMotivation: Overall Efficiency\n\n\nThe more obvious benefit from quantization is \nsignificantly reduced bandwidth and storage\n. For instance, using INT8 for weights and activations consumes 4x less overall bandwidth compared to FP32.\n\nAdditionally integer compute is \nfaster\n than floating point compute. It is also much more \narea and energy efficient\n: \n\n\n\n\n\n\n\n\nINT8 Operation\n\n\nEnergy Saving vs FP32\n\n\nArea Saving vs FP32\n\n\n\n\n\n\n\n\n\n\nAdd\n\n\n30x\n\n\n116x\n\n\n\n\n\n\nMultiply\n\n\n18.5x\n\n\n27x\n\n\n\n\n\n\n\n\n(\nDally, 2015\n)\n\n\nNote that very aggressive quantization can yield even more efficiency. If weights are binary (-1, 1) or ternary (-1, 0, 1 using 2-bits), then convolution and fully-connected layers can be computed with additions and subtractions only, removing multiplications completely. If activations are binary as well, then additions can also be removed, in favor of bitwise operations (\nRastegari et al., 2016\n).\n\n\nInteger vs. FP32\n\n\nThere are two main attributes when discussing a numerical format. The first is \ndynamic range\n, which refers to the range of representable numbers. The second one is how many values can be represented within the dynamic range, which in turn determines the \nprecision / resolution\n of the format (the distance between two numbers).\n\nFor all integer formats, the dynamic range is \n[-2^{n-1} .. 2^{n-1}-1]\n, where \nn\n is the number of bits. So for INT8 the range is \n[-128 .. 127]\n, and for INT4 it is \n[-16 .. 15]\n (we're limiting ourselves to signed integers for now). The number of representable values is \n2^n\n.\nContrast that with FP32, where the dynamic range is \n\\pm 3.4\\ x\\ 10^{38}\n, and approximately \n4.2\\ x\\ 10^9\n values can be represented.\n\nWe can immediately see that FP32 is much more \nversatile\n, in that it is able to represent a wide range of distributions accurately. This is a nice property for deep learning models, where the distributions of weights and activations are usually very different (at least in dynamic range). In addition the dynamic range can differ between layers in the model.\n\nIn order to be able to represent these different distributions with an integer format, a \nscale factor\n is used to map the dynamic range of the tensor to the integer format range. But still we remain with the issue of having a significantly lower number of representable values, that is - much lower resolution.\n\nNote that this scale factor is, in most cases, a floating-point number. Hence, even when using integer numerics, some floating-point computations remain. \nCourbariaux et al., 2014\n scale using only shifts, eliminating the floating point operation. In \nGEMMLWOP\n, the FP32 scale factor is approximated using an integer or fixed-point multiplication followed by a shift operation. In many cases the effect of this approximation on accuracy is negligible.\n\n\nAvoiding Overflows\n\n\nConvolution and fully connected layers involve the storing of intermediate results in accumulators. Due to the limited dynamic range of integer formats, if we would use the same bit-width for the weights and activation, \nand\n for the accumulators, we would likely overflow very quickly. Therefore, accumulators are usually implemented with higher bit-widths.\n\nThe result of multiplying two \nn\n-bit integers is, at most, a \n2n\n-bit number. In convolution layers, such multiplications are accumulated \nc\\cdot k^2\n times, where \nc\n is the number of input channels and \nk\n is the kernel width (assuming a square kernel). Hence, to avoid overflowing, the accumulator should be \n2n + M\n-bits wide, where M is at least \nlog_2(c\\cdot k^2)\n. In many cases 32-bit accumulators are used, however for INT4 and lower it might be possible to use less than 32 -bits, depending on the expected use cases and layer widths.\n\n\n\"Conservative\" Quantization: INT8\n\n\nIn many cases, taking a model trained for FP32 and directly quantizing it to INT8, without any re-training, can result in a relatively low loss of accuracy (which may or may not be acceptable, depending on the use case). Some fine-tuning can further improve the accuracy (\nGysel at al., 2018\n).\n\nAs mentioned above, a scale factor is used to adapt the dynamic range of the tensor at hand to that of the integer format. This scale factor needs to be calculated per-layer per-tensor (. The simplest way is to map the min/max values of the float tensor to the min/max of the integer format. For weights and biases this is easy, as they are set once training is complete. For activations, the min/max float values can be obtained \"online\" during inference, or \"offline\".\n\n\n\n\nOffline\n means gathering activations statistics before deploying the model, either during training or by running a few \"calibration\" batches on the trained FP32 model. Based on these gathered statistics, the scaled factors are calculated and are fixed once the model is deployed. This method has the risk of encountering values outside the previously observed ranges at runtime. These values will be clipped, which might lead to accuracy degradation.\n\n\nOnline\n means calculating the min/max values for each tensor dynamically during runtime. In this method clipping cannot occur, however the added computation resources required to calculate the min/max values at runtime might be prohibitive.\n\n\n\n\nIt is important to note, however, that the full float range of an activations tensor usually includes elements which are statistically outliers. These values can be discarded by using a narrower min/max range, effectively allowing some clipping to occur in favor of increasing the resolution provided to the part of the distribution containing most of the information. Statistical measures can be used to intelligently select where to clip the original range in order to preserve as much information as possible (\nMigacz, 2017\n)  \n\n\nAnother possible optimization point is \nscale-factor scope\n. The most common way is use a single scale-factor per-layer\n\n\n\"Aggressive\" Quantization: INT4 and Lower\n\n\nNaively quantizing a FP32 model to INT4 and lower usually incurs significant accuracy degradation. Many works have tried to mitigate this effect. They usually employ one or more of the following concepts in order to improve model accuracy:\n\n\n\n\nTraining / Re-Training\n: For INT4 and lower, training is required in order to obtain reasonable accuracy. This means training with quantization of weights and activations \"baked\" into the training procedure. This is not straight forward, since quantization operations are usually not differentiable. This is usually worked-around by using \"straight-through estimator\" (\nBengio, 2013\n) to approximate the gradient of these operations.\n\n\nZhou S et al., 2016\n have shown that bootstrapping the quantized model with trained FP32 weights leads to higher accuracy, as opposed to training from scratch. Other methods \nrequire\n a trained FP32 model, either as a starting point (\nZhou A et al., 2017\n), or as a teacher network in a student-teacher training setup (\nMishra and Marr, 2018\n).\n\n\nReplacing the activation function\n: The most common activation function in vision models is ReLU, which is unbounded. That is - its dynamic range is not limited for positive inputs. This is very problematic for INT4 and below due to the very limited range and resolution. Therefore, most methods replace ReLU with another function which is bounded. In some cases a clipping function with hard coded values is used (\nZhou S et al., 2016\n, \nMishra et al., 2018\n). Another method learns the clipping value per layer, with better results (\nChoi et al., 2018\n). Once the clipping value is set, the scale factor used for quantization is also set, and no further calibration steps are required (as opposed to INT8 methods described above).\n\n\nModifying network structure\n: \nMishra et al., 2018\n try to compensate for the loss of information due to quantization by using wider layers (more channels). \nLin et al., 2017\n proposed a binary quantization method in which a single FP32 convolution is replaced with multiple binary convolutions, each scaled to represent a different \"base\", covering a larger dynamic range overall.\n\n\nFirst and last layer\n: Many methods do not quantize the first and last layer of the model. It has been observed by \nHan et al., 2015\n that the first convolutional layer is more sensitive to weights pruning, and some quantization works cite the same reason and show it empirically (\nZhou S et al., 2016\n, \nChoi et al., 2018\n). Some works also note that these layers usually constitute a very small portion of the overall computation within the model, further reducing the motivation to quantize them (\nRastegari et al., 2016\n). Most methods keep the first and last layers at FP32. However, \nChoi et al., 2018\n showed that \"conservative\" quantization of these layers, e.g. to INT8, does not reduce accuracy.\n\n\nIterative quantization\n: Most methods quantize the entire model at once. \nZhou A et al., 2017\n employ an iterative method, which starts with a trained FP32 baseline, and quantizes only a portion of the model at the time followed by several epochs of re-training to recover the accuracy loss from quantization.\n\n\nMixed Weights and Activations Precision\n: It has been observed that activations are more sensitive to quantization than weights (\nZhou S et al., 2016\n). Hence it is not uncommon to see experiments with activations quantized to a higher precision compared to weights. Some works have focused solely on quantizing weights, keeping the activations at FP32 (\nLi et al., 2016\n, \nZhu et al., 2016\n).\n\n\n\n\nReferences\n\n\n\n\nWilliam Dally\n. High-Performance Hardware for Machine Learning. \nTutorial, NIPS, 2015\n\n\n\n\n\nMohammad Rastegari, Vicente Ordone, Joseph Redmon and Ali Farhadi\n. XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks. \nECCV, 2016\n\n\n\n\n\nMatthieu Courbariaux, Yoshua Bengio and Jean-Pierre David\n. Training deep neural networks with low precision multiplications. \narxiv:1412.7024\n\n\n\n\n\nPhilipp Gysel, Jon Pimentel, Mohammad Motamedi and Soheil Ghiasi\n. Ristretto: A Framework for Empirical Study of Resource-Efficient Inference in Convolutional Neural Networks. \nIEEE Transactions on Neural Networks and Learning Systems, 2018\n\n\n\n\n\nSzymon Migacz\n. 8-bit Inference with TensorRT. \nGTC San Jose, 2017\n\n\n\n\n\nYoshua Bengio, Nicholas Leonard and Aaron Courville\n. Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation. \narxiv:1308.3432, 2013\n\n\n\n\n\nShuchang Zhou, Zekun Ni, Xinyu Zhou, He Wen, Yuxin Wu and Yuheng Zou\n. DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients. \narxiv:1606.06160\n\n\n\n\n\nAojun Zhou, Anbang Yao, Yiwen Guo, Lin Xu and Yurong Chen\n. Incremental Network Quantization: Towards Lossless CNNs with Low-precision Weights. \nICLR, 2017\n\n\n\n\n\nAsit Mishra and Debbie Marr\n. Apprentice: Using Knowledge Distillation Techniques To Improve Low-Precision Network Accuracy. \nICLR, 2018\n\n\n\n\n\nAsit Mishra, Eriko Nurvitadhi, Jeffrey J Cook and Debbie Marr\n. WRPN: Wide Reduced-Precision Networks. \nICLR, 2018\n\n\n\n\n\nJungwook Choi, Zhuo Wang, Swagath Venkataramani, Pierce I-Jen Chuang, Vijayalakshmi Srinivasan and Kailash Gopalakrishnan\n. PACT: Parameterized Clipping Activation for Quantized Neural Networks. \n2018\n\n\n\n\n\nXiaofan Lin, Cong Zhao and Wei Pan\n. Towards Accurate Binary Convolutional Neural Network. \nNIPS, 2017\n\n\n\n\n\nSong Han, Jeff Pool, John Tran and William Dally\n. Learning both Weights and Connections for Efficient Neural Network. \nNIPS, 2015\n\n\n\n\n\nFengfu Li, Bo Zhang and Bin Liu\n. Ternary Weight Networks. \narxiv:1605.04711\n\n\n\n\n\nChenzhuo Zhu, Song Han, Huizi Mao and William J. Dally\n. Trained Ternary Quantization. \narxiv:1612.01064",
+            "location": "/quantization/index.html", 
+            "text": "Quantization\n\n\nQuantization refers to the process of reducing the number of bits that represent a number. In the context of deep learning, the predominant numerical format used for research and for deployment has so far been 32-bit floating point, or FP32. However, the desire for reduced bandwidth and compute requirements of deep learning models has driven research into using lower-precision numerical formats. It has been extensively demonstrated that weights and activations can be represented using 8-bit integers (or INT8) without incurring significant loss in accuracy. The use of even lower bit-widths, such as 4/2/1-bits, is an active field of research that has also shown great progress.\n\n\nNote that this discussion is on quantization only in the context of more efficient inference. Using lower-precision numerics for more efficient training is currently out of scope.\n\n\nMotivation: Overall Efficiency\n\n\nThe more obvious benefit from quantization is \nsignificantly reduced bandwidth and storage\n. For instance, using INT8 for weights and activations consumes 4x less overall bandwidth compared to FP32.\n\nAdditionally integer compute is \nfaster\n than floating point compute. It is also much more \narea and energy efficient\n: \n\n\n\n\n\n\n\n\nINT8 Operation\n\n\nEnergy Saving vs FP32\n\n\nArea Saving vs FP32\n\n\n\n\n\n\n\n\n\n\nAdd\n\n\n30x\n\n\n116x\n\n\n\n\n\n\nMultiply\n\n\n18.5x\n\n\n27x\n\n\n\n\n\n\n\n\n(\nDally, 2015\n)\n\n\nNote that very aggressive quantization can yield even more efficiency. If weights are binary (-1, 1) or ternary (-1, 0, 1 using 2-bits), then convolution and fully-connected layers can be computed with additions and subtractions only, removing multiplications completely. If activations are binary as well, then additions can also be removed, in favor of bitwise operations (\nRastegari et al., 2016\n).\n\n\nInteger vs. FP32\n\n\nThere are two main attributes when discussing a numerical format. The first is \ndynamic range\n, which refers to the range of representable numbers. The second one is how many values can be represented within the dynamic range, which in turn determines the \nprecision / resolution\n of the format (the distance between two numbers).\n\nFor all integer formats, the dynamic range is \n[-2^{n-1} .. 2^{n-1}-1]\n, where \nn\n is the number of bits. So for INT8 the range is \n[-128 .. 127]\n, and for INT4 it is \n[-16 .. 15]\n (we're limiting ourselves to signed integers for now). The number of representable values is \n2^n\n.\nContrast that with FP32, where the dynamic range is \n\\pm 3.4\\ x\\ 10^{38}\n, and approximately \n4.2\\ x\\ 10^9\n values can be represented.\n\nWe can immediately see that FP32 is much more \nversatile\n, in that it is able to represent a wide range of distributions accurately. This is a nice property for deep learning models, where the distributions of weights and activations are usually very different (at least in dynamic range). In addition the dynamic range can differ between layers in the model.\n\nIn order to be able to represent these different distributions with an integer format, a \nscale factor\n is used to map the dynamic range of the tensor to the integer format range. But still we remain with the issue of having a significantly lower number of representable values, that is - much lower resolution.\n\nNote that this scale factor is, in most cases, a floating-point number. Hence, even when using integer numerics, some floating-point computations remain. \nCourbariaux et al., 2014\n scale using only shifts, eliminating the floating point operation. In \nGEMMLWOP\n, the FP32 scale factor is approximated using an integer or fixed-point multiplication followed by a shift operation. In many cases the effect of this approximation on accuracy is negligible.\n\n\nAvoiding Overflows\n\n\nConvolution and fully connected layers involve the storing of intermediate results in accumulators. Due to the limited dynamic range of integer formats, if we would use the same bit-width for the weights and activation, \nand\n for the accumulators, we would likely overflow very quickly. Therefore, accumulators are usually implemented with higher bit-widths.\n\nThe result of multiplying two \nn\n-bit integers is, at most, a \n2n\n-bit number. In convolution layers, such multiplications are accumulated \nc\\cdot k^2\n times, where \nc\n is the number of input channels and \nk\n is the kernel width (assuming a square kernel). Hence, to avoid overflowing, the accumulator should be \n2n + M\n-bits wide, where M is at least \nlog_2(c\\cdot k^2)\n. In many cases 32-bit accumulators are used, however for INT4 and lower it might be possible to use less than 32 -bits, depending on the expected use cases and layer widths.\n\n\n\"Conservative\" Quantization: INT8\n\n\nIn many cases, taking a model trained for FP32 and directly quantizing it to INT8, without any re-training, can result in a relatively low loss of accuracy (which may or may not be acceptable, depending on the use case). Some fine-tuning can further improve the accuracy (\nGysel at al., 2018\n).\n\nAs mentioned above, a scale factor is used to adapt the dynamic range of the tensor at hand to that of the integer format. This scale factor needs to be calculated per-layer per-tensor. The simplest way is to map the min/max values of the float tensor to the min/max of the integer format. For weights and biases this is easy, as they are set once training is complete. For activations, the min/max float values can be obtained \"online\" during inference, or \"offline\".\n\n\n\n\nOffline\n means gathering activations statistics before deploying the model, either during training or by running a few \"calibration\" batches on the trained FP32 model. Based on these gathered statistics, the scaled factors are calculated and are fixed once the model is deployed. This method has the risk of encountering values outside the previously observed ranges at runtime. These values will be clipped, which might lead to accuracy degradation.\n\n\nOnline\n means calculating the min/max values for each tensor dynamically during runtime. In this method clipping cannot occur, however the added computation resources required to calculate the min/max values at runtime might be prohibitive.\n\n\n\n\nIt is important to note, however, that the full float range of an activations tensor usually includes elements which are statistically outliers. These values can be discarded by using a narrower min/max range, effectively allowing some clipping to occur in favor of increasing the resolution provided to the part of the distribution containing most of the information. Statistical measures can be used to intelligently select where to clip the original range in order to preserve as much information as possible (\nMigacz, 2017\n).  \n\n\nAnother possible optimization point is \nscale-factor scope\n. The most common way is use a single scale-factor per-layer, but it is also possible to calculate a scale-factor per-channel. This can be beneficial if the weight distributions vary greatly between channels.\n\n\n\"Aggressive\" Quantization: INT4 and Lower\n\n\nNaively quantizing a FP32 model to INT4 and lower usually incurs significant accuracy degradation. Many works have tried to mitigate this effect. They usually employ one or more of the following concepts in order to improve model accuracy:\n\n\n\n\nTraining / Re-Training\n: For INT4 and lower, training is required in order to obtain reasonable accuracy. The training loop is modified to take quantization into account. See details in the \nnext section\n.\n\n\nZhou S et al., 2016\n have shown that bootstrapping the quantized model with trained FP32 weights leads to higher accuracy, as opposed to training from scratch. Other methods \nrequire\n a trained FP32 model, either as a starting point (\nZhou A et al., 2017\n), or as a teacher network in a knowledge distillation training setup (\nMishra and Marr, 2018\n).\n\n\nReplacing the activation function\n: The most common activation function in vision models is ReLU, which is unbounded. That is - its dynamic range is not limited for positive inputs. This is very problematic for INT4 and below due to the very limited range and resolution. Therefore, most methods replace ReLU with another function which is bounded. In some cases a clipping function with hard coded values is used (\nZhou S et al., 2016\n, \nMishra et al., 2018\n). Another method learns the clipping value per layer, with better results (\nChoi et al., 2018\n). Once the clipping value is set, the scale factor used for quantization is also set, and no further calibration steps are required (as opposed to INT8 methods described above).\n\n\nModifying network structure\n: \nMishra et al., 2018\n try to compensate for the loss of information due to quantization by using wider layers (more channels). \nLin et al., 2017\n proposed a binary quantization method in which a single FP32 convolution is replaced with multiple binary convolutions, each scaled to represent a different \"base\", covering a larger dynamic range overall.\n\n\nFirst and last layer\n: Many methods do not quantize the first and last layer of the model. It has been observed by \nHan et al., 2015\n that the first convolutional layer is more sensitive to weights pruning, and some quantization works cite the same reason and show it empirically (\nZhou S et al., 2016\n, \nChoi et al., 2018\n). Some works also note that these layers usually constitute a very small portion of the overall computation within the model, further reducing the motivation to quantize them (\nRastegari et al., 2016\n). Most methods keep the first and last layers at FP32. However, \nChoi et al., 2018\n showed that \"conservative\" quantization of these layers, e.g. to INT8, does not reduce accuracy.\n\n\nIterative quantization\n: Most methods quantize the entire model at once. \nZhou A et al., 2017\n employ an iterative method, which starts with a trained FP32 baseline, and quantizes only a portion of the model at the time followed by several epochs of re-training to recover the accuracy loss from quantization.\n\n\nMixed Weights and Activations Precision\n: It has been observed that activations are more sensitive to quantization than weights (\nZhou S et al., 2016\n). Hence it is not uncommon to see experiments with activations quantized to a higher precision compared to weights. Some works have focused solely on quantizing weights, keeping the activations at FP32 (\nLi et al., 2016\n, \nZhu et al., 2016\n).\n\n\n\n\nTraining with Quantization\n\n\nAs mentioned above, in order to minimize the loss of accuracy from \"aggressive\" quantization, many methods that target INT4 and lower involve training the model in a way that considers the quantization. This means training with quantization of weights and activations \"baked\" into the training procedure. The training graph usually looks like this:\n\n\n\n\nA full precision copy of the weights is maintained throughout the training process (\"weights_fp\" in the diagram). Its purpose is to accumulate the small changes from the gradients without loss of precision (Note that the quantization of the weights is an integral part of the training graph, meaning that we back-propagate through it as well). Once the model is trained, only the quantized weights are used for inference.\n\nIn the diagram we show \"layer N\" as the conv + batch-norm + activation combination, but the same applies to fully-connected layers, element-wise operations, etc. During training, the operations within \"layer N\" can still run in full precision, with the \"quantize\" operations in the boundaries ensuring discrete-valued weights and activations. This is sometimes called \"simulated quantization\".  \n\n\nStraight-Through Estimator\n\n\nAn important question in this context is how to back-propagate through the quantization functions. These functions are discrete-valued, hence their derivative is 0 almost everywhere. So, using their gradients as-is would severly hinder the learning process. An approximation commonly used to overcome this issue is the \"straight-through estimator\" (STE) (\nHinton et al., 2012\n, \nBengio, 2013\n), which simply passes the gradient through these functions as-is.  \n\n\nReferences\n\n\n\n\nWilliam Dally\n. High-Performance Hardware for Machine Learning. \nTutorial, NIPS, 2015\n\n\n\n\n\nMohammad Rastegari, Vicente Ordone, Joseph Redmon and Ali Farhadi\n. XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks. \nECCV, 2016\n\n\n\n\n\nMatthieu Courbariaux, Yoshua Bengio and Jean-Pierre David\n. Training deep neural networks with low precision multiplications. \narxiv:1412.7024\n\n\n\n\n\nPhilipp Gysel, Jon Pimentel, Mohammad Motamedi and Soheil Ghiasi\n. Ristretto: A Framework for Empirical Study of Resource-Efficient Inference in Convolutional Neural Networks. \nIEEE Transactions on Neural Networks and Learning Systems, 2018\n\n\n\n\n\nSzymon Migacz\n. 8-bit Inference with TensorRT. \nGTC San Jose, 2017\n\n\n\n\n\nShuchang Zhou, Zekun Ni, Xinyu Zhou, He Wen, Yuxin Wu and Yuheng Zou\n. DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients. \narxiv:1606.06160\n\n\n\n\n\nAojun Zhou, Anbang Yao, Yiwen Guo, Lin Xu and Yurong Chen\n. Incremental Network Quantization: Towards Lossless CNNs with Low-precision Weights. \nICLR, 2017\n\n\n\n\n\nAsit Mishra and Debbie Marr\n. Apprentice: Using Knowledge Distillation Techniques To Improve Low-Precision Network Accuracy. \nICLR, 2018\n\n\n\n\n\nAsit Mishra, Eriko Nurvitadhi, Jeffrey J Cook and Debbie Marr\n. WRPN: Wide Reduced-Precision Networks. \nICLR, 2018\n\n\n\n\n\nJungwook Choi, Zhuo Wang, Swagath Venkataramani, Pierce I-Jen Chuang, Vijayalakshmi Srinivasan and Kailash Gopalakrishnan\n. PACT: Parameterized Clipping Activation for Quantized Neural Networks. \n2018\n\n\n\n\n\nXiaofan Lin, Cong Zhao and Wei Pan\n. Towards Accurate Binary Convolutional Neural Network. \nNIPS, 2017\n\n\n\n\n\nSong Han, Jeff Pool, John Tran and William Dally\n. Learning both Weights and Connections for Efficient Neural Network. \nNIPS, 2015\n\n\n\n\n\nFengfu Li, Bo Zhang and Bin Liu\n. Ternary Weight Networks. \narxiv:1605.04711\n\n\n\n\n\nChenzhuo Zhu, Song Han, Huizi Mao and William J. Dally\n. Trained Ternary Quantization. \narxiv:1612.01064\n\n\n\n\n\nYoshua Bengio, Nicholas Leonard and Aaron Courville\n. Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation. \narxiv:1308.3432, 2013\n\n\n\n\n\nGeoffrey Hinton, Nitish Srivastava, Kevin Swersky, Tijmen Tieleman and Abdelrahman Mohamed\n. Neural Networks for Machine Learning. \nCoursera, video lectures, 2012", 
             "title": "Quantization"
-        },
+        }, 
         {
-            "location": "/quantization/index.html#quantization",
-            "text": "Quantization refers to the process of reducing the number of bits that represent a number. In the context of deep learning, the predominant numerical format used for research and for deployment has so far been 32-bit floating point, or FP32. However, the desire for reduced bandwidth and compute requirements of deep learning models has driven research into using lower-precision numerical formats. It has been extensively demonstrated that weights and activations can be represented using 8-bit integers (or INT8) without incurring significant loss in accuracy. The use of even lower bit-widths, such as 4/2/1-bits, is an active field of research that has also shown great progress.  Note that this discussion is on quantization only in the context of more efficient inference. Using lower-precision numerics for more efficient training is currently out of scope.",
+            "location": "/quantization/index.html#quantization", 
+            "text": "Quantization refers to the process of reducing the number of bits that represent a number. In the context of deep learning, the predominant numerical format used for research and for deployment has so far been 32-bit floating point, or FP32. However, the desire for reduced bandwidth and compute requirements of deep learning models has driven research into using lower-precision numerical formats. It has been extensively demonstrated that weights and activations can be represented using 8-bit integers (or INT8) without incurring significant loss in accuracy. The use of even lower bit-widths, such as 4/2/1-bits, is an active field of research that has also shown great progress.  Note that this discussion is on quantization only in the context of more efficient inference. Using lower-precision numerics for more efficient training is currently out of scope.", 
             "title": "Quantization"
-        },
+        }, 
         {
-            "location": "/quantization/index.html#motivation-overall-efficiency",
-            "text": "The more obvious benefit from quantization is  significantly reduced bandwidth and storage . For instance, using INT8 for weights and activations consumes 4x less overall bandwidth compared to FP32. \nAdditionally integer compute is  faster  than floating point compute. It is also much more  area and energy efficient :      INT8 Operation  Energy Saving vs FP32  Area Saving vs FP32      Add  30x  116x    Multiply  18.5x  27x     ( Dally, 2015 )  Note that very aggressive quantization can yield even more efficiency. If weights are binary (-1, 1) or ternary (-1, 0, 1 using 2-bits), then convolution and fully-connected layers can be computed with additions and subtractions only, removing multiplications completely. If activations are binary as well, then additions can also be removed, in favor of bitwise operations ( Rastegari et al., 2016 ).",
+            "location": "/quantization/index.html#motivation-overall-efficiency", 
+            "text": "The more obvious benefit from quantization is  significantly reduced bandwidth and storage . For instance, using INT8 for weights and activations consumes 4x less overall bandwidth compared to FP32. \nAdditionally integer compute is  faster  than floating point compute. It is also much more  area and energy efficient :      INT8 Operation  Energy Saving vs FP32  Area Saving vs FP32      Add  30x  116x    Multiply  18.5x  27x     ( Dally, 2015 )  Note that very aggressive quantization can yield even more efficiency. If weights are binary (-1, 1) or ternary (-1, 0, 1 using 2-bits), then convolution and fully-connected layers can be computed with additions and subtractions only, removing multiplications completely. If activations are binary as well, then additions can also be removed, in favor of bitwise operations ( Rastegari et al., 2016 ).", 
             "title": "Motivation: Overall Efficiency"
-        },
+        }, 
         {
-            "location": "/quantization/index.html#integer-vs-fp32",
-            "text": "There are two main attributes when discussing a numerical format. The first is  dynamic range , which refers to the range of representable numbers. The second one is how many values can be represented within the dynamic range, which in turn determines the  precision / resolution  of the format (the distance between two numbers). \nFor all integer formats, the dynamic range is  [-2^{n-1} .. 2^{n-1}-1] , where  n  is the number of bits. So for INT8 the range is  [-128 .. 127] , and for INT4 it is  [-16 .. 15]  (we're limiting ourselves to signed integers for now). The number of representable values is  2^n .\nContrast that with FP32, where the dynamic range is  \\pm 3.4\\ x\\ 10^{38} , and approximately  4.2\\ x\\ 10^9  values can be represented. \nWe can immediately see that FP32 is much more  versatile , in that it is able to represent a wide range of distributions accurately. This is a nice property for deep learning models, where the distributions of weights and activations are usually very different (at least in dynamic range). In addition the dynamic range can differ between layers in the model. \nIn order to be able to represent these different distributions with an integer format, a  scale factor  is used to map the dynamic range of the tensor to the integer format range. But still we remain with the issue of having a significantly lower number of representable values, that is - much lower resolution. \nNote that this scale factor is, in most cases, a floating-point number. Hence, even when using integer numerics, some floating-point computations remain.  Courbariaux et al., 2014  scale using only shifts, eliminating the floating point operation. In  GEMMLWOP , the FP32 scale factor is approximated using an integer or fixed-point multiplication followed by a shift operation. In many cases the effect of this approximation on accuracy is negligible.",
+            "location": "/quantization/index.html#integer-vs-fp32", 
+            "text": "There are two main attributes when discussing a numerical format. The first is  dynamic range , which refers to the range of representable numbers. The second one is how many values can be represented within the dynamic range, which in turn determines the  precision / resolution  of the format (the distance between two numbers). \nFor all integer formats, the dynamic range is  [-2^{n-1} .. 2^{n-1}-1] , where  n  is the number of bits. So for INT8 the range is  [-128 .. 127] , and for INT4 it is  [-16 .. 15]  (we're limiting ourselves to signed integers for now). The number of representable values is  2^n .\nContrast that with FP32, where the dynamic range is  \\pm 3.4\\ x\\ 10^{38} , and approximately  4.2\\ x\\ 10^9  values can be represented. \nWe can immediately see that FP32 is much more  versatile , in that it is able to represent a wide range of distributions accurately. This is a nice property for deep learning models, where the distributions of weights and activations are usually very different (at least in dynamic range). In addition the dynamic range can differ between layers in the model. \nIn order to be able to represent these different distributions with an integer format, a  scale factor  is used to map the dynamic range of the tensor to the integer format range. But still we remain with the issue of having a significantly lower number of representable values, that is - much lower resolution. \nNote that this scale factor is, in most cases, a floating-point number. Hence, even when using integer numerics, some floating-point computations remain.  Courbariaux et al., 2014  scale using only shifts, eliminating the floating point operation. In  GEMMLWOP , the FP32 scale factor is approximated using an integer or fixed-point multiplication followed by a shift operation. In many cases the effect of this approximation on accuracy is negligible.", 
             "title": "Integer vs. FP32"
-        },
+        }, 
         {
-            "location": "/quantization/index.html#avoiding-overflows",
-            "text": "Convolution and fully connected layers involve the storing of intermediate results in accumulators. Due to the limited dynamic range of integer formats, if we would use the same bit-width for the weights and activation,  and  for the accumulators, we would likely overflow very quickly. Therefore, accumulators are usually implemented with higher bit-widths. \nThe result of multiplying two  n -bit integers is, at most, a  2n -bit number. In convolution layers, such multiplications are accumulated  c\\cdot k^2  times, where  c  is the number of input channels and  k  is the kernel width (assuming a square kernel). Hence, to avoid overflowing, the accumulator should be  2n + M -bits wide, where M is at least  log_2(c\\cdot k^2) . In many cases 32-bit accumulators are used, however for INT4 and lower it might be possible to use less than 32 -bits, depending on the expected use cases and layer widths.",
+            "location": "/quantization/index.html#avoiding-overflows", 
+            "text": "Convolution and fully connected layers involve the storing of intermediate results in accumulators. Due to the limited dynamic range of integer formats, if we would use the same bit-width for the weights and activation,  and  for the accumulators, we would likely overflow very quickly. Therefore, accumulators are usually implemented with higher bit-widths. \nThe result of multiplying two  n -bit integers is, at most, a  2n -bit number. In convolution layers, such multiplications are accumulated  c\\cdot k^2  times, where  c  is the number of input channels and  k  is the kernel width (assuming a square kernel). Hence, to avoid overflowing, the accumulator should be  2n + M -bits wide, where M is at least  log_2(c\\cdot k^2) . In many cases 32-bit accumulators are used, however for INT4 and lower it might be possible to use less than 32 -bits, depending on the expected use cases and layer widths.", 
             "title": "Avoiding Overflows"
-        },
+        }, 
         {
-            "location": "/quantization/index.html#conservative-quantization-int8",
-            "text": "In many cases, taking a model trained for FP32 and directly quantizing it to INT8, without any re-training, can result in a relatively low loss of accuracy (which may or may not be acceptable, depending on the use case). Some fine-tuning can further improve the accuracy ( Gysel at al., 2018 ). \nAs mentioned above, a scale factor is used to adapt the dynamic range of the tensor at hand to that of the integer format. This scale factor needs to be calculated per-layer per-tensor (. The simplest way is to map the min/max values of the float tensor to the min/max of the integer format. For weights and biases this is easy, as they are set once training is complete. For activations, the min/max float values can be obtained \"online\" during inference, or \"offline\".   Offline  means gathering activations statistics before deploying the model, either during training or by running a few \"calibration\" batches on the trained FP32 model. Based on these gathered statistics, the scaled factors are calculated and are fixed once the model is deployed. This method has the risk of encountering values outside the previously observed ranges at runtime. These values will be clipped, which might lead to accuracy degradation.  Online  means calculating the min/max values for each tensor dynamically during runtime. In this method clipping cannot occur, however the added computation resources required to calculate the min/max values at runtime might be prohibitive.   It is important to note, however, that the full float range of an activations tensor usually includes elements which are statistically outliers. These values can be discarded by using a narrower min/max range, effectively allowing some clipping to occur in favor of increasing the resolution provided to the part of the distribution containing most of the information. Statistical measures can be used to intelligently select where to clip the original range in order to preserve as much information as possible ( Migacz, 2017 )    Another possible optimization point is  scale-factor scope . The most common way is use a single scale-factor per-layer",
+            "location": "/quantization/index.html#conservative-quantization-int8", 
+            "text": "In many cases, taking a model trained for FP32 and directly quantizing it to INT8, without any re-training, can result in a relatively low loss of accuracy (which may or may not be acceptable, depending on the use case). Some fine-tuning can further improve the accuracy ( Gysel at al., 2018 ). \nAs mentioned above, a scale factor is used to adapt the dynamic range of the tensor at hand to that of the integer format. This scale factor needs to be calculated per-layer per-tensor. The simplest way is to map the min/max values of the float tensor to the min/max of the integer format. For weights and biases this is easy, as they are set once training is complete. For activations, the min/max float values can be obtained \"online\" during inference, or \"offline\".   Offline  means gathering activations statistics before deploying the model, either during training or by running a few \"calibration\" batches on the trained FP32 model. Based on these gathered statistics, the scaled factors are calculated and are fixed once the model is deployed. This method has the risk of encountering values outside the previously observed ranges at runtime. These values will be clipped, which might lead to accuracy degradation.  Online  means calculating the min/max values for each tensor dynamically during runtime. In this method clipping cannot occur, however the added computation resources required to calculate the min/max values at runtime might be prohibitive.   It is important to note, however, that the full float range of an activations tensor usually includes elements which are statistically outliers. These values can be discarded by using a narrower min/max range, effectively allowing some clipping to occur in favor of increasing the resolution provided to the part of the distribution containing most of the information. Statistical measures can be used to intelligently select where to clip the original range in order to preserve as much information as possible ( Migacz, 2017 ).    Another possible optimization point is  scale-factor scope . The most common way is use a single scale-factor per-layer, but it is also possible to calculate a scale-factor per-channel. This can be beneficial if the weight distributions vary greatly between channels.", 
             "title": "\"Conservative\" Quantization: INT8"
-        },
+        }, 
         {
-            "location": "/quantization/index.html#aggressive-quantization-int4-and-lower",
-            "text": "Naively quantizing a FP32 model to INT4 and lower usually incurs significant accuracy degradation. Many works have tried to mitigate this effect. They usually employ one or more of the following concepts in order to improve model accuracy:   Training / Re-Training : For INT4 and lower, training is required in order to obtain reasonable accuracy. This means training with quantization of weights and activations \"baked\" into the training procedure. This is not straight forward, since quantization operations are usually not differentiable. This is usually worked-around by using \"straight-through estimator\" ( Bengio, 2013 ) to approximate the gradient of these operations.  Zhou S et al., 2016  have shown that bootstrapping the quantized model with trained FP32 weights leads to higher accuracy, as opposed to training from scratch. Other methods  require  a trained FP32 model, either as a starting point ( Zhou A et al., 2017 ), or as a teacher network in a student-teacher training setup ( Mishra and Marr, 2018 ).  Replacing the activation function : The most common activation function in vision models is ReLU, which is unbounded. That is - its dynamic range is not limited for positive inputs. This is very problematic for INT4 and below due to the very limited range and resolution. Therefore, most methods replace ReLU with another function which is bounded. In some cases a clipping function with hard coded values is used ( Zhou S et al., 2016 ,  Mishra et al., 2018 ). Another method learns the clipping value per layer, with better results ( Choi et al., 2018 ). Once the clipping value is set, the scale factor used for quantization is also set, and no further calibration steps are required (as opposed to INT8 methods described above).  Modifying network structure :  Mishra et al., 2018  try to compensate for the loss of information due to quantization by using wider layers (more channels).  Lin et al., 2017  proposed a binary quantization method in which a single FP32 convolution is replaced with multiple binary convolutions, each scaled to represent a different \"base\", covering a larger dynamic range overall.  First and last layer : Many methods do not quantize the first and last layer of the model. It has been observed by  Han et al., 2015  that the first convolutional layer is more sensitive to weights pruning, and some quantization works cite the same reason and show it empirically ( Zhou S et al., 2016 ,  Choi et al., 2018 ). Some works also note that these layers usually constitute a very small portion of the overall computation within the model, further reducing the motivation to quantize them ( Rastegari et al., 2016 ). Most methods keep the first and last layers at FP32. However,  Choi et al., 2018  showed that \"conservative\" quantization of these layers, e.g. to INT8, does not reduce accuracy.  Iterative quantization : Most methods quantize the entire model at once.  Zhou A et al., 2017  employ an iterative method, which starts with a trained FP32 baseline, and quantizes only a portion of the model at the time followed by several epochs of re-training to recover the accuracy loss from quantization.  Mixed Weights and Activations Precision : It has been observed that activations are more sensitive to quantization than weights ( Zhou S et al., 2016 ). Hence it is not uncommon to see experiments with activations quantized to a higher precision compared to weights. Some works have focused solely on quantizing weights, keeping the activations at FP32 ( Li et al., 2016 ,  Zhu et al., 2016 ).",
+            "location": "/quantization/index.html#aggressive-quantization-int4-and-lower", 
+            "text": "Naively quantizing a FP32 model to INT4 and lower usually incurs significant accuracy degradation. Many works have tried to mitigate this effect. They usually employ one or more of the following concepts in order to improve model accuracy:   Training / Re-Training : For INT4 and lower, training is required in order to obtain reasonable accuracy. The training loop is modified to take quantization into account. See details in the  next section .  Zhou S et al., 2016  have shown that bootstrapping the quantized model with trained FP32 weights leads to higher accuracy, as opposed to training from scratch. Other methods  require  a trained FP32 model, either as a starting point ( Zhou A et al., 2017 ), or as a teacher network in a knowledge distillation training setup ( Mishra and Marr, 2018 ).  Replacing the activation function : The most common activation function in vision models is ReLU, which is unbounded. That is - its dynamic range is not limited for positive inputs. This is very problematic for INT4 and below due to the very limited range and resolution. Therefore, most methods replace ReLU with another function which is bounded. In some cases a clipping function with hard coded values is used ( Zhou S et al., 2016 ,  Mishra et al., 2018 ). Another method learns the clipping value per layer, with better results ( Choi et al., 2018 ). Once the clipping value is set, the scale factor used for quantization is also set, and no further calibration steps are required (as opposed to INT8 methods described above).  Modifying network structure :  Mishra et al., 2018  try to compensate for the loss of information due to quantization by using wider layers (more channels).  Lin et al., 2017  proposed a binary quantization method in which a single FP32 convolution is replaced with multiple binary convolutions, each scaled to represent a different \"base\", covering a larger dynamic range overall.  First and last layer : Many methods do not quantize the first and last layer of the model. It has been observed by  Han et al., 2015  that the first convolutional layer is more sensitive to weights pruning, and some quantization works cite the same reason and show it empirically ( Zhou S et al., 2016 ,  Choi et al., 2018 ). Some works also note that these layers usually constitute a very small portion of the overall computation within the model, further reducing the motivation to quantize them ( Rastegari et al., 2016 ). Most methods keep the first and last layers at FP32. However,  Choi et al., 2018  showed that \"conservative\" quantization of these layers, e.g. to INT8, does not reduce accuracy.  Iterative quantization : Most methods quantize the entire model at once.  Zhou A et al., 2017  employ an iterative method, which starts with a trained FP32 baseline, and quantizes only a portion of the model at the time followed by several epochs of re-training to recover the accuracy loss from quantization.  Mixed Weights and Activations Precision : It has been observed that activations are more sensitive to quantization than weights ( Zhou S et al., 2016 ). Hence it is not uncommon to see experiments with activations quantized to a higher precision compared to weights. Some works have focused solely on quantizing weights, keeping the activations at FP32 ( Li et al., 2016 ,  Zhu et al., 2016 ).", 
             "title": "\"Aggressive\" Quantization: INT4 and Lower"
-        },
+        }, 
         {
-            "location": "/quantization/index.html#references",
-            "text": "William Dally . High-Performance Hardware for Machine Learning.  Tutorial, NIPS, 2015   Mohammad Rastegari, Vicente Ordone, Joseph Redmon and Ali Farhadi . XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks.  ECCV, 2016   Matthieu Courbariaux, Yoshua Bengio and Jean-Pierre David . Training deep neural networks with low precision multiplications.  arxiv:1412.7024   Philipp Gysel, Jon Pimentel, Mohammad Motamedi and Soheil Ghiasi . Ristretto: A Framework for Empirical Study of Resource-Efficient Inference in Convolutional Neural Networks.  IEEE Transactions on Neural Networks and Learning Systems, 2018   Szymon Migacz . 8-bit Inference with TensorRT.  GTC San Jose, 2017   Yoshua Bengio, Nicholas Leonard and Aaron Courville . Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation.  arxiv:1308.3432, 2013   Shuchang Zhou, Zekun Ni, Xinyu Zhou, He Wen, Yuxin Wu and Yuheng Zou . DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients.  arxiv:1606.06160   Aojun Zhou, Anbang Yao, Yiwen Guo, Lin Xu and Yurong Chen . Incremental Network Quantization: Towards Lossless CNNs with Low-precision Weights.  ICLR, 2017   Asit Mishra and Debbie Marr . Apprentice: Using Knowledge Distillation Techniques To Improve Low-Precision Network Accuracy.  ICLR, 2018   Asit Mishra, Eriko Nurvitadhi, Jeffrey J Cook and Debbie Marr . WRPN: Wide Reduced-Precision Networks.  ICLR, 2018   Jungwook Choi, Zhuo Wang, Swagath Venkataramani, Pierce I-Jen Chuang, Vijayalakshmi Srinivasan and Kailash Gopalakrishnan . PACT: Parameterized Clipping Activation for Quantized Neural Networks.  2018   Xiaofan Lin, Cong Zhao and Wei Pan . Towards Accurate Binary Convolutional Neural Network.  NIPS, 2017   Song Han, Jeff Pool, John Tran and William Dally . Learning both Weights and Connections for Efficient Neural Network.  NIPS, 2015   Fengfu Li, Bo Zhang and Bin Liu . Ternary Weight Networks.  arxiv:1605.04711   Chenzhuo Zhu, Song Han, Huizi Mao and William J. Dally . Trained Ternary Quantization.  arxiv:1612.01064",
+            "location": "/quantization/index.html#training-with-quantization", 
+            "text": "As mentioned above, in order to minimize the loss of accuracy from \"aggressive\" quantization, many methods that target INT4 and lower involve training the model in a way that considers the quantization. This means training with quantization of weights and activations \"baked\" into the training procedure. The training graph usually looks like this:   A full precision copy of the weights is maintained throughout the training process (\"weights_fp\" in the diagram). Its purpose is to accumulate the small changes from the gradients without loss of precision (Note that the quantization of the weights is an integral part of the training graph, meaning that we back-propagate through it as well). Once the model is trained, only the quantized weights are used for inference. \nIn the diagram we show \"layer N\" as the conv + batch-norm + activation combination, but the same applies to fully-connected layers, element-wise operations, etc. During training, the operations within \"layer N\" can still run in full precision, with the \"quantize\" operations in the boundaries ensuring discrete-valued weights and activations. This is sometimes called \"simulated quantization\".", 
+            "title": "Training with Quantization"
+        }, 
+        {
+            "location": "/quantization/index.html#straight-through-estimator", 
+            "text": "An important question in this context is how to back-propagate through the quantization functions. These functions are discrete-valued, hence their derivative is 0 almost everywhere. So, using their gradients as-is would severly hinder the learning process. An approximation commonly used to overcome this issue is the \"straight-through estimator\" (STE) ( Hinton et al., 2012 ,  Bengio, 2013 ), which simply passes the gradient through these functions as-is.", 
+            "title": "Straight-Through Estimator"
+        }, 
+        {
+            "location": "/quantization/index.html#references", 
+            "text": "William Dally . High-Performance Hardware for Machine Learning.  Tutorial, NIPS, 2015   Mohammad Rastegari, Vicente Ordone, Joseph Redmon and Ali Farhadi . XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks.  ECCV, 2016   Matthieu Courbariaux, Yoshua Bengio and Jean-Pierre David . Training deep neural networks with low precision multiplications.  arxiv:1412.7024   Philipp Gysel, Jon Pimentel, Mohammad Motamedi and Soheil Ghiasi . Ristretto: A Framework for Empirical Study of Resource-Efficient Inference in Convolutional Neural Networks.  IEEE Transactions on Neural Networks and Learning Systems, 2018   Szymon Migacz . 8-bit Inference with TensorRT.  GTC San Jose, 2017   Shuchang Zhou, Zekun Ni, Xinyu Zhou, He Wen, Yuxin Wu and Yuheng Zou . DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients.  arxiv:1606.06160   Aojun Zhou, Anbang Yao, Yiwen Guo, Lin Xu and Yurong Chen . Incremental Network Quantization: Towards Lossless CNNs with Low-precision Weights.  ICLR, 2017   Asit Mishra and Debbie Marr . Apprentice: Using Knowledge Distillation Techniques To Improve Low-Precision Network Accuracy.  ICLR, 2018   Asit Mishra, Eriko Nurvitadhi, Jeffrey J Cook and Debbie Marr . WRPN: Wide Reduced-Precision Networks.  ICLR, 2018   Jungwook Choi, Zhuo Wang, Swagath Venkataramani, Pierce I-Jen Chuang, Vijayalakshmi Srinivasan and Kailash Gopalakrishnan . PACT: Parameterized Clipping Activation for Quantized Neural Networks.  2018   Xiaofan Lin, Cong Zhao and Wei Pan . Towards Accurate Binary Convolutional Neural Network.  NIPS, 2017   Song Han, Jeff Pool, John Tran and William Dally . Learning both Weights and Connections for Efficient Neural Network.  NIPS, 2015   Fengfu Li, Bo Zhang and Bin Liu . Ternary Weight Networks.  arxiv:1605.04711   Chenzhuo Zhu, Song Han, Huizi Mao and William J. Dally . Trained Ternary Quantization.  arxiv:1612.01064   Yoshua Bengio, Nicholas Leonard and Aaron Courville . Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation.  arxiv:1308.3432, 2013   Geoffrey Hinton, Nitish Srivastava, Kevin Swersky, Tijmen Tieleman and Abdelrahman Mohamed . Neural Networks for Machine Learning.  Coursera, video lectures, 2012", 
             "title": "References"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html",
-            "text": "Weights pruning algorithms\n\n\n\n\nMagnitude pruner\n\n\nThis is the most basic pruner: it applies a thresholding function, \\(thresh(.)\\), on each element, \\(w_i\\), of a weights tensor.  A different threshold can be used for each layer's weights tensor.\n\nBecause the threshold is applied on individual elements, this pruner belongs to the element-wise pruning algorithm family.\n\n\n\\[ thresh(w_i)=\\left\\lbrace\n\\matrix{{{w_i: \\; if \\;|w_i| \\; \\gt}\\;\\lambda}\\cr {0: \\; if \\; |w_i| \\leq \\lambda} }\n\\right\\rbrace \\]\n\n\nSensitivity pruner\n\n\nFinding a threshold magnitude per layer is daunting, especially since each layer's elements have different average absolute values.  We can take advantage of the fact that the weights of convolutional and fully connected layers exhibit a Gaussian distribution with a mean value roughly zero, to avoid using a direct threshold based on the values of each specific tensor.\n\n\nThe diagram below shows the distribution the weights tensor of the first convolutional layer, and first fully-connected layer in TorchVision's pre-trained Alexnet model.  You can see that they have an approximate Gaussian distribution.\n\n\n \n\n\nThe distributions of Alexnet conv1 and fc1 layers\n\n\nWe use the standard deviation of the weights tensor as a sort of normalizing factor between the different weights tensors.  For example, if a tensor is Normally distributed, then about 68% of the elements have an absolute value less than the standard deviation (\\(\\sigma\\)) of the tensor.  Thus, if we set the threshold to \\(s*\\sigma\\), then basically we are thresholding \\(s * 68\\%\\) of the tensor elements.  \n\n\n\\[ thresh(w_i)=\\left\\lbrace\n\\matrix{{{w_i: \\; if \\;|w_i| \\; \\gt}\\;\\lambda}\\cr {0: \\; if \\; |w_i| \\leq \\lambda} }\n\\right\\rbrace \\]\n\n\n\\[\n\\lambda = s * \\sigma_l \\;\\;\\; where\\; \\sigma_l\\; is \\;the \\;std \\;of \\;layer \\;l \\;as \\;measured \\;on \\;the \\;dense \\;model\n\\]\n\n\nHow do we choose this \\(s\\) multiplier?\n\n\nIn \nLearning both Weights and Connections for Efficient Neural Networks\n the authors write:\n\n\n\n\n\"We used the sensitivity results to find each layer\u2019s threshold: for example, the smallest threshold was applied to the most sensitive layer, which is the first convolutional layer... The pruning threshold is chosen as a quality parameter multiplied by the standard deviation of a layer\u2019s weights\n\n\n\n\nSo the results of executing pruning sensitivity analysis on the tensor, gives us a good starting guess at \\(s\\).  Sensitivity analysis is an empirical method, and we still have to spend time to hone in on the exact multiplier value.\n\n\nMethod of operation\n\n\n\n\nStart by running a pruning sensitivity analysis on the model.  \n\n\nThen use the results to set and tune the threshold of each layer, but instead of using a direct threshold use a sensitivity parameter which is multiplied by the standard-deviation of the initial weight-tensor's distribution.\n\n\n\n\nSchedule\n\n\nIn their \npaper\n Song Han et al. use iterative pruning and change the value of the \\(s\\) multiplier at each pruning step.  Distiller's \nSensitivityPruner\n works differently: the value \\(s\\) is set once based on a one-time calculation of the standard-deviation of the tensor (the first time we prune), and relies on the fact that as the tensor is pruned, more elements are \"pulled\" toward the center of the distribution and thus more elements gets pruned.\n\n\nThis actually works quite well as we can see in the diagram below.  This is a TensorBoard screen-capture from Alexnet training, which shows how this method starts off pruning very aggressively, but then slowly reduces the pruning rate.\n\n\n\nWe use a simple iterative-pruning schedule such as: \nPrune every second epoch starting at epoch 0, and ending at epoch 38.\n  This excerpt from \nalexnet.schedule_sensitivity.yaml\n shows how this iterative schedule is conveyed in Distiller scheduling configuration YAML:\n\n\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n\n\n\nLevel pruner\n\n\nClass \nSparsityLevelParameterPruner\n uses a similar method to go around specifying specific thresholding magnitudes.\nInstead of specifying a threshold magnitude, you specify a target sparsity level (expressed as a fraction, so 0.5 means 50% sparsity).  Essentially this pruner also uses a pruning criteria based on the magnitude of each tensor element, but it has the advantage that you can aim for an exact and specific sparsity level.\n\nThis pruner is much more stable compared to \nSensitivityPruner\n because the target sparsity level is not coupled to the actual magnitudes of the elements. Distiller's \nSensitivityPruner\n is unstable because the final sparsity level depends on the convergence pattern of the tensor distribution.  Song Han's methodology of using several different values for the multiplier \\(s\\), and the recalculation of the standard-deviation at each pruning phase, probably gives it stability, but requires much more hyper-parameters (this is the reason we have not implemented it thus far).  \n\n\nTo set the target sparsity levels, you can once again use pruning sensitivity analysis to make better guesses at the correct sparsity level of each\n\n\nMethod of operation\n\n\n\n\nSort the weights in the specified layer by their absolute values. \n\n\nMask to zero the smallest magnitude weights until the desired sparsity level is reached.\n\n\n\n\nAutomated gradual pruner (AGP)\n\n\nIn \nTo prune, or not to prune: exploring the efficacy of pruning for model compression\n, authors Michael Zhu and Suyog Gupta provide an algorithm to schedule a Level Pruner which Distiller implements in \nAutomatedGradualPruner\n.\n\n\n\n\n\n\"We introduce a new automated gradual pruning algorithm in which the sparsity is increased from an initial sparsity value \\(s_i\\) (usually 0) to a \ufb01nal sparsity value \\(s_f\\) over a span of n pruning steps.\nThe intuition behind this sparsity function in equation (1)  is to prune the network rapidly in the initial phase when the redundant connections are\nabundant and gradually reduce the number of weights being pruned each time as there are fewer and fewer weights remaining in the network.\"\"\n\n\n\n\n\n\nYou can play with the scheduling parameters in the \nagp_schedule.ipynb notebook\n.\n\n\nThe authors describe AGP:\n\n\n\n\n\n\nOur automated gradual pruning algorithm prunes the smallest magnitude weights to achieve a preset level of network sparsity.\n\n\nDoesn't require much hyper-parameter tuning\n\n\nShown to perform well across different models\n\n\nDoes not make any assumptions about the structure of the network or its constituent layers, and is therefore more generally applicable.\n\n\n\n\n\n\nRNN pruner\n\n\nThe authors of \nExploring Sparsity in Recurrent Neural Networks\n, Sharan Narang, Erich Elsen, Gregory Diamos, and Shubho Sengupta, \"propose a technique to reduce the parameters of a network by pruning weights during the initial training of the network.\"  They use a gradual pruning schedule which is reminiscent of the schedule used in AGP, for element-wise pruning of RNNs, which they also employ during training.  They show pruning of RNN, GRU, LSTM and embedding layers.\n\n\nDistiller's distiller.pruning.BaiduRNNPruner class implements this pruning algorithm.\n\n\n\n\nStructure pruners\n\n\nElement-wise pruning can create very sparse models which can be compressed to consume less memory footprint and bandwidth, but without specialized hardware that can compute using the sparse representation of the tensors, we don't gain any speedup of the computation.  Structure pruners, remove entire \"structures\", such as kernels, filters, and even entire feature-maps.\n\n\nRanked structure pruner\n\n\nThe \nL1RankedStructureParameterPruner\n pruner calculates the magnitude of some \"structure\", orders all of the structures based on some magnitude function and the \nm\n lowest ranking structures are pruned away.  Currently this pruner only performs ranking of filters (3D structures) and it uses the mean of the absolute value of the tensor as the representative of the filter magnitude.  The absolute mean does not depend on the size of the filter, so it is easier to use compared to just using the \\(L_1\\)-norm of the structure, and at the same time it is a good proxy of the \\(L_1\\)-norm.\n\n\nIn \nPruning Filters for Efficient ConvNets\n the authors use filter ranking, with \none-shot pruning\n followed by fine-tuning.  The authors of \nExploiting Sparseness in Deep Neural Networks for Large Vocabulary Speech Recognition\n also use a one-shot pruning schedule, for fully-connected layers, and they provide an explanation:\n\n\n\n\nFirst, after sweeping through the full training set several times the weights become relatively stable \u2014 they tend to remain either large or small magnitudes. Second, in a stabilized model, the importance of the connection is approximated well by the magnitudes of the weights (times the magnitudes of the corresponding input values, but these are relatively uniform within each layer since on the input layer, features are normalized to zero-mean and unit-variance, and hidden-layer values are probabilities)\n\n\n\n\nActivation-influenced pruner\n\n\nThe motivation for this pruner, is that if a feature-map produces very small activations, then this feature-map is not very important, and can be pruned away.\n- \nStatus: not implemented",
+            "location": "/algo_pruning/index.html", 
+            "text": "Weights pruning algorithms\n\n\n\n\nMagnitude pruner\n\n\nThis is the most basic pruner: it applies a thresholding function, \\(thresh(.)\\), on each element, \\(w_i\\), of a weights tensor.  A different threshold can be used for each layer's weights tensor.\n\nBecause the threshold is applied on individual elements, this pruner belongs to the element-wise pruning algorithm family.\n\n\n\\[ thresh(w_i)=\\left\\lbrace\n\\matrix{{{w_i: \\; if \\;|w_i| \\; \\gt}\\;\\lambda}\\cr {0: \\; if \\; |w_i| \\leq \\lambda} }\n\\right\\rbrace \\]\n\n\nSensitivity pruner\n\n\nFinding a threshold magnitude per layer is daunting, especially since each layer's elements have different average absolute values.  We can take advantage of the fact that the weights of convolutional and fully connected layers exhibit a Gaussian distribution with a mean value roughly zero, to avoid using a direct threshold based on the values of each specific tensor.\n\n\nThe diagram below shows the distribution the weights tensor of the first convolutional layer, and first fully-connected layer in TorchVision's pre-trained Alexnet model.  You can see that they have an approximate Gaussian distribution.\n\n\n \n\n\nThe distributions of Alexnet conv1 and fc1 layers\n\n\nWe use the standard deviation of the weights tensor as a sort of normalizing factor between the different weights tensors.  For example, if a tensor is Normally distributed, then about 68% of the elements have an absolute value less than the standard deviation (\\(\\sigma\\)) of the tensor.  Thus, if we set the threshold to \\(s*\\sigma\\), then basically we are thresholding \\(s * 68\\%\\) of the tensor elements.  \n\n\n\\[ thresh(w_i)=\\left\\lbrace\n\\matrix{{{w_i: \\; if \\;|w_i| \\; \\gt}\\;\\lambda}\\cr {0: \\; if \\; |w_i| \\leq \\lambda} }\n\\right\\rbrace \\]\n\n\n\\[\n\\lambda = s * \\sigma_l \\;\\;\\; where\\; \\sigma_l\\; is \\;the \\;std \\;of \\;layer \\;l \\;as \\;measured \\;on \\;the \\;dense \\;model\n\\]\n\n\nHow do we choose this \\(s\\) multiplier?\n\n\nIn \nLearning both Weights and Connections for Efficient Neural Networks\n the authors write:\n\n\n\n\n\"We used the sensitivity results to find each layer\u2019s threshold: for example, the smallest threshold was applied to the most sensitive layer, which is the first convolutional layer... The pruning threshold is chosen as a quality parameter multiplied by the standard deviation of a layer\u2019s weights\n\n\n\n\nSo the results of executing pruning sensitivity analysis on the tensor, gives us a good starting guess at \\(s\\).  Sensitivity analysis is an empirical method, and we still have to spend time to hone in on the exact multiplier value.\n\n\nMethod of operation\n\n\n\n\nStart by running a pruning sensitivity analysis on the model.  \n\n\nThen use the results to set and tune the threshold of each layer, but instead of using a direct threshold use a sensitivity parameter which is multiplied by the standard-deviation of the initial weight-tensor's distribution.\n\n\n\n\nSchedule\n\n\nIn their \npaper\n Song Han et al. use iterative pruning and change the value of the \\(s\\) multiplier at each pruning step.  Distiller's \nSensitivityPruner\n works differently: the value \\(s\\) is set once based on a one-time calculation of the standard-deviation of the tensor (the first time we prune), and relies on the fact that as the tensor is pruned, more elements are \"pulled\" toward the center of the distribution and thus more elements gets pruned.\n\n\nThis actually works quite well as we can see in the diagram below.  This is a TensorBoard screen-capture from Alexnet training, which shows how this method starts off pruning very aggressively, but then slowly reduces the pruning rate.\n\n\n\nWe use a simple iterative-pruning schedule such as: \nPrune every second epoch starting at epoch 0, and ending at epoch 38.\n  This excerpt from \nalexnet.schedule_sensitivity.yaml\n shows how this iterative schedule is conveyed in Distiller scheduling configuration YAML:\n\n\npruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2\n\n\n\n\nLevel pruner\n\n\nClass \nSparsityLevelParameterPruner\n uses a similar method to go around specifying specific thresholding magnitudes.\nInstead of specifying a threshold magnitude, you specify a target sparsity level (expressed as a fraction, so 0.5 means 50% sparsity).  Essentially this pruner also uses a pruning criteria based on the magnitude of each tensor element, but it has the advantage that you can aim for an exact and specific sparsity level.\n\nThis pruner is much more stable compared to \nSensitivityPruner\n because the target sparsity level is not coupled to the actual magnitudes of the elements. Distiller's \nSensitivityPruner\n is unstable because the final sparsity level depends on the convergence pattern of the tensor distribution.  Song Han's methodology of using several different values for the multiplier \\(s\\), and the recalculation of the standard-deviation at each pruning phase, probably gives it stability, but requires much more hyper-parameters (this is the reason we have not implemented it thus far).  \n\n\nTo set the target sparsity levels, you can once again use pruning sensitivity analysis to make better guesses at the correct sparsity level of each\n\n\nMethod of operation\n\n\n\n\nSort the weights in the specified layer by their absolute values. \n\n\nMask to zero the smallest magnitude weights until the desired sparsity level is reached.\n\n\n\n\nAutomated gradual pruner (AGP)\n\n\nIn \nTo prune, or not to prune: exploring the efficacy of pruning for model compression\n, authors Michael Zhu and Suyog Gupta provide an algorithm to schedule a Level Pruner which Distiller implements in \nAutomatedGradualPruner\n.\n\n\n\n\n\n\"We introduce a new automated gradual pruning algorithm in which the sparsity is increased from an initial sparsity value \\(s_i\\) (usually 0) to a \ufb01nal sparsity value \\(s_f\\) over a span of n pruning steps.\nThe intuition behind this sparsity function in equation (1)  is to prune the network rapidly in the initial phase when the redundant connections are\nabundant and gradually reduce the number of weights being pruned each time as there are fewer and fewer weights remaining in the network.\"\"\n\n\n\n\n\n\nYou can play with the scheduling parameters in the \nagp_schedule.ipynb notebook\n.\n\n\nThe authors describe AGP:\n\n\n\n\n\n\nOur automated gradual pruning algorithm prunes the smallest magnitude weights to achieve a preset level of network sparsity.\n\n\nDoesn't require much hyper-parameter tuning\n\n\nShown to perform well across different models\n\n\nDoes not make any assumptions about the structure of the network or its constituent layers, and is therefore more generally applicable.\n\n\n\n\n\n\nRNN pruner\n\n\nThe authors of \nExploring Sparsity in Recurrent Neural Networks\n, Sharan Narang, Erich Elsen, Gregory Diamos, and Shubho Sengupta, \"propose a technique to reduce the parameters of a network by pruning weights during the initial training of the network.\"  They use a gradual pruning schedule which is reminiscent of the schedule used in AGP, for element-wise pruning of RNNs, which they also employ during training.  They show pruning of RNN, GRU, LSTM and embedding layers.\n\n\nDistiller's distiller.pruning.BaiduRNNPruner class implements this pruning algorithm.\n\n\n\n\nStructure pruners\n\n\nElement-wise pruning can create very sparse models which can be compressed to consume less memory footprint and bandwidth, but without specialized hardware that can compute using the sparse representation of the tensors, we don't gain any speedup of the computation.  Structure pruners, remove entire \"structures\", such as kernels, filters, and even entire feature-maps.\n\n\nRanked structure pruner\n\n\nThe \nL1RankedStructureParameterPruner\n pruner calculates the magnitude of some \"structure\", orders all of the structures based on some magnitude function and the \nm\n lowest ranking structures are pruned away.  Currently this pruner only performs ranking of filters (3D structures) and it uses the mean of the absolute value of the tensor as the representative of the filter magnitude.  The absolute mean does not depend on the size of the filter, so it is easier to use compared to just using the \\(L_1\\)-norm of the structure, and at the same time it is a good proxy of the \\(L_1\\)-norm.\n\n\nIn \nPruning Filters for Efficient ConvNets\n the authors use filter ranking, with \none-shot pruning\n followed by fine-tuning.  The authors of \nExploiting Sparseness in Deep Neural Networks for Large Vocabulary Speech Recognition\n also use a one-shot pruning schedule, for fully-connected layers, and they provide an explanation:\n\n\n\n\nFirst, after sweeping through the full training set several times the weights become relatively stable \u2014 they tend to remain either large or small magnitudes. Second, in a stabilized model, the importance of the connection is approximated well by the magnitudes of the weights (times the magnitudes of the corresponding input values, but these are relatively uniform within each layer since on the input layer, features are normalized to zero-mean and unit-variance, and hidden-layer values are probabilities)\n\n\n\n\nActivation-influenced pruner\n\n\nThe motivation for this pruner, is that if a feature-map produces very small activations, then this feature-map is not very important, and can be pruned away.\n- \nStatus: not implemented", 
             "title": "Pruning"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#weights-pruning-algorithms",
-            "text": "",
+            "location": "/algo_pruning/index.html#weights-pruning-algorithms", 
+            "text": "", 
             "title": "Weights pruning algorithms"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#magnitude-pruner",
-            "text": "This is the most basic pruner: it applies a thresholding function, \\(thresh(.)\\), on each element, \\(w_i\\), of a weights tensor.  A different threshold can be used for each layer's weights tensor. \nBecause the threshold is applied on individual elements, this pruner belongs to the element-wise pruning algorithm family.  \\[ thresh(w_i)=\\left\\lbrace\n\\matrix{{{w_i: \\; if \\;|w_i| \\; \\gt}\\;\\lambda}\\cr {0: \\; if \\; |w_i| \\leq \\lambda} }\n\\right\\rbrace \\]",
+            "location": "/algo_pruning/index.html#magnitude-pruner", 
+            "text": "This is the most basic pruner: it applies a thresholding function, \\(thresh(.)\\), on each element, \\(w_i\\), of a weights tensor.  A different threshold can be used for each layer's weights tensor. \nBecause the threshold is applied on individual elements, this pruner belongs to the element-wise pruning algorithm family.  \\[ thresh(w_i)=\\left\\lbrace\n\\matrix{{{w_i: \\; if \\;|w_i| \\; \\gt}\\;\\lambda}\\cr {0: \\; if \\; |w_i| \\leq \\lambda} }\n\\right\\rbrace \\]", 
             "title": "Magnitude pruner"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#sensitivity-pruner",
-            "text": "Finding a threshold magnitude per layer is daunting, especially since each layer's elements have different average absolute values.  We can take advantage of the fact that the weights of convolutional and fully connected layers exhibit a Gaussian distribution with a mean value roughly zero, to avoid using a direct threshold based on the values of each specific tensor. \nThe diagram below shows the distribution the weights tensor of the first convolutional layer, and first fully-connected layer in TorchVision's pre-trained Alexnet model.  You can see that they have an approximate Gaussian distribution.     The distributions of Alexnet conv1 and fc1 layers  We use the standard deviation of the weights tensor as a sort of normalizing factor between the different weights tensors.  For example, if a tensor is Normally distributed, then about 68% of the elements have an absolute value less than the standard deviation (\\(\\sigma\\)) of the tensor.  Thus, if we set the threshold to \\(s*\\sigma\\), then basically we are thresholding \\(s * 68\\%\\) of the tensor elements.    \\[ thresh(w_i)=\\left\\lbrace\n\\matrix{{{w_i: \\; if \\;|w_i| \\; \\gt}\\;\\lambda}\\cr {0: \\; if \\; |w_i| \\leq \\lambda} }\n\\right\\rbrace \\]  \\[\n\\lambda = s * \\sigma_l \\;\\;\\; where\\; \\sigma_l\\; is \\;the \\;std \\;of \\;layer \\;l \\;as \\;measured \\;on \\;the \\;dense \\;model\n\\]  How do we choose this \\(s\\) multiplier?  In  Learning both Weights and Connections for Efficient Neural Networks  the authors write:   \"We used the sensitivity results to find each layer\u2019s threshold: for example, the smallest threshold was applied to the most sensitive layer, which is the first convolutional layer... The pruning threshold is chosen as a quality parameter multiplied by the standard deviation of a layer\u2019s weights   So the results of executing pruning sensitivity analysis on the tensor, gives us a good starting guess at \\(s\\).  Sensitivity analysis is an empirical method, and we still have to spend time to hone in on the exact multiplier value.",
+            "location": "/algo_pruning/index.html#sensitivity-pruner", 
+            "text": "Finding a threshold magnitude per layer is daunting, especially since each layer's elements have different average absolute values.  We can take advantage of the fact that the weights of convolutional and fully connected layers exhibit a Gaussian distribution with a mean value roughly zero, to avoid using a direct threshold based on the values of each specific tensor. \nThe diagram below shows the distribution the weights tensor of the first convolutional layer, and first fully-connected layer in TorchVision's pre-trained Alexnet model.  You can see that they have an approximate Gaussian distribution.     The distributions of Alexnet conv1 and fc1 layers  We use the standard deviation of the weights tensor as a sort of normalizing factor between the different weights tensors.  For example, if a tensor is Normally distributed, then about 68% of the elements have an absolute value less than the standard deviation (\\(\\sigma\\)) of the tensor.  Thus, if we set the threshold to \\(s*\\sigma\\), then basically we are thresholding \\(s * 68\\%\\) of the tensor elements.    \\[ thresh(w_i)=\\left\\lbrace\n\\matrix{{{w_i: \\; if \\;|w_i| \\; \\gt}\\;\\lambda}\\cr {0: \\; if \\; |w_i| \\leq \\lambda} }\n\\right\\rbrace \\]  \\[\n\\lambda = s * \\sigma_l \\;\\;\\; where\\; \\sigma_l\\; is \\;the \\;std \\;of \\;layer \\;l \\;as \\;measured \\;on \\;the \\;dense \\;model\n\\]  How do we choose this \\(s\\) multiplier?  In  Learning both Weights and Connections for Efficient Neural Networks  the authors write:   \"We used the sensitivity results to find each layer\u2019s threshold: for example, the smallest threshold was applied to the most sensitive layer, which is the first convolutional layer... The pruning threshold is chosen as a quality parameter multiplied by the standard deviation of a layer\u2019s weights   So the results of executing pruning sensitivity analysis on the tensor, gives us a good starting guess at \\(s\\).  Sensitivity analysis is an empirical method, and we still have to spend time to hone in on the exact multiplier value.", 
             "title": "Sensitivity pruner"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#method-of-operation",
-            "text": "Start by running a pruning sensitivity analysis on the model.    Then use the results to set and tune the threshold of each layer, but instead of using a direct threshold use a sensitivity parameter which is multiplied by the standard-deviation of the initial weight-tensor's distribution.",
+            "location": "/algo_pruning/index.html#method-of-operation", 
+            "text": "Start by running a pruning sensitivity analysis on the model.    Then use the results to set and tune the threshold of each layer, but instead of using a direct threshold use a sensitivity parameter which is multiplied by the standard-deviation of the initial weight-tensor's distribution.", 
             "title": "Method of operation"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#schedule",
-            "text": "In their  paper  Song Han et al. use iterative pruning and change the value of the \\(s\\) multiplier at each pruning step.  Distiller's  SensitivityPruner  works differently: the value \\(s\\) is set once based on a one-time calculation of the standard-deviation of the tensor (the first time we prune), and relies on the fact that as the tensor is pruned, more elements are \"pulled\" toward the center of the distribution and thus more elements gets pruned.  This actually works quite well as we can see in the diagram below.  This is a TensorBoard screen-capture from Alexnet training, which shows how this method starts off pruning very aggressively, but then slowly reduces the pruning rate.  We use a simple iterative-pruning schedule such as:  Prune every second epoch starting at epoch 0, and ending at epoch 38.   This excerpt from  alexnet.schedule_sensitivity.yaml  shows how this iterative schedule is conveyed in Distiller scheduling configuration YAML:  pruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2",
+            "location": "/algo_pruning/index.html#schedule", 
+            "text": "In their  paper  Song Han et al. use iterative pruning and change the value of the \\(s\\) multiplier at each pruning step.  Distiller's  SensitivityPruner  works differently: the value \\(s\\) is set once based on a one-time calculation of the standard-deviation of the tensor (the first time we prune), and relies on the fact that as the tensor is pruned, more elements are \"pulled\" toward the center of the distribution and thus more elements gets pruned.  This actually works quite well as we can see in the diagram below.  This is a TensorBoard screen-capture from Alexnet training, which shows how this method starts off pruning very aggressively, but then slowly reduces the pruning rate.  We use a simple iterative-pruning schedule such as:  Prune every second epoch starting at epoch 0, and ending at epoch 38.   This excerpt from  alexnet.schedule_sensitivity.yaml  shows how this iterative schedule is conveyed in Distiller scheduling configuration YAML:  pruners:\n  my_pruner:\n    class: 'SensitivityPruner'\n    sensitivities:\n      'features.module.0.weight': 0.25\n      'features.module.3.weight': 0.35\n      'features.module.6.weight': 0.40\n      'features.module.8.weight': 0.45\n      'features.module.10.weight': 0.55\n      'classifier.1.weight': 0.875\n      'classifier.4.weight': 0.875\n      'classifier.6.weight': 0.625\n\npolicies:\n  - pruner:\n      instance_name : 'my_pruner'\n    starting_epoch: 0\n    ending_epoch: 38\n    frequency: 2", 
             "title": "Schedule"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#level-pruner",
-            "text": "Class  SparsityLevelParameterPruner  uses a similar method to go around specifying specific thresholding magnitudes.\nInstead of specifying a threshold magnitude, you specify a target sparsity level (expressed as a fraction, so 0.5 means 50% sparsity).  Essentially this pruner also uses a pruning criteria based on the magnitude of each tensor element, but it has the advantage that you can aim for an exact and specific sparsity level. \nThis pruner is much more stable compared to  SensitivityPruner  because the target sparsity level is not coupled to the actual magnitudes of the elements. Distiller's  SensitivityPruner  is unstable because the final sparsity level depends on the convergence pattern of the tensor distribution.  Song Han's methodology of using several different values for the multiplier \\(s\\), and the recalculation of the standard-deviation at each pruning phase, probably gives it stability, but requires much more hyper-parameters (this is the reason we have not implemented it thus far).    To set the target sparsity levels, you can once again use pruning sensitivity analysis to make better guesses at the correct sparsity level of each",
+            "location": "/algo_pruning/index.html#level-pruner", 
+            "text": "Class  SparsityLevelParameterPruner  uses a similar method to go around specifying specific thresholding magnitudes.\nInstead of specifying a threshold magnitude, you specify a target sparsity level (expressed as a fraction, so 0.5 means 50% sparsity).  Essentially this pruner also uses a pruning criteria based on the magnitude of each tensor element, but it has the advantage that you can aim for an exact and specific sparsity level. \nThis pruner is much more stable compared to  SensitivityPruner  because the target sparsity level is not coupled to the actual magnitudes of the elements. Distiller's  SensitivityPruner  is unstable because the final sparsity level depends on the convergence pattern of the tensor distribution.  Song Han's methodology of using several different values for the multiplier \\(s\\), and the recalculation of the standard-deviation at each pruning phase, probably gives it stability, but requires much more hyper-parameters (this is the reason we have not implemented it thus far).    To set the target sparsity levels, you can once again use pruning sensitivity analysis to make better guesses at the correct sparsity level of each", 
             "title": "Level pruner"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#method-of-operation_1",
-            "text": "Sort the weights in the specified layer by their absolute values.   Mask to zero the smallest magnitude weights until the desired sparsity level is reached.",
+            "location": "/algo_pruning/index.html#method-of-operation_1", 
+            "text": "Sort the weights in the specified layer by their absolute values.   Mask to zero the smallest magnitude weights until the desired sparsity level is reached.", 
             "title": "Method of operation"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#automated-gradual-pruner-agp",
-            "text": "In  To prune, or not to prune: exploring the efficacy of pruning for model compression , authors Michael Zhu and Suyog Gupta provide an algorithm to schedule a Level Pruner which Distiller implements in  AutomatedGradualPruner .   \"We introduce a new automated gradual pruning algorithm in which the sparsity is increased from an initial sparsity value \\(s_i\\) (usually 0) to a \ufb01nal sparsity value \\(s_f\\) over a span of n pruning steps.\nThe intuition behind this sparsity function in equation (1)  is to prune the network rapidly in the initial phase when the redundant connections are\nabundant and gradually reduce the number of weights being pruned each time as there are fewer and fewer weights remaining in the network.\"\"    You can play with the scheduling parameters in the  agp_schedule.ipynb notebook .  The authors describe AGP:    Our automated gradual pruning algorithm prunes the smallest magnitude weights to achieve a preset level of network sparsity.  Doesn't require much hyper-parameter tuning  Shown to perform well across different models  Does not make any assumptions about the structure of the network or its constituent layers, and is therefore more generally applicable.",
+            "location": "/algo_pruning/index.html#automated-gradual-pruner-agp", 
+            "text": "In  To prune, or not to prune: exploring the efficacy of pruning for model compression , authors Michael Zhu and Suyog Gupta provide an algorithm to schedule a Level Pruner which Distiller implements in  AutomatedGradualPruner .   \"We introduce a new automated gradual pruning algorithm in which the sparsity is increased from an initial sparsity value \\(s_i\\) (usually 0) to a \ufb01nal sparsity value \\(s_f\\) over a span of n pruning steps.\nThe intuition behind this sparsity function in equation (1)  is to prune the network rapidly in the initial phase when the redundant connections are\nabundant and gradually reduce the number of weights being pruned each time as there are fewer and fewer weights remaining in the network.\"\"    You can play with the scheduling parameters in the  agp_schedule.ipynb notebook .  The authors describe AGP:    Our automated gradual pruning algorithm prunes the smallest magnitude weights to achieve a preset level of network sparsity.  Doesn't require much hyper-parameter tuning  Shown to perform well across different models  Does not make any assumptions about the structure of the network or its constituent layers, and is therefore more generally applicable.", 
             "title": "Automated gradual pruner (AGP)"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#rnn-pruner",
-            "text": "The authors of  Exploring Sparsity in Recurrent Neural Networks , Sharan Narang, Erich Elsen, Gregory Diamos, and Shubho Sengupta, \"propose a technique to reduce the parameters of a network by pruning weights during the initial training of the network.\"  They use a gradual pruning schedule which is reminiscent of the schedule used in AGP, for element-wise pruning of RNNs, which they also employ during training.  They show pruning of RNN, GRU, LSTM and embedding layers.  Distiller's distiller.pruning.BaiduRNNPruner class implements this pruning algorithm.",
+            "location": "/algo_pruning/index.html#rnn-pruner", 
+            "text": "The authors of  Exploring Sparsity in Recurrent Neural Networks , Sharan Narang, Erich Elsen, Gregory Diamos, and Shubho Sengupta, \"propose a technique to reduce the parameters of a network by pruning weights during the initial training of the network.\"  They use a gradual pruning schedule which is reminiscent of the schedule used in AGP, for element-wise pruning of RNNs, which they also employ during training.  They show pruning of RNN, GRU, LSTM and embedding layers.  Distiller's distiller.pruning.BaiduRNNPruner class implements this pruning algorithm.", 
             "title": "RNN pruner"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#structure-pruners",
-            "text": "Element-wise pruning can create very sparse models which can be compressed to consume less memory footprint and bandwidth, but without specialized hardware that can compute using the sparse representation of the tensors, we don't gain any speedup of the computation.  Structure pruners, remove entire \"structures\", such as kernels, filters, and even entire feature-maps.",
+            "location": "/algo_pruning/index.html#structure-pruners", 
+            "text": "Element-wise pruning can create very sparse models which can be compressed to consume less memory footprint and bandwidth, but without specialized hardware that can compute using the sparse representation of the tensors, we don't gain any speedup of the computation.  Structure pruners, remove entire \"structures\", such as kernels, filters, and even entire feature-maps.", 
             "title": "Structure pruners"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#ranked-structure-pruner",
-            "text": "The  L1RankedStructureParameterPruner  pruner calculates the magnitude of some \"structure\", orders all of the structures based on some magnitude function and the  m  lowest ranking structures are pruned away.  Currently this pruner only performs ranking of filters (3D structures) and it uses the mean of the absolute value of the tensor as the representative of the filter magnitude.  The absolute mean does not depend on the size of the filter, so it is easier to use compared to just using the \\(L_1\\)-norm of the structure, and at the same time it is a good proxy of the \\(L_1\\)-norm.  In  Pruning Filters for Efficient ConvNets  the authors use filter ranking, with  one-shot pruning  followed by fine-tuning.  The authors of  Exploiting Sparseness in Deep Neural Networks for Large Vocabulary Speech Recognition  also use a one-shot pruning schedule, for fully-connected layers, and they provide an explanation:   First, after sweeping through the full training set several times the weights become relatively stable \u2014 they tend to remain either large or small magnitudes. Second, in a stabilized model, the importance of the connection is approximated well by the magnitudes of the weights (times the magnitudes of the corresponding input values, but these are relatively uniform within each layer since on the input layer, features are normalized to zero-mean and unit-variance, and hidden-layer values are probabilities)",
+            "location": "/algo_pruning/index.html#ranked-structure-pruner", 
+            "text": "The  L1RankedStructureParameterPruner  pruner calculates the magnitude of some \"structure\", orders all of the structures based on some magnitude function and the  m  lowest ranking structures are pruned away.  Currently this pruner only performs ranking of filters (3D structures) and it uses the mean of the absolute value of the tensor as the representative of the filter magnitude.  The absolute mean does not depend on the size of the filter, so it is easier to use compared to just using the \\(L_1\\)-norm of the structure, and at the same time it is a good proxy of the \\(L_1\\)-norm.  In  Pruning Filters for Efficient ConvNets  the authors use filter ranking, with  one-shot pruning  followed by fine-tuning.  The authors of  Exploiting Sparseness in Deep Neural Networks for Large Vocabulary Speech Recognition  also use a one-shot pruning schedule, for fully-connected layers, and they provide an explanation:   First, after sweeping through the full training set several times the weights become relatively stable \u2014 they tend to remain either large or small magnitudes. Second, in a stabilized model, the importance of the connection is approximated well by the magnitudes of the weights (times the magnitudes of the corresponding input values, but these are relatively uniform within each layer since on the input layer, features are normalized to zero-mean and unit-variance, and hidden-layer values are probabilities)", 
             "title": "Ranked structure pruner"
-        },
+        }, 
         {
-            "location": "/algo_pruning/index.html#activation-influenced-pruner",
-            "text": "The motivation for this pruner, is that if a feature-map produces very small activations, then this feature-map is not very important, and can be pruned away.\n-  Status: not implemented",
+            "location": "/algo_pruning/index.html#activation-influenced-pruner", 
+            "text": "The motivation for this pruner, is that if a feature-map produces very small activations, then this feature-map is not very important, and can be pruned away.\n-  Status: not implemented", 
             "title": "Activation-influenced pruner"
-        },
+        }, 
         {
-            "location": "/algo_quantization/index.html",
-            "text": "Quantization Algorithms\n\n\nSymmetric Linear Quantization\n\n\nIn this method, a float value is quantized by multiplying with a numeric constant (the \nscale factor\n), hence it is \nLinear\n. We use a signed integer to represent the quantized range, with no quantization bias (or \"offset\") used. As a result, the floating-point range considered for quantization is \nsymmetric\n with respect to zero.\n\nIn the current implementation the scale factor is chosen so that the entire range of the floating-point tensor is quantized (we do not attempt to remove outliers).\n\nLet us denote the original floating-point tensor by \nx_f\n, the quantized tensor by \nx_q\n, the scale factor by \nq_x\n and the number of bits used for quantization by \nn\n. Then, we get:\n\nq_x = \\frac{2^{n-1}-1}{\\max|x|}\n\n\nx_q = round(q_x x_f)\n\n(The \nround\n operation is round-to-nearest-integer)  \n\n\nLet's see how a \nconvolution\n or \nfully-connected (FC)\n layer is quantized using this method: (we denote input, output, weights and bias with  \nx, y, w\n and \nb\n respectively)\n\ny_f = \\sum{x_f w_f} + b_f = \\sum{\\frac{x_q}{q_x} \\frac{w_q}{q_w}} + \\frac{b_q}{q_b} = \\frac{1}{q_x q_w} \\sum{(x_q w_q + \\frac{q_b}{q_x q_w}b_q)}\n\n\ny_q = round(q_y y_f) = round(\\frac{q_y}{q_x q_w} \\sum{(x_q w_q + \\frac{q_b}{q_x q_w}b_q)})\n\nNote how the bias has to be re-scaled to match the scale of the summation.\n\n\nImplementation\n\n\nWe've implemented \nconvolution\n and \nFC\n using this method.  \n\n\n\n\nThey are implemented by wrapping the existing PyTorch layers with quantization and de-quantization operations. That is - the computation is done on floating-point tensors, but the values themselves are restricted to integer values.  \n\n\nAll other layers are unaffected and are executed using their original FP32 implementation.  \n\n\nFor weights and bias the scale factor is determined once at quantization setup (\"offline\"), and for activations it is determined dynamically at runtime (\"online\").  \n\n\nImportant note:\n Currently, this method is implemented as \ninference only\n, with no back-propagation functionality. Hence, it can only be used to quantize a pre-trained FP32 model, with no re-training. As such, using it with \nn < 8\n is likely to lead to severe accuracy degradation for any non-trivial workload.",
+            "location": "/algo_quantization/index.html", 
+            "text": "Quantization Algorithms\n\n\nThe following quantization methods are currently implemented in Distiller:\n\n\nDoReFa\n\n\n(As proposed in \nDoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients\n)  \n\n\nIn this method, we first define the quantization function \nquantize_k\n, which takes a real value \na_f \\in [0, 1]\n and outputs a discrete-valued \na_q \\in \\left\\{ \\frac{0}{2^k-1}, \\frac{1}{2^k-1}, ... , \\frac{2^k-1}{2^k-1} \\right\\}\n, where \nk\n is the number of bits used for quantization.\n\n\n\n\na_q = quantize_k(a_f) = \\frac{1}{2^k-1} round \\left( \\left(2^k - 1 \\right) a_f \\right)\n\n\n\n\nActivations are clipped to the \n[0, 1]\n range and then quantized as follows:\n\n\n\n\nx_q = quantize_k(x_f)\n\n\n\n\nFor weights, we define the following function \nf\n, which takes an unbounded real valued input and outputs a real value in \n[0, 1]\n:\n\n\n\n\nf(w) = \\frac{tanh(w)}{2 max(|tanh(w)|)} + \\frac{1}{2} \n\n\n\n\nNow we can use \nquantize_k\n to get quantized weight values, as follows:\n\n\n\n\nw_q = 2 quantize_k \\left( f(w_f) \\right) - 1\n\n\n\n\nThis method requires training the model with quantization, as discussed \nhere\n. Use the \nDorefaQuantizer\n class to transform an existing model to a model suitable for training with quantization using DoReFa.\n\n\nNotes:\n\n\n\n\nGradients quantization as proposed in the paper is not supported yet.\n\n\nThe paper defines special handling for binary weights which isn't supported in Distiller yet.\n\n\n\n\nWRPN\n\n\n(As proposed in \nWRPN: Wide Reduced-Precision Networks\n)  \n\n\nIn this method, activations are clipped to \n[0, 1]\n and quantized as follows (\nk\n is the number of bits used for quantization):\n\n\n\n\nx_q = \\frac{1}{2^k-1} round \\left( \\left(2^k - 1 \\right) x_f \\right)\n\n\n\n\nWeights are clipped to \n[-1, 1]\n and quantized as follows:\n\n\n\n\nw_q = \\frac{1}{2^{k-1}-1} round \\left( \\left(2^{k-1} - 1 \\right)w_f \\right)\n\n\n\n\nNote that \nk-1\n bits are used to quantize weights, leaving one bit for sign.\n\n\nThis method requires training the model with quantization, as discussed \nhere\n. Use the \nWRPNQuantizer\n class to transform an existing model to a model suitable for training with quantization using WRPN.\n\n\nNotes:\n\n\n\n\nThe paper proposed widening of layers as a means to reduce accuracy loss. This isn't implemented as part of \nWRPNQuantizer\n at the moment. To experiment with this, modify your model implementation to have wider layers.\n\n\nThe paper defines special handling for binary weights which isn't supported in Distiller yet.\n\n\n\n\nSymmetric Linear Quantization\n\n\nIn this method, a float value is quantized by multiplying with a numeric constant (the \nscale factor\n), hence it is \nLinear\n. We use a signed integer to represent the quantized range, with no quantization bias (or \"offset\") used. As a result, the floating-point range considered for quantization is \nsymmetric\n with respect to zero.\n\nIn the current implementation the scale factor is chosen so that the entire range of the floating-point tensor is quantized (we do not attempt to remove outliers).\n\nLet us denote the original floating-point tensor by \nx_f\n, the quantized tensor by \nx_q\n, the scale factor by \nq_x\n and the number of bits used for quantization by \nn\n. Then, we get:\n\nq_x = \\frac{2^{n-1}-1}{\\max|x|}\n\n\nx_q = round(q_x x_f)\n\n(The \nround\n operation is round-to-nearest-integer)  \n\n\nLet's see how a \nconvolution\n or \nfully-connected (FC)\n layer is quantized using this method: (we denote input, output, weights and bias with  \nx, y, w\n and \nb\n respectively)\n\ny_f = \\sum{x_f w_f} + b_f = \\sum{\\frac{x_q}{q_x} \\frac{w_q}{q_w}} + \\frac{b_q}{q_b} = \\frac{1}{q_x q_w} \\sum{ \\left( x_q w_q + \\frac{q_b}{q_x q_w}b_q \\right) }\n\n\ny_q = round(q_y y_f) = round\\left(\\frac{q_y}{q_x q_w} \\sum{ \\left( x_q w_q + \\frac{q_b}{q_x q_w}b_q \\right) } \\right) \n\nNote how the bias has to be re-scaled to match the scale of the summation.\n\n\nImplementation\n\n\nWe've implemented \nconvolution\n and \nFC\n using this method.  \n\n\n\n\nThey are implemented by wrapping the existing PyTorch layers with quantization and de-quantization operations. That is - the computation is done on floating-point tensors, but the values themselves are restricted to integer values. The wrapper is implemented in the \nRangeLinearQuantParamLayerWrapper\n class.  \n\n\nAll other layers are unaffected and are executed using their original FP32 implementation.  \n\n\nTo automatically transform an existing model to a quantized model using this method, use the \nSymmetricLinearQuantizer\n class.\n\n\nFor weights and bias the scale factor is determined once at quantization setup (\"offline\"), and for activations it is determined dynamically at runtime (\"online\").  \n\n\nImportant note:\n Currently, this method is implemented as \ninference only\n, with no back-propagation functionality. Hence, it can only be used to quantize a pre-trained FP32 model, with no re-training. As such, using it with \nn < 8\n is likely to lead to severe accuracy degradation for any non-trivial workload.", 
             "title": "Quantization"
-        },
+        }, 
         {
-            "location": "/algo_quantization/index.html#quantization-algorithms",
-            "text": "",
+            "location": "/algo_quantization/index.html#quantization-algorithms", 
+            "text": "The following quantization methods are currently implemented in Distiller:", 
             "title": "Quantization Algorithms"
-        },
-        {
-            "location": "/algo_quantization/index.html#symmetric-linear-quantization",
-            "text": "In this method, a float value is quantized by multiplying with a numeric constant (the  scale factor ), hence it is  Linear . We use a signed integer to represent the quantized range, with no quantization bias (or \"offset\") used. As a result, the floating-point range considered for quantization is  symmetric  with respect to zero. \nIn the current implementation the scale factor is chosen so that the entire range of the floating-point tensor is quantized (we do not attempt to remove outliers). \nLet us denote the original floating-point tensor by  x_f , the quantized tensor by  x_q , the scale factor by  q_x  and the number of bits used for quantization by  n . Then, we get: q_x = \\frac{2^{n-1}-1}{\\max|x|}  x_q = round(q_x x_f) \n(The  round  operation is round-to-nearest-integer)    Let's see how a  convolution  or  fully-connected (FC)  layer is quantized using this method: (we denote input, output, weights and bias with   x, y, w  and  b  respectively) y_f = \\sum{x_f w_f} + b_f = \\sum{\\frac{x_q}{q_x} \\frac{w_q}{q_w}} + \\frac{b_q}{q_b} = \\frac{1}{q_x q_w} \\sum{(x_q w_q + \\frac{q_b}{q_x q_w}b_q)}  y_q = round(q_y y_f) = round(\\frac{q_y}{q_x q_w} \\sum{(x_q w_q + \\frac{q_b}{q_x q_w}b_q)}) \nNote how the bias has to be re-scaled to match the scale of the summation.",
+        }, 
+        {
+            "location": "/algo_quantization/index.html#dorefa", 
+            "text": "(As proposed in  DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients )    In this method, we first define the quantization function  quantize_k , which takes a real value  a_f \\in [0, 1]  and outputs a discrete-valued  a_q \\in \\left\\{ \\frac{0}{2^k-1}, \\frac{1}{2^k-1}, ... , \\frac{2^k-1}{2^k-1} \\right\\} , where  k  is the number of bits used for quantization.   a_q = quantize_k(a_f) = \\frac{1}{2^k-1} round \\left( \\left(2^k - 1 \\right) a_f \\right)   Activations are clipped to the  [0, 1]  range and then quantized as follows:   x_q = quantize_k(x_f)   For weights, we define the following function  f , which takes an unbounded real valued input and outputs a real value in  [0, 1] :   f(w) = \\frac{tanh(w)}{2 max(|tanh(w)|)} + \\frac{1}{2}    Now we can use  quantize_k  to get quantized weight values, as follows:   w_q = 2 quantize_k \\left( f(w_f) \\right) - 1   This method requires training the model with quantization, as discussed  here . Use the  DorefaQuantizer  class to transform an existing model to a model suitable for training with quantization using DoReFa.", 
+            "title": "DoReFa"
+        }, 
+        {
+            "location": "/algo_quantization/index.html#notes", 
+            "text": "Gradients quantization as proposed in the paper is not supported yet.  The paper defines special handling for binary weights which isn't supported in Distiller yet.", 
+            "title": "Notes:"
+        }, 
+        {
+            "location": "/algo_quantization/index.html#wrpn", 
+            "text": "(As proposed in  WRPN: Wide Reduced-Precision Networks )    In this method, activations are clipped to  [0, 1]  and quantized as follows ( k  is the number of bits used for quantization):   x_q = \\frac{1}{2^k-1} round \\left( \\left(2^k - 1 \\right) x_f \\right)   Weights are clipped to  [-1, 1]  and quantized as follows:   w_q = \\frac{1}{2^{k-1}-1} round \\left( \\left(2^{k-1} - 1 \\right)w_f \\right)   Note that  k-1  bits are used to quantize weights, leaving one bit for sign.  This method requires training the model with quantization, as discussed  here . Use the  WRPNQuantizer  class to transform an existing model to a model suitable for training with quantization using WRPN.", 
+            "title": "WRPN"
+        }, 
+        {
+            "location": "/algo_quantization/index.html#notes_1", 
+            "text": "The paper proposed widening of layers as a means to reduce accuracy loss. This isn't implemented as part of  WRPNQuantizer  at the moment. To experiment with this, modify your model implementation to have wider layers.  The paper defines special handling for binary weights which isn't supported in Distiller yet.", 
+            "title": "Notes:"
+        }, 
+        {
+            "location": "/algo_quantization/index.html#symmetric-linear-quantization", 
+            "text": "In this method, a float value is quantized by multiplying with a numeric constant (the  scale factor ), hence it is  Linear . We use a signed integer to represent the quantized range, with no quantization bias (or \"offset\") used. As a result, the floating-point range considered for quantization is  symmetric  with respect to zero. \nIn the current implementation the scale factor is chosen so that the entire range of the floating-point tensor is quantized (we do not attempt to remove outliers). \nLet us denote the original floating-point tensor by  x_f , the quantized tensor by  x_q , the scale factor by  q_x  and the number of bits used for quantization by  n . Then, we get: q_x = \\frac{2^{n-1}-1}{\\max|x|}  x_q = round(q_x x_f) \n(The  round  operation is round-to-nearest-integer)    Let's see how a  convolution  or  fully-connected (FC)  layer is quantized using this method: (we denote input, output, weights and bias with   x, y, w  and  b  respectively) y_f = \\sum{x_f w_f} + b_f = \\sum{\\frac{x_q}{q_x} \\frac{w_q}{q_w}} + \\frac{b_q}{q_b} = \\frac{1}{q_x q_w} \\sum{ \\left( x_q w_q + \\frac{q_b}{q_x q_w}b_q \\right) }  y_q = round(q_y y_f) = round\\left(\\frac{q_y}{q_x q_w} \\sum{ \\left( x_q w_q + \\frac{q_b}{q_x q_w}b_q \\right) } \\right)  \nNote how the bias has to be re-scaled to match the scale of the summation.", 
             "title": "Symmetric Linear Quantization"
-        },
+        }, 
         {
-            "location": "/algo_quantization/index.html#implementation",
-            "text": "We've implemented  convolution  and  FC  using this method.     They are implemented by wrapping the existing PyTorch layers with quantization and de-quantization operations. That is - the computation is done on floating-point tensors, but the values themselves are restricted to integer values.    All other layers are unaffected and are executed using their original FP32 implementation.    For weights and bias the scale factor is determined once at quantization setup (\"offline\"), and for activations it is determined dynamically at runtime (\"online\").    Important note:  Currently, this method is implemented as  inference only , with no back-propagation functionality. Hence, it can only be used to quantize a pre-trained FP32 model, with no re-training. As such, using it with  n < 8  is likely to lead to severe accuracy degradation for any non-trivial workload.",
+            "location": "/algo_quantization/index.html#implementation", 
+            "text": "We've implemented  convolution  and  FC  using this method.     They are implemented by wrapping the existing PyTorch layers with quantization and de-quantization operations. That is - the computation is done on floating-point tensors, but the values themselves are restricted to integer values. The wrapper is implemented in the  RangeLinearQuantParamLayerWrapper  class.    All other layers are unaffected and are executed using their original FP32 implementation.    To automatically transform an existing model to a quantized model using this method, use the  SymmetricLinearQuantizer  class.  For weights and bias the scale factor is determined once at quantization setup (\"offline\"), and for activations it is determined dynamically at runtime (\"online\").    Important note:  Currently, this method is implemented as  inference only , with no back-propagation functionality. Hence, it can only be used to quantize a pre-trained FP32 model, with no re-training. As such, using it with  n < 8  is likely to lead to severe accuracy degradation for any non-trivial workload.", 
             "title": "Implementation"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html",
-            "text": "Distiller Model Zoo\n\n\nHow to contribute models to the Model Zoo\n\n\nWe encourage you to contribute new models to the Model Zoo.  We welcome implementations of published papers or of your own work.  To assure that models and algorithms shared with others are high-quality, please commit your models with the following:\n\n\n\n\nCommand-line arguments\n\n\nLog files\n\n\nPyTorch model\n\n\n\n\nContents\n\n\nThe Distiller model zoo is not a \"traditional\" model-zoo, because it does not necessarily contain best-in-class compressed models.  Instead, the model-zoo contains a number of deep learning models that have been compressed using Distiller following some well-known research papers.  These are meant to serve as examples of how Distiller can be used.\n\n\nEach model contains a Distiller schedule detailing how the model was compressed, a PyTorch checkpoint, text logs and TensorBoard logs.\n\n\n\n\ntable, th, td {\n    border: 1px solid black;\n}\n\n\n\n\n  \n\n    \nPaper\n\n    \nDataset\n\n    \nNetwork\n\n    \nMethod & Granularity\n\n    \nSchedule\n\n    \nFeatures\n\n  \n\n  \n\n    \nLearning both Weights and Connections for Efficient Neural Networks\n\n    \nImageNet\n\n    \nAlexnet\n\n    \nElement-wise pruning\n\n    \nIterative; Manual\n\n    \nMagnitude thresholding based on a sensitivity quantifier.\nElement-wise sparsity sensitivity analysis\n\n  \n\n  \n\n    \nTo prune, or not to prune: exploring the efficacy of pruning for model compression\n\n    \nImageNet\n\n    \nMobileNet\n\n    \nElement-wise pruning\n\n    \nAutomated gradual; Iterative\n\n    \nMagnitude thresholding based on target level\n\n  \n\n  \n\n    \nLearning Structured Sparsity in Deep Neural Networks\n\n    \nCIFAR10\n\n    \nResNet20\n\n    \nGroup regularization\n\n    \n1.Train with group-lasso\n2.Remove zero groups and fine-tune\n\n    \nGroup Lasso regularization. Groups: kernels (2D), channels, filters (3D), layers (4D), vectors (rows, cols)\n\n  \n\n  \n\n    \nPruning Filters for Efficient ConvNets\n\n    \nCIFAR10\n\n    \nResNet56\n\n    \nFilter ranking; guided by sensitivity analysis\n\n    \n1.Rank filters\n2. Remove filters and channels\n3.Fine-tune\n\n    \nOne-shot ranking and pruning of filters; with network thinning\n  \n\n\n\n\nLearning both Weights and Connections for Efficient Neural Networks\n\n\nThis schedule is an example of \"Iterative Pruning\" for Alexnet/Imagent, as described in chapter 3 of Song Han's PhD dissertation: \nEfficient Methods and Hardware for Deep Learning\n and in his paper \nLearning both Weights and Connections for Efficient Neural Networks\n.  \n\n\nThe Distiller schedule uses SensitivityPruner which is similar to MagnitudeParameterPruner, but instead of specifying \"raw\" thresholds, it uses a \"sensitivity parameter\".  Song Han's paper says that \"the pruning threshold is chosen as a quality parameter multiplied by the standard deviation of a layers weights,\" and this is not explained much further.  In Distiller, the \"quality parameter\" is referred to as \"sensitivity\" and\nis based on the values learned from performing sensitivity analysis.  Using a parameter that is related to the standard deviation is very helpful: under the assumption that the weights tensors are distributed normally, the standard deviation acts as a threshold normalizer.\n\n\nNote that Distiller's implementation deviates slightly from the algorithm Song Han describes in his PhD dissertation, in that the threshold value is set only once.  In his PhD dissertation, Song Han describes a growing threshold, at each iteration.  This requires n+1 hyper-parameters (n being the number of pruning iterations we use): the threshold and the threshold increase (delta) at each pruning iteration.  Distiller's implementation takes advantage of the fact that as pruning progresses, more weights are pulled toward zero, and therefore the threshold \"traps\" more weights.  Thus, we can use less hyper-parameters and achieve the same results.\n\n\n\n\nDistiller schedule: \ndistiller/examples/sensitivity-pruning/alexnet.schedule_sensitivity.yaml\n\n\nCheckpoint file: \nalexnet.checkpoint.89.pth.tar\n\n\n\n\nResults\n\n\nOur reference is TorchVision's pretrained Alexnet model which has a Top1 accuracy of 56.55 and Top5=79.09.  We prune away 88.44% of the parameters and achieve  Top1=56.61 and Top5=79.45.\nSong Han prunes 89% of the parameters, which is slightly better than our results.\n\n\nParameters:\n+----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n|    | Name                      | Shape            |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean\n|----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n|  0 | features.module.0.weight  | (64, 3, 11, 11)  |         23232 |          13411 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   42.27359 | 0.14391 | -0.00002 |    0.08805 |\n|  1 | features.module.3.weight  | (192, 64, 5, 5)  |        307200 |         115560 |    0.00000 |    0.00000 |  0.00000 |  1.91243 |  0.00000 |   62.38281 | 0.04703 | -0.00250 |    0.02289 |\n|  2 | features.module.6.weight  | (384, 192, 3, 3) |        663552 |         256565 |    0.00000 |    0.00000 |  0.00000 |  6.18490 |  0.00000 |   61.33445 | 0.03354 | -0.00184 |    0.01803 |\n|  3 | features.module.8.weight  | (256, 384, 3, 3) |        884736 |         315065 |    0.00000 |    0.00000 |  0.00000 |  6.96411 |  0.00000 |   64.38881 | 0.02646 | -0.00168 |    0.01422 |\n|  4 | features.module.10.weight | (256, 256, 3, 3) |        589824 |         186938 |    0.00000 |    0.00000 |  0.00000 | 15.49225 |  0.00000 |   68.30614 | 0.02714 | -0.00246 |    0.01409 |\n|  5 | classifier.1.weight       | (4096, 9216)     |      37748736 |        3398881 |    0.00000 |    0.21973 |  0.00000 |  0.21973 |  0.00000 |   90.99604 | 0.00589 | -0.00020 |    0.00168 |\n|  6 | classifier.4.weight       | (4096, 4096)     |      16777216 |        1782769 |    0.21973 |    3.46680 |  0.00000 |  3.46680 |  0.00000 |   89.37387 | 0.00849 | -0.00066 |    0.00263 |\n|  7 | classifier.6.weight       | (1000, 4096)     |       4096000 |         994738 |    3.36914 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   75.71440 | 0.01718 |  0.00030 |    0.00778 |\n|  8 | Total sparsity:           | -                |      61090496 |        7063928 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   88.43694 | 0.00000 |  0.00000 |    0.00000 |\n+----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n 2018-04-04 21:30:52,499 - Total sparsity: 88.44\n\n 2018-04-04 21:30:52,499 - --- validate (epoch=89)-----------\n 2018-04-04 21:30:52,499 - 128116 samples (256 per mini-batch)\n 2018-04-04 21:31:35,357 - ==> Top1: 51.838    Top5: 74.817    Loss: 2.150\n\n 2018-04-04 21:31:39,251 - --- test ---------------------\n 2018-04-04 21:31:39,252 - 50000 samples (256 per mini-batch)\n 2018-04-04 21:32:01,274 - ==> Top1: 56.606    Top5: 79.446    Loss: 1.893\n\n\n\n\nTo prune, or not to prune: exploring the efficacy of pruning for model compression\n\n\nIn their paper Zhu and Gupta, \"compare the accuracy of large, but pruned models (large-sparse) and their\nsmaller, but dense (small-dense) counterparts with identical memory footprint.\"\nThey also \"propose a new gradual pruning technique that is simple and straightforward to apply across a variety of models/datasets with\nminimal tuning.\"\n\n\nThis pruning schedule is implemented by distiller.AutomatedGradualPruner, which increases the sparsity level (expressed as a percentage of zero-valued elements) gradually over several pruning steps.  Distiller's implementation only prunes elements once in an epoch (the model is fine-tuned in between pruning events), which is a small deviation from Zhu and Gupta's paper.  The research paper specifies the schedule in terms of mini-batches, while our implementation specifies the schedule in terms of epochs.  We feel that using epochs performs well, and is more \"stable\", since the number of mini-batches will change, if you change the batch size.\n\n\nImageNet files:\n\n\n\n\nDistiller schedule: \ndistiller/examples/agp-pruning/mobilenet.imagenet.schedule_agp.yaml\n\n\nCheckpoint file: \ncheckpoint.pth.tar\n\n\n\n\nResNet18 files:\n\n\n\n\nDistiller schedule: \ndistiller/examples/agp-pruning/resnet18.schedule_agp.yaml\n\n\nCheckpoint file: \ncheckpoint.pth.tar\n\n\n\n\nResults\n\n\nAs our baseline we used a \npretrained PyTorch MobileNet model\n (width=1) which has Top1=68.848 and Top5=88.740.\n\nIn their paper, Zhu and Gupta prune 50% of the elements of MobileNet (width=1) with a 1.1% drop in accuracy.  We pruned about 51.6% of the elements, with virtually no change in the accuracies (Top1: 68.808 and Top5: 88.656).  We didn't try to prune more than this, but we do note that the baseline accuracy that we used is almost 2% lower than the accuracy published in the paper.  \n\n\n+----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n|    | Name                     | Shape              |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean |\n|----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n|  0 | module.model.0.0.weight  | (32, 3, 3, 3)      |           864 |            864 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.14466 |  0.00103 |    0.06508 |\n|  1 | module.model.1.0.weight  | (32, 1, 3, 3)      |           288 |            288 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.32146 |  0.01020 |    0.12932 |\n|  2 | module.model.1.3.weight  | (64, 32, 1, 1)     |          2048 |           2048 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.11942 |  0.00024 |    0.03627 |\n|  3 | module.model.2.0.weight  | (64, 1, 3, 3)      |           576 |            576 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.15809 |  0.00543 |    0.11513 |\n|  4 | module.model.2.3.weight  | (128, 64, 1, 1)    |          8192 |           8192 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08442 | -0.00031 |    0.04182 |\n|  5 | module.model.3.0.weight  | (128, 1, 3, 3)     |          1152 |           1152 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.16780 |  0.00125 |    0.10545 |\n|  6 | module.model.3.3.weight  | (128, 128, 1, 1)   |         16384 |          16384 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07126 | -0.00197 |    0.04123 |\n|  7 | module.model.4.0.weight  | (128, 1, 3, 3)     |          1152 |           1152 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.10182 |  0.00171 |    0.08719 |\n|  8 | module.model.4.3.weight  | (256, 128, 1, 1)   |         32768 |          13108 |    0.00000 |    0.00000 | 10.15625 | 59.99756 | 12.50000 |   59.99756 | 0.05543 | -0.00002 |    0.02760 |\n|  9 | module.model.5.0.weight  | (256, 1, 3, 3)     |          2304 |           2304 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.12516 | -0.00288 |    0.08058 |\n| 10 | module.model.5.3.weight  | (256, 256, 1, 1)   |         65536 |          26215 |    0.00000 |    0.00000 | 12.50000 | 59.99908 | 23.82812 |   59.99908 | 0.04453 |  0.00002 |    0.02271 |\n| 11 | module.model.6.0.weight  | (256, 1, 3, 3)     |          2304 |           2304 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08024 |  0.00252 |    0.06377 |\n| 12 | module.model.6.3.weight  | (512, 256, 1, 1)   |        131072 |          52429 |    0.00000 |    0.00000 | 23.82812 | 59.99985 | 14.25781 |   59.99985 | 0.03561 | -0.00057 |    0.01779 |\n| 13 | module.model.7.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.11008 | -0.00018 |    0.06829 |\n| 14 | module.model.7.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 14.25781 | 59.99985 | 21.28906 |   59.99985 | 0.02944 | -0.00060 |    0.01515 |\n| 15 | module.model.8.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08258 |  0.00370 |    0.04905 |\n| 16 | module.model.8.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 21.28906 | 59.99985 | 28.51562 |   59.99985 | 0.02865 | -0.00046 |    0.01465 |\n| 17 | module.model.9.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07578 |  0.00468 |    0.04201 |\n| 18 | module.model.9.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 28.51562 | 59.99985 | 23.43750 |   59.99985 | 0.02939 | -0.00044 |    0.01511 |\n| 19 | module.model.10.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07091 |  0.00014 |    0.04306 |\n| 20 | module.model.10.3.weight | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 24.60938 | 59.99985 | 20.89844 |   59.99985 | 0.03095 | -0.00059 |    0.01672 |\n| 21 | module.model.11.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.05729 | -0.00518 |    0.04267 |\n| 22 | module.model.11.3.weight | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 20.89844 | 59.99985 | 17.57812 |   59.99985 | 0.03229 | -0.00044 |    0.01797 |\n| 23 | module.model.12.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.04981 | -0.00136 |    0.03967 |\n| 24 | module.model.12.3.weight | (1024, 512, 1, 1)  |        524288 |         209716 |    0.00000 |    0.00000 | 16.01562 | 59.99985 | 44.23828 |   59.99985 | 0.02514 | -0.00106 |    0.01278 |\n| 25 | module.model.13.0.weight | (1024, 1, 3, 3)    |          9216 |           9216 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.02396 | -0.00949 |    0.01549 |\n| 26 | module.model.13.3.weight | (1024, 1024, 1, 1) |       1048576 |         419431 |    0.00000 |    0.00000 | 44.72656 | 59.99994 |  1.46484 |   59.99994 | 0.01801 | -0.00017 |    0.00931 |\n| 27 | module.fc.weight         | (1000, 1024)       |       1024000 |         409600 |    1.46484 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   60.00000 | 0.05078 |  0.00271 |    0.02734 |\n| 28 | Total sparsity:          | -                  |       4209088 |        1726917 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   58.97171 | 0.00000 |  0.00000 |    0.00000 |\n+----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\nTotal sparsity: 58.97\n\n--- validate (epoch=199)-----------\n128116 samples (256 per mini-batch)\n==> Top1: 65.337    Top5: 84.984    Loss: 1.494\n\n--- test ---------------------\n50000 samples (256 per mini-batch)\n==> Top1: 68.810    Top5: 88.626    Loss: 1.282\n\n\n\n\n\nLearning Structured Sparsity in Deep Neural Networks\n\n\nThis research paper from the University of Pittsburgh, \"proposes a Structured Sparsity Learning (SSL) method to regularize the structures (i.e., filters, channels, filter shapes, and layer depth) of DNNs. SSL can: (1) learn a compact structure from a bigger DNN to reduce computation cost; (2) obtain a hardware-friendly structured sparsity of DNN to efficiently accelerate the DNN\u2019s evaluation.\"\n\n\nNote that this paper does not use pruning, but instead uses group regularization during the training to force weights towards zero, as a group.  We used a schedule which thresholds the regularized elements at a magnitude equal to the regularization strength.  At the end of the regularization phase, we save the final sparsity masks generated by the regularization, and exit.  Then we load this regularized model, remove the layers corresponding to the zeroed weight tensors (all of a layer's elements have a zero value).    \n\n\nBaseline training\n\n\nWe started by training the baseline ResNet20-Cifar dense network since we didn't have a pre-trained model.\n\n\n\n\nDistiller schedule: \ndistiller/examples/ssl/resnet20_cifar_baseline_training.yaml\n\n\nCheckpoint files: \ndistiller/examples/ssl/checkpoints/\n\n\n\n\n$ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.3 --epochs=180 --compress=../cifar10/resnet20/baseline_training.yaml -j=1 --deterministic\n\n\n\n\nRegularization\n\n\nThen we started training from scratch again, but this time we used Group Lasso regularization on entire layers:\n\nDistiller schedule: \ndistiller/examples/ssl/ssl_4D-removal_4L_training.yaml\n\n\n$ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.4 --epochs=180 --compress=../ssl/ssl_4D-removal_training.yaml -j=1 --deterministic\n\n\n\n\nThe diagram below shows the training of Resnet20/CIFAR10 using Group Lasso regularization on entire layers (in blue) vs. training Resnet20/CIFAR10  baseline (in red).  You may notice several interesting things:\n1. The LR-decay policy is the same, but the two sessions start with different initial LR values.\n2. The data-loss of the regularized training follows the same shape as the un-regularized training (baseline), and eventually the two seem to merge.\n3. We see similar behavior in the validation Top1 and Top5 accuracy results, but the regularized training eventually performs better.\n4. In the top right corner we see the behavior of the regularization loss (\nReg Loss\n), which actually increases for some time, until the data-loss has a sharp drop (after ~16K mini-batches), at which point the regularization loss also starts dropping.\n\n\n\nThis \nregularization\n yields 5 layers with zeroed weight tensors.  We load this model, remove the 5 layers, and start the fine tuning of the weights.  This process of layer removal is specific to ResNet for CIFAR, which we altered by adding code to skip over layers during the forward path.  When you export to ONNX, the removed layers do not participate in the forward path, so they don't get incarnated.  \n\n\nWe managed to remove 5 of the 16 3x3 convolution layers which dominate the computation time.  It's not bad, but we probably could have done better.\n\n\nFine-tuning\n\n\nDuring the \nfine-tuning\n process, because the removed layers do not participate in the forward path, they do not appear in the backward path and are not backpropogated: therefore they are completely disconnected from the network.\n\nWe copy the checkpoint file of the regularized model to \ncheckpoint_trained_4D_regularized_5Lremoved.pth.tar\n.\n\nDistiller schedule: \ndistiller/examples/ssl/ssl_4D-removal_finetuning.yaml\n\n\n$ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.1 --epochs=250 --resume=../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar --compress=../ssl/ssl_4D-removal_finetuning.yaml  -j=1 --deterministic\n\n\n\n\nResults\n\n\nOur baseline results for ResNet20 Cifar are: Top1=91.450 and  Top5=99.750\n\n\nWe used Distiller's GroupLassoRegularizer to remove 5 layers from Resnet20 (CIFAR10) with no degradation of the accuracies.\n\nThe regularized model exhibits really poor classification abilities: \n\n\n$ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --resume=../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar --evaluate\n\n=> loading checkpoint ../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar\n   best top@1: 90.620\nLoaded compression schedule from checkpoint (epoch 179)\nRemoving layer: module.layer1.0.conv1 [layer=0 block=0 conv=0]\nRemoving layer: module.layer1.0.conv2 [layer=0 block=0 conv=1]\nRemoving layer: module.layer1.1.conv1 [layer=0 block=1 conv=0]\nRemoving layer: module.layer1.1.conv2 [layer=0 block=1 conv=1]\nRemoving layer: module.layer2.2.conv2 [layer=1 block=2 conv=1]\nFiles already downloaded and verified\nFiles already downloaded and verified\nDataset sizes:\n        training=45000\n        validation=5000\n        test=10000\n--- test ---------------------\n10000 samples (256 per mini-batch)\n==> Top1: 22.290    Top5: 68.940    Loss: 5.172\n\n\n\n\nHowever, after fine-tuning, we recovered most of the accuracies loss, but not quite all of it: Top1=91.020 and Top5=99.670\n\n\nWe didn't spend time trying to wrestle with this network, and therefore didn't achieve SSL's published results (which showed that they managed to remove 6 layers and at the same time increase accuracies).\n\n\nPruning Filters for Efficient ConvNets\n\n\nQuoting the authors directly:\n\n\n\n\nWe present an acceleration method for CNNs, where we prune filters from CNNs that are identified as having a small effect on the output accuracy. By removing whole filters in the network together with their connecting feature maps, the computation costs are reduced significantly.\nIn contrast to pruning weights, this approach does not result in sparse connectivity patterns. Hence, it does not need the support of sparse convolution libraries and can work with existing efficient BLAS libraries for dense matrix multiplications.\n\n\n\n\nThe implementation of the research by Hao et al. required us to add filter-pruning sensitivity analysis, and support for \"network thinning\".\n\n\nAfter performing filter-pruning sensitivity analysis to assess which layers are more sensitive to the pruning of filters, we execute distiller.L1RankedStructureParameterPruner once in order to rank the filters of each layer by their L1-norm values, and then we prune the schedule-prescribed sparsity level.  \n\n\n\n\nDistiller schedule: \ndistiller/examples/pruning_filters_for_efficient_convnets/resnet56_cifar_filter_rank.yaml\n\n\nCheckpoint files: \ncheckpoint_finetuned.pth.tar\n\n\n\n\nThe excerpt from the schedule, displayed below, shows how we declare the L1RankedStructureParameterPruner.  This class currently ranks filters only, but because in the future this class may support ranking of various structures, you need to specify for each parameter both the target sparsity level, and the structure type ('3D' is filter-wise pruning).\n\n\npruners:\n  filter_pruner:\n    class: 'L1RankedStructureParameterPruner'\n    reg_regims:\n      'module.layer1.0.conv1.weight': [0.6, '3D']\n      'module.layer1.1.conv1.weight': [0.6, '3D']\n      'module.layer1.2.conv1.weight': [0.6, '3D']\n      'module.layer1.3.conv1.weight': [0.6, '3D']\n\n\n\n\nIn the policy, we specify that we want to invoke this pruner once, at epoch 180.  Because we are starting from a network which was trained for 180 epochs (see Baseline training below), the filter ranking is performed right at the outset of this schedule.\n\n\npolicies:\n  - pruner:\n      instance_name: filter_pruner\n    epochs: [180]\n\n\n\n\n\nFollowing the pruning, we want to \"physically\" remove the pruned filters from the network, which involves reconfiguring the Convolutional layers and the parameter tensors.  When we remove filters from Convolution layer \nn\n we need to perform several changes to the network:\n1. Shrink layer \nn\n's weights tensor, leaving only the \"important\" filters.\n2. Configure layer \nn\n's \n.out_channels\n member to its new, smaller, value.\n3. If a BN layer follows layer \nn\n, then it also needs to be reconfigured and its scale and shift parameter vectors need to be shrunk.\n4. If a Convolution layer follows the BN layer, then it will have less input channels which requires reconfiguration and shrinking of its weights.\n\n\nAll of this is performed by distiller.ResnetCifarFilterRemover which is also scheduled at epoch 180.  We call this process \"network thinning\".\n\n\nextensions:\n  net_thinner:\n      class: 'ResnetCifarFilterRemover'\n      thinning_func_str: resnet_cifar_remove_filters\n\n\n\n\n\nNetwork thinning requires us to understand the layer connectivity and data-dependency of the DNN, and we are working on a robust method to perform this.  On networks with topologies similar to ResNet (residuals) and GoogLeNet (inception), which have several inputs and outputs to/from Convolution layers, there is extra details to consider.\n\nOur current implementation is specific to certain layers in ResNet and is a bit fragile.  We will continue to improve and generalize this.\n\n\nBaseline training\n\n\nWe started by training the baseline ResNet56-Cifar dense network (180 epochs) since we didn't have a pre-trained model.\n\n\n\n\nDistiller schedule: \ndistiller/examples/pruning_filters_for_efficient_convnets/resnet56_cifar_baseline_training.yaml\n\n\nCheckpoint files: \ncheckpoint.resnet56_cifar_baseline.pth.tar\n\n\n\n\nResults\n\n\nWe trained a ResNet56-Cifar10 network and achieve accuracy results which are on-par with published results:\nTop1: 92.970 and Top5: 99.740.\n\n\nWe used Hao et al.'s algorithm to remove 37.3% of the original convolution MACs, while maintaining virtually the same accuracy as the baseline:\nTop1: 92.830 and Top5: 99.760",
+            "location": "/model_zoo/index.html", 
+            "text": "Distiller Model Zoo\n\n\nHow to contribute models to the Model Zoo\n\n\nWe encourage you to contribute new models to the Model Zoo.  We welcome implementations of published papers or of your own work.  To assure that models and algorithms shared with others are high-quality, please commit your models with the following:\n\n\n\n\nCommand-line arguments\n\n\nLog files\n\n\nPyTorch model\n\n\n\n\nContents\n\n\nThe Distiller model zoo is not a \"traditional\" model-zoo, because it does not necessarily contain best-in-class compressed models.  Instead, the model-zoo contains a number of deep learning models that have been compressed using Distiller following some well-known research papers.  These are meant to serve as examples of how Distiller can be used.\n\n\nEach model contains a Distiller schedule detailing how the model was compressed, a PyTorch checkpoint, text logs and TensorBoard logs.\n\n\n\n\ntable, th, td {\n    border: 1px solid black;\n}\n\n\n\n\n  \n\n    \nPaper\n\n    \nDataset\n\n    \nNetwork\n\n    \nMethod \n Granularity\n\n    \nSchedule\n\n    \nFeatures\n\n  \n\n  \n\n    \nLearning both Weights and Connections for Efficient Neural Networks\n\n    \nImageNet\n\n    \nAlexnet\n\n    \nElement-wise pruning\n\n    \nIterative; Manual\n\n    \nMagnitude thresholding based on a sensitivity quantifier.\nElement-wise sparsity sensitivity analysis\n\n  \n\n  \n\n    \nTo prune, or not to prune: exploring the efficacy of pruning for model compression\n\n    \nImageNet\n\n    \nMobileNet\n\n    \nElement-wise pruning\n\n    \nAutomated gradual; Iterative\n\n    \nMagnitude thresholding based on target level\n\n  \n\n  \n\n    \nLearning Structured Sparsity in Deep Neural Networks\n\n    \nCIFAR10\n\n    \nResNet20\n\n    \nGroup regularization\n\n    \n1.Train with group-lasso\n2.Remove zero groups and fine-tune\n\n    \nGroup Lasso regularization. Groups: kernels (2D), channels, filters (3D), layers (4D), vectors (rows, cols)\n\n  \n\n  \n\n    \nPruning Filters for Efficient ConvNets\n\n    \nCIFAR10\n\n    \nResNet56\n\n    \nFilter ranking; guided by sensitivity analysis\n\n    \n1.Rank filters\n2. Remove filters and channels\n3.Fine-tune\n\n    \nOne-shot ranking and pruning of filters; with network thinning\n  \n\n\n\n\nLearning both Weights and Connections for Efficient Neural Networks\n\n\nThis schedule is an example of \"Iterative Pruning\" for Alexnet/Imagent, as described in chapter 3 of Song Han's PhD dissertation: \nEfficient Methods and Hardware for Deep Learning\n and in his paper \nLearning both Weights and Connections for Efficient Neural Networks\n.  \n\n\nThe Distiller schedule uses SensitivityPruner which is similar to MagnitudeParameterPruner, but instead of specifying \"raw\" thresholds, it uses a \"sensitivity parameter\".  Song Han's paper says that \"the pruning threshold is chosen as a quality parameter multiplied by the standard deviation of a layers weights,\" and this is not explained much further.  In Distiller, the \"quality parameter\" is referred to as \"sensitivity\" and\nis based on the values learned from performing sensitivity analysis.  Using a parameter that is related to the standard deviation is very helpful: under the assumption that the weights tensors are distributed normally, the standard deviation acts as a threshold normalizer.\n\n\nNote that Distiller's implementation deviates slightly from the algorithm Song Han describes in his PhD dissertation, in that the threshold value is set only once.  In his PhD dissertation, Song Han describes a growing threshold, at each iteration.  This requires n+1 hyper-parameters (n being the number of pruning iterations we use): the threshold and the threshold increase (delta) at each pruning iteration.  Distiller's implementation takes advantage of the fact that as pruning progresses, more weights are pulled toward zero, and therefore the threshold \"traps\" more weights.  Thus, we can use less hyper-parameters and achieve the same results.\n\n\n\n\nDistiller schedule: \ndistiller/examples/sensitivity-pruning/alexnet.schedule_sensitivity.yaml\n\n\nCheckpoint file: \nalexnet.checkpoint.89.pth.tar\n\n\n\n\nResults\n\n\nOur reference is TorchVision's pretrained Alexnet model which has a Top1 accuracy of 56.55 and Top5=79.09.  We prune away 88.44% of the parameters and achieve  Top1=56.61 and Top5=79.45.\nSong Han prunes 89% of the parameters, which is slightly better than our results.\n\n\nParameters:\n+----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n|    | Name                      | Shape            |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean\n|----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n|  0 | features.module.0.weight  | (64, 3, 11, 11)  |         23232 |          13411 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   42.27359 | 0.14391 | -0.00002 |    0.08805 |\n|  1 | features.module.3.weight  | (192, 64, 5, 5)  |        307200 |         115560 |    0.00000 |    0.00000 |  0.00000 |  1.91243 |  0.00000 |   62.38281 | 0.04703 | -0.00250 |    0.02289 |\n|  2 | features.module.6.weight  | (384, 192, 3, 3) |        663552 |         256565 |    0.00000 |    0.00000 |  0.00000 |  6.18490 |  0.00000 |   61.33445 | 0.03354 | -0.00184 |    0.01803 |\n|  3 | features.module.8.weight  | (256, 384, 3, 3) |        884736 |         315065 |    0.00000 |    0.00000 |  0.00000 |  6.96411 |  0.00000 |   64.38881 | 0.02646 | -0.00168 |    0.01422 |\n|  4 | features.module.10.weight | (256, 256, 3, 3) |        589824 |         186938 |    0.00000 |    0.00000 |  0.00000 | 15.49225 |  0.00000 |   68.30614 | 0.02714 | -0.00246 |    0.01409 |\n|  5 | classifier.1.weight       | (4096, 9216)     |      37748736 |        3398881 |    0.00000 |    0.21973 |  0.00000 |  0.21973 |  0.00000 |   90.99604 | 0.00589 | -0.00020 |    0.00168 |\n|  6 | classifier.4.weight       | (4096, 4096)     |      16777216 |        1782769 |    0.21973 |    3.46680 |  0.00000 |  3.46680 |  0.00000 |   89.37387 | 0.00849 | -0.00066 |    0.00263 |\n|  7 | classifier.6.weight       | (1000, 4096)     |       4096000 |         994738 |    3.36914 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   75.71440 | 0.01718 |  0.00030 |    0.00778 |\n|  8 | Total sparsity:           | -                |      61090496 |        7063928 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   88.43694 | 0.00000 |  0.00000 |    0.00000 |\n+----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n 2018-04-04 21:30:52,499 - Total sparsity: 88.44\n\n 2018-04-04 21:30:52,499 - --- validate (epoch=89)-----------\n 2018-04-04 21:30:52,499 - 128116 samples (256 per mini-batch)\n 2018-04-04 21:31:35,357 - ==\n Top1: 51.838    Top5: 74.817    Loss: 2.150\n\n 2018-04-04 21:31:39,251 - --- test ---------------------\n 2018-04-04 21:31:39,252 - 50000 samples (256 per mini-batch)\n 2018-04-04 21:32:01,274 - ==\n Top1: 56.606    Top5: 79.446    Loss: 1.893\n\n\n\n\nTo prune, or not to prune: exploring the efficacy of pruning for model compression\n\n\nIn their paper Zhu and Gupta, \"compare the accuracy of large, but pruned models (large-sparse) and their\nsmaller, but dense (small-dense) counterparts with identical memory footprint.\"\nThey also \"propose a new gradual pruning technique that is simple and straightforward to apply across a variety of models/datasets with\nminimal tuning.\"\n\n\nThis pruning schedule is implemented by distiller.AutomatedGradualPruner, which increases the sparsity level (expressed as a percentage of zero-valued elements) gradually over several pruning steps.  Distiller's implementation only prunes elements once in an epoch (the model is fine-tuned in between pruning events), which is a small deviation from Zhu and Gupta's paper.  The research paper specifies the schedule in terms of mini-batches, while our implementation specifies the schedule in terms of epochs.  We feel that using epochs performs well, and is more \"stable\", since the number of mini-batches will change, if you change the batch size.\n\n\nImageNet files:\n\n\n\n\nDistiller schedule: \ndistiller/examples/agp-pruning/mobilenet.imagenet.schedule_agp.yaml\n\n\nCheckpoint file: \ncheckpoint.pth.tar\n\n\n\n\nResNet18 files:\n\n\n\n\nDistiller schedule: \ndistiller/examples/agp-pruning/resnet18.schedule_agp.yaml\n\n\nCheckpoint file: \ncheckpoint.pth.tar\n\n\n\n\nResults\n\n\nAs our baseline we used a \npretrained PyTorch MobileNet model\n (width=1) which has Top1=68.848 and Top5=88.740.\n\nIn their paper, Zhu and Gupta prune 50% of the elements of MobileNet (width=1) with a 1.1% drop in accuracy.  We pruned about 51.6% of the elements, with virtually no change in the accuracies (Top1: 68.808 and Top5: 88.656).  We didn't try to prune more than this, but we do note that the baseline accuracy that we used is almost 2% lower than the accuracy published in the paper.  \n\n\n+----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n|    | Name                     | Shape              |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean |\n|----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n|  0 | module.model.0.0.weight  | (32, 3, 3, 3)      |           864 |            864 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.14466 |  0.00103 |    0.06508 |\n|  1 | module.model.1.0.weight  | (32, 1, 3, 3)      |           288 |            288 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.32146 |  0.01020 |    0.12932 |\n|  2 | module.model.1.3.weight  | (64, 32, 1, 1)     |          2048 |           2048 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.11942 |  0.00024 |    0.03627 |\n|  3 | module.model.2.0.weight  | (64, 1, 3, 3)      |           576 |            576 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.15809 |  0.00543 |    0.11513 |\n|  4 | module.model.2.3.weight  | (128, 64, 1, 1)    |          8192 |           8192 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08442 | -0.00031 |    0.04182 |\n|  5 | module.model.3.0.weight  | (128, 1, 3, 3)     |          1152 |           1152 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.16780 |  0.00125 |    0.10545 |\n|  6 | module.model.3.3.weight  | (128, 128, 1, 1)   |         16384 |          16384 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07126 | -0.00197 |    0.04123 |\n|  7 | module.model.4.0.weight  | (128, 1, 3, 3)     |          1152 |           1152 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.10182 |  0.00171 |    0.08719 |\n|  8 | module.model.4.3.weight  | (256, 128, 1, 1)   |         32768 |          13108 |    0.00000 |    0.00000 | 10.15625 | 59.99756 | 12.50000 |   59.99756 | 0.05543 | -0.00002 |    0.02760 |\n|  9 | module.model.5.0.weight  | (256, 1, 3, 3)     |          2304 |           2304 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.12516 | -0.00288 |    0.08058 |\n| 10 | module.model.5.3.weight  | (256, 256, 1, 1)   |         65536 |          26215 |    0.00000 |    0.00000 | 12.50000 | 59.99908 | 23.82812 |   59.99908 | 0.04453 |  0.00002 |    0.02271 |\n| 11 | module.model.6.0.weight  | (256, 1, 3, 3)     |          2304 |           2304 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08024 |  0.00252 |    0.06377 |\n| 12 | module.model.6.3.weight  | (512, 256, 1, 1)   |        131072 |          52429 |    0.00000 |    0.00000 | 23.82812 | 59.99985 | 14.25781 |   59.99985 | 0.03561 | -0.00057 |    0.01779 |\n| 13 | module.model.7.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.11008 | -0.00018 |    0.06829 |\n| 14 | module.model.7.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 14.25781 | 59.99985 | 21.28906 |   59.99985 | 0.02944 | -0.00060 |    0.01515 |\n| 15 | module.model.8.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08258 |  0.00370 |    0.04905 |\n| 16 | module.model.8.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 21.28906 | 59.99985 | 28.51562 |   59.99985 | 0.02865 | -0.00046 |    0.01465 |\n| 17 | module.model.9.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07578 |  0.00468 |    0.04201 |\n| 18 | module.model.9.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 28.51562 | 59.99985 | 23.43750 |   59.99985 | 0.02939 | -0.00044 |    0.01511 |\n| 19 | module.model.10.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07091 |  0.00014 |    0.04306 |\n| 20 | module.model.10.3.weight | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 24.60938 | 59.99985 | 20.89844 |   59.99985 | 0.03095 | -0.00059 |    0.01672 |\n| 21 | module.model.11.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.05729 | -0.00518 |    0.04267 |\n| 22 | module.model.11.3.weight | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 20.89844 | 59.99985 | 17.57812 |   59.99985 | 0.03229 | -0.00044 |    0.01797 |\n| 23 | module.model.12.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.04981 | -0.00136 |    0.03967 |\n| 24 | module.model.12.3.weight | (1024, 512, 1, 1)  |        524288 |         209716 |    0.00000 |    0.00000 | 16.01562 | 59.99985 | 44.23828 |   59.99985 | 0.02514 | -0.00106 |    0.01278 |\n| 25 | module.model.13.0.weight | (1024, 1, 3, 3)    |          9216 |           9216 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.02396 | -0.00949 |    0.01549 |\n| 26 | module.model.13.3.weight | (1024, 1024, 1, 1) |       1048576 |         419431 |    0.00000 |    0.00000 | 44.72656 | 59.99994 |  1.46484 |   59.99994 | 0.01801 | -0.00017 |    0.00931 |\n| 27 | module.fc.weight         | (1000, 1024)       |       1024000 |         409600 |    1.46484 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   60.00000 | 0.05078 |  0.00271 |    0.02734 |\n| 28 | Total sparsity:          | -                  |       4209088 |        1726917 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   58.97171 | 0.00000 |  0.00000 |    0.00000 |\n+----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\nTotal sparsity: 58.97\n\n--- validate (epoch=199)-----------\n128116 samples (256 per mini-batch)\n==\n Top1: 65.337    Top5: 84.984    Loss: 1.494\n\n--- test ---------------------\n50000 samples (256 per mini-batch)\n==\n Top1: 68.810    Top5: 88.626    Loss: 1.282\n\n\n\n\n\nLearning Structured Sparsity in Deep Neural Networks\n\n\nThis research paper from the University of Pittsburgh, \"proposes a Structured Sparsity Learning (SSL) method to regularize the structures (i.e., filters, channels, filter shapes, and layer depth) of DNNs. SSL can: (1) learn a compact structure from a bigger DNN to reduce computation cost; (2) obtain a hardware-friendly structured sparsity of DNN to efficiently accelerate the DNN\u2019s evaluation.\"\n\n\nNote that this paper does not use pruning, but instead uses group regularization during the training to force weights towards zero, as a group.  We used a schedule which thresholds the regularized elements at a magnitude equal to the regularization strength.  At the end of the regularization phase, we save the final sparsity masks generated by the regularization, and exit.  Then we load this regularized model, remove the layers corresponding to the zeroed weight tensors (all of a layer's elements have a zero value).    \n\n\nBaseline training\n\n\nWe started by training the baseline ResNet20-Cifar dense network since we didn't have a pre-trained model.\n\n\n\n\nDistiller schedule: \ndistiller/examples/ssl/resnet20_cifar_baseline_training.yaml\n\n\nCheckpoint files: \ndistiller/examples/ssl/checkpoints/\n\n\n\n\n$ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.3 --epochs=180 --compress=../cifar10/resnet20/baseline_training.yaml -j=1 --deterministic\n\n\n\n\nRegularization\n\n\nThen we started training from scratch again, but this time we used Group Lasso regularization on entire layers:\n\nDistiller schedule: \ndistiller/examples/ssl/ssl_4D-removal_4L_training.yaml\n\n\n$ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.4 --epochs=180 --compress=../ssl/ssl_4D-removal_training.yaml -j=1 --deterministic\n\n\n\n\nThe diagram below shows the training of Resnet20/CIFAR10 using Group Lasso regularization on entire layers (in blue) vs. training Resnet20/CIFAR10  baseline (in red).  You may notice several interesting things:\n1. The LR-decay policy is the same, but the two sessions start with different initial LR values.\n2. The data-loss of the regularized training follows the same shape as the un-regularized training (baseline), and eventually the two seem to merge.\n3. We see similar behavior in the validation Top1 and Top5 accuracy results, but the regularized training eventually performs better.\n4. In the top right corner we see the behavior of the regularization loss (\nReg Loss\n), which actually increases for some time, until the data-loss has a sharp drop (after ~16K mini-batches), at which point the regularization loss also starts dropping.\n\n\n\nThis \nregularization\n yields 5 layers with zeroed weight tensors.  We load this model, remove the 5 layers, and start the fine tuning of the weights.  This process of layer removal is specific to ResNet for CIFAR, which we altered by adding code to skip over layers during the forward path.  When you export to ONNX, the removed layers do not participate in the forward path, so they don't get incarnated.  \n\n\nWe managed to remove 5 of the 16 3x3 convolution layers which dominate the computation time.  It's not bad, but we probably could have done better.\n\n\nFine-tuning\n\n\nDuring the \nfine-tuning\n process, because the removed layers do not participate in the forward path, they do not appear in the backward path and are not backpropogated: therefore they are completely disconnected from the network.\n\nWe copy the checkpoint file of the regularized model to \ncheckpoint_trained_4D_regularized_5Lremoved.pth.tar\n.\n\nDistiller schedule: \ndistiller/examples/ssl/ssl_4D-removal_finetuning.yaml\n\n\n$ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.1 --epochs=250 --resume=../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar --compress=../ssl/ssl_4D-removal_finetuning.yaml  -j=1 --deterministic\n\n\n\n\nResults\n\n\nOur baseline results for ResNet20 Cifar are: Top1=91.450 and  Top5=99.750\n\n\nWe used Distiller's GroupLassoRegularizer to remove 5 layers from Resnet20 (CIFAR10) with no degradation of the accuracies.\n\nThe regularized model exhibits really poor classification abilities: \n\n\n$ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --resume=../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar --evaluate\n\n=\n loading checkpoint ../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar\n   best top@1: 90.620\nLoaded compression schedule from checkpoint (epoch 179)\nRemoving layer: module.layer1.0.conv1 [layer=0 block=0 conv=0]\nRemoving layer: module.layer1.0.conv2 [layer=0 block=0 conv=1]\nRemoving layer: module.layer1.1.conv1 [layer=0 block=1 conv=0]\nRemoving layer: module.layer1.1.conv2 [layer=0 block=1 conv=1]\nRemoving layer: module.layer2.2.conv2 [layer=1 block=2 conv=1]\nFiles already downloaded and verified\nFiles already downloaded and verified\nDataset sizes:\n        training=45000\n        validation=5000\n        test=10000\n--- test ---------------------\n10000 samples (256 per mini-batch)\n==\n Top1: 22.290    Top5: 68.940    Loss: 5.172\n\n\n\n\nHowever, after fine-tuning, we recovered most of the accuracies loss, but not quite all of it: Top1=91.020 and Top5=99.670\n\n\nWe didn't spend time trying to wrestle with this network, and therefore didn't achieve SSL's published results (which showed that they managed to remove 6 layers and at the same time increase accuracies).\n\n\nPruning Filters for Efficient ConvNets\n\n\nQuoting the authors directly:\n\n\n\n\nWe present an acceleration method for CNNs, where we prune filters from CNNs that are identified as having a small effect on the output accuracy. By removing whole filters in the network together with their connecting feature maps, the computation costs are reduced significantly.\nIn contrast to pruning weights, this approach does not result in sparse connectivity patterns. Hence, it does not need the support of sparse convolution libraries and can work with existing efficient BLAS libraries for dense matrix multiplications.\n\n\n\n\nThe implementation of the research by Hao et al. required us to add filter-pruning sensitivity analysis, and support for \"network thinning\".\n\n\nAfter performing filter-pruning sensitivity analysis to assess which layers are more sensitive to the pruning of filters, we execute distiller.L1RankedStructureParameterPruner once in order to rank the filters of each layer by their L1-norm values, and then we prune the schedule-prescribed sparsity level.  \n\n\n\n\nDistiller schedule: \ndistiller/examples/pruning_filters_for_efficient_convnets/resnet56_cifar_filter_rank.yaml\n\n\nCheckpoint files: \ncheckpoint_finetuned.pth.tar\n\n\n\n\nThe excerpt from the schedule, displayed below, shows how we declare the L1RankedStructureParameterPruner.  This class currently ranks filters only, but because in the future this class may support ranking of various structures, you need to specify for each parameter both the target sparsity level, and the structure type ('3D' is filter-wise pruning).\n\n\npruners:\n  filter_pruner:\n    class: 'L1RankedStructureParameterPruner'\n    reg_regims:\n      'module.layer1.0.conv1.weight': [0.6, '3D']\n      'module.layer1.1.conv1.weight': [0.6, '3D']\n      'module.layer1.2.conv1.weight': [0.6, '3D']\n      'module.layer1.3.conv1.weight': [0.6, '3D']\n\n\n\n\nIn the policy, we specify that we want to invoke this pruner once, at epoch 180.  Because we are starting from a network which was trained for 180 epochs (see Baseline training below), the filter ranking is performed right at the outset of this schedule.\n\n\npolicies:\n  - pruner:\n      instance_name: filter_pruner\n    epochs: [180]\n\n\n\n\n\nFollowing the pruning, we want to \"physically\" remove the pruned filters from the network, which involves reconfiguring the Convolutional layers and the parameter tensors.  When we remove filters from Convolution layer \nn\n we need to perform several changes to the network:\n1. Shrink layer \nn\n's weights tensor, leaving only the \"important\" filters.\n2. Configure layer \nn\n's \n.out_channels\n member to its new, smaller, value.\n3. If a BN layer follows layer \nn\n, then it also needs to be reconfigured and its scale and shift parameter vectors need to be shrunk.\n4. If a Convolution layer follows the BN layer, then it will have less input channels which requires reconfiguration and shrinking of its weights.\n\n\nAll of this is performed by distiller.ResnetCifarFilterRemover which is also scheduled at epoch 180.  We call this process \"network thinning\".\n\n\nextensions:\n  net_thinner:\n      class: 'ResnetCifarFilterRemover'\n      thinning_func_str: resnet_cifar_remove_filters\n\n\n\n\n\nNetwork thinning requires us to understand the layer connectivity and data-dependency of the DNN, and we are working on a robust method to perform this.  On networks with topologies similar to ResNet (residuals) and GoogLeNet (inception), which have several inputs and outputs to/from Convolution layers, there is extra details to consider.\n\nOur current implementation is specific to certain layers in ResNet and is a bit fragile.  We will continue to improve and generalize this.\n\n\nBaseline training\n\n\nWe started by training the baseline ResNet56-Cifar dense network (180 epochs) since we didn't have a pre-trained model.\n\n\n\n\nDistiller schedule: \ndistiller/examples/pruning_filters_for_efficient_convnets/resnet56_cifar_baseline_training.yaml\n\n\nCheckpoint files: \ncheckpoint.resnet56_cifar_baseline.pth.tar\n\n\n\n\nResults\n\n\nWe trained a ResNet56-Cifar10 network and achieve accuracy results which are on-par with published results:\nTop1: 92.970 and Top5: 99.740.\n\n\nWe used Hao et al.'s algorithm to remove 37.3% of the original convolution MACs, while maintaining virtually the same accuracy as the baseline:\nTop1: 92.830 and Top5: 99.760", 
             "title": "Model Zoo"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#distiller-model-zoo",
-            "text": "",
+            "location": "/model_zoo/index.html#distiller-model-zoo", 
+            "text": "", 
             "title": "Distiller Model Zoo"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#how-to-contribute-models-to-the-model-zoo",
-            "text": "We encourage you to contribute new models to the Model Zoo.  We welcome implementations of published papers or of your own work.  To assure that models and algorithms shared with others are high-quality, please commit your models with the following:   Command-line arguments  Log files  PyTorch model",
+            "location": "/model_zoo/index.html#how-to-contribute-models-to-the-model-zoo", 
+            "text": "We encourage you to contribute new models to the Model Zoo.  We welcome implementations of published papers or of your own work.  To assure that models and algorithms shared with others are high-quality, please commit your models with the following:   Command-line arguments  Log files  PyTorch model", 
             "title": "How to contribute models to the Model Zoo"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#contents",
-            "text": "The Distiller model zoo is not a \"traditional\" model-zoo, because it does not necessarily contain best-in-class compressed models.  Instead, the model-zoo contains a number of deep learning models that have been compressed using Distiller following some well-known research papers.  These are meant to serve as examples of how Distiller can be used.  Each model contains a Distiller schedule detailing how the model was compressed, a PyTorch checkpoint, text logs and TensorBoard logs.  \ntable, th, td {\n    border: 1px solid black;\n}  \n   \n     Paper \n     Dataset \n     Network \n     Method & Granularity \n     Schedule \n     Features \n   \n   \n     Learning both Weights and Connections for Efficient Neural Networks \n     ImageNet \n     Alexnet \n     Element-wise pruning \n     Iterative; Manual \n     Magnitude thresholding based on a sensitivity quantifier. Element-wise sparsity sensitivity analysis \n   \n   \n     To prune, or not to prune: exploring the efficacy of pruning for model compression \n     ImageNet \n     MobileNet \n     Element-wise pruning \n     Automated gradual; Iterative \n     Magnitude thresholding based on target level \n   \n   \n     Learning Structured Sparsity in Deep Neural Networks \n     CIFAR10 \n     ResNet20 \n     Group regularization \n     1.Train with group-lasso 2.Remove zero groups and fine-tune \n     Group Lasso regularization. Groups: kernels (2D), channels, filters (3D), layers (4D), vectors (rows, cols) \n   \n   \n     Pruning Filters for Efficient ConvNets \n     CIFAR10 \n     ResNet56 \n     Filter ranking; guided by sensitivity analysis \n     1.Rank filters 2. Remove filters and channels 3.Fine-tune \n     One-shot ranking and pruning of filters; with network thinning",
+            "location": "/model_zoo/index.html#contents", 
+            "text": "The Distiller model zoo is not a \"traditional\" model-zoo, because it does not necessarily contain best-in-class compressed models.  Instead, the model-zoo contains a number of deep learning models that have been compressed using Distiller following some well-known research papers.  These are meant to serve as examples of how Distiller can be used.  Each model contains a Distiller schedule detailing how the model was compressed, a PyTorch checkpoint, text logs and TensorBoard logs.  \ntable, th, td {\n    border: 1px solid black;\n}  \n   \n     Paper \n     Dataset \n     Network \n     Method   Granularity \n     Schedule \n     Features \n   \n   \n     Learning both Weights and Connections for Efficient Neural Networks \n     ImageNet \n     Alexnet \n     Element-wise pruning \n     Iterative; Manual \n     Magnitude thresholding based on a sensitivity quantifier. Element-wise sparsity sensitivity analysis \n   \n   \n     To prune, or not to prune: exploring the efficacy of pruning for model compression \n     ImageNet \n     MobileNet \n     Element-wise pruning \n     Automated gradual; Iterative \n     Magnitude thresholding based on target level \n   \n   \n     Learning Structured Sparsity in Deep Neural Networks \n     CIFAR10 \n     ResNet20 \n     Group regularization \n     1.Train with group-lasso 2.Remove zero groups and fine-tune \n     Group Lasso regularization. Groups: kernels (2D), channels, filters (3D), layers (4D), vectors (rows, cols) \n   \n   \n     Pruning Filters for Efficient ConvNets \n     CIFAR10 \n     ResNet56 \n     Filter ranking; guided by sensitivity analysis \n     1.Rank filters 2. Remove filters and channels 3.Fine-tune \n     One-shot ranking and pruning of filters; with network thinning", 
             "title": "Contents"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#learning-both-weights-and-connections-for-efficient-neural-networks",
-            "text": "This schedule is an example of \"Iterative Pruning\" for Alexnet/Imagent, as described in chapter 3 of Song Han's PhD dissertation:  Efficient Methods and Hardware for Deep Learning  and in his paper  Learning both Weights and Connections for Efficient Neural Networks .    The Distiller schedule uses SensitivityPruner which is similar to MagnitudeParameterPruner, but instead of specifying \"raw\" thresholds, it uses a \"sensitivity parameter\".  Song Han's paper says that \"the pruning threshold is chosen as a quality parameter multiplied by the standard deviation of a layers weights,\" and this is not explained much further.  In Distiller, the \"quality parameter\" is referred to as \"sensitivity\" and\nis based on the values learned from performing sensitivity analysis.  Using a parameter that is related to the standard deviation is very helpful: under the assumption that the weights tensors are distributed normally, the standard deviation acts as a threshold normalizer.  Note that Distiller's implementation deviates slightly from the algorithm Song Han describes in his PhD dissertation, in that the threshold value is set only once.  In his PhD dissertation, Song Han describes a growing threshold, at each iteration.  This requires n+1 hyper-parameters (n being the number of pruning iterations we use): the threshold and the threshold increase (delta) at each pruning iteration.  Distiller's implementation takes advantage of the fact that as pruning progresses, more weights are pulled toward zero, and therefore the threshold \"traps\" more weights.  Thus, we can use less hyper-parameters and achieve the same results.   Distiller schedule:  distiller/examples/sensitivity-pruning/alexnet.schedule_sensitivity.yaml  Checkpoint file:  alexnet.checkpoint.89.pth.tar",
+            "location": "/model_zoo/index.html#learning-both-weights-and-connections-for-efficient-neural-networks", 
+            "text": "This schedule is an example of \"Iterative Pruning\" for Alexnet/Imagent, as described in chapter 3 of Song Han's PhD dissertation:  Efficient Methods and Hardware for Deep Learning  and in his paper  Learning both Weights and Connections for Efficient Neural Networks .    The Distiller schedule uses SensitivityPruner which is similar to MagnitudeParameterPruner, but instead of specifying \"raw\" thresholds, it uses a \"sensitivity parameter\".  Song Han's paper says that \"the pruning threshold is chosen as a quality parameter multiplied by the standard deviation of a layers weights,\" and this is not explained much further.  In Distiller, the \"quality parameter\" is referred to as \"sensitivity\" and\nis based on the values learned from performing sensitivity analysis.  Using a parameter that is related to the standard deviation is very helpful: under the assumption that the weights tensors are distributed normally, the standard deviation acts as a threshold normalizer.  Note that Distiller's implementation deviates slightly from the algorithm Song Han describes in his PhD dissertation, in that the threshold value is set only once.  In his PhD dissertation, Song Han describes a growing threshold, at each iteration.  This requires n+1 hyper-parameters (n being the number of pruning iterations we use): the threshold and the threshold increase (delta) at each pruning iteration.  Distiller's implementation takes advantage of the fact that as pruning progresses, more weights are pulled toward zero, and therefore the threshold \"traps\" more weights.  Thus, we can use less hyper-parameters and achieve the same results.   Distiller schedule:  distiller/examples/sensitivity-pruning/alexnet.schedule_sensitivity.yaml  Checkpoint file:  alexnet.checkpoint.89.pth.tar", 
             "title": "Learning both Weights and Connections for Efficient Neural Networks"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#results",
-            "text": "Our reference is TorchVision's pretrained Alexnet model which has a Top1 accuracy of 56.55 and Top5=79.09.  We prune away 88.44% of the parameters and achieve  Top1=56.61 and Top5=79.45.\nSong Han prunes 89% of the parameters, which is slightly better than our results.  Parameters:\n+----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n|    | Name                      | Shape            |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean\n|----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n|  0 | features.module.0.weight  | (64, 3, 11, 11)  |         23232 |          13411 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   42.27359 | 0.14391 | -0.00002 |    0.08805 |\n|  1 | features.module.3.weight  | (192, 64, 5, 5)  |        307200 |         115560 |    0.00000 |    0.00000 |  0.00000 |  1.91243 |  0.00000 |   62.38281 | 0.04703 | -0.00250 |    0.02289 |\n|  2 | features.module.6.weight  | (384, 192, 3, 3) |        663552 |         256565 |    0.00000 |    0.00000 |  0.00000 |  6.18490 |  0.00000 |   61.33445 | 0.03354 | -0.00184 |    0.01803 |\n|  3 | features.module.8.weight  | (256, 384, 3, 3) |        884736 |         315065 |    0.00000 |    0.00000 |  0.00000 |  6.96411 |  0.00000 |   64.38881 | 0.02646 | -0.00168 |    0.01422 |\n|  4 | features.module.10.weight | (256, 256, 3, 3) |        589824 |         186938 |    0.00000 |    0.00000 |  0.00000 | 15.49225 |  0.00000 |   68.30614 | 0.02714 | -0.00246 |    0.01409 |\n|  5 | classifier.1.weight       | (4096, 9216)     |      37748736 |        3398881 |    0.00000 |    0.21973 |  0.00000 |  0.21973 |  0.00000 |   90.99604 | 0.00589 | -0.00020 |    0.00168 |\n|  6 | classifier.4.weight       | (4096, 4096)     |      16777216 |        1782769 |    0.21973 |    3.46680 |  0.00000 |  3.46680 |  0.00000 |   89.37387 | 0.00849 | -0.00066 |    0.00263 |\n|  7 | classifier.6.weight       | (1000, 4096)     |       4096000 |         994738 |    3.36914 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   75.71440 | 0.01718 |  0.00030 |    0.00778 |\n|  8 | Total sparsity:           | -                |      61090496 |        7063928 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   88.43694 | 0.00000 |  0.00000 |    0.00000 |\n+----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n 2018-04-04 21:30:52,499 - Total sparsity: 88.44\n\n 2018-04-04 21:30:52,499 - --- validate (epoch=89)-----------\n 2018-04-04 21:30:52,499 - 128116 samples (256 per mini-batch)\n 2018-04-04 21:31:35,357 - ==> Top1: 51.838    Top5: 74.817    Loss: 2.150\n\n 2018-04-04 21:31:39,251 - --- test ---------------------\n 2018-04-04 21:31:39,252 - 50000 samples (256 per mini-batch)\n 2018-04-04 21:32:01,274 - ==> Top1: 56.606    Top5: 79.446    Loss: 1.893",
+            "location": "/model_zoo/index.html#results", 
+            "text": "Our reference is TorchVision's pretrained Alexnet model which has a Top1 accuracy of 56.55 and Top5=79.09.  We prune away 88.44% of the parameters and achieve  Top1=56.61 and Top5=79.45.\nSong Han prunes 89% of the parameters, which is slightly better than our results.  Parameters:\n+----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n|    | Name                      | Shape            |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean\n|----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n|  0 | features.module.0.weight  | (64, 3, 11, 11)  |         23232 |          13411 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   42.27359 | 0.14391 | -0.00002 |    0.08805 |\n|  1 | features.module.3.weight  | (192, 64, 5, 5)  |        307200 |         115560 |    0.00000 |    0.00000 |  0.00000 |  1.91243 |  0.00000 |   62.38281 | 0.04703 | -0.00250 |    0.02289 |\n|  2 | features.module.6.weight  | (384, 192, 3, 3) |        663552 |         256565 |    0.00000 |    0.00000 |  0.00000 |  6.18490 |  0.00000 |   61.33445 | 0.03354 | -0.00184 |    0.01803 |\n|  3 | features.module.8.weight  | (256, 384, 3, 3) |        884736 |         315065 |    0.00000 |    0.00000 |  0.00000 |  6.96411 |  0.00000 |   64.38881 | 0.02646 | -0.00168 |    0.01422 |\n|  4 | features.module.10.weight | (256, 256, 3, 3) |        589824 |         186938 |    0.00000 |    0.00000 |  0.00000 | 15.49225 |  0.00000 |   68.30614 | 0.02714 | -0.00246 |    0.01409 |\n|  5 | classifier.1.weight       | (4096, 9216)     |      37748736 |        3398881 |    0.00000 |    0.21973 |  0.00000 |  0.21973 |  0.00000 |   90.99604 | 0.00589 | -0.00020 |    0.00168 |\n|  6 | classifier.4.weight       | (4096, 4096)     |      16777216 |        1782769 |    0.21973 |    3.46680 |  0.00000 |  3.46680 |  0.00000 |   89.37387 | 0.00849 | -0.00066 |    0.00263 |\n|  7 | classifier.6.weight       | (1000, 4096)     |       4096000 |         994738 |    3.36914 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   75.71440 | 0.01718 |  0.00030 |    0.00778 |\n|  8 | Total sparsity:           | -                |      61090496 |        7063928 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   88.43694 | 0.00000 |  0.00000 |    0.00000 |\n+----+---------------------------+------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n 2018-04-04 21:30:52,499 - Total sparsity: 88.44\n\n 2018-04-04 21:30:52,499 - --- validate (epoch=89)-----------\n 2018-04-04 21:30:52,499 - 128116 samples (256 per mini-batch)\n 2018-04-04 21:31:35,357 - ==  Top1: 51.838    Top5: 74.817    Loss: 2.150\n\n 2018-04-04 21:31:39,251 - --- test ---------------------\n 2018-04-04 21:31:39,252 - 50000 samples (256 per mini-batch)\n 2018-04-04 21:32:01,274 - ==  Top1: 56.606    Top5: 79.446    Loss: 1.893", 
             "title": "Results"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#to-prune-or-not-to-prune-exploring-the-efficacy-of-pruning-for-model-compression",
-            "text": "In their paper Zhu and Gupta, \"compare the accuracy of large, but pruned models (large-sparse) and their\nsmaller, but dense (small-dense) counterparts with identical memory footprint.\"\nThey also \"propose a new gradual pruning technique that is simple and straightforward to apply across a variety of models/datasets with\nminimal tuning.\"  This pruning schedule is implemented by distiller.AutomatedGradualPruner, which increases the sparsity level (expressed as a percentage of zero-valued elements) gradually over several pruning steps.  Distiller's implementation only prunes elements once in an epoch (the model is fine-tuned in between pruning events), which is a small deviation from Zhu and Gupta's paper.  The research paper specifies the schedule in terms of mini-batches, while our implementation specifies the schedule in terms of epochs.  We feel that using epochs performs well, and is more \"stable\", since the number of mini-batches will change, if you change the batch size.  ImageNet files:   Distiller schedule:  distiller/examples/agp-pruning/mobilenet.imagenet.schedule_agp.yaml  Checkpoint file:  checkpoint.pth.tar   ResNet18 files:   Distiller schedule:  distiller/examples/agp-pruning/resnet18.schedule_agp.yaml  Checkpoint file:  checkpoint.pth.tar",
+            "location": "/model_zoo/index.html#to-prune-or-not-to-prune-exploring-the-efficacy-of-pruning-for-model-compression", 
+            "text": "In their paper Zhu and Gupta, \"compare the accuracy of large, but pruned models (large-sparse) and their\nsmaller, but dense (small-dense) counterparts with identical memory footprint.\"\nThey also \"propose a new gradual pruning technique that is simple and straightforward to apply across a variety of models/datasets with\nminimal tuning.\"  This pruning schedule is implemented by distiller.AutomatedGradualPruner, which increases the sparsity level (expressed as a percentage of zero-valued elements) gradually over several pruning steps.  Distiller's implementation only prunes elements once in an epoch (the model is fine-tuned in between pruning events), which is a small deviation from Zhu and Gupta's paper.  The research paper specifies the schedule in terms of mini-batches, while our implementation specifies the schedule in terms of epochs.  We feel that using epochs performs well, and is more \"stable\", since the number of mini-batches will change, if you change the batch size.  ImageNet files:   Distiller schedule:  distiller/examples/agp-pruning/mobilenet.imagenet.schedule_agp.yaml  Checkpoint file:  checkpoint.pth.tar   ResNet18 files:   Distiller schedule:  distiller/examples/agp-pruning/resnet18.schedule_agp.yaml  Checkpoint file:  checkpoint.pth.tar", 
             "title": "To prune, or not to prune: exploring the efficacy of pruning for model compression"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#results_1",
-            "text": "As our baseline we used a  pretrained PyTorch MobileNet model  (width=1) which has Top1=68.848 and Top5=88.740. \nIn their paper, Zhu and Gupta prune 50% of the elements of MobileNet (width=1) with a 1.1% drop in accuracy.  We pruned about 51.6% of the elements, with virtually no change in the accuracies (Top1: 68.808 and Top5: 88.656).  We didn't try to prune more than this, but we do note that the baseline accuracy that we used is almost 2% lower than the accuracy published in the paper.    +----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n|    | Name                     | Shape              |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean |\n|----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n|  0 | module.model.0.0.weight  | (32, 3, 3, 3)      |           864 |            864 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.14466 |  0.00103 |    0.06508 |\n|  1 | module.model.1.0.weight  | (32, 1, 3, 3)      |           288 |            288 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.32146 |  0.01020 |    0.12932 |\n|  2 | module.model.1.3.weight  | (64, 32, 1, 1)     |          2048 |           2048 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.11942 |  0.00024 |    0.03627 |\n|  3 | module.model.2.0.weight  | (64, 1, 3, 3)      |           576 |            576 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.15809 |  0.00543 |    0.11513 |\n|  4 | module.model.2.3.weight  | (128, 64, 1, 1)    |          8192 |           8192 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08442 | -0.00031 |    0.04182 |\n|  5 | module.model.3.0.weight  | (128, 1, 3, 3)     |          1152 |           1152 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.16780 |  0.00125 |    0.10545 |\n|  6 | module.model.3.3.weight  | (128, 128, 1, 1)   |         16384 |          16384 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07126 | -0.00197 |    0.04123 |\n|  7 | module.model.4.0.weight  | (128, 1, 3, 3)     |          1152 |           1152 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.10182 |  0.00171 |    0.08719 |\n|  8 | module.model.4.3.weight  | (256, 128, 1, 1)   |         32768 |          13108 |    0.00000 |    0.00000 | 10.15625 | 59.99756 | 12.50000 |   59.99756 | 0.05543 | -0.00002 |    0.02760 |\n|  9 | module.model.5.0.weight  | (256, 1, 3, 3)     |          2304 |           2304 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.12516 | -0.00288 |    0.08058 |\n| 10 | module.model.5.3.weight  | (256, 256, 1, 1)   |         65536 |          26215 |    0.00000 |    0.00000 | 12.50000 | 59.99908 | 23.82812 |   59.99908 | 0.04453 |  0.00002 |    0.02271 |\n| 11 | module.model.6.0.weight  | (256, 1, 3, 3)     |          2304 |           2304 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08024 |  0.00252 |    0.06377 |\n| 12 | module.model.6.3.weight  | (512, 256, 1, 1)   |        131072 |          52429 |    0.00000 |    0.00000 | 23.82812 | 59.99985 | 14.25781 |   59.99985 | 0.03561 | -0.00057 |    0.01779 |\n| 13 | module.model.7.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.11008 | -0.00018 |    0.06829 |\n| 14 | module.model.7.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 14.25781 | 59.99985 | 21.28906 |   59.99985 | 0.02944 | -0.00060 |    0.01515 |\n| 15 | module.model.8.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08258 |  0.00370 |    0.04905 |\n| 16 | module.model.8.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 21.28906 | 59.99985 | 28.51562 |   59.99985 | 0.02865 | -0.00046 |    0.01465 |\n| 17 | module.model.9.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07578 |  0.00468 |    0.04201 |\n| 18 | module.model.9.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 28.51562 | 59.99985 | 23.43750 |   59.99985 | 0.02939 | -0.00044 |    0.01511 |\n| 19 | module.model.10.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07091 |  0.00014 |    0.04306 |\n| 20 | module.model.10.3.weight | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 24.60938 | 59.99985 | 20.89844 |   59.99985 | 0.03095 | -0.00059 |    0.01672 |\n| 21 | module.model.11.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.05729 | -0.00518 |    0.04267 |\n| 22 | module.model.11.3.weight | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 20.89844 | 59.99985 | 17.57812 |   59.99985 | 0.03229 | -0.00044 |    0.01797 |\n| 23 | module.model.12.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.04981 | -0.00136 |    0.03967 |\n| 24 | module.model.12.3.weight | (1024, 512, 1, 1)  |        524288 |         209716 |    0.00000 |    0.00000 | 16.01562 | 59.99985 | 44.23828 |   59.99985 | 0.02514 | -0.00106 |    0.01278 |\n| 25 | module.model.13.0.weight | (1024, 1, 3, 3)    |          9216 |           9216 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.02396 | -0.00949 |    0.01549 |\n| 26 | module.model.13.3.weight | (1024, 1024, 1, 1) |       1048576 |         419431 |    0.00000 |    0.00000 | 44.72656 | 59.99994 |  1.46484 |   59.99994 | 0.01801 | -0.00017 |    0.00931 |\n| 27 | module.fc.weight         | (1000, 1024)       |       1024000 |         409600 |    1.46484 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   60.00000 | 0.05078 |  0.00271 |    0.02734 |\n| 28 | Total sparsity:          | -                  |       4209088 |        1726917 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   58.97171 | 0.00000 |  0.00000 |    0.00000 |\n+----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\nTotal sparsity: 58.97\n\n--- validate (epoch=199)-----------\n128116 samples (256 per mini-batch)\n==> Top1: 65.337    Top5: 84.984    Loss: 1.494\n\n--- test ---------------------\n50000 samples (256 per mini-batch)\n==> Top1: 68.810    Top5: 88.626    Loss: 1.282",
+            "location": "/model_zoo/index.html#results_1", 
+            "text": "As our baseline we used a  pretrained PyTorch MobileNet model  (width=1) which has Top1=68.848 and Top5=88.740. \nIn their paper, Zhu and Gupta prune 50% of the elements of MobileNet (width=1) with a 1.1% drop in accuracy.  We pruned about 51.6% of the elements, with virtually no change in the accuracies (Top1: 68.808 and Top5: 88.656).  We didn't try to prune more than this, but we do note that the baseline accuracy that we used is almost 2% lower than the accuracy published in the paper.    +----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\n|    | Name                     | Shape              |   NNZ (dense) |   NNZ (sparse) |   Cols (%) |   Rows (%) |   Ch (%) |   2D (%) |   3D (%) |   Fine (%) |     Std |     Mean |   Abs-Mean |\n|----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------|\n|  0 | module.model.0.0.weight  | (32, 3, 3, 3)      |           864 |            864 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.14466 |  0.00103 |    0.06508 |\n|  1 | module.model.1.0.weight  | (32, 1, 3, 3)      |           288 |            288 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.32146 |  0.01020 |    0.12932 |\n|  2 | module.model.1.3.weight  | (64, 32, 1, 1)     |          2048 |           2048 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.11942 |  0.00024 |    0.03627 |\n|  3 | module.model.2.0.weight  | (64, 1, 3, 3)      |           576 |            576 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.15809 |  0.00543 |    0.11513 |\n|  4 | module.model.2.3.weight  | (128, 64, 1, 1)    |          8192 |           8192 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08442 | -0.00031 |    0.04182 |\n|  5 | module.model.3.0.weight  | (128, 1, 3, 3)     |          1152 |           1152 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.16780 |  0.00125 |    0.10545 |\n|  6 | module.model.3.3.weight  | (128, 128, 1, 1)   |         16384 |          16384 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07126 | -0.00197 |    0.04123 |\n|  7 | module.model.4.0.weight  | (128, 1, 3, 3)     |          1152 |           1152 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.10182 |  0.00171 |    0.08719 |\n|  8 | module.model.4.3.weight  | (256, 128, 1, 1)   |         32768 |          13108 |    0.00000 |    0.00000 | 10.15625 | 59.99756 | 12.50000 |   59.99756 | 0.05543 | -0.00002 |    0.02760 |\n|  9 | module.model.5.0.weight  | (256, 1, 3, 3)     |          2304 |           2304 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.12516 | -0.00288 |    0.08058 |\n| 10 | module.model.5.3.weight  | (256, 256, 1, 1)   |         65536 |          26215 |    0.00000 |    0.00000 | 12.50000 | 59.99908 | 23.82812 |   59.99908 | 0.04453 |  0.00002 |    0.02271 |\n| 11 | module.model.6.0.weight  | (256, 1, 3, 3)     |          2304 |           2304 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08024 |  0.00252 |    0.06377 |\n| 12 | module.model.6.3.weight  | (512, 256, 1, 1)   |        131072 |          52429 |    0.00000 |    0.00000 | 23.82812 | 59.99985 | 14.25781 |   59.99985 | 0.03561 | -0.00057 |    0.01779 |\n| 13 | module.model.7.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.11008 | -0.00018 |    0.06829 |\n| 14 | module.model.7.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 14.25781 | 59.99985 | 21.28906 |   59.99985 | 0.02944 | -0.00060 |    0.01515 |\n| 15 | module.model.8.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.08258 |  0.00370 |    0.04905 |\n| 16 | module.model.8.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 21.28906 | 59.99985 | 28.51562 |   59.99985 | 0.02865 | -0.00046 |    0.01465 |\n| 17 | module.model.9.0.weight  | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07578 |  0.00468 |    0.04201 |\n| 18 | module.model.9.3.weight  | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 28.51562 | 59.99985 | 23.43750 |   59.99985 | 0.02939 | -0.00044 |    0.01511 |\n| 19 | module.model.10.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.07091 |  0.00014 |    0.04306 |\n| 20 | module.model.10.3.weight | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 24.60938 | 59.99985 | 20.89844 |   59.99985 | 0.03095 | -0.00059 |    0.01672 |\n| 21 | module.model.11.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.05729 | -0.00518 |    0.04267 |\n| 22 | module.model.11.3.weight | (512, 512, 1, 1)   |        262144 |         104858 |    0.00000 |    0.00000 | 20.89844 | 59.99985 | 17.57812 |   59.99985 | 0.03229 | -0.00044 |    0.01797 |\n| 23 | module.model.12.0.weight | (512, 1, 3, 3)     |          4608 |           4608 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.04981 | -0.00136 |    0.03967 |\n| 24 | module.model.12.3.weight | (1024, 512, 1, 1)  |        524288 |         209716 |    0.00000 |    0.00000 | 16.01562 | 59.99985 | 44.23828 |   59.99985 | 0.02514 | -0.00106 |    0.01278 |\n| 25 | module.model.13.0.weight | (1024, 1, 3, 3)    |          9216 |           9216 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |    0.00000 | 0.02396 | -0.00949 |    0.01549 |\n| 26 | module.model.13.3.weight | (1024, 1024, 1, 1) |       1048576 |         419431 |    0.00000 |    0.00000 | 44.72656 | 59.99994 |  1.46484 |   59.99994 | 0.01801 | -0.00017 |    0.00931 |\n| 27 | module.fc.weight         | (1000, 1024)       |       1024000 |         409600 |    1.46484 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   60.00000 | 0.05078 |  0.00271 |    0.02734 |\n| 28 | Total sparsity:          | -                  |       4209088 |        1726917 |    0.00000 |    0.00000 |  0.00000 |  0.00000 |  0.00000 |   58.97171 | 0.00000 |  0.00000 |    0.00000 |\n+----+--------------------------+--------------------+---------------+----------------+------------+------------+----------+----------+----------+------------+---------+----------+------------+\nTotal sparsity: 58.97\n\n--- validate (epoch=199)-----------\n128116 samples (256 per mini-batch)\n==  Top1: 65.337    Top5: 84.984    Loss: 1.494\n\n--- test ---------------------\n50000 samples (256 per mini-batch)\n==  Top1: 68.810    Top5: 88.626    Loss: 1.282", 
             "title": "Results"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#learning-structured-sparsity-in-deep-neural-networks",
-            "text": "This research paper from the University of Pittsburgh, \"proposes a Structured Sparsity Learning (SSL) method to regularize the structures (i.e., filters, channels, filter shapes, and layer depth) of DNNs. SSL can: (1) learn a compact structure from a bigger DNN to reduce computation cost; (2) obtain a hardware-friendly structured sparsity of DNN to efficiently accelerate the DNN\u2019s evaluation.\"  Note that this paper does not use pruning, but instead uses group regularization during the training to force weights towards zero, as a group.  We used a schedule which thresholds the regularized elements at a magnitude equal to the regularization strength.  At the end of the regularization phase, we save the final sparsity masks generated by the regularization, and exit.  Then we load this regularized model, remove the layers corresponding to the zeroed weight tensors (all of a layer's elements have a zero value).",
+            "location": "/model_zoo/index.html#learning-structured-sparsity-in-deep-neural-networks", 
+            "text": "This research paper from the University of Pittsburgh, \"proposes a Structured Sparsity Learning (SSL) method to regularize the structures (i.e., filters, channels, filter shapes, and layer depth) of DNNs. SSL can: (1) learn a compact structure from a bigger DNN to reduce computation cost; (2) obtain a hardware-friendly structured sparsity of DNN to efficiently accelerate the DNN\u2019s evaluation.\"  Note that this paper does not use pruning, but instead uses group regularization during the training to force weights towards zero, as a group.  We used a schedule which thresholds the regularized elements at a magnitude equal to the regularization strength.  At the end of the regularization phase, we save the final sparsity masks generated by the regularization, and exit.  Then we load this regularized model, remove the layers corresponding to the zeroed weight tensors (all of a layer's elements have a zero value).", 
             "title": "Learning Structured Sparsity in Deep Neural Networks"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#baseline-training",
-            "text": "We started by training the baseline ResNet20-Cifar dense network since we didn't have a pre-trained model.   Distiller schedule:  distiller/examples/ssl/resnet20_cifar_baseline_training.yaml  Checkpoint files:  distiller/examples/ssl/checkpoints/   $ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.3 --epochs=180 --compress=../cifar10/resnet20/baseline_training.yaml -j=1 --deterministic",
+            "location": "/model_zoo/index.html#baseline-training", 
+            "text": "We started by training the baseline ResNet20-Cifar dense network since we didn't have a pre-trained model.   Distiller schedule:  distiller/examples/ssl/resnet20_cifar_baseline_training.yaml  Checkpoint files:  distiller/examples/ssl/checkpoints/   $ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.3 --epochs=180 --compress=../cifar10/resnet20/baseline_training.yaml -j=1 --deterministic", 
             "title": "Baseline training"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#regularization",
-            "text": "Then we started training from scratch again, but this time we used Group Lasso regularization on entire layers: \nDistiller schedule:  distiller/examples/ssl/ssl_4D-removal_4L_training.yaml  $ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.4 --epochs=180 --compress=../ssl/ssl_4D-removal_training.yaml -j=1 --deterministic  The diagram below shows the training of Resnet20/CIFAR10 using Group Lasso regularization on entire layers (in blue) vs. training Resnet20/CIFAR10  baseline (in red).  You may notice several interesting things:\n1. The LR-decay policy is the same, but the two sessions start with different initial LR values.\n2. The data-loss of the regularized training follows the same shape as the un-regularized training (baseline), and eventually the two seem to merge.\n3. We see similar behavior in the validation Top1 and Top5 accuracy results, but the regularized training eventually performs better.\n4. In the top right corner we see the behavior of the regularization loss ( Reg Loss ), which actually increases for some time, until the data-loss has a sharp drop (after ~16K mini-batches), at which point the regularization loss also starts dropping.  This  regularization  yields 5 layers with zeroed weight tensors.  We load this model, remove the 5 layers, and start the fine tuning of the weights.  This process of layer removal is specific to ResNet for CIFAR, which we altered by adding code to skip over layers during the forward path.  When you export to ONNX, the removed layers do not participate in the forward path, so they don't get incarnated.    We managed to remove 5 of the 16 3x3 convolution layers which dominate the computation time.  It's not bad, but we probably could have done better.",
+            "location": "/model_zoo/index.html#regularization", 
+            "text": "Then we started training from scratch again, but this time we used Group Lasso regularization on entire layers: \nDistiller schedule:  distiller/examples/ssl/ssl_4D-removal_4L_training.yaml  $ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.4 --epochs=180 --compress=../ssl/ssl_4D-removal_training.yaml -j=1 --deterministic  The diagram below shows the training of Resnet20/CIFAR10 using Group Lasso regularization on entire layers (in blue) vs. training Resnet20/CIFAR10  baseline (in red).  You may notice several interesting things:\n1. The LR-decay policy is the same, but the two sessions start with different initial LR values.\n2. The data-loss of the regularized training follows the same shape as the un-regularized training (baseline), and eventually the two seem to merge.\n3. We see similar behavior in the validation Top1 and Top5 accuracy results, but the regularized training eventually performs better.\n4. In the top right corner we see the behavior of the regularization loss ( Reg Loss ), which actually increases for some time, until the data-loss has a sharp drop (after ~16K mini-batches), at which point the regularization loss also starts dropping.  This  regularization  yields 5 layers with zeroed weight tensors.  We load this model, remove the 5 layers, and start the fine tuning of the weights.  This process of layer removal is specific to ResNet for CIFAR, which we altered by adding code to skip over layers during the forward path.  When you export to ONNX, the removed layers do not participate in the forward path, so they don't get incarnated.    We managed to remove 5 of the 16 3x3 convolution layers which dominate the computation time.  It's not bad, but we probably could have done better.", 
             "title": "Regularization"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#fine-tuning",
-            "text": "During the  fine-tuning  process, because the removed layers do not participate in the forward path, they do not appear in the backward path and are not backpropogated: therefore they are completely disconnected from the network. \nWe copy the checkpoint file of the regularized model to  checkpoint_trained_4D_regularized_5Lremoved.pth.tar . \nDistiller schedule:  distiller/examples/ssl/ssl_4D-removal_finetuning.yaml  $ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.1 --epochs=250 --resume=../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar --compress=../ssl/ssl_4D-removal_finetuning.yaml  -j=1 --deterministic",
+            "location": "/model_zoo/index.html#fine-tuning", 
+            "text": "During the  fine-tuning  process, because the removed layers do not participate in the forward path, they do not appear in the backward path and are not backpropogated: therefore they are completely disconnected from the network. \nWe copy the checkpoint file of the regularized model to  checkpoint_trained_4D_regularized_5Lremoved.pth.tar . \nDistiller schedule:  distiller/examples/ssl/ssl_4D-removal_finetuning.yaml  $ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --lr=0.1 --epochs=250 --resume=../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar --compress=../ssl/ssl_4D-removal_finetuning.yaml  -j=1 --deterministic", 
             "title": "Fine-tuning"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#results_2",
-            "text": "Our baseline results for ResNet20 Cifar are: Top1=91.450 and  Top5=99.750  We used Distiller's GroupLassoRegularizer to remove 5 layers from Resnet20 (CIFAR10) with no degradation of the accuracies. \nThe regularized model exhibits really poor classification abilities:   $ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --resume=../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar --evaluate\n\n=> loading checkpoint ../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar\n   best top@1: 90.620\nLoaded compression schedule from checkpoint (epoch 179)\nRemoving layer: module.layer1.0.conv1 [layer=0 block=0 conv=0]\nRemoving layer: module.layer1.0.conv2 [layer=0 block=0 conv=1]\nRemoving layer: module.layer1.1.conv1 [layer=0 block=1 conv=0]\nRemoving layer: module.layer1.1.conv2 [layer=0 block=1 conv=1]\nRemoving layer: module.layer2.2.conv2 [layer=1 block=2 conv=1]\nFiles already downloaded and verified\nFiles already downloaded and verified\nDataset sizes:\n        training=45000\n        validation=5000\n        test=10000\n--- test ---------------------\n10000 samples (256 per mini-batch)\n==> Top1: 22.290    Top5: 68.940    Loss: 5.172  However, after fine-tuning, we recovered most of the accuracies loss, but not quite all of it: Top1=91.020 and Top5=99.670  We didn't spend time trying to wrestle with this network, and therefore didn't achieve SSL's published results (which showed that they managed to remove 6 layers and at the same time increase accuracies).",
+            "location": "/model_zoo/index.html#results_2", 
+            "text": "Our baseline results for ResNet20 Cifar are: Top1=91.450 and  Top5=99.750  We used Distiller's GroupLassoRegularizer to remove 5 layers from Resnet20 (CIFAR10) with no degradation of the accuracies. \nThe regularized model exhibits really poor classification abilities:   $ time python3 compress_classifier.py --arch resnet20_cifar  ../data.cifar10 -p=50 --resume=../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar --evaluate\n\n=  loading checkpoint ../cifar10/resnet20/checkpoint_trained_4D_regularized_5Lremoved.pth.tar\n   best top@1: 90.620\nLoaded compression schedule from checkpoint (epoch 179)\nRemoving layer: module.layer1.0.conv1 [layer=0 block=0 conv=0]\nRemoving layer: module.layer1.0.conv2 [layer=0 block=0 conv=1]\nRemoving layer: module.layer1.1.conv1 [layer=0 block=1 conv=0]\nRemoving layer: module.layer1.1.conv2 [layer=0 block=1 conv=1]\nRemoving layer: module.layer2.2.conv2 [layer=1 block=2 conv=1]\nFiles already downloaded and verified\nFiles already downloaded and verified\nDataset sizes:\n        training=45000\n        validation=5000\n        test=10000\n--- test ---------------------\n10000 samples (256 per mini-batch)\n==  Top1: 22.290    Top5: 68.940    Loss: 5.172  However, after fine-tuning, we recovered most of the accuracies loss, but not quite all of it: Top1=91.020 and Top5=99.670  We didn't spend time trying to wrestle with this network, and therefore didn't achieve SSL's published results (which showed that they managed to remove 6 layers and at the same time increase accuracies).", 
             "title": "Results"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#pruning-filters-for-efficient-convnets",
-            "text": "Quoting the authors directly:   We present an acceleration method for CNNs, where we prune filters from CNNs that are identified as having a small effect on the output accuracy. By removing whole filters in the network together with their connecting feature maps, the computation costs are reduced significantly.\nIn contrast to pruning weights, this approach does not result in sparse connectivity patterns. Hence, it does not need the support of sparse convolution libraries and can work with existing efficient BLAS libraries for dense matrix multiplications.   The implementation of the research by Hao et al. required us to add filter-pruning sensitivity analysis, and support for \"network thinning\".  After performing filter-pruning sensitivity analysis to assess which layers are more sensitive to the pruning of filters, we execute distiller.L1RankedStructureParameterPruner once in order to rank the filters of each layer by their L1-norm values, and then we prune the schedule-prescribed sparsity level.     Distiller schedule:  distiller/examples/pruning_filters_for_efficient_convnets/resnet56_cifar_filter_rank.yaml  Checkpoint files:  checkpoint_finetuned.pth.tar   The excerpt from the schedule, displayed below, shows how we declare the L1RankedStructureParameterPruner.  This class currently ranks filters only, but because in the future this class may support ranking of various structures, you need to specify for each parameter both the target sparsity level, and the structure type ('3D' is filter-wise pruning).  pruners:\n  filter_pruner:\n    class: 'L1RankedStructureParameterPruner'\n    reg_regims:\n      'module.layer1.0.conv1.weight': [0.6, '3D']\n      'module.layer1.1.conv1.weight': [0.6, '3D']\n      'module.layer1.2.conv1.weight': [0.6, '3D']\n      'module.layer1.3.conv1.weight': [0.6, '3D']  In the policy, we specify that we want to invoke this pruner once, at epoch 180.  Because we are starting from a network which was trained for 180 epochs (see Baseline training below), the filter ranking is performed right at the outset of this schedule.  policies:\n  - pruner:\n      instance_name: filter_pruner\n    epochs: [180]  Following the pruning, we want to \"physically\" remove the pruned filters from the network, which involves reconfiguring the Convolutional layers and the parameter tensors.  When we remove filters from Convolution layer  n  we need to perform several changes to the network:\n1. Shrink layer  n 's weights tensor, leaving only the \"important\" filters.\n2. Configure layer  n 's  .out_channels  member to its new, smaller, value.\n3. If a BN layer follows layer  n , then it also needs to be reconfigured and its scale and shift parameter vectors need to be shrunk.\n4. If a Convolution layer follows the BN layer, then it will have less input channels which requires reconfiguration and shrinking of its weights.  All of this is performed by distiller.ResnetCifarFilterRemover which is also scheduled at epoch 180.  We call this process \"network thinning\".  extensions:\n  net_thinner:\n      class: 'ResnetCifarFilterRemover'\n      thinning_func_str: resnet_cifar_remove_filters  Network thinning requires us to understand the layer connectivity and data-dependency of the DNN, and we are working on a robust method to perform this.  On networks with topologies similar to ResNet (residuals) and GoogLeNet (inception), which have several inputs and outputs to/from Convolution layers, there is extra details to consider. \nOur current implementation is specific to certain layers in ResNet and is a bit fragile.  We will continue to improve and generalize this.",
+            "location": "/model_zoo/index.html#pruning-filters-for-efficient-convnets", 
+            "text": "Quoting the authors directly:   We present an acceleration method for CNNs, where we prune filters from CNNs that are identified as having a small effect on the output accuracy. By removing whole filters in the network together with their connecting feature maps, the computation costs are reduced significantly.\nIn contrast to pruning weights, this approach does not result in sparse connectivity patterns. Hence, it does not need the support of sparse convolution libraries and can work with existing efficient BLAS libraries for dense matrix multiplications.   The implementation of the research by Hao et al. required us to add filter-pruning sensitivity analysis, and support for \"network thinning\".  After performing filter-pruning sensitivity analysis to assess which layers are more sensitive to the pruning of filters, we execute distiller.L1RankedStructureParameterPruner once in order to rank the filters of each layer by their L1-norm values, and then we prune the schedule-prescribed sparsity level.     Distiller schedule:  distiller/examples/pruning_filters_for_efficient_convnets/resnet56_cifar_filter_rank.yaml  Checkpoint files:  checkpoint_finetuned.pth.tar   The excerpt from the schedule, displayed below, shows how we declare the L1RankedStructureParameterPruner.  This class currently ranks filters only, but because in the future this class may support ranking of various structures, you need to specify for each parameter both the target sparsity level, and the structure type ('3D' is filter-wise pruning).  pruners:\n  filter_pruner:\n    class: 'L1RankedStructureParameterPruner'\n    reg_regims:\n      'module.layer1.0.conv1.weight': [0.6, '3D']\n      'module.layer1.1.conv1.weight': [0.6, '3D']\n      'module.layer1.2.conv1.weight': [0.6, '3D']\n      'module.layer1.3.conv1.weight': [0.6, '3D']  In the policy, we specify that we want to invoke this pruner once, at epoch 180.  Because we are starting from a network which was trained for 180 epochs (see Baseline training below), the filter ranking is performed right at the outset of this schedule.  policies:\n  - pruner:\n      instance_name: filter_pruner\n    epochs: [180]  Following the pruning, we want to \"physically\" remove the pruned filters from the network, which involves reconfiguring the Convolutional layers and the parameter tensors.  When we remove filters from Convolution layer  n  we need to perform several changes to the network:\n1. Shrink layer  n 's weights tensor, leaving only the \"important\" filters.\n2. Configure layer  n 's  .out_channels  member to its new, smaller, value.\n3. If a BN layer follows layer  n , then it also needs to be reconfigured and its scale and shift parameter vectors need to be shrunk.\n4. If a Convolution layer follows the BN layer, then it will have less input channels which requires reconfiguration and shrinking of its weights.  All of this is performed by distiller.ResnetCifarFilterRemover which is also scheduled at epoch 180.  We call this process \"network thinning\".  extensions:\n  net_thinner:\n      class: 'ResnetCifarFilterRemover'\n      thinning_func_str: resnet_cifar_remove_filters  Network thinning requires us to understand the layer connectivity and data-dependency of the DNN, and we are working on a robust method to perform this.  On networks with topologies similar to ResNet (residuals) and GoogLeNet (inception), which have several inputs and outputs to/from Convolution layers, there is extra details to consider. \nOur current implementation is specific to certain layers in ResNet and is a bit fragile.  We will continue to improve and generalize this.", 
             "title": "Pruning Filters for Efficient ConvNets"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#baseline-training_1",
-            "text": "We started by training the baseline ResNet56-Cifar dense network (180 epochs) since we didn't have a pre-trained model.   Distiller schedule:  distiller/examples/pruning_filters_for_efficient_convnets/resnet56_cifar_baseline_training.yaml  Checkpoint files:  checkpoint.resnet56_cifar_baseline.pth.tar",
+            "location": "/model_zoo/index.html#baseline-training_1", 
+            "text": "We started by training the baseline ResNet56-Cifar dense network (180 epochs) since we didn't have a pre-trained model.   Distiller schedule:  distiller/examples/pruning_filters_for_efficient_convnets/resnet56_cifar_baseline_training.yaml  Checkpoint files:  checkpoint.resnet56_cifar_baseline.pth.tar", 
             "title": "Baseline training"
-        },
+        }, 
         {
-            "location": "/model_zoo/index.html#results_3",
-            "text": "We trained a ResNet56-Cifar10 network and achieve accuracy results which are on-par with published results:\nTop1: 92.970 and Top5: 99.740.  We used Hao et al.'s algorithm to remove 37.3% of the original convolution MACs, while maintaining virtually the same accuracy as the baseline:\nTop1: 92.830 and Top5: 99.760",
+            "location": "/model_zoo/index.html#results_3", 
+            "text": "We trained a ResNet56-Cifar10 network and achieve accuracy results which are on-par with published results:\nTop1: 92.970 and Top5: 99.740.  We used Hao et al.'s algorithm to remove 37.3% of the original convolution MACs, while maintaining virtually the same accuracy as the baseline:\nTop1: 92.830 and Top5: 99.760", 
             "title": "Results"
-        },
+        }, 
         {
-            "location": "/jupyter/index.html",
-            "text": "Jupyter environment\n\n\nThe Jupyter notebooks environment allows us to plan our compression session and load Distiller data summaries to study and analyze compression results.\n\n\nEach notebook has embedded instructions and explanations, so here we provide only a brief description of each notebook.\n\n\nInstallation\n\n\nJupyter and its dependencies are included as part of the main \nrequirements.txt\n file, so there is no need for a dedicated installation step.\n\nHowever, to use the ipywidgets extension, you will need to enable it:\n\n\n$ jupyter nbextension enable --py widgetsnbextension --sys-prefix\n\n\n\n\nYou may want to refer to the \nipywidgets extension installation documentation\n.\n\n\nAnother extension which requires special installation handling is \nQgrid\n.  Qgrid is a Jupyter notebook widget that adds interactive features, such as sorting, to Panadas DataFrames rendering.  To enable Qgrid:\n\n\n$ jupyter nbextension enable --py --sys-prefix qgrid\n\n\n\n\nLaunching the Jupyter server\n\n\nThere are all kinds of options to use when launching Jupyter which you can use.  The example below tells the server to listen to connections from any IP address, and not to launch the browser window, but of course, you are free to launch Jupyter any way you want.\n\nConsult the \nuser's guide\n for more details.\n\n\n$ jupyter-notebook --ip=* --no-browser\n\n\n\n\nUsing the Distiller notebooks\n\n\nThe Distiller Jupyter notebooks are located in the \ndistiller/jupyter\n directory.\n\nThey are provided as tools that you can use to prepare your compression experiments and study their results.\nWe welcome new ideas and implementations of Jupyter.\n\n\nRoughly, the notebooks can be divided into three categories.\n\n\nTheory\n\n\n\n\njupyter/L1-regularization.ipynb\n: Experience hands-on how L1 and L2 regularization affect the solution of a toy loss-minimization problem, to get a better grasp on the interaction between regularization and sparsity.\n\n\njupyter/alexnet_insights.ipynb\n: This notebook reviews and compares a couple of pruning sessions on Alexnet.  We compare distributions, performance, statistics and show some visualizations of the weights tensors.\n\n\n\n\nPreparation for compression\n\n\n\n\njupyter/model_summary.ipynb\n: Begin by getting familiar with your model.  Examine the sizes and properties of layers and connections.  Study which layers are compute-bound, and which are bandwidth-bound, and decide how to prune or regularize the model.\n\n\njupyter/sensitivity_analysis.ipynb\n: If you performed pruning sensitivity analysis on your model, this notebook can help you load the results and graphically study how the layers behave.\n\n\njupyter/interactive_lr_scheduler.ipynb\n: The learning rate decay policy affects pruning results, perhaps as much as it affects training results.  Graph a few LR-decay policies to see how they behave.\n\n\njupyter/jupyter/agp_schedule.ipynb\n: If you are using the Automated Gradual Pruner, this notebook can help you tune the schedule.\n\n\n\n\nReviewing experiment results\n\n\n\n\njupyter/compare_executions.ipynb\n: This is a simple notebook to help you graphically compare the results of executions of several experiments.\n\n\njupyter/compression_insights.ipynb\n: This notebook is packed with code, tables and graphs to us understand the results of a compression session.  Distiller provides \nsummaries\n, which are Pandas dataframes, which contain statistical information about you model.  We chose to use Pandas dataframes because they can be sliced, queried, summarized and graphed with a few lines of code.",
+            "location": "/jupyter/index.html", 
+            "text": "Jupyter environment\n\n\nThe Jupyter notebooks environment allows us to plan our compression session and load Distiller data summaries to study and analyze compression results.\n\n\nEach notebook has embedded instructions and explanations, so here we provide only a brief description of each notebook.\n\n\nInstallation\n\n\nJupyter and its dependencies are included as part of the main \nrequirements.txt\n file, so there is no need for a dedicated installation step.\n\nHowever, to use the ipywidgets extension, you will need to enable it:\n\n\n$ jupyter nbextension enable --py widgetsnbextension --sys-prefix\n\n\n\n\nYou may want to refer to the \nipywidgets extension installation documentation\n.\n\n\nAnother extension which requires special installation handling is \nQgrid\n.  Qgrid is a Jupyter notebook widget that adds interactive features, such as sorting, to Panadas DataFrames rendering.  To enable Qgrid:\n\n\n$ jupyter nbextension enable --py --sys-prefix qgrid\n\n\n\n\nLaunching the Jupyter server\n\n\nThere are all kinds of options to use when launching Jupyter which you can use.  The example below tells the server to listen to connections from any IP address, and not to launch the browser window, but of course, you are free to launch Jupyter any way you want.\n\nConsult the \nuser's guide\n for more details.\n\n\n$ jupyter-notebook --ip=* --no-browser\n\n\n\n\nUsing the Distiller notebooks\n\n\nThe Distiller Jupyter notebooks are located in the \ndistiller/jupyter\n directory.\n\nThey are provided as tools that you can use to prepare your compression experiments and study their results.\nWe welcome new ideas and implementations of Jupyter.\n\n\nRoughly, the notebooks can be divided into three categories.\n\n\nTheory\n\n\n\n\njupyter/L1-regularization.ipynb\n: Experience hands-on how L1 and L2 regularization affect the solution of a toy loss-minimization problem, to get a better grasp on the interaction between regularization and sparsity.\n\n\njupyter/alexnet_insights.ipynb\n: This notebook reviews and compares a couple of pruning sessions on Alexnet.  We compare distributions, performance, statistics and show some visualizations of the weights tensors.\n\n\n\n\nPreparation for compression\n\n\n\n\njupyter/model_summary.ipynb\n: Begin by getting familiar with your model.  Examine the sizes and properties of layers and connections.  Study which layers are compute-bound, and which are bandwidth-bound, and decide how to prune or regularize the model.\n\n\njupyter/sensitivity_analysis.ipynb\n: If you performed pruning sensitivity analysis on your model, this notebook can help you load the results and graphically study how the layers behave.\n\n\njupyter/interactive_lr_scheduler.ipynb\n: The learning rate decay policy affects pruning results, perhaps as much as it affects training results.  Graph a few LR-decay policies to see how they behave.\n\n\njupyter/jupyter/agp_schedule.ipynb\n: If you are using the Automated Gradual Pruner, this notebook can help you tune the schedule.\n\n\n\n\nReviewing experiment results\n\n\n\n\njupyter/compare_executions.ipynb\n: This is a simple notebook to help you graphically compare the results of executions of several experiments.\n\n\njupyter/compression_insights.ipynb\n: This notebook is packed with code, tables and graphs to us understand the results of a compression session.  Distiller provides \nsummaries\n, which are Pandas dataframes, which contain statistical information about you model.  We chose to use Pandas dataframes because they can be sliced, queried, summarized and graphed with a few lines of code.", 
             "title": "Jupyter notebooks"
-        },
+        }, 
         {
-            "location": "/jupyter/index.html#jupyter-environment",
-            "text": "The Jupyter notebooks environment allows us to plan our compression session and load Distiller data summaries to study and analyze compression results.  Each notebook has embedded instructions and explanations, so here we provide only a brief description of each notebook.",
+            "location": "/jupyter/index.html#jupyter-environment", 
+            "text": "The Jupyter notebooks environment allows us to plan our compression session and load Distiller data summaries to study and analyze compression results.  Each notebook has embedded instructions and explanations, so here we provide only a brief description of each notebook.", 
             "title": "Jupyter environment"
-        },
+        }, 
         {
-            "location": "/jupyter/index.html#installation",
-            "text": "Jupyter and its dependencies are included as part of the main  requirements.txt  file, so there is no need for a dedicated installation step. \nHowever, to use the ipywidgets extension, you will need to enable it:  $ jupyter nbextension enable --py widgetsnbextension --sys-prefix  You may want to refer to the  ipywidgets extension installation documentation .  Another extension which requires special installation handling is  Qgrid .  Qgrid is a Jupyter notebook widget that adds interactive features, such as sorting, to Panadas DataFrames rendering.  To enable Qgrid:  $ jupyter nbextension enable --py --sys-prefix qgrid",
+            "location": "/jupyter/index.html#installation", 
+            "text": "Jupyter and its dependencies are included as part of the main  requirements.txt  file, so there is no need for a dedicated installation step. \nHowever, to use the ipywidgets extension, you will need to enable it:  $ jupyter nbextension enable --py widgetsnbextension --sys-prefix  You may want to refer to the  ipywidgets extension installation documentation .  Another extension which requires special installation handling is  Qgrid .  Qgrid is a Jupyter notebook widget that adds interactive features, such as sorting, to Panadas DataFrames rendering.  To enable Qgrid:  $ jupyter nbextension enable --py --sys-prefix qgrid", 
             "title": "Installation"
-        },
+        }, 
         {
-            "location": "/jupyter/index.html#launching-the-jupyter-server",
-            "text": "There are all kinds of options to use when launching Jupyter which you can use.  The example below tells the server to listen to connections from any IP address, and not to launch the browser window, but of course, you are free to launch Jupyter any way you want. \nConsult the  user's guide  for more details.  $ jupyter-notebook --ip=* --no-browser",
+            "location": "/jupyter/index.html#launching-the-jupyter-server", 
+            "text": "There are all kinds of options to use when launching Jupyter which you can use.  The example below tells the server to listen to connections from any IP address, and not to launch the browser window, but of course, you are free to launch Jupyter any way you want. \nConsult the  user's guide  for more details.  $ jupyter-notebook --ip=* --no-browser", 
             "title": "Launching the Jupyter server"
-        },
+        }, 
         {
-            "location": "/jupyter/index.html#using-the-distiller-notebooks",
-            "text": "The Distiller Jupyter notebooks are located in the  distiller/jupyter  directory. \nThey are provided as tools that you can use to prepare your compression experiments and study their results.\nWe welcome new ideas and implementations of Jupyter.  Roughly, the notebooks can be divided into three categories.",
+            "location": "/jupyter/index.html#using-the-distiller-notebooks", 
+            "text": "The Distiller Jupyter notebooks are located in the  distiller/jupyter  directory. \nThey are provided as tools that you can use to prepare your compression experiments and study their results.\nWe welcome new ideas and implementations of Jupyter.  Roughly, the notebooks can be divided into three categories.", 
             "title": "Using the Distiller notebooks"
-        },
+        }, 
         {
-            "location": "/jupyter/index.html#theory",
-            "text": "jupyter/L1-regularization.ipynb : Experience hands-on how L1 and L2 regularization affect the solution of a toy loss-minimization problem, to get a better grasp on the interaction between regularization and sparsity.  jupyter/alexnet_insights.ipynb : This notebook reviews and compares a couple of pruning sessions on Alexnet.  We compare distributions, performance, statistics and show some visualizations of the weights tensors.",
+            "location": "/jupyter/index.html#theory", 
+            "text": "jupyter/L1-regularization.ipynb : Experience hands-on how L1 and L2 regularization affect the solution of a toy loss-minimization problem, to get a better grasp on the interaction between regularization and sparsity.  jupyter/alexnet_insights.ipynb : This notebook reviews and compares a couple of pruning sessions on Alexnet.  We compare distributions, performance, statistics and show some visualizations of the weights tensors.", 
             "title": "Theory"
-        },
+        }, 
         {
-            "location": "/jupyter/index.html#preparation-for-compression",
-            "text": "jupyter/model_summary.ipynb : Begin by getting familiar with your model.  Examine the sizes and properties of layers and connections.  Study which layers are compute-bound, and which are bandwidth-bound, and decide how to prune or regularize the model.  jupyter/sensitivity_analysis.ipynb : If you performed pruning sensitivity analysis on your model, this notebook can help you load the results and graphically study how the layers behave.  jupyter/interactive_lr_scheduler.ipynb : The learning rate decay policy affects pruning results, perhaps as much as it affects training results.  Graph a few LR-decay policies to see how they behave.  jupyter/jupyter/agp_schedule.ipynb : If you are using the Automated Gradual Pruner, this notebook can help you tune the schedule.",
+            "location": "/jupyter/index.html#preparation-for-compression", 
+            "text": "jupyter/model_summary.ipynb : Begin by getting familiar with your model.  Examine the sizes and properties of layers and connections.  Study which layers are compute-bound, and which are bandwidth-bound, and decide how to prune or regularize the model.  jupyter/sensitivity_analysis.ipynb : If you performed pruning sensitivity analysis on your model, this notebook can help you load the results and graphically study how the layers behave.  jupyter/interactive_lr_scheduler.ipynb : The learning rate decay policy affects pruning results, perhaps as much as it affects training results.  Graph a few LR-decay policies to see how they behave.  jupyter/jupyter/agp_schedule.ipynb : If you are using the Automated Gradual Pruner, this notebook can help you tune the schedule.", 
             "title": "Preparation for compression"
-        },
+        }, 
         {
-            "location": "/jupyter/index.html#reviewing-experiment-results",
-            "text": "jupyter/compare_executions.ipynb : This is a simple notebook to help you graphically compare the results of executions of several experiments.  jupyter/compression_insights.ipynb : This notebook is packed with code, tables and graphs to us understand the results of a compression session.  Distiller provides  summaries , which are Pandas dataframes, which contain statistical information about you model.  We chose to use Pandas dataframes because they can be sliced, queried, summarized and graphed with a few lines of code.",
+            "location": "/jupyter/index.html#reviewing-experiment-results", 
+            "text": "jupyter/compare_executions.ipynb : This is a simple notebook to help you graphically compare the results of executions of several experiments.  jupyter/compression_insights.ipynb : This notebook is packed with code, tables and graphs to us understand the results of a compression session.  Distiller provides  summaries , which are Pandas dataframes, which contain statistical information about you model.  We chose to use Pandas dataframes because they can be sliced, queried, summarized and graphed with a few lines of code.", 
             "title": "Reviewing experiment results"
-        },
+        }, 
         {
-            "location": "/design/index.html",
-            "text": "Distiller design\n\n\nDistiller is designed to be easily integrated into your own PyTorch research applications.\n\nIt is easiest to understand this integration by examining the code of the sample application for compressing image classification models (\ncompress_classifier.py\n).\n\n\nThe application borrows its main flow code from torchvision's ImageNet classification training sample application (https://github.com/pytorch/examples/tree/master/imagenet). We tried to keep it similar, in order to make it familiar and easy to understand.\n\n\nIntegrating compression is very simple: simply add invocations of the appropriate compression_scheduler callbacks, for each stage in the training.  The training skeleton looks like the pseudo code below.  The boiler-plate Pytorch classification training is speckled with invocations of CompressionScheduler.\n\n\nFor each epoch:\n    compression_scheduler.on_epoch_begin(epoch)\n    train()\n    validate()\n    save_checkpoint()\n    compression_scheduler.on_epoch_end(epoch)\n\ntrain():\n    For each training step:\n        compression_scheduler.on_minibatch_begin(epoch)\n        output = model(input_var)\n        loss = criterion(output, target_var)\n        compression_scheduler.before_backward_pass(epoch)\n        loss.backward()\n        optimizer.step()\n        compression_scheduler.on_minibatch_end(epoch)\n\n\n\n\nThese callbacks can be seen in the diagram below, as the arrow pointing from the Training Loop and into Distiller's \nScheduler\n, which invokes the correct algorithm.  The application also uses Distiller services to collect statistics in \nSummaries\n and logs files, which can be queried at a later time, from Jupyter notebooks or TensorBoard.\n\n\n\n\nSparsification and fine-tuning\n\n\n\n\nThe application sets up a model as normally done in PyTorch.\n\n\nAnd then instantiates a Scheduler and configures it:\n\n\nScheduler configuration is defined in a YAML file\n\n\nThe configuration specifies Policies. Each Policy is tied to a specific algorithm which controls some aspect of the training.\n\n\nSome types of algorithms control the actual sparsification of the model. Such types are \"pruner\" and \"regularizer\".\n\n\nSome algorithms control some parameter of the training process, such as the learning-rate decay scheduler (\nlr_scheduler\n).\n\n\nThe parameters of each algorithm are also specified in the configuration.\n\n\n\n\n\n\n\n\n\n\nIn addition to specifying the algorithm, each Policy specifies scheduling parameters which control when the algorithm is executed: start epoch, end epoch and frequency.\n\n\nThe Scheduler exposes callbacks for relevant training stages: epoch start/end, mini-batch start/end and pre-backward pass. Each scheduler callback activates the policies that were defined according the schedule that was defined.\n\n\nThese callbacks are placed the training loop.\n\n\n\n\nQuantization\n\n\nA quantized model is obtained by replacing existing operations with quantized versions. The quantized versions can be either complete replacements, or wrappers. A wrapper will use the existing modules internally and add quantization and de-quantization operations before/after as necessary.\n\n\nIn Distiller we will provide a set of quantized versions of common operations which will enable implementation of different quantization methods. The user can write a quantized model from scratch, using the quantized operations provided.\n\n\nWe also provide a mechanism which takes an existing model and automatically replaces required operations with quantized versions. The high-level flow is as follows:\n\n\n\n\nDefine a \nmapping\n between the module types to be replaced (e.g. Conv2D, Linear, etc.) to a function which generates the replacement module.\n\n\nIterate over the modules defined in the model. For each module, if its type is in the mapping, call the replacement generation function. We pass the existing module to this function to allow wrapping of it.\n\n\nReplace the existing module with the module returned by the function.\n\n\n\n\nDifferent quantization methods may, obviously, use different quantized operations. In addition, different methods may employ different \"strategies\" of replacing / wrapping existing modules. For instance, some methods replace ReLU with another activation function, while others keep it. Hence, for each quantization method, a different \nmapping\n will likely be defined.\n\n\nThis mechanism is exposed by the \nQuantizer\n class:\n\n\n\n\nQuantizer\n should be sub-classed for each quantization method.\n\n\nEach instance of \nQuantizer\n is parameterized by the number of bits to be used for quantization of different tensor types. The default ones are activations and weights. These are the \nbits_activations\n and \nbits_weights\n parameters in \nQuantizer\n's constructor. Sub-classes may define bit-widths for other tensor types as needed.\n\n\nWe also want to be able to override the default number of bits mentioned in the bullet above for certain layers. These could be very specific layers. However, many models are comprised of building blocks (\"container\" modules, such as Sequential) which contain several modules, and it is likely we'll want to override settings for entire blocks, or for a certain module across different blocks. When such building blocks are used, the names of the internal modules usually follow some pattern.\n\n\nSo, for this purpose, Quantizer also accepts a mapping of regular expressions to number of bits. This allows the user to override specific layers using they're exact name, or a group of layers via a regular expression. This mapping is passed via the \nbits_overrides\n parameter in the constructor.\n\n\n\n\nThe base \nQuantizer\n class is implemented in \ndistiller/quantization/quantizer.py\n.\n\nFor a simple sub-class implementing symmetric linear quantization, see \nSymmetricLinearQuantizer\n in \ndistiller/quantization/range_linear.py\n.",
+            "location": "/design/index.html", 
+            "text": "Distiller design\n\n\nDistiller is designed to be easily integrated into your own PyTorch research applications.\n\nIt is easiest to understand this integration by examining the code of the sample application for compressing image classification models (\ncompress_classifier.py\n).\n\n\nThe application borrows its main flow code from torchvision's ImageNet classification training sample application (https://github.com/pytorch/examples/tree/master/imagenet). We tried to keep it similar, in order to make it familiar and easy to understand.\n\n\nIntegrating compression is very simple: simply add invocations of the appropriate compression_scheduler callbacks, for each stage in the training.  The training skeleton looks like the pseudo code below.  The boiler-plate Pytorch classification training is speckled with invocations of CompressionScheduler.\n\n\nFor each epoch:\n    compression_scheduler.on_epoch_begin(epoch)\n    train()\n    validate()\n    save_checkpoint()\n    compression_scheduler.on_epoch_end(epoch)\n\ntrain():\n    For each training step:\n        compression_scheduler.on_minibatch_begin(epoch)\n        output = model(input_var)\n        loss = criterion(output, target_var)\n        compression_scheduler.before_backward_pass(epoch)\n        loss.backward()\n        optimizer.step()\n        compression_scheduler.on_minibatch_end(epoch)\n\n\n\n\nThese callbacks can be seen in the diagram below, as the arrow pointing from the Training Loop and into Distiller's \nScheduler\n, which invokes the correct algorithm.  The application also uses Distiller services to collect statistics in \nSummaries\n and logs files, which can be queried at a later time, from Jupyter notebooks or TensorBoard.\n\n\n\n\nSparsification and fine-tuning\n\n\n\n\nThe application sets up a model as normally done in PyTorch.\n\n\nAnd then instantiates a Scheduler and configures it:\n\n\nScheduler configuration is defined in a YAML file\n\n\nThe configuration specifies Policies. Each Policy is tied to a specific algorithm which controls some aspect of the training.\n\n\nSome types of algorithms control the actual sparsification of the model. Such types are \"pruner\" and \"regularizer\".\n\n\nSome algorithms control some parameter of the training process, such as the learning-rate decay scheduler (\nlr_scheduler\n).\n\n\nThe parameters of each algorithm are also specified in the configuration.\n\n\n\n\n\n\n\n\n\n\nIn addition to specifying the algorithm, each Policy specifies scheduling parameters which control when the algorithm is executed: start epoch, end epoch and frequency.\n\n\nThe Scheduler exposes callbacks for relevant training stages: epoch start/end, mini-batch start/end and pre-backward pass. Each scheduler callback activates the policies that were defined according the schedule that was defined.\n\n\nThese callbacks are placed the training loop.\n\n\n\n\nQuantization\n\n\nA quantized model is obtained by replacing existing operations with quantized versions. The quantized versions can be either complete replacements, or wrappers. A wrapper will use the existing modules internally and add quantization and de-quantization operations before/after as necessary.\n\n\nIn Distiller we will provide a set of quantized versions of common operations which will enable implementation of different quantization methods. The user can write a quantized model from scratch, using the quantized operations provided.\n\n\nWe also provide a mechanism which takes an existing model and automatically replaces required operations with quantized versions. This mechanism is exposed by the \nQuantizer\n class. \nQuantizer\n should be sub-classed for each quantization method.\n\n\nModel Transformation\n\n\nThe high-level flow is as follows:\n\n\n\n\nDefine a \nmapping\n between the module types to be replaced (e.g. Conv2D, Linear, etc.) to a function which generates the replacement module. The mapping is defined in the \nreplacement_factory\n attribute of the \nQuantizer\n class.\n\n\nIterate over the modules defined in the model. For each module, if its type is in the mapping, call the replacement generation function. We pass the existing module to this function to allow wrapping of it.\n\n\nReplace the existing module with the module returned by the function. It is important to note that the \nname\n of the module \ndoes not\n change, as that could break the \nforward\n function of the parent module.\n\n\n\n\nDifferent quantization methods may, obviously, use different quantized operations. In addition, different methods may employ different \"strategies\" of replacing / wrapping existing modules. For instance, some methods replace ReLU with another activation function, while others keep it. Hence, for each quantization method, a different \nmapping\n will likely be defined.\n\nEach sub-class of \nQuantizer\n should populate the \nreplacement_factory\n dictionary attribute with the appropriate mapping.\n\n\nFlexible Bit-Widths\n\n\n\n\nEach instance of \nQuantizer\n is parameterized by the number of bits to be used for quantization of different tensor types. The default ones are activations and weights. These are the \nbits_activations\n and \nbits_weights\n parameters in \nQuantizer\n's constructor. Sub-classes may define bit-widths for other tensor types as needed.\n\n\nWe also want to be able to override the default number of bits mentioned in the bullet above for certain layers. These could be very specific layers. However, many models are comprised of building blocks (\"container\" modules, such as Sequential) which contain several modules, and it is likely we'll want to override settings for entire blocks, or for a certain module across different blocks. When such building blocks are used, the names of the internal modules usually follow some pattern.\n\n\nSo, for this purpose, Quantizer also accepts a mapping of regular expressions to number of bits. This allows the user to override specific layers using they're exact name, or a group of layers via a regular expression. This mapping is passed via the \nbits_overrides\n parameter in the constructor.\n\n\n\n\nWeights Quantization\n\n\nThe \nQuantizer\n class also provides an API to quantize the weights of all layers at once. To use it, the \nparam_quantization_fn\n attribute needs to point to a function that accepts a tensor and the number of bits. During model transformation, the \nQuantizer\n class will build a list of all model parameters that need to be quantized along with their bit-width. Then, the \nquantize_params\n function can be called, which will iterate over all parameters and quantize them using \nparams_quantization_fn\n.\n\n\nTraining with Quantization\n\n\nThe \nQuantizer\n class supports training with quantization in the loop, as described \nhere\n. This is enabled by setting \ntrain_with_fp_copy=True\n in the \nQuantizer\n constructor. At model transformation, in each module that has parameters that should be quantized, a new \ntorch.nn.Parameter\n is added, which will maintain the required full precision copy of the parameters. Note that this is done in-place - a new module \nis not\n created. We preferred not to sub-class the existing PyTorch modules for this purpose. In order to this in-place, and also guarantee proper back-propagation through the weights quantization function, we employ the following \"hack\":\n\n\n\n\nThe existing \ntorch.nn.Parameter\n, e.g. \nweights\n, is replaced by a \ntorch.nn.Parameter\n named \nfloat_weight\n.\n\n\nTo maintain the existing functionality of the module, we then register a \nbuffer\n in the module with the original name - \nweights\n.\n\n\nDuring training, \nfloat_weight\n will be passed to \nparam_quantization_fn\n and the result will be stored in \nweight\n.\n\n\n\n\nThe base \nQuantizer\n class is implemented in \ndistiller/quantization/quantizer.py\n.\n\nFor a simple sub-class implementing symmetric linear quantization, see \nSymmetricLinearQuantizer\n in \ndistiller/quantization/range_linear.py\n. For examples of lower-precision methods using training with quantization see \nDorefaQuantizer\n and \nWRPNQuantizer\n in \ndistiller/quantization/clipped_linear.py", 
             "title": "Design"
-        },
+        }, 
         {
-            "location": "/design/index.html#distiller-design",
-            "text": "Distiller is designed to be easily integrated into your own PyTorch research applications. \nIt is easiest to understand this integration by examining the code of the sample application for compressing image classification models ( compress_classifier.py ).  The application borrows its main flow code from torchvision's ImageNet classification training sample application (https://github.com/pytorch/examples/tree/master/imagenet). We tried to keep it similar, in order to make it familiar and easy to understand.  Integrating compression is very simple: simply add invocations of the appropriate compression_scheduler callbacks, for each stage in the training.  The training skeleton looks like the pseudo code below.  The boiler-plate Pytorch classification training is speckled with invocations of CompressionScheduler.  For each epoch:\n    compression_scheduler.on_epoch_begin(epoch)\n    train()\n    validate()\n    save_checkpoint()\n    compression_scheduler.on_epoch_end(epoch)\n\ntrain():\n    For each training step:\n        compression_scheduler.on_minibatch_begin(epoch)\n        output = model(input_var)\n        loss = criterion(output, target_var)\n        compression_scheduler.before_backward_pass(epoch)\n        loss.backward()\n        optimizer.step()\n        compression_scheduler.on_minibatch_end(epoch)  These callbacks can be seen in the diagram below, as the arrow pointing from the Training Loop and into Distiller's  Scheduler , which invokes the correct algorithm.  The application also uses Distiller services to collect statistics in  Summaries  and logs files, which can be queried at a later time, from Jupyter notebooks or TensorBoard.",
+            "location": "/design/index.html#distiller-design", 
+            "text": "Distiller is designed to be easily integrated into your own PyTorch research applications. \nIt is easiest to understand this integration by examining the code of the sample application for compressing image classification models ( compress_classifier.py ).  The application borrows its main flow code from torchvision's ImageNet classification training sample application (https://github.com/pytorch/examples/tree/master/imagenet). We tried to keep it similar, in order to make it familiar and easy to understand.  Integrating compression is very simple: simply add invocations of the appropriate compression_scheduler callbacks, for each stage in the training.  The training skeleton looks like the pseudo code below.  The boiler-plate Pytorch classification training is speckled with invocations of CompressionScheduler.  For each epoch:\n    compression_scheduler.on_epoch_begin(epoch)\n    train()\n    validate()\n    save_checkpoint()\n    compression_scheduler.on_epoch_end(epoch)\n\ntrain():\n    For each training step:\n        compression_scheduler.on_minibatch_begin(epoch)\n        output = model(input_var)\n        loss = criterion(output, target_var)\n        compression_scheduler.before_backward_pass(epoch)\n        loss.backward()\n        optimizer.step()\n        compression_scheduler.on_minibatch_end(epoch)  These callbacks can be seen in the diagram below, as the arrow pointing from the Training Loop and into Distiller's  Scheduler , which invokes the correct algorithm.  The application also uses Distiller services to collect statistics in  Summaries  and logs files, which can be queried at a later time, from Jupyter notebooks or TensorBoard.", 
             "title": "Distiller design"
-        },
+        }, 
         {
-            "location": "/design/index.html#sparsification-and-fine-tuning",
-            "text": "The application sets up a model as normally done in PyTorch.  And then instantiates a Scheduler and configures it:  Scheduler configuration is defined in a YAML file  The configuration specifies Policies. Each Policy is tied to a specific algorithm which controls some aspect of the training.  Some types of algorithms control the actual sparsification of the model. Such types are \"pruner\" and \"regularizer\".  Some algorithms control some parameter of the training process, such as the learning-rate decay scheduler ( lr_scheduler ).  The parameters of each algorithm are also specified in the configuration.      In addition to specifying the algorithm, each Policy specifies scheduling parameters which control when the algorithm is executed: start epoch, end epoch and frequency.  The Scheduler exposes callbacks for relevant training stages: epoch start/end, mini-batch start/end and pre-backward pass. Each scheduler callback activates the policies that were defined according the schedule that was defined.  These callbacks are placed the training loop.",
+            "location": "/design/index.html#sparsification-and-fine-tuning", 
+            "text": "The application sets up a model as normally done in PyTorch.  And then instantiates a Scheduler and configures it:  Scheduler configuration is defined in a YAML file  The configuration specifies Policies. Each Policy is tied to a specific algorithm which controls some aspect of the training.  Some types of algorithms control the actual sparsification of the model. Such types are \"pruner\" and \"regularizer\".  Some algorithms control some parameter of the training process, such as the learning-rate decay scheduler ( lr_scheduler ).  The parameters of each algorithm are also specified in the configuration.      In addition to specifying the algorithm, each Policy specifies scheduling parameters which control when the algorithm is executed: start epoch, end epoch and frequency.  The Scheduler exposes callbacks for relevant training stages: epoch start/end, mini-batch start/end and pre-backward pass. Each scheduler callback activates the policies that were defined according the schedule that was defined.  These callbacks are placed the training loop.", 
             "title": "Sparsification and fine-tuning"
-        },
+        }, 
         {
-            "location": "/design/index.html#quantization",
-            "text": "A quantized model is obtained by replacing existing operations with quantized versions. The quantized versions can be either complete replacements, or wrappers. A wrapper will use the existing modules internally and add quantization and de-quantization operations before/after as necessary.  In Distiller we will provide a set of quantized versions of common operations which will enable implementation of different quantization methods. The user can write a quantized model from scratch, using the quantized operations provided.  We also provide a mechanism which takes an existing model and automatically replaces required operations with quantized versions. The high-level flow is as follows:   Define a  mapping  between the module types to be replaced (e.g. Conv2D, Linear, etc.) to a function which generates the replacement module.  Iterate over the modules defined in the model. For each module, if its type is in the mapping, call the replacement generation function. We pass the existing module to this function to allow wrapping of it.  Replace the existing module with the module returned by the function.   Different quantization methods may, obviously, use different quantized operations. In addition, different methods may employ different \"strategies\" of replacing / wrapping existing modules. For instance, some methods replace ReLU with another activation function, while others keep it. Hence, for each quantization method, a different  mapping  will likely be defined.  This mechanism is exposed by the  Quantizer  class:   Quantizer  should be sub-classed for each quantization method.  Each instance of  Quantizer  is parameterized by the number of bits to be used for quantization of different tensor types. The default ones are activations and weights. These are the  bits_activations  and  bits_weights  parameters in  Quantizer 's constructor. Sub-classes may define bit-widths for other tensor types as needed.  We also want to be able to override the default number of bits mentioned in the bullet above for certain layers. These could be very specific layers. However, many models are comprised of building blocks (\"container\" modules, such as Sequential) which contain several modules, and it is likely we'll want to override settings for entire blocks, or for a certain module across different blocks. When such building blocks are used, the names of the internal modules usually follow some pattern.  So, for this purpose, Quantizer also accepts a mapping of regular expressions to number of bits. This allows the user to override specific layers using they're exact name, or a group of layers via a regular expression. This mapping is passed via the  bits_overrides  parameter in the constructor.   The base  Quantizer  class is implemented in  distiller/quantization/quantizer.py . \nFor a simple sub-class implementing symmetric linear quantization, see  SymmetricLinearQuantizer  in  distiller/quantization/range_linear.py .",
+            "location": "/design/index.html#quantization", 
+            "text": "A quantized model is obtained by replacing existing operations with quantized versions. The quantized versions can be either complete replacements, or wrappers. A wrapper will use the existing modules internally and add quantization and de-quantization operations before/after as necessary.  In Distiller we will provide a set of quantized versions of common operations which will enable implementation of different quantization methods. The user can write a quantized model from scratch, using the quantized operations provided.  We also provide a mechanism which takes an existing model and automatically replaces required operations with quantized versions. This mechanism is exposed by the  Quantizer  class.  Quantizer  should be sub-classed for each quantization method.", 
             "title": "Quantization"
+        }, 
+        {
+            "location": "/design/index.html#model-transformation", 
+            "text": "The high-level flow is as follows:   Define a  mapping  between the module types to be replaced (e.g. Conv2D, Linear, etc.) to a function which generates the replacement module. The mapping is defined in the  replacement_factory  attribute of the  Quantizer  class.  Iterate over the modules defined in the model. For each module, if its type is in the mapping, call the replacement generation function. We pass the existing module to this function to allow wrapping of it.  Replace the existing module with the module returned by the function. It is important to note that the  name  of the module  does not  change, as that could break the  forward  function of the parent module.   Different quantization methods may, obviously, use different quantized operations. In addition, different methods may employ different \"strategies\" of replacing / wrapping existing modules. For instance, some methods replace ReLU with another activation function, while others keep it. Hence, for each quantization method, a different  mapping  will likely be defined. \nEach sub-class of  Quantizer  should populate the  replacement_factory  dictionary attribute with the appropriate mapping.", 
+            "title": "Model Transformation"
+        }, 
+        {
+            "location": "/design/index.html#flexible-bit-widths", 
+            "text": "Each instance of  Quantizer  is parameterized by the number of bits to be used for quantization of different tensor types. The default ones are activations and weights. These are the  bits_activations  and  bits_weights  parameters in  Quantizer 's constructor. Sub-classes may define bit-widths for other tensor types as needed.  We also want to be able to override the default number of bits mentioned in the bullet above for certain layers. These could be very specific layers. However, many models are comprised of building blocks (\"container\" modules, such as Sequential) which contain several modules, and it is likely we'll want to override settings for entire blocks, or for a certain module across different blocks. When such building blocks are used, the names of the internal modules usually follow some pattern.  So, for this purpose, Quantizer also accepts a mapping of regular expressions to number of bits. This allows the user to override specific layers using they're exact name, or a group of layers via a regular expression. This mapping is passed via the  bits_overrides  parameter in the constructor.", 
+            "title": "Flexible Bit-Widths"
+        }, 
+        {
+            "location": "/design/index.html#weights-quantization", 
+            "text": "The  Quantizer  class also provides an API to quantize the weights of all layers at once. To use it, the  param_quantization_fn  attribute needs to point to a function that accepts a tensor and the number of bits. During model transformation, the  Quantizer  class will build a list of all model parameters that need to be quantized along with their bit-width. Then, the  quantize_params  function can be called, which will iterate over all parameters and quantize them using  params_quantization_fn .", 
+            "title": "Weights Quantization"
+        }, 
+        {
+            "location": "/design/index.html#training-with-quantization", 
+            "text": "The  Quantizer  class supports training with quantization in the loop, as described  here . This is enabled by setting  train_with_fp_copy=True  in the  Quantizer  constructor. At model transformation, in each module that has parameters that should be quantized, a new  torch.nn.Parameter  is added, which will maintain the required full precision copy of the parameters. Note that this is done in-place - a new module  is not  created. We preferred not to sub-class the existing PyTorch modules for this purpose. In order to this in-place, and also guarantee proper back-propagation through the weights quantization function, we employ the following \"hack\":   The existing  torch.nn.Parameter , e.g.  weights , is replaced by a  torch.nn.Parameter  named  float_weight .  To maintain the existing functionality of the module, we then register a  buffer  in the module with the original name -  weights .  During training,  float_weight  will be passed to  param_quantization_fn  and the result will be stored in  weight .   The base  Quantizer  class is implemented in  distiller/quantization/quantizer.py . \nFor a simple sub-class implementing symmetric linear quantization, see  SymmetricLinearQuantizer  in  distiller/quantization/range_linear.py . For examples of lower-precision methods using training with quantization see  DorefaQuantizer  and  WRPNQuantizer  in  distiller/quantization/clipped_linear.py", 
+            "title": "Training with Quantization"
         }
     ]
 }
\ No newline at end of file
diff --git a/docs/sitemap.xml b/docs/sitemap.xml
index 2a7ed78..2b0ecb3 100644
--- a/docs/sitemap.xml
+++ b/docs/sitemap.xml
@@ -4,7 +4,7 @@
     
     <url>
      <loc>/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -12,7 +12,7 @@
     
     <url>
      <loc>/install/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -20,7 +20,7 @@
     
     <url>
      <loc>/usage/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -28,7 +28,7 @@
     
     <url>
      <loc>/schedule/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -37,19 +37,19 @@
         
     <url>
      <loc>/pruning/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
     <url>
      <loc>/regularization/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
     <url>
      <loc>/quantization/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
@@ -59,13 +59,13 @@
         
     <url>
      <loc>/algo_pruning/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
     <url>
      <loc>/algo_quantization/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
         
@@ -74,7 +74,7 @@
     
     <url>
      <loc>/model_zoo/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -82,7 +82,7 @@
     
     <url>
      <loc>/jupyter/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
@@ -90,7 +90,7 @@
     
     <url>
      <loc>/design/index.html</loc>
-     <lastmod>2018-06-14</lastmod>
+     <lastmod>2018-06-22</lastmod>
      <changefreq>daily</changefreq>
     </url>
     
diff --git a/docs/usage/index.html b/docs/usage/index.html
index 11497b5..87a0ad6 100644
--- a/docs/usage/index.html
+++ b/docs/usage/index.html
@@ -75,7 +75,7 @@
         
             <li><a class="toctree-l3" href="#performing-pruning-sensitivity-analysis">Performing pruning sensitivity analysis</a></li>
         
-            <li><a class="toctree-l3" href="#quantization">Quantization</a></li>
+            <li><a class="toctree-l3" href="#direct-quantization-without-training">"Direct" Quantization Without Training</a></li>
         
             <li><a class="toctree-l3" href="#summaries">Summaries</a></li>
         
@@ -287,22 +287,27 @@ These example schedules (YAML) files, contain the command line that is used in o
 <li>ResNet34 (ImageNet)</li>
 <li>Filter-wise pruning sensitivity-analysis:</li>
 <li>ResNet20 (CIFAR10)</li>
-<li>ResNet56 (CIFAR10)</li>
+<li>ResNet56 (CIFAR10)
+<br><br></li>
 </ul>
 </li>
-<li>
-<p><strong>examples/sensitivity-pruning</strong>:</p>
-<ul>
+<li><strong>examples/sensitivity-pruning</strong>:<ul>
 <li>AlexNet sensitivity pruning with Iterative Pruning</li>
-<li>AlexNet sensitivity pruning with One-Shot Pruning</li>
+<li>AlexNet sensitivity pruning with One-Shot Pruning
+<br><br></li>
 </ul>
 </li>
-<li>
-<p><strong>examples/ssl</strong>:</p>
-<ul>
+<li><strong>examples/ssl</strong>:<ul>
 <li>ResNet20 baseline training (CIFAR10 dataset)</li>
 <li>Structured Sparsity Learning (SSL) with layer removal on ResNet20</li>
-<li>SSL with channels removal on ResNet20</li>
+<li>SSL with channels removal on ResNet20
+<br><br></li>
+</ul>
+</li>
+<li><strong>examples/quantization</strong>:<ul>
+<li>AlexNet w. Batch-Norm (base FP32 + DoReFa)</li>
+<li>Pre-activation ResNet20 on CIFAR10 (base FP32 + DoReFa)</li>
+<li>Pre-activation ResNet18 on ImageNEt (base FP32 + DoReFa)</li>
 </ul>
 </li>
 </ul>
@@ -319,8 +324,8 @@ Results are output as a CSV file (<code>sensitivity.csv</code>) and PNG file (<c
 
 <p>The <code>sense</code> command-line argument can be set to either <code>element</code> or <code>filter</code>, depending on the type of analysis you want done.<br></p>
 <p>There is also a <a href="http://localhost:8888/notebooks/sensitivity_analysis.ipynb">Jupyter notebook</a> with example invocations, outputs and explanations.</p>
-<h2 id="quantization">Quantization</h2>
-<p>Currently Distiller support 8-bit quantization only (quantization of lower precision data types will follow shortly) which does not require training, so any model (whether pruned or not) can be quantized.<br>
+<h2 id="direct-quantization-without-training">"Direct" Quantization Without Training</h2>
+<p>Distiller supports 8-bit quantization of trained modules without re-training (using <a href="../algo_quantization/index.html#symmetric-linear-quantization">Symmetric Linear Quantization</a>). So, any model (whether pruned or not) can be quantized.<br />
 Use the <code>--quantize</code> command-line flag, together with <code>--evaluate</code> to evaluate the accuracy of your model after quantization.  The following example qunatizes ResNet18 for ImageNet:</p>
 <pre><code>$ python3 compress_classifier.py -a resnet18 ../../../data.imagenet  --pretrained --quantize --evaluate
 </code></pre>
-- 
GitLab