Class: GRX::NN::Sequential

Inherits:
Module
  • Object
show all
Defined in:
lib/grx/nn.rb

Overview

Sequential — Contenedor de capas en secuencia

Instance Method Summary collapse

Methods inherited from Module

#call, #zero_grad

Constructor Details

#initialize(*layers) ⇒ Sequential

Returns a new instance of Sequential.



117
118
119
# File 'lib/grx/nn.rb', line 117

def initialize(*layers)
  @layers = layers
end

Instance Method Details

#forward(x) ⇒ Object



121
122
123
# File 'lib/grx/nn.rb', line 121

def forward(x)
  @layers.reduce(x) { |input, layer| layer.call(input) }
end

#parametersObject



125
126
127
# File 'lib/grx/nn.rb', line 125

def parameters
  @layers.flat_map(&:parameters)
end

#to_sObject



129
130
131
132
# File 'lib/grx/nn.rb', line 129

def to_s
  layers_str = @layers.each_with_index.map { |l, i| "  (#{i}): #{l}" }.join("\n")
  "Sequential(\n#{layers_str}\n)"
end