Открыть сервис

AutoML

AutoML (автоматическое машинное обучение, от англ. Automated Machine Learning) — это процесс автоматизации полного цикла применения машинного обучения к реальным задачам, включая выбор модели, настройку гиперпараметров, инжиниринг признаков и подготовку данных. AutoML позволяет специалистам, не обладающим глубокими знаниями в области машинного обучения, создавать эффективные модели, а также ускоряет работу экспертов, сокращая время на рутинные операции.

История

Концепция автоматизации машинного обучения возникла в конце 2000-х годов как ответ на растущую сложность и трудоёмкость процесса создания моделей. Первые работы были сосредоточены на автоматическом подборе гиперпараметров (Hyperparameter Optimization, HPO). В 2010-х годах, с развитием библиотек вроде scikit-learn и TensorFlow, появились первые инструменты, автоматизирующие выбор алгоритмов и предобработку данных.

Значительный прорыв произошёл в 2014 году, когда команда из Университета Торонто (включая Джеффри Хинтона) представила систему Auto-WEKA, которая автоматизировала выбор классификатора и настройку гиперпараметров для платформы WEKA. В 2015 году стартап H2O.ai выпустил H2O AutoML, ставший одним из первых коммерческих решений. В 2017 году Google представил Cloud AutoML, а Microsoft — Azure Automated ML, что сделало AutoML доступным для широкого круга пользователей через облачные платформы.

В 2020-х годах AutoML стало стандартной функцией многих платформ, включая Amazon SageMaker, DataRobot, Alteryx и open-source библиотеки, такие как AutoGluon (Amazon) и MLJAR. Развитие AutoML также связано с ростом популярности нейросетевого поиска архитектуры (Neural Architecture Search, NAS), который автоматизирует проектирование глубоких нейронных сетей.

Классификация

AutoML можно разделить на несколько категорий в зависимости от решаемых задач:

По этапам автоматизации

  • Автоматический выбор модели (Model Selection) — поиск наилучшего алгоритма (например, Random Forest, XGBoost, нейронная сеть) для конкретного набора данных.
  • Автоматическая настройка гиперпараметров (Hyperparameter Optimization, HPO) — подбор параметров модели (например, скорость обучения, глубина дерева) с помощью методов вроде байесовской оптимизации, случайного поиска или эволюционных алгоритмов.
  • Автоматический инжиниринг признаков (Feature Engineering) — генерация, отбор и преобразование признаков (например, создание полиномиальных признаков, кодирование категориальных переменных).
  • Автоматический поиск архитектуры нейросетей (Neural Architecture Search, NAS) — автоматическое проектирование структуры нейронной сети (количество слоёв, типы слоёв, функции активации).
  • Полный цикл (End-to-End AutoML)объединение всех этапов: от загрузки данных до развёртывания модели.

По типу решаемых задач

  • Классификация и регрессия — стандартные задачи с учителем.
  • Кластеризация и снижение размерности — задачи без учителя.
  • Временные ряды — прогнозирование значений на основе временных зависимостей.
  • Обработка текста и изображений — специализированные AutoML-решения для NLP и компьютерного зрения (например, Google AutoML Vision).

Основные методы и алгоритмы

AutoML использует ряд методов для эффективного поиска оптимальных решений:

Поиск гиперпараметров

  • Случайный поиск (Random Search) — простой метод, перебирающий случайные комбинации параметров. Часто эффективнее полного перебора.
  • Байесовская оптимизация — использует вероятностные модели (например, Gaussian Processes) для выбора наиболее перспективных комбинаций, минимизируя количество экспериментов.
  • Эволюционные алгоритмы — имитируют естественный отбор, «скрещивая» и «мутируя» наборы параметров.
  • Метод градиентного спуска — применяется для дифференцируемых гиперпараметров (например, в нейронных сетях).

Поиск архитектуры нейросетей (NAS)

  • Рекуррентные нейросети (RNN-based) — используют RNN для генерации архитектур, которые затем оцениваются.
  • Эволюционные методы — эволюция архитектур через мутации и скрещивание.
  • Одноразовые модели (One-shot models) — обучают одну гигантскую сеть, из которой затем извлекают подархитектуры (например, DARTS).

Автоматический инжиниринг признаков

  • Featuretools — библиотека для автоматического создания признаков на основе реляционных данных.
  • Deep Feature Synthesis — метод, генерирующий признаки с помощью операций (сумма, среднее, максимум) над связанными таблицами.
  • AutoFeat — open-source библиотека для автоматического инжиниринга признаков.

Применение

AutoML находит применение в различных отраслях:

Инструменты и платформы

Коммерческие

  • Google Cloud AutoMLоблачный сервис, поддерживающий классификацию, регрессию, обработку текста, изображений и видео. Позволяет создавать модели без написания кода.
  • Azure Automated ML (Microsoft) — встроен в платформу Azure Machine Learning, поддерживает автоматизацию полного цикла, включая выбор модели, настройку гиперпараметров и развёртывание.
  • Amazon SageMaker Autopilot — автоматически создаёт, обучает и настраивает модели на основе данных, загруженных в SageMaker.
  • DataRobot — платформа, ориентированная на бизнес-пользователей, автоматизирующая весь процесс от данных до внедрения.
  • H2O AutoML — open-source и коммерческая версия, поддерживает множество алгоритмов, включая градиентный бустинг и нейронные сети.

Open-source

  • AutoGluon (Amazon) — библиотека для автоматизации машинного обучения, поддерживающая табличные данные, текст и изображения.
  • MLJAR — open-source AutoML-фреймворк, ориентированный на табличные данные, с поддержкой множества моделей и методов оптимизации.
  • TPOT — библиотека, использующая генетические алгоритмы для автоматического поиска пайплайнов машинного обучения.
  • Auto-sklearn — расширение scikit-learn, автоматизирующее выбор модели, предобработку и настройку гиперпараметров с помощью байесовской оптимизации.

Критика и ограничения

Несмотря на преимущества, AutoML имеет ряд недостатков:

  • Вычислительная сложность — автоматический поиск требует значительных вычислительных ресурсов, особенно для NAS и больших наборов данных.
  • Чёрный ящик — автоматически созданные модели часто сложнее интерпретировать, что затрудняет их внедрение в регулируемых отраслях (например, в медицине или финансах).
  • Ограниченная креативность — AutoML может не найти нестандартные решения, которые опытный специалист мог бы предложить на основе интуиции.
  • Зависимость от данных — качество модели напрямую зависит от качества и репрезентативности входных данных; AutoML не может компенсировать систематические ошибки в данных.
  • Риск переобучения — при неправильной настройке метрик и валидации AutoML может подобрать модель, переобученную на тестовых данных.

Интересные факты

  • Первая система AutoML, Auto-WEKA, была разработана в 2013 году и выиграла несколько соревнований по автоматизации машинного обучения.
  • В 2020 году Google представил AutoML Tables, который позволял строить модели на табличных данных без написания кода, используя только интерфейс.
  • Некоторые AutoML-системы, такие как AutoGluon, способны достигать результатов, сопоставимых с лучшими моделями, созданными вручную, на многих стандартных наборах данных.
  • В 2022 году исследователи из MIT разработали систему AutoML, которая может автоматически генерировать объяснения для своих решений, повышая интерпретируемость.

Источники

  • Hutter, F., Kotthoff, L., & Vanschoren, J. (Eds.). (2019). Automated Machine Learning: Methods, Systems, Challenges. Springer.
  • Feurer, M., Klein, A., Eggensperger, K., et al. (2015). Efficient and Robust Automated Machine Learning. Advances in Neural Information Processing Systems.
  • Olson, R. S., & Moore, J. H. (2016). TPOT: A Tree-based Pipeline Optimization Tool for Automating Machine Learning. JMLR.
  • Google Cloud AutoML Documentation (2023). Overview of AutoML.
  • Microsoft Azure Documentation (2023). Automated Machine Learning.
  • Amazon SageMaker Documentation (2023). Autopilot.
  • Erickson, N., Mueller, J., Shirkov, A., et al. (2020). AutoGluon-Tabular: Robust and Accurate AutoML for Structured Data. arXiv:2003.06505.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →