exportONNXNetwork

Сеть экспорта к формату модели ONNX

Экспортируйте обученную сеть Deep Learning Toolbox™ в формат модели ONNX™ (Open Neural Network Exchange). Можно затем импортировать модель ONNX к другим средам глубокого обучения, которые поддерживают импорт модели ONNX, такой как TensorFlow™, Caffe2, Microsoft® Cognitive Toolkit, Базовый ML и Apache MXNet™.

Синтаксис

exportONNXNetwork(net,filename)
exportONNXNetwork(net,filename,Name,Value)

Описание

пример

exportONNXNetwork(net,filename) экспортирует нейронную сеть для глубокого обучения net с весами к файлу формата ONNX filename. Если filename существует, то exportONNXNetwork перезаписывает файл.

Эта функция требует Конвертера Deep Learning Toolbox для Образцового пакета поддержки Формата ONNX. Если этот пакет поддержки не установлен, то функция обеспечивает ссылку на загрузку.

exportONNXNetwork(net,filename,Name,Value) экспортирует сеть с помощью дополнительных опций, заданных одним или несколькими аргументами пары "имя-значение".

Примеры

свернуть все

Загрузите предварительно обученный SqueezeNet сверточная нейронная сеть. Если Модель Deep Learning Toolbox для Сети SqueezeNet не установлена, то функция squeezenet обеспечивает ссылку на загрузку.

net = squeezenet
net = 
  DAGNetwork with properties:

         Layers: [68×1 nnet.cnn.layer.Layer]
    Connections: [75×2 table]

Экспортируйте сеть как файл формата ONNX в текущей папке под названием squeezenet.onnx. Если Конвертер Deep Learning Toolbox для Образцового пакета поддержки Формата ONNX не установлен, то функция обеспечивает ссылку на необходимый пакет поддержки в Add-On Explorer. Чтобы установить пакет поддержки, щелкните по ссылке, и затем нажмите Install.

filename = 'squeezenet.onnx';
exportONNXNetwork(net,filename)

Теперь, можно импортировать файл squeezenet.onnx в любую среду глубокого обучения, которая поддерживает импорт ONNX.

Входные параметры

свернуть все

Обучивший сеть, заданный как SeriesNetwork или объект DAGNetwork. Можно получить обучивший сеть путем импорта предварительно обученной сети (например, при помощи функции alexnet) или по образованию собственная сеть с помощью trainNetwork.

Имя файла, заданного как вектор символов или строка.

Пример: 'network.onnx'

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: exportONNXNetwork(net,filename,'NetworkName','my_net') экспортирует сеть и задает 'my_net' как сетевое имя в сохраненной сети ONNX.

Имя сети ONNX, чтобы сохранить в сохраненном файле, заданном как вектор символов или строка.

Пример: 'my_squeezenet'

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

Пример 6

Советы

  • exportONNXNetwork не экспортирует настройки или свойства, связанные с сетевым обучением, такие как опции обучения, факторы темпа обучения или факторы регуляризации.

  • Если вы экспортируете сеть, которая содержит слой, который не поддерживает формат ONNX, то exportONNXNetwork сохраняет заполнителя оператор ONNX вместо неподдерживаемого слоя и возвращает предупреждение. Вы не можете импортировать сеть ONNX с оператором заполнителя в другие среды глубокого обучения.

    exportONNXNetwork может экспортировать следующие слои:

    • Все слои в Deep Learning Toolbox кроме maxUnpooling2dLayer.

    • Все пользовательские слои, созданные при импорте сетей из ONNX или TensorFlow-Keras использование Конвертера Deep Learning Toolbox для Образцового Формата ONNX или Средства импорта Deep Learning Toolbox для Моделей TensorFlow-Keras.

    • crop2dLayer и pixelClassificationLayer, roiInputLayer, roiMaxPooling2dLayer и rcnnBoxRegressionLayer (Computer Vision Toolbox™).

Ссылки

[1] Открытый Exchange нейронной сети. https://github.com/onnx/.

[2] ONNX. https://onnx.ai/.

Введенный в R2018a

Для просмотра документации необходимо авторизоваться на сайте