Numpyeinsum仅适用于密集张量。
是否有另一种适用于稀疏张量和线性算子的替代方法?
例如,我可能有一个f计算矩阵向量乘法形式的函数对于一些矩阵. Numpy
einsum甚至不允许
np.einsum('ij,j',A,x)
更别说
np.einsum('ijkl,mj->imkl',X,A)
同样的操作也不起作用是一个稀疏矩阵(更不用说一般的稀疏张量了)。
虽然对 LinearOperator 的支持更像是一个方便的问题,但对稀疏张量的支持对我来说至关重要。
Numpyeinsum仅适用于密集张量。
是否有另一种适用于稀疏张量和线性算子的替代方法?
例如,我可能有一个f计算矩阵向量乘法形式的函数对于一些矩阵. Numpy
einsum甚至不允许
np.einsum('ij,j',A,x)
更别说
np.einsum('ijkl,mj->imkl',X,A)
同样的操作也不起作用是一个稀疏矩阵(更不用说一般的稀疏张量了)。
虽然对 LinearOperator 的支持更像是一个方便的问题,但对稀疏张量的支持对我来说至关重要。
请参阅Wikipedia上的列表和对与维度无关的代码的快速、轻量级 C++ 张量库的答案。特别是taco似乎符合您的需求。