OpenANN  1.1.0
An open source library for artificial neural networks.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ActivationFunctions.h
Go to the documentation of this file.
1 #ifndef OPENANN_ACTIVATION_FUNCTIONS_H_
2 #define OPENANN_ACTIVATION_FUNCTIONS_H_
3 
4 #include <Eigen/Core>
5 
6 namespace OpenANN
7 {
8 
10 {
18  LOGISTIC = 0,
26  TANH = 1,
49  RECTIFIER = 3,
61  LINEAR = 4,
73  SOFTMAX = 4
74 };
75 
76 void activationFunction(ActivationFunction act, const Eigen::MatrixXd& a,
77  Eigen::MatrixXd& z);
79  const Eigen::MatrixXd& z,
80  Eigen::MatrixXd& gd);
81 
82 void softmax(Eigen::MatrixXd& y);
83 void logistic(const Eigen::MatrixXd& a, Eigen::MatrixXd& z);
84 void logisticDerivative(const Eigen::MatrixXd& z, Eigen::MatrixXd& gd);
85 void normaltanh(const Eigen::MatrixXd& a, Eigen::MatrixXd& z);
86 void normaltanhDerivative(const Eigen::MatrixXd& z, Eigen::MatrixXd& gd);
87 void scaledtanh(const Eigen::MatrixXd& a, Eigen::MatrixXd& z);
88 void scaledtanhDerivative(const Eigen::MatrixXd& z, Eigen::MatrixXd& gd);
89 void rectifier(const Eigen::MatrixXd& a, Eigen::MatrixXd& z);
90 void rectifierDerivative(const Eigen::MatrixXd& z, Eigen::MatrixXd& gd);
91 void linear(const Eigen::MatrixXd& a, Eigen::MatrixXd& z);
92 void linearDerivative(Eigen::MatrixXd& gd);
93 
94 } // namespace OpenANN
95 
96 #endif // OPENANN_ACTIVATION_FUNCTIONS_H_