背景
Deep Learningで高速化、高精度化したい時に役立ちそうな論文リストをメモしておきます。
速度の向上
MobileNets: Efficient Convolutional Neural Networks for Mobile Vision
convolutionを2つに分けると精度を大きく落とさず採算量を大幅に小さくする事が出来る。
Pruning and Quantization for Deep Neural Network Acceleration: A
Survey
FP32をFP16に代用する事で計算コストを落とす。
nn.ReLU(inplace=True)
無駄なコピーがなくせる
精度の向上
Deep Residual Learning for Image Recognition
Residualを使うと学習が安定する。
Identity Mappings in Deep Residual Networks
ResBlockは最初にBatchNormとActivationをすると一番精度が高くなる。
Wide Residual Networks
channel数とconvolutionの数は良い感じ塩梅を取ると良い結果が得られる。
Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift
BatchNormをすると学習が安定化する。
MULTI-SCALE CONTEXT AGGREGATION BY
DILATED CONVOLUTIONS
dilationを使う事でreceptive fieldを広げる。
Spatial Pyramid Pooling in Deep Convolutional
Networks for Visual Recognition
SPPでreceptive fieldを広げられる。
Dropout: A Simple Way to Prevent Neural Networks from
Overfitting
Dropoutするとoverfittingを防げる。