Main Content

Deep Learning Toolbox

Design, train, and analyze deep learning networks

Deep Learning Toolbox™ provides a framework for designing and implementing deep neural networks with algorithms, pretrained models, and apps. You can use convolutional neural networks (ConvNets, CNNs) and long short-term memory (LSTM) networks to perform classification and regression on image, time-series, and text data. You can build network architectures such as generative adversarial networks (GANs) and Siamese networks using automatic differentiation, custom training loops, and shared weights. With the Deep Network Designer app, you can design, analyze, and train networks graphically. The Experiment Manager app helps you manage multiple deep learning experiments, keep track of training parameters, analyze results, and compare code from different experiments. You can visualize layer activations and graphically monitor training progress.

You can exchange models with TensorFlow™ and PyTorch through the ONNX™ format and import models from TensorFlow-Keras and Caffe. The toolbox supports transfer learning with DarkNet-53, ResNet-50, NASNet, SqueezeNet and many other pretrained models.

You can speed up training on a single- or multiple-GPU workstation (with Parallel Computing Toolbox™), or scale up to clusters and clouds, including NVIDIA® GPU Cloud and Amazon EC2® GPU instances (with MATLAB® Parallel Server™).

Get Started

Learn the basics of Deep Learning Toolbox

Deep Learning with Images

Train convolutional neural networks from scratch or use pretrained networks to quickly learn new tasks

Deep Learning with Time Series, Sequences, and Text

Create and train networks for time series classification, regression, and forecasting tasks

Deep Learning Tuning and Visualization

Manage experiments, plot training progress, assess accuracy, explain predictions, tune training options, and visualize features learned by a network

Deep Learning in Parallel and in the Cloud

Scale up deep learning with multiple GPUs locally or in the cloud and train multiple networks interactively or in batch jobs

Deep Learning Applications

Extend deep learning workflows with computer vision, image processing, automated driving, signals, and audio

Deep Learning Import, Export, and Customization

Import, export, and customize deep learning networks, and customize layers, training loops, and loss functions

Deep Learning Data Preprocessing

Manage and preprocess data for deep learning

Deep Learning Code Generation

Generate MATLAB code or CUDA® and C++ code and deploy deep learning networks

Function Approximation, Clustering, and Control

Perform regression, classification, clustering, and model nonlinear dynamic systems using shallow neural networks