Depthwise separable convolution

This new convolution block (tf.layers.separable_conv2d) consists of two main parts: a depthwise convolution layer, followed by a 1x1 pointwise convolution layer. This block differs from the normal convolution in a couple of ways:

  • In the normal convolution layer, each filter F will be applied to all channels on the input channel at the same time (F is applied to each channel and then summed)
  • This new convolution F is applied on each channel separately, and the results get concatenated to some intermediate tensor (how much is controlled by the Depth Multiplier, DM parameter)

The depthwise convolution is extremely efficient relative to standard convolution. However, it only filters input channels, and it does not combine them to create new features.​

Now, the depthwise output tensor will be mapped to some desired output channel depth using a 1x1 conv layer that will do the mixing between channels that normally occurs in the standard convolution layers. The difference is that the DM parameter can be used to throw away some information. Again, the 1x1 conv has been used just to adapt volume sizes.​

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.191.237.79