class_docstr: Initializes parameters with the single value decomposition of a
  random gaussian matrix.
  
  Implementation taken from Lasagne. Reference: Saxe et al., http://arxiv.org/abs/1312.6120
class_docstr_tok: ["Initializes","parameters","with","the","single","value","decomposition","of","a","random","gaussian","matrix",".","Implementation","taken","from","Lasagne",".","Reference",":","Saxe","et","al.",",","http",":","\/\/arxiv.org\/abs\/1312.6120"]
docstr: Fill the provided tensor using the Orthonormal method.
  
  Args:
      params (tensor): Tensor to fill
docstr_tok: ["Fill","the","provided","tensor","using","the","Orthonormal","method",".","Args",":","params","(","tensor",")",":","Tensor","to","fill"]
code: def fill(self, param):
      """
      Fill the provided tensor using the Orthonormal method.
  
      Args:
          params (tensor): Tensor to fill
      """
      a = np.random.normal(0.0, 1.0, param.shape)
      u, _, v = np.linalg.svd(a, full_matrices=False)
      # pick the one with the correct shape
      q = u if u.shape == param.shape else v
      param[:] = self.scale * q
  
imports: import numpy
  from neon import NervanaObject
  from neon.backends.backend import Tensor
label_desc: Use image node_id 2 for calling the Orthonormal obj's underlying member method code with example usage: obj.fill(param) without return types