Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import numpy as np
- from sklearn.linear_model import LogisticRegression
- from keras.datasets import fashion_mnist
- from sklearn.metrics import accuracy_score
- from sklearn.metrics import confusion_matrix
- import seaborn as sns;
- (x_train, y_train), (x_test, y_test) = fashion_mnist.load_data()
- x_train = x_train[len(x_train)-1000:]
- y_train = y_train[len(y_train)-1000:]
- x_test = x_test[len(x_test)-1000:]
- y_test = y_test[len(y_test)-1000:]
- images_train = []
- for image_train in x_train:
- images_train.append(image_train.flatten())
- images_test = []
- for image_test in x_test:
- images_test.append(image_test.flatten())
- images_train = np.array(images_train)
- images_test = np.array(images_test)
- print(len(x_test))
- print("Starting grid search\n")
- from sklearn.model_selection import GridSearchCV
- from sklearn.neural_network import MLPClassifier
- parameters = {'solver': ['sgd'], 'max_iter': [1000], \
- 'hidden_layer_sizes': [(15,10,5), (30, 20, 10,)], \
- 'random_state': [1], 'tol': [1e-7], 'batch_size': [20], 'shuffle': [True, False], \
- 'momentum': [0.95], 'activation': ['logistic'], 'alpha': [1e-5]}
- grid_search = GridSearchCV(MLPClassifier(), parameters, n_jobs=-1, verbose=1, cv=2)
- grid_search.fit(images_train, y_train)
- print(grid_search.score(images_test, y_test))
- print(grid_search.best_params_)
- print("Starting MLPClassifier\n")
- neural_network = MLPClassifier(hidden_layer_sizes=(30,20,10),random_state=1)
- neural_network.fit(images_train, y_train)
- #neural_network.fit(preprocessing.StandardScaler().fit_transform(images_train), y_train)
- conf_matrix_neural_network = confusion_matrix(y_test, \
- neural_network.predict(images_test))
- #print("Confusion_matrix:")
- #print(conf_matrix_neural_network)
- sns.heatmap(conf_matrix_neural_network)
- acc = accuracy_score(y_test, neural_network.predict(images_test))
- print("Neural network model accuracy is {0:0.2f}".format(acc))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement