Логистическая регрессия — это статистический метод, используемый для моделирования вероятности бинарного результата (т. е. переменной, которая может принимать одно из двух возможных значений, например 0 или 1). Это тип обобщенной линейной модели, в которой используется логистическая функция для моделирования связи между независимыми переменными и вероятностью зависимой переменной.

Логистическая функция представляет собой сигмовидную кривую, которая находится в диапазоне от 0 до 1 и определяется как:

y = 1 / (1 + e^(-x))

где y — вероятность зависимой переменной, x — линейная комбинация независимых переменных, а e — математическая константа 2,71828.

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

Одно из ключевых предположений логистической регрессии состоит в том, что связь между независимыми переменными и вероятностью зависимой переменной линейна по логит-шкале (т. е. по логарифмической шкале шансов). Логит-функция определяется как натуральный логарифм отношения шансов, который представляет собой отношение вероятности зависимой переменной к вероятности ее дополнения.

Логистическую регрессию называют «регрессией» по историческим причинам, а не по своей природе. Хотя термин «регрессия» первоначально относился к моделям, предсказывающим непрерывные переменные, он стал общим термином для различных типов прогностических моделей. Логистическая регрессия является одной из таких моделей, даже несмотря на то, что ее результатом является оценка вероятности, а не непрерывное значение. Название «логистическая регрессия» прижилось, чтобы отличать ее от линейной регрессии и указывать на ее связь с более широкой концепцией регрессионных моделей.

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

Точность определяется как доля правильно классифицированных наблюдений от общего числа наблюдений. Он рассчитывается как:

Точность = (TP + TN) / (TP + TN + FP + FN)

где TP — количество истинных положительных результатов (т. е. количество наблюдений, которые на самом деле положительные и правильно классифицированы как положительные), TN — количество истинных отрицательных результатов (т. е. количество наблюдений, которые на самом деле отрицательные и правильно классифицированы как положительные). отрицательный), FP — количество ложноположительных результатов (т. ошибочно классифицированы как отрицательные).

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

Оценка F1 — это метрика, которая сочетает в себе точность и полноту, чтобы обеспечить единую меру производительности классификатора. Это особенно полезно, когда набор данных несбалансирован, а это означает, что один класс встречается гораздо чаще, чем другой.

Точность — это доля истинно положительных результатов (TP) от общего числа положительных прогнозов (TP + FP). Он измеряет способность классификатора правильно идентифицировать положительные наблюдения, не помечая слишком много отрицательных наблюдений как положительные. Высокая точность означает, что большинство предсказанных положительных результатов являются истинными положительными результатами.

Отзыв (также известный как чувствительность или доля истинно положительных результатов) — это доля истинно положительных результатов от общего числа фактических положительных результатов (TP + FN). Он измеряет способность классификатора правильно идентифицировать все положительные наблюдения, независимо от того, сколько ложных срабатываний также включено. Высокий отзыв означает, что большинство фактических положительных результатов правильно идентифицируются как положительные.

Оценка F1 представляет собой гармоническое среднее значение точности и отзыва, полученное по формуле:

Оценка F1 = 2 * (точность * полнота) / (точность + полнота)

Он находится в диапазоне от 0 до 1, причем более высокие значения указывают на лучшую производительность. Оценка F1 уравновешивает точность и полноту и является полезной метрикой, когда важны как ложноположительные, так и ложноотрицательные результаты. Это также полезно, когда распределение классов несбалансировано, поскольку оно учитывает как точность, так и полноту для каждого класса.

В логистической регрессии оценка F1 может быть рассчитана для каждого класса (положительного и отрицательного) отдельно или как средневзвешенное значение оценок F1 для каждого класса, где веса пропорциональны количеству наблюдений в каждом классе.

В логистической регрессии кривая ROC (рабочая характеристика приемника) и AUC (площадь под кривой ROC) обычно используются для оценки производительности двоичного классификатора.

Чтобы получить кривую ROC, нам нужно построить график TPR (истинно положительный показатель) против FPR (ложноположительный показатель) при различных пороговых значениях вероятности.

TPR — это доля истинных положительных результатов (TP) от общего количества фактических положительных результатов (TP + FN), а FPR — это доля ложных положительных результатов (FP) от общего количества фактических отрицательных результатов (TN + FP). .

Чтобы создать кривую ROC в логистической регрессии, мы сначала вычисляем прогнозируемые вероятности для каждого наблюдения в тестовом наборе. Затем мы изменяем порог решения от 0 до 1 и для каждого порога вычисляем TPR и FPR, сравнивая предсказанные вероятности с истинными метками.

AUC — это площадь под кривой ROC, и она находится в диапазоне от 0 до 1. AUC идеального классификатора будет равен 1, а у случайного классификатора — AUC 0,5. AUC больше 0,5 указывает на то, что классификатор работает лучше, чем случайный.

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

Чтобы вычислить AUC в логистической регрессии, мы сначала получаем кривую ROC, а затем интегрируем площадь под кривой, используя численные методы, такие как правило трапеций или правило Симпсона.

Начнем с кода: Код можно найти на https://medium.com/@rcpandey/logistic-regression-code-a7c4855be3bd.