Что такое Студия машинного обучения Microsoft Azure

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

Загрузка набора данных и выбор объектов

Импорт набора данных очень прост, единственное, что требуется, это, например, CSV-файл, и он готов к использованию. После этого ML studio позволяет выбирать функции вручную с помощью простого диалогового окна, как показано ниже. Выбор признаков или разработка также могут выполняться автоматически для выбора переменных с наибольшей предсказательной силой, но пока давайте не будем усложнять.

Определение и обучение модели

ML Studio предлагает ряд моделей на выбор для бинарных классификаций, например

  • Программные векторные машины
  • модель Байеса
  • Глубокий лес
  • Расширенное дерево решений

Например, это здорово, чтобы быстро сравнить, какая из моделей работает лучше всего. Давайте попробуем простую нейронную сеть и посмотрим, как она работает. Единственное, что нам нужно сделать, это сначала разделить данные на обучающий набор и проверочный набор, чтобы выполнить оценку алгоритма после обучения, а затем подключить данные обучения к модели и начать обучение. Это делается графически следующим образом:

После выбора функций и определения целевого столбца данные разделяются и передаются в двухклассовую нейронную сеть. При желании мы также можем выполнить фильтр для переменных и извлечь лучшие прогностические функции с помощью «Выбора функций на основе фильтра». Затем модель обучается на основе стандартных параметров. У нас также есть возможность найти лучшие гиперпараметры для модели, используя функцию настройки гиперпараметров модели в ML studio, чтобы попытаться найти лучшие параметры для модели.

Оценка модели

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

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

Мы достигли AUC 0,855, как вы можете видеть на картинке ниже, без какой-либо настройки модели. Интересной особенностью является то, что вы можете изменить порог, по которому модель будет решать, должна ли классификация быть 0 или 1, и сразу увидеть влияние на полноту и точность, поэтому вы можете выбрать, какой параметр оптимизировать. В зависимости от того, хотите ли вы, чтобы самый высокий процент соответствующих случаев среди всех случаев был помечен как истинно положительные, точность или вы хотите убедиться, что вы определили самый высокий процент положительных случаев среди всех положительных случаев (отзыв).

Дисбаланс боевых классов

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

Существует несколько способов попытаться решить проблему:

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

Если вы хотите узнать об этой теме, вот хорошая статья, которую вы можете найти в разделе https://medium.com/james-blogs/handling-imbalanced-data-in-classification-problems-7de598c1059f.

Студия ML позволяет нам добавить в наш эксперимент алгоритм передискретизации SMOTE (как показано на рисунке ниже). Это должно помочь нам увеличить показатели AUC и улучшить результаты в целом.