Я недавно пытался реализовать линейную регрессию в октаве и не смог пройти мимо онлайн-судьи. Вот код
function [theta, J_history] = gradientDescent(X, y, theta, alpha, num_iters)
m = length(y); % number of training examples
J_history = zeros(num_iters, 1);
for iter = 1:num_iters
for i = 1:m
temp1 = theta(1)-(alpha/m)*(X(i,:)*theta-y(i,:));
temp2 = theta(2)-(alpha/m)*(X(i,:)*theta-y(i,:))*X(i,2);
theta = [temp1;temp2];
endfor
J_history(iter) = computeCost(X, y, theta);
end
end
Мне известна векторизованная реализация, но я просто хотел попробовать итерационный метод. Любая помощь будет оценена.