MATLAB® Coder™ поддерживает генерацию кода для ряда, направленного графа без петель (DAG) и текущих сверточных нейронных сетей (CNNs или ConvNets). Можно сгенерировать код для любой обученной сверточной нейронной сети, слои которой поддерживаются для генерации кода. Смотрите Поддерживаемые Слои.
Следующие предварительно обученные сети, доступные в Deep Learning Toolbox™, поддерживаются для генерации кода.
Сетевое имя | Описание | Библиотека ARM® Compute | Intel® MKL-DNN |
---|---|---|---|
AlexNet | Сверточная нейронная сеть AlexNet. Для предварительно обученной модели AlexNet смотрите | Да | Да |
DarkNet | Даркнет 19 и сверточные нейронные сети DarkNet-53. Для предварительно обученных моделей DarkNet смотрите darknet19 (Deep Learning Toolbox) и darknet53 (Deep Learning Toolbox). | Да | Да |
DenseNet-201 | Сверточная нейронная сеть DenseNet-201. Для предварительно обученной модели DenseNet-201 смотрите | Да | Да |
EfficientNet-b0 | Сверточная нейронная сеть EfficientNet-b0. Для предварительно обученной модели EfficientNet-b0 смотрите | Да | Да |
GoogLeNet | Сверточная нейронная сеть GoogLeNet. Для предварительно обученной модели GoogLeNet смотрите | Да | Да |
Inception-ResNet-v2 | Сверточная нейронная сеть Inception-ResNet-v2. Для предварительно обученной модели Inception-ResNet-v2 смотрите | Да | Да |
Inception-v3 | Сверточная нейронная сеть Inception-v3. Для предварительно обученной модели Inception-v3 смотрите inceptionv3 (Deep Learning Toolbox). | Да | Да |
MobileNet-v2 | Сверточная нейронная сеть MobileNet-v2. Для предварительно обученной модели MobileNet-v2 смотрите | Да | Да |
NASNet-Large | NASNet-большая сверточная нейронная сеть. Для предварительно обученной NASNet-большой-модели смотрите | Да | Да |
NASNet-Mobile | NASNet-мобильная сверточная нейронная сеть. Для предварительно обученной модели NASNet-Mobile смотрите | Да | Да |
ResNet | ResNet-18, ResNet-50 и сверточные нейронные сети ResNet-101. Для предварительно обученных моделей ResNet смотрите | Да | Да |
SegNet | Мультикласс pixelwise сеть сегментации. Для получения дополнительной информации смотрите | Нет | Да |
SqueezeNet | Маленький, глубокая нейронная сеть. Для предварительно обученных моделей SqeezeNet смотрите | Да | Да |
VGG-16 | Сверточная нейронная сеть VGG-16. Для предварительно обученной модели VGG-16 смотрите | Да | Да |
VGG-19 | Сверточная нейронная сеть VGG-19. Для предварительно обученной модели VGG-19 смотрите | Да | Да |
Xception | Сверточная нейронная сеть Xception. Для предварительно обученной модели Xception смотрите | Да | Да |
Следующие слои поддерживаются для генерации кода MATLAB Coder для целевых библиотек глубокого обучения, заданных в таблице.
Если вы устанавливаете Интерфейс MATLAB Coder пакета поддержки для Библиотек Глубокого обучения, можно использовать coder.getDeepLearningLayers
видеть список слоев, поддержанных для определенной библиотеки глубокого обучения. Например:
coder.getDeepLearningLayers('mkldnn')
Имя слоя | Описание | ARM вычисляет библиотеку | Intel MKL-DNN | Типовой C/C++ |
---|---|---|---|---|
additionLayer (Deep Learning Toolbox) | Слой Addition | Да | Да | Да |
anchorBoxLayer (Computer Vision Toolbox) | Слой поля привязки | Да | Да | Нет |
averagePooling2dLayer (Deep Learning Toolbox) | Средний слой объединения | Да | Да | Нет |
batchNormalizationLayer (Deep Learning Toolbox) | Слой нормализации партии. | Да | Да | Нет |
bilstmLayer (Deep Learning Toolbox) | Двунаправленный слой LSTM | Да | Да | Да |
classificationLayer (Deep Learning Toolbox) | Создайте классификацию выходной слой | Да | Да | Да |
clippedReluLayer (Deep Learning Toolbox) | Отсеченный слой Rectified Linear Unit (ReLU) | Да | Да | Нет |
concatenationLayer (Deep Learning Toolbox) | Слой Concatenation | Да | Да | Нет |
convolution2dLayer (Deep Learning Toolbox) | 2D слой свертки
| Да | Да | Нет |
crop2dLayer (Deep Learning Toolbox) | Слой, который применяет 2D обрезку к входу | Да | Да | Нет |
CrossChannelNormalizationLayer (Deep Learning Toolbox) | Мудрый каналом локальный слой нормализации ответа | Да | Да | Нет |
Пользовательские слои | Пользовательские слои, с или без настраиваемых параметров, которые вы задаете для своей проблемы. См.:
Выходные параметры пользовательского слоя должны быть массивами фиксированного размера. Пользовательские слои в сетях последовательности не поддерживаются для генерации кода. Для генерации кода пользовательские слои должны содержать | Да | Да | Да |
Пользовательские выходные слои | Все выходные слои включая пользовательскую классификацию или регрессию выводят слои, созданные при помощи Для примера, показывающего, как задать пользовательскую классификацию выходной слой и задать функцию потерь, смотрите, Задают Пользовательскую Классификацию Выходной Слой (Deep Learning Toolbox). Для примера, показывающего, как задать пользовательскую регрессию выходной слой и задать функцию потерь, смотрите, Задают Пользовательскую Регрессию Выходной Слой (Deep Learning Toolbox). | Да | Да | Да |
depthConcatenationLayer (Deep Learning Toolbox) | Слой конкатенации глубины | Да | Да | Нет |
depthToSpace2dLayer (Image Processing Toolbox) | 2D глубина, чтобы расположить слой с интервалами | Да | Да | Да |
dicePixelClassificationLayer (Computer Vision Toolbox) | Слой классификации пикселей Dice обеспечивает категориальную метку для каждого пикселя изображения, или воксель с помощью обобщил Dice Loss. | Да | Да | Нет |
dropoutLayer (Deep Learning Toolbox) | Слой Dropout | Да | Да | Да |
eluLayer (Deep Learning Toolbox) | Слой Exponential linear unit (ELU) | Да | Да | Нет |
featureInputLayer (Deep Learning Toolbox) | Свойства входного слоя | Да | Да | Да |
flattenLayer (Deep Learning Toolbox) | Слой Flatten | Да | Да | Нет |
focalLossLayer (Computer Vision Toolbox) | Фокальный слой потерь предсказывает классы объектов с помощью фокальной потери. | Да | Да | Нет |
fullyConnectedLayer (Deep Learning Toolbox) | Полносвязный слой | Да | Да | Да |
globalAveragePooling2dLayer (Deep Learning Toolbox) | Глобальный средний слой объединения для пространственных данных | Да | Да | Нет |
globalMaxPooling2dLayer (Deep Learning Toolbox) | 2D глобальная переменная макс. объединение слоя | Да | Да | Нет |
| 2D сгруппированный сверточный слой
| Да
| Да | Нет |
| Слой Gated recurrent unit (GRU) | Да | Да | Да |
imageInputLayer (Deep Learning Toolbox) | Отобразите входной слой
| Да | Да | Да |
leakyReluLayer (Deep Learning Toolbox) | "Слой ""с утечкой"" Rectified Linear Unit (ReLU)" | Да | Да | Нет |
lstmLayer (Deep Learning Toolbox) | Слой Long short-term memory (LSTM) | Да | Да | Да |
maxPooling2dLayer (Deep Learning Toolbox) | Слой объединения Max | Да | Да | Нет |
maxUnpooling2dLayer (Deep Learning Toolbox) | Слой необъединения Max | Нет | Да | Нет |
multiplicationLayer (Deep Learning Toolbox) | Слой Multiplication | Да | Да | Да |
pixelClassificationLayer (Computer Vision Toolbox) | Создайте слой классификации пикселей для семантической сегментации | Да | Да | Нет |
rcnnBoxRegressionLayer (Computer Vision Toolbox) | Слой регрессии поля для Быстрого и Faster R-CNN | Да | Да | Нет |
rpnClassificationLayer (Computer Vision Toolbox) | Слой Classification для сетей предложения по области (RPNs) | Да | Да | Нет |
regressionLayer (Deep Learning Toolbox) | Создайте регрессию выходной слой | Да | Да | Да |
reluLayer (Deep Learning Toolbox) | Слой Rectified Linear Unit (ReLU) | Да | Да | Да |
resize2dLayer (Image Processing Toolbox) | 2D изменяют размер слоя | Да | Да | Да |
scalingLayer (Reinforcement Learning Toolbox) | Слой Scaling для агента или сети критика | Да | Да | Нет |
sigmoidLayer (Deep Learning Toolbox) | Сигмоидальный слой | Да | Да | Да |
sequenceFoldingLayer (Deep Learning Toolbox) | Слой сворачивания последовательности | Да | Да | Нет |
sequenceInputLayer (Deep Learning Toolbox) | Последовательность ввела слой
| Да | Да | Да |
sequenceUnfoldingLayer (Deep Learning Toolbox) | Слой разворачивания последовательности | Да | Да | Нет |
softmaxLayer (Deep Learning Toolbox) | Слой Softmax | Да | Да | Да |
softplusLayer (Reinforcement Learning Toolbox) | Слой Softplus для агента или сети критика | Да | Да | Да |
spaceToDepthLayer (Image Processing Toolbox) | Пробел к слою глубины | Да | Да | Нет |
ssdMergeLayer (Computer Vision Toolbox) | Слой слияния SSD для обнаружения объектов | Да | Да | Нет |
| Сглаживает активации в 1D C-стиль принятия (упорядоченный по строкам) порядок | Да | Да | Нет |
nnet.keras.layer.GlobalAveragePooling2dLayer | Глобальный средний слой объединения для пространственных данных | Да | Да | Нет |
| Сигмоидальный слой активации | Да | Да | Нет |
| Гиперболический слой активации касательной | Да | Да | Нет |
| Нулевой дополнительный слой для 2D входа | Да | Да | Нет |
nnet.onnx.layer.ElementwiseAffineLayer | Слой, который выполняет поэлементное масштабирование входа, сопровождаемого сложением | Да | Да | Нет |
| Сгладьте слой для сети ONNX™ | Да | Да | Нет |
| Слой, который реализует единичный оператор ONNX | Да | Да | Нет |
| Гиперболическая касательная (tanh) слой | Да | Да | Да |
| Транспонированный 2D слой свертки Генерация кода не поддерживает асимметричную обрезку входа. Например, задавая векторный | Да | Да | Нет |
| Слой встраивания слова сопоставляет словари с векторами | Да | Да | Нет |
| Выведите слой для сети обнаружения объектов YOLO v2 | Да | Да | Нет |
| Слой Reorganization для сети обнаружения объектов YOLO v2 | Да | Да | Нет |
| Преобразуйте слой для сети обнаружения объектов YOLO v2 | Да | Да | Нет |
Класс | Описание | ARM вычисляет библиотеку | Intel MKL-DNN | Типовой C/C++ |
---|---|---|---|---|
DAGNetwork (Deep Learning Toolbox) | Сеть Directed acyclic graph (DAG) для глубокого обучения
| Да | Да | Да |
dlnetwork (Deep Learning Toolbox) | Нейронная сеть для глубокого обучения для пользовательских учебных циклов
| Да | Да | Нет |
SeriesNetwork (Deep Learning Toolbox) | Сеть Series для глубокого обучения
| Да | Да | Да |
|
| Да | Да | Нет |
ssdObjectDetector (Computer Vision Toolbox) | Объект обнаружить объекты с помощью основанного на SSD детектора.
| Да | Да | Нет |