Index: branches/apertium-tagger/experiments/grid_search.py =================================================================== --- branches/apertium-tagger/experiments/grid_search.py (revision 72267) +++ branches/apertium-tagger/experiments/grid_search.py (revision 72268) @@ -37,11 +37,10 @@ def print_best(results, print=print): - for (idx, crit) in [(0, 'mean'), (1, 'max')]: - best = sorted(results.items(), key=lambda x: x[1][0]) - print("Best by " + crit) + best = sorted(results.items(), key=lambda x: x[1], reverse=True) + print("Best by mean:") for x in best: - print("{}: {}".format(x[0], x[1][0])) + print("{}: {}".format(x[0], x[1])) def run_search(args): @@ -91,12 +90,12 @@ while mtx_queue: # Dequeue and run - cur_mtx, removed_feats, delim, best_mean, best_max = mtx_queue.pop(0) + cur_mtx, removed_feats, delim, best_mean = mtx_queue.pop(0) spec[1]['mtx'] = kvspec['mtx'] = cur_mtx exp_results = percep_experiment(lab, *lspec, spec=spec, **kvspec) r_min, r_max, r_mean, r_stddev = exp_results[1] - if r_mean >= best_mean or r_max >= best_max: - results[cur_mtx] = (r_mean, r_max) + if r_mean > best_mean: + results[cur_mtx] = r_mean # Enqueue more for remove_i in range(delim, orig_num_feats): @@ -108,8 +107,10 @@ print(mtx_fn(new_mtx)) trimmed_tree.write(mtx_fn(new_mtx), method='html') mtx_queue.append(( - new_mtx, removed_feats + (remove_i,), remove_i + 1, - max(r_mean, best_mean), max(r_max, best_max))) + new_mtx, + removed_feats + (remove_i,), + remove_i + 1, + max(r_mean, best_mean))) print_best(results, print=print_both)