class_docstr: Atrous Spatial Pyramid Pooling with Separable Convolution.
  
         average pooling with FC layer
         1x1 Convolution
  in --> Separable Convolution(k=12)   --> concat --> 1x1 Convolution
         Separable Convolution(k=24)
         Separable Convolution(k=36)
  
  Args:
      in_channels (int): Number of channels of input arrays.
      out_channels (int): Number of channels of output arrays.
      dilate_list (tuple of ints): Tuple of Dilation factors.
          the length of this tuple must be 3.
      bn_kwargs (dict): Keywod arguments passed to initialize the batch
          normalization layers of :class:`chainercv.links.Conv2DBNActiv` and
          :class:`chainercv.links.SeparableConv2DBNActiv`.
code: def forward(self, x):
      h = []
      h.append(self.image_pooling(x))
      h.append(self.conv1x1(x))
      h.append(self.atrous1(x))
      h.append(self.atrous2(x))
      h.append(self.atrous3(x))
      h = F.concat(h, axis=1)
      h = self.proj(h)
      h = F.dropout(h)
  
      return h
  
file_path: chainercv/chainercv/links/model/deeplab/aspp.py
imports: from __future__ import division
  import chainer
  import chainer.functions
  from chainercv.links import Conv2DBNActiv
  from chainercv.links import SeparableConv2DBNActiv
label_desc: Use image node_id 3 for calling the SeparableASPP obj's underlying member method code with example usage: obj.forward(x) and returns: h