Newer
Older
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"German Traffic Sign Recognition Benchmark (GTSRB)\n",
"=================================================\n",
"---\n",
"Introduction au Deep Learning (IDLE) - S. Aria, E. Maldonado, JL. Parouty - CNRS/SARI/DEVLOG - 2020\n",
"\n",
"## Episode 3 : Tracking and visualizing\n",
"\n",
"Our main steps:\n",
" - Monitoring and understanding our model training\n",
" - Analyze the results \n",
" - Improving our model\n",
" - Add recovery points\n",
"\n",
"\n",
"## 1/ Import and init"
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"IDLE 2020 - Practical Work Module\n",
" Version : 0.1.1\n",
" Matplotlib style : idle/talk.mplstyle\n",
" TensorFlow version : 2.0.0\n",
" Keras version : 2.2.4-tf\n"
]
}
],
"source": [
"import tensorflow as tf\n",
"from tensorflow import keras\n",
"from tensorflow.keras.callbacks import TensorBoard\n",
"\n",
"import numpy as np\n",
"import matplotlib\n",
"import matplotlib.pyplot as plt\n",
"import time\n",
"\n",
"import idle.pwk as ooo\n",
"\n",
"ooo.init()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 2/ Reload dataset\n",
"Dataset is one of the saved dataset: RGB25, RGB35, L25, L35, etc. \n",
"First of all, we're going to use the dataset : **L25** \n",
"(with a GPU, it only takes 35'' compared to more than 5' with a CPU !)"
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Dataset loaded, size=247.6 Mo\n",
"\n",
"CPU times: user 0 ns, sys: 344 ms, total: 344 ms\n",
"Wall time: 498 ms\n"
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
]
}
],
"source": [
"%%time\n",
"\n",
"dataset ='L25'\n",
"img_lx = 25\n",
"img_ly = 25\n",
"img_lz = 1\n",
"\n",
"# ---- Read dataset\n",
"x_train = np.load('./data/{}/x_train.npy'.format(dataset))\n",
"y_train = np.load('./data/{}/y_train.npy'.format(dataset))\n",
"\n",
"x_test = np.load('./data/{}/x_test.npy'.format(dataset))\n",
"y_test = np.load('./data/{}/y_test.npy'.format(dataset))\n",
"\n",
"# ---- Reshape data\n",
"x_train = x_train.reshape( x_train.shape[0], img_lx, img_ly, img_lz)\n",
"x_test = x_test.reshape( x_test.shape[0], img_lx, img_ly, img_lz)\n",
"\n",
"input_shape = (img_lx, img_ly, img_lz)\n",
"\n",
"print(\"Dataset loaded, size={:.1f} Mo\\n\".format(ooo.get_directory_size('./data/'+dataset)))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 3/ Have a look to the dataset\n",
"Note: Data must be reshape for matplotlib"
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"x_train : (39209, 25, 25, 1)\n",
"y_train : (39209,)\n",
"x_test : (12630, 25, 25, 1)\n",
"y_test : (12630,)\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x169.2 with 6 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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iIiGQdy8RkRERERERERENAzi5jUiIiIiIiIiIqJhEDevERERERERERERDYO4eY2IiIiIiIiIiGgYxM1rREREREREREREwyBuXiMiIiIiIiIiIhoGcfMaERERERERERHRMKg5PaxzruFTcXnvW4r+1uz1k5q/js1QP6n56xjHaXPXT2r+OjZD/aTmr2Mcp81bv8i8RkRERERERERENAxqZl7BKaecoqGhZDM/e/ZsSVJfX58kaXBwUJLU2prsidva2rTJJpuE/2ev6e/vlyT96U9/kiS9/PLLkqQnnnhCkjRt2rRh733ppZckSX/84x/Du5csWSJJ2mqrrSRJnZ2dw96x2WabSZK+9KUv1Vy/j3/84+E5vb29kqTu7u5h37Pg2hUrVgz7fPjhhyVJ1113nSTp2muvlSQ988wzkqRNN91UktTT0yNJ2n333SVJb3rTmyRJr3/963Pvohy2fOecc07N9ZOkCy+8MPyftlq/fr0kqaUlUXI6OjqG/V1K+5D+51pgf+c7YJxkn8dY4T0DAwOS8v3/gQ98oMbaSWeeeWa4n7ai7LbMg4ODmj59eu637L18ZwzS7pSdtuIdr7zySngWbcA7+M412c9zzz235jp+85vfDP+nTjNmzJAkzZo1S1I6xpYvXx7G5Wgo6rvxwIc//OFS17/zne8MbT1//nxJ+bHPdymde/zGfLF/B0XPZI6Czs7O8LdqMiCLH/zgB6PWC2T7kCNqOzcAACAASURBVDGELNt8880lSdttt50k6b777tP//d//Dbuffj7++OOHXUu/g9WrV0tK5xYyFBm85557aosttpAkPf/88+F9UirHbrvtNknSX//1X9dcPymRTYyprq4uSamMB8yjV155JdcXzCnmM2VfunSpJGndunWSpJkzZ0qS5syZM+w7fT5v3rxQXz633nprSdKTTz4pSVqzZo2kVFbXgm9961u53+zcyc4p5MBrX/taSdIee+wx7FrqS1/SH4888ogkae3atZJSWbp8+XJJ0uOPPz5MVo+GMnORdpLSvqKOVq4ODAzkymG/M26Zf9Tpz3/+c9X3887W1tbwLN5n5TnXMj5qxTe/+U21tyfbIeQGbW/R2dmpM844Q5J0+umnS0rlO89ArjPW6K93v/vdkqT//d//HfZM7uvs7Ax7Ida8z3zmM5LSsX/jjTdKKm6vovqNBbadAf2P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\n",
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
"text/plain": [
"<Figure size 864x291.6 with 36 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"print(\"x_train : \", x_train.shape)\n",
"print(\"y_train : \", y_train.shape)\n",
"print(\"x_test : \", x_test.shape)\n",
"print(\"y_test : \", y_test.shape)\n",
"\n",
"if img_lz>1:\n",
" ooo.plot_images(x_train.reshape(-1,img_lx,img_ly,img_lz), y_train, range(6), columns=3, x_size=4, y_size=3)\n",
" ooo.plot_images(x_train.reshape(-1,img_lx,img_ly,img_lz), y_train, range(36), columns=12, x_size=1, y_size=1)\n",
"else:\n",
" ooo.plot_images(x_train.reshape(-1,img_lx,img_ly), y_train, range(6), columns=6, x_size=2, y_size=2)\n",
" ooo.plot_images(x_train.reshape(-1,img_lx,img_ly), y_train, range(36), columns=12, x_size=1, y_size=1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 4/ Create model"
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": [
"num_classes = 43\n",
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"_________________________________________________________________\n",
"Layer (type) Output Shape Param # \n",
"=================================================================\n",
"conv2d (Conv2D) (None, 23, 23, 96) 960 \n",
"_________________________________________________________________\n",
"max_pooling2d (MaxPooling2D) (None, 11, 11, 96) 0 \n",
"_________________________________________________________________\n",
"_________________________________________________________________\n",
"_________________________________________________________________\n",
"_________________________________________________________________\n",
"_________________________________________________________________\n",
"_________________________________________________________________\n",
"dense_2 (Dense) (None, 500) 250500 \n",
"_________________________________________________________________\n",
"dense_3 (Dense) (None, 43) 21543 \n",
"=================================================================\n",
"Total params: 11,415,839\n",
"Trainable params: 11,415,839\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model = keras.models.Sequential()\n",
"model.add( keras.layers.Conv2D(96, (3,3), activation='relu', input_shape=(img_lx, img_ly, img_lz)))\n",
"model.add( keras.layers.MaxPooling2D((2, 2)))\n",
"model.add( keras.layers.Conv2D(192, (3, 3), activation='relu'))\n",
"model.add( keras.layers.MaxPooling2D((2, 2)))\n",
"model.add( keras.layers.Flatten()) \n",
"model.add( keras.layers.Dense(3072, activation='relu'))\n",
"model.add( keras.layers.Dense(500, activation='relu'))\n",
"model.add( keras.layers.Dense(500, activation='relu'))\n",
"model.add( keras.layers.Dense(43, activation='softmax'))\n",
"model.summary()\n",
"\n",
"model.compile(optimizer='adam',\n",
" loss='sparse_categorical_crossentropy',\n",
" metrics=['accuracy'])\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 5/ Add callbacks\n",
"Nous allons ajouter 2 callbacks : \n",
" - **TensorBoard** \n",
"Training logs, which can be visualised with Tensorboard. \n",
"`#tensorboard --logdir ./run/logs` \n",
"IMPORTANT : Relancer tensorboard à chaque run\n",
" - **model backup**"
"# ---- Callback tensorboard\n",
"log_dir = \"./run/logs/\" + ooo.tag_now()\n",
"tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=log_dir, histogram_freq=1)\n",
"\n",
"# ---- Callback ModelCheckpoint\n",
"save_dir = \"./run/models\"\n",
"checkpoint_callback = tf.keras.callbacks.ModelCheckpoint(filepath=save_dir, verbose=0, monitor='accuracy', save_best_only=True)"
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 5/ Run model"
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
"Train on 3000 samples, validate on 500 samples\n",
"Epoch 1/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 3.4893 - accuracy: 0.0676INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 8s 3ms/sample - loss: 3.4847 - accuracy: 0.0690 - val_loss: 3.2739 - val_accuracy: 0.1640\n",
"Epoch 2/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 2.4907 - accuracy: 0.3227INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 7s 2ms/sample - loss: 2.4802 - accuracy: 0.3250 - val_loss: 2.0143 - val_accuracy: 0.3900\n",
"Epoch 3/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 1.3810 - accuracy: 0.5591INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 7s 2ms/sample - loss: 1.3794 - accuracy: 0.5593 - val_loss: 1.3322 - val_accuracy: 0.6200\n",
"Epoch 4/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 0.8501 - accuracy: 0.7286INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 7s 2ms/sample - loss: 0.8426 - accuracy: 0.7323 - val_loss: 1.1705 - val_accuracy: 0.6580\n",
"Epoch 5/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 0.5132 - accuracy: 0.8400INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 8s 3ms/sample - loss: 0.5087 - accuracy: 0.8413 - val_loss: 0.9281 - val_accuracy: 0.7360\n",
"Epoch 6/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 0.3740 - accuracy: 0.8787INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 8s 3ms/sample - loss: 0.3763 - accuracy: 0.8783 - val_loss: 0.9252 - val_accuracy: 0.7520\n",
"Epoch 7/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 0.2671 - accuracy: 0.9141INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 8s 3ms/sample - loss: 0.2677 - accuracy: 0.9140 - val_loss: 0.8153 - val_accuracy: 0.8000\n",
"Epoch 8/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 0.1599 - accuracy: 0.9535INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 8s 3ms/sample - loss: 0.1588 - accuracy: 0.9543 - val_loss: 0.7000 - val_accuracy: 0.8500\n",
"Epoch 9/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 0.1282 - accuracy: 0.9626INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 8s 3ms/sample - loss: 0.1271 - accuracy: 0.9633 - val_loss: 0.7833 - val_accuracy: 0.8080\n",
"Epoch 10/10\n",
"2944/3000 [============================>.] - ETA: 0s - loss: 0.0979 - accuracy: 0.9715INFO:tensorflow:Assets written to: ./run/models/assets\n",
"3000/3000 [==============================] - 8s 3ms/sample - loss: 0.0971 - accuracy: 0.9720 - val_loss: 0.7634 - val_accuracy: 0.8420\n",
"CPU times: user 4min 26s, sys: 1min 31s, total: 5min 58s\n",
"Wall time: 1min 15s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"history = model.fit( x_train[:3000], y_train[:3000],\n",
" batch_size=batch_size,\n",
" epochs=epochs,\n",
" verbose=1,\n",
" validation_data=(x_test[:500], y_test[:500]),\n",
" callbacks=[tensorboard_callback, checkpoint_callback] )"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 6/ Evaluation"
]
},
{
"cell_type": "code",
"source": [
"score = model.evaluate(x_test, y_test, verbose=0)\n",
"\n",
"print('Test loss : {:5.4f}'.format(score[0]))\n",
"print('Test accuracy : {:5.4f}'.format(score[1]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 7/ History\n",
"The return of model.fit() returns us the learning history"
]
},
{
"cell_type": "code",
"source": [
"ooo.plot_history(history)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"### Results : \n",
"L25 : size=250 Mo, 93.15% \n",
"..."
]
},
{
"cell_type": "code",
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"total 176\n",
"drwxr-xr-x 1 pjluc pjluc 512 Jan 7 00:16 assets\n",
"-rw-r--r-- 1 pjluc pjluc 168427 Jan 7 00:17 saved_model.pb\n",
"drwxr-xr-x 1 pjluc pjluc 512 Jan 7 00:17 variables\n",
"\u001b[01;34m./run/models\u001b[00m\n",
"├── \u001b[01;34massets\u001b[00m\n",
"├── saved_model.pb\n",
"└── \u001b[01;34mvariables\u001b[00m\n",
" ├── variables.data-00000-of-00001\n",
" └── variables.index\n",
"\n",
"2 directories, 3 files\n"
]
}
],
"source": [
"!ls -l {save_dir}\n",
"!tree {save_dir}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"A suivre : https://www.tensorflow.org/tutorials/keras/save_and_load"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.5"
}
},
"nbformat": 4,
"nbformat_minor": 4
}