我每个人, 我在Octave \ MatLab中是个新手,我有以下疑问。我有这段代码为参数z计算S型函数:
function g = sigmoid(z)
%SIGMOID Compute sigmoid function
% g = SIGMOID(z) computes the sigmoid of z.
% You need to return the following variables correctly
g = zeros(size(z));
% ====================== YOUR CODE HERE ======================
% Instructions: Compute the sigmoid of each value of z (z can be a matrix,
% vector or scalar).
g = 1 ./ (1 + exp(-z));
% =============================================================
end
z可以是标量,向量或矩阵。
例如,执行以下操作:
>> X = [1 2; 0 5]
X =
1 2
0 5
>> g = 1 ./ (1 + exp(-X));
>> g
g =
0.73106 0.88080
0.50000 0.99331
给定具有两个特征X1和X2的矩阵X(第2列),我该如何绘制该函数?输出是三维函数吗?
答案 0 :(得分:0)
输出不是3D函数,因为您有一个输入X
,一个输出g
是2D。
您可以按列显示列,将每列显示为同一图上的单独函数:
plot(X, g)
等效于:
figure
hold on
for i = 1:size(X,2)
plot(X(:,i), g(:,i))
end
hold off
您可以按行显示,将其显示为同一图上的单独功能:
plot(X', g')
等效于:
figure
hold on
for i = 1:size(X,1)
plot(X(i,:), g(i,:))
end
hold off
您可以将其显示为数组:
plot(X(:), g(:))