Как AutoML постепенно становится новым инструментом повышения производительности аналитики

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

Классический процесс машинного обучения включает в себя несколько шагов по умолчанию, которые в настоящее время стали стандартными, а именно:

  • инженерия данных
  • выбор модели
  • гиперпараметрическая настройка
  • фактическое обучение модели

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

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

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

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

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

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

Автоматизированное машинное обучение - испытание автоматизации

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

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

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

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

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

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

Эволюционные алгоритмы, применяемые в AutoML, не только дают специфические, но хорошо работающие конфигурации нейронных сетей, но также доказывают свою способность напрямую сравнивать себя с уже существующими фреймворками, такими как

  • AutoKeras
  • MLBox
  • TPOT

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

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

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

Подводя итог, цель статьи - дать краткое введение в область AutoML, подчеркнув его важность для анализа и экономии времени. Кроме того, были представлены результаты, подтверждающие жизнеспособность, универсальность и производительность предложенного решения AutoML на основе эволюционных алгоритмов.

Ознакомьтесь с проектом на GitHub здесь : github.com/MihaiAnton/AutoML

И облачная платформа здесь: anon.antonmihai.com