Glossary · Machine learning

Multilayer perceptron

Also called MLP, fully connected network, feed-forward network, 2 × 256

The simplest kind of neural network: a stack of fully connected layers, where every unit in one layer feeds every unit in the next.

A multilayer perceptron (MLP) is a neural network made only of fully connected layers. Data flows one way, from input to output, with no memory between calls.

An MLP with two hidden layers computes

y=W3 σ(W2 σ(W1x+b1)+b2)+b3y = W_3\,\sigma\big(W_2\,\sigma(W_1 x + b_1) + b_2\big) + b_3

“2 × 256” means two hidden layers, each with 256 units.

Counting weights

A fully connected layer from nn inputs to mm outputs has n×mn \times m weights plus mm biases. The stance policy on the muscular body maps 193 inputs to 43 outputs:

layerweights + biases
193 → 25649,664
256 → 25665,792
256 → 4311,051
total126,507

Why an MLP

For control from a fixed-size state, an MLP is usually enough. It’s fast, easy to train, and has no hidden state to manage. Other designs add things an MLP lacks: a recurrent network (RNN, LSTM) remembers past inputs, and a transformer can attend over a long history. Here the needed history (previous actions, filter state, rhythm phase) is put in the observation, so the MLP doesn’t have to remember it.

In this project

The actor and critic are separate 2 × 256 MLPs with ELU activations.

Related terms

Used in

← All terms