constructor(options) {
            options = options || {};
            if (options.model) {
                // load network
                this.hiddenLayers = options.hiddenLayers;
                this.iterations = options.iterations;
                this.learningRate = options.learningRate;
                this.regularization = options.regularization;
                this.dicts = options.dicts;
                this.activation = options.activation;
                this.activationParam = options.activationParam;
                this.model = new Array(options.layers.length);

                for (var i = 0; i < this.model.length - 1; ++i) {
                    this.model[i] = Layer.load(options.layers[i]);
                }
                this.model[this.model.length - 1] = OutputLayer.load(options.layers[this.model.length - 1]);
            } else {
                // default constructor
                this.hiddenLayers = options.hiddenLayers === undefined ? [10] : options.hiddenLayers;
                this.iterations = options.iterations === undefined ? 50 : options.iterations;

                this.learningRate = options.learningRate === undefined ? 0.01 : options.learningRate;
                //this.momentum = options.momentum === undefined ? 0.1 : options.momentum;
                this.regularization = options.regularization === undefined ? 0.01 : options.regularization;

                this.activation = options.activation === undefined ? 'tanh' : options.activation;
                this.activationParam = options.activationParam === undefined ? 1 : options.activationParam;
                if (!(this.activation in Object.keys(ACTIVATION_FUNCTIONS))) {
                    this.activation = 'tanh';
                }
            }
        }
Create a new Feedforword neural network model.
@param {object} options
@param {Array} [options.hiddenLayers=[10]] - Array that contains the sizes of the hidden layers.
@oaram {number} [options.iterations=50] - Number of iterations at the training step.
@param {number} [options.learningRate=0.01] - Learning rate of the neural net (also known as epsilon).
@poram {number} [options.regularization=0.01] - Regularization parameter af the neural net.
@poram {string} [options.activation='tanh'] - activation function to be used. (options: 'tanh'(default),
'identity', 'logistic', 'arctan', 'softsign', 'relu', 'softplus', 'bent', 'sinusoid', 'sinc', 'gaussian').
(single-parametric options: 'parametric-relu', 'exponential-relu', 'soft-exponential').
@param {number} [options.activationParam=1] - if the selected activation function needs a parameter.