* Normalisierung des MNIST Datensatz vor dem Einlesen zur Optimierung des Algorithmus import numpy as np import scipy.io mat=scipy.io.loadmat('/[…]/[…]/scikit_learn_data/mldata/mnist-original.mat') data=mat['data'] label=mat['label'] for i in range(data.shape[1]): data[:,i]= data[:,i]/np.linalg.norm(data[:,i]) scipy.io.savemat('/[…]/[…]/scikit_learn_data/mldata/mnist-original-norm.mat', mdict={'data':data, 'label':label}) Die Normalisierung des MNIST Datensatz vor dem Einlesen funktioniert so noch nicht. Die Daten unterscheiden sich komplett von der Norm der "originalen" Daten. * Vergleichsdatensatz import numpy as np import scipy.io mat=scipy.io.loadmat('/[…]/[…]/scikit_learn_data/mldata/mnist-original.mat') matnorm=scipy.io.loadmat('/[…]/[…]/scikit_learn_data/mldata/mnist-original-norm.mat') matd=mat['data'] matnd=matnorm['data'] for i in range(70000): orignialNorm=matd[:,i]/np.linalg.norm(matd[:,i]) abstand=np.linalg.norm(orignialNorm-matnd[:,i]) print abstand * Ausgabe der Genauigkeit des k-nearest-Neighbor-Algorithmus * Präsentation des jetzigen Standes