MaxUnpool¶
MaxUnpool - 22¶
版本¶
域:
main起始版本:
22函数:
False支持级别:
SupportType.COMMON形状推断:
True
此版本的运算符自 版本 22 起可用。
摘要¶
MaxUnpool 本质上计算 MaxPool 运算的部分逆运算。此运算的输入信息通常是 MaxPool 运算的输出信息。第一个输入张量 X 是需要反池化的张量,通常是 MaxPool 的池化张量(第一个输出)。第二个输入张量 I 包含与第一个输入张量 X 中的元素对应的(局部最大)元素的索引。输入张量 I 通常是 MaxPool 运算的第二个输出。第三个(可选)输入是指定反池化运算输出大小的张量。
MaxUnpool 旨在执行 MaxPool 运算的“部分”逆运算。“部分”是因为 MaxPool 原始输入中的所有非最大值在 MaxUnpool 运算的输出中都设置为零。对反池化运算的结果进行池化应该会返回反池化运算的原始输入。
MaxUnpool 可以为多个输入大小生成相同的输出大小,这使得反池化运算变得模糊。第三个输入参数 output_size 旨在消除运算的歧义并生成已知/可预测大小的输出张量。
除了输入之外,MaxUnpool 还接受三个属性,即 kernel_shape、strides 和 pads,它们定义了精确的反池化运算。这些属性通常与反池化运算尝试反转的相应池化运算具有相同的值。
属性¶
kernel_shape - INTS (必需)
沿每个轴的核大小。
pads - 整数 :
沿着每个空间轴的开始和结束填充,它可以取任何大于或等于 0 的值。该值表示添加到相应轴的开始和结束部分的像素数。
pads格式应如下 [x1_begin, x2_begin…x1_end, x2_end,…],其中 xi_begin 是在轴i的开始处添加的像素数,xi_end 是在轴i的结束处添加的像素数。此属性不能与 auto_pad 属性同时使用。如果不存在,则沿每个空间轴的开始和结束填充默认为 0。strides - 整数 :
沿每个空间轴的步长。如果不存在,步长默认为沿每个空间轴的 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 相同。索引是线性的,即考虑张量是扁平的 1-D 张量计算的,假设是行主存储。此外,线性索引不应考虑填充。因此,索引中的值在 [0, N x C x D1 x … x Dn) 范围内。
output_shape (可选,异构) - T2
可以显式设置输出的形状,这将导致自动生成填充值。如果指定了“output_shape”,则忽略“pads”值。
输出¶
output (异构) - T1
包含反池化结果的输出数据张量。
类型约束¶
T1 在 (
tensor(bfloat16),tensor(double),tensor(float),tensor(float16))将输入和输出类型限制为浮点张量。
T2 包含 (
tensor(int64))将索引张量限制为 int64
MaxUnpool - 11¶
版本¶
域:
main起始版本:
11函数:
False支持级别:
SupportType.COMMON形状推断:
True
此版本的运算符自 版本 11 起可用。
摘要¶
MaxUnpool 本质上计算 MaxPool 运算的部分逆运算。此运算的输入信息通常是 MaxPool 运算的输出信息。第一个输入张量 X 是需要反池化的张量,通常是 MaxPool 的池化张量(第一个输出)。第二个输入张量 I 包含与第一个输入张量 X 中的元素对应的(局部最大)元素的索引。输入张量 I 通常是 MaxPool 运算的第二个输出。第三个(可选)输入是指定反池化运算输出大小的张量。
MaxUnpool 旨在执行 MaxPool 运算的“部分”逆运算。“部分”是因为 MaxPool 原始输入中的所有非最大值在 MaxUnpool 运算的输出中都设置为零。对反池化运算的结果进行池化应该会返回反池化运算的原始输入。
MaxUnpool 可以为多个输入大小生成相同的输出大小,这使得反池化运算变得模糊。第三个输入参数 output_size 旨在消除运算的歧义并生成已知/可预测大小的输出张量。
除了输入之外,MaxUnpool 还接受三个属性,即 kernel_shape、strides 和 pads,它们定义了精确的反池化运算。这些属性通常与反池化运算尝试反转的相应池化运算具有相同的值。
属性¶
kernel_shape - INTS (必需)
沿每个轴的核大小。
pads - 整数 :
沿着每个空间轴的开始和结束填充,它可以取任何大于或等于 0 的值。该值表示添加到相应轴的开始和结束部分的像素数。
pads格式应如下 [x1_begin, x2_begin…x1_end, x2_end,…],其中 xi_begin 是在轴i的开始处添加的像素数,xi_end 是在轴i的结束处添加的像素数。此属性不能与 auto_pad 属性同时使用。如果不存在,则沿每个空间轴的开始和结束填充默认为 0。strides - 整数 :
沿每个空间轴的步长。如果不存在,步长默认为沿每个空间轴的 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 相同。索引是线性的,即考虑张量是扁平的 1-D 张量计算的,假设是行主存储。此外,线性索引不应考虑填充。因此,索引中的值在 [0, N x C x D1 x … x Dn) 范围内。
output_shape (可选,异构) - T2
可以显式设置输出的形状,这将导致自动生成填充值。如果指定了“output_shape”,则忽略“pads”值。
输出¶
output (异构) - T1
包含反池化结果的输出数据张量。
类型约束¶
T1 在 (
tensor(double),tensor(float),tensor(float16))将输入和输出类型限制为浮点张量。
T2 包含 (
tensor(int64))将索引张量限制为 int64
MaxUnpool - 9¶
版本¶
域:
main起始版本:
9函数:
False支持级别:
SupportType.COMMON形状推断:
True
此版本的运算符自 版本 9 起可用。
摘要¶
MaxUnpool 本质上计算 MaxPool 运算的部分逆运算。此运算的输入信息通常是 MaxPool 运算的输出信息。第一个输入张量 X 是需要反池化的张量,通常是 MaxPool 的池化张量(第一个输出)。第二个输入张量 I 包含与第一个输入张量 X 中的元素对应的(局部最大)元素的索引。输入张量 I 通常是 MaxPool 运算的第二个输出。第三个(可选)输入是指定反池化运算输出大小的张量。
MaxUnpool 旨在执行 MaxPool 运算的“部分”逆运算。“部分”是因为 MaxPool 原始输入中的所有非最大值在 MaxUnpool 运算的输出中都设置为零。对反池化运算的结果进行池化应该会返回反池化运算的原始输入。
MaxUnpool 可以为多个输入大小生成相同的输出大小,这使得反池化运算变得模糊。第三个输入参数 output_size 旨在消除运算的歧义并生成已知/可预测大小的输出张量。
除了输入之外,MaxUnpool 还接受三个属性,即 kernel_shape、strides 和 pads,它们定义了精确的反池化运算。这些属性通常与反池化运算尝试反转的相应池化运算具有相同的值。
属性¶
kernel_shape - INTS (必需)
沿每个轴的核大小。
pads - 整数 :
沿着每个空间轴的开始和结束填充,它可以取任何大于或等于 0 的值。该值表示添加到相应轴的开始和结束部分的像素数。
pads格式应如下 [x1_begin, x2_begin…x1_end, x2_end,…],其中 xi_begin 是在轴i的开始处添加的像素数,xi_end 是在轴i的结束处添加的像素数。此属性不能与 auto_pad 属性同时使用。如果不存在,则沿每个空间轴的开始和结束填充默认为 0。strides - 整数 :
沿每个空间轴的步幅。
输入¶
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 相同。索引是线性的,即考虑张量是扁平的 1-D 张量计算的,假设是行主存储。此外,线性索引不应考虑填充。因此,索引中的值在 [0, N x C x D1 x … x Dn) 范围内。
output_shape (可选,异构) - T2
可以显式设置输出的形状,这将导致自动生成填充值。如果指定了“output_shape”,则忽略“pads”值。
输出¶
output (异构) - T1
包含反池化结果的输出数据张量。
类型约束¶
T1 在 (
tensor(double),tensor(float),tensor(float16))将输入和输出类型限制为浮点张量。
T2 包含 (
tensor(int64))将索引张量限制为 int64