def test_alpha(number_of_users):
    res = []
    nums = [i for i in range(81) if i > 5 and i % 2 == 0]
    members, sm_cf, sm_cb, member_to_num, m = pickle_files_for_cv_test()
    users = get_users(members, number_of_users, nums)
    auc_res = {}
    alpha = [i / 60 for i in range(61)]
    for a in alpha:
        auc_res[a] = 0
    start = mktime(localtime())
    for u in users:
        res_cv = cv(u, 2, sm_cf, sm_cb, member_to_num, m)
        for tr, res_cf, res_cb in res_cv:
            for a in alpha:
                pre, rec, _ = precision_recall_curve(tr, (res_cf * a + (1 - a) * res_cb))
                auc_value = auc(rec, pre)
                auc_res[a] += auc_value
    for a in alpha:
        auc_res[a] /= (2 * users.__len__())
    print(mktime(localtime()) - start)
    y = np.zeros(alpha.__len__())
    for i, a in enumerate(alpha):
        y[i] = auc_res[a]
    print('Ready!')
    return alpha, y
def all_test():
    res = test_alpha(1500)
    dump('pickle_files/test_alpha.p', res)
    gc.collect()
    members, sm_cf, sm_cb, member_to_num, m = pickle_files_for_cv_test()
    start = mktime(localtime())
    res_pre_rec = test(1500, members, sm_cf, sm_cb, member_to_num, m, 0.8, 'pre')
    print(mktime(localtime()) - start)
    gc.collect()
    dump('pickle_files/test_pre_rec.p', res_pre_rec)
    del res_pre_rec
    start = mktime(localtime())
    gc.collect()
    res_roc = test(1500, members, sm_cf, sm_cb, member_to_num, m, 0.8, 'ROC')
    print(mktime(localtime()) - start)
    dump('pickle_files/test_roc.p', res_roc)
    return res_pre_rec