Я пытался написать векторизованную запись для итеративного процесса сходимости тета-значений в алгоритме градиентного спуска. Я нашел векторную запись, но по некоторым причинам значения не сходятся. Я пробовал много разных значений для альфы, но ни одно из них, похоже, не работает. Любая помощь приветствуется. Спасибо!
X=[1,2104,5,1,45;1,1416,3,2,40;1,1534,3,2,30;1,852,2,1,36]
y=[460;232;315;178]
m=size(X,1)
alpha=0.01
n+1=size(X,2)
theta=zeros(n+1,1)
for it=1:100,
theta=theta-((alpha/m)*(X'*((X*theta)-y)))
end;
disp(theta)
Предполагается, что он даст результат тэта-значений, но он выбрасывает некоторые значения в течение нескольких итераций и затем переходит к Nan. Кроме того, значения до Nan нигде не близки к тем, которые я получил из метода нормальных уравнений.