Neural Network Toolbox™ provides algorithms, pretrained models, and apps to create, train, visualize, and simulate both shallow and deep neural networks. You can perform classification, regression, clustering, dimensionality reduction, time-series forecasting, and dynamic system modeling and control.
Deep learning networks include convolutional neural networks (ConvNets, CNNs), directed acyclic graph (DAG) network topologies, and autoencoders for image classification, regression, and feature learning. For time-series classification and regression, the toolbox provides long short-term memory (LSTM) deep learning networks. You can visualize intermediate layers and activations, modify network architecture, and monitor training progress.
For small training sets, you can quickly apply deep learning by performing transfer learning with pretrained deep network models (including Inception-v3, ResNet-50, ResNet-101, GoogLeNet, AlexNet, VGG-16, and VGG-19) and models imported from TensorFlow®-Keras or Caffe.
To speed up training on large datasets, you can distribute computations and data across multicore processors and GPUs on the desktop (with Parallel Computing Toolbox™), or scale up to clusters and clouds, including Amazon EC2® P2, P3, and G3 GPU instances (with MATLAB® Distributed Computing Server™).
For a free, hands-on introduction to deep learning methods, see the Deep Learning Onramp.
Learn the basics of Neural Network Toolbox
Discover deep learning capabilities in MATLAB using convolutional neural networks (ConvNets) for classification and regression
Use pretrained deep networks to quickly learn new tasks, perform transfer learning and fine-tune a network, or perform feature extraction
Create new deep networks for classification and regression, including series, DAG, and LSTM networks, import from Caffe, or define your own layers
Plot training progress, assess accuracy and make predictions, tune deep network training options, visualize features learned by a network
Scale up deep learning with multiple GPUs locally or in the cloud, and train multiple networks interactively or in batch jobs.
Extend deep learning workflows with computer vision, image processing, signal processing, text analytics, or automated driving.
Generate GPU code and deploy deep learning networks
Perform regression, classification, and clustering using shallow networks; unsupervised learning with autoencoders
Model nonlinear dynamic systems using shallow networks; make predictions using sequential data.