importCaffeNetwork

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

Описание

пример

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

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

Предварительно обученные сети можно загрузить из Caffe Model Zoo [2].

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

Примеры

свернуть все

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

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

importCaffeNetwork

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

Укажите файлы для импорта.

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

Импорт сети.

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

         Layers: [7×1 nnet.cnn.layer.Layer]
     InputNames: {'testdata'}
    OutputNames: {'ClassificationOutput'}

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

свернуть все

Имя файла .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 как входные.

Совет

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

расширить все

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

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

.
Введенный в R2017a