Напишите линейную регрессию на Python с нуля



Это один из самых простых алгоритмов. Он включает следующие шаги:

1️⃣ Инициализация параметров.

2️⃣ Вычисление предсказаний.

3️⃣ Вычисление функции потерь.

4️⃣ Обновление параметров с помощью градиентного спуска.

5️⃣ Повторение до сходимости.

import numpy as np



class LinearRegression:

def __init__(self, learning_rate=0.01, n_iters=1000):

self.learning_rate = learning_rate

self.n_iters = n_iters



def fit(self, X, y):

n_samples, n_features = X.shape

self.weights = np.zeros(n_features)

self.bias = 0



for _ in range(self.n_iters):

model_preds = self.predict(X)

dw = (1 / n_samples) * np.dot(X.T, (model_preds - y))

db = (1 / n_samples) * np.sum(model_preds - y)



self.weights -= self.learning_rate * dw

self.bias -= self.learning_rate * db



def predict(self, X):

return np.dot(X, self.weights) + self.bias




#машинное_обучение

#программирование