|
DaNNet
|
Cross Entropy cost/output layer class with softmax activation. More...
#include <dnn_layer_cost.h>
Public Member Functions | |
| cost_CE_softmax (void) | |
| void | prop (void) |
| Forward propagation though layer. More... | |
| void | prop_mb (void) |
| Forward mini batch propagation though layer. More... | |
| void | backprop (void) |
| Backpropagation of mini batch propagation though layer. More... | |
| DNN_Dtype | get_cost (void) |
| Get cost. More... | |
| void | disp (void) |
| Display info about layer. More... | |
Public Member Functions inherited from dnn::layer_cost | |
| layer_cost (void) | |
| Dense layer constructor. More... | |
| virtual void | init (void) |
| Initialization of layer. More... | |
| virtual void | upd_buf_size (arma::uword nmb) |
| Updates the buffer sizes. More... | |
| virtual arma::Mat< DNN_Dtype > | get_T_1 (void) |
| Get target buffer. More... | |
| virtual void | set_data (const arma::Mat< DNN_Dtype > *data) |
| Set new target/label data. More... | |
| virtual void | reset_batch_ctr (void) |
| Reset batch counter. More... | |
| virtual DNN_Dtype | get_acc (void) |
| Get accuracy. More... | |
Public Member Functions inherited from dnn::layer | |
| layer (void) | |
| Layer constructor. More... | |
| ~layer () | |
| virtual void | update (void) |
| Parameter update. More... | |
| virtual void | enable_training (void) |
| Enable training of layer. More... | |
| virtual void | disable_training (void) |
| Disable training of layer. More... | |
| virtual void | enable_bias (void) |
| Enable bias term in layer. More... | |
| virtual void | disable_bias (void) |
| Disable bias term in layer. More... | |
| virtual arma::Mat< DNN_Dtype > | get_B (void) |
| Get bias. More... | |
| virtual arma::Cube< DNN_Dtype > | get_W (void) |
| Get weights. More... | |
| virtual void | set_B (arma::Mat< DNN_Dtype > &b) |
| Set bias. More... | |
| virtual void | set_W (arma::Cube< DNN_Dtype > &w) |
| Set weights. More... | |
| virtual arma::uword | get_nrof_params (void) |
| Get number of trainable parameters. More... | |
| virtual void | set_phase (PHASE p) |
| Set phase/state. More... | |
| virtual void | set_left (layer *lptr) |
| Set pointer to left layer. More... | |
| virtual void | set_right (layer *rptr) |
| Set pointer to right layer. More... | |
| virtual void | set_id (const std::string str) |
| Set layer id string. More... | |
| virtual std::string | get_id (void) |
| Get layer id string. More... | |
| virtual void | set_type (const std::string str) |
| Set layer type string. More... | |
| virtual std::string | get_type (void) |
| Get layer type string. More... | |
| virtual void | set_ix (const arma::uword n) |
| Set layer index. More... | |
| virtual arma::uword | get_ix (void) |
| Get layer index. More... | |
| virtual void | set_batch_size (const arma::uword n) |
| Set mini batch size. More... | |
| virtual arma::uword | get_batch_size (void) |
| Get mini batch size. More... | |
| virtual void | set_Y1 (arma::Mat< DNN_Dtype > &y) |
| Set output buffer. More... | |
| virtual void | set_Y (arma::Mat< DNN_Dtype > &y) |
| Set output buffer - mini batch. More... | |
| virtual void | set_Dleft (arma::Mat< DNN_Dtype > &d) |
| Set error output buffer - mini batch. More... | |
| virtual void | set_rows_in (arma::uword r) |
| Set input buffer row size. More... | |
| virtual arma::uword | get_nrof_rows (void) |
| Get output buffer row size. More... | |
| virtual void | set_cols_in (arma::uword c) |
| Set input buffer column size. More... | |
| virtual arma::uword | get_nrof_cols (void) |
| Get output buffer column size. More... | |
| virtual void | set_channels_in (arma::uword l) |
| Set input buffer channel/layer size. More... | |
| virtual arma::uword | get_nrof_channels (void) |
| Get output buffer channel/layer size. More... | |
| virtual void | set_opt_alg (opt &alg_class) |
| Set pointer to optimizer class. More... | |
| virtual opt * | get_opt_alg (void) |
| Get pointer to optimizer class. More... | |
| virtual arma::uword | get_nrof_inputs (void) |
| Get total number of layer inputs. More... | |
| virtual arma::uword | get_nrof_outputs (void) |
| Get total number of layer outputs. More... | |
| virtual arma::Mat< DNN_Dtype > | get_Y1 (void) |
| Get output buffer. More... | |
| virtual arma::Mat< DNN_Dtype > * | get_Y1_ptr (void) |
| Get output buffer pointer. More... | |
| virtual DNN_Dtype * | get_Y1_memptr (void) |
| Get output buffer memory pointer. More... | |
| virtual arma::Mat< DNN_Dtype > | get_Y (void) |
| Get output buffer - mini batch. More... | |
| virtual arma::Mat< DNN_Dtype > * | get_Y_ptr (void) |
| Get output buffer pointer - mini batch. More... | |
| virtual DNN_Dtype * | get_Y_memptr (void) |
| Get output buffer memory pointer - mini batch. More... | |
| virtual DNN_Dtype * | get_Y_colptr (const arma::uword n) |
| Get output buffer memory column pointer - mini batch. More... | |
| virtual arma::Mat< DNN_Dtype > | get_Dleft () |
| Get error buffer - mini batch. More... | |
| virtual arma::Mat< DNN_Dtype > * | get_Dleft_ptr (void) |
| Get error buffer pointer - mini batch. More... | |
| virtual DNN_Dtype * | get_Dleft_memptr (void) |
| Get error buffer memory pointer - mini batch. More... | |
| virtual DNN_Dtype * | get_Dleft_colptr (const arma::uword n) |
| Get error buffer memory column pointer - mini batch. More... | |
| virtual void | save_layer_param (std::string name, PARAM_FORMAT f=PARAM_FORMAT::ASCII) |
| Save layer weight and bias. More... | |
| virtual void | load_layer_param (std::string name, PARAM_FORMAT f=PARAM_FORMAT::AUTO) |
| Load layer weight and bias. More... | |
| template<typename T > | |
| void | init_weights (T &w, arma::uword fan_in, arma::uword fan_out, INIT_W_ALG alg, INIT_W_DIST dist) |
| Initiate weights. More... | |
| DNN_Dtype | sigmoid (const DNN_Dtype x) |
| Sigmoid function - scalar. More... | |
| arma::Mat< DNN_Dtype > | sigmoid (const arma::Mat< DNN_Dtype > &x) |
| Sigmoid function - matrix. More... | |
| arma::Mat< DNN_Dtype > | softmax (const arma::Mat< DNN_Dtype > &x) |
| Softmax function - matrix. More... | |
Additional Inherited Members | |
Protected Attributes inherited from dnn::layer_cost | |
| const arma::Mat< DNN_Dtype > * | data_labels |
| arma::Mat< DNN_Dtype > | T |
| arma::Mat< DNN_Dtype > | T1 |
| arma::uword | data_len |
| arma::uword | data_ix |
Protected Attributes inherited from dnn::layer | |
| layer * | left |
| Pointer to previous layer. More... | |
| layer * | right |
| Pointer to next layer. More... | |
| std::string | id |
| Layer id string. More... | |
| std::string | type |
| Layer type string. More... | |
| arma::uword | layer_ix |
| Layer index [0..]. More... | |
| bool | train_par |
| Enable training. More... | |
| bool | add_bias |
| Enable bias. More... | |
| opt * | opt_alg |
| Pointer to optimizer. More... | |
| PHASE | phase |
| Active state/phase. More... | |
| arma::uword | N_batch |
| Mini batch size. More... | |
| arma::uword | N_rows_left |
| Input rows. More... | |
| arma::uword | N_cols_left |
| Input cols. More... | |
| arma::uword | N_channels_left |
| Input channels, number of filters. More... | |
| arma::uword | N_rows_right |
| Output rows. More... | |
| arma::uword | N_cols_right |
| Output cols. More... | |
| arma::uword | N_channels_right |
| Output channels, number of filters. More... | |
| arma::uword | N_left |
| Total size left. More... | |
| arma::uword | N_right |
| Total size right. More... | |
| arma::Mat< DNN_Dtype > | Y |
| Output buffer mini batch [N_right,N_batch]. More... | |
| arma::Mat< DNN_Dtype > | Y1 |
| Output buffer [N_right,1]. More... | |
| arma::Mat< DNN_Dtype > | Dleft |
| Error buffer [N_left,N_batch]. More... | |
| arma::Cube< DNN_Dtype > | W |
| Weights. More... | |
| arma::Mat< DNN_Dtype > | B |
| Bias. More... | |
Cross Entropy cost/output layer class with softmax activation.
Definition at line 497 of file dnn_layer_cost.h.
|
inline |
Definition at line 500 of file dnn_layer_cost.h.
|
inlinevirtual |
Backpropagation of mini batch propagation though layer.
Performas a error backpropagation mini batch pass through layer
Implements dnn::layer_cost.
Definition at line 550 of file dnn_layer_cost.h.
|
inlinevirtual |
Display info about layer.
Reimplemented from dnn::layer_cost.
Definition at line 569 of file dnn_layer_cost.h.
|
inlinevirtual |
Get cost.
Calculates the cost value for a mini batch
Implements dnn::layer_cost.
Definition at line 561 of file dnn_layer_cost.h.
|
inlinevirtual |
Forward propagation though layer.
Performas a forward pass through layer
Reimplemented from dnn::layer_cost.
Definition at line 510 of file dnn_layer_cost.h.
|
inlinevirtual |
Forward mini batch propagation though layer.
Performas a forward pass through layer
Reimplemented from dnn::layer_cost.
Definition at line 525 of file dnn_layer_cost.h.
1.8.13