Машинное обучение: пример классификации

Прогноз увольнения сотрудников

HR-аналитика

Эта работа выполняется в октябре 2021 года для частичного выполнения курсового проекта по науке о данных для INSAID.

Помимо автора, другими членами команды являются Сентил Кумар, Тану Садана, Сурен Гаур, Сумеш EP, Джоджо Джейкоб, Шринат, Нихар Патра, Раджатпаливал, Шубханги Сохони, Сандип Джа, Маниш Сурве и Анандсубудхи.

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

  • Когда сотрудник увольняется, он или она проходят собеседование под названием "выходное собеседование" и рассказывают о причинах ухода.
  • Затем отдел кадров пытается извлечь из интервью информацию и вносит соответствующие изменения.

Это страдает от следующих проблем:

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

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

По данным McKinsey, искусственный интеллект и другие передовые средства аналитики будут открывать от 9,5 до 15,4 трлн ежегодно. Принятие решений в HR на основе данных — не только часть этой тенденции, но и центральное место в будущем HR.

Постановка задачи:

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

Детали набора данных:

Проблемы, присутствующие в наборе данных, и их решение:

Обработка пропущенных значений: на основе подобия косинуса

Косинусное сходство — это мера сходства между двумя ненулевыми векторами пространства внутреннего произведения. Он определяется равным косинусу угла между ними, что также совпадает с внутренним произведением тех же векторов, нормированных на длину 1. Из последнего определения следует, что подобие косинусов зависит только от угла между два ненулевых вектора, но не их величины. Подобие косинусов ограничено в интервале [-1,1] для любого угла.

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

Обработка пропущенных значений: на основе центральной предельной теоремы

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

Проверка статистической асимметрии распределения независимых переменных:

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

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

Базовый EDA по категориальным переменным - мудрое исследование «Статус»:

Базовый EDA для непрерывных переменных - исследование «Статус»:

Наблюдения:

Сотрудники, которые выполнили 7 проектов, «покинули» компанию, в основном означает, что они не удовлетворены, а те, кто выполнил 2 проекта, ~ 60% из них покинули компанию, возможно, их уволили.

Сотрудники со стажем работы 5 лет «покинули» компанию примерно на 50%. В последующем 4- и 6-летний «стаж» сотрудников «ушли», это означает, что новые (2 или 3) и старшие (более 6) покидают компанию больше, чем средний уровень (4,5,6).

У тех, у кого нет «recent_promotion», «Left» больше.

Большее количество людей, у которых на самом деле нет «filed_complaint» и «Left», означает, что люди не верят в систему подачи жалоб.

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

Почти 30% сотрудников-женщин имеют статус «Левый», тогда как только 20% «Мужчин» имеют статус «Левый».

В возрастной группе «56–62 года» самый высокий «левый» сотрудник.

Более 25% «неженатых» людей имеют «левых».

От каждого из отделов «Д00-ФН», «Д00-МТ» и «Д00-АНГ» почти по 25% сотрудников имеют «Левый».

На графике пребывания в должности мы видим, что те, кто проработал всего 2 года, меньше сотрудников покинули компанию, но за 3 года ушедшие сотрудники работали менее 160 часов из нее, мы можем сделать вывод, что они были уволены компанией, но за 4 , 5, 6 сотрудники, которые ушли, работали почти более 250 часов, поэтому это предполагает, что после такой тяжелой работы они не добились прогресса, поэтому они ушли.

Особенности:

"Влияние" и "Производительность" — это две функции, полученные в соответствии с приведенным ниже определением.

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

"Производительность" пытается определить, насколько сотрудник работает за прошедший год; ожидается, что производительность должна повышаться по мере роста «стажа».

Идентификация важных особенностей:

При использовании SelectFromModel вместе с RandomForestClassifier и FeatureImportances выбираются некоторые функции. Тем не менее, модели будут протестированы со «всеми» и «важными» функциями, после чего будут выбраны лучшие модели.

Построение моделей машинного обучения:

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

Производительность еще больше улучшилась с помощью «GridSearchCV», а «макрос F1» был рассмотрен для показателей оценки. Резюме результатов ниже,

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

Кривая Precision-Recall и ROC AUC были оценены для топ-3 моделей, и их характеристики удовлетворительны.

График вероятности прогноза по топ-3 модели на тестовом наборе:

Вероятности для класса «1» («Левый» статусный сотрудник) были нанесены на график, и он показывает, что топ-3 модели хорошо построены для классификации классов,

График вероятности прогноза по топ-3 модели для невидимого набора данных:

Вероятности для класса «1» («Левый» статусный сотрудник) были построены для «невидимого набора данных» с использованием топ-3 моделей,

Результат по «невидимым данным» был отправлен, и результаты были также признаны удовлетворительными, как показано ниже:

Ключевые пути:

  • Модель бинарной классификации для проблемы увольнения сотрудников хорошо построена с использованием employee_data.
  • Были приняты исчерпывающие методы проверки и подготовки данных для очистки и создания признаков.
  • Статистическое преобразование проверено и применено по мере необходимости, чтобы уменьшить асимметрию.
  • Вменение отсутствующих значений было достигнуто на основе центрально-предельной теоремы и подобия косинусов, как требовалось.
  • Непрерывные функции были стандартизированы перед подбором моделей.
  • Методы метки, порядкового номера и OneHotEncoding, используемые для категориальных функций; однако на основании оценки FeatureImportances все они были отклонены.
  • Влияние и Производительность – это две технические характеристики, которые были выбраны для финальной модели.
  • RandomForestClassifier и XGBoostClassifier работают лучше всего, а классы хорошо идентифицируются.
  • Все модели тестируются с использованием всех функций и выбранных важных функций (на основе FeatureImportances).
  • "Оценка F1" получена на разделенных "тестовых" данных выше 0,95, а также была достигнута в ходе многократной перекрестной проверки.
  • Улучшение модели наблюдается во время настройки гиперпараметров с использованием GridSearchCV.
  • Support Vector , KNN и Gaussian Naïve Bays получили более 4% «F1-Score» с «важными функциями», а все модели были улучшены более чем на 2% «F1-Score». Оценка» во время настройки гиперпараметров.

Вот ссылка на GitHub для подробностей кода.

Если вы нашли эту статью полезной, поставьте лайк и поделитесь ею, а также не стесняйтесь оставлять комментарии. Вы также можете найти меня в LinkedIn. Хотите узнать больше об аналитике данных, науке о данных и приложениях машинного обучения в инженерной сфере? Ознакомьтесь с моими предыдущими статьями, посетив мой Medium profile. Спасибо, что прочитали.

- Чиранджит