1234567891011121314151617181920212223242526272829303132 |
- import matplotlib.pyplot as plt
- from sklearn.neural_network import MLPClassifier
- from sklearn.neighbors import KNeighborsClassifier
- from sklearn.svm import SVC
- from sklearn.model_selection import train_test_split
- from sklearn.model_selection import KFold
- from sklearn.metrics import precision_score
- from sklearn.metrics import confusion_matrix
- import random
- import time
- from sklearn.datasets import fetch_openml
-
- #mnist = fetch_openml('mnist_784')
-
- indices = [i for i in range(len(mnist.data))]
- random.shuffle(indices)
- indices = indices[:15000]
-
- data = [mnist.data.values[i] for i in indices]
- target = [mnist.target[i] for i in indices]
-
- classifiers = [KNeighborsClassifier(3), MLPClassifier(hidden_layer_sizes = (100,)), SVC()]
- xtrain, xtest, ytrain, ytest = train_test_split(data, target, train_size=0.7)
-
-
- for clf in classifiers:
- start = time.time()
- clf.fit(xtrain, ytrain)
- score = clf.score(xtest, ytest)
- end = time.time()
- print(f"training + evaluating time : {end - start}, score = {score}")
- print(confusion_matrix(ytest, clf.predict(xtest)))
|