class_docstr: A general N-dimensional convolutional module.
code: def _make_w(self):
      weight_shape = utils.replicate(
          self.kernel_shape, self._num_spatial_dims, "kernel_shape"
      )
      weight_shape = weight_shape + (
          self.input_channels,
          self.output_channels,
      )
  
      if self.w_init is None:
          # See https://arxiv.org/abs/1502.03167v3.
          fan_in_shape = weight_shape[:-1]
          stddev = 1 / np.sqrt(np.prod(fan_in_shape))
          self.w_init = initializers.TruncatedNormal(stddev=stddev)
  
      return tf.Variable(
          self.w_init(weight_shape, self._dtype), name="w"
      )
  
imports: from typing import Optional, Sequence, Union
  import numpy
  from sonnet.src import base
  from sonnet.src import initializers
  from sonnet.src import once
  from sonnet.src import pad
  from sonnet.src import utils
  import tensorflow
label_desc: Use image node_id 4 for calling the ConvND obj's underlying member method code with example usage: obj._make_w() and returns: tf