最大反池化¶
MaxUnpool - 22¶
版本¶
域名:
mainsince_version:
22函数:
Falsesupport_level:
SupportType.COMMON形状推断:
True
此版本的运算符自版本22起可用。
摘要¶
MaxUnpool 本质上是计算 MaxPool 操作的部分逆操作。 此操作的输入信息通常来自 MaxPool 操作的输出信息。第一个 输入张量 X 是需要进行反池化的张量,通常是来自 MaxPool 的池化张量(第一个输出)。 第二个输入张量 I 包含与第一个输入张量 X 中的元素对应的(局部最大)元素的索引。输入张量 I 通常是 MaxPool 操作的第二个输出。 第三个(可选的)输入是一个张量,用于指定反池化操作的输出大小。
MaxUnpool 旨在执行 MaxPool 操作的部分逆操作。之所以称为“部分”,是因为在 MaxUnpool 操作的输出中,原始输入到 MaxPool 的所有非最大值都被设置为零。对反池化操作的结果进行池化操作应该会返回反池化操作的原始输入。
MaxUnpool可以为多个输入大小生成相同的输出大小,这使得反池化操作变得不明确。 第三个输入参数,output_size,旨在消除操作的歧义,并生成已知/可预测大小的输出张量。
除了输入之外,MaxUnpool 还接受三个属性,即 kernel_shape、strides 和 pads, 这些属性定义了确切的 unpooling 操作。这些属性通常与 unpooling 操作试图反转的相应 pooling 操作具有相同的值。
属性¶
kernel_shape - INTS(必需):
沿每个轴的核大小。
pads - INTS :
沿每个空间轴的开始和结束的填充,它可以取任何大于或等于0的值。该值表示在相应轴的开始和结束部分添加的像素数。
pads格式应如下所示 [x1_begin, x2_begin…x1_end, x2_end,…],其中xi_begin表示在轴i的开始部分添加的像素数,xi_end表示在轴i的结束部分添加的像素数。此属性不能与auto_pad属性同时使用。如果未指定,则沿每个空间轴的开始和结束的填充默认为0。步幅 - 整数 :
沿每个空间轴的步幅。如果未指定,则沿每个空间轴的步幅默认为1。
输入¶
在2到3个输入之间。
X (异构) - T1:
输入数据张量需要进行反池化操作。该张量通常是MaxPool操作的第一输出。对于图像情况,维度为(N x C x H x W),其中N是批量大小,C是通道数,H和W是数据的高度和宽度。对于非图像情况,维度形式为(N x C x D1 x D2 … Dn),其中N是批量大小。可选地,如果维度符号有效,操作期望输入数据张量带有维度符号[DATA_BATCH, DATA_CHANNEL, DATA_FEATURE, DATA_FEATURE …]。
I (异构) - T2:
输入数据张量,包含与第一个输入张量X中的元素对应的索引。此张量通常是MaxPool操作的第二个输出。维度必须与输入张量X相同。索引是线性的,即假设张量被展平为一维张量,并采用行优先存储方式计算。此外,线性索引不应考虑填充。因此,索引中的值在范围[0, N x C x D1 x … x Dn)内。
output_shape(可选,异构) - T2:
输出的形状可以显式设置,这将导致自动生成填充值。如果指定了‘output_shape’,则忽略‘pads’值。
输出¶
输出 (异构) - T1:
输出包含反池化结果的数据张量。
类型约束¶
T1 在 (
tensor(bfloat16),tensor(double),tensor(float),tensor(float16)) 中:将输入和输出类型限制为浮点张量。
T2 在 (
tensor(int64)) 中:将索引张量限制为int64
MaxUnpool - 11¶
版本¶
域名:
mainsince_version:
11函数:
Falsesupport_level:
SupportType.COMMON形状推断:
True
此版本的运算符自版本11起可用。
摘要¶
MaxUnpool 本质上是计算 MaxPool 操作的部分逆操作。 此操作的输入信息通常来自 MaxPool 操作的输出信息。第一个 输入张量 X 是需要进行反池化的张量,通常是来自 MaxPool 的池化张量(第一个输出)。 第二个输入张量 I 包含与第一个输入张量 X 中的元素对应的(局部最大)元素的索引。输入张量 I 通常是 MaxPool 操作的第二个输出。 第三个(可选的)输入是一个张量,用于指定反池化操作的输出大小。
MaxUnpool 旨在执行 MaxPool 操作的部分逆操作。之所以称为“部分”,是因为在 MaxUnpool 操作的输出中,原始输入到 MaxPool 的所有非最大值都被设置为零。对反池化操作的结果进行池化操作应该会返回反池化操作的原始输入。
MaxUnpool可以为多个输入大小生成相同的输出大小,这使得反池化操作变得不明确。 第三个输入参数,output_size,旨在消除操作的歧义,并生成已知/可预测大小的输出张量。
除了输入之外,MaxUnpool 还接受三个属性,即 kernel_shape、strides 和 pads, 这些属性定义了确切的 unpooling 操作。这些属性通常与 unpooling 操作试图反转的相应 pooling 操作具有相同的值。
属性¶
kernel_shape - INTS(必需):
沿每个轴的核大小。
pads - INTS :
沿每个空间轴的开始和结束的填充,它可以取任何大于或等于0的值。该值表示在相应轴的开始和结束部分添加的像素数。
pads格式应如下所示 [x1_begin, x2_begin…x1_end, x2_end,…],其中xi_begin表示在轴i的开始部分添加的像素数,xi_end表示在轴i的结束部分添加的像素数。此属性不能与auto_pad属性同时使用。如果未指定,则沿每个空间轴的开始和结束的填充默认为0。步幅 - 整数 :
沿每个空间轴的步幅。如果未指定,则沿每个空间轴的步幅默认为1。
输入¶
在2到3个输入之间。
X (异构) - T1:
需要反池化的输入数据张量。此张量通常是MaxPool操作的第一输出。图像情况下的维度为(N x C x H x W),其中N是批量大小,C是通道数,H和W是数据的高度和宽度。对于非图像情况,维度形式为(N x C x D1 x D2 … Dn),其中N是批量大小。可选地,如果维度符号有效,操作期望输入数据张量带有[DATA_BATCH, DATA_CHANNEL, DATA_FEATURE, DATA_FEATURE …]的维度符号。
I (异构) - T2:
输入数据张量,包含与第一个输入张量X中的元素对应的索引。此张量通常是MaxPool操作的第二个输出。维度必须与输入张量X相同。索引是线性的,即假设张量被展平为一维张量,并采用行优先存储方式计算。此外,线性索引不应考虑填充。因此,索引中的值在范围[0, N x C x D1 x … x Dn)内。
output_shape(可选,异构) - T2:
输出的形状可以显式设置,这将导致自动生成填充值。如果指定了‘output_shape’,则忽略‘pads’值。
输出¶
输出 (异构) - T1:
输出包含反池化结果的数据张量。
类型约束¶
T1 在 (
tensor(double),tensor(float),tensor(float16)) 中:将输入和输出类型限制为浮点张量。
T2 在 (
tensor(int64)) 中:将索引张量限制为int64
MaxUnpool - 9¶
版本¶
域名:
mainsince_version:
9函数:
Falsesupport_level:
SupportType.COMMON形状推断:
True
此版本的运算符自版本9起可用。
总结¶
MaxUnpool 本质上是计算 MaxPool 操作的部分逆操作。 此操作的输入信息通常来自 MaxPool 操作的输出信息。第一个 输入张量 X 是需要进行反池化的张量,通常是来自 MaxPool 的池化张量(第一个输出)。 第二个输入张量 I 包含与第一个输入张量 X 中的元素对应的(局部最大)元素的索引。输入张量 I 通常是 MaxPool 操作的第二个输出。 第三个(可选的)输入是一个张量,用于指定反池化操作的输出大小。
MaxUnpool 旨在执行 MaxPool 操作的部分逆操作。之所以称为“部分”,是因为在 MaxUnpool 操作的输出中,原始输入到 MaxPool 的所有非最大值都被设置为零。对反池化操作的结果进行池化操作应该会返回反池化操作的原始输入。
MaxUnpool可以为多个输入大小生成相同的输出大小,这使得反池化操作变得不明确。 第三个输入参数,output_size,旨在消除操作的歧义,并生成已知/可预测大小的输出张量。
除了输入之外,MaxUnpool 还接受三个属性,即 kernel_shape、strides 和 pads, 这些属性定义了确切的 unpooling 操作。这些属性通常与 unpooling 操作试图反转的相应 pooling 操作具有相同的值。
属性¶
kernel_shape - INTS(必需):
沿每个轴的核大小。
pads - INTS :
沿每个空间轴的开始和结束的填充,它可以取任何大于或等于0的值。该值表示在相应轴的开始和结束部分添加的像素数。
pads格式应如下所示 [x1_begin, x2_begin…x1_end, x2_end,…],其中xi_begin表示在轴i的开始部分添加的像素数,xi_end表示在轴i的结束部分添加的像素数。此属性不能与auto_pad属性同时使用。如果未指定,则沿每个空间轴的开始和结束的填充默认为0。步幅 - 整数 :
沿着每个空间轴步进。
输入¶
在2到3个输入之间。
X (异构) - T1:
输入数据张量需要进行反池化操作。该张量通常是MaxPool操作的第一输出。对于图像情况,维度为(N x C x H x W),其中N是批量大小,C是通道数,H和W是数据的高度和宽度。对于非图像情况,维度形式为(N x C x D1 x D2 … Dn),其中N是批量大小。可选地,如果维度符号有效,操作期望输入数据张量带有维度符号[DATA_BATCH, DATA_CHANNEL, DATA_FEATURE, DATA_FEATURE …]。
I (异构) - T2:
输入数据张量,包含与第一个输入张量X中的元素对应的索引。此张量通常是MaxPool操作的第二个输出。维度必须与输入张量X相同。索引是线性的,即假设张量被展平为一维张量,并采用行优先存储方式计算。此外,线性索引不应考虑填充。因此,索引中的值在范围[0, N x C x D1 x … x Dn)内。
output_shape(可选,异构) - T2:
输出的形状可以显式设置,这将导致自动生成填充值。如果指定了‘output_shape’,则忽略‘pads’值。
输出¶
输出 (异构) - T1:
输出包含反池化结果的数据张量。
类型约束¶
T1 在 (
tensor(double),tensor(float),tensor(float16)) 中:将输入和输出类型限制为浮点张量。
T2 在 (
tensor(int64)) 中:将索引张量限制为int64