End to End Deep Learning with PyTorch
PyTorch is a widely used, open source deep learning platform used for easily writing neural network layers in Python enabling a seamless workflow from research to production. Based on Torch, PyTorch has become a powerful machine learning framework favored by esteemed researchers around the world. PyTorch is primarily developed by Facebook's artificial-intelligence research group, and Uber's "Pyro" software for probabilistic programming is built on it.
PyTorch Capabilities & Features
- Tensor computation (similar to numpy) with strong GPU acceleration
- Deep Neural Networks built on a tape-based autodiff system
- Python-First approach, allows popular libraries and packages to be used for crafting neural network layers
- torch.distributed backend allows scalable distributed training and performance
Why Use PyTorch for Deep Learning?
PyTorch is extremely powerful for creating computational graphs. Compared to Tensorflow's static graph, PyTorch believes in a dynamic graph. Instead of first having to define the entire computation graph of the model before running your model (as in Tensorflow), in PyTorch, you can define and manipulate your graph on-the-fly.This feature is what makes PyTorch a extremely powerful tool for researcher, particularly when developing Recurrent Neural Networks (RNNs).
The PyTorch Ecosystem
The PyTorch Ecosystem offers a rich set of tools and libraries to support the development of AI applications. Featured projects include:
An open-source NLP research library, built on PyTorch.
A platform for game research with AlphaGoZero/AlphaZero reimplementation.
Simplifying training fast and accurate neural nets using modern best practices.
A ML compiler for Neural Network hardware accelerators.
A Gaussian process library implemented using PyTorch for creating Gaussian Process Models.
An easy to use, distributed library for deep learning frameworks.
A Deep Universal Probabilistic Programming Languate (PPL) written in Python.
A high level API for tensor methods and deep tensorized neural networks in Python.
An open source project based on the machine translation technologies of Facebook.
The PyTorch Modules
A Tensor library, similar to NumPy, but with powerful GPU support.
A tape-based automatic differentiation library that supports differentiable Tensor operations in torch.
The heart of PyTorch deep learning, torch.nn is a neural networks library deeply integrated with autograd designed for maximum flexibility.
Python multiprocessing, but with magical memory sharing of torch Tensors across processes.
DataLoader, Trainer and other utility functions for convenience.
Legacy code ported over from torch for backward compatibility.
Exxact Deep Learning GPU Solutions
Our deep learning GPU solutions are powered by the leading hardware, software, and systems engineering. Each system comes with our pre-installed deep learning software stack and are fully turnkey to run right out of the box.