TensorKrowch: Smooth integration of tensor networks in machine learning
Authors/Creators
- 1. Universidad Complutense de Madrid
- 2. Instituto de Ciencias Matemáticas
Description
TensorKrowch is a Python library built on top of PyTorch that simplifies the training of Tensor Networks as machine learning models and their integration into deep learning pipelines.
The primary goal of TensorKrowch is to offer an efficient and user-friendly framework for constructing and training diverse Tensor Networks. By providing essential components like Nodes, Edges, and TensorNetworks, TensorKrowch facilitates the creation and training of these models. Notably, even the included implementations of MPS or PEPS only rely on these fundamental components.
As a result, users who grasp the basic tools of TensorKrowch gain the ability to build a wide range of networks, ranging from simple Matrix Product States to more intricate architectures.
The true strength of TensorKrowch lies in its support for rapid experimentation, enabling users to create and train different models with just a few lines of code changes.
It's important to note that while TensorKrowch is a versatile library, it may not always be the fastest option in certain scenarios. However, it excels as a tool for exploration and identification of the most suitable Tensor Network. Once the ideal network is determined, users can develop further optimized code specifically tailored to that network.
Nevertheless, TensorKrowch incorporates various optimizations to ensure efficient training performance.
Files
joserapa98/tensorkrowch-v1.0.0.zip
Files
(3.0 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:a5c33376950f9f054f3c600beb1f715f
|
3.0 MB | Preview Download |
Additional details
Related works
- Is supplement to
- https://github.com/joserapa98/tensorkrowch/tree/v1.0.0 (URL)
References
- J. R. Pareja Monturiol, D. Pérez-García, and A. Pozas-Kerstjens, TensorKrowch: Smooth integration of tensor networks in machine learning, arXiv:2306.08595.