文件名称:einsum:有效计算任何维度的张量收缩。 它使用 MATLAB 的矩阵乘法,因此它被并行化和优化。-matlab开发
文件大小:2KB
文件格式:ZIP
更新时间:2024-06-18 06:37:11
matlab
用法:einsum(A,B,s) einsum(A,B,iA,iB) 计算作为n维张量的A和B的收缩。 收缩由 s 指定,在爱因斯坦符号中,或由两个向量 iA 和 iB 列出了每个张量要收缩的索引。 例子: A=rand(7,4,5); B=rand(5,7); 要将 A 的第一维与 B 的第二维收缩,请使用einsum(A, B, 'ijk,li->jkl') 或 einsum(A, B, 1, 2) 结果将是大小[4,5,5]。 要将 A 的第三维与 B 的第一维收缩,请使用einsum(A, B, 'ijk,kl->ijl') 或 einsum(A, B, 3, 1) 结果的大小为 [7,4,7]。 要同时进行两次收缩,请使用einsum(A,B,'ijk,ki-> j')或einsum(A,B,[1 3],[2 1]) 使用 iA, iB 无法指定维度的顺序在输出中,它
【文件预览】:
einsum.m.zip