ONNX
Open Neural Network Exchange (ONNX) | |
---|---|
![]() | |
Тип | Для построения нейронных сетей |
Разработчики | Facebook, Microsoft |
Написана на | C++, Python |
Операционные системы | Windows, Linux |
Первый выпуск | сентябрь 2017; 6 лет назад (2017-09) |
Аппаратная платформа | кроссплатформенный |
Последняя версия | 1.7.0[1]. (28 мая 2020; 4 года назад (2020-05-28)) |
Репозиторий | github.com/onnx/onnx |
Состояние | Активное |
Лицензия | Apache License 2.0 |
Сайт | onnx.ai |
![]() |
ONNX (Open Neural Network Exchange) — открытая библиотека программного обеспечения для построения нейронных сетей глубокого обучения. С помощью ONNX ИИ-разработчики могут обмениваться моделями между различными инструментами и выбирать наилучшую комбинацию этих инструментов. ONNX разрабатывается и поддерживается совместно компаниями Microsoft, Facebook, Amazon и другими партнерами как проект с открытым исходным кодом[2][3].
ONNX позволяет обучать модели в рамках одной среды, а затем переносить их в другую среду для распознавания лиц, распознавания жестов или объектов и т. д. Это позволяет разработчикам использовать правильную комбинацию инструментов. Модели ONNX в настоящее время поддерживаются в Caffe2, Microsoft Cognitive Toolkit, MXNet, PyTorch и OpenCV, и есть интерфейсы для многих других популярных фреймворков и библиотек.
ONNX Model Zoo — это коллекция моделей глубокого обучения с предварительным обучением, доступных в формате ONNX. Каждая модель поставляется с интерактивной оболочкой IPython для обучения модели и выработки соответствующей модели. Модели написаны на Python и содержат ссылки на набор обучающих данных, а также ссылки на оригинальный научный документ, описывающий архитектуру модели.
История
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/13/NM_6408_neural_network_during_the_%22Armiya_2022%22_exhibition.jpg/220px-NM_6408_neural_network_during_the_%22Armiya_2022%22_exhibition.jpg)
Первоначально ONNX назывался Toffee[4] и был разработан командой PyTorch в Facebook[5]. В сентябре 2017 года он был переименован в ONNX и анонсирован Facebook и Microsoft.[6] Позже IBM, Huawei, Intel, AMD, Arm и Qualcomm объявили о поддержке этой инициативы[7].
ONNX.js
ONNX.js является JavaScript-библиотекой для запуска ONNX модели в браузерах и на Node.js. С ONNX.js веб-разработчики могут интегрировать и тестировать предварительно обученные модели ONNX непосредственно в веб-браузере. Это имеет следующие преимущества: сокращение взаимодействия сервер-клиент, защита пользовательских данных, кроссплатформенное машинное обучение без установки программного обеспечения на клиенте.
ONNX.js может быть запущен как на CPU, так и на GPU. Для работы на процессоре используется WebAssembly. Это позволит модели работать практически на родной скорости. Кроме того, ONNX.js использует Web worker[англ.] для обеспечения «многопоточной» вычислительной среды распараллеливания. Эмпирическая оценка показывает очень многообещающие улучшения производительности процессора, используя все преимущества WebAssembly и Web Workers. Для работы на графических процессорах WebGL является стандартом для доступа к функциям графического процессора[8][9][10].
См. также
Примечания
- ↑ Release 1.7.0 (англ.) (28 мая 2020). Дата обращения: 3 июня 2020. Архивировано 19 августа 2021 года.
- ↑ Braddock Gaskill. ONNX: the Open Neural Network Exchange Format (англ.). Linux Journal (25 апреля 2018). Дата обращения: 17 января 2019. Архивировано 19 января 2019 года.
- ↑ heise online. Microsoft und Facebook machen gemeinsame KI-Sache (нем.). Дата обращения: 17 января 2019. Архивировано 19 января 2019 года.
- ↑ Codemod Toffee -> ONNX, toffee -> onnx. Change file names to match · pytorch/pytorch@6d8d5ba (англ.). GitHub. Дата обращения: 12 октября 2021. Архивировано 27 октября 2021 года.
- ↑ A model exporter for PyTorch by ezyang · Pull Request #2565 · pytorch/pytorch (англ.). GitHub. Дата обращения: 12 октября 2021. Архивировано 27 октября 2021 года.
- ↑ "Microsoft and Facebook create open ecosystem for AI model interoperability - Microsoft Cognitive Toolkit". Microsoft Cognitive Toolkit (англ.). 2017-09-07. Архивировано 30 марта 2019. Дата обращения: 11 октября 2017.
{{cite news}}
: Указан более чем один параметр|accessdate=
and|access-date=
(справка) - ↑ "Microsoft and Facebook's open AI ecosystem gains more support". Engadget (англ.). Архивировано 9 мая 2019. Дата обращения: 11 октября 2017.
{{cite news}}
: Указан более чем один параметр|accessdate=
and|access-date=
(справка) - ↑ Microsoft ONNX.js: run ONNX models using JavaScript. (англ.) (7 марта 2019). Дата обращения: 7 марта 2019. Архивная копия от 30 апреля 2019 на Wayback Machine Источник (неопр.). Дата обращения: 16 апреля 2019. Архивировано 30 апреля 2019 года.
- ↑ Will Badr ONNX.js: Universal Deep Learning Models in The Browser (англ.) (8 января 2019). Дата обращения: 7 марта 2019. Архивная копия от 3 февраля 2022 на Wayback Machine Источник (неопр.). Дата обращения: 16 апреля 2019. Архивировано 3 февраля 2022 года.
- ↑ ONNX.js - Run ONNX models in the browser (Demos) (англ.). Microsoft. Дата обращения: 7 марта 2019. Архивная копия от 8 марта 2019 на Wayback Machine Источник (неопр.). Дата обращения: 16 апреля 2019. Архивировано 8 марта 2019 года.
Ссылка
- Microsoft Connect() 2018: ONNX-Runtime für Machine Learning wird Open Source
- Проект ONNX на сайте GitHub (англ.)