public void FinalizeStructure()
{
if (_layers.Count < 2)
{
throw new NeuralNetworkError(
"There must be at least two layers before the structure is finalized.");
}
var flatLayers = new FlatLayer[_layers.Count];
for (int i = 0; i < _layers.Count; i++)
{
var layer = (BasicLayer) _layers[i];
if (layer.Activation == null)
{
layer.Activation = new ActivationLinear();
}
flatLayers[i] = layer;
}
_flat = new FlatNetwork(flatLayers);
FinalizeLimit();
_layers.Clear();
EnforceLimit();
}