Anny on

Class: Network

Network

A Network contains Layers of Neurons.

Constructor

new Network(layers, errorFnopt)

Creates a Network of Layers consisting of Neurons. Each array element indicates a layer.

The first element represents the input Layer. The last element represents the output Layer. Each element in between represents a hidden Layer with n Neurons.

Parameters:
Name Type Attributes Default Description
layers Array.<Layer>

An array of Layers.

errorFn function <optional>
ERROR.meanSquared

The cost function to be minimized.

Source:
Example
// 2 inputs
// 1 output
const net = new Network([
  new Layer(2, ACTIVATION.tanh),
  new Layer(1, ACTIVATION.softmax)
])

Members

allLayers :Layer

An array of all Layers in the Network.

An array of all Layers in the Network. It is a single dimension array containing the inputLayer, hiddenLayers, and the outputLayer.

Type:
Source:

error :Number

The result of the errorFn.

The result of the errorFn.

Type:
  • Number
Source:

errorFn :function

The cost function.

The cost function. The function used to calculate Network error. In other words, to what degree was the Network's output wrong.

Type:
  • function
Source:

hiddenLayers :Array.<Layer>

An array of all layers between the inputLayer and outputLayer.

An array of all layers between the inputLayer and outputLayer.

Type:
Source:

inputLayer :Layer

The first Layer of the Network.

The first Layer of the Network. This Layer receives input during activation.

Type:
Source:

output :Array

The output values of the Neurons in the last layer.

The output values of the Neurons in the last layer. This is identical to the Network's outputLayer output.

Type:
  • Array
Source:

outputLayer :Layer

The last Layer of the Network.

The last Layer of the Network. The output of this Layer is the "prediction" the Network has made for some given input.

Type:
Source:

Methods

accumulateGradients()

Calculate and accumulate Neuron Connection weight gradients.

Calculate and accumulate Neuron Connection weight gradients. Does not update weights. Useful during batch/mini-batch training.

Source:

activate(inputsopt) → {Array.<number>}

Activate the Network with a given set of input values.

Activate the Network with a given set of input values.

Parameters:
Name Type Attributes Description
inputs Array.<number> <optional>

Values to activate the Network's input Neurons with.

Source:
Returns:

output - The output values of each Neuron in the output Layer.

Type
Array.<number>

backprop(targetOutputopt)

Set Network error and output Layer deltas and propagate them backward through the Network.

Set Network error and output Layer deltas and propagate them backward through the Network. The input Layer has no use for deltas, so it is skipped.

Parameters:
Name Type Attributes Description
targetOutput Array.<number> <optional>

The expected Network output vector.

Source:

updateWeights()

Update Neuron Connection weights and reset their accumulated gradients.

Update Neuron Connection weights and reset their accumulated gradients.

Source: