MATLAB 帮助中心
本页翻译不是最新的。点击此处可查看最新英文版本。
展平层
展平层将输入的空间维度折叠成通道维度。
例如,如果层的输入是 H×W×C×N×S 数组(图像序列),则展平的输出是 (H*W*C)×N×S 数组。
layer = flattenLayer
layer = flattenLayer('Name',Name)
layer = flattenLayer 创建一个展平层。
layer
layer = flattenLayer('Name',Name) 使用名称-值对组设置可选的 Name 属性。例如,flattenLayer('Name','flatten1') 创建一个名为 'flatten1' 的展平层。
Name
flattenLayer('Name','flatten1')
'flatten1'
示例
全部展开
''
层名称,指定为字符向量或字符串标量。对于 Layer 数组输入,trainnet 和 dlnetwork 函数会自动为未命名层指定名称。
Layer
trainnet
dlnetwork
FlattenLayer 对象将此属性存储为字符向量。
FlattenLayer
数据类型: char | string
char
string
NumInputs
1
此 属性 为只读。
层的输入数,存储为 1。此层只接受一个输入。
数据类型: double
double
InputNames
{'in'}
输入名称,存储为 {'in'}。此层只接受一个输入。
数据类型: cell
cell
NumOutputs
层的输出数,存储为 1。此层只有一个输出。
OutputNames
{'out'}
输出名称,存储为 {'out'}。此层只有一个输出。
全部折叠
创建一个名为 'flatten1' 的展平层。
layer = flattenLayer('Name','flatten1')
layer = FlattenLayer with properties: Name: 'flatten1'
层数组或层图中的层将数据作为格式化的 dlarray 对象传递给后续层。dlarray 对象的格式是字符串,其中每个字符描述数据的对应维度。格式由以下一个或多个字符组成:
dlarray
"S" - 空间
"S"
"C" - 通道
"C"
"B" - 批量
"B"
"T" - 时间
"T"
"U" - 未指定
"U"
例如,您可以将以四维数组表示的二维图像数据(其中前两个维度对应于图像的空间维度,第三个维度对应于图像的通道,第四个维度对应于批量维度)的格式描述为 "SSCB"(空间、空间、通道、批量)。
"SSCB"
您可以在自动微分工作流中与这些 dlarray 对象进行交互,例如开发自定义层、使用 functionLayer 对象或对 dlnetwork 对象使用 forward 和 predict 函数的工作流。
functionLayer
forward
predict
下表显示 FlattenLayer 对象支持的输入格式以及对应的输出格式。如果软件将层的输出传递给不从 nnet.layer.Formattable 类继承的自定义层,或传递给 Formattable 属性设置为 0 (false) 的 FunctionLayer 对象,则该层会接收到未格式化的 dlarray 对象,其维度顺序对应于下表中的格式。此处列出的格式只是部分格式。该层可能支持其他格式,例如具有附加 "S"(空间)或 "U"(未指定)维度的格式。
nnet.layer.Formattable
Formattable
0
false
FunctionLayer
"CB"(通道、批量)
"CB"
"SCB"(空间、通道、批量)
"SCB"
"SSCB"(空间、空间、通道、批量)
"SSSCB"(空间、空间、通道、批量)
"SSSCB"
"CBT"(通道、批量、时间)
"CBT"
"SCBT"(空间、通道、批量、时间)
"SCBT"
"SSCBT"(空间、空间、通道、批量、时间)
"SSCBT"
"SSSCBT"(空间、空间、空间、通道、批量、时间)
"SSSCBT"
"CU"(通道、未指定)
"CU"
"SC"(空间、通道)
"SC"
"SSC"(空间、空间、通道)
"SSC"
"SSSC"(空间、空间、空间、通道)
"SSSC"
在 dlnetwork 对象中,FlattenLayer 对象还支持以下输入和输出格式组合。
"CT"(通道、时间)
"CT"
"SCT"(空间、通道、时间)
"SCT"
"SSCT"(空间、空间、通道、时间)
"SSCT"
"SSSCT"(空间、空间、空间、通道、时间)
"SSSCT"
FlattenLayer 对象支持复数值输入和输出。 (自 R2024a 起)该层对复数值输入应用与对实数值输入相同的底层运算,并在适用的情况下输出复数值数据。
FlattenLayer 对象支持复数值输入和输出。该层对复数值输入应用与对实数值输入相同的底层运算,并在适用的情况下输出复数值数据。
dlnetwork | lstmLayer | bilstmLayer | gruLayer | sequenceInputLayer | exportNetworkToSimulink | Flatten Layer
lstmLayer
bilstmLayer
gruLayer
sequenceInputLayer
exportNetworkToSimulink
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处