Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import ipdb
- import numpy as np
- import matplotlib.pyplot as plt
- from sklearn.neural_network import MLPClassifier
- from sklearn.metrics import accuracy_score
- from sklearn.preprocessing import OneHotEncoder, MinMaxScaler, StandardScaler
- from sklearn import datasets
- from sklearn.model_selection import train_test_split
- data = datasets.load_iris()
- X = data['data']
- Y = data['target']
- # use and the scaled input the encoded output
- enc = OneHotEncoder()
- Y_enc = enc.fit_transform(Y[:, np.newaxis]).toarray()
- Y = Y_enc
- scaler = MinMaxScaler()
- X_scaled = scaler.fit_transform(X)
- X = X_scaled
- X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.3, random_state=0)
- clf = MLPClassifier(solver='sgd', hidden_layer_sizes=(13,10),
- activation='tanh',
- learning_rate='constant',
- learning_rate_init=0.2,
- momentum=0,
- random_state=0)
- clf.fit(X_train, Y_train)
- predictedY_train = clf.predict(X_train)
- accuracy_train = accuracy_score(Y_train, predictedY_train)
- #similar a clf.score(X,Y)
- predictedY_test = clf.predict(X_test)
- accuracy_test = accuracy_score(Y_test, predictedY_test)
- print("Accuracy for train set is: %f" %accuracy_train)
- print("Accuracy for test set is: %f" %accuracy_test)
- # visualizar os pesos
- #print("Coefficients: %s" %clf.coefs_)
- # Cada elemento i da lista representa a matriz de coeficientes da camada correspondente
- # em cada elemento, cada linha é referente a uma entrada,
- # cada coluna é referente a um neurônio da camada
- # visualizar o número de iterações rodadas
- print("Number of iterations: %d" %clf.n_iter_)
- #for i,x in enumerate(X):
- # print("Input: %s \t Output: %s" %(x,clf.predict([x])[0]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement