[ЗАСТАВКА] Из этого видео вы узнаете,
что такое логистическая регрессия, для чего она нужна и как работает.
Логистическая регрессия – это метод обучения с учителем.
Имея обучающую выборку по признаковому описанию объектов,
вы пытаетесь предсказать значение отклика.
Единственное отличие от задач линейной регрессии,
которые мы рассматривали до этого, в том, что значение отклика у нас бинарное,
то есть y принимает значение 0 и 1.
На первый взгляд кажется, что это задача бинарной классификации,
ее можно решать своими методами, которые мы рассматривали до этого в этом курсе.
Однако оказывается, что линейная регрессия в этой задаче тоже может быть полезна.
Если мы будем просто минимизировать среднеквадратичную ошибку между откликом y
и линейной комбинацией факторов x, мы получим вектор весов w*,
и можем мы его использовать следующим образом: если значение линейной комбинации
факторов на объекте больше, чем 1/2, мы будем предсказывать,
что наш объект будет относиться к классу 1; если меньше 1/2,
то он будет относиться к классу 0.
Этот метод называется методом линейного дискриминанта Фишера,
и это один из самых старых методов классификации.
На самом деле, мы можем хотеть предсказывать не просто метки классов на
наших объектах, а вероятности того, что объекты относятся к одному из классов.
Обозначим условную вероятность того, что y = 1 при условии x, за π(x).
Вот эту функцию π(x) мы и хотим как-то оценить.
Можно попробовать делать это с помощью обычной линейной регрессии.
На первый взгляд кажется, что эта идея не самая плохая.
Дело в том, что π(x), поскольку y – величина бинарная,
совпадает с условным матожиданием, y при условии x.
Это внушает нам надежду, что обычная минимизация методом наименьших квадратов
может дать какую-то хорошую оценку.
Проблема здесь заключается в том, что получаемая линейная комбинация
факторов не обязательно лежит на отрезке от 0 до 1.
Представьте, что вы предсказываете вероятность невозврата платежа по
кредитной карте в зависимости от размера задолженности.
Если на такие данные вы настроите линейную регрессию, вы получите,
что при задолженности в 2000 долларов вероятность того,
что клиент просрочит платеж по кредиту, составляет примерно 0,2.
С другой стороны, вероятность того,
что клиент просрочит платеж по кредиту при задолженности в 500 долларов, равна нулю.
Это немного странно.
Еще более странно, если задолженность составляет меньше 500 долларов,
вероятность просрочки отрицательная.
Если клиент должен больше 10000 долларов, вероятность больше 1.
Это очень странный результат, совершенно непонятно, как его интерпретировать.
Решить эту проблему можно следующим образом.
Давайте возьмем какую-то функцию g,
которая переводит интервал от 0 до 1 на множество всех действительных чисел,
и построим оценку не для условного матожидания, как мы привыкли в линейной
регрессии, а для функции g от этого условного матожидания, или,
что то же самое, условное матожидание мы будем приближать обратной функцией к g,
к g в минус первой, от нашей линейной комбинации факторов.
Такое семейство моделей в статистике называется обобщенными линейными моделями.
В задаче бинарной классификации в качестве функции g в минус первой берется функция,
которая выглядит следующим образом: это сигмоида.
Для одномерного случая значение w0, константа,
определяет положение центра сигмоиды на числовой оси, а w1,
вес при единственном факторе, определяет форму этой сигмоиды.
Если вес w1 положительный, то сигмоида возрастающая,
если отрицательный, то убывающая.
Чем больше по модулю значение w1,
тем круче наклон сигмоиды в области ее середины.
Если мы возьмем сигмоиду и построим логистическую регрессию в задаче с
вероятностью невозврата кредита, мы получим что-то более вменяемое.
Наша вероятность будет принимать значение от 0 до 1, как мы и хотели.
Кроме того, полезное свойство заключается в том,
что изменение на краях диапазона значений признака x приводит к меньшим
изменениям вероятности, которую мы моделируем.
Это логично, изменение в плюс-минус 100 долларов при размере задолженности около
2000 приводит к большим изменениям вероятности просрочки
платежа по кредитной карте, а изменение в плюс-минус 100 долларов при
размере задолженности около 500 – к небольшим изменениям.
Чтобы получить саму функцию g обобщенной линейной модели,
мы произведем несложные арифметические преобразования выражения для π(x),
которое мы записали до этого, и получим следующую функцию.
Дробь, которая стоит здесь под логарифмом, представляет собой отношение вероятности
того, что y = 1, к вероятности того, что y = 0, вероятности эти условные по x.
Это отношение называется риском.
Вместе с логарифмом это выражение называется логит.
Именно поэтому метод называется логистической регрессии,
потому что мы приближаем логит линейной комбинации наших факторов.
Как эту модель можно настраивать?
Давайте будем делать это методом максимизации правдоподобия.
Запишем выражение для правдоподобия обучающей выборки и сразу для
удобства возьмем от правдоподобия логарифм.
Если мы поставим перед логарифмом знак минус,
то получившуюся функцию мы будем не максимизировать, а минимизировать.
Это немного более привычно,
поскольку мы привыкли минимизировать функции потери в задачах регрессии.
Такой функционал называется еще log-loss, или кросс-энтропия, у него много названий.
Если мы переобозначим нулевой класс за минус первый,
то путем несложных преобразований можно получить логистическую функцию потерь,
которую вы уже встречали до этого.
Задача максимизации правдоподобия в логистической регрессии очень хорошо
решается числами, поскольку эта функция выпуклая,
она имеет единственный глобальный максимум.
Кроме того, мы можем очень хорошо оценивать ее градиент и гессиан.
Проблемы возникают, только если наши объекты
разных классов линейно разделимы в пространстве признаков.
Представьте, например, что в вашей обучающей выборке все клиенты,
задолженность которых составляет меньше 1300 долларов, платеж вовремя вернули,
а все клиенты, задолженность которых больше 1400, платеж не вернули.
В этом случае максимизация правдоподобия приводит к тому,
что значение веса w1 при нашем признаке уходит в бесконечность.
Вместо сигмоиды мы получаем вот такую ступеньку.
Это плохо, поскольку мы переобучаемся на нашу обучающую выборку.
Чтобы решить эту проблему, можно использовать методы регуляризации,
о которых мы говорили до этого: можно использовать как l1,
так и l2 регуляризацию.
Вероятности, которые дает логистическая регрессия,
можно использовать для классификации, для предсказания итоговых меток классов.
Для этого нужно на вероятность, которую мы оцениваем,
в каком-то месте поставить порог p0, и при значении вероятности выше
порога предсказывать метку y = 1, а ниже порога – y = 0.
Интуитивно кажется, что лучше всего выбирать порог = 1/2.
На самом деле этот порог p0 можно подбирать для каждой задачи отдельно так,
чтобы обеспечить оптимальный баланс между точностью и полнотой классификатора.
Итак, в этом видео мы поговорили о логистической регрессии, мы узнали,
что это регрессионный метод, позволяющий предсказывать вероятность того,
что y = 1, по каким-то факторам x.
В логистической регрессии используется линейная модель для логита,
для логарифма отношения вероятностей y = 1 при условии x и y = 0 при условии x.
Оценка параметров логистической регрессии делается методом максимального
правдоподобия.
Вот и все.
Далее в программе вас ждет знакомство с некоторыми важными техническими трюками,
которые часто используются при настройке линейных моделей.