Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 1 addition & 6 deletions examm/examm.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -251,13 +251,8 @@ bool EXAMM::insert_genome(RNN_Genome* genome) {

// write this genome to disk if it was a new best found genome
if (save_genome_option.compare("all_best_genomes") == 0) {
Log::info("save genome option compared, save genome option size: %d!\n", save_genome_option.size());
for (int i = 0; i < 20 && i < save_genome_option.size(); i++) {
cout << "save_genome_option[" << i << "]: " << save_genome_option[i] << endl;
}

if (insert_position == 0) {
Log::info("saving genome!");
Log::info("saving genome because saving genome option is 'all_best_genomes'!");
save_genome(genome, "rnn_genome");
Log::info("saved genome!");
}
Expand Down
4 changes: 3 additions & 1 deletion rnn_examples/evaluate_rnn.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -46,12 +46,14 @@ int main(int argc, char** argv) {
TimeSeriesSets* time_series_sets = TimeSeriesSets::generate_test(
testing_filenames, genome->get_input_parameter_names(), genome->get_output_parameter_names()
);
Log::debug("got time series sets.\n");
Log::info("got time series sets.\n");

string normalize_type = genome->get_normalize_type();
if (normalize_type.compare("min_max") == 0) {
Log::info("normalizing min max\n");
time_series_sets->normalize_min_max(genome->get_normalize_mins(), genome->get_normalize_maxs());
} else if (normalize_type.compare("avg_std_dev") == 0) {
Log::info("normalizing with z-score\n");
time_series_sets->normalize_avg_std_dev(
genome->get_normalize_avgs(), genome->get_normalize_std_devs(), genome->get_normalize_mins(),
genome->get_normalize_maxs()
Expand Down
45 changes: 18 additions & 27 deletions time_series/time_series.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -132,20 +132,6 @@ void TimeSeries::normalize_min_max(double min, double max) {
);

for (int32_t i = 0; i < (int32_t) values.size(); i++) {
if (values[i] < min) {
Log::warning(
"normalizing series %s, value[%d] %lf was less than min for normalization: %lf\n", name.c_str(), i,
values[i], min
);
}

if (values[i] > max) {
Log::warning(
"normalizing series %s, value[%d] %lf was greater than max for normalization: %lf\n", name.c_str(), i,
values[i], max
);
}

values[i] = (values[i] - min) / (max - min);
}
}
Expand Down Expand Up @@ -939,16 +925,18 @@ void TimeSeriesSets::normalize_min_max() {
Log::info("user specified bounds for ");

} else {
for (int32_t j = 0; j < (int32_t) time_series.size(); j++) {
double current_min = time_series[j]->get_min(parameter_name);
double current_max = time_series[j]->get_max(parameter_name);
for (int32_t j = 0; j < (int32_t) training_indexes.size(); j++) {
int32_t train_index = training_indexes[j];
double current_min = time_series[train_index]->get_min(parameter_name);
double current_max = time_series[train_index]->get_max(parameter_name);

if (current_min < min) {
min = current_min;
}
if (current_max > max) {
max = current_max;
}
Log::debug("Training file: %d, min: %lf, max: %lf\n", train_index, current_min, current_max);
}

normalize_mins[parameter_name] = min;
Expand Down Expand Up @@ -1030,20 +1018,22 @@ void TimeSeriesSets::normalize_avg_std_dev() {
double numerator_average = 0.0;
long total_values = 0;

for (int32_t j = 0; j < (int32_t) time_series.size(); j++) {
int32_t n_values = time_series[j]->get_number_rows();
numerator_average += time_series[j]->get_average(parameter_name) * n_values;
for (int32_t j = 0; j < (int32_t) training_indexes.size(); j++) {
int32_t train_index = training_indexes[j];
int32_t n_values = time_series[train_index]->get_number_rows();
numerator_average += time_series[train_index]->get_average(parameter_name) * n_values;
total_values += n_values;

double current_min = time_series[j]->get_min(parameter_name);
double current_max = time_series[j]->get_max(parameter_name);
double current_min = time_series[train_index]->get_min(parameter_name);
double current_max = time_series[train_index]->get_max(parameter_name);

if (current_min < min) {
min = current_min;
}
if (current_max > max) {
max = current_max;
}
Log::debug("Training file: %d, min: %lf, max: %lf\n", train_index, current_min, current_max);
}

normalize_mins[parameter_name] = min;
Expand All @@ -1053,12 +1043,13 @@ void TimeSeriesSets::normalize_avg_std_dev() {

double numerator_std_dev = 0.0;
// get the Bessel-corrected (n-1 denominator) combined standard deviation
for (int32_t j = 0; j < (int32_t) time_series.size(); j++) {
int32_t n_values = time_series[j]->get_number_rows();
for (int32_t j = 0; j < (int32_t) training_indexes.size(); j++) {
int32_t train_index = training_indexes[j];
int32_t n_values = time_series[train_index]->get_number_rows();

double avg_diff = time_series[j]->get_average(parameter_name) - avg;
numerator_std_dev +=
((n_values - 1) * time_series[j]->get_variance(parameter_name)) + (n_values * avg_diff * avg_diff);
double avg_diff = time_series[train_index]->get_average(parameter_name) - avg;
numerator_std_dev += ((n_values - 1) * time_series[train_index]->get_variance(parameter_name))
+ (n_values * avg_diff * avg_diff);
}

std_dev = numerator_std_dev / (total_values - 1);
Expand Down