Closed Ithanil closed 6 years ago
Changes Missing Coverage | Covered Lines | Changed/Added Lines | % | ||
---|---|---|---|---|---|
src/actf/ReLUActivationFunction.hpp | 0 | 2 | 0.0% | ||
src/actf/SELUActivationFunction.hpp | 0 | 2 | 0.0% | ||
src/actf/TanSigmoidActivationFunction.hpp | 0 | 2 | 0.0% | ||
src/feeder/SmartBetaGenerator.cpp | 98 | 100 | 98.0% | ||
src/actf/SineActivationFunction.hpp | 0 | 4 | 0.0% | ||
src/io/PrintUtilities.cpp | 0 | 11 | 0.0% | ||
src/trainer/NNTrainer.cpp | 93 | 110 | 84.55% | ||
src/network/FeedForwardNeuralNetwork.cpp | 67 | 88 | 76.14% | ||
src/trainer/NNTrainerGSL.cpp | 232 | 253 | 91.7% | ||
<!-- | Total: | 706 | 788 | 89.59% | --> |
Totals | |
---|---|
Change from base Build 96: | 83.6% |
Covered Lines: | 1641 |
Relevant Lines: | 1963 |
This PR contains a NN training system, the updated smart beta generator and a cleanup of directory structure and scripts. Also contains 3 new unittests for the new code (including your smart beta unittest) and an example for the trainer. In total we have the following new classes/files: NNTrainingData, NNTrainingConfig, NNTrainer, NNTrainerGSL, GSLFitStruct, SmartBetaGenerator.
Besides the directory/script changes, everything should be well explained by respective doc sections, slack communication and similar.
Directory/script changes:
EDIT: Obviously the whole build/include management is becoming increasingly complex. I think it is time to make the transition to an autotools-based build (i.e. ./configure && make). But this will be added in a later PR.
EDIT2: In the meantime, further significant changes have been introduced with this PR: 1) Even faster ray implementation
I did another overhaul of the feeder implementation (especially the isBetaUsed problem) and think we have now reached a really clean and reasonable final version (and another 30% performance boost).
2) Betas vs. Variational Parameters