A Python package for tensor computation with GPU acceleration and dynamic neural networks built on a tape-based autograd system.
PyTorch is an open-source machine learning library for Python that provides two high-level features: tensor computation with strong GPU acceleration (similar to NumPy) and deep neural networks built on a tape-based autograd system. It enables researchers and developers to perform efficient scientific computing and build flexible, dynamic neural networks for a wide range of AI applications.
Machine learning researchers, data scientists, and developers who need a flexible, Python-first platform for deep learning experimentation, prototyping, and production deployment, especially those valuing dynamic computational graphs and intuitive debugging.
PyTorch stands out for its dynamic neural network construction via tape-based autograd, allowing arbitrary changes to network behavior with zero lag. Its Python-first, imperative design offers an intuitive, linear workflow with straightforward debugging, making it a preferred choice for research and rapid iteration.
Tensors and Dynamic neural networks in Python with strong GPU acceleration
Uses tape-based autograd to allow arbitrary changes to network behavior with zero overhead, enabling rapid experimentation and research, as highlighted in the dynamic neural networks section.
Imperative execution provides intuitive stack traces and line-by-line code execution, making debugging straightforward compared to asynchronous frameworks, as emphasized in the imperative experiences section.
Offers seamless CPU/GPU tensor operations with integration of cuDNN and MKL libraries for high performance, serving as a NumPy replacement with strong GPU support, as described in the GPU-ready tensor library part.
Allows writing new neural network layers in Python or C/C++ with minimal boilerplate, leveraging existing Python packages like NumPy and SciPy, as noted in the extensions without pain section.
Installing from source requires C++20 compilers, specific GPU drivers, and 10+ GB disk space, with builds taking 30-60 minutes and detailed setup for CUDA/ROCm support, as outlined in the prerequisites and installation steps.
AMD ROCm and Intel GPU support is available but involves more complex configuration and has sparser community resources compared to NVIDIA CUDA, as mentioned in the ROCm and Intel GPU support subsections.
For production deployment, static graph optimization via TorchScript is needed, adding complexity and potential performance trade-offs compared to natively static frameworks like TensorFlow.
An Open Source Machine Learning Framework for Everyone
FastAPI framework, high performance, easy to learn, fast to code, ready for production
Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.
Deep Learning for humans
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.