class_docstr: Fully-connected layer with simplified dropconnect regularization.
  
  Notice:
  This implementation cannot be used for reproduction of the paper.
  There is a difference between the current implementation and the
  original one.
  The original version uses sampling with gaussian distribution before
  passing activation function, whereas the current implementation averages
  before activation.
  
  Args:
      in_size (int): Dimension of input vectors. If ``None``, parameter
          initialization will be deferred until the first forward data pass
          at which time the size will be determined.
      out_size (int): Dimension of output vectors.
      nobias (bool): If ``True``, then this link does not use the bias term.
      initialW (:ref:`initializer <initializer>`): Initializer to
          initialize the weight. When it is :class:`numpy.ndarray`,
          its ``ndim`` should be 3.
      initial_bias (:ref:`initializer <initializer>`): Initializer to
          initialize the bias. If ``None``, the bias will be initialized to
          zero. When it is :class:`numpy.ndarray`, its ``ndim`` should be 2.
  
  Attributes:
      W (~chainer.Variable): Weight parameter.
      b (~chainer.Variable): Bias parameter.
  
  .. seealso:: :func:`~chainer.functions.simplified_dropconnect`
  
  .. seealso::
      Li, W., Matthew Z., Sixin Z., Yann L., Rob F. (2013).
      Regularization of Neural Network using DropConnect.
      International Conference on Machine Learning.
      `URL <https://cs.nyu.edu/~wanli/dropc/>`_
docstr: Applies the simplified dropconnect layer.
  
  Args:
      x (chainer.Variable or :ref:`ndarray`):
          Batch of input vectors. Its first dimension ``n`` is assumed
          to be the *minibatch dimension*.
      train (bool):
          If ``True``, executes simplified dropconnect.
          Otherwise, simplified dropconnect link works as a linear unit.
      mask (None or chainer.Variable or :ref:`ndarray`):
          If ``None``, randomized simplified dropconnect mask is
          generated. Otherwise, The mask must be ``(n, M, N)`` or
          ``(M, N)`` shaped array, and `use_batchwise_mask` is ignored.
          Main purpose of this option is debugging.
          `mask` array will be used as a dropconnect mask.
      use_batchwise_mask (bool):
          If ``True``, dropped connections depend on each sample in
          mini-batch.
  
  Returns:
      ~chainer.Variable: Output of the simplified dropconnect layer.
code: def forward(self, x, train=True, mask=None, use_batchwise_mask=True):
      """Applies the simplified dropconnect layer.
  
      Args:
          x (chainer.Variable or :ref:`ndarray`):
              Batch of input vectors. Its first dimension ``n`` is assumed
              to be the *minibatch dimension*.
          train (bool):
              If ``True``, executes simplified dropconnect.
              Otherwise, simplified dropconnect link works as a linear unit.
          mask (None or chainer.Variable or :ref:`ndarray`):
              If ``None``, randomized simplified dropconnect mask is
              generated. Otherwise, The mask must be ``(n, M, N)`` or
              ``(M, N)`` shaped array, and `use_batchwise_mask` is ignored.
              Main purpose of this option is debugging.
              `mask` array will be used as a dropconnect mask.
          use_batchwise_mask (bool):
              If ``True``, dropped connections depend on each sample in
              mini-batch.
  
      Returns:
          ~chainer.Variable: Output of the simplified dropconnect layer.
  
      """
      if self.W.array is None:
          self._initialize_params(x.size // len(x))
      if mask is not None and "mask" not in self.__dict__:
          self.add_persistent("mask", mask)
      return simplified_dropconnect.simplified_dropconnect(
          x, self.W, self.b, self.ratio, train, mask, use_batchwise_mask
      )
  
file_path: chainer/chainer/links/activation/simplified_dropconnect.py
imports: import numpy
  from chainer.functions.noise import simplified_dropconnect
  from chainer import initializers
  from chainer import link
  from chainer import variable
label_desc: Use image node_id 3 for calling the SimplifiedDropconnect obj's underlying member method code with example usage: obj.forward(x, train, mask, use_batchwise_mask) and returns: simplified_dropconnect