Skip to content

Lexicon#

The definition of technical terms sometime fluctuates in deep-learning. In this lexicon we adopt definition that fit the CSBDeep and N2V libraries.

Activation function

Non-linear function applied to the result of a neuron's calculation. See these examples

Back-propagation

Back-propagation is the algorithm used to updated the weights of a network according to its output, usually using a loss function.

Batch size

Number of images, named patches, that the network sees at each training step.

Model

The neural network, consisting of a set of layers, each with various number of neurons, and the connections between these nodes. The neural network is capable of performing calculations by inputing an image (pixel values) in its input layer, propagating the values through its layers and outputting a prediction. Each neuron of a layer performs a simple calculation, that is then aggregated for the whole layer and passed to the next layer.

GPU

Graphical Processing Unit, which allows performing a large number of small computations in parallel. GPUs allow accelerating the training and prediction of neural networks.

Ground-truth

"Reality" of what we want the network to output. For instance, if we want to perform denoising, the ground-truth are clean images where noise is minimal, as opposed to the inputs which should be noisy images.

Layer

A set of neurons working in parallel.

Learning rate

Parameter regulating the magnitude of the weights update.

Loss function

Function aimed at judging "how good" the network performs by comparing the prediction output to a "ground-truth" value. Throughout training, we visualise the loss function on both the training and validation sets in order to assess how well the training is going.

Neuron

A unit in the neural network. A neuron performs a simple calculation on inputs, usually by multiplying inputs by weights, adding an offset (bias) and applying a non-linear function (activation function) to the sum.

Example: With input \(x_1\) and \(x_2\), a neuron would typically output:

\(out = f(x_1 * w_1 + x_2 * w_2 + b)\)

where \(f\) is an activation function.

Patch size

In order to "fit" in the GPU memory, which is often the limiting factor, images need to be all cropped. What the network is trained on is a number of patches, i.e. image crops. These patches are all the same size and are aggregated in batches. A single batch is presented to the network during a single step of each epoch.

Prediction

Output of the network.

Test set

A set of images that the network never saw during training. It is important for these images never to be added to the training or the validation set. The test set is used to assess the performances of the network on unseen data, that is to say how well it generalizes to similar images.

Training

Training a network is the act of changing the weights of the neural network until its performances do not increase anymore. During training, at each step, a subset of the training images is presented to the network, the loss is computed between the predictions and the "ground-truth". Then, gradients are built from the value of the loss, and the weights of the network are updated accordingly. At the end of each epoch, the loss is computed on the validation set for reference.

Training epoch

An ensemble of training steps. At the end of each epoch, the validation loss is computed.

Training set

Ensemble of images the network is trained on.

Training step

An iteration of learning.

UNet

A specific model architecture popular in bioimage analysis.

Validation set

Ensemble of images used to assess the performances of the network during training. The validation set is not used to train the network, only to assess that the training is going well.

Weights

The parameters of a Model that define all the neural network node calculations.