Loading...
Searching...
No Matches
opennn::EmbeddingLookupOperator Struct Reference

#include <opennn/network/operators/embedding_lookup_operator.h>

Inheritance diagram for opennn::EmbeddingLookupOperator:
opennn::Operator

Public Member Functions

void set (Index, Index, Index)
 
vector< TensorSpec > parameter_specs () const override
 
vector< SlotQuantization > parameter_quantization () const override
 
vector< TensorSpec > state_specs () const override
 
vector< ParameterSlot > parameter_slots () override
 
void link_states (span< const TensorView >) override
 
void initialize_states () override
 
void link_parameter_scales (span< const TensorView >) override
 
void set_parameters_random () override
 
void set_parameters_glorot () override
 
void init_positional_encoding ()
 
void init_trainable_positional ()
 
void forward_propagate (ForwardPropagation &, size_t, ForwardPropagationMode) override
 
void back_propagate (ForwardPropagation &, BackPropagation &, size_t) const override
 
void load_state_from_JSON (const Json *) override
 
- Public Member Functions inherited from opennn::Operator
virtual ~Operator ()=default
 
virtual void link_parameters (span< const TensorView > views)
 
virtual void link_gradients (span< const TensorView > views)
 
bool link_slots (span< const TensorView > views, TensorView *ParameterSlot::*member)
 
virtual void set_weights_dtype (Type new_weights_dtype)
 
virtual void set_parameters_pytorch ()
 
virtual void to_JSON (JsonWriter &) const
 
virtual void from_JSON (const Json *)
 
TensorView & get_input (ForwardPropagation &forward_propagation, size_t layer, size_t slot_index=0) const noexcept
 
vector< TensorView > & get_inputs (ForwardPropagation &forward_propagation, size_t layer) const noexcept
 
TensorView & get_output (ForwardPropagation &forward_propagation, size_t layer, size_t slot_index=0) const noexcept
 
TensorView & get_output_delta (BackPropagation &back_propagation, size_t layer, size_t slot_index=0) const noexcept
 
TensorView & get_input_delta (BackPropagation &back_propagation, size_t layer, size_t slot_index=0) const noexcept
 

Public Attributes

Index vocabulary_size = 0
 
Index sequence_length = 0
 
Index embedding_dimension = 0
 
bool scale_embedding = false
 
bool add_positional_encoding = false
 
bool positional_trainable = false
 
bool export_valid_lengths = false
 
bool weights_follow_compute_dtype = false
 
TensorView weights
 
TensorView weight_scale
 
TensorView positional_encoding
 
TensorView weight_gradient
 
TensorView positional_gradient
 
- Public Attributes inherited from opennn::Operator
Type compute_dtype = Type::FP32
 
Type weights_dtype = Type::FP32
 
vector< size_t > input_slots = {0}
 
vector< size_t > output_slots = {1}
 
vector< size_t > input_delta_slots = {1}
 
vector< size_t > output_delta_slots = {0}
 

Member Function Documentation

◆ back_propagate()

void opennn::EmbeddingLookupOperator::back_propagate ( ForwardPropagation & ,
BackPropagation & ,
size_t  ) const
overridevirtual

Reimplemented from opennn::Operator.

◆ forward_propagate()

void opennn::EmbeddingLookupOperator::forward_propagate ( ForwardPropagation & ,
size_t ,
ForwardPropagationMode  )
overridevirtual

Reimplemented from opennn::Operator.

◆ init_positional_encoding()

void opennn::EmbeddingLookupOperator::init_positional_encoding ( )

◆ init_trainable_positional()

void opennn::EmbeddingLookupOperator::init_trainable_positional ( )

◆ initialize_states()

void opennn::EmbeddingLookupOperator::initialize_states ( )
overridevirtual

Reimplemented from opennn::Operator.

◆ link_parameter_scales()

void opennn::EmbeddingLookupOperator::link_parameter_scales ( span< const TensorView > )
overridevirtual

Reimplemented from opennn::Operator.

◆ link_states()

void opennn::EmbeddingLookupOperator::link_states ( span< const TensorView > )
overridevirtual

Reimplemented from opennn::Operator.

◆ load_state_from_JSON()

void opennn::EmbeddingLookupOperator::load_state_from_JSON ( const Json * )
overridevirtual

Reimplemented from opennn::Operator.

◆ parameter_quantization()

vector< SlotQuantization > opennn::EmbeddingLookupOperator::parameter_quantization ( ) const
overridevirtual

Reimplemented from opennn::Operator.

◆ parameter_slots()

vector< ParameterSlot > opennn::EmbeddingLookupOperator::parameter_slots ( )
overridevirtual

Reimplemented from opennn::Operator.

◆ parameter_specs()

vector< TensorSpec > opennn::EmbeddingLookupOperator::parameter_specs ( ) const
overridevirtual

Reimplemented from opennn::Operator.

◆ set()

void opennn::EmbeddingLookupOperator::set ( Index ,
Index ,
Index  )

◆ set_parameters_glorot()

void opennn::EmbeddingLookupOperator::set_parameters_glorot ( )
overridevirtual

Reimplemented from opennn::Operator.

◆ set_parameters_random()

void opennn::EmbeddingLookupOperator::set_parameters_random ( )
overridevirtual

Reimplemented from opennn::Operator.

◆ state_specs()

vector< TensorSpec > opennn::EmbeddingLookupOperator::state_specs ( ) const
overridevirtual

Reimplemented from opennn::Operator.

Member Data Documentation

◆ add_positional_encoding

bool opennn::EmbeddingLookupOperator::add_positional_encoding = false

◆ embedding_dimension

Index opennn::EmbeddingLookupOperator::embedding_dimension = 0

◆ export_valid_lengths

bool opennn::EmbeddingLookupOperator::export_valid_lengths = false

◆ positional_encoding

TensorView opennn::EmbeddingLookupOperator::positional_encoding

◆ positional_gradient

TensorView opennn::EmbeddingLookupOperator::positional_gradient

◆ positional_trainable

bool opennn::EmbeddingLookupOperator::positional_trainable = false

◆ scale_embedding

bool opennn::EmbeddingLookupOperator::scale_embedding = false

◆ sequence_length

Index opennn::EmbeddingLookupOperator::sequence_length = 0

◆ vocabulary_size

Index opennn::EmbeddingLookupOperator::vocabulary_size = 0

◆ weight_gradient

TensorView opennn::EmbeddingLookupOperator::weight_gradient

◆ weight_scale

TensorView opennn::EmbeddingLookupOperator::weight_scale

◆ weights

TensorView opennn::EmbeddingLookupOperator::weights

◆ weights_follow_compute_dtype

bool opennn::EmbeddingLookupOperator::weights_follow_compute_dtype = false