Does the Encog framework add extra neurons automaticly?

In summary, the conversation discusses the use of Encog to create a neural network with 1 input, 2 hidden layers, and 3 outputs. The amount of space required for the weights is calculated, but the network is found to be able to accurately fit any amount of data. The question is raised about whether the network adds more neurons if it cannot train properly, but it is confirmed that it does not do so.
  • #1
Superposed_Cat
388
5
I recently started using Encog and used

BasicNetwork network = new BasicNetwork();
network.AddLayer(new BasicLayer(new ActivationSigmoid(), true, 1));
network.AddLayer(new BasicLayer(new ActivationSigmoid(), true, 2));
network.AddLayer(new BasicLayer(new ActivationSigmoid(), true, r.Length));
network.Structure.FinalizeStructure();
network.Reset();

to declare a network with 1 input , 2 hidden and 3 outputs, I need to know the amount of space ram required for the all the weights, usually it would be ((1*2)+2+(2*3))*((2^64)-1)/4 but this network seems to be able to fit any amount of data 100% accurately, suspicious. So I was wondering if maybe it adds more neurons if it can't train properly, does it do this? Any help apreciated.
 
  • Like
Likes Silicon Waffle
Technology news on Phys.org
  • #2
Nevermind, it doesn't . One can see that it doesn't using network.CalculateNeuronCount();
 

1. What is the Encog framework and what does it do?

The Encog framework is an open-source software library for implementing artificial intelligence and machine learning algorithms. It provides a wide range of tools and functions for building, training, and deploying neural networks, as well as other machine learning techniques.

2. How does the Encog framework handle adding extra neurons?

The Encog framework has an automatic feature that allows for the addition of extra neurons in a neural network. This feature is called "adaptive node addition" and it adds neurons to the network as needed during the training process.

3. Can I control the number of extra neurons added by Encog?

Yes, you can control the number of extra neurons added by Encog by adjusting the "growth factor" parameter. This parameter determines the percentage of existing neurons that will be added as new neurons during training. A higher growth factor will result in more extra neurons being added.

4. How does Encog determine when to add extra neurons?

The Encog framework uses a metric called "error reduction" to determine when to add extra neurons. If the error reduction rate falls below a certain threshold, new neurons will be added to the network to improve its performance.

5. What are the benefits of using Encog's automatic neuron addition feature?

The automatic neuron addition feature in Encog allows for more efficient and effective training of neural networks. It ensures that the network has enough neurons to accurately model complex data, while also preventing overfitting by adding only the necessary number of neurons. This can result in better overall performance and generalization of the neural network.

Similar threads

  • Programming and Computer Science
Replies
1
Views
925
  • Programming and Computer Science
Replies
3
Views
1K
  • Programming and Computer Science
Replies
1
Views
1K
  • Programming and Computer Science
Replies
3
Views
889
  • Programming and Computer Science
Replies
1
Views
1K
  • Programming and Computer Science
Replies
7
Views
6K
  • Programming and Computer Science
Replies
1
Views
2K
  • Set Theory, Logic, Probability, Statistics
Replies
1
Views
991
  • Computing and Technology
Replies
4
Views
1K
Replies
1
Views
1K
Back
Top