%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % This is a testing code % For Machine Learning Homework 4 Problem 3 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Load data knnData = load('knn.data'); % X contains feature for each point % 256 features for each point X = knnData(:, 2:end); % Y contains labeling for each point % Positive class as 1; Negative class as 0 Y = knnData(:, 1); % Initialize the kArray2Try array kArray2Try = [1:1:25]'; % Test knn_train_test function [ TestsetErrorRate, TrainsetErrorRate ] = knn_train_test( kArray2Try, X, Y ); % Test knn_cv function numCVFolds = 10; cvErrorRate = knn_cv( kArray2Try, X, Y, numCVFolds ); % Test knn_cv function LoocvErrorRate = knn_loocv( kArray2Try, X, Y ); % Draw above curves together to compare plot(kArray2Try, TrainsetErrorRate, '-o'); hold on; plot(kArray2Try, TestsetErrorRate, ':^'); plot(kArray2Try, cvErrorRate, ':s'); plot(kArray2Try, LoocvErrorRate, '-+'); legend('train error', 'test error', 'cv error', 'loocv error');