importCaffeNetwork

Импортируйте предварительно обученные модели сверточной нейронной сети из Caffe

Описание

пример

net = importCaffeNetwork(protofile,datafile) импортирует предварительно обученную сеть из Caffe [1]. Функция возвращает предварительно обученную сеть с архитектурой, заданной .prototxt файл protofile и с сетевыми весами, заданными .caffemodel файл datafile.

Эта функция требует Средства импорта Deep Learning Toolbox™ для пакета поддержки Моделей Caffe. Если этот пакет поддержки не установлен, функция обеспечивает ссылку на загрузку.

Можно загрузить предварительно обученные сети с Зоопарка Модели Caffe [2].

net = importCaffeNetwork(___,Name,Value) возвращает сеть с дополнительными опциями, заданными одним или несколькими Name,Value парные аргументы с помощью любого из предыдущих синтаксисов.

Примеры

свернуть все

Загрузите и установите Средство импорта Deep Learning Toolbox для пакета поддержки Моделей Caffe.

Чтобы загрузить необходимый пакет поддержки, введите importCaffeNetwork в командной строке.

importCaffeNetwork

Если Средство импорта Deep Learning Toolbox для пакета поддержки Моделей Caffe не установлено, то функция обеспечивает ссылку на необходимый пакет поддержки в Add-On Explorer. Чтобы установить пакет поддержки, щелкните по ссылке, и затем нажмите Install.

Задайте файлы, чтобы импортировать.

protofile = 'digitsnet.prototxt';
datafile = 'digits_iter_10000.caffemodel';

Сеть Import.

net = importCaffeNetwork(protofile,datafile)
net = 
  SeriesNetwork with properties:

    Layers: [7×1 nnet.cnn.layer.Layer]

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

свернуть все

Имя файла .prototxt файл, содержащий сетевую архитектуру, заданную как вектор символов или скаляр строки. protofile должен быть в текущей папке, в папке на пути MATLAB®, или необходимо включать полный или относительный путь в файл. Если .prototxt файл не задает размер входных данных, необходимо задать размер с помощью 'InputSize' аргумент пары "имя-значение".

Пример: 'digitsnet.prototxt'

Имя файла .caffemodel файл, содержащий сетевые веса, заданные как вектор символов или скаляр строки. datafile должен быть в текущей папке, в папке на пути MATLAB, или необходимо включать полный или относительный путь в файл. Чтобы импортировать сетевые слои без весов, используйте importCaffeLayers.

Пример: 'digits_iter_10000.caffemodel'

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

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

Пример: importCaffeNetwork(protofile,datafile,'AverageImage',I) импортирует предварительно обученную сеть с помощью среднего изображения I для нулевой центральной нормализации.

Размер входных данных, заданных как вектор-строка. Задайте вектор двух или трех целочисленных значений [h,w], или [h,w,c] соответствуя высоте, ширине и количеству каналов входных данных. Если .prototxt файл не задает размер входных данных, затем необходимо задать входной размер.

Пример: [28 28 1]

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

Классы выходного слоя, заданного как категориальный вектор, массив строк, массив ячеек из символьных векторов или 'auto'. Если вы задаете массив строк или массив ячеек из символьных векторов str, затем программное обеспечение устанавливает классы выходного слоя к categorical(str,str). Если Classes 'auto', затем функция устанавливает классы на categorical(1:N), где N количество классов.

Типы данных: char | categorical | string | cell

Выходные аргументы

свернуть все

Импортированная предварительно обученная сеть Caffe, возвращенная как SeriesNetwork объект или DAGNetwork объект. Сети Caffe, которые берут цветные изображения в качестве входа, ожидают, что изображения будут в формате BGR. Во время импорта, importCaffeNetwork изменяет сеть так, чтобы импортированная сеть MATLAB взяла изображения RGB в качестве входа.

Советы

  • importCaffeNetwork может импортировать сети со следующими типами слоя Caffe, с некоторыми ограничениями:

    • Входной параметр

    • Свертка

    • Развертка

    • Пакетная норма

    • ReLU

    • Tanh

    • Локальная нормализация ответа (LRN)

    • Объединение

    • Скалярное произведение / Полностью Связанный

    • Уволенный

    • Concat

    • Eltwise (только сумма)

    • Softmax с потерей

    • Евклидова потеря

    • Сигмоидальный

    Если сеть содержит какой-либо другой тип слоя, то программное обеспечение возвращает ошибку.

    Функция импортирует только слои что protofile задает с ТЕСТОМ включать-фазы. Функция игнорирует любые слои что protofile задает с включать-фазой, ОБУЧАЮТСЯ.

Вопросы совместимости

развернуть все

Не рекомендуемый запуск в R2018b

Ссылки

[2] Зоопарк Модели Caffe. https://caffe.berkeleyvision.org/model_zoo.html.

Расширенные возможности

Введенный в R2017a

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