C# Класс Encog.Neural.Networks.Prune.PruneSelective

Prune a neural network selectivly. This class allows you to either add or remove neurons from layers of a neural network.
Показать файл Открыть проект

Открытые методы

Метод Описание
ChangeNeuronCount ( ILayer layer, int neuronCount ) : void

Change the neuron count for the network. If the count is increased then a zero-weighted neuron is added, which will not affect the output of the neural network. If the neuron count is decreased, then the weakest neuron will be removed.

DetermineNeuronSignificance ( ILayer layer, int neuron ) : double

Determine the significance of the neuron. The higher the return value, the more significant the neuron is.

Prune ( ILayer targetLayer, int neuron ) : void

Prune one of the neurons from this layer. Remove all entries in this weight matrix and other layers.

PruneSelective ( BasicNetwork network ) : System

Construct an object prune the neural network.

StimulateNeuron ( double percent, ILayer layer, int neuron ) : void

Stimulate the specified neuron by the specified percent. This is used to randomize the weights and bias values for weak neurons.

StimulateWeakNeurons ( ILayer layer, int count, double percent ) : void

Stimulate weaker neurons on a layer. Find the weakest neurons and then randomize them by the specified percent.

Приватные методы

Метод Описание
DecreaseNeuronCount ( ILayer layer, int neuronCount ) : void

Internal function to decrease the neuron count of a layer.

FindWeakestNeurons ( ILayer layer, int count ) : int[]

Find the weakest neurons.

IncreaseNeuronCount ( ILayer layer, int neuronCount ) : void

Internal function to increase the neuron count. This will add a zero-weight neuron to this layer.

Описание методов

ChangeNeuronCount() публичный Метод

Change the neuron count for the network. If the count is increased then a zero-weighted neuron is added, which will not affect the output of the neural network. If the neuron count is decreased, then the weakest neuron will be removed.
public ChangeNeuronCount ( ILayer layer, int neuronCount ) : void
layer ILayer The layer to adjust.
neuronCount int The new neuron count for this layer.
Результат void

DetermineNeuronSignificance() публичный Метод

Determine the significance of the neuron. The higher the return value, the more significant the neuron is.
public DetermineNeuronSignificance ( ILayer layer, int neuron ) : double
layer ILayer The layer to query.
neuron int The neuron to query.
Результат double

Prune() публичный Метод

Prune one of the neurons from this layer. Remove all entries in this weight matrix and other layers.
public Prune ( ILayer targetLayer, int neuron ) : void
targetLayer ILayer The neuron to prune. Zero specifies the first neuron.
neuron int The neuron to prune.
Результат void

PruneSelective() публичный Метод

Construct an object prune the neural network.
public PruneSelective ( BasicNetwork network ) : System
network BasicNetwork The network to prune.
Результат System

StimulateNeuron() публичный Метод

Stimulate the specified neuron by the specified percent. This is used to randomize the weights and bias values for weak neurons.
public StimulateNeuron ( double percent, ILayer layer, int neuron ) : void
percent double The percent to randomize by.
layer ILayer The layer that the neuron is on.
neuron int The neuron to randomize.
Результат void

StimulateWeakNeurons() публичный Метод

Stimulate weaker neurons on a layer. Find the weakest neurons and then randomize them by the specified percent.
public StimulateWeakNeurons ( ILayer layer, int count, double percent ) : void
layer ILayer The layer to stimulate.
count int The number of weak neurons to stimulate.
percent double The percent to stimulate by.
Результат void