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

Чтобы создать эксперимент, запустите свой скрипт с Guild AI из командной строки:

$ guild run train.py

Гильдия записывает полный отчет о вашем эксперименте.

  • Исходный код
  • Гиперпараметры (скорость обучения, размер пакета и т. Д.)
  • Вывод скрипта
  • Результаты скрипта (точность, AUC, потери и т. Д.)
  • Сгенерированные файлы (сохраненные модели, наборы данных, графики и т. Д.)

Guild позволяет сравнивать результаты с помощью различных инструментов, включая TensorBoard, HiPlot, сравнение файлов и просмотр гильдии. Изучите и сравните эксперименты, чтобы ответить на вопросы о том, что проводилось и как выполнялось.

Зачем отслеживать эксперименты?

Если вы не записываете результаты, вы полагаетесь на память и интуицию. Это только до сих пор. Без систематического измерения трудно ответить на важные вопросы.

  • Какие гиперпараметры дают наилучшие результаты для данного подхода?
  • Мое последнее изменение что-то неожиданно сломало?
  • Что вызвало такое резкое улучшение производительности на прошлой неделе?
  • Как наши кривые AUC-ROC сравниваются с течением времени?
  • У моего коллеги такой же результат? Что было по-другому? Что мы можем узнать из этих различий?

Этот список можно продолжить.

Если вы не измеряете, вы упускаете возможность учиться на своей работе и принимать более обоснованные решения.

Но отслеживание экспериментов - это боль

В зависимости от вашего подхода отслеживание экспериментов может оказаться проблемой.

  • Таблицы. Копирование и вставка утомительна и подвержена ошибкам. Вы упускаете важные детали, такие как исходный код, вывод сценария и файлы, созданные вашим сценарием.
  • Самостоятельное отслеживание экспериментов. Это кажется простым: просто скопируйте результаты в каталог с отметкой времени. Это заблуждение заставляет многих разрабатывать собственные системы отслеживания экспериментов. Вы хотите тратить время на создание инструментов или их использование?
  • Платные услуги. Если вам нужно создать учетную запись, предоставить информацию о кредитной карте или иным образом отправить данные в корпорацию - просто для того, чтобы зафиксировать эксперимент - у вас меньше шансов зафиксировать эксперимент.
  • Модификации кода. Инструменты отслеживания экспериментов часто требуют внесения инвазивных изменений в код. Даже простые операции, такие как запись файла, требуют специализированных библиотек. Каждое изменение кода отвлекает от работы. Хуже того, он привязывает ваши скрипты к нестандартным фреймворкам.
  • Требуемые базы данных, агенты, файловые системы и т. д.. Многие инструменты отслеживания экспериментов используют внешние системы, которые вы устанавливаете, настраиваете и обслуживаете. Даже если у вас есть опыт, эта работа отвлекает от цели создания лучших моделей.

Несмотря на ваши самые лучшие намерения отслеживать эксперименты, вы можете сделать вывод, что это бесполезно.

Отслеживание экспериментов - это НЕ боль

ИИ гильдии другой.

  • Guild не требует изменений в вашем коде - ваш код работает как есть, без привязки к фреймворку.
  • Guild не использует базы данных, экзотические файловые системы или серверные службы.
  • Гильдия никогда не просит вас создать учетную запись.
  • Guild на 100% имеет открытый исходный код и не зависит от платформы. Он поставляется бесплатно и без каких-либо ограничений.

Если отслеживать эксперимент быстро и легко - как в случае с гильдией - у вас больше шансов это сделать.

Философия дизайна гильдии AI

AI гильдии придерживается философии Unix. Он спроектирован таким образом, чтобы быть простым и легким без ущерба для функциональности.

  • Guild сохраняет каждый запуск в уникальном каталоге. Нет баз данных или экзотических файловых систем. Внешние системы сложно настраивать и поддерживать. Они вам не нужны, поэтому Гильдия их не использует.
  • Guild фиксирует входные и выходные данные через стандартные интерфейсы процессов. Он устанавливает гиперпараметры с помощью аргументов командной строки, переменных среды и специальной поддержки модулей Python. Guild получает вывод из стандартных файлов IO и отраслевых сводных файлов. Это делает ваш код на 100% независимым от системы отслеживания экспериментов.
  • Guild сохраняет все необходимое при каждом запуске. Это включает исходный код, системные свойства, библиотеки программного обеспечения и множество метаданных. Трудно оценить объем сохраненной информации, пока она вам не понадобится. К счастью, Гильдия сделает это за вас.

Если вы хотите написать собственный код отслеживания эксперимента, сначала попробуйте Guild. Вы получаете такой же простой подход, но с полнофункциональным, проверенным инструментом.

Скрытые преимущества отслеживания экспериментов

Когда вы используете ИИ гильдии для проведения экспериментов, вы получаете мощные дополнения.

  • Автоматизированные конвейеры. Выходные данные цикла можно использовать в качестве входных данных для других прогонов для создания автоматизированных конвейеров.
  • Поиск по гиперпараметрам. Автоматизируйте поиск по сетке, случайный поиск и байесовскую оптимизацию.
  • Удаленный запуск. Запускайте в удаленных системах так же, как и локально.
  • Резервное копирование и восстановление. Копирование выполняется в облачные службы или на локальные серверы резервного копирования.
  • Сотрудничество. Делитесь результатами с коллегами и собирайте их отзывы о каждом запуске.

Открытый исходный код и независимость от платформы

Guild AI - это 100% программное обеспечение с открытым исходным кодом. Вы можете использовать Guild в своих проектах, не ограничивая других.

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

Это важные факторы при рассмотрении стоимости управления экспериментом. Независимое программное обеспечение с открытым исходным кодом не только бесплатно с точки зрения денег. Это бесплатно с точки зрения автономии - вы принимаете лучшие решения для своего проекта и своего кода.

Использует ли ИИ гильдии магию?

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

Рассмотрим пример. Гильдия автоматически определяет исходный код проекта, ища типичные файлы исходного кода. Что, если Гильдия ошибется? Используйте файл гильдии, чтобы контролировать, что копируется:

# guild.yml (located in project directory)
train:                   # operation definition
  sourcecode:            # source code config
    - exclude: data      # don't copy files from data dir

Полное описание поддержки конфигурации гильдии см. В Справочнике по файлам гильдии.

Лучшие модели путем измерения

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

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

Чтобы узнать больше об ИИ гильдии, посетите https://guild.ai.