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

Логистическая регрессия в терминах непрофессионала

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

Что это означает на практике?

Мы могли бы использовать алгоритм логистической регрессии, чтобы предсказать следующее:

  1. Создайте классификатор электронной почты, чтобы сообщить нам, следует ли помечать входящее письмо как «спам» или «не спам».
  2. Проверьте рентгенологические изображения, чтобы определить, является ли опухоль доброкачественной или злокачественной.
  3. Изучите исторические банковские записи, чтобы предсказать, не выполнит ли клиент свои платежи по ссуде или погасит ссуду.

Как логистическая регрессия делает прогнозы?

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

Рассмотрим конкретный пример:

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

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

Категории «Да» и «Нет» можно перекодировать в 1 и 0 для целевой переменной (компьютеры лучше работают с числами, чем со словами):

После этого мы будем обучать модель логистической регрессии, которая будет изучать сопоставление между входными переменными (возраст, пол, размер кредита) и ожидаемый результат - для прогнозирования вероятности дефолта для трех новых клиентов:

Итак, что нам сообщает новый столбец Прогнозируемое значение по умолчанию?

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

Приложения логистической регрессии

Бизнес-сценарии использования

  • Подбирайте потенциальных клиентов
  • Рекомендовать товары
  • Предвидеть редкое поведение клиентов

Преимущества при развертывании в производственной среде

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

  • Простота использования
  • Интерпретируемость
  • Масштабируемость
  • Прогнозы в реальном времени

Логистическая регрессия: реализация

Логистическая регрессия - это контролируемый алгоритм классификации машинного обучения.

Чтобы узнать больше об этом, ознакомьтесь с Руководство для начинающих по началу работы с машинным обучением.

Представление модели

После обучения модель принимает форму уравнения логистической регрессии:

В этом уравнении:

  • y - прогнозируемая вероятность принадлежности к классу по умолчанию.

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

  • 1 / (1 + e ^ -z) - это сигмовидная функция.
  • wo + w1x - линейная модель в рамках логистической регрессии.

Линейная модель

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

Что здесь означает каждый компонент?

  • x - это входная переменная. В статистике x упоминается как независимая переменная, в то время как машинное обучение называет это функцией.
  • w0 - это термин смещения.
  • w1 - это вес для входной переменной x.
  • В машинном обучении мы обычно называем wi весами / параметрами.

Итак, почему бы нам просто не использовать линейную модель для прогнозирования принадлежности к классу, как мы это сделали с линейной регрессией?

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

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

Сигмовидная функция

Сигмоидальная функция - это функция, которая создает s-образную кривую. Он принимает любое реальное значение в качестве аргумента и отображает его в диапазон от 0 до 1.

Для проблемы, описанной выше, сигмовидная кривая будет выглядеть следующим образом:

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

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

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

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

Граница решения может принимать форму:

y = 0, если прогнозируемая вероятность ‹0,5

y = 1, если прогнозируемая вероятность ›0,5

Типы логистической регрессии

  1. Двоичная логистическая регрессия. Целевая переменная принимает одно из двух возможных категориальных значений.
  2. Полиномиальная логистическая регрессия. Целевая переменная принимает одно из трех или более возможных категориальных значений.
  3. Порядковая логистическая регрессия. Она похожа на множественную логистическую регрессию, за исключением того, что целевые категориальные переменные упорядочены.

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

Обучение

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

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

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

функция стоимости J (Θ) - это формальное представление цели, которую пытается достичь алгоритм.

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

Вам просто нужно понять принципы, лежащие в основе этого:

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

Это вызвано особым выбором весов в нашей линейной модели.

  • Функция стоимости не только наказывает большие ошибки, но и слишком достоверные (слишком близкие к 0 или 1).

Это гарантирует, что наши прогнозы останутся в пределах диапазона 0–1, исключая.

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

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

Градиентный спуск - это метод изменения весов на основе функции потерь для каждой точки данных. Мы вычисляем функцию затрат LogLoss для каждой точки ввода-вывода.

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

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

Существует компромисс в размере скорости обучения. Слишком низко, и вы можете вечно ждать, пока ваша модель сойдет на лучший набор весов; слишком высоко, и вы рискуете пропустить лучший набор весов, потому что модель не будет сходиться.

Оценка модели

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

  • Точность. Представляет процент правильно классифицированных выборок.

Оценка точности 90% говорит о том, что наша модель логистической регрессии правильно классифицирует 90% всех примеров.

  • ROC AUC: Область под кривой рабочих характеристик приемника (ROC AUC) описывает взаимосвязь между истинно положительной скоростью (TRP) - то есть соотношение выборок, которые мы правильно предсказали, принадлежащих к правильному классу, - по сравнению с частотой ложных срабатываний (FPR) - то есть соотношение выборок, для которых мы неверно предсказали их членство в классе.

ROC AUC предпочтительнее точности, особенно в настройках многоклассового прогнозирования или когда у нас есть проблема дисбаланса классов.

Улучшение нашей модели

Есть несколько способов улучшить вашу модель логистической регрессии.

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

Логистическая регрессия требует дополнительных допущений и необходимости очистки:

  1. Двоичная выходная переменная. Преобразуйте выходную переменную в 0 или 1.
  2. Неспособность сойтись: модель оценки максимального правдоподобия («математика»), лежащая в основе логистической регрессии, предполагает, что ни одна переменная не может точно предсказать членство в классе. Если у вас есть функция, которая идеально предсказывает целевой класс, алгоритм попытается присвоить ему бесконечные веса (потому что это так важно) и, таким образом, не сможет прийти к решению.

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

Масштабирование функций

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

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

Регуляризация

Подробнее о регуляризации - Все, что вам нужно знать о линейной регрессии

Для реализации логистической регрессии с нуля см. -



Надеюсь, вам понравилась эта статья и вы ее использовали по максимуму!

Если вы нашли эту статью полезной / информативной, обязательно выберите CLAP и ПОДПИСАТЬСЯ.