layer_m Module


Uses

  • module~~layer_m~~UsesGraph module~layer_m layer_m module~inference_engine_m_ inference_engine_m_ module~layer_m->module~inference_engine_m_ module~kind_parameters_m kind_parameters_m module~layer_m->module~kind_parameters_m module~neuron_m neuron_m module~layer_m->module~neuron_m module~tensor_range_m tensor_range_m module~layer_m->module~tensor_range_m sourcery_string_m sourcery_string_m module~layer_m->sourcery_string_m module~inference_engine_m_->module~kind_parameters_m module~inference_engine_m_->module~tensor_range_m module~inference_engine_m_->sourcery_string_m module~activation_strategy_m activation_strategy_m module~inference_engine_m_->module~activation_strategy_m module~differentiable_activation_strategy_m differentiable_activation_strategy_m module~inference_engine_m_->module~differentiable_activation_strategy_m module~tensor_m tensor_m module~inference_engine_m_->module~tensor_m sourcery_file_m sourcery_file_m module~inference_engine_m_->sourcery_file_m module~neuron_m->module~kind_parameters_m module~neuron_m->sourcery_string_m module~tensor_range_m->module~tensor_m sourcery_m sourcery_m module~tensor_range_m->sourcery_m module~activation_strategy_m->module~kind_parameters_m module~activation_strategy_m->sourcery_string_m module~differentiable_activation_strategy_m->module~activation_strategy_m module~tensor_m->module~kind_parameters_m

Used by

  • module~~layer_m~~UsedByGraph module~layer_m layer_m module~inference_engine_s inference_engine_s module~inference_engine_s->module~layer_m module~layer_s layer_s module~layer_s->module~layer_m

Interfaces

public interface layer_t

  • private recursive module function construct_layer(layer_lines, start) result(layer)

    construct a linked list of layer_t objects from an array of JSON-formatted text lines

    Arguments

    Type IntentOptional Attributes Name
    type(string_t), intent(in) :: layer_lines(:)
    integer, intent(in) :: start

    Return Value type(layer_t), target

interface

  • private module function count_inputs(layer) result(num_inputs)

    Arguments

    Type IntentOptional Attributes Name
    class(layer_t), intent(in) :: layer

    Return Value integer

interface

  • private module function count_layers(layer) result(num_layers)

    Arguments

    Type IntentOptional Attributes Name
    class(layer_t), intent(in), target :: layer

    Return Value integer

interface

  • private module function count_neurons(layer) result(neurons_per_layer_result)

    Arguments

    Type IntentOptional Attributes Name
    class(layer_t), intent(in), target :: layer

    Return Value integer, allocatable, (:)

interface

  • private module function inference_engine(hidden_layers, metadata, output_layer, input_range, output_range) result(inference_engine_)

    Arguments

    Type IntentOptional Attributes Name
    class(layer_t), intent(in), target :: hidden_layers
    type(string_t), intent(in) :: metadata(:)
    type(layer_t), intent(in), target :: output_layer
    type(tensor_range_t), intent(in) :: input_range
    type(tensor_range_t), intent(in) :: output_range

    Return Value type(inference_engine_t)

interface

  • private module function neurons_per_layer(self) result(num_neurons)

    Arguments

    Type IntentOptional Attributes Name
    class(layer_t), intent(in), target :: self

    Return Value integer

interface

  • private module function next_allocated(self) result(next_is_allocated)

    Arguments

    Type IntentOptional Attributes Name
    class(layer_t), intent(in) :: self

    Return Value logical

interface

  • private module function next_pointer(self) result(next_ptr)

    Arguments

    Type IntentOptional Attributes Name
    class(layer_t), intent(in), target :: self

    Return Value type(layer_t), pointer


Derived Types

type, public ::  layer_t

linked list of layers, each comprised of a linked list of neurons

Components

Type Visibility Attributes Name Initial
type(neuron_t), private :: neuron

linked list of this layer's neurons

type(layer_t), private, allocatable :: next

next layer

Constructor

private recursive, module function construct_layer (layer_lines, start)

construct a linked list of layer_t objects from an array of JSON-formatted text lines

Type-Bound Procedures

procedure, public :: count_inputs
procedure, public :: count_layers
procedure, public :: count_neurons
procedure, public :: inference_engine
procedure, public :: neurons_per_layer
procedure, public :: next_allocated
procedure, public :: next_pointer