LpPool¶
LpPool - 22¶
版本¶
名称: LpPool (GitHub)
域:
main
自版本:
22
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
该版本的运算符自版本 22 起可用。
概述¶
LpPool 消费输入张量 X,并根据核大小、步长大小和填充长度对张量应用 Lp 池化。Lp 池化包括根据核大小计算输入张量子集上所有值的 Lp 范数,并将数据下采样到输出张量 Y 中进行进一步处理。输出空间形状如下:
output_spatial_shape[i] = floor((input_spatial_shape[i] + pad_shape[i] - {kernelSpatialShape}) / strides_spatial_shape[i] + 1)
或
output_spatial_shape[i] = ceil((input_spatial_shape[i] + pad_shape[i] - {kernelSpatialShape}) / strides_spatial_shape[i] + 1)
如果启用 ceil_mode,则 pad_shape[i]
是沿轴 i
的填充总和。
auto_pad
是一个已弃用的属性。如果您当前正在使用它们,则输出空间形状如下:
VALID: output_spatial_shape[i] = ceil((input_spatial_shape[i] - {kernelSpatialShape} + 1) / strides_spatial_shape[i])
SAME_UPPER or SAME_LOWER: output_spatial_shape[i] = ceil(input_spatial_shape[i] / strides_spatial_shape[i])
如果使用 SAME_UPPER
或 SAME_LOWER
,则填充形状如下:
pad_shape[i] = (output_spatial_shape[i] - 1) * strides_spatial_shape[i] + {kernelSpatialShape} - input_spatial_shape[i]
属性¶
auto_pad - 字符串 (默认值是
'NOTSET'
)auto_pad 必须是 NOTSET、SAME_UPPER、SAME_LOWER 或 VALID 之一。默认值为 NOTSET,表示使用显式填充。SAME_UPPER 或 SAME_LOWER 表示填充输入,使得对于每个轴
i
,output_shape[i] = ceil(input_shape[i] / strides[i])
。填充会平均或几乎平均地分配到两侧(取决于它是偶数还是奇数)。如果填充是奇数,则 SAME_UPPER 在末尾添加额外填充,SAME_LOWER 在开头添加额外填充。ceil_mode - 整型 (默认值是
'0'
)计算输出形状时使用向上取整 (ceil) 还是向下取整 (floor, 默认)。
dilations - 整型列表 :
滤波器沿每个空间轴的膨胀值。如果不存在,则沿每个空间轴的默认膨胀值为 1。
kernel_shape - 整型列表 (必需)
核沿每个轴的大小。
p - 整型 (默认值是
'2'
)用于对输入数据进行池化的 Lp 范数的 p 值。
pads - 整型列表 :
沿每个空间轴的开始和结束处的填充,可以取大于或等于 0 的任何值。该值表示添加到对应轴的开始和结束部分的像素数。
pads
格式应如下所示 [x1_begin, x2_begin…x1_end, x2_end,…],其中 xi_begin 是添加到轴i
开头的像素数,xi_end 是添加到轴i
结尾的像素数。此属性不能与 auto_pad 属性同时使用。如果不存在,则沿每个空间轴的开始和结束处的默认填充为 0。strides - 整型列表 :
沿每个空间轴的步长。如果不存在,则沿每个空间轴的默认步长为 1。
输入¶
X (异构) - T
来自前一个运算符的输入数据张量;图像情况下的维度是 (N x C x H x W),其中 N 是批量大小,C 是通道数,H 和 W 是数据的高度和宽度。对于非图像情况,维度形式为 (N x C x D1 x D2 … Dn),其中 N 是批量大小。
输出¶
Y (异构) - T
通过对输入张量进行 Lp 池化得到的输出数据张量。维度将根据不同的核、步长和填充大小而变化。
类型约束¶
T 在 (
tensor(bfloat16)
,tensor(double)
,tensor(float)
,tensor(float16)
) 中约束输入和输出类型为浮点张量。
LpPool - 18¶
版本¶
名称: LpPool (GitHub)
域:
main
自版本:
18
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
该版本的运算符自版本 18 起可用。
概述¶
LpPool 消费输入张量 X,并根据核大小、步长大小和填充长度对张量应用 Lp 池化。Lp 池化包括根据核大小计算输入张量子集上所有值的 Lp 范数,并将数据下采样到输出张量 Y 中进行进一步处理。输出空间形状如下:
output_spatial_shape[i] = floor((input_spatial_shape[i] + pad_shape[i] - {kernelSpatialShape}) / strides_spatial_shape[i] + 1)
或
output_spatial_shape[i] = ceil((input_spatial_shape[i] + pad_shape[i] - {kernelSpatialShape}) / strides_spatial_shape[i] + 1)
如果启用 ceil_mode,则 pad_shape[i]
是沿轴 i
的填充总和。
auto_pad
是一个已弃用的属性。如果您当前正在使用它们,则输出空间形状如下:
VALID: output_spatial_shape[i] = ceil((input_spatial_shape[i] - {kernelSpatialShape} + 1) / strides_spatial_shape[i])
SAME_UPPER or SAME_LOWER: output_spatial_shape[i] = ceil(input_spatial_shape[i] / strides_spatial_shape[i])
如果使用 SAME_UPPER
或 SAME_LOWER
,则填充形状如下:
pad_shape[i] = (output_spatial_shape[i] - 1) * strides_spatial_shape[i] + {kernelSpatialShape} - input_spatial_shape[i]
属性¶
auto_pad - 字符串 (默认值是
'NOTSET'
)auto_pad 必须是 NOTSET、SAME_UPPER、SAME_LOWER 或 VALID 之一。默认值为 NOTSET,表示使用显式填充。SAME_UPPER 或 SAME_LOWER 表示填充输入,使得对于每个轴
i
,output_shape[i] = ceil(input_shape[i] / strides[i])
。填充会平均或几乎平均地分配到两侧(取决于它是偶数还是奇数)。如果填充是奇数,则 SAME_UPPER 在末尾添加额外填充,SAME_LOWER 在开头添加额外填充。ceil_mode - 整型 (默认值是
'0'
)计算输出形状时使用向上取整 (ceil) 还是向下取整 (floor, 默认)。
dilations - 整型列表 :
滤波器沿每个空间轴的膨胀值。如果不存在,则沿每个空间轴的默认膨胀值为 1。
kernel_shape - 整型列表 (必需)
核沿每个轴的大小。
p - 整型 (默认值是
'2'
)用于对输入数据进行池化的 Lp 范数的 p 值。
pads - 整型列表 :
沿每个空间轴的开始和结束处的填充,可以取大于或等于 0 的任何值。该值表示添加到对应轴的开始和结束部分的像素数。
pads
格式应如下所示 [x1_begin, x2_begin…x1_end, x2_end,…],其中 xi_begin 是添加到轴i
开头的像素数,xi_end 是添加到轴i
结尾的像素数。此属性不能与 auto_pad 属性同时使用。如果不存在,则沿每个空间轴的开始和结束处的默认填充为 0。strides - 整型列表 :
沿每个空间轴的步长。如果不存在,则沿每个空间轴的默认步长为 1。
输入¶
X (异构) - T
来自前一个运算符的输入数据张量;图像情况下的维度是 (N x C x H x W),其中 N 是批量大小,C 是通道数,H 和 W 是数据的高度和宽度。对于非图像情况,维度形式为 (N x C x D1 x D2 … Dn),其中 N 是批量大小。
输出¶
Y (异构) - T
通过对输入张量进行 Lp 池化得到的输出数据张量。维度将根据不同的核、步长和填充大小而变化。
类型约束¶
T 在 (
tensor(double)
,tensor(float)
,tensor(float16)
) 中约束输入和输出类型为浮点张量。
LpPool - 11¶
版本¶
名称: LpPool (GitHub)
域:
main
自版本:
11
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
该版本的运算符自版本 11 起可用。
概述¶
LpPool 消费输入张量 X,并根据核大小、步长大小和填充长度对张量应用 Lp 池化。Lp 池化包括根据核大小计算输入张量子集上所有值的 Lp 范数,并将数据下采样到输出张量 Y 中进行进一步处理。
属性¶
auto_pad - 字符串 (默认值是
'NOTSET'
)auto_pad 必须是 NOTSET、SAME_UPPER、SAME_LOWER 或 VALID 之一。默认值为 NOTSET,表示使用显式填充。SAME_UPPER 或 SAME_LOWER 表示填充输入,使得对于每个轴
i
,output_shape[i] = ceil(input_shape[i] / strides[i])
。填充会平均或几乎平均地分配到两侧(取决于它是偶数还是奇数)。如果填充是奇数,则 SAME_UPPER 在末尾添加额外填充,SAME_LOWER 在开头添加额外填充。kernel_shape - 整型列表 (必需)
核沿每个轴的大小。
p - 整型 (默认值是
'2'
)用于对输入数据进行池化的 Lp 范数的 p 值。
pads - 整型列表 :
沿每个空间轴的开始和结束处的填充,可以取大于或等于 0 的任何值。该值表示添加到对应轴的开始和结束部分的像素数。
pads
格式应如下所示 [x1_begin, x2_begin…x1_end, x2_end,…],其中 xi_begin 是添加到轴i
开头的像素数,xi_end 是添加到轴i
结尾的像素数。此属性不能与 auto_pad 属性同时使用。如果不存在,则沿每个空间轴的开始和结束处的默认填充为 0。strides - 整型列表 :
沿每个空间轴的步长。如果不存在,则沿每个空间轴的默认步长为 1。
输入¶
X (异构) - T
来自前一个运算符的输入数据张量;图像情况下的维度是 (N x C x H x W),其中 N 是批量大小,C 是通道数,H 和 W 是数据的高度和宽度。对于非图像情况,维度形式为 (N x C x D1 x D2 … Dn),其中 N 是批量大小。
输出¶
Y (异构) - T
通过对输入张量进行 Lp 池化得到的输出数据张量。维度将根据不同的核、步长和填充大小而变化。
类型约束¶
T 在 (
tensor(double)
,tensor(float)
,tensor(float16)
) 中约束输入和输出类型为浮点张量。
LpPool - 2¶
版本¶
名称: LpPool (GitHub)
域:
main
自版本:
2
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
该版本的运算符自版本 2 起可用。
概述¶
LpPool 消费输入张量 X,并根据核大小、步长大小和填充长度对张量应用 Lp 池化。Lp 池化包括根据核大小计算输入张量子集上所有值的 Lp 范数,并将数据下采样到输出张量 Y 中进行进一步处理。
属性¶
auto_pad - 字符串 (默认值是
'NOTSET'
)auto_pad 必须是 NOTSET、SAME_UPPER、SAME_LOWER 或 VALID 之一。默认值为 NOTSET,表示使用显式填充。SAME_UPPER 或 SAME_LOWER 表示填充输入,使得输出空间大小与输入匹配。如果填充是奇数,则 SAME_UPPER 在末尾添加额外填充,SAME_LOWER 在开头添加额外填充。VALID 表示不填充。
kernel_shape - 整型列表 (必需)
核沿每个轴的大小。
p - 整型 (默认值是
'2'
)用于对输入数据进行池化的 Lp 范数的 p 值。
pads - 整型列表 :
沿每个空间轴的开始和结束处的填充,可以取大于或等于 0 的任何值。该值表示添加到对应轴的开始和结束部分的像素数。
pads
格式应如下所示 [x1_begin, x2_begin…x1_end, x2_end,…],其中 xi_begin 是添加到轴i
开头的像素数,xi_end 是添加到轴i
结尾的像素数。此属性不能与 auto_pad 属性同时使用。如果不存在,则沿每个空间轴的开始和结束处的默认填充为 0。strides - 整型列表 :
沿每个空间轴的步长。
输入¶
X (异构) - T
来自前一个运算符的输入数据张量;图像情况下的维度是 (N x C x H x W),其中 N 是批量大小,C 是通道数,H 和 W 是数据的高度和宽度。对于非图像情况,维度形式为 (N x C x D1 x D2 … Dn),其中 N 是批量大小。
输出¶
Y (异构) - T
通过对输入张量进行 Lp 池化得到的输出数据张量。维度将根据不同的核、步长和填充大小而变化。
类型约束¶
T 在 (
tensor(double)
,tensor(float)
,tensor(float16)
) 中约束输入和输出类型为浮点张量。
LpPool - 1¶
版本¶
名称: LpPool (GitHub)
域:
main
自版本:
1
函数:
False
支持级别:
SupportType.COMMON
形状推断:
False
该版本的运算符自版本 1 起可用。
概述¶
LpPool 消费输入张量 X,并根据核大小、步长大小和填充长度对张量应用 Lp 池化。Lp 池化包括根据核大小计算输入张量子集上所有值的 Lp 范数,并将数据下采样到输出张量 Y 中进行进一步处理。
属性¶
auto_pad - 字符串 (默认值是
'NOTSET'
)auto_pad 必须是 NOTSET、SAME_UPPER、SAME_LOWER 或 VALID 之一。默认值为 NOTSET,表示使用显式填充。SAME_UPPER 或 SAME_LOWER 表示填充输入,使得输出大小与输入匹配。如果填充是奇数,则 SAME_UPPER 在末尾添加额外填充,SAME_LOWER 在开头添加额外填充。VALID 表示不填充。弃用说明:auto_pad 仅用于支持旧版本用法,对于框架作者,强烈建议使用 pads 属性中指定的显式填充。
kernel_shape - 整型列表 :
核沿每个轴的大小。
p - 浮点型 (默认值是
'2.0'
)用于对输入数据进行池化的 Lp 范数的 p 值,默认值是 2.0。
pads - 整型列表 :
沿每个轴的开始和结束处的填充,可以取大于或等于 0 的任何值。该值表示添加到对应轴的开始和结束部分的像素数。
pads
格式应如下所示 [x1_begin, x2_begin…x1_end, x2_end,…],其中 xi_begin 是添加到轴 i 开头的像素数,xi_end 是添加到轴 i 结尾的像素数。此属性不能与 auto_pad 属性同时使用。strides - 整型列表 :
沿每个轴的步长。
输入¶
X (异构) - T
来自前一个运算符的输入数据张量;图像情况下的维度是 (N x C x H x W),其中 N 是批量大小,C 是通道数,H 和 W 是数据的高度和宽度。对于非图像情况,维度形式为 (N x C x D1 x D2 … Dn),其中 N 是批量大小。
输出¶
Y (异构) - T
通过对输入张量进行 Lp 池化得到的输出数据张量。维度将根据不同的核、步长和填充大小而变化。
类型约束¶
T 在 (
tensor(double)
,tensor(float)
,tensor(float16)
) 中约束输入和输出类型为浮点张量。