dlarray
R2026b用于自定义的深度学习数组
描述
深度学习数组使用可选的数据格式标签存储数据,以用于自定义训练循环,并通过自动微分使函数能够计算和使用导数。
提示
对于大多数深度学习任务,您可以使用预训练神经网络,并使其适应您自己的数据。有关说明如何使用迁移学习来重新训练卷积神经网络以对一组新图像进行分类的示例,请参阅重新训练神经网络以对新图像进行分类。您也可以使用 trainnet 和 trainingOptions 函数从头创建和训练神经网络。
如果 trainingOptions 函数没有提供您的任务所需的训练选项,则您可以使用自动微分创建自定义训练循环。要了解详细信息,请参阅使用自定义训练循环训练网络。
如果 trainnet 函数没有提供您的任务所需的损失函数,您可以将 trainnet 的自定义损失函数指定为函数句柄。对于需要比预测值和目标值更多输入的损失函数(例如,需要访问神经网络或额外输入的损失函数),请使用自定义训练循环来训练模型。要了解详细信息,请参阅使用自定义训练循环训练网络。
如果 Deep Learning Toolbox™ 没有提供您的任务所需的层,则您可以创建一个自定义层。要了解详细信息,请参阅定义自定义深度学习层。对于无法指定为由层组成的网络的模型,可以将模型定义为函数。要了解详细信息,请参阅Train Network Using Model Function。
有关对哪项任务使用哪种训练方法的详细信息,请参阅Train Deep Learning Model in MATLAB。
创建对象
描述
输入参量
输出参量
对象函数
dims | dlarray 对象的数据格式 |
dlgradient | 使用自动微分计算自定义训练循环的梯度 |
extractdata | 从 dlarray 对象提取数据 |
finddim | Find dimensions with specified label |
stripdims | 去除 dlarray 数据格式 |
dlarray 还允许执行数值、矩阵和其他运算的函数。请参阅List of Functions with dlarray Support中的完整列表。
示例
详细信息
提示
dlgradient调用必须在函数内部。要获取梯度的数值,您必须使用dlfeval计算函数,并且函数的参量必须是dlarray。请参阅Use Automatic Differentiation In Deep Learning Toolbox。为了能够正确计算梯度,
dlfeval调用的函数必须仅使用dlarray支持的函数。请参阅List of Functions with dlarray Support。