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

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

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

Недостатком этой функции является то, что после ее включения в нашу функцию стоимости функция стоимости не будет выпуклой (с локальными минимумами = глобальные минимумы), а будет иметь множество локальных минимумов, поэтому сложно поймать глобальные минимумы.

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

Или, более компактно, применительно ко всем точкам данных, которые мы получаем:

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

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

Многоклассовая классификация:

Когда наши данные помечены более чем двумя классами (K классами), проще всего использовать метод one vs. all, где мы обучаем K классификаторов, каждый классификатор будет классифицировать, если новые данные принадлежат этому классу. класс или нет.

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

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

  • Курс Эндрю Н.Г. по машинному обучению на Coursera