exponenta event banner

importCaffeNetwork

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

Описание

пример

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

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

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

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

Примеры

свернуть все

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

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

importCaffeNetwork

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

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

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

Ссылки

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

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

.
Представлен в R2017a