tednet
is a toolkit for tensor decomposition networks. Tensor decomposition networks are neural networks whose layers are decomposed by tensor decomposition, including CANDECOMP/PARAFAC, Tucker2, Tensor Train, Tensor Ring and so on. For a convenience to do research on it, tednet
provides excellent tools to deal with tensorial networks.
Now, tednet is easy to be installed by pip
:
pip install tednet
More information could be found in Document.
There are some operations supported in tednet
, and it is convinient to use them. First, import it:
import tednet as tdt
Create matrix whose diagonal elements are ones:
diag_matrix = tdt.eye(5, 5)
A way to transfer the Pytorch tensor into numpy array:
diag_matrix = tdt.to_numpy(diag_matrix)
Similarly, the numpy array can be taken into Pytorch tensor by:
diag_matrix = tdt.to_tensor(diag_matrix)
To use tensor ring decomposition models, simply calling the tensor ring module is enough.
import tednet.tnn.tensor_ring as tr
# Define a TR-LeNet5
model = tr.TRLeNet5(10, [6, 6, 6, 6])
If you use tednet
in an academic work, we will appreciate you for citing our paper with:
@article{DBLP:journals/corr/abs-2104-05018,
author = {Yu Pan and
Maolin Wang and
Zenglin Xu},
title = {TedNet: {A} Pytorch Toolkit for Tensor Decomposition Networks},
journal = {CoRR},
volume = {abs/2104.05018},
year = {2021},
url = {https://arxiv.org/abs/2104.05018},
archivePrefix = {arXiv},
eprint = {2104.05018},
timestamp = {Mon, 19 Apr 2021 16:45:47 +0200},
biburl = {https://dblp.org/rec/journals/corr/abs-2104-05018.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}