Часть 1. Понимание бизнеса

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

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

Часть 2. Анализ данных

Мы получили набор данных, который мы использовали, из репозитория машинного обучения UCI (http://archive.ics.uci.edu/ml/datasets/Absenteeism+at+work). Он содержит записи о невыходах на работу с июля 2007 г. по июль 2010 г. в курьерской компании в Бразилии. Исходный набор данных содержит 740 записей и 21 переменную, в том числе одну интересующую переменную — Absenteeism_time_in_hours, а также другую информацию о сотрудниках, такую ​​как количество домашних животных, расстояние до работы, возраст и т. д. Сначала мы строим гистограмму, чтобы увидеть распределение времени отсутствия:

Мы обнаружили, что большинство людей каждый раз отсутствуют менее 10 часов. Далее мы рассмотрели причины невыхода на работу. На графике слева показано общее количество часов невыхода на работу по определенной причине, тогда как справа показано общее количество сообщений о каждой причине прогула. Из первого графика видно, что причина 13, наличие заболеваний опорно-двигательного аппарата, относится к наибольшему общему количеству часов отсутствия. Однако на графике 2 мы видим, что наиболее часто упоминаемой причиной является 23 — сдача крови. Поскольку для сдачи крови требуется меньше времени на восстановление, чем при заболеваниях опорно-двигательного аппарата, мы считаем, что на донорство крови приходится меньше общего времени отсутствия, чем при заболеваниях опорно-двигательного аппарата.

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

Часть 3. Подготовка данных

Мы подробно исследовали все независимые переменные и обнаружили, что набор данных относительно чистый, и в нем нет пропущенных или неправильных значений. Однако мы обнаружили, что некоторые непрерывные переменные должны быть категориальными, такие как «ID», «Причина.отсутствия», «Месяц.отсутствия», «День.недели», «Времена года», «Возраст». », «Попадание в цель», «Дисциплинарная.неудача», «Образование», «Социальный.пьющий» и «Социальный.курильщик». Поэтому мы преобразовали эти значения в факторные переменные. Во-вторых, мы изучили корреляцию между всеми парами переменных и заметили, что «Тело.масса.индекс» сильно коррелирует с «Весом» (около 0,9). Мы решили включить в нашу модель только «Вес». Наконец, мы снова просмотрели оставшиеся данные, чтобы увидеть, есть ли какие-либо выбросы, но не нашли ни одного очевидного. А так как размер набора данных невелик, мы решили ничего не удалять и исследовать их позже, после более детального изучения нашего набора данных.

Часть 4. Моделирование и оценка

PCA

Получив чистый набор данных, мы можем проанализировать данные. Прежде чем строить модели для времени отсутствия, мы сначала проводим обучение без учителя, чтобы исследовать особенности различных кластеров и упростить набор данных. Мы включили только непрерывные переменные, которые лучше всего работают в PCA. Мы обнаружили, что PC1 (время обслуживания, возраст, вес, транспортные расходы) объясняет 31,4% общей дисперсии, а PC2 (рост и расстояние от места жительства до работы) объясняет 19% дисперсии. Мы сформировали кластеры по часам отсутствия. Мы обнаружили, что группа с наибольшим количеством прогулов (светло-синий цвет) имеет большее время обслуживания, возраст и вес. Эти группы будут информативными для факторов, которые следует включить в анализ нашей прогностической модели.

Иерархическая кластеризация

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

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

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

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

Кластеризация K-средних

Поскольку K означает, что кластеризация плохо работает с категориальными данными, мы опускаем все переменные с категориальными данными и рассматриваем для анализа только непрерывные переменные. Основываясь на выводах двух приведенных ниже графиков, оптимальное количество кластеров для набора данных для выполнения кластеризации k означает 3.

Выбор числа центров равным трем и выполнение k означает, что кластеризация дает нам статистику, как показано в таблице 4 приложения.

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

График категоризации кластеров и двумерное представление кластеров находится в приложении под заголовком Таблица 5.

Прогнозное моделирование

Поскольку прогулы — это непрерывная переменная, мы решили, что линейная регрессия будет отличной моделью для использования. Сначала мы провели линейную регрессию со всеми переменными после очистки. К сожалению, большинство переменных не были значимыми (подробности см. в таблице 1 в приложении), и квадрат R вне выборки не был удовлетворительным. Этот результат был для нас неожиданным, поскольку мы ожидали, что такие переменные, как возраст или вес, окажут влияние на прогулы, как мы обнаружили ранее с помощью PCA. Для дальнейшего исследования мы выполнили пошаговое и лассо для этой модели. Квадрат R вне выборки для пошаговой обработки был не лучше, чем у исходной модели. Самый низкий R в квадрате был -186,47.

С другой стороны, модели Lasso и Post Lasso выглядят намного лучше. Однако модели из первой стандартной ошибки среднеквадратичной ошибки имели ненулевой коэффициент 0, что делало их нулевой моделью. Этот коэффициент не помог нашему прогнозу. Поэтому для дальнейшего сравнения были оставлены только модели Lasso и Post Lasso из минимума среднеквадратичной ошибки.

Хотя мы не нашли никаких переменных, которые по-разному влияют на взаимосвязь между любыми другими переменными и невыходами на работу, мы решили запустить модель линейной регрессии с взаимодействием. Мы хотим быть уверенными, что не обнаружим какой-либо закономерности во время исследования данных. С другой стороны, мы хотели убедиться, что наши выводы из исследования данных были правильными. Однако эта модель не подходит по трем причинам. Во-первых, всего у нас было 2207 переменных и 678 коэффициентов, и, таким образом, 1529 переменных были совершенно лишними. Во-вторых, ни одна из переменных не была значимой на уровне 0,05. Наконец, квадрат R вне выборки этой модели был ужасен и составлял всего -1,80 * 10 ⁵, что было намного хуже, чем у нулевой модели.

Модель не работала лучше после того, как мы запустили пошаговое выделение и лассо. Пошаговый анализ возвращает 247 переменных, а квадрат R вне выборки также составляет всего -1,64 * 10⁴. Для Lasso и Post Lasso модели из первой стандартной ошибки среднеквадратичной ошибки снова выбрали нулевую модель. Поэтому мы не включали эти две модели в наше окончательное сравнение. Мы решили оставить только модели с минимальной среднеквадратичной ошибкой для дальнейшего исследования.

Поскольку дерево классификации легче понять, мы решили запустить дерево классификации, дерево классификации Lasso и дерево классификации Post Lasso. Дерево классификации было хуже, чем нулевая модель, в 80% случаев, и снова модели из первой стандартной ошибки среднеквадратичной ошибки выбрали нулевую модель. Поэтому для дальнейшего анализа мы сохранили только модели с минимумом среднеквадратичной ошибки.

Мы также запустили случайный лес, чтобы усреднить влияние разных деревьев. Поскольку случайный лес с меньшей вероятностью переобучается, мы не делали для него Lasso и Post Lasso. Мы начали с 500 деревьев. Он был переобучен 500 деревьями, так как ошибка увеличилась после 100-го дерева (см. График ниже). Это открытие имеет смысл, потому что у нас есть только 740 данных. Поэтому мы уменьшили количество деревьев до 100. Производительность случайного леса была относительно хорошей. Большую часть времени R в квадрате был больше единицы, а самый высокий показатель составлял 43,57%.

Теперь у нас осталось семь моделей для сравнения: случайный лес и модели Лассо и Пост-Лассо для простой линейной регрессии, простая линейная регрессия с взаимодействием и дерево классификации. Случайный лес работал лучше всего в 5 из 10 раз, имел самое высокое среднее значение и самый высокий потенциал из выборки R в квадрате. Когда мы переоборудовали с использованием случайного леса, R в квадрате составил 0,7316. Поэтому мы решили, что случайный лес является наиболее полезной моделью для этого набора данных.

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

Причинно-следственное моделирование

В дополнение к прогнозному моделированию мы исследовали причинно-следственную связь времени отсутствия. Поскольку возраст статистически значим во всех наших прогностических моделях, мы решили рассмотреть его причинно-следственный вывод о времени отсутствия. Чтобы изолировать эффекты компаундеров, мы использовали модель двойного отбора. Во-первых, мы использовали переменные, ранее выбранные Лассо, и провели регрессию времени отсутствия по этим переменным, кроме возраста. Получив подходящие значения, мы предсказали возраст, используя факторы, которые могли на него повлиять, такие как время службы, образование, сын и т. д. Наконец, мы провели регрессию времени отсутствия на возраст и прогнозировали значения на шагах 1 и 2. Мы нашли возраст является значимым на уровне 5%, и сделать вывод, что увеличение возраста на один год приведет к увеличению прогулов на 0,19 часа, если все остальное останется неизменным.

Часть 5. Развертывание

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

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

Приложение

Таблица 1. Результат регрессии для простой модели линейной регрессии

Таблица 2: оригинал из образца R

Таблица 3. Статистика иерархической кластеризации

Таблица 4: K означает кластерную статистику

Таблица 5. Классификация кластеров и двухмерное представление кластеров

БИБЛИОГРАФИЯ

  1. https://www.cognoesis.com/absenteism-at-work-analysisprediction/?fbclid=IwAR3VuMdSJM_rb8gNkRFXRM7xASNiBpGUnDoZ6R7sVrNxCj35Pv1QHjn8dOA
  2. https://www.datacamp.com

3. https://www.stackoverflow.com

4. Репозиторий машинного обучения UCI