Loading...
Searching...
No Matches
layer.h
Go to the documentation of this file.
112 virtual ActivationFunction get_output_activation() const { return ActivationFunction::Identity; }
127 virtual void forward_propagate(ForwardPropagation& forward_propagation, size_t layer, ForwardPropagationMode pass)
133 virtual void back_propagate(ForwardPropagation& forward_propagation, BackPropagation& back_propagation, size_t i) const
Definition json.h:75
Definition json.h:92
Definition json.h:24
Index get_parameters_number() const
virtual void apply_input_shape(const Shape &new_input_shape)
Definition layer.h:201
virtual bool allows_input_delta_alias() const noexcept
Definition layer.h:104
void set_input_shape(const Shape &new_input_shape)
Definition layer.h:59
const vector< TensorView > & get_parameter_scales() const noexcept
Definition layer.h:182
virtual bool is_forward_slot_inference_elidable(size_t, Device) const noexcept
Definition layer.h:95
virtual size_t get_recomputable_forward_slot() const noexcept
Definition layer.h:99
virtual bool uses_sequence_position() const noexcept
Definition layer.h:119
virtual bool backward_uses_forward_output() const noexcept
Definition layer.h:101
void set_compute_device(Device new_compute_device)
Definition layer.h:170
virtual void on_compute_dtype_changed()
Definition layer.h:172
const vector< TensorView > & get_parameter_views() const noexcept
Definition layer.h:179
virtual Index get_sources_number() const noexcept
Definition layer.h:114
virtual string write_expression(const vector< string > &, const vector< string > &) const
Definition layer.h:151
virtual void recompute_forward_slot(ForwardPropagation &, size_t)
Definition layer.h:100
virtual bool allows_successors() const noexcept
Definition layer.h:116
virtual vector< TensorSpec > get_state_specs() const
virtual void set_tied_weight(const TiedWeight &tied_weight)
Definition layer.h:187
virtual ~Layer()=default
static bool refresh_feature_storage(Buffer &storage, bool &dirty, Device device, Index features, Index columns, const function< void(float *)> &fill)
vector< TensorView > & get_parameter_scales()
Definition layer.h:181
virtual ForwardSlotKind get_forward_slot_kind(size_t) const
Definition layer.h:86
virtual vector< TensorSpec > get_parameter_specs() const
const vector< Operator * > & get_operators() const noexcept
Definition layer.h:73
virtual bool preserves_output_delta_during_backward() const noexcept
Definition layer.h:103
virtual bool skip_for_pre_scaled_input() const noexcept
Definition layer.h:118
void set_compute_dtype(Type new_compute_dtype)
Definition layer.h:160
virtual void from_JSON(const JsonDocument &)
float * link_gradients(float *, Device)
virtual bool backward_uses_input(size_t) const noexcept
Definition layer.h:102
virtual vector< TensorSpec > get_backward_specs(Index batch_size) const
Definition layer.h:80
virtual void load_state_from_JSON(const JsonDocument &)
virtual float * link_states(float *, Device)
virtual void write_JSON_body(JsonWriter &) const
Definition layer.h:149
vector< Operator::SlotQuantization > get_parameter_quantization() const
Layer(LayerType type, Trainability trainability=Trainability::Trainable)
Definition layer.h:210
float * link_views_to_operators(vector< TensorView > &, float *, vector< TensorSpec >(Operator::*specs_fn)() const, void(Operator::*link_fn)(span< const TensorView >), Device)
virtual ActivationFunction get_output_activation() const
Definition layer.h:112
virtual void forward_propagate(ForwardPropagation &forward_propagation, size_t layer, ForwardPropagationMode pass)
Definition layer.h:127
virtual vector< TensorSpec > get_forward_specs(Index batch_size) const
Definition layer.h:76
const string & get_name() const
virtual bool allows_bf16_input_cast(size_t) const noexcept
Definition layer.h:121
vector< TensorView > & get_parameter_views()
Definition layer.h:178
virtual bool folds_input_delta_addend(size_t) const noexcept
Definition layer.h:106
void redistribute_parameters_to_operators()
virtual void to_JSON(JsonWriter &) const
virtual Shape get_output_shape() const =0
virtual void back_propagate(ForwardPropagation &forward_propagation, BackPropagation &back_propagation, size_t i) const
Definition layer.h:133
Definition energy_meter.h:7
Definition configuration.h:10
void check_rank(const Shape &shape, initializer_list< int > allowed, const char *layer, const char *what)
Definition layer.h:23
Definition back_propagation.h:19
Definition tensor_types.h:340
Definition forward_propagation.h:52
Definition layer.h:43
Definition operator.h:28
Definition tensor_types.h:172