Professional Documents
Culture Documents
Capture D'écran . 2023-05-15 À 16.45.57
Capture D'écran . 2023-05-15 À 16.45.57
MachineLearnia /
Deep-Learning-Youtube Public
main
Deep-Learning-Youtube /
Tensorflow_MNIST_pour_débutants.ipynb
1 contributor
Open in Colab
Tensorflow
MNIST pour
débutants
Ce Notebook permet aux
débutants d'apprendre à
développer un premier
modèle de classification sur
le dataset MNIST, en
utilisant l'API Keras.
1. Chargement
des données et
Normalisation
In [ ]: # Chargement des données MNIST
(X_train, y_train) , (X_test, y
print('trainset:', X_train.shap
print('testset:', X_test.shape)
2. Visualisation
des données
In [ ]: # visualisation de quelques ima
fig, ax = plt.subplots(nrows=1,
for i in range(10):
ax[i].imshow(X_train[i], cmap
plt.tight_layout()
plt.show()
3. Configuration
des Couches du
Réseau de
Neurones
In [ ]: # Configuration des couches du
model = keras.Sequential([
keras.layers.Flatten(input_
keras.layers.Dense(128, act
keras.layers.Dense(128, act
keras.layers.Dense(10)
])
4. Entrainement
du Réseau de
Neurones
In [ ]: # Compilation du modele
model.compile(optimizer='adam',
loss= keras.losse
metrics=['accurac
# Entrainement du modele
model.fit(X_train, y_train, epo
Epoch 1/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.4070 - accurac
y: 0.8833
Epoch 2/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.1002 - accurac
y: 0.9692
Epoch 3/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.0653 - accurac
y: 0.9781
Epoch 4/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.0468 - accurac
y: 0.9845
Epoch 5/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.0373 - accurac
y: 0.9872
Epoch 6/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.0310 - accurac
y: 0.9898
Epoch 7/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.0251 - accurac
y: 0.9916
Epoch 8/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.0245 - accurac
y: 0.9919
Epoch 9/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.0180 - accurac
y: 0.9940
Epoch 10/10
1875/1875 [================
==============] - 4s 2ms/st
ep - loss: 0.0155 - accurac
y: 0.9950
Out[ ]: <tensorflow.python.keras.c
allbacks.History at 0x7ff7
9086e7f0>
5. Évaluation du
réseau de
neurone sur les
données de Test
In [ ]: # Evaluation du modele
test_loss, test_acc = model.eva
print('Test accuracy:', test_ac
313/313 [==================
============] - 0s 1ms/step
- loss: 0.0843 - accuracy:
0.9797
Test accuracy: 0.9797000288
963318
6. Création d'un
modele prédictif
In [ ]: # modele prédictif (softmax)
prediction_model = keras.Sequen
predict_proba = prediction_mode
predictions = np.argmax(predict
print(predictions[:10])
print(y_test[:10])
[7 2 1 0 4 1 4 9 5 9]
[7 2 1 0 4 1 4 9 5 9]