Microsoft и Facebook анонсировали совместный проект, призванный упростить аналитикам данных обмен моделями между различными платформами машинного обучения.
Формат Open Neural Network Exchange (ONNX) обеспечит общий способ представления данных, используемых в нейронных сетях. Большинство платформ имеют сегодня собственный специфический формат моделей, которые способны работать с моделями других платформ только при использовании специальных инструментов преобразования форматов.
ONNX позволит осуществлять свободный обмен информацией, которой обладают модели, без процедуры преобразования. Модель, обученную на одной платформе, можно будет использовать и на другой платформе.
Формат Open Neural Network Exchange обеспечит общий способ представления данных, используемых в нейронных сетях |
В Microsoft утверждают, что формат ONNX позволяет исключить преобразования форматов моделей. Разработчики могут выбирать наиболее подходящие для себя платформы, поскольку каждая из них оптимизирована для различных сценариев использования, таких как быстрое обучение, поддержка гибких сетевых архитектур, получение результатов на мобильных устройствах и т. д.
По словам представителей Facebook, некоторые ключевые платформы уже сейчас начинают поддерживать ONNX. В Caffe2 и PyTorch (проекты Facebook), а также в Cognitive Toolkit (проект Microsoft) эта поддержка была реализована в сентябре. Модели, прошедшие обучение на одной из этих платформ, можно будет экспортировать и на другие платформы, поддерживающие ONNX.
На первом этапе поддержка ONNX появится не везде. В PyTorch, например, некоторые программы, в том числе с динамическим управлением потоками, полной поддержки ONNX не получат.
Неясно также, как размеры моделей ONNX будут сочетаться с размерами уже используемых моделей. Формат Apple Core ML, к примеру, проектировался для создания небольших, но точных моделей, которые можно было бы развертывать и обслуживать на устройствах конечных пользователей, включая iPhone. Но Core ML — это проприетарный формат. Между тем одна из долгосрочных целей ONNX заключается в том, чтобы упростить доставку моделей на самые разные системы.