CANN ops-math矩阵对角线提取算子
MatrixDiagPartV3【免费下载链接】ops-math本项目是CANN提供的数学类基础计算算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-math产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√Atlas 200I/500 A2 推理产品×Atlas 推理系列产品√Atlas 训练系列产品√功能说明算子功能从输入矩阵或批量矩阵的最后两维中提取一条或多条对角线并按照align指定的方式使用$\mathrm{padding_value}$对较短对角线进行补齐。设输入$x$的最后两维大小为$M$和$N$$k[k_l, k_u]$表示待提取的对角线范围。令$$ \mathrm{num_diags} k_u - k_l 1 $$$$ \mathrm{max_diag_len} \min(M \min(k_u, 0),\ N - \max(k_l, 0)) $$对于编号为$d$的对角线其有效长度为$$ \mathrm{diag_len}(d) \min(M \min(d, 0),\ N - \max(d, 0)) $$输出元素满足$$ y_{..., m, n} \begin{cases} x_{..., n \max(-d, 0),\ n \max(d, 0)} 0 \le n \mathrm{diag_len}(d) \ \text{padding_value} \text{otherwise} \end{cases} $$其中带状输出场景下$d k_u - m$单对角线场景下$d k_l k_u$。当$k$为单个整数或$k_l k_u$时输出shape为[..., max_diag_len]当$k_l k_u$时输出shape为[..., num_diags, max_diag_len]。参数说明参数名输入/输出/属性描述数据类型数据格式x输入公式中的x。最后两维表示待提取对角线的矩阵其余前置维度按batch维处理。DOUBLE、FLOAT、FLOAT16、INT8、INT16、INT32、INT64、UINT8、UINT16、UINT32、UINT64、COMPLEX64、COMPLEX128NDk输入公式中的kl和ku。可以是标量表示提取单条对角线也可以是长度为2的向量表示提取对角线带。INT32NDpadding_value输入公式中的padding_value。用于补齐较短对角线的无效位置数据类型与x一致。DOUBLE、FLOAT、FLOAT16、INT8、INT16、INT32、INT64、UINT8、UINT16、UINT32、UINT64、COMPLEX64、COMPLEX128NDalign可选属性指定超对角线和次对角线的对齐方式。支持RIGHT_LEFT、LEFT_RIGHT、LEFT_LEFT、RIGHT_RIGHT默认值为RIGHT_LEFT。STRING-y输出公式中的y表示提取后的对角线Tensor。数据类型与x一致。DOUBLE、FLOAT、FLOAT16、INT8、INT16、INT32、INT64、UINT8、UINT16、UINT32、UINT64、COMPLEX64、COMPLEX128ND约束说明x的秩至少为2。k的元素个数只能为1或2当k为2个元素时必须满足k[0] k[1]。当k表示对角线带时输出的倒数第二维长度为$k_u - k_l 1$最后一维长度为$\mathrm{max_diag_len}$。调用说明调用方式调用样例说明图模式调用test_geir_matrix_diag_part_v3通过算子IR构图方式调用MatrixDiagPartV3算子。【免费下载链接】ops-math本项目是CANN提供的数学类基础计算算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-math创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2598119.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!