Depthwise Separable Convolution
Suppose we have a input image of size on which we apply filters of size to get a output image of size . This output image then put through point-wise convolution, that is we use filters of size to get a output image of size .
Now this could have been done directly also by straight away using filters of size . But this would mean we would have to perform more computations. In general using a Depthwise Separable Convolution reduces the computation by a factor of
MobileNet
In the original MobileNet paper the Depthwise Separable layer is used 13 times. In the v2 of this paper a residual connection was used.
In the MobileNet v2 the following architecture is used :
- We apply a expansion layer in which we expand the input image using multiple
1 x 1filters. - Then a
Depthwiselayer is applied and then aPointwiseone.
This is used 17 times in the original paper.
Now let us look at Transfer Learning
For the code implementation of this network go to - Code implementation of MobileNet with Transfer Learning.