Class: DNN::Optimizers::SGD

Inherits:
Optimizer show all
Defined in:
lib/dnn/core/optimizers.rb

Instance Attribute Summary collapse

Attributes inherited from Optimizer

#learning_rate

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Optimizer

#update

Constructor Details

#initialize(learning_rate = 0.01, momentum: 0) ⇒ SGD

Returns a new instance of SGD.

Parameters:

  • learning_rate (Float) (defaults to: 0.01) —

    Learning rate.

  • momentum (Float) (defaults to: 0) —

    momentum coefficient.



48
49
50
51
52
# File 'lib/dnn/core/optimizers.rb', line 48

def initialize(learning_rate = 0.01, momentum: 0)
  super(learning_rate)
  @momentum = momentum
  @v = {}
end

Instance Attribute Details

#momentum ⇒ Float

Return the momentum coefficient.

Returns:

  • (Float) —

    Return the momentum coefficient.



40
41
42
# File 'lib/dnn/core/optimizers.rb', line 40

def momentum
  @momentum
end

Class Method Details

.from_hash(hash) ⇒ Object



42
43
44
# File 'lib/dnn/core/optimizers.rb', line 42

def self.from_hash(hash)
  self.new(hash[:learning_rate], momentum: hash[:momentum])
end

Instance Method Details

#to_hash ⇒ Object



54
55
56
# File 'lib/dnn/core/optimizers.rb', line 54

def to_hash
  super(momentum: @momentum)
end