Notice:
1. “YES/NO” to show whether or not the software supports the operation or has the feature.
2. “?” means we’re not sure of the feature, and please help us out.
3. “Tensor order” means the maximum number of tensor dimensions that users can do with this software.
4. For computational cores,
1) "Element-wise Tensor Operation (A * B)” includes element-wise add/minus/multiply/divide, also Kronecker, outer and Katri-Rao products. If the software contains one of them, we mark “YES”.
2) “TTM” means tensor-times-matrix multiplication. We distinguish TTM from tensor contraction. If the software includes tensor contraction, it can also support TTM.
3) For “MTTKRP”, we know most software can realize it through the above two operations. We mark it “YES”, only if an specified optimization for the whole operation.
Software Name | NumPy |
Computational Cores | Element-wise Tensor Operation (A * B) | YES |
Tensor Contraction (A Xmn B) | NO |
TTM ( A Xn B) | NO |
Matriced Tensor Times Khatri-Rao Product (MTTKRP) | NO |
Tensor Decomposition | CP | NO |
Tucker | NO |
Hierarchical Tucker (HT) | NO |
Tensor Train (TT) | NO |
Tensor Features | Tensor Order | Arbitrary |
Dense Tensors | YES |
Sparse Tensors | NO ? |
Parallelized | NO ? |
Software Information | Application Domain | General |
Programming Environment | Python |
Latest Version | 1.10.4 |
Release Date | 2016 |
Citation:
1. AN DER WALT, S., COLBERT, S., AND VAROQUAUX, G. The NumPy array: A structure for efficient numerical computation. Computing in Science Engineering 13, 2 (March 2011), 22–30.
2. OLIPHANT, T. E. Python for scientific computing. Computing in Science Engineering 9, 3 (May 2007), 10–20.