There is a newer version of the record available.

Published May 22, 2023 | Version v1.0.0

TensorKrowch: Smooth integration of tensor networks in machine learning

  • 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 NodesEdges, and TensorNetworksTensorKrowch 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

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.