Логистический регрессионный градиентный спуск без затрат - PullRequest
0 голосов
/ 27 сентября 2019

Я пытаюсь сделать градиент логистического спуска.В эту функцию я не хочу включать стоимость, так как я буду кодировать ее в другой функции.

Сейчас мой код выглядит так:

def logRegressionGradientDescent(X, y, theta0, alpha,iterations):
    #X is the feature vector
    #Y is the target vector/ output vector
    #theta is the weight vector 
    #alpha is the learning rate
    #iteration: steps I want to take 

    m_curr = b_curr = 0
    n = len(X)

    for i in range(iterations):
        y_predicted = m_curr*X+b_curr
        md = -(2/n)*sum(X*(y-y_predicted))
        bd = -(2/n)*sum(y-y_predicted)

        m_curr = m_curr - alpha * md
        b_curr = b_curr - alpha * bd


    #I should return theta or loss or the both


    return m_curr, b_curr

Мои данные представляют собой файл CSVс 3 столбцами и 100 строками.Первые 2 столбца содержат данные о результатах 2 экзаменов для каждого учащегося.Третий столбец содержит данные о том, поступили ли они в колледж или нет, основываясь на результатах экзаменов.Это si, представленное 0 или 1. Мой X будет матрицей 100x2 от CSV, а мой Y будет матрицей 100x1 от CSV.Я не знаю, как заставить это работать, поскольку это не работает из-за суммы матрицы с числом.

...