Class: Mirlo::ANN
- Inherits:
-
Object
- Object
- Mirlo::ANN
- Defined in:
- lib/mirlo/ann/ann.rb
Instance Attribute Summary collapse
-
#ann ⇒ Object
readonly
Returns the value of attribute ann.
Class Method Summary collapse
Instance Method Summary collapse
- #connect_with_last_layer(layer) ⇒ Object
- #hidden_layer(n_neurons) ⇒ Object
-
#initialize(*args) ⇒ ANN
constructor
A new instance of ANN.
- #input_layer(n_inputs) ⇒ Object
- #learning_rate(l_rate) ⇒ Object
- #output_layer(n_outputs) ⇒ Object
Constructor Details
#initialize(*args) ⇒ ANN
Returns a new instance of ANN.
10 11 12 |
# File 'lib/mirlo/ann/ann.rb', line 10 def initialize(*args) @ann = Mirlo::MultilayerPerceptron.new(*args) end |
Instance Attribute Details
#ann ⇒ Object (readonly)
Returns the value of attribute ann.
2 3 4 |
# File 'lib/mirlo/ann/ann.rb', line 2 def ann @ann end |
Class Method Details
.build(*args, &block) ⇒ Object
4 5 6 7 8 |
# File 'lib/mirlo/ann/ann.rb', line 4 def self.build(*args, &block) instance = new(*args) instance.instance_eval(&block) instance.ann end |
Instance Method Details
#connect_with_last_layer(layer) ⇒ Object
38 39 40 41 42 43 |
# File 'lib/mirlo/ann/ann.rb', line 38 def connect_with_last_layer(layer) previous_layer = @ann.layers.last previous_layer.next_layer = layer layer.previous_layer = previous_layer end |
#hidden_layer(n_neurons) ⇒ Object
22 23 24 25 26 27 28 |
# File 'lib/mirlo/ann/ann.rb', line 22 def hidden_layer(n_neurons) hidden_layer = Mirlo::HiddenLayer.new(n_neurons) connect_with_last_layer(hidden_layer) @ann.hidden_layers << hidden_layer end |
#input_layer(n_inputs) ⇒ Object
18 19 20 |
# File 'lib/mirlo/ann/ann.rb', line 18 def input_layer(n_inputs) @ann.input_layer = Mirlo::InputLayer.new(n_inputs) end |
#learning_rate(l_rate) ⇒ Object
14 15 16 |
# File 'lib/mirlo/ann/ann.rb', line 14 def learning_rate(l_rate) @ann.learning_rate = l_rate end |
#output_layer(n_outputs) ⇒ Object
30 31 32 33 34 35 36 |
# File 'lib/mirlo/ann/ann.rb', line 30 def output_layer(n_outputs) output_layer = Mirlo::OutputLayer.new(n_outputs) connect_with_last_layer(output_layer) @ann.output_layer = output_layer end |