jax.lax.scatter_min

内容

jax.lax.scatter_min#

jax.lax.scatter_min(operand, scatter_indices, updates, dimension_numbers, *, indices_are_sorted=False, unique_indices=False, mode=None)[source]#

散射最小值运算符。

包装 XLA 的散射运算符,其中 min 函数用于组合来自 operand 的更新和值。

散射的语义很复杂,其 API 可能在未来发生变化。对于大多数用例,你应该优先使用 JAX 数组上的 jax.numpy.ndarray.at 属性,它使用熟悉的 NumPy 索引语法。

参数:
  • 操作数 (ArrayLike) – 一个应用散射的数组。

  • 散射索引 (ArrayLike) – 一个数组,提供 操作数 中每个更新应该应用到的索引。

  • 更新 (ArrayLike) – 应该散射到 操作数 上的更新。

  • 维度编号 (ScatterDimensionNumbers) – 一个 lax.ScatterDimensionNumbers 对象,描述了 操作数起始索引更新 和输出的维度是如何相关的。

  • 索引已排序 (bool) – 散射索引 是否已知为排序。如果为 True,可能会在某些后端上提高性能。

  • 唯一索引 (bool) – 是否保证在 operand 中要更新的元素不会相互重叠。如果为 True,可能会在某些后端上提高性能。JAX 不会检查此承诺:如果在 unique_indicesTrue 时更新的元素重叠,则行为未定义。

  • 模式 (str | GatherScatterMode | None | None) – 如何处理超出范围的索引:当设置为 ‘clip’ 时,索引会被钳制以确保切片在范围内,当设置为 ‘fill’ 或 ‘drop’ 时,超出范围的更新会被丢弃。当设置为 ‘promise_in_bounds’ 时,超出范围索引的行为是实现定义的。

返回:

一个包含 操作数 和散射更新的总和的数组。

返回类型:

数组