Готовлюсь к семинару HR-аналитика в R, планирую вставить блок прогноза индивидуальных рисков увольнения.
В чем смысл блока для бизнеса: мы собираем на входе информацию о кандидатах и на основе этой информации прогнозируем риск увольнения кандидата. Чем выше риск, тем выше вероятность, что мы его не возьмем на работу.
На первом семинаре "HR-Аналитика в R", Москва, 20-21 июня 2017 я давал регрессию Кокса, но без тренировки гиперпараметров, поэтому я дал по сути подход к выявлению драйверов текучести, исходя из схемы анализа текучестью, которую я предложил в посте Подходы к анализу, прогнозу и управлению текучести персонала.
Я решил посмотреть разные варианты прогноза индивидуальных рисков. Я создал три разные модели, создал троих тестовых чуваков и получил прогнозы по ним на трех разных моделях.
coxph(Surv(stag, event) ~ . , data = data)
Т.е. гиперпараметры по дефолту.
Индивидуальные прогнозы по трем нашим героям получились такие
Для тех, кто совсем в танке: по оси X - стаж работы в компании, по оси Y - вероятность дожития до этого момента.
Значение 0, 5 по оси Y - 50 % вероятность дожития
Итого, медианы дожития для кандидатов такие:
Метрика качества модели конкорданс 0, 61.
Прогноз индивидуального дожития и тюнинг параметров регрессии Кокса в пакете mlr. Правда, я код уже усовершенствовал.
Конкорданс - 0, 59.
Конкорданс 0, 62.
выхода на пенсию рисков ухода из компании чуваков. Большой разброс объясняется низким качеством самой модели - конкордансом. Это аналог показателя ROC AUC.
Т.е. если вы тут же сделаете новый трейн тест сплит, новую тренировку параметров, то линии жизни наших героев изменятся в рамках каждого подхода: регрессии Кокса без тренировки, с тренировкой и случайным лесом.
Но качество модели низкое не столько в силу нашей плохой работы как аналитики, сколько самой особенностью текучести персонала.
В качестве метафоры можно привести прогноз продолжительности человека. Если у нас в качестве переменных будет только состояние здоровья родителей и гены новорожденного, то мы дадим не очень точный прогноз: мы не будем знать экологии региона, где он будет жить, мы не знаем, будет ли он заниматься спортом, питьвотку кока колу или чай и т.п..
Поэтому подобные модели являются методом ковровой бомбардировки, применимые при массовом подборе.
__________________________________________________________
В чем смысл блока для бизнеса: мы собираем на входе информацию о кандидатах и на основе этой информации прогнозируем риск увольнения кандидата. Чем выше риск, тем выше вероятность, что мы его не возьмем на работу.
На первом семинаре "HR-Аналитика в R", Москва, 20-21 июня 2017 я давал регрессию Кокса, но без тренировки гиперпараметров, поэтому я дал по сути подход к выявлению драйверов текучести, исходя из схемы анализа текучестью, которую я предложил в посте Подходы к анализу, прогнозу и управлению текучести персонала.
Я решил посмотреть разные варианты прогноза индивидуальных рисков. Я создал три разные модели, создал троих тестовых чуваков и получил прогнозы по ним на трех разных моделях.
Вариант 1. Регрессия Кокса без тренировки гиперпараметров
Самый простой вариантcoxph(Surv(stag, event) ~ . , data = data)
Т.е. гиперпараметры по дефолту.
Индивидуальные прогнозы по трем нашим героям получились такие
Для тех, кто совсем в танке: по оси X - стаж работы в компании, по оси Y - вероятность дожития до этого момента.
Значение 0, 5 по оси Y - 50 % вероятность дожития
Итого, медианы дожития для кандидатов такие:
- Иванов - 95 месяцев (я пишу приблизительно);
- Петров - 50 месяцев;
- Сидоров - 24 или 2 года.
Метрика качества модели конкорданс 0, 61.
Вариант 2. Регрессия Кокса с тренировкой параметров
я показывал этот вариант в постеПрогноз индивидуального дожития и тюнинг параметров регрессии Кокса в пакете mlr. Правда, я код уже усовершенствовал.
- Иванов имеет средний срок жизни в компании более 10 лет
- Петров - почти 4 года (обратите внимание, Петров и Сидоров поменяли цвета по сравнению с первой диаграммой - я это уже заметил, когда картинки стал вставлять, не буду исправлять)
- Сидоров - около 33 месяцев.
Конкорданс - 0, 59.
Вариант 3. Случайный лес дожития с тренировкой параметров
Есть замечательный пакет для работы с анализом дожития - randomForestSRC. Его также часто использует Паша Робертс, см. Как использовать анализ дожития для прогноза текучести персонала от Pasha Roberts. Это тот же случайный лес с теми же параметрами, но под анализ дожития.- Ивансон по прежнему в облаках и собирается по прогнозу жить долго в компании - дольше 10 лет,
- Петрован - около 70 месяцев или почти 6 лет, а не 4 года, как в предыдущих моделях.
- Бедный Сидоров - примерно 16 месяцев
Конкорданс 0, 62.
Выводы:
К радости можно отнести только порядокТ.е. если вы тут же сделаете новый трейн тест сплит, новую тренировку параметров, то линии жизни наших героев изменятся в рамках каждого подхода: регрессии Кокса без тренировки, с тренировкой и случайным лесом.
Но качество модели низкое не столько в силу нашей плохой работы как аналитики, сколько самой особенностью текучести персонала.
В качестве метафоры можно привести прогноз продолжительности человека. Если у нас в качестве переменных будет только состояние здоровья родителей и гены новорожденного, то мы дадим не очень точный прогноз: мы не будем знать экологии региона, где он будет жить, мы не знаем, будет ли он заниматься спортом, пить
Поэтому подобные модели являются методом ковровой бомбардировки, применимые при массовом подборе.
__________________________________________________________
На этом все, читайте нас в фейсбуке и телеграмме
Комментариев нет:
Отправить комментарий