mindspore.ops.accumulate_n
- mindspore.ops.accumulate_n(x)[源代码]
逐元素将所有输入的Tensor相加。
mindspore.ops.accumulate_n()
与mindspore.ops.addn()
类似,但它们之间有一个显著的区别:accumulate_n不会等待其所有输入就绪后再求和。也就是说,不同时刻的输入会存储在内存中,accumulate_n能够节省内存,因为最小临时存储与输出大小成正比,而不是输入大小。- 参数:
x (Union(tuple[Tensor], list[Tensor])) - accumulate_n的输入,由多个Tensor组成的tuple或list,其数据类型为数值型,且每个元素的shape必须相等。
- 返回:
Tensor,与 x 的每个Tensor具有相同的shape和数据类型。
- 异常:
TypeError - x 既不是tuple,也不是list。
ValueError - x 中存在shape不同的Tensor。
- 支持平台:
Ascend
样例:
>>> import mindspore >>> import numpy as np >>> from mindspore import Tensor, ops >>> x = Tensor(np.array([1, 2, 3]), mindspore.float32) >>> y = Tensor(np.array([4, 5, 6]), mindspore.float32) >>> output = ops.accumulate_n([x, y, x, y]) >>> print(output) [10. 14. 18.]