January 9, 2023

Байесовский фреймворк и HR задачи. Часть 1 - аналитический способ

Можете отложить в сторону все ранее полученные знания по проверке нулевой гипотезы, ориентиру на сакральный уровень статистической значимости равный 5%, беды и проблемы связанные с p-хакингом и тому подобное [1] потому что байесовская статистика предлагает совершенно другой подход.

Идея очень красивая, на мой взгляд, и состоит из трех компонентов:

  1. У вас есть ранее полученное значение о чём-либо оно называется априорным (prior).
  2. Вы проводите наблюдение/эксперимент/тест и получаете какую-то вероятность события на ваших данных (likelihood).
  3. Компромисс между априорным знанием (prior) и полученной вами вероятностью (likelihood) становится результатом проверки гипотезы, это знание называется апостериорным (posterior).

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

Как и прежде формул не будет, если хотите больше математических деталей, то начать можно с Википедии [2]. Для углубления я рекомендую книгу Джона Крушке “Doing Bayesian DataAnalysis” на идеи и инструменты которой я сам и опираюсь, и которая вдохновила меня на эту серию статьей. Не хотите читать 800 страниц на английском? Тогда вот, на мой взгляд, одно из лучших и ёмких объяснений на русском [4].

Байесовский вывод, в его наипростейшем варианте, мы может сделать в Excel (да даже в тетрадке), то есть нам не понадобится какое-то специальное ПО или языки программирования, хотя это будет в следующей статье.

Представим, что перед нами стоит задача нанять высокоэффективных сотрудников для нового проекта. У нас есть априорные (вымышленные) знания о том, что в среднем в мире только 15% людей относятся к такому классу суперзвезд, которые подходят под наши требования.

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

Вопрос №1 – какова же вероятность, что случайный кандидат действительно окажется высокоэффективным, если тест оценил его как высокоэффективного?

Интуитивно вы можете ответить – 60%, но это неверно, так как мы не учли с вами априорных знаний и ошибочность нашего теста.

Перейдем в Excel и запишем наше априорное знание - а это то, что в мире 15% людей высокоэффективные, сколько же тогда остальных? 100% - 15% = 85%.

Далее запишем как есть имеющиеся вероятности по данным теста.

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

Результат = Оценен как высокоэффективный, при условии, что это так и есть * Доля высокоэффективных сотрудников / (Оценен как высокоэффективный, при условии, что это так и есть * Доля высокоэффективных сотрудников + Оценен как высокоэффективный, при условии, что это не так * Остальные сотрудники)

Вывод: вероятность того, что случайный кандидат, который успешно прошел наш тест и в итоге высокоэффективный равна 26%.

Таким образом итоговая вероятность не 15% и не 60%, а компромисс. Если вы вдруг боялись, заметим, что это было несложно, правда ведь?

Но на этом мы не останавливается. Посмотрим на идею использования апостериорного знания, как нового априорного. Как известно, в практике оценки персонала в HR любят делать повторные тестирования.

Вопрос №2 - какова вероятность, что случайный кандидат высокоэффективный, если после первого успешного прохождения теста, он прошел второй раз тоже успешно?

Теперь вместо 15% мы используем для prior ранее полученные 26%, остальное остается без изменений и тогда итоговая вероятность равна 41%.

Но, что если вторая попытка дала диаметрально противоположный результат?

Вопрос №3 - какова вероятность, что случайный кандидат высокоэффективный, если после первого успешного прохождения теста, он прошел второй раз неуспешно?

Наше априорное знание также становится 26%, но нужно поменять вероятности для теста в обратную сторону, то есть 100% - 60% и 100 - 30% соответственно.

Получаем результат, что такой кандидат будет высокоэффективным с вероятностью 17%

Проценты, вероятности - это все здорово, но как бы мы это объяснили бизнесу? Не проблема, представим, что в следующем году мы планируем принять 1000 сотрудников, тогда сколько ожидается из них высокоэффективных и оцененных как таковых?

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

Можем себя даже проверить, если разделить 90 на 345 (строка тест - высокоэффективные), то мы как раз получим те самые апостериорные 26%. А если разделим 150 (сумма по колонке истина - высокоэффективные) на 1000, то вернемся к априорным 15%.

Ссылки

  1. https://teletype.in/@h0h1_hr_analytics/Lzvjq48KCCy
  2. https://ru.wikipedia.org/wiki/Байесовский_вывод
  3. John K. Krushke. Doing Bayesian DataAnalysis
  4. https://medium.com/nuances-of-programming/байесовский-вывод-интуиция-и-примеры-f36fb813734a

Версия статьи на английском.