tuning_duration (faber_tweann v2.4.0)
View SourceTuning duration: how many memetic attempts an agent gets per evaluation.
A larger, recently-grown network has more weights to tune and deserves more hill-climbing attempts; a small stable one needs few. DXNN computes this per agent rather than fixing it. faber-tweann previously hardcoded a constant (15, then 60), which over-tunes small networks and under-tunes large ones (insight 013).
Ported from Gene Sher's DXNN2 (Handbook Ch 8).
Summary
Functions
A fixed number of attempts, ignoring the network.
Dispatch by strategy name. Unknown strategy falls back to a constant of the given parameter.
Attempts proportional to the weight count of recently-changed neurons.
Functions
-spec const(pos_integer(), [term()], non_neg_integer()) -> pos_integer().
A fixed number of attempts, ignoring the network.
-spec duration(atom(), term(), [term()], non_neg_integer()) -> pos_integer().
Dispatch by strategy name. Unknown strategy falls back to a constant of the given parameter.
-spec wsize_proportional(number(), [term()], non_neg_integer()) -> pos_integer().
Attempts proportional to the weight count of recently-changed neurons.
10 + saturate(round(RecentWeightCount ^ Power), 0, 100), so between 10 and 110 attempts. Power near 0.5 keeps it modest. Neurons unchanged in the last three generations do not count: their weights are assumed already tuned.