Module: Sabina::Configuration

Included in:
Sabina
Defined in:
lib/sabina/configuration.rb

Constant Summary collapse

OPTIONS_KEYS =
[
  :layers,
  :mini_batch_size,
  :training_data,
  :learning_rate,
].freeze
DEFAULTS =
{
  :layers => [
    Sabina::Layer::MPInputLayer.new(1),
    Sabina::Layer::MPHiddenLayer.new(1),
    Sabina::Layer::MPOutputLayer.new(1)
  ],
  :mini_batch_size => 10,
  :training_data => [{:x => [0], :d => [0]}],
  :learning_rate => 0.01,
}

Instance Method Summary collapse

Instance Method Details

#configure {|_self| ... } ⇒ Object

This method is used for setting configuration options.

Yields:

  • (_self)

Yield Parameters:



25
26
27
# File 'lib/sabina/configuration.rb', line 25

def configure
  yield self
end

#optionsObject

Create a hash of options.



30
31
32
# File 'lib/sabina/configuration.rb', line 30

def options
  Hash[*OPTIONS_KEYS.map{ |key| [key, send(key)] }.flatten(1)]
end

#resetObject

Reset all options to their default values.



35
36
37
38
39
# File 'lib/sabina/configuration.rb', line 35

def reset
  DEFAULTS.each do |option, default|
    self.send("#{option}=".to_sym, default)
  end
end