Advertisement
toweber

simple_neural_network_mlp_sklearn_class_iteractive

Mar 26th, 2021 (edited)
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.30 KB | None | 0 0
  1. import os
  2. import ipdb
  3. import numpy as np
  4. import matplotlib.pyplot as plt
  5. from sklearn.neural_network import MLPClassifier
  6. from sklearn.metrics import accuracy_score
  7.  
  8.  
  9.  
  10. #usar valores de 0 a 1, ou de -1 a 1
  11. X = [[0, 0], [0, 1], [1, 0], [1, 1]]
  12. Y = [0, 1, 1, 0]
  13.  
  14.  
  15. clf = MLPClassifier(solver='sgd', hidden_layer_sizes=(5),
  16.                     activation='tanh',
  17.                     learning_rate='constant',
  18.                     learning_rate_init=0.2,
  19.                     momentum=0,
  20.                     max_iter=1,
  21.                     warm_start=True,
  22.                     random_state=0)
  23.  
  24. for i in range(100):
  25.     clf.fit(X, Y)
  26.     predictedY = clf.predict(X)
  27.     accuracy = accuracy_score(Y, predictedY)
  28.     print('epoch: %i  \t accuracy: %f' %(i,accuracy))
  29.  
  30.  
  31. #similar a clf.score(X,Y)
  32.  
  33. print("Exatidão: %f" %accuracy)
  34.  
  35. # visualizar os pesos
  36. print("Coeficientes: %s" %clf.coefs_)
  37. #  Cada elemento i da lista representa a matriz de coeficientes da camada correspondente
  38. #  em cada elemento, cada linha é referente a uma entrada,
  39. #                    cada coluna é referente a um neurônio da camada
  40.  
  41. # visualizar o número de iterações rodadas
  42. print("Número de iterações: %d" %clf.n_iter_)
  43.  
  44. for i,x in enumerate(X):
  45.     print("Entrada: %s \t Saída: %s" %(x,clf.predict([x])[0]))
  46.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement