Facebook и Microsoft упростили перевод моделей между фреймворками PyTorch и Caffe2

Facebook и Microsoft объявили о новом совместном проекте ONNX, Open Neural Network Exchange (открытый обмен нейронными сетями). Он сильно упростит перевод моделей между PyTorch и Caffe2, что уменьшит время между исследованием (обучением модели) и производством готового продукта.

Разные фреймворки — для разных задач

Подразделение FAIR (Facebook AI Research) занимается исследованиями, в то время как AML (Applied Machine Learning) применяет исследования на практике в готовых продуктах. Подразделением FAIR используется фреймворк PyTorch: он хорош для точных вычислений, но не экономит ресурсы. Фреймворк Caffe2, с которым работает AML, лучше подходит для внедрения машинного обучения в массовый продукт.

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

В чём преимущество ONNX?

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

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

 

Совместный проект Facebook и Microsoft находится в открытом доступе, его можно найти на GitHub. В ближайших релизах поддержку ONNX получит и фреймворк Cognitive Toolkit от Microsoft.

Источник: TechCrunch