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.
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