XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks
code in Torch 7.0 https://github.com/allenai/XNOR-Net
本文主要是简化CNN网络,使得CNN网络能够在CPU实时跑起来,但是会牺牲一些精度。本文提出了两个不同的简化网络 :Binary-Weight-Networks 和 XNOR-Networks。Binary-Weight-Networks 只是对CNN网络的滤波器进行二值化近似,使其占内存降低32倍多,而 XNOR-Networks 则对CNN网络的滤波器及其输入都进行二值化近似,This results in 58× faster convolutional operations and 32× memory savings。貌似会有一天能够在手机APP上跑起高大上的CNN网络,而且精度不会牺牲太多。
3 Binary Convolutional Neural Network
对于每一次CNN网络,我们使用一个三元素 《I,W,#》来表示,I 表示卷积输入,W表示滤波器,#表示卷积算子
3.1 Binary-Weight-Networks
该网络主要是对W 进行二值化,主要是一些数学公式的推导,公式推导如下