Transpose
函数功能
可通过指定的一组轴维度(axes),对输入的Tensor数据进行转置处理,如未指定具体轴维度,则默认对Tensor数据进行反序转置。
该功能支持对输出数据进行内存复用,用户可通过预先申请的内存(内存大小需与输入一致)传入输出数据。
功能仅支持在Host侧执行操作,如需处理Device侧Tensor数据,请先通过ToHost接口,将Device侧数据转移到Host侧,再进行转置。
函数原型
friend APP_ERROR Transpose(const Tensor &input, Tensor &output, std::vector<uint32_t> axes = {})
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
input |
输入 |
待转置Tensor类。 维度支持2维、3维、4维,数据类型支持float32、float16、uint8。 |
output |
输出 |
转置后的Tensor类。 |
axes |
输入 |
转置选项,默认值为空。 如果未指定具体axes,则默认生成反序“axes”对“input”中的数据进行反序转置。 例如:三维张量默认生成反序“axes”为{2, 1, 0} 。 |
返回参数说明
数据结构 |
说明 |
---|---|
APP_ERROR |
程序执行返回的错误码,请参考APP_ERROR说明。 |
父主题: Tensor