Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Drhuffman12/add team utils part 7 redo (#63)
* update command line for example re 'spec_bench/ai4cr/neural_network/rnn/rnn_simple_manager_spec.cr' * drhuffman12/add_team_utils_part_7_redo 'src' changes re clone vs to/from json * drhuffman12/add_team_utils_part_7_redo 'spec' and 'spec_bench' changes re clone vs to/from json, etc * drhuffman12/add_team_utils_part_7_redo formatting * drhuffman12/add_team_utils_part_7_redo log less often * drhuffman12/add_team_utils_part_7_redo log more often * drhuffman12/add_team_utils_part_7_redo add name suffix re breed type * drhuffman12/add_team_utils_part_7_redo formatting * drhuffman12/add_team_utils_part_7_redo round the comparative 'when_delta' times * drhuffman12/add_team_utils_part_7_redo pend a 'chain' spec (for now) * drhuffman12/add_team_utils_part_7_redo TODO: Refactor and enable breeding (similar to RnnSimple)! (and adjust specs) * drhuffman12/add_team_utils_part_7_redo enable tests re w/ more time col's and additional io files combo's * drhuffman12/add_team_utils_part_7_redo adjust propagation_function to handle NAN and Infinity; TODO: review andlikewise for other prop func cases * drhuffman12/add_team_utils_part_7_redo formatting * drhuffman12/add_team_utils_part_7_redo more NAN handling for 'Cmn::MiniNetConcerns::CalcGuess#propagation_function'; ameba-ize * drhuffman12/add_team_utils_part_7_redo misc tweeks * drhuffman12/add_team_utils_part_7_redo add 'purge_replace' helper * drhuffman12/add_team_utils_part_7_redo formatting * drhuffman12/add_team_utils_part_7_redo only show purge comment if members were purged * drhuffman12/add_team_utils_part_7_redo update test data file path * drhuffman12/add_team_utils_part_7_redo bench tests: revert from tiny hidden size to auto-calc'd, skip team sizes of 1 and 2 members for more complex RNN nets/data; re-org 'train_team_using_sequence'; start RELU net weights tiny; step_update_weights as serial instead of parallel; comment out 'purge_error_limit' code; formatting * drhuffman12/add_team_utils_part_7_redo re-enable purging/replacing members; re-enable 'traing_qty' * drhuffman12/add_team_utils_part_7_redo formatting * drhuffman12/add_team_utils_part_7_redo re-enable 'purge_error_limit' params for 'train_team_using_sequence(..)' * drhuffman12/add_team_utils_part_7_redo rename to 'infinite?' * drhuffman12/add_team_utils_part_7_redo members added during purge get named 'P' * drhuffman12/add_team_utils_part_7_redo use 'score' in the purge * move 'train_qty' so as to affect all tests under "when using a text file as io data" * drhuffman12/add_team_utils_part_7_redo move 'train_qty' so as to affect all tests under "when using a text file as io data" * drhuffman12/add_team_utils_part_7_redo adjust the purge process * drhuffman12/add_team_utils_part_7_redo switch back to using 'score' instead of 'distance' for purging * drhuffman12/add_team_utils_part_7_redo re-enable team of 8 in benches * drhuffman12/add_team_utils_part_7_redo add a hidden layer for the rnn text spec * drhuffman12/add_team_utils_part_7_redo bump up to 16 tc's and 4 hl's * drhuffman12/add_team_utils_part_7_redo bump down to 8 tc's and 4 hl's * drhuffman12/add_team_utils_part_7_redo in 'purge_replace', breed purged member with rand_excluding new membere so we retain some of the training * drhuffman12/add_team_utils_part_7_redo move expect's next to each other * drhuffman12/add_team_utils_part_7_redo note 'inputs_sequence' index 'i' in purge output * drhuffman12/add_team_utils_part_7_redo add 'weight_init_scale*' and auto-scale it; convert some 'TextFile' methods to class methods; add example unicode text file; large vs small RNN size test params; add text output of expected vs actual guesses * drhuffman12/add_team_utils_part_7_redo output formatting * drhuffman12/add_team_utils_part_7_redo adjust outputs and for a 'mid-sized rnn' * drhuffman12/add_team_utils_part_7_redo output should handle less than 32 bits * drhuffman12/add_team_utils_part_7_redo misc tweeks; bump 1st textfile team size up to 10 * drhuffman12/add_team_utils_part_7_redo adjust rnn params; add and revert auto_shrink_weights * drhuffman12/add_team_utils_part_7_redo add timestamp * drhuffman12/add_team_utils_part_7_redo update shards * drhuffman12/add_team_utils_part_7_redo update shards, ameba formatting * drhuffman12/add_team_utils_part_7_redo ameba formatting * drhuffman12 misc cleanup re Crystal v1.0 and other updated shards * drhuffman12 add 'default_to_bit_size' e.g.: to allow forcing from 32bit utf down to 8bit ascii (ignoring higher bits) * drhuffman12 adjust bench params and update README.md * drhuffman12 try 4 hidden layers * drhuffman12 spec_bench w/ 3 hidden layers; TODO: Replace(?)/Supplement(?) below with actual UTF-to-ASCII conversion! (And ASCII-to-UTF reversion) * drhuffman12 tweek bench params * drhuffman12 attempts to get better and quicker RNN results and improved visuals of result progress * drhuffman12/add_team_utils_part_7_redo add system monitoring data to the 'tmp/log.txt' file; formatting * drhuffman12 adjust mem logging; formatting * drhuffman12 add histogram of correct chars * drhuffman12 formatting * drhuffman12 trim logging * drhuffman12 round percentages * drhuffman12 adjust histograms * drhuffman12 adjust histograms * drhuffman12 adjust histograms * drhuffman12 adjust histograms * drhuffman12 reset histograms * drhuffman12 rename 'all_hists' to 'recent_hists' * drhuffman12 set default_to_bit_size to 8 for 'examples/rnn_simple_manager_example.cr * drhuffman12 add second round of training (hopefully will all be 6/6 correct) for whole set of io's in 'examples/rnn_simple_manager_example.cr * drhuffman12 add current time to logging * drhuffman12 add auto-save option to manager * drhuffman12 code cleanup * drhuffman12 formatting * drhuffman12 formatting * drhuffman12 fix 'validate! re hidden_size_given; note re 'implement bi-directional RNN in the next phase' * drhuffman12 Drop 'PURGE_ERROR_LIMIT_SCALE' from 1e12 to 1e4 (to keep weights and guesses from going extreme). * drhuffman12 revert 'INPUT_SIZE_MIN' to '2' with TODO comment * drhuffman12 better error handling for auto-saving the trained nets * drhuffman12 adjust naming for auto-save of nets to show which guesses are correct
- Loading branch information