Как я резюме обновлял, или ML-эксперимент с базой ФОПов

Появилась свободная минута на то, чтобы не в последний раз смахнуть пыль со своего резюме и удалить аббревиатуры, расшифровки которых я уже не помню, а вместо них добавить чего-нибудь посовременнее. Что там сейчас в тренде? Data Science, ML, AI? Ну что же, начнем...

Анаконда уже установлена и нежится на рабочем столе в ожидании данных. Титаник мне не интересен, до Чемпионата мира еще далеко, а вот нашумевшая база ФОПов (да-да, та самая с адресами и фамилиями) — в самый раз. Забегая наперед, успокою многоуважаемых, что под катом никаких личных данных.

Все желающие могут лицезреть полный исходный код с датасетами на Kaggle.

Анализ данных

Для начала разомнемся и выведем количество IT-шников, сгруппировав по статусу ЧП. Предварительно отфильтруем их от остальных ФОПовцев по КВЭД 62-63:

Одной картинки на Data Science инженера маловато будет — нужно кодить. И не просто кодить, а геокодить! Положиться на бесплатные сервисы и загеокодить ~250 000 записей по точному адресу — никаких лимитов не хватит, а заморачиваться с установкой своего инстанса Open Street Map ой как не хотелось. Ищем на просторах интернета и находим базу украинских почтовых адресов с геокоординатами — то что нужно!

17 000+ не замапилось (ожидал, что будет хуже). Не беда — поселим ~10 000 «бездомных» на соседние почтовые индексы, а остальные 7 000 распределим на уровне городов — на общие цифры это не повлияет.

Забываем пока об остановленных (мы к ним еще вернемся) и выведем распределение зарегистрированных IT-шников по регионам:

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

Чем темнее точка — тем больше IT-шников зарегистрировано в данном регионе. Недостаток вышеприведенной карты в том, что в максимально красной точке может быть зарегистрировано сколько угодно IT-шников. Например, визуально кажется, что во Львовской области больше зарегистрированных, чем в Киевской. Хотя осмелюсь предположить, что в Киеве они просто любят жить в обществе себе подобных.

Фиксим график путем притягивания за уши Machine Learning алгоритмов. В сеньоры не метим и ограничимся одним из самых простых — k-means алгоритмом. Эмпирическим путем выбираем количество кластеров, равное 15-ти. 3 строчки кода на Python — вот и весь ML:

Как видно из картинки, ML разбил позиции всех IT-шников на 15 кластеров. В центре масс каждого кластера расположена точка с радиусом, пропорциональным количеству зарегистрированных особ в данном кластере. Все становится на свои места: в Киеве в два раза больше зарегистрированных, чем в Харькове. Львовяне тем временем не отстают.

В чем сила, брат? В параметрах! Тонкий тюнинг моделей с последующей оценкой ее качества — довольно сложный процесс и больше похож на искусство. В k-means особо тюнить нечего, кроме как количество кластеров, поэтому в преддверии выборов немного поиграемся и установим n_clusters = 2:

Ха! Запад победил! Ну а справедливости ради, если делить по Днепру... Меньше воды, больше графиков. Вспомним о неактивных ЧП и распределим их по регионам:

Причины остановки ЧП могут быть самыми разнообразными. Осмелюсь предположить, что одна из наиболее распространённых — эмиграция. Построим график только закрытых ЧП в процентном соотношении к общему количеству в данном регионе и посмотрим, откуда «мозги текут» активнее всего:

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

Вывод

Пока скрипт экзекьютится, а графики отрисовываются, подведем итоги:
1 статья, 19 комитов, 7 графиков, 80 строк на питоне и +3 строчки в резюме, а выводы делайте сами.

Что дальше

Еще во времена, когда Nokia выпускала своего первого убийцу айфона, а Android делал первые неуверенные шаги, уже тогда наш Screenshot-based доморощенный солюшен использовал Computer Vision техники (видосик для затравочки в конце статьи). Поэтому в следующий раз поговорим о том, как далеко можно послать селекторы и применим Computer Vision и Deep Learning техники для Screenshot-based автоматических тестов.

Похожие статьи:
Онлайн-платформа Capterra заблокувала доступ для українців. Вона допомагає користувачам знаходити, порівнювати й оцінювати програмне...
Міністерство цифрової трансформації стане пілотним державним органом, на базі якого випробують аналітичну систему Government BI (GBI)....
Компания Opera Software сообщает, что на сегодняшний день, 14 производителей мобильных устройств, включая Samsung и Xiaomi, предустановили...
Засновник компанії Meta Марк Цукерберг оголосив про скорочення штату компанії на 13% — це понад 11 тисяч працівників....
Естонська Nortal, що займається стратегічним консалтингом та впровадженням технологій, оголосила про придбання...
Яндекс.Метрика