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

Источник: neurohive

 

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

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

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

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

Датасеты

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

  • компьютерного зрения (MNISTCIFAR);
  • обработки естественного языка (WiLY, WikiTextANKI);
  • визуальные вопросно-ответные системы (CLEVRGQAImageCLEF VQA)
Доступные датасеты по задачам

Архитектура

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

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

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

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

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

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

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

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

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


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=40051