PyTorch is an open source Python package that provides two high-level features:
- Tensor computation (like NumPy) to use the power of GPUs.
- Deep Neural Networks built on a tape-based autodiff system that offers flexibility and speed.
Torch is a tensor library for manipulating multidimensional matrices of data employed in machine learning and many other math-intensive applications.
PyTorch provides libraries for basic tensor manipulation on CPUs or GPUs, a built-in neural network library, model training utilities, and a multiprocessing library that can work with shared memory.
Reuse popular Python packages such as NumPy, SciPy and Cython to extend PyTorch when needed.
Key Features
- Intuitive, linear in thought and easy to use.
- Excellent Python integration, imperative style, simplicity of the API and options.
- PyTorch’s Tensor API is designed to be straightforward and with minimal abstractions.
- GPU-ready tensor library – provides Tensors (ndarray) that can live either on the CPU or the GPU.
- Autograd module – a tape-based automatic differentiation library that supports all differentiable Tensor operations in torch. It uses a technique called reverse-mode auto-differentiation, which allows you to change the way your network behaves arbitrarily with zero lag or overhead. This technique is especially powerful when building neural networks in order to save time on one epoch by calculating differentiation of the parameters at the forward pass itself.
- Optim module – implements various optimization algorithms used for building neural networks.
- nn module – a neural networks library deeply integrated with autograd designed for maximum flexibility.
- Minimal framework overhead. The software integrates acceleration libraries such as Intel MKL and NVIDIA (cuDNN, NCCL) to maximize speed.
- Efficient memory usage.
Website: pytorch.org
Support: Blog, GitHub Code Repository
Developer: PyTorch core team
License: Standard BSD-3 license
PyTorch is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| Deep Learning with Python | |
|---|---|
| TensorFlow | A very popular Deep Learning framework |
| PyTorch | Tensors and Dynamic neural networks in Python |
| Keras | High-level neural networks API |
| fastai | Simplifies training fast and accurate neural networks |
| tinygrad | Compact, lightweight deep learning framework |
| PyTorch Lightning | Framework for scaling PyTorch training workflows |
| JAX | High-performance numerical computing and ML library |
| PyTensor | Library for fast numerical computation |
| MindSpore | Framework for training and deploying neural networks |
| Elephas | Distributed deep learning with Keras and Spark |
| Chainer | Powerful, flexible, and intuitive framework for neural networks |
| Equinox | Neural network library for building flexible models with JAX |
| Caffe | Convolutional Architecture for Fast Feature Embedding |
| TFlearn | Deep learning library featuring a higher-level API for TensorFlow |
| MXNet | Flexible and efficient library |
| CNTK | Distributed deep learning |
| Neupy | Python library for neural networks and deep learning |
Read our verdict in the software roundup.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.