有没有办法写复杂的'一行中的元素操作,还是我们必须将它们分成多行?
例如,让我们有这个数学函数:1 /(1 + e ^ -x) 我想为x上的每个元素计算(x可以是标量,向量或矩阵)。
这是我编写的工作代码:
function r = sigmoid(x)
r = zeros(size(x));
r = e.^(-x);
r = 1.+r;
r = 1./r;
end
我的问题是 - 我们可以将它简化为一行吗?
答案 0 :(得分:4)
是的,你可以通过以下功能
来做到这一点function r=sigmoid(x)
r=1./(1+exp(-x))
end
首先考虑exp函数计算指数值智能元素并加1,最后结果将1除以矩阵元素,你可以得到你想要的结果。