Линейный регрессионный питон - PullRequest
0 голосов
/ 03 июля 2018

Я хочу реализовать линейную регрессию в python, без scikit-learn, но я не знаю, почему, переменная error всегда увеличивается и это не должно, и я думаю, что, возможно, проблема в формуле, но я не где.

В порядке ли algorthm?

def linear_regression(X, y, learning_rate=0.01, max_num_iterations=500, opt=True):
    # Your code goes here
    # Your code goes here
    w = np.zeros(len(X[0]))
    error=0
    gradient=X
    variable =X
    print(f"X:{X}")

    for a in range(max_num_iterations):

                o = np.sum(X*w)
                error = y-o
                print(f"sum1:{np.sum(X*w)}")
                print(f"y:{y}")
                print(f"error: {error}")
                print (f"gradient1: {gradient}")
                print(f"w: {w}")
                for i in range(800):

                    gradient[i][0]=-X[i][0]*error[i]

                    gradient[i][1]=-X[i][1]*error[i]

                gradient=-learning_rate*gradient

                w=w+gradient


    return w
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...