# Built-In Training

After defining the network architecture, you can define training
parameters using the `trainingOptions`

function. You
can then train the network using `trainNetwork`

. Use the trained
network to predict class labels or numeric responses, or forecast future
time steps.

You can train a neural network on a CPU, a GPU, multiple
CPUs or GPUs, or in parallel on a cluster or in the cloud. Training on a GPU
or in parallel requires Parallel Computing Toolbox™. Using a GPU requires a supported GPU device (for information
on supported devices, see GPU Computing Requirements (Parallel Computing Toolbox)).
Specify the execution environment using the `trainingOptions`

function.

## Apps

Deep Network Designer | Design, visualize, and train deep learning networks |

## Functions

## Topics

### Multilayer Perceptron Networks

**Train Network with Numeric Features**

This example shows how to create and train a simple neural network for deep learning feature data classification.**Compare Deep Learning Networks for Credit Default Prediction**

Create, train, and compare three deep learning networks for predicting credit default probability.

### Recurrent Networks

**Create Simple Sequence Classification Network Using Deep Network Designer**

This example shows how to create a simple long short-term memory (LSTM) classification network using Deep Network Designer.**Sequence-to-Sequence Classification Using Deep Learning**

This example shows how to classify each time step of sequence data using a long short-term memory (LSTM) network.**Sequence-to-Sequence Regression Using Deep Learning**

This example shows how to predict the remaining useful life (RUL) of engines by using deep learning.**Sequence-to-One Regression Using Deep Learning**

This example shows how to predict the frequency of a waveform using a long short-term memory (LSTM) neural network.**Train Network with LSTM Projected Layer**

Train a deep learning network with an LSTM projected layer for sequence-to-label classification.**Classify Videos Using Deep Learning**

This example shows how to create a network for video classification by combining a pretrained image classification model and an LSTM network.**Train Network Using Custom Mini-Batch Datastore for Sequence Data**

This example shows how to train a deep learning network on out-of-memory sequence data using a custom mini-batch datastore.

### Convolutional Networks

**Sequence Classification Using 1-D Convolutions**

This example shows how to classify sequence data using a 1-D convolutional neural network.**Time Series Anomaly Detection Using Deep Learning**

This example shows how to detect anomalies in sequence or time series data.**Train Sequence Classification Network Using Data With Imbalanced Classes**

This example shows how to classify sequences with a 1-D convolutional neural network using class weights to modify the training to account for imbalanced classes.**Sequence-to-Sequence Classification Using 1-D Convolutions**

This example shows how to classify each time step of sequence data using a generic temporal convolutional network (TCN).**Train Network with Complex-Valued Data**

This example shows how to predict the frequency of a complex-valued waveform using a 1-D convolutional neural network.**Sequence Classification Using CNN-LSTM Network**

This example shows how to create a 2-D CNN-LSTM network for speech classification tasks by combining a 2-D convolutional neural network (CNN) with a long short-term memory (LSTM) layer.**Train Network on Image and Feature Data**

This example shows how to train a network that classifies handwritten digits using both image and feature input data.

### Deep Learning with MATLAB

**Deep Learning in MATLAB**

Discover deep learning capabilities in MATLAB^{®}using convolutional neural networks for classification and regression, including pretrained networks and transfer learning, and training on GPUs, CPUs, clusters, and clouds.**Deep Learning Tips and Tricks**

Learn how to improve the accuracy of deep learning networks.**Data Sets for Deep Learning**

Discover data sets for various deep learning tasks.