def evaluate_goodness_of_fit(ann, target_patterns): sum_g = 0. assert isinstance(ann, NeocorticalNetwork) # recall for pattern in target_patterns: _, output = ann.get_IO(pattern[0]) sum_g += Tools.get_pattern_correlation(pattern[1], output) return sum_g / float(len(target_patterns)) # returns the goodness of fit
def evaluate_ann_with_bipolar_output(ann, set_size): print "Evaluating the ANN-object.." sum_corr = 0. corr_ctr = 0. neocortically_recalled_pairs = [] for [target_in, target_out] in training_patterns_associative[:5*set_size]: obtained_in, obtained_out = ann.get_IO(target_in) sum_corr += Tools.get_pattern_correlation(target_out, Tools.get_bipolar_in_out_values(obtained_out)) corr_ctr += 1 neocortically_recalled_pairs.append([obtained_in, obtained_out]) g = sum_corr / corr_ctr goodness_str = "goodness of fit, g=" + "{:6.4f}".format(g) print goodness_str