c‎ > ‎w‎ > ‎j‎ > ‎

8

Сегодня Microsoft и Facebook анонсировали новый проект с открытым исходным кодом, целью которого является создание представления общей модели для нейронных сетей в различных рамках программирования. Вызывается Open Neural Network Exchange (ONNX), новый проект позволит делиться моделями через Cognitive Toolkit, PyTorch и Caffe2.

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

Используя ONNX, Facebook может экспортировать обученную модель, созданную с PyTorch, и использовать ее с Caffe2 для вывода. Это важно для создания модели, созданной в исследованиях (что-то, что PyTorch хорошо) и доведения ее до производства с Caffe2. Microsoft заявила, что работает над выпуском версии Cognitive Toolkit (также известной как CNTK), которая поддерживает ONNX.

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

В настоящее время самая большая проблема с ONNX заключается в том, что она несовместима с некоторыми другими популярными системами машинного обучения, в том числе с TensorFlow, созданной в Google, и Apache MXNet, которая является предпочтительной картой обучения Amazon.

Однако реализация поддержки проекта является нетривиальной. Facebook сказал, что он должен был внести изменения как в PyTorch, так и в Caffe2, чтобы поддержать проект. Microsoft и Facebook заявили, что они надеются, что сообщество с открытым исходным кодом поможет им развить ONNX, поэтому поддержка большего количества рамок станет возможной в будущем.

Кроме того, ONNX не поддерживает некоторые более сложные сети, такие как созданные в PyTorch с динамическим управлением потоком. Это то, что Facebook планирует добавить в будущем.

#auto

Comments