def tune_rx_dforest()

in Python/step3_training_evaluation.py [0:0]


def tune_rx_dforest(formula, data, n_tree_list, cp_list, cc):
    print("Tuning rx_dforest")
    best_error = sys.maxsize
    best_model = None
    for nt in n_tree_list:
        for cp in cp_list:
            model = rx_dforest(formula=formula,
                               data=data,
                               n_tree=nt,
                               cp=cp,
                               min_split=int(sqrt(num_rows)),
                               max_num_bins=int(sqrt(num_rows)),
                               seed=5,
                               compute_context=cc)
            error = model.oob_err['oob.err'][model.ntree - 1]
            print("OOB Error: {} \t n_tree: {} \t cp: {}".format(error, nt, cp))
            if error < best_error:
                best_error = error
                best_model = model
    return best_model