梯度下降不收敛

问题描述

我正在编写一个线性回归模型,但 theta 似乎呈指数增长,最终我得到了一个 numpy 溢出错误

def gradient_descent(X,y):
    # X ->  1460 x 2 matrix
    # y -> 1460 x 1 matrix

    # declare variables
    ALPHA = 0.000001
    NUM_ITER = 1500
    theta = np.array([[0],[0]])

    [m,n] = X.shape

    for i in range(NUM_ITER):
        # get prediction
        prediction = calculate_prediction(theta,X) # 1460 x 1 matrix

        # reassign theta
        theta = theta - ((ALPHA/m)*np.transpose(np.matmul(np.transpose(prediction-y),X)))
        print(theta)

    return theta

我同时使用这个方程更新 theta 值: https://i.stack.imgur.com/d8WBk.jpg

这些是打印的 theta 值:https://i.stack.imgur.com/zqD04.jpg

我还使用了其他 ALPHA 值,如 0.01、0.001、0.0001,但都给出了相同的错误

谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)