文件最后提交记录最后更新时间
10 天前
2 个月前
2 个月前
2 个月前
22 天前
2 个月前
1 个月前
2 个月前
14 天前
README

ScatterMax

产品支持情况

产品 是否支持
Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
Atlas 200I/500 A2 推理产品 ×
Atlas 推理系列产品 ×
Atlas 训练系列产品 ×

功能说明

  • 算子功能:实现兼容tf.compat.v1.scatter_max的功能,将tensor updates中的值按指定的索引tensor indices逐元素取最大值更新到tensor var的切片上。若有多于一个updates值作用到var的同一个切片,则依次在该切片上取最大值。属于原地(in-place)更新,输出复用输入var。规则如下:

    var[indices[i],...]=max⁡(var[indices[i],...],updates[i,...])var[indices[i], ...] = \max(var[indices[i], ...], updates[i, ...])

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
var 输入 支持空Tensor。表示待被更新的张量,Device侧的aclTensor,原地更新。shape支持1维及以上,数据类型需与updates一致。 FLOAT16、FLOAT32、INT32、INT8、UINT8 ND
indices 输入 支持空Tensor。表示待更新的索引张量,Device侧的aclTensor。shape支持1维及以上,数据类型为INT32或INT64。支持索引越界,越界索引(小于0或大于等于var第一维)会被静默跳过,不做更新。 INT32、INT64 ND
updates 输入 支持空Tensor。表示需要与var逐元素取最大值的张量,Device侧的aclTensor。shape支持1维及以上,需满足updates.shape = indices.shape + var.shape[1:],数据类型需与var一致。 FLOAT16、FLOAT32、INT32、INT8、UINT8 ND
var 输出 支持空Tensor。表示更新后的张量,Device侧的aclTensor,与输入var共享内存。shape和数据类型均与输入var一致。 FLOAT16、FLOAT32、INT32、INT8、UINT8 ND
use_locking 属性 HOST侧的bool值,是否对更新加锁,默认false。 bool -

约束说明

  • 确定性计算:不支持确定性计算。
  • var的首维大小不超过INT32_MAX。

调用说明

调用方式 样例代码 说明
aclnn接口 test_aclnn_scatter_max 通过aclnnScatterMax接口方式调用ScatterMax算子。