«Все модели ошибочны, но некоторые из них полезны»

Приведенная выше цитата из статьи Джорджа Бокса 1976 года по-прежнему актуальна 45 лет спустя (с Новым годом!) во многих смыслах. Достижения в области машинного обучения за последнее десятилетие принесли много надежд (и много шумихи) в решении самой сложной задачи в бизнесе: знать, что произойдет, до того, как это произойдет. Мы предполагаем, что даже если все модели ошибочны, некоторые из них менее ошибочны, чем другие.

Задний план

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

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

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

Важное отличие

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

Недостаток

Во-первых, напомним, что наш обучающий набор данных состоял из случаев, которые либо были по умолчанию, либо не по умолчанию. Если говорить о кредитном портфеле, то в нашем хранилище данных есть некоторые исторические данные, содержащие кредиты, которые либо просрочены, либо полностью погашены по графику (давайте пока проигнорируем идею досрочного погашения — мы можем обсудить это в другой раз). Однако большая часть наших данных, вероятно, представляет кредиты, которые еще находятся в бухгалтерских книгах и не подлежат дефолту, но также еще не достигли конца срока кредита (их результаты неизвестны). эм>). Это поднимает пару важных вопросов:

Если мы не включаем эти «активные» случаи в наш набор данных для обучения, не упускаем ли мы много важной информации, которую мы должны были сообщить нашей модели? В конце концов, если они все еще находятся в учете, они еще не объявили дефолт…

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

Если один из случаев в нашем обучающем наборе данных имеет известный результат «дефолт», разве не важно знать, был ли дефолт по этому кредиту через 1 месяц или через 1 год?

Конечно, мы бы хотели, чтобы наша модель оценивала клиента, который своевременно выплачивал 30-летнюю ипотеку в течение 28 лет, а затем объявил дефолт, иначе, чем клиента, который разорился после первых нескольких месяцев.

Рассмотрим другую проблему, например, будет ли посетитель нажимать на рекламу на нашей веб-странице. В этом примере, вероятно, не так уж много «срока жизни» для рассмотрения. Они заходили на наш сайт и в течение нескольких секунд либо нажимали на рекламу, либо переходили дальше — больше ничего. Мы можем быстро создать обучающий набор данных, который можно использовать в алгоритме и создать модель, как описано ранее в нашем разделе Предыстория.

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

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

Как мы можем включить в нашу модель дополнительную информацию о «сроке жизни» дела (кредита)?

Давайте рассмотрим три различных методологии, которые мы можем использовать для достижения этой цели:

  1. Анализ выживания
  2. IPCW (взвешивание цензурирования обратной вероятности)
  3. Байесовский вывод

Анализ выживания

Анализ выживания – это регрессионный метод, целью которого является прогнозирование времени до наступления события. Это также позволяет нам вводить случаи, когда «событие» еще не произошло. При обучении модели выживания каждая строка в нашем наборе обучающих данных будет уникальным кредитом, а столбцы указаны следующим образом:

  • Время (месяцев) показывает, как долго мы наблюдали за кредитом в течение
  • Событие показывает, произошло ли событие (по умолчанию) в течение наблюдаемого периода; По умолчанию = 1, Нет По умолчанию = 0
  • "Атрибут 1" и "Атрибут 2" представляют некоторую другую информацию (т. е. независимые переменные) о кредите; это могут быть категориальные независимые переменные, такие как регион клиента, связанный с кредитом, или непрерывные независимые переменные, такие как средний коэффициент покрытия долга клиента в течение наблюдаемого периода; вы можете ввести столько независимых переменных, сколько, по вашему мнению, поможет объяснить дисперсию в вашей модели.

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

В нашем фиктивном наборе данных выше — игнорируя Атрибут 1 и 2 — наша модель выживания говорит нам, что новый кредит имеет 67%-ную вероятность выживания в течение последних 13 месяцев (с 2/ 3 кредита наблюдались в течение последних 13 месяцев) и 33% вероятность выживания в течение последних 27 месяцев (поскольку 1 из 3 кредитов «выжил» в течение последних 27 месяцев). Конечно, более сложная модель будет учитывать наши дополнительные независимые переменные (такие как «Атрибут 1» и «Атрибут 2») и изменять эти вероятности.

Анализ выживания — это улучшение по сравнению с традиционным машинным обучением, поскольку оно позволяет нам включать в нашу модель всю информацию, встроенную в дела, результат которых нам еще неизвестен. Это также позволяет нам ответить на очень важные вопросы, например: «Какие кредиты в этом сегменте нашего портфеля имеют более чем 50%-ную вероятность дефолта в течение 12 месяцев? Как насчет 24 месяцев?». Однако модели выживания предполагают, что событие (в нашем случае по умолчанию) в конце концов произойдет в какой-то момент в будущем. Это не совсем соответствует нашей бизнес-проблеме, так как многие кредиты не будут дефолтными (они будут выплачены полностью). Возможно, есть способ объединить часть методологии Survival Analysis с традиционными моделями машинного обучения…

IPCW (обратная вероятность цензурирования взвешивания)

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

Подход, который они предлагают, требует использования только случаев с известными результатами в обучающем наборе данных, но взвешивания каждого из этих случаев по отдельности с использованием метода, называемого взвешивание обратной вероятности цензурирования (IPCW). . Эти веса рассчитываются на основе всего набора данных (случаев с известными результатами и случаев с неизвестными исходами). Вместо определения вероятности того, что событие произойдет к моменту времени t, весовые коэффициенты IPCW рассчитываются путем инверсии этого вывода или вероятности того, что результат будет по-прежнему неизвестен после момента времени t.

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

Байесовский вывод

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

Последней методологией, которая, по нашему мнению, хорошо подходит для моделирования кредитных убытков, является байесовский вывод. Для тех, кто не знаком, эти модели запрашивают априорное распределение возможных результатов и связанных с ними вероятностей, а затем добавляют собранные данные ("доказательства" в таблице ниже). , чтобы создать окончательное апостериорное распределение. Это работает во многом так же, как работает наш мозг — у нас обычно есть предварительное представление о диапазоне возможных результатов и их вероятности, и мы собираем дополнительные данные с течением времени, которые обновляют и уточняют наше понимание.

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

  1. Нам часто не нужно столько данных для обучения статистически надежной байесовской модели, сколько нам нужно для частотной модели; это особенно полезно для организаций, у которых нет большого количества исторических данных об убытках.
  2. Эти модели выводят распределение возможных результатов вместо одноточечной оценки. Это позволяет нам делать выводы типа: «Мы на 90% уверены, что кредитные убытки составят менее 5 миллионов долларов, и мы на 95% уверены, что кредитные убытки составят менее 10 миллионов долларов». Это часто более полезно, чем традиционные частотные модели, которые ограничиваются только заключением: «Мы прогнозируем, что кредитные убытки в следующем году составят 6 миллионов долларов».

Использование байесовских подходов к моделированию кредитных убытков, пожалуй, лучше всего описано в статье Квона 2012 года «Три очерка о моделях кредитного риска и их байесовской оценке».

Подведение итогов

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

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