将Armadillo函数传递给用户定义的函数

时间:2015-02-02 21:49:49

标签: c++ templates armadillo

是否可以以强烈的优雅方式将Armadillo函数传递给任意函数?具体来说,我希望能够将arma :: tanh传递给我的神经网络,以便计算网络输出,即类似于此:

arma::mat y = network.ForwardPropagate(x, arma::tanh);

1 个答案:

答案 0 :(得分:2)

通过.transform()成员函数,在Armadillo矩阵上使用您选择的函数可能更容易。

使用C ++ 11的示例:

mat A(100,100,fill::randu);

A.transform( [](double val) { return tanh(val); } );