close

Вход

Забыли?

вход по аккаунту

?

Задание на курсовую работу: СКОРИНГОВЫЕ МОДЕЛИ ДЛЯ

код для вставкиСкачать
Задание на курсовую работу:
СКОРИНГОВЫЕ МОДЕЛИ ДЛЯ ОЦЕНКИ
КРЕДИТОСПОСОБНОСТИ ЗАЕМЩИКОВ
Описание
автоматической
бизнес-задачи.
оценке
Технологии
кредитоспособности
кредитного
скоринга
физического
лица
-
в
банковской среде традиционно уделяется повышенное внимание. Сегодня
можно сказать, что экспертные методы уходят в прошлое, и все чаще при
разработке скоринговых моделей обращаются к алгоритмам Data Mining.
Классическую
скоринговую
карту
можно
построить
при
помощи
логистической регрессии на основе накопленной кредитной истории,
применив к ней ROC-анализ для управления рисками. Кроме того, хорошие и
легко интерпретируемые модели можно получить, используя деревья
решений.
Постановка
задачи.
В коммерческом банке
имеется
продукт
«Нецелевой потребительский кредит»: кредиты предоставляются на любые
цели с принятием решения в течение нескольких часов. За это время
проверяются минимальные сведения о клиенте, в основном такие, как
отсутствие криминального прошлого и кредитная история в других банках.
В банке накоплена статистическая информация о заемщиках и качестве
обслуживания ими долга за несколько месяцев. Руководство банка, понимая,
что отсутствие адекватных математических инструментов, позволяющих
оптимизировать риски, не способствует расширению розничного бизнеса в
области
потребительского
кредитования,
поставило
перед
отделом
розничных рисков задачу разработать скоринговые модели с различными
стратегиями кредитования, которые позволили бы управлять рисками,
настраивая уровень одобрений, и минимизировать число «безнадежных»
заемщиков.
Исходные данные. Вообще говоря, информация о заемщиках физических
лигах
и
кредитных
договорах
хранится
в
банковской
информационной системе. Там же содержатся графики и даты погашений
кредита, сведения о просрочках, об их суммах, о процентах и т. д. Получить
для построения скоринговой модели таблицу с параметрами заемщиков и
информацию о наличии просрочек - отдельная задача. Будем считать, что она
уже выполнена и результат представлен в виде текстового файла.
Скоринговые модели часто строятся на категориальных переменных, и
для этого непрерывные признаки квантуются при помощи ручного выбора
точек разрыва (или полуручного). Скажем, переменная Стаж работы
разбивается на три категории: «до 1 года», «от 1 до 3 лет», «свыше 3 лет».
Такую модель легче интерпретировать, но она менее гибкая при
моделировании
связей:
горизонтальные
«ступени»
дают
плохую
аппроксимацию при наличии частых крутых «склонов».
В банковской практике перед скорингом заемщик, как правило,
проходит процедуру андеррайтинга - проверку на удовлетворение жестким
требованиям: соответствие возрасту, отсутствие криминального прошлого и,
конечно, наличие определенного дохода. При этом выдвигаются требования
к минимальному уровню дохода и рассчитывается возможный лимит
кредита. При его расчете участвует один из двух коэффициентов - П/Д либо
О/Д.
Коэффициент «Платеж/Доход» (П/Д) - отношение ежемесячных
платежей по кредиту заемщика к его доходу за тот же период. Считается, что
значительная величина этого коэффициента (свыше 40 %) свидетельствует о
повышенном риске как для кредитора, так и для заемщика.
Коэффициент
«Обязательства/Доход»
(О/Д)
-
отношение
ежемесячных обязательств заемщика к его доходу за тот же период с учетом
удержаний налогов. В обязательства включаются расходы, связанные с
выплатой планируемого кредита, а также имеющиеся другие долгосрочные
обязательства (выплаты по иным кредитам, на содержание иждивенцев,
семьи, алиментов, обязательные налоговые платежи и пр.). Считается, что
размер ежемесячных обязательств заемщика не должен превышать 50-60 %
его совокупного чистого дохода.
Заявки клиентов, не прошедшие андеррайтинг, получат отказ и даже не
попадут на скоринг. Поэтому на вход скоринговой процедуры выгоднее
подавать не доход клиента, а отношение О/Д или П/Д.
В
нашей
задаче
представлено
2709
кредитов
(файл:
loans_задание_студентам.xls в поле Дата: ввести дату своего рождения и
протянуть до последней записи) с известными исходами платежей на
протяжении нескольких месяцев после выдачи кредита. Набор данных уже
разбит на два множества - обучающее (80%) и тестовое (20%) - при помощи
процедуры стратифицированного сэмплинга так, чтобы в каждом множестве
доля плохих кредитов была примерно одинаковой. В табл. 1 отображена
структура и описание полей текстового файла с кредитными историями.
Таблица 1 - Данные по заемщикам и качеству обслуживания ими долга
№
1
2
3
4
5
6
7
8
9
10
11
12
13
Поле
Код
Дата
О/Д,%
Возраст
Описание
Служебный код заявки
Дата выдачи кредита
Коэффициент О/Д («Обязательства/Доход») в %
Возраст заемщика (полных лет) на момент
принятия решения о выдаче кредита
Проживание
Основание
для
проживания:
собственник;
муниципальное жилье; аренда
Срок проживания в Менее 1 года; от 1 года до 5 лет; свыше 5 лет
регионе
Семейное
Холост/не замужем; женат/замужем; разведен (положение
а)/вдовство; другое
Образование
Среднее; среднее специальное; высшее
Стаж работы на Менее 1 года; от 1 года до 3 лет; свыше 3 лет
последнем месте
Уровень
Сотрудник;
руководитель
среднего
звена;
должности
руководитель высшего звена
Кредитная история Информация берется из бюро кредитных историй.
Если имеется негативная информация о клиенте
(просрочки по прошлым кредитам), то ему
присваивается категория «отрицательная»
Просрочки свыше Факт наличия просрочек свыше 60 дней: 0 60 дней
отсутствовали, 1 - имели место
Тестовое
Служебный признак, отвечающий за то, к какому
множество
множеству относится запись. TRUE соответствует
тестовому множеству
Тип
Целый
Дата/время
Вещественный
Целый
Строковый
Строковый
Строковый
Строковый
Строковый
Строковый
Строковый
Целый
Логический
2. Скоринговая карта на основе логистической регрессии
Базовым
традиционной
статистическим
балльной
алгоритмом,
скоринговой
карты,
который
является
строит
аналог
логистическая
регрессия. С нее начнем решение задачи.
Импортируйте свой измененный файл с кредитными историями в
Deductor.
Скоринг представляет собой задачу бинарной классификации, которая
относит заемщика к одному из двух классов - «плохой» или «хороший». Если
заемщик «хороший» - кредит выдаете, если «плохой» - выносится
отрицательное решение. Разделение заемщиков на «плохих» и «хороших»
осуществляется на основе качества обслуживания ими долга, проще говоря наличия просрочек. В банковском деле существуют различные шкалы
перехода от числа просрочек к классу заемщика, и это тема для отдельного
обсуждения. Примем следующее правило: если у клиента была хотя бы одна
просрочка свыше 60 дней, то он относится к классу неблагонадежных.
Запустите Мастер обработки, в категории Прочие выберите Калькулятор,
запишите это условие, в результате чего появится новое вычисляемое поле Класс заемщика (рис. 1).
Рисунок 1 - Создание нового поля Класс заемщика
Рисунок 2 – Задание имени, метки и описания узла
Далее с помощью визуализатора Статистика можно узнать, что
имеется 500 записей с «плохими» кредитами, что составляет 18,5 % всех
выданных кредитов. Это не так уж и мало: в практике кредитного скоринга
число записей миноритарного класса может быть и меньше, вплоть до 1-3 %.
Поэтому задача классификации заемщиков всегда решается в условиях
сильной несбалансированности классов.
Рисунок 3 – Визуализатора Статистика
Таким образом, выходная бинарная переменная - Класс заемщика - у
нас ужe имеется. В качестве входных имеет смысл оставить все, кроме Код и
Дата: очевидно, что они никак не влияют на кредитоспособность.
Поля Возраст и О/Д, % оставьте непрерывными.
Рисунок 4 – Мастер обработки
Рисунок 5 - Задание входных и выходных полей
Построим модель логистической регрессии, которая рассчитает
соответствующие коэффициенты регрессии. Для этого в сценарий после узла
квантование добавьте обработчик Логистическая регрессия. Установите
входные и выходные поля, как это показано на рис. 5.
В этом же окне нажмите кнопку Настройка нормализации. Для
выходного поля Класс заемщика порядок сортировки уникальных значений
(которых в логистической регрессии всегда два) определяется типом
события: первое - отрицательное, второе - положительное (рис. 3). В
скоринге
принято,
что
чем
выше
рейтинг
заемщика,
тем
выше
кредитоспособность, поэтому значение «хороший» будет положительным
исходом события (второе по счету), а «плохой» - отрицательным (первое по
счету).
Рисунок 6 - Задание типов событий выходного поля
В следующем окне мастера будет предложено настроить обучающие и
тестовые множества. Поскольку у нас есть специальное поле, в котором
хранится информация о разбиении на множества, укажем его, установив
соответствующие настройки (рис. 7).
Рисунок 7 - Настройка разбиения набора данных
На третьем шаге мастера предлагается изменить параметры алгоритма
логистической регрессии (рис. 8).
Рисунок 8 - Настройки алгоритма логистической регрессии
На последнем шаге нажмите кнопку Пуск - будет построена модель и
мастер предложит выбрать визуализаторы узла. Укажите следующие: ROCанализ, Коэффициенты регрессии, Что-если, Таблица сопряженности,
Таблица (рис. 9).
Рисунок 9 - Определение способов отображения данных
Рисунок 10 – Задание имени, метки и описания узла
В визуализаторе Таблица видно, что добавились две новые колонки:
Класс заемщика Рейтинг и Класс заемщика_OUT (рис. 11). Рейтинг
представляет собой рассчитанное значение у по уравнению логистической
регрессии, а второе поле определяет принадлежность к тому или иному
классу в зависимости от порога округления.
Рисунок 11 - Выходные поля
Визуализатор
Коэффициенты
регрессии
наглядно
показывает
рассчитанные коэффициенты логистической регрессии, которые являются
прототипом скоринговой карты, и соответствующие им отношения шансов
(рис. 12).
Рисунок 12- Коэффициенты логистической регрессии
Проинтерпретируем отношение шансов для признака Стаж работы.
Если стаж работы на последнем месте от 1 до 3 лет, то шансы стать
благонадежным
заемщиком
при
фиксированных
значениях
других
переменных в 1,7187 раза выше по сравнению с тем, у кого стаж менее 1
года. А если стаж свыше 3 лет, то шансы увеличиваются в 2,6748 раза.
Проинтерпретируем теперь отношение шансов для поля ОД,%: 0,95934.
Оно меньше единицы, значит, увеличение кредитной нагрузки снижает
итоговый скоринговый балл клиента. Рассмотрим потенциального заемщика
А, у которого доля выплат по кредиту в структуре дохода на 10% меньше,
чем у заемщика Б.
Тогда можно сказать, что снижение ежемесячных выплат на 10%
приводит к тому, что вероятность стать хорошим заемщиком вырастает в
ехр(10*0,041506) = 1,5145 раза.
Визуализатор ROC-кривая выводит график ROC-кривой, на котором
по умолчанию отображаются положение текущего порога отсечения, а также
чувствительности и специфичности, показатель AUC и типы событий (рис.
13). Площадь под кривой равна 0,894 на обучающем множестве и 0,905 –
тестовом, что говорит об очень хорошей предсказательной способности
построенной модели.
Рисунок 13 - График ROC-кривой скоринговой модели
Однако оптимальная точка для данной модели не равна 0,5.
Максимальная суммарная чувствительность и специфичность достигается в
точке 0,78 (для расчета и отображения оптимальной точки необходимо в
меню кнопки Тип оптимальной точки выбрать пункт Максимум). Для
установки нового порога отсечения, равного 0,78, следует перенастроить
узел-обработчик логистической регрессии (рис. 14).
Рисунок 14 – Настройка параметров остановки обучения
В этой точке Sе=85%, Sр=86%, что означает: 85% благонадежных
заемщиков
будут
выявлены
классификатором,
а
100-86=14%
недобросовестных заемщиков получат кредит. На тестовом множестве
наблюдается похожая картина: Sе = 84%, Sр =86 %.
В
общем
случае,
проецируя
определения
чувствительности
и
специфичности на скоринг (и учитывая, что класс заемщика «хороший»
соответствует положительному исходу), можно заключить, что скоринговая
модель
с
высокой
специфичностью
соответствует
консервативной
кредитной политике (чаще происходит отказ в выдаче кредита), а с высокой
чувствительностью - политике рискованных кредитов. В первом случае
минимизируется кредитный риск, связанный с потерями ссуды и процентов и
с дополнительными расходами на возвращение кредита, а во втором коммерческий риск, связанный с упущенной выгодой. Это хорошо
иллюстрирует визуализатор Таблица сопряженности (рис. 15), которая есть
не что иное, как матрица классификации.
а)
б)
Рисунок 15 -Таблицы сопряженности: а - обучающая выборка, б - тестовая
выборка
Из таблицы видно, что на обучающем множестве модель чаще
отказывала в выдаче кредита «хорошим» заемщикам (271 ошибочный
случай), чем выдавала кредит «плохим» (см. рис. 15, а). Точность
классификации составила 85%.
На тестовом множестве наблюдается примерно та же картина (точность
классификации 84,69 %), а уровень одобренных кредитов (Approval Rate, AR)
здесь составляет AR=(387/542)*100% = 71,40% при уровне дефолтных
кредитов (Bad Rate, BR) равном BR=(14/387)*100% = 3,62% (см. рис. 9 б ).
Если такая ситуация не устраивает, можно снизить порог отсечения и
добиться того, чтобы модель чаще выдавала положительное решение.
Процент отказов уменьшится, но возрастет и кредитный риск. Поэтому
выбор точки отсечения зависит от поставленных целей - снизить долю
«плохих» кредитов или увеличить кредитный портфель, чаще вынося
положительное решение по клиенту.
Предположим, нам известны издержки ошибочной классификации
CFN/CFP=1/4, то есть выдача кредита недобросовестному заемщику обходится
в 4 раза дороже, чем отказ добросовестному. Тогда мы можем, используя
правило Байеса, оценить оптимальный скоринговый балл Р.
Визуализатор Что-если позволяет увидеть, как будет вести себя
построенная модель при подаче на ее вход тех или иных данных. Иначе
говоря, проводится эксперимент, в котором, изменяя значения входных
полей логистической регресии, аналитик наблюдает за изменением значений
на выходе. Возможность анализа по принципу «Что, если» особенно ценна,
поскольку позволяет и правильность работы системы, достоверность
полученных результатов, а устойчивость. Визуализатор Что-если включает
табличное
и
графическое
представления,
которые
формируются
одновременно (рис. 16).
Рисунок 17 - Визуализатор «Что-если»
В верхней части табличного представления отображаются входные
поля, а в нижней - выходные и расчетные. Изменяя значения входных полей,
аналитик дает команду выполнить расчет и наблюдает рассчитанные
значения выходов логистической регрессии.
В
графическом
представлении
визуализатора
Что-если
по
горизонтальной оси диаграммы откладывается весь диапазон значений
текущего поля выборки, а по вертикальной - значения соответствующих
выходов модели. На диаграмме Что-если видно, при каком значении входа
изменяется значение на соответствующем выходе. Если, например, во всем
диапазоне входных значений выходное значение для данного поля не
изменялось, то диаграмма будет представлять собой горизонтальную прямую
линию. В нашем случае установлена графическая зависимость изменения
кредитного рейтинга конкретного клиента от коэффициента О/Д (все
остальные входы - константы). Видно, что с увеличением О/Д рейтинг
практически линейно падает.
От модели логистической регрессии несложно перейти к скоринговой
карте, для чего нужно перевести коэффициенты логистической регрессии в
линейную шкалу.
Итак, подбирая порог отсечения, мы можем установить желаемое
соотношение уровня одобрений AR и ожидаемой величины просроченной
задолженности BR.
Интересует вопрос, как сравнить несколько скоринговых карт между
собой. Для этого строят различные отчеты и графики. Например, подвергают
анализу кривые распределения кумулятивных процентов для хороших и
плохих кредитов. По оси ох откладывают диапазоны скорингового балла, а
по оу - накапливающуюся долю плохих (хороших) кредитов.
Сформируем такой отчет в Deductor. Нам понадобятся несколько узлов
из группы Трансформация данных: Квантование, Группировка, Кросстаблица,
Замена
данных
и
Калькулятор,
а
также
Диаграмма.
Узел Фильтрация: удалим данные тестового множества.
визуализатор
Рисунок 18 - Фильтрация тестового множества
Рисунок 19 - Результат фильтрации тестового множества
Узел Калькулятор: вычислим значения скорингового балла и доли
кредитов.
Рисунок 20 - Конструктор выражения вычисления скорингового балла
Рисунок 21 - Конструктор выражения вычисления доли кредитов
Рисунок 22 - Результат вычислений доли кредитов и скорингового балла
Узел Настройка набора данных: в дальнейшей обработке будут
участвовать поля Класс заемщика, Скоринговый балл, Доля кредитов,
Тестовое
множество;
неиспользуемое.
для
остальных
установим
назначение
-
Рисунок 23 - Настройка параметров набора данных
Рисунок 24 – Отображение результатов настройки в виде таблицы
Узел
Квантование:
разобьем
непрерывные
значения
поля
Скоринговый балл на 100 интервалов и отнесем каждую запись исходного
набора к конкретному интервалу для анализа или фильтрации, исходя
именно из этих интервалов.
Рисунок 25- Настройка параметров квантования
Рисунок 26 – Настройка границы и меток интервалов
Рисунок 27 - Отображение результата квантования в виде таблицы
Узел
Группировка:
объединим
записи
по
полям-измерениям
Скоринговый балл и Класс заемщика и агрегируем данные в поле-факте Доля
кредиторов для дальнейшего анализа.
Рисунок 28 – Настройка группировки данных
Рисунок 29 - Результат группировки данных в виде таблицы
Узел
Кросс
таблица:
данный
обработчик
предназначен
для
преобразования структуры полученной таблицы данных в удобную для
работы форму. С его помощью задаются новые поля таблицы из уже
существующих, на основе преобразования значений выбранного поля в
новые поля с помощью встроенного обработчика фильтрации.
Поле Класс заемщика содержащее в себе значения: плохой, хороший
преобразуется в два соответствующих поля. Значениями которого будут
являться агрегированное поле фактов – доля кредитов.
Рисунок 30 – Настройка назначения полей
Рисунок 31 – Выбор вариантов агрегации фактов
Рисунок 32 – Отображение результата применения кросс таблицы
Узел Замена значений: заменим пустые поля на значение 0.
Рисунок 33- Настройка табличной замены данных поля Плохой!Доля
кредитов
Рисунок 33- Настройка табличной замены данных поля Хороший!Доля
кредитов
Рисунок 34 - Отображение результатов кросс таблицы после узла замены в
виде диаграммы
Узел Калькулятор: вычислим общий процент плохих и хороших
кредитов
Рисунок 35 – Конструктор выражения расчета общего процента плохих
кредитов
Рисунок 36 – Конструктор выражения расчета общего процента хороших
кредитов
Рисунок 37 - Отображение результатов вычислений в виде таблицы
Узел Настройка набора данных: для дальнейшего анализа оставим
поля Диапазон скорингового балла, Общий процент плохих кредитов, Общий
процент хороших кредитов, остальные – неиспользуемые.
Рисунок 38 – Изменение параметров набора данных
Рисунок 39 - Диаграмма значений Общего процента плохих и хороших
кредитов в диапазоне скорингового балла
Узел Калькулятор: вычислим кумулятивный процент плохих и
хороших кредитов.
Рисунок 40 – Конструктор вычисления кумулятивного процента плохих
кредитов
Рисунок 41 – Конструктор вычисления кумулятивного процента хороших
кредитов
На рис. 42 можно наблюдать график, отражающий кумулятивный
процент хороших и плохих кредитов построенной скоринговой карты.
Рисунок 42 - Распределения кумулятивных процентов в скоринговой модели
Видно, что кривая для плохих кредитов проходит выше и обладает
более крутым подъемом, чем кривая для хороших, поскольку в области
низких значений сосредоточено больше плохих кредитов. Если скоринговая
карта неэффективна, эти кривые будут похожи, а в пределе - налагаться друг
на друга.
Окончательный сценарий будет иметь следующий вид (рис. 43):
Рисунок 43 - Сценарий построения скоринговой модели на основе
логистической регрессии
Приложение 1 – необходимые теоретические сведения
1. Андеррайтинг (Underwriting).
В
области
клиента.
кредитования
Система
потенциального
проверка
андеррайтинга
заемщика
в
банком
производит
порядке,
платежеспособности
изучение
установленном
и
анализ
кредитной
организацией, а также принятие положительного решения или отказ в выдаче
кредита.
У различных банков свои методы, но при оценке вероятности
погашения кредита наиболее часто используются следующие критерии:
способность клиента погасить кредит (оценка уровня доходов заемщика), его
готовность погасить кредит (анализ кредитной истории заемщика) и
стоимость
имущества
как
достаточного
обеспечения
кредита.
Положительное или отрицательное решение банк принимает по результатам
анализа сведений, содержащихся в пакете документов, представленных
заемщиком: анкеты, справки о доходах, с места работы, стоимости
имущества и т.д.
В страховом бизнесе андеррайтинг – это процесс анализа страхуемых
рисков, принятия решения об их целесообразности, а также определения
адекватной риску тарифной политики.
В финансах андеррайтинг – деятельность кредитных организаций, при
которой
частное
лицо
или
компания,
именуемая
андеррайтером,
обеспечивают гарантию заключаемых страховых контрактов, размещение на
рынке облигаций или акций на согласованных условиях за специальное
вознаграждение, покупку и продажу инвестиционными компаниями, банками
и крупными брокерскими фирмами ценных бумаг новых выпусков на
первичном рынке, Андеррайтингом также называется и сам договор на
размещение ценных бумаг между гарантом и эмитентом.
2. Логистическая регрессия и ROC-анализ - математический
аппарат
Введение.
Логистическая регрессия – полезный классический инструмент для
решения задачи регрессии и классификации. Без логистической регрессии и
ROC-анализа – аппарата для анализа качества моделей – немыслимо
построение моделей в медицине и проведение клинических исследований. В
последние годы логистическая регрессия получила распространение в
скоринге для расчета рейтинга заемщиков и управления кредитными
рисками. Поэтому, несмотря на свое "происхождение" из статистики,
логистическую регрессию и ROC-анализ почти всегда можно увидеть в
наборе Data Mining алгоритмов.
Логистическая регрессия
Логистическая
регрессия
–
это
разновидность
множественной
регрессии, общее назначение которой состоит в анализе связи между
несколькими независимыми
переменными (называемыми
также
регрессорами или предикторами) и зависимой переменной. Бинарная
логистическая регрессия, как следует из названия, применяется в случае,
когда зависимая переменная является бинарной (т.е. может принимать только
два значения). Иными словами, с помощью логистической регрессии можно
оценивать вероятность того, что событие наступит для конкретного
испытуемого (больной/здоровый, возврат кредита/дефолт и т.д.).
Как известно, все регрессионные модели могут быть записаны в виде
формулы:
Например, в множественной линейной регрессии предполагается, что
зависимая
переменная
является
линейной
функцией
независимых
переменных, т.е.:
Можно ли ее использовать для задачи оценки вероятности исхода
события? Да, можно, вычислив стандартные коэффициенты регрессии.
Например, если рассматривается исход по займу, задается переменная y со
значениями 1 и 0, где 1 означает, что соответствующий заемщик расплатился
по кредиту, а 0, что имел место дефолт. Однако здесь возникает проблема:
множественная регрессия не "знает", что переменная отклика бинарна по
своей природе. Это неизбежно приведет к модели с предсказываемыми
значениями большими 1 и меньшими 0. Но такие значения вообще не
допустимы для первоначальной задачи. Таким образом, множественная
регрессия просто игнорирует ограничения на диапазон значений для y.
Для решения проблемы задача регрессии может быть сформулирована
иначе: вместо предсказания бинарной переменной, мы предсказываем
непрерывную переменную со значениями на отрезке [0,1] при любых
значениях
независимых
переменных.
Это
достигается
применением
следующего регрессионного уравнения (логит-преобразование):
где P – вероятность того, что произойдет интересующее событие; e –
основание натуральных логарифмов 2,71…; y – стандартное уравнение
регрессии.
Зависимость, связывающая вероятность события и величину y,
показана на следующем графике (рис. 1):
Рисунок 1 – Логистическая кривая
Поясним необходимость преобразования. Предположим, что мы
рассуждаем о нашей
зависимой переменной
в терминах основной
вероятности P, лежащей между 0 и 1. Тогда преобразуем эту вероятность P:
Это преобразование обычно называют логистическим или логитпреобразованием. Теоретически P’ может принимать любое значение.
Поскольку логистическое преобразование решает проблему об ограничении
на 0-1 границы для первоначальной зависимой переменной (вероятности), то
эти преобразованные значения можно использовать в обычном линейном
регрессионном уравнении. А именно, если произвести логистическое
преобразование обеих частей описанного выше уравнения, мы получим
стандартную модель линейной регрессии.
Существует
логистической
несколько
регрессии.
способов
На
нахождения
практике
часто
коэффициентов
используют метод
максимального правдоподобия. Он применяется в статистике для получения
оценок параметров генеральной совокупности по данным выборки.
Для
расчета
коэффициентов
логистической
регрессии
можно
применять любые градиентные методы: метод сопряженных градиентов,
методы переменной метрики и другие.
ROC-анализ
ROC-кривая (Receiver Operator Characteristic) – кривая, которая
наиболее часто используется для представления результатов бинарной
классификации в машинном
обучении.
Название
пришло
из
систем
обработки сигналов. Поскольку классов два, один из них называется классом
с положительными исходами, второй – с отрицательными исходами. ROCкривая показывает зависимость количества верно классифицированных
положительных примеров от количества неверно классифицированных
отрицательных примеров. В терминологии ROC-анализа первые называются
истинно положительным, вторые – ложно отрицательным множеством. При
этом предполагается, что у классификатора имеется некоторый параметр,
варьируя который, мы будем получать то или иное разбиение на два класса.
Этот параметр часто называют порогом, или точкой отсечения (cut-off value).
В зависимости от него будут получаться различные величины ошибок I и II
рода.
В логистической регрессии порог отсечения изменяется от 0 до 1 – это
и есть расчетное значение уравнения регрессии. Будем называть его
рейтингом.
Для понимания сути ошибок I и II рода рассмотрим четырехпольную
таблицу сопряженности (confusion matrix), которая строится на основе
результатов
классификации
моделью
и
фактической
(объективной)
принадлежностью примеров к классам.
Фактически
Модель
положительно отрицательно
положительно
TP
FP
отрицательно
FN
TN
TP (True Positives) – верно классифицированные положительные
примеры (так называемые истинно положительные случаи);
TN (True Negatives) – верно классифицированные отрицательные
примеры (истинно отрицательные случаи);
FN
(False
Negatives)
–
положительные
примеры,
классифицированные как отрицательные (ошибка I рода). Это так
называемый "ложный пропуск" – когда интересующее нас событие
ошибочно не обнаруживается (ложно отрицательные примеры);
FP
(False
Positives)
–
отрицательные
примеры,
классифицированные как положительные (ошибка II рода); Это ложное
обнаружение, т.к. при отсутствии события ошибочно выносится решение о
его присутствии (ложно положительные случаи).
Что является положительным событием, а что – отрицательным,
зависит от конкретной задачи. Например, если мы прогнозируем вероятность
наличия заболевания, то положительным исходом будет класс "Больной
пациент", отрицательным – "Здоровый пациент". И наоборот, если мы ходим
определить вероятность того, что человек здоров, то положительным
исходом будет класс "Здоровый пациент", и так далее.
При анализе чаще оперируют не абсолютными показателями, а
относительными – долями (rates), выраженными в процентах:
Доля
истинно
Доля
ложно
положительных
примеров
(True
Positives
(False
Positives
Rate):
положительных
примеров
Rate):
Введем еще два определения: чувствительность и специфичность
модели. Ими определяется объективная ценность любого бинарного
классификатора.
Чувствительность
(Sensitivity)
–
это
и
есть
доля
истинно
положительных случаев:
Специфичность (Specificity) – доля истинно отрицательных случаев,
которые были правильно идентифицированы моделью:
Заметим, что FPR=100-Sp.
Попытаемся разобраться в этих определениях.
Модель с высокой чувствительностью часто дает истинный результат
при
наличии
положительного
исхода
(обнаруживает
положительные
примеры). Наоборот, модель с высокой специфичностью чаще дает истинный
результат при наличии отрицательного исхода (обнаруживает отрицательные
примеры). Если рассуждать в терминах медицины – задачи диагностики
заболевания, где модель классификации пациентов на больных и здоровых
называется диагностическим тестом, то получится следующее:
Чувствительный диагностический тест проявляется в гипердиагностике
– максимальном предотвращении пропуска больных;
Специфичный диагностический тест диагностирует только доподлинно
больных. Это важно в случае, когда, например, лечение больного
связано с серьезными побочными эффектами и гипердиагностика
пациентов не желательна.
ROC-кривая получается следующим образом:
1. Для каждого значения порога отсечения, которое меняется от 0
до
1
с
шагом
dx
(например,
0.01)
рассчитываются
значения
чувствительности Se и специфичности Sp. В качестве альтернативы
порогом может являться каждое последующее значение примера в
выборке.
2. Строится
график
зависимости:
по
оси
Y
откладывается
чувствительность Se, по оси X – 100%–Sp (сто процентов минус
специфичность), или, что то же самое, FPR – доля ложно положительных
случаев.
Канонический алгоритм построения ROC-кривой
Входы: L – множество примеров; f[i] – рейтинг, полученный моделью, или
вероятность того, что i-й пример имеет положительный исход; min и max –
минимальное и максимальное значения, возвращаемые f; dx – шаг; P и N –
количество положительных и отрицательных примеров соответственно.
1. t=min
2. повторять
3.
FP=TP=0
4.
для всех примеров i принадлежит L {
5.
6.
7.
если f[i] >= t тогда // этот пример находится за порогом
если i положительный пример тогда
{ TP=TP+1 }
иначе // это отрицательный пример
8.
9.
{ FP=FP+1 }
10.
}
11.
Se=TP/P*100
12.
100_m_Sp=FP/N // расчет (100 минус Sp)
13.
Добавить точку (100_m_Sp, Se) в ROC кривую
14.
t=t+dx
15. пока (t>max)
В результате вырисовывается некоторая кривая (рис. 3).
Рисунок 3 – Кривая ROC
График часто дополняют прямой y=x.
Заметим, что имеется более экономичный способ расчета точек ROCкривой, чем тот, который приводился выше, т.к. его вычислительная
сложность нелинейная и равна O(n2): для каждого порога необходимо
"пробегать" по записям и каждый раз рассчитывать TP и FP. Если же
двигаться вниз по набору данных, отсортированному по убыванию
выходного поля классификатора (рейтингу), то можно за один проход
вычислить значения всех точек ROC-кривой, последовательно обновляя
значения TP и FP.
Для идеального классификатора график ROC-кривой проходит через
верхний левый угол, где доля истинно положительных случаев составляет
100% или 1.0 (идеальная чувствительность), а доля ложно положительных
примеров равна нулю. Поэтому чем ближе кривая к верхнему левому углу,
тем выше предсказательная способность модели. Наоборот, чем меньше
изгиб кривой и чем ближе она расположена к диагональной прямой, тем
менее
эффективна
модель.
Диагональная
линия
соответствует
"бесполезному" классификатору, т.е. полной неразличимости двух классов.
При визуальной оценке ROC-кривых расположение их относительно
друг друга указывает на их сравнительную эффективность. Кривая,
расположенная выше и левее, свидетельствует о большей предсказательной
способности модели. Так, на рис. 4 две ROC-кривые совмещены на одном
графике. Видно, что модель "A" лучше.
Рисунок 4 – Сравнение ROC-кривых
Визуальное сравнение кривых ROC не всегда позволяет выявить
наиболее эффективную модель. Своеобразным методом сравнения ROCкривых является оценка площади под кривыми. Теоретически она изменяется
от 0 до 1.0, но, поскольку модель всегда характеризуются кривой,
расположенной выше положительной диагонали, то обычно говорят об
изменениях от 0.5 ("бесполезный" классификатор) до 1.0 ("идеальная"
модель). Эта оценка может быть получена непосредственно вычислением
площади под многогранником, ограниченным справа и снизу осями
координат и слева вверху – экспериментально полученными точками (рис. 5).
Численный показатель площади под кривой называется AUC (Area Under
Curve). Вычислить его можно, например, с помощью численного метода
трапеций:
Рисунок 5 – Площадь под ROC-кривой
С большими допущениями можно считать, что чем больше показатель
AUC, тем лучшей прогностической силой обладает модель. Однако следует
знать, что:
показатель AUC предназначен скорее для сравнительного анализа
нескольких моделей;
AUC не содержит никакой информации о чувствительности и
специфичности модели.
В литературе иногда приводится следующая экспертная шкала для
значений AUC, по которой можно судить о качестве модели:
Интервал AUC Качество модели
0.9-1.0
Отличное
0.8-0.9
Очень хорошее
0.7-0.8
Хорошее
0.6-0.7
Среднее
0.5-0.6
Неудовлетворительное
Идеальная
модель
обладает
100%
чувствительностью
и
специфичностью. Однако на практике добиться этого невозможно, более
того,
невозможно
специфичность
одновременно
модели.
повысить
Компромисс
и
находится
чувствительность,
с
помощью
и
порога
отсечения, т.к. пороговое значение влияет на соотношение Se и Sp. Можно
говорить о задаче нахождения оптимального порога отсечения (optimal cutoff value).
Порог отсечения нужен для того, чтобы применять модель на практике:
относить новые примеры к одному из двух классов. Для определения
оптимального порога нужно задать критерий его определения, т.к. в разных
задачах присутствует своя оптимальная стратегия. Критериями выбора
порога отсечения могут выступать:
Требование
минимальной
(специфичности)
модели.
величины
Например,
чувствительности
нужно
обеспечить
чувствительность теста не менее 80%. В этом случае оптимальным
порогом будет максимальная специфичность (чувствительность),
которая достигается при 80% (или значение, близкое к нему "справа"
из-за дискретности ряда) чувствительности (специфичности).
Требование
максимальной
специфичности модели, т.е.
суммарной
чувствительности
и
Требование баланса между чувствительностью и специфичностью, т.е.
когда
:
Второе значение порога обычно предлагается пользователю по
умолчанию. В третьем случае порог есть точка пересечения двух кривых,
когда по оси X откладывается порог отсечения, а по оси Y –чувствительность
или специфичность модели (рис. 6).
Рисунок 6 – "Точка баланса" между чувствительностью и специфичностью
Существуют и другие подходы, когда ошибкам I и II рода назначается
вес, который интерпретируется как цена ошибок. Но здесь встает проблема
определения этих весов, что само по себе является сложной, а часто не
разрешимой задачей.
© 1995 - 2011 BaseGroup Labs
Документ
Категория
Типовые договоры
Просмотров
326
Размер файла
1 557 Кб
Теги
1/--страниц
Пожаловаться на содержимое документа