Class: DNN::Initializers::Initializer

Inherits:
Object
  • Object
show all
Defined in:
lib/dnn/core/initializers.rb

Direct Known Subclasses

Const, He, RandomNormal, RandomUniform, Xavier, Zeros

Instance Method Summary collapse

Constructor Details

#initialize(seed: false) ⇒ Initializer

Returns a new instance of Initializer.

Parameters:

  • seed (Boolean | Integer) (defaults to: false) —

    Seed of random number used for initialize parameter. Set true to determine seed as random.



7
8
9
# File 'lib/dnn/core/initializers.rb', line 7

def initialize(seed: false)
  @seed = seed == true ? rand(1 << 31) : seed
end

Instance Method Details

#init_param(layer, param) ⇒ Object

Initialization of learning parameters.

Parameters:

Raises:

  • (NotImplementedError)


14
15
16
# File 'lib/dnn/core/initializers.rb', line 14

def init_param(layer, param)
  raise NotImplementedError.new("Class '#{self.class.name}' has implement method 'init_param'")
end

#to_hash(merge_hash = nil) ⇒ Object



18
19
20
21
22
# File 'lib/dnn/core/initializers.rb', line 18

def to_hash(merge_hash = nil)
  hash = { class: self.class.name, seed: @seed }
  hash.merge!(merge_hash) if merge_hash
  hash
end