Loading...
Searching...
No Matches
opennn::C2PSAOperator Struct Reference
#include <opennn/network/operators/c2psa_operator.h>
Inheritance diagram for opennn::C2PSAOperator:
Public Types | |
| enum | Slot { Input , Split , Query , Key , AttentionWeights , Value , Concatenated , ForwardScratch , Output } |
Public Member Functions | |
| void | set (Index new_h, Index new_w, Index new_channels) |
| vector< TensorSpec > | parameter_specs () const override |
| vector< ParameterSlot > | parameter_slots () override |
| void | set_parameters_random () override |
| void | set_parameters_glorot () override |
| void | forward_propagate (ForwardPropagation &, size_t, ForwardPropagationMode) override |
| void | back_propagate (ForwardPropagation &, BackPropagation &, size_t) const override |
Public Member Functions inherited from opennn::Operator | |
| virtual | ~Operator ()=default |
| virtual vector< TensorSpec > | state_specs () const |
| virtual vector< SlotQuantization > | parameter_quantization () const |
| virtual void | link_parameters (span< const TensorView > views) |
| virtual void | link_gradients (span< const TensorView > views) |
| virtual void | link_states (span< const TensorView >) |
| virtual void | link_parameter_scales (span< const TensorView >) |
| bool | link_slots (span< const TensorView > views, TensorView *ParameterSlot::*member) |
| virtual void | initialize_states () |
| 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 *) |
| virtual void | load_state_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 | h = 0 |
| Index | w = 0 |
| Index | channels = 0 |
| TensorView | Wq |
| TensorView | Wk |
| TensorView | Wv |
| TensorView | Wout |
| TensorView | dWq |
| TensorView | dWk |
| TensorView | dWv |
| TensorView | dWout |
| optional< size_t > | forward_scratch_slot |
| optional< size_t > | backward_scratch_slot |
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 Enumeration Documentation
◆ Slot
Member Function Documentation
◆ back_propagate()
|
overridevirtual |
Reimplemented from opennn::Operator.
◆ forward_propagate()
|
overridevirtual |
Reimplemented from opennn::Operator.
◆ parameter_slots()
|
overridevirtual |
Reimplemented from opennn::Operator.
◆ parameter_specs()
|
overridevirtual |
Reimplemented from opennn::Operator.
◆ set()
| void opennn::C2PSAOperator::set | ( | Index | new_h, |
| Index | new_w, | ||
| Index | new_channels ) |
◆ set_parameters_glorot()
|
overridevirtual |
Reimplemented from opennn::Operator.
◆ set_parameters_random()
|
inlineoverridevirtual |
Reimplemented from opennn::Operator.
Member Data Documentation
◆ backward_scratch_slot
| optional<size_t> opennn::C2PSAOperator::backward_scratch_slot |
◆ channels
| Index opennn::C2PSAOperator::channels = 0 |
◆ dWk
| TensorView opennn::C2PSAOperator::dWk |
◆ dWout
| TensorView opennn::C2PSAOperator::dWout |
◆ dWq
| TensorView opennn::C2PSAOperator::dWq |
◆ dWv
| TensorView opennn::C2PSAOperator::dWv |
◆ forward_scratch_slot
| optional<size_t> opennn::C2PSAOperator::forward_scratch_slot |
◆ h
| Index opennn::C2PSAOperator::h = 0 |
◆ w
| Index opennn::C2PSAOperator::w = 0 |
◆ Wk
| TensorView opennn::C2PSAOperator::Wk |
◆ Wout
| TensorView opennn::C2PSAOperator::Wout |
◆ Wq
| TensorView opennn::C2PSAOperator::Wq |
◆ Wv
| TensorView opennn::C2PSAOperator::Wv |
Public Member Functions inherited from