Class: Micrograd::Layer

Inherits:
Object
  • Object
show all
Defined in:
lib/micrograd/layer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(inputs, outputs) ⇒ Layer

Returns a new instance of Layer.



5
6
7
# File 'lib/micrograd/layer.rb', line 5

def initialize(inputs, outputs)
  @neurons = Array.new(outputs) { Neuron.new(inputs) }
end

Instance Attribute Details

#neuronsObject (readonly)

Returns the value of attribute neurons.



9
10
11
# File 'lib/micrograd/layer.rb', line 9

def neurons
  @neurons
end

Instance Method Details

#call(xs) ⇒ Object



11
12
13
# File 'lib/micrograd/layer.rb', line 11

def call(xs)
  @neurons.map { |n| n.call(xs) }
end

#parametersObject



15
# File 'lib/micrograd/layer.rb', line 15

def parameters = neurons.flat_map(&:parameters)