Импортируйте слои из сети Keras
импортирует слои сети TensorFlow™-Keras из файла модели. Функция возвращает слои, заданные в HDF5 (layers
= importKerasLayers(modelfile
).h5
) или JSON (.json
) файл, данный именем файла modelfile
.
Эта функция требует Средства импорта Deep Learning Toolbox™ для пакета поддержки Моделей TensorFlow-Keras. Если этот пакет поддержки не установлен, то функция обеспечивает ссылку на загрузку.
импортирует слои из сети TensorFlow-Keras с дополнительными опциями, заданными одним или несколькими аргументами пары "имя-значение".layers
= importKerasLayers(modelfile
,Name,Value
)
Например, importKerasLayers(modelfile,'ImportWeights',true)
импортирует слоя сети и веса из файла модели modelfile
.
importKerasLayers
поддерживает следующие типы слоя Keras, с некоторыми ограничениями. Если сеть содержит какой-либо другой тип слоя, то программное обеспечение вставляет слой заполнителя вместо неподдерживаемого слоя. Чтобы найти имена и индексы неподдерживаемых слоев в сети, используйте findPlaceholderLayers
функция. Затем можно заменить слой заполнителя на новый слой, который вы задаете. Чтобы заменить слой, использовать replaceLayer
.
Поддерживаемый слой Keras | Соответствующий слой Deep Learning Toolbox |
---|---|
Add | additionLayer |
| Слои: |
Усовершенствованные активации:
| Слои:
|
AveragePooling2D | averagePooling2dLayer |
BatchNormalization | batchNormalizationLayer |
Bidirectional(LSTM(__)) | bilstmLayer |
Concatenate | depthConcatenationLayer |
Conv2D | convolution2dLayer |
Conv2DTranspose | transposedConv2dLayer |
CuDNNLSTM | lstmLayer |
Dense | fullyConnectedLayer |
DepthwiseConv2D | groupedConvolution2dLayer |
Dropout | dropoutLayer |
Embedding | wordEmbeddingLayer (Text Analytics Toolbox) |
Flatten | nnet.keras.layer.FlattenCStyleLayer |
GlobalAveragePooling2D | globalAveragePooling2dLayer |
GlobalMaxPooling2D | globalMaxPooling2dLayer |
GRU | gruLayer |
Input | imageInputLayer |
LSTM | lstmLayer |
MaxPooling2D | maxPooling2dLayer |
Multiply | multiplicationLayer |
SeparableConv2D | groupedConvolution2dLayer или convolution2dLayer |
UpSampling2D | resize2dLayer (Image Processing Toolbox) |
UpSampling3D | resize3dLayer (Image Processing Toolbox) |
ZeroPadding2D | nnet.keras.layer.ZeroPadding2DLayer |
*Для слоя PReLU, importKerasLayers
заменяет масштабный коэффициент с векторным знаком на среднее значение векторных элементов. Можно возвратить параметр к вектору после импорта. Для примера смотрите Импорт Слой Keras PReLU.
Можно заменить слой заполнителя на новый слой, который вы задаете.
Если сеть является серийной сетью, то замените слой в массиве непосредственно. Например, layer(2) = newlayer;
.
Если сеть является сетью DAG, то замените использование слоя replaceLayer
. Для примера смотрите, Собирают Сеть от Предварительно обученных Слоев Keras.
importKerasLayers
поддерживает следующие функции потерь Keras:
mean_squared_error
categorical_crossentropy
sparse_categorical_crossentropy
binary_crossentropy
Можно импортировать сеть Keras с несколькими входными параметрами и несколькими выходными параметрами (MIMO). Использование importKerasNetwork
если сеть включает входную информацию о размере для входных параметров и информацию о потере для выходных параметров. В противном случае использовать importKerasLayers
. importKerasLayers
функция вставляет слои заполнителя для вводов и выводов. После импорта можно найти и заменить слои заполнителя при помощи findPlaceholderLayers
и replaceLayer
, соответственно. Рабочий процесс для импорта сетей MIMO Keras совпадает с рабочим процессом для импорта сетей MIMO ONNX™. Для примера смотрите Импорт Сеть ONNX с Несколькими Выходными параметрами. Чтобы узнать о нейронной сети для глубокого обучения с несколькими входными параметрами и несколькими выходными параметрами, смотрите Несколько - Вход и Несколько - Выходные Сети.
Чтобы использовать предварительно обученную сеть для предсказания или передачи обучения на новых изображениях, необходимо предварительно обработать изображения таким же образом, как изображения, используемые, чтобы обучить импортированную модель, были предварительно обработаны. Изменение размеров изображений, вычитание среднего изображения и преобразование изображений от RGB до формата BGR являются наиболее распространенными операциями предварительной обработки.
Для получения дополнительной информации о предварительной обработке изображений для обучения и предсказания, смотрите, Предварительно обрабатывают Изображения для Глубокого обучения.
[1] Keras: библиотека Python Deep Learning. https://keras.io.
assembleNetwork
| exportONNXNetwork
| findPlaceholderLayers
| importCaffeLayers
| importCaffeNetwork
| importKerasNetwork
| importONNXLayers
| importONNXNetwork
| replaceLayer