Pranavgulati / neuralDuino

The only dynamic and reconfigurable Artificial Neural networks library with back-propagation for arduino
MIT License
37 stars 5 forks source link

When we want to make a looping network it overflows in backward propagation #10

Open Zmm07 opened 1 year ago

Zmm07 commented 1 year ago

I use a esp32 and wit only 14 neurons it crashes because the propagation is looping and consuming memory (to fix such issues make it that the backwards propagation number is limited by like Define x 1 X (number of neurons) = max backwards going for a propagation X (number of neurons)² = max num of propagation for all the network

Zmm07 commented 1 year ago

And for the data predictions too Like Max multiplication mun = x (w)²

Pranavgulati commented 1 year ago

If the intention of a looping network is clear then it might suffice to stop back propagation at a node that has already been visited, this can be implemented by a back propagation flag/counter instead of a "max propagation" logic. Sometimes it is better to avoid constants in a library.

Can you please describe what the intention of a looping network is ? I am not actively developing and would love to see/test pull requests :-)

Zmm07 commented 1 year ago

Or another idea is to make a clock and every tick data flows just one move and a max tick can be implemented to make it not overflow and each tick ends when all oporations in that tick are complete

Max tick = x ( (neuron num )⁵ )½ / (w num)² Its ⁵½ because in some cases neuron num ² = w and X tick is a bad number

Zmm07 commented 1 year ago

Uploading 20221231_172123.jpg… Like

If the intention of a looping network is clear then it might suffice to stop back propagation at a node that has already been visited, this can be implemented by a back propagation flag/counter instead of a "max propagation" logic. Sometimes it is better to avoid constants in a library.

Can you please describe what the intention of a looping network is ? I am not actively developing and would love to see/test pull requests :-)

Like a is input for b and b is input for c and c is input for a
Like this