[討論] 同算試 在function跟main算出來的不一樣

作者: andysleep (Maydayisgod)   2016-06-12 17:40:48
大家好! 小弟遇到一個很奇怪的問題
這是main
clear all
theta=[14.154989916158062;0.539122655828177];
X=[-15.9367581337854;-29.1529792172381;36.1895486266625];
y=[2.13431050672967;1.17325667875646;34.3591091805390];
m = length(y);
for i=1:m
error_train1(i) = 1/(2*m)*sum(([ones(i , 1) X(1:i, :)]*theta-y(1:i)).^2)
error_train(i) = CostFunction([ones(i , 1) X(1:i, :)],y(1:i),theta)
end
這是function
function J=CostFunction(X,Y,theta)
m=length(Y);
J=0;
J=1/(2*m)*(sum((X*theta-Y).^2));
end
算出來的答案竟然不一樣
error_train1 =
1.9595 3.2064 3.2866
error_train =
5.8784 4.8097 3.2866
請問是哪裡出錯了 看了一整天還是看不出來 麻煩幫忙解答 感謝
作者: name0625 (lawpy)   2016-06-12 21:05:00
第一個算式的m改成i就好

Links booklink

Contact Us: admin [ a t ] ucptt.com