本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

深度学习导入、导出和自定义

导入和导出网络,定义自定义深度学习层,以及自定义数据存储

从 TensorFlow™-Keras、Caffe 和 ONNX™(开放式神经网络交换)模型格式导入网络和网络架构。您还可以将经过训练的 Deep Learning Toolbox™ 网络导出为 ONNX 模型格式。

您可以针对您的问题定义自己的自定义深度学习层。您可以定义带或不带可学习参数的自定义输出层和自定义层。例如,您可以将具有加权交叉熵损失的自定义加权分类层用于类分布不平衡的分类问题。您可以检查层的有效性、GPU 兼容性和正确定义的梯度。

对于无法放入内存的数据,您可以创建和自定义数据存储,对数据进行预处理,以便训练深度学习网络。

函数

全部展开

importKerasNetworkImport a pretrained Keras network and weights
importKerasLayersImport layers from Keras network
importCaffeNetworkImport pretrained convolutional neural network models from Caffe
importCaffeLayersImport convolutional neural network layers from Caffe
importONNXNetworkImport pretrained ONNX network
importONNXLayersImport layers from ONNX network
exportONNXNetworkExport network to ONNX model format
findPlaceholderLayersFind placeholder layers in network architecture imported from Keras or ONNX
replaceLayerReplace layer in layer graph
assembleNetworkAssemble deep learning network from pretrained layers
PlaceholderLayerLayer replacing an unsupported Keras layer, ONNX layer, or unsupported functionality from functionToLayerGraph
setLearnRateFactorSet learn rate factor of layer learnable parameter
setL2FactorSet L2 regularization factor of layer learnable parameter
getLearnRateFactorGet learn rate factor of layer learnable parameter
getL2FactorGet L2 regularization factor of layer learnable parameter
checkLayerCheck validity of custom layer
matlab.io.datastore.MiniBatchableAdd mini-batch support to datastore

主题

自定义层

Define Custom Deep Learning Layers

Learn how to define custom deep learning layers

Check Custom Layer Validity

Learn how to check the validity of custom deep learning layers.

Define Custom Deep Learning Layer with Learnable Parameters

This example shows how to define a PReLU layer and use it in a convolutional neural network.

Define Custom Deep Learning Layer with Multiple Inputs

This example shows how to define a custom weighted addition layer and use it in a convolutional neural network.

Define Custom Classification Output Layer

This example shows how to define a custom classification output layer with sum of squares error (SSE) loss and use it in a convolutional neural network.

Define Custom Weighted Classification Layer

This example shows how to define and create a custom weighted classification output layer with weighted cross entropy loss.

Define Custom Regression Output Layer

This example shows how to define a custom regression output layer with mean absolute error (MAE) loss and use it in a convolutional neural network.

数据存储自定义

Datastores for Deep Learning

Learn how to use datastores in deep learning applications.

为图像到图像的回归准备数据存储

此示例说明如何准备数据存储,以便使用 ImageDatastoretransformcombine 函数来训练图像到图像的回归网络。

使用无法放入内存的序列数据训练网络

此示例说明如何通过转换和合并数据存储基于无法放入内存的序列数据来训练深度学习网络。

使用卷积神经网络对文本数据进行分类

此示例说明如何使用卷积神经网络对文本数据进行分类。

使用深度学习对无法放入内存的文本数据进行分类

此示例说明在深度学习网络中,如何使用转换后的数据存储对无法放入内存的文本数据进行分类。

网络训练与整合

Deep Learning Tips and Tricks

Learn how to improve the accuracy of deep learning networks.

指定自定义权重初始化函数

此示例说明如何为后跟泄漏 ReLU 层的卷积层创建自定义 He 权重初始化函数。

基于预训练的 Keras 层组合网络

此示例说明如何从预训练的 Keras 网络中导入层、用自定义层替换不支持的层,以及将各层组合成可以进行预测的网络。

自定义深度学习网络训练期间的输出

此示例说明如何定义在深度学习神经网络训练期间的每次迭代都运行的输出函数。如果您使用 trainingOptions'OutputFcn' 名称-值对组参数指定输出函数,则 trainNetwork 将分别在训练开始前、每次训练迭代后以及训练结束后各调用这些函数一次。每次调用输出函数时,trainNetwork 都会传递一个包含当前迭代编号、损失和准确度等信息的结构体。您可以使用输出函数显示或绘制进度信息,或者停止训练。要提前停止训练,请让输出函数返回 true。如果任何输出函数返回 true,则训练结束,并且 trainNetwork 返回最新网络。

特色示例