Go to the documentation of this file.
7 #include <eigen3/Eigen/Dense>
8 #include <eigen3/Eigen/Jacobi>
15 virtual Eigen::MatrixXd
Compute(Eigen::MatrixXd x) = 0;
16 virtual Eigen::MatrixXd
ComputePrime(Eigen::MatrixXd x) = 0 ;
29 virtual Eigen::MatrixXd
Compute(Eigen::MatrixXd x){
30 return x.array().tanh();
33 return 1-x.array().tanh().pow(2);
42 virtual Eigen::MatrixXd
Compute(Eigen::MatrixXd x){
43 return 1/(1+exp(-x.array()));
46 return (1 / (1 + exp(-x.array()))) * (1 - (1 / (1 + exp(-x.array()))));
55 virtual Eigen::MatrixXd
Compute(Eigen::MatrixXd x){
56 Eigen::MatrixXd expo = exp(x.array()-x.maxCoeff());
57 return expo/expo.sum();
60 Eigen::MatrixXd exposum = (exp(x.array()-x.maxCoeff()))/(exp(x.array()-x.maxCoeff()).sum());
61 return exposum.array()*(1-exposum.array());
70 virtual Eigen::MatrixXd
Compute(Eigen::MatrixXd x){
71 return x.cwiseMax(0.0);
74 for (
int r(0); r<x.rows();r++){
75 for (
int c(0); c<x.cols();c++){
93 virtual Eigen::MatrixXd
Compute(Eigen::MatrixXd x){
94 return log(1+(exp(x.array())));
97 return 1/(1+exp(-x.array()));
110 virtual Eigen::MatrixXd
Compute(Eigen::MatrixXd x){
111 return x.cwiseMax(0.0);
114 for (
int r(0); r<x.rows();r++){
115 for (
int c(0); c<x.cols();c++){
Definition: activation.h:50
virtual Eigen::MatrixXd ComputePrime(Eigen::MatrixXd x)=0
std::string getType()
Definition: activation.h:17
virtual Eigen::MatrixXd Compute(Eigen::MatrixXd x)
Definition: activation.h:110
virtual Eigen::MatrixXd ComputePrime(Eigen::MatrixXd x)
Definition: activation.h:96
virtual Eigen::MatrixXd ComputePrime(Eigen::MatrixXd x)
Definition: activation.h:45
Sigmoid()
Definition: activation.h:39
Definition: activation.h:24
Relu()
Definition: activation.h:67
Definition: activation.h:101
virtual Eigen::MatrixXd Compute(Eigen::MatrixXd x)=0
virtual Eigen::MatrixXd ComputePrime(Eigen::MatrixXd x)
Definition: activation.h:59
virtual Eigen::MatrixXd Compute(Eigen::MatrixXd x)
Definition: activation.h:55
virtual Eigen::MatrixXd ComputePrime(Eigen::MatrixXd x)
Definition: activation.h:32
SoftPlus()
Definition: activation.h:90
Definition: activation.h:37
Definition: activation.h:65
virtual Eigen::MatrixXd ComputePrime(Eigen::MatrixXd x)
Definition: activation.h:73
virtual Eigen::MatrixXd Compute(Eigen::MatrixXd x)
Definition: activation.h:70
virtual Eigen::MatrixXd Compute(Eigen::MatrixXd x)
Definition: activation.h:29
Activation()
Definition: activation.h:14
Definition: activation.h:12
std::string m_type
Definition: activation.h:19
Softmax()
Definition: activation.h:52
virtual Eigen::MatrixXd Compute(Eigen::MatrixXd x)
Definition: activation.h:42
double m_alpha
Definition: activation.h:106
virtual Eigen::MatrixXd ComputePrime(Eigen::MatrixXd x)
Definition: activation.h:113
Than()
Definition: activation.h:26
virtual Eigen::MatrixXd Compute(Eigen::MatrixXd x)
Definition: activation.h:93
Definition: activation.h:88
LeakyRelu(double a)
Definition: activation.h:103
Definition: activation.h:10