Оглавление:
1. Необходимость логистической регрессии и математика, стоящая за ней
2. Логистическая регрессия для мультиклассовой классификации
3. Библиотека Python для реализации логистической регрессии
4. Ссылки

Классификация — это проблема прогнозного моделирования, которая включает в себя присвоение метки класса примеру. Проблема классификации с двумя классами известна как Двоичная классификация, а проблема с более чем двумя классами известна как Мультиклассовая классификация. .

1. Необходимость логистической регрессии и математика, стоящая за ней

Для приведенных выше значений x и y мы можем легко построить линию наилучшего соответствия, используя линейную регрессию. Мы можем классифицировать точки данных слева от линии как Class1, а точки данных справа от линии как Class2. Эта линия наилучшего соответствия также известна как граница принятия решения и является свойством θ, а не обучающей выборки.

Пожалуйста, обратитесь к следующей ссылке для линейной регрессии и ее математической интуиции: - https://parisrohan.medium.com/simple-linear-regression-mathematical-intuition-and-python-implementation-f8ca5c17a4c5

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

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

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

Функция гипотезы определена, как показано ниже, для линейной регрессии.

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

Вышеупомянутая функция известна как Сигмовидная функция или Логистическая функция. Графически это изображается следующим образом

Из вышеприведенной функции видно, что

i) Предположим, что y=1, когда g(z) ≥ 0,5, тогда z ≥ 0

ii) Предположим, что y=0, когда g(z) ‹ 0,5, тогда z ‹ 0

1.1 Функция стоимости для логистической регрессии

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

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

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

Функцию стоимости можно переписать следующим образом:

Чтобы получить θ, мы должны минимизировать J(θ) с помощью градиентного спуска

1.2 Интерпретация вывода функции гипотезы

2. Логистическая регрессия для мультиклассовой классификации

Модели бинарной классификации, такие как логистическая регрессия, изначально не поддерживают многоклассовую классификацию и требуют метастратегий. Стратегия One-vs-Rest разбивает многоклассовую классификацию на одну задачу бинарной классификации для каждого класса. Затем бинарный классификатор обучается каждой проблеме бинарной классификации, и делаются прогнозы с использованием наиболее надежной модели.

Предположим, у нас есть проблема классификации со следующими тремя классами

Мы обучим классификатор логистической регрессии hθi(x) для каждого класса «i», чтобы предсказать вероятность того, что «y = i»

Чтобы сделать прогноз для новой точки данных, выберите класс «i», который максимизирует hθ (x)

3. Библиотека Python для реализации логистической регрессии

from sklearn.linear_model import LogisticRegression
classifier = LogisticRegression()

4. Ссылки

  1. https://www.youtube.com/watch?v=vaQxdBEcBzU&list=PLZoTAELRMXVPjaAzURB77Kz0YXxj65tYz&index=3
  2. https://machinelearningmastery.com/one-vs-rest-and-one-vs-one-for-multi-class-classification/