I'm currently trying to transform this expression:
k = 1:m; t1 = sum((theta(1) + theta(2) .* X(k,2)) - y(k)); t2 = sum(((theta(1) + theta(2) .* X(k,2)) - y(k)) .* X(k,2)); theta(1) = theta(1) - (alpha/m) * (t1); theta(2) = theta(2) - (alpha/m) * (t2);
into a for loop expression, so that it will work for longer theta vectors. So far I came up with this:
for j=1,length(theta) t = sum(((X * theta)- y) .* X(:,j)); theta(j) = theta(j) - (alpha/m) * t; end
But the values for theta(2) are not updated. What am I doing wrong?
Best Answer