Машинное обучение в Power BI на Python
Машинное обучение в Power BI. Звучит довольно необычно, правда? С недавних пор в Power BI реализовано машинное обучение на AutoML, однако воспользоваться этим функционалом могут не все пользователи. Так давайте же разберемся с тем, как обойти это ограничение с помощью Python.
Реализованное машинное обучение на AutoML позволяет реализовывать ML-модели внутри Power BI. Однако этот функционал доступен только для данных, размещенных на Power BI Premium и Embedded.
Также в Power BI поддерживается интеграция со службой машинного обучения Azure. Однако для доступа к модели Azure ML из Power BI у пользователя должна иметься подписка на Azure.
Возможность воспользоваться платной подпиской Azure или проприетарным доступом к емкостям Power BI Premium и Embedded имеется не всегда. Обойти это ограничение стало возможно в новых версиях Power BI с появлением поддержки open source библиотек на Python.
Прогноз текучки персонала НА scikit-LEARN
Рассмотрим небольшой пример применения машинного обучения на Python для получения прогноза объемов текучки персонала организации. Это можно сделать с помощью библиотеки Scikit-learn, предоставляющей широкий набор алгоритмов обучения. Мы воспользуемся редактором запросов Python в Power BI, что позволит применить Python для очистки данных, произвести заполнение отсутствующих данных, прогнозирование и кластеризацию, а также подготовку модели данных и создание отчетов. Таким образом мы можем выполнить типовые этапы машинного обучения непосредственно в редакторе запросов Power BI:
- Предварительная обработка данных.
- Машинное обучение.
- Сохранение результатов прогноза.
Для классификации сотрудников и прогноза вероятности увольнения будет использоваться метод логистической регрессии. Величина, которую мы будем прогнозировать – количество увольняющихся сотрудников из компании. При оценке качества модели машинного обучения на основе логистической регрессии будут использоваться обезличенные показатели 15 тысяч сотрудников некой западной компании, получены из открытых источников в Интернет, содержащей параметры увольняющегося из компании сотрудника. Среди параметров есть, например, такие как уровень удовлетворенности, оценка деятельности сотрудника, количество реализованных сотрудником проектов, срок его работы в компании, отдел, в котором он работал и т.п.
Нашей целью является создание модели машинного обучения, с помощью которой мы сможем выявить закономерности в имеющемся наборе исходных данных и получить прогноз, который запишется в добавленные новые столбцы наших исходных данных, которые будут описывать вероятность увольнения сотрудника.
Моделирование НА Python
Набор исходных данных содержится в csv-файле, для обработки которого будет использоваться сценарий на Python. Рассмотрим составляющие этого сценария.
1. Загрузка необходимых зависимостей:
2. Загрузка набора исходных данных – датасета из csv-файла (часть этого файла была продемонстрирована на рис. 1):
Выполнив первые две части сценария в IDE Spyder, мы загрузим наш исходный набор данных в датафрэйм.
Как видно из рис. 4, у нас имеются два столбца, содержащих нечисловые категории – это отделы (Departments) и заработная плата (salary). Поэтому далее мы должны преобразовать эти два столбца – эти две фичи, в цифровой формат с помощью функции fit_transform().
Преобразование категорий в исходном наборе в числовые параметры:
После выполнения этой части сценария мы полностью избавимся от нечислового представления фич.
Предварительная обработка данных в исходном наборе:
Эта часть сценария подготовит наборы данных, которые будут использоваться для логической регрессии.
5. Масштабирование данных в исходном наборе:
Поскольку в датафрейме X данные имеют различный масштаб, их необходимо привести к общему основанию, что и выполняется на данном шаге сценария.
6. Стандартный шаг по разделению данных исходного набора на обучающую и тестовую выборки:
7. Моделирование результатов прогноза с помощью логистической регрессии, в результате выполнения которого логистическая модель окажется обученой:
8. Добавление полученных результатов прогноза в исходный набор данных – то есть сохранение результатов прогноза, полученного после обучения модели:
В результате выполнения последнего шага сценария в датасет будут записаны прогнозные значения.
Теперь необходимо воспользоваться скриптом на Python, чтобы обработать данные исходного набора данные в Power BI. Для это необходимо:
- Загрузить исходные данные из csv-файла в Power BI Desktop.
- В редакторе Power Query с закладки «Преобразование» нажать кнопку «Запустить скрипт Python».
- В редактор Power BI поместить весь использованный нами сценарий на Python за исключением шага загрузки датасета, поскольку он уже загружен в Power BI.
- Запустить сценарий на выполнение.
Как только выполнение сценария будет завершено, в Power BI создастся новая таблица результатов, которая будет содержать обновленные данные исходной таблицы, которая уже находится в модели данных Power BI.
Можно использовать Power BI для визуализации результатов моделирования и сопоставлять прогнозные и фактические данные. Также можно улучшить качество прогноза логистической регрессии или применить другие алгоритмы машинного обучения.
Несколько цитат из его интервью журналисту Александру Плющеву.
Собираем новости, события и мнения о рынках, банках и реакциях компаний.
Содержание статьи:
1. Как произошла атака: изощрённая схема с мультиподписью
2. Реакция руководства ByBit: образцовый пример кризис-менеджмента
3. Реакция конкурентов: неоднозначная поддержка индустрии
4. Важный момент: для обычного пользователя риски минимальные
5. Банкран vs. взлом: в чём фундаментальная разница
6. Что делать пользователям ByBit…
*В предыдущих сериях* Я — дизайнер из Питера, переехал однажды жить в лес, трижды принял роды, сделал с другом стартап про пчёл, раскрутил его на VC, потом мой друг-кофаундер погиб, я продолжил дело, плюс развёлся. И еще я вегетарианец. Собрал комбо?
Америка 1920-х. Аль Капоне известен как гангстер, но немногие знают, что одним из его легальных бизнесов была сеть прачечных самообслуживания. Это был безупречный расчет: люди всегда будут стирать белье, независимо от кризисов и законов. В США поход в прачечную — часть культуры, в России же химчистки стали чем-то обыденным только в XXI веке.
Мы попросили известных экспертов в сфере управления персоналом поделиться своим мнением о том, какие навыки будут особенно востребованы у HR в ближайшее время, что точно стоит прокачать, а что можно оставить в прошлом.
▪ Как заселять клиентов в номера и квартиры 24/7
▪ Интеграция с Bnovo
▪ Общается, как настоящий менеджер
▪ Предлагает подходящие объекты и отвечает на вопросы
Если у тебя есть python, то нафига, тебе BI?
Сделать быстро дашбордик в котором бизнес сможет поиграться изменяя фильтры и срезы.