Регрессия исследует взаимосвязь между зависимой переменной (выход) и независимой переменной(вход). Эта модель относится к категории непрерывного контролируемого обучения в машинном обучении. Следовательно, использование регрессии — лучший выбор для построения модели, в которой выходные данные являются непрерывными, а не дискретными значениями.
Линейная регрессия:
Линейная регрессия пытается предсказать данные, выполнив следующие шаги:
- Он попытается подобрать наилучшую линию между набором входных и выходных данных, чтобы охватить почти все точки. (y = mx + c,где m — наклон, а c — точка пересечения).
- При подгонке данных он пытается минимизировать сумму квадратичной ошибки (фактическое значение — прогнозируемое значение). Это можно сделать либо с помощью обычного метода наименьших квадратов (Scikit Learn), либо с помощью градиентного спуска.
- После подгонки линии она будет иметь значения m и c.
- Затем с помощью наклона «m» он обнаружит будущий результат нового ввода.
- Перехват «c» определяет, где линия проходит или пересекается. Если c = 0, то линия проходит через начало координат.
Пример:
Давайте обучать и предсказывать собственный капитал человека, используя его возраст. Нижеследующее является всего лишь предположением, а не реальным набором данных.
Засучить рукава для внедрения Scikit:
Давайте начнем !!!
# It is a good practice to split 70% of our data as training set and use the remaining 30% data to check our model accuracy. parameters = [ input_train, output_train, input_test, output_test ] from sklearn.linear_model import LinearRegression model = LinearRegression() # Training or fitting the data model.fit(input_train, output_train) # Prediction model.predict(input_test) # Getting slope print(model.coef_) # Getting Intercept print(model.intercept_) # Finding Accuracy model.score(input_test,output_test) #Finding R square score model.r2_score(input_test,output_test)
«Показатель R-квадрата» варьируется от 0 до 1. Следовательно, если он близок к 1, мы можем сделать вывод, что наша модель работает отлично.
Я использовал простую линейную регрессию с одной переменной для объяснения регрессии, но то же самое можно сказать и о многомерной линейной регрессии, просто для прогнозирования результатов будут доступны некоторые дополнительные функции/переменные.