Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- k_to_accuracies = {}
- classifier = KNearestNeighbor()
- for k in k_choices:
- print k
- acc=np.zeros(num_folds)
- for i, fold in enumerate(range(num_folds)):
- X_tests=X_train_folds[fold]
- y_tests=y_train_folds[fold]
- if fold == 0:
- X_trains=X_train_folds[1]
- y_trains=y_train_folds[1]
- else:
- X_trains=X_train_folds[0]
- y_trains=y_train_folds[0]
- for train in range(num_folds-1):
- if train+1 != fold:
- X_trains=np.concatenate((X_trains, X_train_folds[train+1]))
- y_trains=np.concatenate((y_trains, y_train_folds[train+1]))
- classifier.train(X_trains, y_trains)
- dists = classifier.compute_distances_no_loops(X_tests)
- y_test_pred = classifier.predict_labels(dists, k=5)
- num_correct = np.sum(y_test_pred == y_tests)
- acc[i] = float(num_correct) / 1000
- k_to_accuracies[k]=acc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement