如果你创建一个自定义的深度学习层,那么你可以使用checkLayer
函数检查该层是否有效。该函数检查层的有效性、GPU兼容性、正确定义的梯度和代码生成兼容性。检查层是否有效,使用如下命令:
CheckLayer(图层,ValidInputSize)
层
是该层的一个实例,validInputSize.
指定层的有效输入大小的向量或单元格数组。要用多重观察进行检查,请使用ObservationDimension
选择。要检查代码生成兼容性,请设置CheckCodegenCompatibility
选项1
(真正的)。对于较大的输入,梯度检查需要更长的时间来运行。要加快测试速度,请指定较小的有效输入大小。
检查示例自定义层的有效性preluLayer
.
自定义图层preluLayer
附加到这是作为支持文件的示例,将PRELU操作应用于输入数据。万博1manbetx要访问此图层,请将此示例打开为实时脚本。
创建一个层的实例,并检查它是否有效使用checkLayer
.将有效的输入大小设置为层中单个观测输入的典型大小。对于单个输入,层期望观察大小H——- - - - - -W.——- - - - - -C,在那里H那W.,C分别为上一层输出的高度、宽度和通道数。
具体说明validInputSize.
为输入数组的典型大小。
层=预铺层(20);validInputSize=[5 20];checkLayer(层,validInputSize)
跳过多观察测试。要启用具有多个观察值的测试,请指定“ObservationDimension”选项。对于二维图像数据,将“ObservationDimension”设置为4。对于三维图像数据,将“ObservationDimension”设置为5。对于序列数据,将“ObservationDimension”设置为2。跳过GPU测试。找不到兼容的GPU设备。跳过代码生成兼容性测试。要检查代码生成层的有效性,请指定“CheckCodegenCompatibility”和“ObservationDimension”选项。正在运行nnet.checklayer.TestLayerWithoutBackward。。完成nnet.checklayer.TestLayerWithoutBackward测试摘要:12通过,0失败,0不完整,16跳过。所用时间:0.18741秒。
结果显示通过、失败和跳过测试的数量。如果不指定ObservationsDimension
选项,或者没有GPU,然后函数跳过相应的测试。
检查多个观测
对于多观测输入,该层期望一个大小的观测数组H——- - - - - -W.——- - - - - -C——- - - - - -N,在那里H那W.,C通道的高度、宽度和数量分别是和吗N为观察次数。
若要检查多层观察的有效性,请指定观察的典型大小并设置ObservationDimension
选项4。
层=预铺层(20);validInputSize=[5 20];检查层(层,有效输入大小,观测维度=4)
跳过GPU测试。找不到兼容的GPU设备。跳过代码生成兼容性测试。要检查代码生成图层的有效性,请指定“CheckCodeGencompatibility”和“观察Dimension”选项。运行nnet.Checklayer.TestLayerWithoutBound .......... Done Nnet.Checklayer.TestLayerWithoutBackward __________测试摘要:18通过,0失败,0不完整,10跳。经过时间:0.19972秒。
在这种情况下,该函数不会检测到该层的任何问题。
这checkLayer
函数通过执行一系列测试来检查自定义层的有效性。
这checkLayer
函数使用这些测试检查自定义中间层(类型为nnet.layer.Layer
).
测试 | 描述 |
---|---|
functionSyntaxesAreCorrect |
层函数的语法定义正确。 |
predictDoesNotError |
预测 函数没有错误。 |
forwardDoesNotError |
当指定时, |
forwardPredictAreConsistentInSize |
当 |
落后并不可怕 |
指定时,落后的 没有错误。 |
backwardIsConsistentInSize |
当
|
PredictisConsistentType |
的输出 |
forwardIsConsistentInType |
当 |
反向索考虑因素intype. |
当 |
gradientsAreNumericallyCorrect |
当落后的 ,则在落后的 与数值梯度一致。 |
backwardPropagationDoesNotError |
当落后的 若未指定,则可使用自动微分计算导数。 |
predictReturnsValidStates |
对于具有状态属性的层预测 函数返回有效状态。 |
forwardReturnsValidStates |
对于具有状态属性的层向前 函数,如果指定,返回有效状态。 |
resetStateDoesNotError |
对于具有状态属性的层resetState 函数(如果指定)不会出错并将状态重置为有效状态。 |
代码genpragmadefinedinclassdef |
的编译指示“% # codegen” 用于代码生成在类文件中指定。 |
checkFor万博1manbetxSupportedLayerPropertiesForCodegen |
图层特性支持代码生成。万博1manbetx |
predictIsValidForCodeGeneration |
预测 对代码生成有效。 |
doesNotHaveStateProperties |
对于代码生成,该层没有状态属性。 |
万博1manbetxsupportedFunctionLayer |
对于代码生成,层不是FunctionLayer 对象。 |
有些测试会运行多次。这些测试还检查不同的数据类型和GPU兼容性:
PredictisConsistentType
forwardIsConsistentInType
反向索考虑因素intype.
要在GPU上执行层函数,函数必须支持类型为的输入和输出万博1manbetxgpuArray
使用底层数据类型仅有一个的
.
这checkLayer
函数使用这些测试检查自定义输出层(类型为nnet.layer.ClassificationLayer
或nnet.layer.regressionLayer.regressionLayer.
).
测试 | 描述 |
---|---|
forwardlossdoesnoterror. |
forwardLoss 没有错误。 |
backwardLossDoesNotError |
backwardLoss 没有错误。 |
forwardlossiscalar. |
输出forwardLoss 是标量。 |
backwardLossIsConsistentInSize |
当backwardLoss 时,输出backwardLoss 尺寸一致:dLdY 和预测的大小一样吗y . |
正向损失一致性类型 |
输出 |
Backwardlossisconsistentintype. |
当 |
gradientsAreNumericallyCorrect |
当backwardLoss ,则在backwardLoss 数字是正确的。 |
backwardPropagationDoesNotError |
当backwardLoss 若未指定,则可使用自动微分计算导数。 |
这正向损失一致性类型
和Backwardlossisconsistentintype.
测试还检查GPU兼容性。要在GPU上执行层函数,函数必须支持类型为的输入和输出万博1manbetxgpuArray
使用底层数据类型仅有一个的
.
要检查层有效性,请使用checkLayer
函数根据图层类型生成数据:
层类型 | 生成数据描述 |
---|---|
中间 | 取值范围[-1,1] |
回归输出 | 在范围内值的预测和目标[-1,1] |
分类输出 | 预测值在[0,1]范围内。 如果指定 如果不指定 |
要检查多个观测值,请使用ObservationDimension
选项如果指定了观测标注,则checkLayer
函数使用大小为1和2的小批量生成的数据检查图层函数是否有效。如果未指定此名称-值对,则函数将跳过检查图层函数是否对多个观测有效的测试。
如果使用时测试失败checkLayer
,该函数提供测试诊断和框架诊断。测试诊断突出显示使用该图层的任何问题。框架诊断提供了更详细的信息。
考试functionSyntaxesAreCorrect
检查层函数是否有正确定义的语法。
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
图层中“predict”的输入参数数量不正确 . |
的语法预测 函数与层输入的数量不一致。 |
在中指定正确数量的输入和输出参数 这
您可以调整具有多个输入、多个输出或多个状态参数的层的语法:
提示 如果输入层的数量可以变化,那么使用 如果输出的数量可以变化,则使用 提示 如果自定义层有 |
层中“predict”的输出参数数量不正确 |
的语法预测 函数与输出的层数不一致。 |
|
层中“forward”的输入参数数量不正确 |
可选的语法向前 函数与层输入的数量不一致。 |
在中指定正确数量的输入和输出参数 这
您可以调整具有多个输入、多个输出或多个状态参数的层的语法:
提示 如果输入层的数量可以变化,那么使用 如果输出的数量可以变化,则使用 提示 如果自定义层有 |
层中“forward”的输出参数数量不正确 |
可选的语法向前 函数与输出的层数不一致。 |
|
图层中“向后”的输入参数数量不正确 |
可选的语法落后的 功能与层输入和输出的数量不一致。 |
在中指定正确数量的输入和输出参数 这
您可以调整具有多个输入、多个输出、多个可学习参数或多个状态参数的层的语法:
为了防止在前向传递和后向传递之间保存未使用的变量,从而减少内存使用,可以将相应的输入参数替换为 提示 如果输入的数量 如果输出的数量可以变化,则使用 提示 如果层转发功能支持万博1manbetx |
图层中“向后”的输出参数数量不正确 |
可选的语法落后的 函数与输出的层数不一致。 |
对于具有多个输入或输出的层,必须设置层属性的值NumInputs
(或或者,InputNames
),NumOutputs
(或或者,OutputNames
)在层构造函数中。
这checkLayer
函数检查层函数是否对单个和多个观测有效。要检查多个观测值,请使用ObservationDimension
选项如果指定了观测标注,则checkLayer
函数使用大小为1和2的小批量生成的数据检查图层函数是否有效。如果未指定此名称-值对,则函数将跳过检查图层函数是否对多个观测有效的测试。
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
跳过multi-observation测试。要启用带有多个观察的检查,请在checkLayer中指定'ObservationDimension'参数 . |
如果不指定“ObservationDimension” 参数in.checkLayer ,则该函数跳过使用多个观察值检查数据的测试。 |
使用命令 有关更多信息,请参见层输入大小. |
这些测试检查在传递有效大小的输入数据时,各层不会出错。
中间层次。测试predictDoesNotError
那forwardDoesNotError
,落后并不可怕
检查层函数在传递有效大小的输入时不会出错。如果您指定了一个观察维度,那么该函数将同时检查该层的单个观察和多个观察。
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
函数“predict”抛出了一个错误: |
这预测 当传递大小数据时,函数错误validInputSize. . |
解决中描述的错误 提示 如果层转发功能支持万博1manbetx |
“转发”函数抛出错误: |
可选的向前 当传递大小数据时,函数错误validInputSize. . |
|
函数“backward”引发了一个错误: |
可选的落后的 函数错误时传递的输出预测 . |
输出图层。测试forwardlossdoesnoterror.
和backwardLossDoesNotError
检查层函数在传递有效大小的输入时不会出错。如果您指定了一个观察维度,那么该函数将同时检查该层的单个观察和多个观察。
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
函数'forwardLoss'抛出一个错误: |
这forwardLoss 当传递大小数据时,函数错误validInputSize. . |
解决中描述的错误 提示 如果 |
函数'backwardLoss'抛出一个错误: |
可选的backwardLoss 当传递大小数据时,函数错误validInputSize. . |
这些测试检查图层功能输出的大小是否一致。
中间层次。考试backwardIsConsistentInSize
检查这一点落后的
函数输出正确大小的导数。
这落后的
函数语法取决于图层的类型。
dLdX =向后(层,X, Z, dLdZ,内存)
返回衍生品dLdX
相对于层输入的损耗,其中层
只有一个输入和一个输出。Z.
对应于正向功能输出和dLdZ
对应于损失对的导数Z.
.函数的输入记忆力
对应于前进功能的存储器输出。
[dLdX, dLdW] =向后(层,X, Z, dLdZ,内存)
也返回导数dLdW
关于学习参数的损失,在哪里层
只有一个可学习的参数。
[dLdX, dLdSin] =向后(层,X, Z, dLdZ dLdSout,内存)
也返回导数dLdSin
与使用任何前面语法的状态输入相关的损失层
有一个状态参数和DLDSout.
对应于损耗相对于层状态输出的导数。
[DLDX,DLDW,DLDSIN] =向后(图层,x,z,dldz,dldsout,内存)
也返回导数dLdW
对可学习参数的损失,并返回导数dLdSin
使用以前的任何语法,在哪里相对于图层状态输入的损失层
具有单个状态参数和单个可学习参数。
您可以调整具有多个输入、多个输出、多个可学习参数或多个状态参数的层的语法:
对于有多个输入的层,替换X
和dLdX
与X1,…,XN
和dLdX1,…,dLdXN
分别在哪里N
是输入的数量。
对于具有多个输出的图层,请替换Z.
和dLdZ
与Z1,…,ZM评选
和dLdZ1,…,dLdZM
分别在哪里m
为输出数。
对于具有多个可学习参数的图层,请替换dLdW
与dLdW1,…,dLdWP
,在那里P.
是可学习参数的数目。
对于具有多个状态参数的层,替换dLdSin
和DLDSout.
与dldsin1,...,dldsink
和dLdSout1,…,dLdSoutK
分别在哪里K.
是状态参数的数量。
为了防止在前向传递和后向传递之间保存未使用的变量,从而减少内存使用,可以将相应的输入参数替换为〜
.
提示
如果输入的数量落后的
可以变化,然后使用瓦拉金
而不是后面的输入参数层
.在这种情况下,瓦拉金
一个单元格数组的输入,第一个在哪里N
元素对应于N
层输入,下一个m
元素对应于m
图层输出,下一个m
元素对应于相对于损失的衍生物m
图层输出,下一个K.
元素对应于K.
损失对的导数K.
状态输出,最后一个元素对应于记忆力
.
如果输出的数量可以变化,则使用varargout
而不是输出参数。在这种情况下,varargout
是一个单元格数组的输出,哪里是第一个N
元素对应于N
损失对的导数N
层输入,下一个P.
元素对应于相对于损失的衍生物P.
可学习参数,然后K.
元素对应于相对于损失的衍生物K.
状态输入。
衍生品dLdX1
、……dLdXn
必须与相应的层输入的大小相同,并且dLdW1,…,dLdWk
必须与相应的可学习参数相同大小。对于单次和多次观测的输入数据,其大小必须保持一致。
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
'dLdX'的大小不正确 . |
损失对层输入的导数必须与相应层输入的大小相同。 | 返回衍生品 |
对于“backward”,损失相对于“in1”的输入的导数大小不正确 |
||
从'forward'返回的'Z'大小必须与'predict'相同 . |
的输出预测 必须与相应的输出相同向前 . |
返回输出 |
“向后”损失相对于“W”的导数大小不正确 . |
损失对可学习参数的导数必须与相应的可学习参数的大小相同。 | 返回衍生品 |
提示
如果层转发功能支持万博1manbetxdlarray
对象,则软件会自动确定向后函数,而无需指定落后的
函数。获取支持的函数列表万博1manbetxdlarray
对象,看到支持dlarray的函数列表万博1manbetx.
输出图层。考试forwardlossiscalar.
检查forwardLoss
函数是标量。当backwardLoss
函数指定时,测试backwardLossIsConsistentInSize
检查的输出forwardLoss
和backwardLoss
尺寸正确。
的语法forwardLoss
是损失= forwardLoss(层,Y, T)
. 输入y
与电视台的预测相符。这些预测是前一层的输出。输入T.
对应于培训目标。输出损失
是两者之间的损失y
和T.
根据指定的损耗函数。输出损失
必须是标量。
如果forwardLoss
功能支持万博1manbetxdlarray
对象,然后软件自动确定向后损耗功能,您无需指定backwardLoss
函数。获取支持的函数列表万博1manbetxdlarray
对象,看到支持dlarray的函数列表万博1manbetx.
的语法backwardLoss
是DLDY = Backwardloss(图层,y,t)
. 输入y
包含了电视台和T.
包含培训目标。输出dLdY
损失相对于预测的导数是多少y
.输出dLdY
必须与图层输入相同y
.
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
“远期损失”的“损失”大小不正确 . |
输出损失 的forwardLoss 必须是标量。 |
返回的输出 |
损失'dLdY'衍生为'backwardLoss'的大小不正确 . |
当backwardLoss 时,损耗对层输入的导数必须与层输入的大小相同。 |
返回导数 如果 |
这些测试检查图层函数输出是否在类型中是一致的,并且该图层函数是GPU兼容的。
如果层转发功能完全支持万博1manbetxdlarray
对象,则该层是GPU兼容的。否则,为了与GPU兼容,层函数必须支持输入和返回输出类型万博1manbetxgpuArray
(并行计算工具箱).
许多MATLAB®内置功能支持万博1manbetxgpuArray
(并行计算工具箱)和dlarray
输入参数。获取支持的函数列表万博1manbetxdlarray
对象,看到支持dlarray的函数列表万博1manbetx.有关在GPU上执行的函数列表,请参见在GPU上运行MATLAB函数(并行计算工具箱).要使用GPU进行深度学习,您还必须具有支持的GPU设备。万博1manbetx有关支持设备的信息,请参阅万博1manbetxGPU支万博1manbetx持情况(并行计算工具箱).有关在MATLAB中使用gpu的更多信息,请参见MATLAB中的GPU计算(并行计算工具箱).
中间层次。测试PredictisConsistentType
那forwardIsConsistentInType
,反向索考虑因素intype.
检查该层函数输出的数据类型是否正确。测试检查给定数据类型输入时,层函数是否返回一致的数据类型仅有一个的
那双
,gpuArray
使用底层类型仅有一个的
或双
.
提示
如果使用函数预分配数组,例如Zeros.
,则必须确保这些数组的数据类型与层函数输入一致。要创建与另一个数组具有相同数据类型的零数组,请使用“喜欢”
选择Zeros.
.例如,初始化一个大小为零的数组深圳
使用与数组相同的数据类型X
,使用Z = 0(深圳,“喜欢”,X)
.
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
'predict'的'Z'错误类型 . |
输出的类型Z1,…,Zm评选 的预测 函数必须与输入保持一致X1,…,Xn . |
返回输出 |
'predict'的输出'out1'类型不正确 . |
||
'Z'类型不正确 . |
输出的类型Z1,…,Zm评选 任择议定书向前 函数必须与输入保持一致X1,…,Xn . |
|
'forward'输出'out1'类型错误 . |
||
'dLdX'的错误类型为'backward' . |
导数的类型dLdX1,…,dLdXn 任择议定书落后的 函数必须与输入保持一致X1,…,Xn . |
返回衍生品 |
与输入“in1”有关的“向后”损失导数类型不正确 . |
||
关于“倒向”的“W”损失导数的错误类型 . |
丢失学习参数的导数的类型必须与相应的学习参数一致。 | 对于每个学习参数,以与相应的Learnable参数相同的类型返回导数。 |
提示
如果层转发功能支持万博1manbetxdlarray
对象,则软件会自动确定向后函数,而无需指定落后的
函数。获取支持的函数列表万博1manbetxdlarray
对象,看到支持dlarray的函数列表万博1manbetx.
输出图层。测试正向损失一致性类型
和Backwardlossisconsistentintype.
检查该层函数输出的数据类型是否正确。当给定数据类型输入时,测试检查各层是否返回一致的数据类型仅有一个的
那双
,gpuArray
使用底层类型仅有一个的
或双
.
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
'forwardloss'的“丢失”类型不正确 . |
输出的类型损失 的forwardLoss 功能必须与输入一致y . |
返回 |
损失“dLdY”的衍生工具类型不正确,用于“反向损失” . |
输出的类型dLdY 任择议定书backwardLoss 功能必须与输入一致y . |
返回 |
提示
如果forwardLoss
功能支持万博1manbetxdlarray
对象,然后软件自动确定向后损耗功能,您无需指定backwardLoss
函数。获取支持的函数列表万博1manbetxdlarray
对象,看到支持dlarray的函数列表万博1manbetx.
考试gradientsAreNumericallyCorrect
检查由图层函数计算的渐变是否正确正确。考试backwardPropagationDoesNotError
检查衍生品是否可以使用自动微分来计算。
中间层次。当可选落后的
函数未指定,则测试backwardPropagationDoesNotError
检查衍生品是否可以使用自动微分来计算。当可选落后的
函数指定时,测试gradientsAreNumericallyCorrect
测试所计算梯度的测试落后的
数字是正确的。
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
期望一个没有尺寸标签的dlarray,但却发现了标签 . |
当可选落后的 函数未指定时,层转发函数必须输出dlarray 没有尺寸标签的对象。 |
确保任何方法dlarray 在图层前向功能中创建的对象不包含维标签。 |
无法通过图层反向传播。检查“向前”功能是否完全支持自动区分。万博1manbetx或者,手动实现'backward'函数 . |
以下一项或多项:
|
检查前进功能是否支持万博1manbetx 检查输入的衍生品 或者,通过创建名为 |
无法通过图层反向传播。检查“predict”功能是否完全支持自动区分。万博1manbetx或者,手动实现'backward'函数 . |
||
‘backward’的导数‘dLdX’与数值梯度不一致 . |
以下一项或多项:
|
如果层转发功能支持万博1manbetx 检查一下导数 如果衍生物被正确计算,那么 如果绝对误差和相对误差在可接受的公差范围内,则可以忽略此测试诊断。 |
对于“向后”,损失相对于输入“in1”的导数与数值梯度不一致 . |
||
“向后”的损失对“W”的导数与数值梯度不一致 . |
提示
如果层转发功能支持万博1manbetxdlarray
对象,则软件会自动确定向后函数,而无需指定落后的
函数。获取支持的函数列表万博1manbetxdlarray
对象,看到支持dlarray的函数列表万博1manbetx.
输出图层。当可选backwardLoss
函数未指定,则测试backwardPropagationDoesNotError
检查衍生品是否可以使用自动微分来计算。当可选backwardLoss
函数指定时,测试gradientsAreNumericallyCorrect
测试所计算梯度的测试backwardLoss
数字是正确的。
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
期望一个没有尺寸标签的dlarray,但却发现了标签 |
当可选backwardLoss 函数未指定,则forwardLoss 函数必须输出dlarray 没有尺寸标签的对象。 |
确保任何方法dlarray 中创建的forwardLoss 函数不包含维度标签。 |
无法通过图层反向传播。检查'ForwardLoss'功能是否完全支持自动差异化。万博1manbetx或者,手动实现“反向索数”函数 |
以下一项或多项:
|
检查这一点 检查输入的衍生品 或者,通过创建名为 |
“向后损失”的导数“dLdY”与数值梯度不一致 . |
以下一项或多项:
|
检查一下导数 如果衍生物被正确计算,那么 如果绝对误差和相对误差在可接受的公差范围内,则可以忽略此测试诊断。 |
提示
如果forwardLoss
功能支持万博1manbetxdlarray
对象,然后软件自动确定向后损耗功能,您无需指定backwardLoss
函数。获取支持的函数列表万博1manbetxdlarray
对象,看到支持dlarray的函数列表万博1manbetx.
对于具有状态属性的层,测试predictReturnsValidStates
检查predict函数是否返回有效状态。什么时候向前
被指定,测试forwardReturnsValidStates
检查forward函数是否返回有效状态。测试resetStateDoesNotError
检查这一点resetState
函数返回具有有效状态属性的图层。
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
在图层中使用“predict”出错。'State'必须是实值数字数组或未格式化的dlarray对象 . |
状态输出必须是实值数值数组或未格式化的dlarray 对象。 |
确保在框架诊断 是实值数字数组还是未格式化的数组dlarray 对象。 |
在图层中使用resetState错误。'State'必须是实值数字数组或未格式化的dlarray对象 |
返回图层的状态属性必须是实值数字阵列或未格式化的dlarray 对象。 |
如果你设定CheckCodegenCompatibility
选项1
(真正的),然后checkLayer
函数检查该层的代码生成兼容性。
考试代码genpragmadefinedinclassdef
检查层定义是否包含代码生成提示%#编码基因
.考试checkFor万博1manbetxSupportedLayerPropertiesForCodegen
检查层属性是否支持代码生成。万博1manbetx考试predictIsValidForCodegeneration
检查的输出预测
尺寸和批尺寸一致。
代码生成只支持带有二维图像或特征万博1manbetx输入的中间层。代码生成不支持带有状态属性的层(属性带属性)万博1manbetx状态
).
这checkLayer
功能不会检查图层使用的函数是否与代码生成兼容。要检查自定义层使用的函数还支持代码生成,首先使用万博1manbetx代码生成准备要了解更多信息,请参见使用代码生成准备工具检查代码(MATLAB编码器).
测试诊断 | 描述 | 可能的解决方案 |
---|---|---|
在自定义层的类定义中指定'%#codegen' |
层定义不包括pragma“% # codegen” 代码生成。 |
添加 |
非标量层属性必须为单或双类型或自定义层的字符数组类型 |
该层包含除单数组、双数组或字符数组以外类型的非标量特性。 | 将非标量属性转换为使用类型为单、双或字符数组的表示形式。 例如,将分类数组转换为类型的整数数组 |
对于自定义层,标量层属性必须为数字、逻辑或字符串 |
图层包含除数字、逻辑或字符串以外的类型的标量属性。 | 将标量属性转换为使用数字表示形式,或逻辑或字符串类型的表示形式。 例如,将分类标量转换为类型为的整数 |
对于代码生成,“Z”的维数必须与图层输入的维数相同 . |
输出的维数 |
在 |
对于代码生成,'Z'必须具有与层输入相同的批大小 . |
输出的批大小 |
在 |