10 static Eigen::MatrixXd activate(
const Eigen::MatrixXd &z) {
11 Eigen::MatrixXd exp = z.array().exp();
13 Eigen::MatrixXd sumExp = exp.rowwise().sum().replicate(1, exp.cols());
15 return exp.array() / sumExp.array();
18 static Eigen::MatrixXd diff(
const Eigen::MatrixXd &a) {
19 return Eigen::MatrixXd::Constant(a.rows(), a.cols(), 1);
22 static inline std::string slug =
"smax";
25 static Eigen::MatrixXd scale(
const Eigen::MatrixXd &z,
double scaleFactor) {
26 return z * scaleFactor;