Class: DNN::Optimizers::AdaGrad

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

Instance Attribute Summary collapse

Attributes inherited from Optimizer

#clip_norm, #status

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Optimizer

#dump, load, #update

Constructor Details

#initialize(lr = 0.01, eps: 1e-7, clip_norm: nil) ⇒ AdaGrad

Returns a new instance of AdaGrad.

Parameters:

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

    Learning rate.

  • eps (Float) (defaults to: 1e-7) —

    Value to avoid division by zero.



124
125
126
127
128
129
130
# File 'lib/dnn/core/optimizers.rb', line 124

def initialize(lr = 0.01, eps: 1e-7, clip_norm: nil)
  super(clip_norm: clip_norm)
  @lr = lr
  @eps = eps
  @g = {}
  @status = { g: @g }
end

Instance Attribute Details

#eps ⇒ Object

Returns the value of attribute eps.



116
117
118
# File 'lib/dnn/core/optimizers.rb', line 116

def eps
  @eps
end

#lr ⇒ Object

Returns the value of attribute lr.



115
116
117
# File 'lib/dnn/core/optimizers.rb', line 115

def lr
  @lr
end

Class Method Details

.from_hash(hash) ⇒ Object



118
119
120
# File 'lib/dnn/core/optimizers.rb', line 118

def self.from_hash(hash)
  self.new(hash[:lr], eps: hash[:eps], clip_norm: hash[:clip_norm])
end

Instance Method Details

#to_hash ⇒ Object



140
141
142
# File 'lib/dnn/core/optimizers.rb', line 140

def to_hash
  super(lr: @lr, eps: @eps)
end