CumsumOperation
功能
返回给定axes上的累计和。
图1 CumsumOperation

功能实现
输入:
- 数组:cumsum 的输入可以是多维数组。
- 指定轴:可以选择沿着哪个轴(维度)进行累积和操作。默认情况下,对于一维数组,累积和是从第一个元素开始向后计算;对于多维数组,需要指定沿哪个轴进行累积。
输出:
- 累积和的结果:输出的形状与输入相同,每个元素是该元素以及之前所有元素的和。
计算公式
如果输入是大小为N的一维容器,那么输出也为大小为N的一维容器,其中元素的值为:
定义
struct CumsumParam { SVector<int64_t> axes; bool exclusive = false; bool reverse = false; };
参数列表
成员名称 |
类型 |
默认值 |
描述 |
---|---|---|---|
axes |
SVector<int64_t> |
- |
指定axis轴(维度)上计算累加和,只能包含一个轴索引。 “axes”的值必须小于输入x的维度数。 |
exclusive |
bool |
false |
在某一个轴上的累加结果从第几个元素开始,默认为false。
|
reverse |
bool |
false |
正向累加或逆向累加,默认为false。
|
输入
参数 |
维度 |
数据类型 |
格式 |
描述 |
---|---|---|---|---|
x |
[dim_0,dim_1,... ,dim_n] |
float16 |
ND |
输入tensor。 |
输出
参数 |
维度 |
数据类型 |
格式 |
描述 |
---|---|---|---|---|
y |
[dim_0,dim_1,... ,dim_n] |
float16 |
ND |
输出tensor。 |
规格约束
- 参数"axes"的值必须小于输入x的维度数。
- 参数"axes"数组大小必须为1。
- 参数"reverse"必须为false。
- 参数"exclusive"必须为false。