• numpy交叉验证集的简单构建


    num_folds = 5
    k_choices = [1, 3, 5, 8, 10, 12, 15, 20, 50, 100]
    # k_choices = [1, 5]
    
    x_train_folds = []
    y_train_folds = []
    
    # x_train_folds = np.array(np.split(x_train, num_folds))
    # y_train_folds = np.array(np.split(y_train, num_folds))
    x_train_folds = np.array(np.split(x_test, num_folds))
    y_train_folds = np.array(np.split(y_test, num_folds))
    
    k_to_accuracies = {}
    for k in k_choices:
        curr_acc = []
        for i in np.arange(num_folds):
            indx = np.array([j for j in range(num_folds) if j != i])
            X_test_n = x_train_folds[i]
            y_test_n = y_train_folds[i].reshape(-1,)
            x_train_folds[indx]
            x_train_n = np.concatenate(x_train_folds[indx], axis=0)
            y_train_n = np.concatenate(y_train_folds[indx], axis=None)
    
            classifier = KNearestNeighbor()
            classifier.train(x_train_n, y_train_n)
            dists = classifier.compute_distances_two_loops(X_test_n)
            y_test_n_pred = classifier.predict_labels(dists, k)
            num_correct = np.sum(y_test_n_pred == y_test_n)
            accuracy = float(num_correct) / len(y_test_n)
            curr_acc.append(accuracy)
        k_to_accuracies[k] = curr_acc
  • 相关阅读:
    web前端防治重复提交
    layabox笔记
    fixfff
    laybax
    小游戏初始化,资源加载异常处理,黑屏处理
    微信小游戏资源加载页与云存储
    前端唠嗑
    css 的一些样式笔记
    小游戏虚拟手柄
    VUE最佳实践
  • 原文地址:https://www.cnblogs.com/cxhzy/p/15597523.html
Copyright © 2020-2023  润新知