class_docstr: Initialize the weight by drawing sample from truncated normal distribution with
  provided mean and standard deviation. Values whose magnitude is more than 2 standard deviations
  from the mean are dropped and re-picked.
  
  In the implementation, we used the method described in
  https://people.sc.fsu.edu/~jburkardt/presentations/truncated_normal.pdf, which is also
  obtained in PyTorch.
  
  Parameters
  ----------
  mean
      Mean of the underlying normal distribution
  stdev
      Standard deviation of the underlying normal distribution
  scale
      The scale of the truncated distribution.
      The values
  **kwargs
      Additional parameters for base Initializer.
docstr: Abstract method to Initialize weight.
code: def _init_weight(self, name, arr):
      # pylint: disable=unused-argument
      """Abstract method to Initialize weight."""
      # Uniformly fill tensor with values from [l, u], then translate to
      # [2l-1, 2u-1].
      arr[:] = mx.np.random.uniform(
          2 * self._l - 1, 2 * self._u - 1, size=arr.shape, ctx=arr.ctx
      )
      # Use inverse cdf transform for normal distribution to get truncated
      # standard normal
      arr[:] = mx.npx.erfinv(arr)
  
      # Transform to proper mean, std
      arr *= self._stdev * math.sqrt(2.0)
      arr += self._mean
      # Clamp to ensure it's in the proper range
      arr[:] = arr.clip(self._a, self._b)
  
file_path: gluon-nlp/src/gluonnlp/initializer.py
imports: import warnings
  import math
  import mxnet
  from mxnet.initializer import Initializer
label_desc: Use image node_id 2 for calling the TruncNorm obj's underlying member method code with example usage: obj._init_weight(name, arr) without return types