class DNN::Initializers::Xavier

Public Class Methods

new(seed: true) click to toggle source
Calls superclass method DNN::Initializers::Initializer::new
# File lib/dnn/core/initializers.rb, line 119
def initialize(seed: true)
  super
end

Public Instance Methods

init_param(layer, param) click to toggle source
# File lib/dnn/core/initializers.rb, line 123
def init_param(layer, param)
  Xumo::SFloat.srand(@seed)
  num_prev_units = layer.input_shape.reduce(:*)
  param.data = param.data.rand_norm / Math.sqrt(num_prev_units)
end