class_docstr: Average pooling over a set of N-dimensional planes.
  
  .. warning::
  
      This feature is experimental. The interface can change in the future.
code: def forward_chainerx(self, inputs):
      ndim = self.ndim
      ksize = self.ksize
      stride = self.stride
      pad = self.pad
      pad_value = self.pad_value
  
      (x,) = inputs
      if x.device.backend.name == "cuda" and ndim not in (2, 3):
          return chainer.Fallback
  
      if pad_value == 0:
          pad_mode = "zero"
      elif pad_value is None:
          pad_mode = "ignore"
      else:
          assert False
  
      y = chainerx.average_pool(x, ksize, stride, pad, pad_mode)
      return (y,)
  
imports: import functools
  import operator
  import numpy
  import six
  import chainer
  from chainer import backend
  from chainer.backends import cuda
  from chainer import function_node
  from chainer.functions.pooling import average_pooling_nd_kernel
  from chainer.functions.pooling import pooling_nd
  from chainer.utils import conv
  from chainer.utils import conv_nd
  import chainerx
label_desc: Use image node_id 3 for calling the AveragePoolingND obj's underlying member method code with example usage: obj.forward_chainerx(inputs) and returns: y, chainer