Что, если я скажу вам, что это алгоритм классификации.

Логистическая регрессия

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

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

Почему логистика?

Логистическая функция

Логистическая функция или логистическая кривая всегда дает значение в диапазоне от 0 до 1 (0 ‹p‹ 1). Он дает S-образную кривую с асимптотами в точках 0 и 1 и пересекает ось Y в точке 0,5. Она также известна как сигмовидная функция.

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

Если мы спрогнозируем вероятность, используя гипотезу линейной регрессии, которая:

Модель линейной регрессии может генерировать прогнозируемую вероятность в виде любого числа в диапазоне от -ve до + ve бесконечности, тогда как вероятность может лежать только между 0 и 1. Таким образом, гипотеза логистической регрессии вынуждает выходные данные преобразовывать в логистическую функцию , чтобы принимать только значения от 0 до 1 в.

Функция стоимости

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

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

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

Упрощенная функция затрат,

Градиентный спуск

Функция стоимости минимизируется, т. Е. Min J (θ) с использованием метода градиентного спуска.

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

Полный вывод вышеуказанного уравнения можно найти по этой ссылке.

Граница решения

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

Скажем, для задачи двоичной классификации мы устанавливаем пороговое значение на 0,5, тогда все предсказанные вероятности ≥ 0,5 принадлежат одному классу, а те, которые ниже порогового значения, относятся к другому классу.

Реализация на Python

Давайте реализуем алгоритм биномиальной логистической регрессии с нуля на Python.

Результаты:

Cancer Dataset:
Cost after 0 iterations is: 0.6931471805599447
Cost after 500 iterations is: 0.24196914662367217
Cost after 1000 iterations is: 0.21544802658515755
Cost after 1500 iterations is: 0.20258675514240815
Cost after 2000 iterations is: 0.19486411727087208
Cost after 2500 iterations is: 0.1896653529907702
Cost after 3000 iterations is: 0.1859065131539027
Cost after 3500 iterations is: 0.18305247729053967
Cost after 4000 iterations is: 0.18080480586334863
Cost after 4500 iterations is: 0.17898226127301103
Train Accuracy: 93.91%
Test Accuracy: 90.14%
Logistic Regression Model Coefficients (W): [-6.92534083e-03 -7.70592854e-03 -7.22792163e-03 -4.30796399e-02
 -1.75008495e-02 -6.57910624e-05  8.15994214e-05  1.98609157e-04
  8.43615554e-05 -1.18864322e-04 -5.56702438e-05 -4.64340265e-05
 -6.98007851e-04  2.02622866e-04  1.38441865e-02 -4.69825267e-06
  1.46825974e-05  1.64812745e-05  4.10301549e-06 -1.22344027e-05
 -1.16889719e-06 -8.04041279e-03 -8.02590088e-03 -4.07644051e-02
  2.58361086e-02 -7.29562348e-05  3.31741483e-04  4.95375685e-04
  1.33476545e-04 -1.30881116e-04 -3.75699212e-05]
Logistic Regression Model Intercept (b): -0.001074620144465456

вы также можете получить полный исходный код из моего репозитория Github.

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

Заключение

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

Спасибо за прочтение :)

Если у вас есть какие-либо вопросы или предложения по этой статье, дайте мне знать. И это, если это было хорошее чтение.

Ваше здоровье !!

Удачного обучения 😃

использованная литература