I all, i am currently on a development for a Neural Network training system based on software, i am developing it in C++, i am using float data types for all neuron inputs and outputs, but i would like to know if is better to use a double precision floating point data type.
If any one does not know what are Neural Networks, follow the link.
Regards.
It will depend on what types of values you anticipate being common. If you think you are likely to have inputs/outputs such as .251923847123 and .251923847124, then you may want to increase the precision. In general, however, I doubt it would make a difference which you use.
If absolutely necessary, you can link __int64 variables together to get the desired precision. It'll be extra work, though.
More likely than not, single precision reals are fine. There was a neural network shell vendor who used to advertise the fact that they used higher precision math, but I never saw any evidence that this provided any benefit. On the other hand, probably the most commercially successful neural networks software (BrainMaker, from CSS) used fixed point arithmetic of fairly limited precision, and ran very fast.
it wont matter unless your values may get big but in moderate range values it wont matter since the neural network will keep on going till it reaches it's optimal values and the matter of precision will make a minority change.
"Recursion is just a line of code"
-Karim Hosny-
My flickr
Hey guys, welcome to CodeCall. In case no one's told you, posting on threads more than a month or two old is generally frowned upon, as it moves new threads down in the list, plus the original poster is probably long gone. This thread's over two years old.![]()
sudo rm -rf /
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks