PyTorchPipe: инструмент для обучения нейросетей от IBM

PyTorchPipe (PTP) — это фреймворк, который облегчает создание и поддержание системы обучения нейросети. PTP разбит на блоки по этапам обучения нейросети, которые связываются в единую систему. 

Блоки PTP — это разные этапы создания нейросети: от предобработки данных до тестирования модели, — которые взаимодействуют друг с другом через потоки данных. Каждый поток может состоять из нескольких компонентов: кусок данных для задачи, любое количество обучающих компонентов (моделей) и дополнительные компоненты для обработки данных и вычислений.

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

PyTorchPipe базируется на PyTorch. PyTorch используется в том числе для распределения вычисления на CPU/GPU ресурсах. Тьюториал по работе с PTP доступен по ссылке.

Датасеты

PTP на данный момент содержит в себе базовые датасеты для задач из трех областей:

  • компьютерного зрения (MNIST, CIFAR);
  • обработки естественного языка (WiLY, WikiText, ANKI);
  • визуальные вопросно-ответные системы (CLEVR, GQA, ImageCLEF VQA)
Доступные датасеты по задачам

Архитектура

То, что стандартно называют моделью, в PTP называется пайплайном. Пайплайн состоит из множества взаимосвязанных компонентов с одной или более моделями. Модели — это обучаемые компоненты пайплана.

В PTP встроены модели для задач из четырех областей:

  • компьютерного зрения;
  • обработки естественного языка;
  • модели общего назначения;
  • визуальная вопросно-ответная система

Для некоторых моделей можно выбрать параметры.

Доступные модели по областям применения

Помимо моделей, в PTP доступны компоненты для работы с данными:

  • Методы предобработки текстовых данных;
  • Функции потерь и статистики;
  • Трансформации формата данных;
  • Просмотр данных
Список доступных опций для работы с данными

Воркеры в PTP — это Python-скрипты, которые стандартны для задач, моделей и пайплайнов, с которыми работают. В текущей версии фреймворка доступны три воркера: ptp-offline-trainer, ptp-online-trainer и ptp-processor. Они отвечают за то, как проходит процесс обучения. 

Подробное описание инструмента доступно в официальном репозитории на GitHub.

Подписаться
Уведомить о
guest

0 Comments
Межтекстовые Отзывы
Посмотреть все комментарии

gogpt