jax.numpy.pad

目录

jax.numpy.pad#

jax.numpy.pad(array, pad_width, mode='constant', **kwargs)[源代码][源代码]#

填充数组。

LAX-backend 实现的 numpy.pad()

与 numpy 不同,JAX 的“函数”模式参数(即另一个函数)应返回修改后的数组。这是因为 Jax 数组是不可变的。(在 numpy 中,“函数”模式的参数应就地修改一个秩为 1 的数组。)

原始文档字符串如下。

参数:
  • array (array_like of rank N) – 要填充的数组。

  • pad_width ({sequence, array_like, int}) – 每个轴边缘填充的数值数量。((before_1, after_1), ... (before_N, after_N)) 每个轴的唯一填充宽度。(before, after)((before, after),) 为每个轴提供相同的填充前和填充后。(pad,)int 是所有轴的填充前和填充后等于填充宽度的快捷方式。

  • mode (str or function, optional) – 以下字符串值之一或用户提供的函数。’constant’ (默认) 使用常数值填充。’edge’ 使用数组的边缘值填充。’linear_ramp’ 使用从end_value到数组边缘值之间的线性斜坡值填充。’maximum’ 使用沿每个轴的所有或部分向量的最大值填充。’mean’ 使用沿每个轴的所有或部分向量的平均值填充。’median’ 使用沿每个轴的所有或部分向量的中值填充。’minimum’ 使用沿每个轴的所有或部分向量的最小值填充。’reflect’ 使用向量在每个轴上的第一个和最后一个值的镜像反射填充。’symmetric’ 使用向量沿数组边缘的镜像反射填充。’wrap’ 使用向量沿轴的环绕填充。第一个值用于填充末端,末端值用于填充开始。’empty’ 使用未定义的值填充。

  • stat_length (sequence or int, optional) – 用于 ‘最大值’, ‘均值’, ‘中位数’, 和 ‘最小值’。 每个轴边缘使用的值的数量来计算统计值。 ((before_1, after_1), ... (before_N, after_N)) 每个轴的唯一统计长度。 (before, after)((before, after),) 为每个轴产生相同的前后统计长度。 (stat_length,)int 是所有轴的 before = after = statistic 长度的快捷方式。 默认是 None,使用整个轴。

  • constant_values (sequence or scalar, optional) – 用于 ‘常量’。 设置每个轴的填充值。 ((before_1, after_1), ... (before_N, after_N)) 每个轴的唯一填充常量。 (before, after)((before, after),) 为每个轴生成相同的之前和之后常量。 (constant,)constant 是所有轴的 before = after = constant 的快捷方式。 默认值为 0。

  • end_values (sequence or scalar, optional) – 用于 ‘linear_ramp’。用于线性斜坡的结束值,并将形成填充数组的边缘的值。((before_1, after_1), ... (before_N, after_N)) 每个轴的唯一结束值。(before, after)((before, after),) 为每个轴产生相同的开始和结束值。(constant,)constantbefore = after = constant 对于所有轴的快捷方式。默认值为 0。

  • reflect_type ({'even', 'odd'}, optional) – 用于 ‘reflect’ 和 ‘symmetric’。’even’ 样式是默认的,围绕边缘值进行未改变的反射。对于 ‘odd’ 样式,数组的扩展部分是通过将反射值从两倍的边缘值中减去来创建的。

返回:

pad – 填充后的数组,其秩与 array 相同,形状根据 pad_width 增加。

返回类型:

ndarray