Вектор Тета становится без знака после градиентного спуска - PullRequest
1 голос
/ 07 января 2020

Что я должен исправить в приведенном ниже коде, чтобы тэта не оставалась без знака? Тета - это вектор, содержащий две нули в начальной точке. Я пытаюсь написать линейную регрессию, и это часть градиентного спуска.

function [theta, Js] = GradientDescent(X, y, theta, alpha, iterations)
    % Prepare Variables
    m = length(y);
    Js = zeros(iterations, 1);

    for i = 1 : iterations,
        h = X * theta;
        t1 = theta(1) - (alpha * (1 / m) * sum(h - y));
        t2 = theta(2) - (alpha * (1 / m) * sum((h - y) .* X(:, 2)));
        theta(1) = t1;
        theta(2) = t2;

        Js(i) = ComputeCost(X, y, theta);
    end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...