# Neural Network

This module combines the given layers to a Neural Network. The Neural Network can be used, for example, as a function approximator in a Supervised Learning problem.

The user can choose between different backends to perform the computations. Besides the Korali lightweight implementation, we support

This module enables two *Operation* types:

Training: In this operation, the weights and biases are optimized to minimize a given loss function. The initial guess is chosen according to the specifiedWeight Initialization.

Inference: In this operation, weights and biases are either provided by the user, or obtained by the training operation. This configuration is only used to compute the output for a given input.

**Sub-Categories:**