Loading...
Searching...
No Matches
dense_layer.h
Go to the documentation of this file.
30 const ActivationFunction& get_activation_function() const { return activation_operator.activation_function; }
31 ActivationFunction get_output_activation() const override { return activation_operator.activation_function; }
37 bool backward_uses_forward_output() const noexcept override { return gated || batch_norm.active() || activation_operator.activation_function != ActivationFunction::Identity; }
38 bool preserves_output_delta_during_backward() const noexcept override { return !backward_uses_forward_output() && !dropout.active(); }
69 void set_use_bias(bool use_bias) { combination.use_bias = use_bias; up_combination.use_bias = use_bias; }
void read_JSON_body(const Json *) override
void set_activation_function(const string &)
void set_tied_weight(const TiedWeight &) override
vector< TensorSpec > get_backward_specs(Index) const override
void write_JSON_body(JsonWriter &) const override
bool single_output_relu_fusion_wired() const
Definition dense_layer.h:97
void set_transposed_inference(bool v)
Definition dense_layer.h:75
bool backward_uses_forward_output() const noexcept override
Definition dense_layer.h:37
void set_batch_normalization(bool enable)
ActivationFunction get_output_activation() const override
Definition dense_layer.h:31
void set_momentum(float)
bool folds_input_delta_addend(size_t input) const noexcept override
Definition dense_layer.h:39
vector< TensorSpec > get_forward_specs(Index) const override
void reset_single_output_relu_fusion()
void on_compute_dtype_changed() override
Definition dense_layer.h:64
void set(const Shape &={}, const Shape &={}, const string &="Tanh", BatchNormalization=BatchNormalization::No, const string &="dense_layer")
Shape get_output_shape() const override
bool try_wire_drelu_fusion(Dense &producer, Index producer_layer)
bool get_batch_normalization() const
Definition dense_layer.h:33
void set_output_shape(const Shape &) override
const ActivationFunction & get_activation_function() const
Definition dense_layer.h:30
TiedWeight get_tied_weight() const override
Definition dense_layer.h:80
Dense(const Shape &={}, const Shape &={}, const string &="Tanh", BatchNormalization=BatchNormalization::No, const string &="dense_layer")
bool accepts_input_rank(Index rank) const override
Definition dense_layer.h:60
void set_gated(bool new_gated)
string write_expression(const vector< string > &, const vector< string > &) const override
void apply_input_shape(const Shape &) override
bool preserves_output_delta_during_backward() const noexcept override
Definition dense_layer.h:38
void set_tied_weight_source(const Layer *)
ForwardSlotKind get_forward_slot_kind(size_t slot) const override
Definition dense_layer.h:45
void reset_drelu_fusion()
bool try_wire_single_output_relu_fusion(Dense &producer, Index producer_layer)
bool get_transposed_inference() const
Definition dense_layer.h:76
Definition json.h:92
Definition json.h:24
Layer(LayerType type, Trainability trainability=Trainability::Trainable)
Definition layer.h:210
Definition configuration.h:10
constexpr bool is_one_of(const T &value, const Candidates &... candidates)
Definition opennn_types.h:273
Definition activation_operator.h:12
Definition batch_norm_operator.h:20
Definition combination_operator.h:12
Definition dropout_operator.h:15
Definition layer.h:43
Definition tensor_types.h:172
Definition swiglu_operator.h:16