
Назначение AutoML-решений
Решения класса AutoML позволяют пользователям с небольшим опытом автоматизировать процесс построения и развертывания моделей машинного обучения, не прибегая к услугам исследователей данных и инженеров в области машинного обучения. Автоматизации подлежат рутинные задачи, такие как предварительная обработка данных, выбор признаков (features), выбор модели и настройка гиперпараметров.
К практическим преимуществам AutoML отнесем следующие:
- Минимизация рутины. Решения AutoML автоматизируют повторяющиеся и трудоемкие задачи, позволяя пользователям сосредоточиться на более важных с точки зрения бизнеса задачах, таких как анализ данных и интерпретация моделей. Общеизвестна статистика, что в проектах машинного обучения около 60-70% затрат времени приходится на подготовку данных. Мечта любого исследователя – освободиться от этой рутины.
- Поиск максимальной точности. Решения AutoML могут выполнять полный перебор архитектур моделей и их гиперпараметров, что может привести к созданию моделей с максимально возможной точностью по сравнению с моделями, построенными человеком. Людям свойственно лениться, это заложено в их программах защиты психического здоровья. Не каждый исследователь готов тратить время и силы на полный перебор и оптимизацию параметров модели. Зачастую дело ограничивается поиском и перебором нескольких наиболее часто используемых моделей и параметров. Например, количеством решающих деревьев, глубиной дерева и т. п.
- Снижение порога входа в исследование данных. Решения AutoML облегчают неспециалистам построение и развертывание моделей машинного обучения, что может привести к более широкому внедрению машинного обучения в различных отраслях и организациях.
Процесс создания и разворачивания модели машинного обучения будем называть конвейером (pipeline), который обычно включает несколько ключевых этапов:
- Подготовка данных (data wrangling) – первый и часто самый трудоемкий шаг в разработке ML-решения. Сюда входят такие задачи, как очистка и предварительная обработка данных, обработка недостающих значений (data imputation) и разделение данных на обучающие, проверочные и тестовые наборы.
- Выбор признаков (feature selection). После подготовки данных следующим шагом является выбор наиболее значимых признаков для модели. Для этого необходимо определить признаки, обладающие наибольшей предсказательной силой, и удалить все избыточные признаки, так как зачастую они только ухудшают результативность модели.
- Выбор модели (model selection). Когда признаки отобраны, необходимо выбрать подходящую модель. Решения AutoML обычно используют комбинацию таких методов, как байесовская оптимизация и генетические алгоритмы, чтобы выбрать модель, которая лучше всего работает на данном наборе данных.
- Тонкая настройка гиперпараметров (fine-tuning). Эти параметры контролируют поведение модели, например скорость обучения или количество скрытых слоев в нейронной сети. Решения AutoML обычно используют такие методы, как поиск по сетке или байесовская оптимизация для нахождения оптимальных гиперпараметров.
- После тонкой настройки модели нужно оценить ее эффективность. Обычно оценка включает в себя измерение различных метрик качества модели, таких как accuracy, precision, recall, и других показателей качества модели на тестовом (заранее отложенном) наборе данных.
- Разворачивание модели (deployment). После того, как модель оценена и результат оценки удовлетворяет бизнес, наступает время разворачивания модели для промышленной эксплуатации. Для этого необходимо сделать модель доступной на сервере или облачной платформе для конечных пользователей через API или веб-интерфейс.
Таким образом, пройдя все этапы подготовки данных, обучения и разворачивания модели, пользователь получает инструмент для создания прогнозов на новых данных, генерируемых системой управления бизнеса.
Глобальный и российский рынок AutoML
Глобальный рынок автоматизированного машинного обучения оценивается в 631,0 млн долларов США в 2022 году, и ожидается, что в течение 2022-2030 годов он будет расти с темпом 49,2%, достигнув 16 млрд долларов США к 2030 году. Ключевые факторы, ответственные за рост отрасли, включают растущий спрос на эффективные решения для обнаружения мошенничества и растущую потребность в персонализированных рекомендациях продуктов.
В России рынок AutoML также растет, но несколько медленнее по сравнению с мировым рынком. По прогнозам, к 2025 году объем российского рынка AutoML достигнет 1 млрд долларов США, а темпы роста составят 25%. Несмотря на замедление темпов роста, рынок в России по-прежнему представляет собой значительную возможность для компаний, предлагающих решения для автоматизации машинного обучения.
Российское правительство также инвестирует в развитие искусственного интеллекта, хотя объем инвестиций в рамках целевых программ был существенно пересмотрен в 2023 году. Однако ожидается, что внедрение автоматизации в различных отраслях экономики, таких как энергетика, транспорт, ритейл, агропром, будет в том числе стимулировать рынок AutoML. Основными проблемами рынка, которые не дают ему раскрыться в полной мере, остаются нехватка квалифицированных специалистов и ограниченный доступ к финансированию для стартапов.
Лидеры глобального рынка
Gartner – это исследовательская и консультационная компания, которая регулярно публикует отчеты и оценки различных игроков на различных технологических рынках, включая AutoML. Согласно Магическому квадранту Gartner для платформ AutoML, лидерами рынка по состоянию на 2021 год являются следующие игроки (состав игроков 2021/2019 принципиально не изменился).

Dataiku. Платформа позиционируется разработчиками как единое решение для повседневных разработок в области искусственного интеллекта. Есть приложение для десктопа с web-интерфейсом (бесплатно для персонального использования), которое также может быть доступно на сервере для команды из нескольких пользователей (доступно по платной лицензии). В целом решение удобное и эффективное при наличии определенного навыка работы с ETL-инструментами. Каждый шаг обработки данных и построения модели конфигурируется визуально при помощи так называемых рецептов (иконок с настраиваемыми параметрами). Выход одного рецепта служит входом для другого. Похожий подход моделирования использует и KNIME. Порог входа в решения – средний.
MathWorks. Компания MathWorks предоставляет решение под названием MATLAB, которое содержит свой язык программирования высокого уровня и среду для численных вычислений. MATLAB поддерживает широкий набор алгоритмов машинного обучения, включая глубокое обучение, деревья решений и алгоритмы кластеризации. Складывается впечатление, что MATLAB попал на квадрат Gartner AutoML по ошибке, так как выбивается из ряда других решений. По сути MathWorks – это надежный и проверенный помощник математика для разработки модели. Уровень автоматизации решения низкий.
Databricks – облачная платформа. Databricks интегрируется с широким спектром популярных источников данных, таких как Amazon S3, Google Cloud Storage и Azure Data Lake. С точки зрения автоматизации, Databricks предоставляет ряд возможностей, таких как автоматическая создания и отбора признаков, выбор лучшей модели и настройка гиперпараметров. Порог входа в решение – средний.
Недалеко отстали от лидеров «большие» облачные AutoML-платформы, такие как AWS Sagemaker и Google VertexAI. Эти платформы имеют определенные особенности:
- Довольно высокий порог входа как с точки зрения компетенций (интерфейс действительно сложно назвать интуитивно понятным для непрофессионала), так и с финансовой точки зрения. Пара часов обучения модели могут обойтись в 100 долларов США, что намекает на коммерческое использование продукта среди крупных компаний. Да и с доступностью оплаты этих средств теперь существуют большие проблемы.
- Платформы являются B2B-решениями для разработчиков крупных data-платформ и состоят из большого количества различных решений для ETL, хранения данных, запуска заданий по расписанию, фреймворков и библиотек машинного обучения, таких как TensorFlow, PyTorch и Apache MXNet, и т.п. Без опыта работы с каждым отдельным инструментом построение единой готовой платформы нереализуемо.
- Возможность обрабатывать большие объемы данных и масштабироваться по мере необходимости. Это также позволяет разработчикам создавать большие платформы под нужны крупного бизнеса. Для малого бизнеса стоимость разработки будет недоступной.
- В России наметилась устойчивая тенденция перехода с указанных платформ на отечественные решения в силу проблем с оплатой сервисов, а также туманной перспективой доступа к сервисам в будущем.
Отечественные альтернативы
Вероятно, единственной полноценной альтернативой таких решений, как Dataiku и KNIME, на российском рынке является Loginom. По аналогии с импортными решениями, существуют версии для локального использования на компьютере разработчика, а также серверные версии для средних и крупных компаний. Подходы к моделированию в Loginom также схожи с подходами Dataiku и KNIME. Отдельно стоит отметить, что недостающий базовый функционал решения может быть расширен Python-модулем, позволяющим создавать кастомные модели машинного обучения для специфичных запросов бизнеса.
Среди альтернатив облачных AutoML можно выделить следующие решения:
- Yandex DataSphere. Разработчики решения заявляют, что они первыми в мире (в 2020 году) запустили продукт для машинного обучения на технологии бессерверных вычислений, что позволяет подключать вычислительные мощности в тот момент, когда они требуются. Вероятно, поэтому тарификация за использование сервиса – посекундная (впрочем, как и у следующей платформы).
- Sber ML Space. Внутри решения есть различные вычислительные кластеры, загрузка которых не однородна: есть новые кластеры, которые развиваются, есть более ранние и максимально загруженные. Автоматизация построена на фреймворке LightAutoML, который также развивает подразделение «Сбера».
Оба решения поддерживают хранение большого объема данных на различных классах хранилищ по скорости обмена данными и стоимости хранения. Загрузка и хранение данных организованы через бакеты (аналогично AWS и совместимо с S3). Оба решения поддерживают интерфейс JupyterLab для работы с данными и моделями. Порог входа в решения – средний и выше.
Изучив имеющиеся на рынке решения для AutoM, мы пришли к выводу, что слабо представлены продукты с «околонулевым» порогом входа, которые могли бы использовать не профильные специалисты в исследовании данных. Другими словами, упомянутые ранее решения – это не замена исследователя данных, а инструмент для него. Во второй части материала рассмотрим наш опыт в создании решения с минимальным порогом входа.
Наш опыт в построении решения AutoML
Мы задались вопросом о том, можно ли построить базовое решение (proof of concept), которое могли бы использовать представители бизнеса для проверки тех или иных гипотез на имеющихся под рукой данных. Посмотрим на результат, который у нас получился.
Бэкенд приложения написан на Python c применением различных фреймворков для автоматизации машинного обучения, в том числе LightAutoML. Фронтенд – на React.

При входе в приложение появляется главный экран, который явно указывает на те этапы, которые необходимо пройти для построения модели машинного обучения. Эта «шпаргалка» нужна для пользователя решения, так как большая часть работы будет происходить под капотом.

Следующий шаг позволяет загрузить обучающий набор данных в формате CSV. Этот формат крайне популярен при распространении данных, в этом формате можно выгрузить данные из различных учетных систем и т.п. Внутри решения набор данных преобразуется в привычный pandas DataFrame и дальнейшая работа идет с экземпляром этого класса.

На следующем шаге происходит параметризация задачи. Указывается название целевой переменной / таргета, тип решаемой задачи, а также метрика, которая будет оптимизирована в ходе обучения модели.
При этом при наведении на каждое поле появляются подсказки, которые разъясняют пользователю назначение каждого поля, ведь мы говорим о неподготовленных пользователях.
Помимо указанных полей оставлены две «заглушки» для развития продукта в будущем: «Сфера деятельности» и «Вычислительная инфраструктура». Под сферой деятельности понимается доменная область, например финансы, медицина и т.п. Поскольку у нашей компании есть опыт в разработке доменно специфичных решений, мы планируем внедрить эти особенности в продукт. Например, пользователю в банке потребуется обучить модель для предсказания дефолта заемщика. Для этого пользователь укажет сферу деятельности «Финансы» и тип решаемой задачи, например, Weight of Evidence.
Различные типы вычислительной инфраструктуры нужны для работы с большими данными. Если их (данных) много, то с локальной машины можно перейти на «Кластер».
Кроме того, на данном этапе, после указания таргета, происходит заполнение недостающих значений и нормализация данных. Например,
LightAutoML не умеет обучать модели на данных, у которых встречаются пропуски в таргете (целевом столбце). Поэтому внутри решения удаляются строки, в которых значение целевой переменной пропущено.
Следующий экран демонстрирует процесс обучения, выбора и настройки модели машинного обучения. Для каждого типа задач (решение поддерживает регрессию, бинарную и мультиклассовую классификации) определены типы моделей, которые последовательно обучаются на тренировочном наборе данных. Также из тренировочного набора данных предварительно выделяется валидационный набор, на котором считаются метрики качества модели. Вывод этих метрик осуществляется на следующем экране.

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

После загрузки данных они также обрабатываются и подготавливаются к передаче в модель, далее происходит вызов метода предсказания на новых данных. Предсказанные значения добавляются в виде нового столбца в загруженный набор, и его можно скачать.
Таким образом, изучив за 30 минут базовые идеи и несколько терминов из области машинного обучения, подготовив некоторый набор данных, пользователь может проверить гипотезу о наличии некоторых зависимостей внутри набора, после чего принять решение о целесообразности дальнейшего развития своей идеи. Привлечения исследователя данных в таком подходе, скорее всего, не потребуется.
Выводы
Подавляющее большинство решений по автоматизации машинного обучения, доступных на рынке, не дают возможности их использования без привлечения исследователя данных, так как порог входа в решения довольно высокий.
Вместе с тем, рынок автоматизации машинного обучения развивается, и существуют несколько занятых сегментов. В первую очередь, это большие облачные решения, которые позволяют строить платформы промышленного уровня для крупного бизнеса. При этом есть отечественные решения, которые способны заместить уходящий импорт: Sber, Yandex.
Во-вторых, есть готовые решения для подготовленных исследователей данных, которые позволяют им вести индивидуальную и групповую работу по разработке специализированных моделей под специфичные бизнес-задачи: Loginom, Dataiku, KNIME.
В-третьих, есть гипотетически не занятая ниша решений для автоматизации машинного обучения с минимальным порогом входа, которая не требует привлечения исследователей данных. Однако спрос на третий сегмент предстоит еще изучить.