关于数据集神马的,请直接参考:http://blog.csdn.net/wangyuquanliuli/article/details/11606435
这里直接给出KNN matlab的实现
trainImages = loadMNISTImages('train-images.idx3-ubyte');
trainLabels = loadMNISTLabels('train-labels.idx1-ubyte');
N = 784;
K = 100;% can be any other value
testImages = loadMNISTImages('t10k-images.idx3-ubyte');
testLabels = loadMNISTLabels('t10k-labels.idx1-ubyte');
trainLength = length(trainImages);
testLength = length(testImages);
testResults = linspace(0,0,length(testImages));
compLabel = linspace(0,0,K);
tic;
for i=1:testLength
curImage = repmat(testImages(:,i),1,trainLength);
curImage = abs(trainImages-curImage);
comp=sum(curImage);
[sortedComp,ind] = sort(comp);