如果我想使用八度音阶绘制sin(x)
图表,我会这样做
x = -6:0.1:6;
plot (x, sin(x));
这可行。
我想绘制一个sigmoid函数,所以我尝试了
x = -6:0.1:6;
plot (x, 1/(1+exp(-x)));
但是这给了我
error: memory exhausted or requested size too large for range of Octave's index type -- trying to return to prompt
我尝试了x = -4:0.2:4;
,这次是
error: invalid conversion of NDArray to Matrix
error: evaluating argument list element number 2
有什么问题?
答案 0 :(得分:1)
问题出在1/(1+exp(-x))
。 MATLAB抛出的错误是:
Error using /
Matrix dimensions must agree.
根据Carandraug's comment Octave失败:
operator /: nonconformant arguments (op1 is 1x1, op2 is 1x121)
你想要的是elementwise division(注意点):
x = -6:0.1:6;
plot (x, 1./(1+exp(-x)));