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_UPPERSAME_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 表示填充输入,以便对于每个轴 ioutput_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 in ( 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_UPPERSAME_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 表示填充输入,以便对于每个轴 ioutput_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 in ( 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 表示填充输入,以便对于每个轴 ioutput_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 in ( 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 表示填充输入,以便输出空间大小与 input.In 匹配,在奇数情况下,对于 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 in ( 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 表示填充输入,以便输出大小与input.In 匹配,对于奇数,在 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 in ( tensor(double), tensor(float), tensor(float16) )

    将输入和输出类型约束为浮点张量。