Логистическая регрессия для машинного обучения: полное руководство
Опубликовано: 2021-10-04Модели машинного обучения требуют алгоритмов для работы. В зависимости от набора условий конкретная модель машинного обучения может лучше всего работать с использованием того или иного алгоритма. В результате инженеры и энтузиасты машинного обучения должны знать о различных типах алгоритмов, которые можно использовать в разных контекстах, чтобы знать, какой из них использовать, когда придет время. В машинном обучении никогда не бывает универсального решения, и настройка различных алгоритмов может дать желаемые результаты.
Например, вы уже должны знать о линейной регрессии. Однако этот алгоритм просто неприменим к категориально зависимым переменным. Здесь на помощь приходит логистическая регрессия.
В машинном обучении логистическая регрессия — это контролируемый метод обучения, используемый для прогнозирования вероятности зависимой или целевой переменной. Используя логистическую регрессию, вы можете прогнозировать и устанавливать отношения между зависимыми и одной или несколькими независимыми переменными.
Уравнения и модели логистической регрессии обычно используются для прогнозной аналитики для бинарной классификации. Вы также можете использовать их для многоклассовой классификации.
Вот как выглядит уравнение логистической регрессии для машинного обучения:
logit(p) = ln(p/(1-p)) = h0+h1X1+h2X2+h3X3….+hkXk

Где;
p = вероятность появления функции
x1,x2,..xk = набор входных признаков
h1,h2,….hk = значения параметров, подлежащие оценке в уравнении логистической регрессии.
Оглавление
Типы моделей логистической регрессии в машинном обучении
В зависимости от того, как используется логистическая регрессия, модели логистической регрессии можно классифицировать следующим образом:
1. Модель бинарной логистической регрессии
Это одна из наиболее часто используемых регрессионных моделей для логистической регрессии. Это помогает разделить данные на два класса и предсказать значение нового ввода как принадлежащего любому из двух классов. Например, опухоль пациента может быть либо доброкачественной, либо злокачественной, но никогда не может быть и той, и другой одновременно.
2. Модель мультиномиальной логистической регрессии
Эта модель помогает классифицировать целевые переменные более чем на два класса, независимо от их количественного значения. Примером этого может быть предсказание типа еды, которую человек, вероятно, закажет, на основе его диетических предпочтений и прошлого опыта.
Присоединяйтесь к онлайн- курсу по машинному обучению в ведущих университетах мира — магистерским программам, программам последипломного образования для руководителей и программам повышения квалификации в области машинного обучения и искусственного интеллекта, чтобы ускорить свою карьеру.
3. Модель порядковой логистической регрессии
Эта модель используется для классификации целевой переменной. Например, успеваемость учащегося на экзамене может быть классифицирована как плохая, хорошая и отличная в иерархическом порядке. Таким образом, данные классифицируются по трем отдельным категориям, причем каждый класс имеет определенный уровень важности.
Уравнение логистической регрессии можно использовать в нескольких случаях, таких как обнаружение спама, классификация опухолей, классификация по полу и многие другие. Давайте рассмотрим два наиболее распространенных примера использования уравнения логистической регрессии в машинном обучении, чтобы помочь вам лучше понять.
Примеры использования уравнения логистической регрессии
Пример 1: Идентификация спама по электронной почте
Рассмотрим класс 1, если электронная почта является спамом, и 0, если электронная почта не является спамом. Чтобы обнаружить это, несколько атрибутов анализируются из тела письма. Это включает:
- Отправитель
- Орфографические ошибки
- Ключевые слова в письме, такие как «банковские реквизиты», «повезло», «победитель», «поздравляем».
- Контактные данные или URL-адрес в электронном письме
Эти извлеченные данные затем можно ввести в уравнение логистической регрессии для машинного обучения, которое проанализирует все входные данные и выставит оценку от 0 до 1. Если оценка больше 0, но меньше 0,5, электронная почта будет классифицирована как спам, и если оценка находится в диапазоне от 0,5 до 1, письмо помечается как не спам.
Пример 2. Выявление мошенничества с кредитными картами
Используя уравнения логистической регрессии или модели машинного обучения на основе логистической регрессии, банки могут быстро выявлять мошеннические транзакции по кредитным картам. Для этого такие данные, как PoS, номер карты, стоимость транзакции, данные транзакции и т. п., передаются в модель логистической регрессии, которая определяет, является ли данная транзакция подлинной (0) или мошеннической (1). Например, если стоимость покупки слишком высока и отличается от типичных значений, регрессионная модель присваивает значение (от 0,5 до 1), которое классифицирует транзакцию как мошенничество.

Работа логистической регрессии в машинном обучении
Логистическая регрессия работает с использованием сигмовидной функции для сопоставления прогнозов с выходными вероятностями. Эта функция представляет собой S-образную кривую, которая отображает прогнозируемые значения в диапазоне от 0 до 1. Затем значения наносятся на поля вверху и внизу оси Y, используя 0 и 1 в качестве меток. Затем, в зависимости от этих значений, можно классифицировать независимые переменные.
Вот как выглядит сигмовидная функция:
Сигмовидная функция основана на следующем уравнении:
у=1/(1+е^х)
Где e^x= экспоненциальная константа со значением 2,718.
Уравнение сигмовидной функции, приведенное выше, обеспечивает прогнозируемое значение (y) равным нулю, если x считается отрицательным. Если x — большое положительное число, прогнозируемое значение близко к единице.
Построение модели логистической регрессии в Python
Давайте рассмотрим процесс построения модели логистической регрессии в Python. Для этого давайте воспользуемся набором данных социальной сети для проведения регрессионного анализа и попробуем предсказать, купит ли человек тот или иной автомобиль. Вот как выглядят ступеньки.
Шаг 1: Импорт библиотек и набора данных
Он начинается с импорта библиотек, необходимых для построения модели. Сюда входят Pandas, Numpy и Matplotlib. Нам также нужно импортировать набор данных, с которым мы будем работать. Вот как выглядит код:
импортировать numpy как np
импортировать matplotlib.pyplot как pt
импортировать панд как pd
набор данных = pd.read_csv('Social_Network.csv')
Шаг 2: Разделение на зависимые и независимые переменные
Теперь пришло время разделить поступающие данные на зависимые и независимые переменные. В этом примере мы будем рассматривать стоимость покупки как зависимую переменную, а предполагаемую заработную плату и возраст людей — как независимые переменные.
х = набор данных.iloc[:, [2,3]].значения
у = набор данных.iloc[:, 4].значения
Шаг 3: Разделение набора данных на обучающий набор и тестовый набор
Очень важно разделить набор данных на конкретные обучающие и тестовые наборы. Учебный набор будет обучать уравнению логистической регрессии, а тестовые данные будут использоваться для проверки обучения модели и ее тестирования. Sklearn используется для разделения данного набора данных на два набора. Мы используем функцию train_split_, указав количество данных, которые мы хотим выделить для обучения и тестирования.
из sklearn.model_selection импорта train_test_split
x_train, x_test, y_train, y_test = train_test_split (x, y, test_size = 0,33, random_state = 0)
Как видите, мы определили размер теста как 33% от полного набора данных. Таким образом, оставшиеся 66% будут использоваться в качестве обучающих данных.
Шаг 4: Масштабирование
Чтобы повысить точность вашей модели логистической регрессии, вам потребуется изменить масштаб данных и ввести значения, которые могут сильно различаться по своей природе.
из sklearn.preprocessing импортировать StandardScaler
sc_X = Стандартный масштаб()
X_train = sc_X.fit_transform(X_train)
X_test = sc_X.transform(X_test)
Шаг 5: Построение модели логистической регрессии
Как только это будет сделано, вам нужно построить модель логистической регрессии и поместить ее в обучающий набор. Начните с импорта алгоритма логистической регрессии из Sklearn.
из sklearn.linear_model импортировать LogisticRegression
Затем создайте классификатор экземпляров, соответствующий обучающим данным.
классификатор = логистическая регрессия (random_state = 0)
classifier.fit(x_train, y_train)
Затем создайте прогнозы на тестовом наборе данных.
y_pred = классификатор.predict(x_test)
Наконец, проверьте производительность вашей модели логистической регрессии, используя матрицу путаницы.
из sklearn.metrics импортировать путаницу_матрицу
см = матрица_замешательства (y_test, y_pred)
акк = показатель_точности (y_test, y_pred)
печать (акк)

печать (см)
Теперь вы можете использовать Matplotlib для визуализации всего набора данных, включая обучающие и тестовые наборы!
В заключение
Логистическая регрессия — один из инструментов, помогающих в разработке моделей и алгоритмов машинного обучения. Точно так же существует множество других алгоритмов, которые используются в зависимости от конкретного варианта использования. Однако, чтобы знать, какой алгоритм использовать, вы должны знать все возможные варианты. Только тогда вы сможете выбрать наиболее подходящий алгоритм для вашего набора данных.
Ознакомьтесь с нашей программой Executive PG по машинному обучению , разработанной таким образом, чтобы вы могли начать с нуля и помочь вам развить свои навыки до самого верха, чтобы вы могли решить любую реальную проблему машинного обучения. Ознакомьтесь с различными курсами и запишитесь на тот, который подходит именно вам. Присоединяйтесь к upGrad и получите целостную среду обучения и поддержку при трудоустройстве!
Логистическая регрессия в целом бывает трех типов: Логистическая регрессия — это один из контролируемых методов обучения, используемых для поиска и построения наилучших отношений между зависимыми и независимыми переменными, чтобы делать правильные прогнозы на будущее. Логистическая регрессия для машинного обучения использует сигмовидную функцию для поиска наиболее подходящей кривой.Сколько видов логистической регрессии для машинного обучения возможно?
1. Бинарный
2. Многочлен
3. Порядковый номер. Для чего логистическая регрессия используется в машинном обучении?
Какую функцию использует логистическая регрессия для машинного обучения?