Ich weiß nicht, warum es mir sagt, dass ich zuvor als eine Variable verwendet, wenn ich es noch nie zuvor verwendet habe."Var" wurde zuvor als Variable verwendet - MatLab
Hier ist mein Code:
price := 0;
temp := 0;
for i=1:m,
price += -y(i)*log(sigmoid(theta'*X(i,:))) -(1-y(i))*log(1-sigmoid(theta'*X(i,:)));
end;
J = price/m;
for i=1:n,
temp := 0;
for i2=1:m,
temp += (1-sigmoid(theta'*X(i2,:)) - y(i2)) * X(j,i2);
end;
grad(i) = temp;
end;
Der Fehler ist hier:
'price += -y(i)*log(sigmoid(theta'*X(i,:))) -(1-y(i))*log(1-sigmoid(theta'*X(i,:)));'
Protokollfehler: "Preis" zuvor als Variable verwendet wurde, mit seiner Verwendung in Konflikt hier als Name einer Funktion oder eines Befehls. Siehe "Wie MATLAB Befehlssyntax erkennt" in der MATLAB-Dokumentation für Details.
Das ist nicht gültig Matlab-Code, weder ': =' oder '+ =' sind erlaubt. ': =' ist Teil von MuPad, nicht die Matlab-Sprache. –