1 #ifndef STAN_MATH_PRIM_MAT_FUN_SOFTMAX_HPP 2 #define STAN_MATH_PRIM_MAT_FUN_SOFTMAX_HPP 45 inline Eigen::Matrix<T, Eigen::Dynamic, 1>
softmax(
46 const Eigen::Matrix<T, Eigen::Dynamic, 1>& v) {
49 Eigen::Matrix<T, Eigen::Dynamic, 1> theta(v.size());
50 theta = (v.array() - v.maxCoeff()).
exp();
51 return theta.array() / theta.sum();
void check_nonzero_size(const char *function, const char *name, const T_y &y)
Check if the specified matrix/vector is of non-zero size.
Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > softmax(const Eigen::Matrix< fvar< T >, Eigen::Dynamic, 1 > &alpha)
fvar< T > exp(const fvar< T > &x)