from sklearn import datasets, svm, metrics, cross_validation from matplotlib import pyplot as pl import numpy as np import pickle %matplotlib inline %run util.py digitos = datasets.load_digits() digitos.data.shape digitos.data[5] show_digits_plots(digitos, 0, 9) show_digits(digitos, 0, 9) X_train, X_test, y_train, y_test = cross_validation.train_test_split(digitos.data, digitos.target, test_size=.4) model = svm.SVC(gamma=0.001, C=100.0) model.fit(X_train, y_train) pickle.dump(model, open('model', 'w')) y_predito = model.predict(X_test) print metrics.classification_report(y_test, y_predito) cm = metrics.confusion_matrix(y_test, y_predito) cms = np.zeros((11, 11)) cms[0, :] = np.arange(-1, 10, 1) cms[:, 0] = np.arange(-1, 10, 1).reshape((11,)) cms[1:, 1:] = cm print cms show_confusion_matrix(cm)