You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

premier_reseau.py 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Wed Nov 10 10:30:04 2021
  4. @author: virgi
  5. """
  6. import numpy as np
  7. import math as ma
  8. import matplotlib.pyplot as plt
  9. import tensorflow as tf
  10. tmin=-20
  11. tmax=5
  12. n=100000
  13. X,Y=creation_sin(tmin,tmax,n,1,a=1,c=0)
  14. tmin=5
  15. tmax=20
  16. Xv,Yv=creation_sin(tmin,tmax,n,1,a=1,c=0)
  17. model = tf.keras.models.Sequential()
  18. model.add(tf.keras.Input(shape=(1,)))
  19. # une première couche avec deux neurones (couche cachée) avec la fonction sigmoid comme fonction d'activation
  20. model.add(tf.keras.layers.Dense(64, activation='relu'))
  21. model.add(tf.keras.layers.Dense(64, activation='relu'))
  22. model.add(tf.keras.layers.Dense(64, activation='relu'))
  23. model.add(tf.keras.layers.Dense(64, activation='relu'))
  24. model.add(tf.keras.layers.Dense(128, activation='relu'))
  25. # une deuxième couche avec un neurones (couche de sortie) avec la fonction sigmoid comme fonction d'activation
  26. model.add(tf.keras.layers.Dense(1))
  27. # Choix de la méthode d'optimisation
  28. opti=tf.keras.optimizers.Adam()
  29. # Compilation du graphe et choix de la fonction de coût
  30. model.compile(opti, loss='mse', metrics=['accuracy'])
  31. model.summary()
  32. model.fit(X, Y, batch_size=32, epochs=2, shuffle='True',validation_data=(Xv, Yv))
  33. Y_predis=model.predict(X)
  34. Y_predis_validation=model.predict(Xv)
  35. plt.figure()
  36. plt.plot(X,Y,label='donnée')
  37. plt.plot(Xv,Yv,label="validation")
  38. plt.plot(X,Y_predis,label='prediction sur les donné')
  39. plt.plot(Xv,Y_predis_validation,label='prediction sur la validation')
  40. plt.legend()
  41. plt.show()