Рубрики
Без рубрики

Модель усаживания градиента – утепленная в Python

Здравствуйте, читатели! В этой статье мы будем сосредоточиться на модели усиления градиента в Python, а также деталей реализации.

Автор оригинала: Pankaj Kumar.

Модель усаживания градиента – утепленная в Python

Здравствуйте, читатели! В этой статье мы будем сосредоточиться на Модель усиления градиента в Python с подробностями реализации также.

Итак, давайте начнем!

Во-первых, что такое модель повышения градиента?

Перед погружением глубоко в концепцию усиления градиента, давайте сначала понять концепцию усиления в машинном обучении.

Усиление техники пытается создать сильные регрессоры или классификаторы, создавая блоки его через слабые модели модели серийным способом. То есть ошибка неправильной классификации Из предыдущего экземпляра подается в следующий экземпляр, и он учится от ошибки для повышения уровня классификации или прогнозирования.

Алгоритм усиления градиента – это одно такое модель обучения машины, которая следует, что следует в технике повышения прогнозов.

В алгоритме усаживания градиента каждый экземпляр предикторов учится из ошибки своего предыдущего экземпляра I.e. Это исправляет ошибку, представленную или вызванную предыдущим предиктором, чтобы иметь лучшую модель с меньшим количеством частоты ошибок.

Базовый учащийся или предиктор каждого градиентного усиления алгоритма – Классификация и регрессионные деревья Отказ Процесс обучения продолжается до тех пор, пока все n деревьев, которые мы решили построить, извлекли из модели и готовы к прогнозам с меньшим количеством ошибок неправильной классификации.

Модель Gradient Boosting работает как для регрессии, так и для переменных классификации.

Рекомендуется прочитать – Учебник Python XGBOOST

Модель усиления градиента – практический подход

В этом примере мы использовали набор данных прогнозирования проката велосипедов. Вы можете найти набор данных здесь !

Сначала мы загружаем набор данных в среду Python с помощью функции Read_CSV ().

Дальнейшее приближение к реализации, мы разделяем набор данных в тренировку и значения тестирования данных, используя rain_test_split () Функция из Sklearn.model Selection библиотека.

Разделив данные, мы дополнительно используем Maпе в качестве измерительной модели ошибки для оценки алгоритма.

Теперь позвольте нам сосредоточиться на шагах для реализации модели повышения градиента в Python-

  • Мы используем функцию GradientboostingRegressor () для приложения GBM в данных поезда.
  • Далее, к которому мы используем метод прогнозирования () для использования модели над тестовыми данными.

Пример:

import pandas
BIKE = pandas.read_csv("day.csv")

#Separating the depenedent and independent data variables into two dataframes.
from sklearn.model_selection import train_test_split 
X = bike.drop(['cnt'],axis=1) 
Y = bike['cnt']
# Splitting the dataset into 80% training data and 20% testing data.
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=.20, random_state=0)

import numpy as np
def MAPE(Y_actual,Y_Predicted):
    mape = np.mean(np.abs((Y_actual - Y_Predicted)/Y_actual))*100
    return mape

from sklearn.ensemble import GradientBoostingRegressor
GR = GradientBoostingRegressor(n_estimators = 200, max_depth = 1, random_state = 1) 
gmodel = GR.fit(X_train, Y_train) 
g_predict = gmodel.predict(X_test)
GB_MAPE = MAPE(Y_test,g_predict)
Accuracy = 100 - GB_MAPE
print("MAPE: ",GB_MAPE)
print('Accuracy of Linear Regression: {:0.2f}%.'.format(Accuracy))

Выход:

В результате мы получили точность на 83,10% от модели усиления градиента над набором данных.

MAPE:  16.898145257306943
Accuracy of Linear Regression: 83.10%.

Заключение

По этому, мы подошли к концу этой темы. Не стесняйтесь комментировать ниже, если вы столкнетесь с любым вопросом.

Для более таких постов, связанных с программированием Python, оставайся настроенными нами.

До этого, счастливого обучения !! 🙂.