简体   繁体   中英

How to estimate the amount of RAM it will take Encog to train a particular network with a particular sample set with Levenberg-Marquardt algorithm?

I am studying Encog (versions 3.0 and 3.1 for Java) neural network framework and would like to try Levenberg–Marquardt algorithm in my neural network training. However my actual neural networks are pretty complex natural (featuring hundreds of input neurons) and not a single (I've been simplifying from tens of thousands to 136) network appears to be possible to be trained with Levenberg–Marquardt (saying there is not enough memory while I dedicate 2 GiBs to the JVM). But it performs very good when I try a simple synthetic task with a simple (just 3 input neurons) network.

The question is how can I estimate the amount of memory it will take Encog to train a particular network with a particular sample set with Levenberg-Marquardt algorithm? How can I guess what is the maximum complexity can be fit in 2 GiBs (the actual machine has 4, but the JVM seems unable to allocate more than 2)?

I would try a small size, determine how much memory it uses and keep doubling the size until you see a pattern. ie is it linear or super linear.

BTW: My TV has 4 GB of memory, perhaps its time to get more memory if you need it. ;)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM