diff --git a/TD2 Deep Learning.ipynb b/TD2 Deep Learning.ipynb
index 2ecfce959ae6b947b633a758433f9bea0bf6992e..780cc6f59bcac17f63cd9a03502f250b2ca6e700 100644
--- a/TD2 Deep Learning.ipynb	
+++ b/TD2 Deep Learning.ipynb	
@@ -33,12 +33,36 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 1,
    "id": "330a42f5",
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Requirement already satisfied: torch in c:\\users\\marin\\anaconda3\\lib\\site-packages (2.0.1)\n",
+      "Requirement already satisfied: torchvision in c:\\users\\marin\\anaconda3\\lib\\site-packages (0.15.2a0)\n",
+      "Requirement already satisfied: filelock in c:\\users\\marin\\anaconda3\\lib\\site-packages (from torch) (3.9.0)\n",
+      "Requirement already satisfied: typing-extensions in c:\\users\\marin\\anaconda3\\lib\\site-packages (from torch) (4.7.1)\n",
+      "Requirement already satisfied: sympy in c:\\users\\marin\\anaconda3\\lib\\site-packages (from torch) (1.11.1)\n",
+      "Requirement already satisfied: networkx in c:\\users\\marin\\anaconda3\\lib\\site-packages (from torch) (3.1)\n",
+      "Requirement already satisfied: jinja2 in c:\\users\\marin\\anaconda3\\lib\\site-packages (from torch) (3.1.2)\n",
+      "Requirement already satisfied: numpy in c:\\users\\marin\\anaconda3\\lib\\site-packages (from torchvision) (1.24.3)\n",
+      "Requirement already satisfied: requests in c:\\users\\marin\\anaconda3\\lib\\site-packages (from torchvision) (2.31.0)\n",
+      "Requirement already satisfied: pillow!=8.3.*,>=5.3.0 in c:\\users\\marin\\anaconda3\\lib\\site-packages (from torchvision) (9.4.0)\n",
+      "Requirement already satisfied: MarkupSafe>=2.0 in c:\\users\\marin\\anaconda3\\lib\\site-packages (from jinja2->torch) (2.1.1)\n",
+      "Requirement already satisfied: charset-normalizer<4,>=2 in c:\\users\\marin\\anaconda3\\lib\\site-packages (from requests->torchvision) (2.0.4)\n",
+      "Requirement already satisfied: idna<4,>=2.5 in c:\\users\\marin\\anaconda3\\lib\\site-packages (from requests->torchvision) (3.4)\n",
+      "Requirement already satisfied: urllib3<3,>=1.21.1 in c:\\users\\marin\\anaconda3\\lib\\site-packages (from requests->torchvision) (1.26.16)\n",
+      "Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\marin\\anaconda3\\lib\\site-packages (from requests->torchvision) (2023.7.22)\n",
+      "Requirement already satisfied: mpmath>=0.19 in c:\\users\\marin\\anaconda3\\lib\\site-packages (from sympy->torch) (1.3.0)\n",
+      "Note: you may need to restart the kernel to use updated packages.\n"
+     ]
+    }
+   ],
    "source": [
-    "%pip install torch torchvision"
+    "%pip install torch torchvision\n"
    ]
   },
   {
@@ -52,10 +76,72 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 2,
    "id": "b1950f0a",
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "tensor([[ 0.1899,  0.8863,  0.1413, -0.1998,  0.1497,  0.6815, -0.8749, -0.3087,\n",
+      "         -0.0238,  0.4644],\n",
+      "        [-1.0627, -0.3343,  0.9708, -1.1139,  0.3306,  0.0214, -0.8496, -0.0632,\n",
+      "         -1.1719, -1.7125],\n",
+      "        [ 0.1654,  0.8615, -0.4635,  1.1866, -0.4576,  0.3541, -0.0137,  0.8904,\n",
+      "          2.0490,  0.0841],\n",
+      "        [-0.6709,  0.1347,  0.6463,  0.8951, -0.7332,  0.0309,  0.2212,  0.6717,\n",
+      "          0.8933,  0.1584],\n",
+      "        [-0.3432, -0.4148, -0.8095, -0.1408,  0.5006, -1.1312,  0.3924,  0.4016,\n",
+      "         -0.5985, -0.1117],\n",
+      "        [-1.0762, -0.1045,  0.0249,  0.8469,  1.0076, -1.4642,  0.4522,  0.0082,\n",
+      "          0.7456,  0.7806],\n",
+      "        [-0.0753,  0.8675,  1.1765,  0.1967, -1.1167,  1.3006,  0.8635,  0.0400,\n",
+      "          1.0068,  0.8430],\n",
+      "        [ 0.1805, -1.4230,  0.8074, -0.3967,  1.5681, -1.2731, -1.2154, -1.3516,\n",
+      "         -1.3917, -0.2232],\n",
+      "        [-1.9622, -0.5655, -0.7118,  0.6445, -0.7508,  0.3790, -1.9274,  2.8144,\n",
+      "         -0.1963,  0.7060],\n",
+      "        [ 0.1464, -1.2219, -0.5618,  0.0519,  0.5780,  0.0497, -0.1709, -0.7162,\n",
+      "         -0.0512, -0.2961],\n",
+      "        [-1.1464, -1.7522,  0.4518, -0.7085, -0.3393, -0.9789,  0.8045,  0.4721,\n",
+      "         -0.6035, -0.6996],\n",
+      "        [ 1.2104,  0.4869, -0.4659,  1.3424,  0.4500, -1.6684,  0.1359, -0.2354,\n",
+      "         -0.6425,  0.4473],\n",
+      "        [-0.3536, -0.5641, -1.4005, -1.4136, -0.2599, -0.6156,  0.9142, -0.6475,\n",
+      "         -0.1155,  1.0220],\n",
+      "        [-0.9314,  0.9504,  0.6591,  1.6823, -0.7177, -0.9853, -1.7366, -1.0150,\n",
+      "         -2.3821,  0.3625]])\n",
+      "AlexNet(\n",
+      "  (features): Sequential(\n",
+      "    (0): Conv2d(3, 64, kernel_size=(11, 11), stride=(4, 4), padding=(2, 2))\n",
+      "    (1): ReLU(inplace=True)\n",
+      "    (2): MaxPool2d(kernel_size=3, stride=2, padding=0, dilation=1, ceil_mode=False)\n",
+      "    (3): Conv2d(64, 192, kernel_size=(5, 5), stride=(1, 1), padding=(2, 2))\n",
+      "    (4): ReLU(inplace=True)\n",
+      "    (5): MaxPool2d(kernel_size=3, stride=2, padding=0, dilation=1, ceil_mode=False)\n",
+      "    (6): Conv2d(192, 384, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
+      "    (7): ReLU(inplace=True)\n",
+      "    (8): Conv2d(384, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
+      "    (9): ReLU(inplace=True)\n",
+      "    (10): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
+      "    (11): ReLU(inplace=True)\n",
+      "    (12): MaxPool2d(kernel_size=3, stride=2, padding=0, dilation=1, ceil_mode=False)\n",
+      "  )\n",
+      "  (avgpool): AdaptiveAvgPool2d(output_size=(6, 6))\n",
+      "  (classifier): Sequential(\n",
+      "    (0): Dropout(p=0.5, inplace=False)\n",
+      "    (1): Linear(in_features=9216, out_features=4096, bias=True)\n",
+      "    (2): ReLU(inplace=True)\n",
+      "    (3): Dropout(p=0.5, inplace=False)\n",
+      "    (4): Linear(in_features=4096, out_features=4096, bias=True)\n",
+      "    (5): ReLU(inplace=True)\n",
+      "    (6): Linear(in_features=4096, out_features=1000, bias=True)\n",
+      "  )\n",
+      ")\n"
+     ]
+    }
+   ],
    "source": [
     "import torch\n",
     "\n",
@@ -95,10 +181,18 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 3,
    "id": "6e18f2fd",
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "CUDA is not available.  Training on CPU ...\n"
+     ]
+    }
+   ],
    "source": [
     "import torch\n",
     "\n",
@@ -121,10 +215,19 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 30,
    "id": "462666a2",
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Files already downloaded and verified\n",
+      "Files already downloaded and verified\n"
+     ]
+    }
+   ],
    "source": [
     "import numpy as np\n",
     "from torchvision import datasets, transforms\n",
@@ -193,10 +296,25 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 15,
    "id": "317bf070",
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Net(\n",
+      "  (conv1): Conv2d(3, 6, kernel_size=(5, 5), stride=(1, 1))\n",
+      "  (pool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)\n",
+      "  (conv2): Conv2d(6, 16, kernel_size=(5, 5), stride=(1, 1))\n",
+      "  (fc1): Linear(in_features=400, out_features=120, bias=True)\n",
+      "  (fc2): Linear(in_features=120, out_features=84, bias=True)\n",
+      "  (fc3): Linear(in_features=84, out_features=10, bias=True)\n",
+      ")\n"
+     ]
+    }
+   ],
    "source": [
     "import torch.nn as nn\n",
     "import torch.nn.functional as F\n",
@@ -242,10 +360,27 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 29,
    "id": "4b53f229",
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Epoch: 0 \tTraining Loss: 12.224831 \tValidation Loss: 19.767630\n",
+      "Validation loss decreased (inf --> 19.767630).  Saving model ...\n",
+      "Epoch: 1 \tTraining Loss: 11.779677 \tValidation Loss: 19.502304\n",
+      "Validation loss decreased (19.767630 --> 19.502304).  Saving model ...\n",
+      "Epoch: 2 \tTraining Loss: 11.402885 \tValidation Loss: 19.299951\n",
+      "Validation loss decreased (19.502304 --> 19.299951).  Saving model ...\n",
+      "Epoch: 3 \tTraining Loss: 10.922978 \tValidation Loss: 20.018273\n",
+      "Epoch: 4 \tTraining Loss: 10.535478 \tValidation Loss: 20.801044\n",
+      "Epoch: 5 \tTraining Loss: 10.175075 \tValidation Loss: 20.377939\n",
+      "Early stopping after 5 epochss.\n"
+     ]
+    }
+   ],
    "source": [
     "import torch.optim as optim\n",
     "\n",
@@ -254,8 +389,11 @@
     "\n",
     "n_epochs = 30  # number of epochs to train the model\n",
     "train_loss_list = []  # list to store loss to visualize\n",
+    "valid_loss_list = [] # We track validation loss to check for overfitting\n",
     "valid_loss_min = np.Inf  # track change in validation loss\n",
     "\n",
+    "patience = 3 # We stop the training if loss doesn't improve for 3 consecutive epochs\n",
+    "\n",
     "for epoch in range(n_epochs):\n",
     "    # Keep track of training and validation loss\n",
     "    train_loss = 0.0\n",
@@ -297,7 +435,9 @@
     "    train_loss = train_loss / len(train_loader)\n",
     "    valid_loss = valid_loss / len(valid_loader)\n",
     "    train_loss_list.append(train_loss)\n",
+    "    valid_loss_list.append(valid_loss)\n",
     "\n",
+    "    \n",
     "    # Print training/validation statistics\n",
     "    print(\n",
     "        \"Epoch: {} \\tTraining Loss: {:.6f} \\tValidation Loss: {:.6f}\".format(\n",
@@ -313,7 +453,14 @@
     "            )\n",
     "        )\n",
     "        torch.save(model.state_dict(), \"model_cifar.pt\")\n",
-    "        valid_loss_min = valid_loss"
+    "        valid_loss_min = valid_loss\n",
+    "        patience_counter = 0\n",
+    "    else:\n",
+    "        patience_counter += 1\n",
+    "        \n",
+    "    if patience_counter >= patience:\n",
+    "        print(f\"Early stopping after {epoch} epochss.\")\n",
+    "        break"
    ]
   },
   {
@@ -326,16 +473,29 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 19,
    "id": "d39df818",
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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RkREROxanX9ontls5ujRo3h7e1fL49xFRESk6hmGwZkzZwgLCys2KWxJ6nyYOXr0KBEREbYuQ0RERCohISHhok+srvNhpnDCuYSEhAse+S0iIiK1U1paGhEREWVOHFuozoeZwktLPj4+CjMiIiJ2pjxDRDQAWEREROyawoyIiIjYNYUZERERsWt1fsyMiIhcOrPZTG5urq3LkDrE2dkZR0fHKtmXwoyIiJQpNzeX/fv3YzabbV2K1DF+fn6EhIRc8nPgFGZERKRUhmGQmJiIo6MjERERF314mUh5GIZBZmYmycnJAISGhl7S/hRmRESkVPn5+WRmZhIWFoaHh4ety5E6xN3dHYDk5GSCgoIu6ZKTIraIiJSqoKAAABcXFxtXInVRYUDOy8u7pP0ozIiIyEVpbjupDlX150phRkREROyawoyIiMhFNGrUiPfff79K9hUXF4fJZCI1NbVK9icaACwiInVUv379aN++fZWEkHXr1uHp6XnpRUm1UJipJMMwSDiZhaOjiXA/d1uXIyIiFWQYBgUFBTg5XfxXYf369WugIqksXWaqpFfn7uSKt5YybeUBW5ciIiLniY2NZdmyZXzwwQeYTCZMJhNfffUVJpOJ+fPn07lzZ1xdXVmxYgV79+5l5MiRBAcH4+XlRZcuXVi0aFGx/Z1/mclkMvHf//6X0aNH4+HhQbNmzZg9e3al650xYwatWrXC1dWVRo0a8c477xRb/8knn9CsWTPc3NwIDg7muuuus6773//+R5s2bXB3d6devXpceeWVZGRkVLoWe6SemUpqGeoDwPoDJ21ciYhIzTEMg6y8Apt8truzY7nvfvnggw/YvXs3rVu35qWXXgJg+/btAEycOJG3336bxo0b4+fnx+HDh7nqqqt45ZVXcHNzY9q0aYwYMYL4+HgaNmxY6mdMnjyZN998k7feeosPP/yQsWPHcvDgQQICAip0XBs2bOCGG25g0qRJ3HjjjaxcuZL777+fevXqERsby/r163n44Yf5v//7P3r27MnJkydZsWIFAImJidx88828+eabjB49mjNnzrBixQoMw6hQDfZOYaaSOkX6A7DtSBrZeQW4OVfN/BIiIrVZVl4BMS/Mt8ln73hpCB4u5fu15evri4uLCx4eHoSEhACwa9cuAF566SUGDRpkbVuvXj3atWtn/f6VV17h559/Zvbs2Tz4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/omDgwPR0dHWZR06dOCZZ55h5cqVtG7dutjv5ujoaB599FEWLFjAmDFjmDp1apXXWZTNw8wDDzzA1VdfzZVXXlls+f79+0lKSmLw4MHWZa6urvTt25eVK1fWdJnlVnipab0eniciYnNjx45lzpw5fPnll9x6663W5U2bNmXmzJls3ryZLVu2cMstt1SoF+OWW27BwcGBO++8kx07djB37lzefvvtYm2aNm3K+vXrmT9/Prt37+b5559n3bp1xdo0atSIv/76i/j4eI4fP05eXt4Fn3X//feTkJDAQw89xK5du/jll1948cUXeeyxx6zjZarS2LFjcXNzY/z48Wzbto2lS5fy0EMPMW7cOIKDg9m/fz/PPPMMq1at4uDBgyxYsIDdu3fTsmVLsrKyePDBB4mLi+PgwYP8+eefrFu3rtiYmupg08tM33//PRs3brzg5AIkJSUBEBwcXGx5cHCw9favkuTk5FivjwKkpaVVUbXlU/TheWV11YmISPUbMGAAAQEBxMfHc8stt1iXv/fee9xxxx307NmTwMBAnnrqqQr9vvDy8uLXX3/l3nvvpUOHDsTExPDGG29w7bXXWtvce++9bN68mRtvvBGTycTNN9/M/fffz++//25tc9dddxEXF0fnzp1JT09n6dKlNGrUqNhnhYeHM3fuXJ588knatWtHQEAAd955J//85z8r/4Mpg4eHB/Pnz+eRRx6hS5cueHh4cO2111ov0Xl4eLBr1y6mTZvGiRMnCA0N5cEHH+See+4hPz+fEydOcNttt3Hs2DECAwMZM2ZMsYHQ1cFklOfCXzVISEigc+fOLFiwwDqivF+/frRv357333+flStX0qtXL44ePUpoaKh1u7vuuouEhATmzZtX4n4nTZpU4g/t9OnT+Pj4VM/BFJGdV0CbSfPJKzBYMbE/EQEVu8YrIlKbZGdns3//fqKionBzc7N1OVLHlPXnKy0tDV9f33L9/rbZZaYNGzaQnJxMp06dcHJywsnJiWXLlvHvf/8bJycna49MYQ9NoeTk5At6a4p65plnOH36tPWVkJBQrcdxPjdnR1qF+QKadFJERKQm2CzMDBw4kK1bt7J582brq3PnzowdO5bNmzfTuHFjQkJCij3wJzc3l2XLlpX4UKFCrq6u+Pj4FHvVNOulJoUZERGxsenTp+Pl5VXiq1WrVrYur0rYbMyM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XrXVWh1Onz4NQEBAwEXbdujQgdDQUAYOHMjSpUuru7QqsWfPHsLCwoiKiuKmm25i3759pbatS+c1NzeXb775hjvuuOOik67a43ktav/+/SQlJRU7d66urvTt27fUv8NQ+vkua5va6PTp05hMJvz8/Mpsl56eTmRkJA0aNGD48OFs2rSpZgqsAnFxcQQFBREdHc1dd91FcnJyme3rwrk9duwYc+bM4c4777xoW3s+t5WhMFOC48ePU1BQQHBwcLHlwcHBJCUllbhNUlJSie3z8/M5fvx4tdVa1QzD4LHHHqN37960bt261HahoaF8/vnnzJgxg5kzZ9K8eXMGDhzI8uXLa7DaiuvWrRtff/018+fP5z//+Q9JSUn07NmTEydOlNi+rpxXgFmzZpGamkpsbGypbez1vJ6v8O9pRf4OF25X0W1qm+zsbJ5++mluueWWMichbNGiBV999RWzZ8/mu+++w83NjV69erFnz54arLZyhg0bxvTp01myZAnvvPMO69atY8CAAeTk5JS6TV04t9OmTcPb25sxY8aU2c6ez21l1flZsy/F+f97NQyjzP/RltS+pOW12YMPPshff/3FH3/8UWa75s2b07x5c+v3PXr0ICEhgbfffpsrrriiusustGHDhlnft2nThh49etCkSROmTZvGY489VuI2deG8AnzxxRcMGzaMsLCwUtvY63ktTUX/Dld2m9oiLy+Pm266CbPZzCeffFJm2+7duxcbNNurVy86duzIhx9+yL///e/qLvWS3Hjjjdb3rVu3pnPnzkRGRjJnzpwyf9Hb87kF+PLLLxk7duxFx77Y87mtLPXMlCAwMBBHR8cLEntycvIFyb5QSEhIie2dnJyoV69etdValR566CFmz57N0qVLadCgQYW37969u90lf09PT9q0aVNq3XXhvAIcPHiQRYsW8Y9//KPC29rjeS28Q60if4cLt6voNrVFXl4eN9xwA/v372fhwoVl9sqUxMHBgS5dutjduQZLj2JkZGSZtdvzuQVYsWIF8fHxlfo7bM/ntrwUZkrg4uJCp06drHd+FFq4cCE9e/YscZsePXpc0H7BggV07twZZ2fnaqu1KhiGwYMPPsjMmTNZsmQJUVFRldrPpk2bCA0NreLqqldOTg47d+4stW57Pq9FTZ06laCgIK6++uoKb2uP5zUqKoqQkJBi5y43N5dly5aV+ncYSj/fZW1TGxQGmT179rBo0aJKBW3DMNi8ebPdnWuAEydOkJCQUGbt9npuC33xxRd06tSJdu3aVXhbez635Warkce13ffff284OzsbX3zxhbFjxw5jwoQJhqenp3HgwAHDMAzj6aefNsaNG2dtv2/fPsPDw8N49NFHjR07dhhffPGF4ezsbPzvf/+z1SGU23333Wf4+voacXFxRmJiovWVmZlpbXP+8b733nvGzz//bOzevdvYtm2b8fTTTxuAMWPGDFscQrk9/vjjRlxcnLFv3z5j9erVxvDhww1vb+86eV4LFRQUGA0bNjSeeuqpC9bZ83k9c+aMsWnTJmPTpk0GYLz77rvGpk2brHfwvP7664avr68xc+ZMY+vWrcbNN99shIaGGmlpadZ9jBs3rtgdin/++afh6OhovP7668bOnTuN119/3XBycjJWr15d48dXVFnHmpeXZ1xzzTVGgwYNjM2bNxf7O5yTk2Pdx/nHOmnSJGPevHnG3r17jU2bNhm333674eTkZKxZs8YWh1hMWcd75swZ4/HHHzdWrlxp7N+/31i6dKnRo0cPIzw8vM6d20KnT582PDw8jClTppS4D3s6t9VFYaYMH3/8sREZGWm4uLgYHTt2LHar8vjx442+ffsWax8XF2d06NDBcHFxMRo1alTqH7zaBijxNXXqVGub84/3jTfeMJo0aWK4ubkZ/v7+Ru/evY05c+bUfPEVdOONNxqhoaGGs7OzERYWZowZM8bYvn27dX1dOq+F5s+fbwBGfHz8Bevs+bwW3kZ+/mv8+PGGYVhuz37xxReNkJAQw9XV1bjiiiuMrVu3FttH3759re0L/fTTT0bz5s0NZ2dno0WLFrUiyJV1rPv37y/17/DSpUut+zj/WCdMmGA0bNjQcHFxMerXr28MHjzYWLlyZc0fXAnKOt7MzExj8ODBRv369Q1nZ2ejYcOGxvjx441Dhw4V20ddOLeFPvvsM8Pd3d1ITU0tcR/2dG6ri8kwzo5mFBEREbFDGjMjIiIidk1hRkREROyawoyIiIjYNYUZERERsWsKMyIiImLXFGZERETErinMiIiIiF1TmBGRy47JZGLWrFm2LkNEqojCjIjUqNjYWEwm0wWvoUOH2ro0EbFTTrYuQEQuP0OHDmXq1KnFlrm6utqoGhGxd+qZEZEa5+rqSkhISLGXv78/YLkENGXKFIYNG4a7uztRUVH89NNPxbbfunUrAwYMwN3dnXr16nH33XeTnp5erM2XX35Jq1atcHV1JTQ0lAcffLDY+uPHjzN69Gg8PDxo1qwZs2fPrt6DFpFqozAjIrXO888/z7XXXsuWLVu49dZbufnmm9m5cycAmZmZDB06FH9/f9atW8dPP/3EokWLioWVKVOm8MADD3D33XezdetWZs+eTdOmTYt9xuTJk7nhhhv466+/uOqqqxg7diwnT56s0eMUkSpi65kuReTyMn78eMPR0dHw9PQs9nrppZcMw7DM4n7vvfcW26Zbt27GfffdZxiGYXz++eeGv7+/kZ6ebl0/Z84cw8HBwUhKSjIMwzDCwsKM5557rtQaAOOf//yn9fv09HTDZDIZv//+e5Udp4jUHI2ZEZEa179/f6ZMmVJsWUBAgPV9jx49iq3r0aMHmzdvBmDnzp20a9cOT09P6/pevXphNpuJj4/HZDJx9OhRBg4cWGYNbdu2tb739PTE29ub5OTkyh6SiNiQwoyI1DhPT88LLvtcjMlkAsAwDOv7ktq4u7uXa3/Ozs4XbGs2mytUk4jUDhozIyK1zurVqy/4vkWLFgDExMSwefNmMjIyrOv//PNPHBwciI6Oxtvbm0aNGrF48eIarVlEbEc9MyJS43JyckhKSiq2zMnJicDAQAB++uknOnfuTO/evZk+fTpr167liy++AGDs2LG8+OKLjB8/nkmTJpGSksJDDz3EuHHjCA4OBmDSpEnce++9BAUFMWzYMM6cOcOff/7JQw89VLMHKiI1QmFGRGrcvHnzCA0NLbasefPm7Nq1C7DcafT9999z//33ExISwvTp04mJiQHAw8OD+fPn88gjj9ClSxc8PDy49tpreffdd637Gj9+PNnZ2bz33ns88cQTBAYGct1119XcAYpIjTIZhmHYuggRkUImk4mff/6ZUaNG2boUEbETGjMjIiIidk1hRkREROyaxsyISK2iK98iUlHqmRERERG7pjAjIiIidk1hRkREROyawoyIiIjYNYUZERERsWsKMyIiImLXFGZERETErinMiIiIiF1TmBERERG79v9wqzyY6rMmBAAAAABJRU5ErkJggg==",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
    "source": [
     "import matplotlib.pyplot as plt\n",
     "\n",
-    "plt.plot(range(n_epochs), train_loss_list)\n",
+    "plt.plot(range(len(train_loss_list)), train_loss_list, label=\"train_loss\")\n",
+    "plt.plot(range(len(valid_loss_list)), valid_loss_list, label=\"validation_loss\")\n",
     "plt.xlabel(\"Epoch\")\n",
     "plt.ylabel(\"Loss\")\n",
+    "plt.legend()\n",
     "plt.title(\"Performance of Model 1\")\n",
     "plt.show()"
    ]
@@ -350,10 +510,31 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 20,
    "id": "e93efdfc",
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Test Loss: 21.403010\n",
+      "\n",
+      "Test Accuracy of airplane: 68% (681/1000)\n",
+      "Test Accuracy of automobile: 74% (744/1000)\n",
+      "Test Accuracy of  bird: 50% (508/1000)\n",
+      "Test Accuracy of   cat: 37% (371/1000)\n",
+      "Test Accuracy of  deer: 56% (566/1000)\n",
+      "Test Accuracy of   dog: 48% (480/1000)\n",
+      "Test Accuracy of  frog: 78% (780/1000)\n",
+      "Test Accuracy of horse: 72% (724/1000)\n",
+      "Test Accuracy of  ship: 74% (748/1000)\n",
+      "Test Accuracy of truck: 72% (724/1000)\n",
+      "\n",
+      "Test Accuracy (Overall): 63% (6326/10000)\n"
+     ]
+    }
+   ],
    "source": [
     "model.load_state_dict(torch.load(\"./model_cifar.pt\"))\n",
     "\n",
@@ -419,9 +600,11 @@
   },
   {
    "cell_type": "markdown",
-   "id": "944991a2",
+   "id": "491cc760",
    "metadata": {},
    "source": [
+    "### Creating a new network\n",
+    "\n",
     "Build a new network with the following structure.\n",
     "\n",
     "- It has 3 convolutional layers of kernel size 3 and padding of 1.\n",
@@ -434,6 +617,380 @@
     "Compare the results obtained with this new network to those obtained previously."
    ]
   },
+  {
+   "cell_type": "code",
+   "execution_count": 31,
+   "id": "43fff7d9",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Net(\n",
+      "  (conv1): Conv2d(3, 16, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
+      "  (conv2): Conv2d(16, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
+      "  (conv3): Conv2d(32, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
+      "  (pool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)\n",
+      "  (fc1): Linear(in_features=1024, out_features=512, bias=True)\n",
+      "  (fc2): Linear(in_features=512, out_features=64, bias=True)\n",
+      "  (fc3): Linear(in_features=64, out_features=10, bias=True)\n",
+      ")\n"
+     ]
+    }
+   ],
+   "source": [
+    "# We create the new model\n",
+    "\n",
+    "class Net(nn.Module):\n",
+    "    def __init__(self):\n",
+    "        super(Net, self).__init__()\n",
+    "        self.conv1 = nn.Conv2d(3, 16, 3, padding=1)\n",
+    "        self.conv2 = nn.Conv2d(16, 32, 3, padding=1)\n",
+    "        self.conv3 = nn.Conv2d(32, 64, 3, padding=1)\n",
+    "        \n",
+    "        self.pool = nn.MaxPool2d(2, 2)\n",
+    "        \n",
+    "        self.fc1 = nn.Linear(64 * 4 * 4, 512)\n",
+    "        self.fc2 = nn.Linear(512, 64)\n",
+    "        self.fc3 = nn.Linear(64, 10)\n",
+    "\n",
+    "    def forward(self, x):\n",
+    "        x = self.pool(F.relu(self.conv1(x)))\n",
+    "        x = self.pool(F.relu(self.conv2(x)))\n",
+    "        x = self.pool(F.relu(self.conv3(x)))\n",
+    "        x = x.view(-1, 64 * 4 * 4)\n",
+    "        x = F.dropout(F.relu(self.fc1(x)), p=0.5)\n",
+    "        x = F.dropout(F.relu(self.fc2(x)), p=0.5)\n",
+    "        x = self.fc3(x)\n",
+    "        return x\n",
+    "\n",
+    "\n",
+    "# create a complete CNN\n",
+    "model2 = Net()\n",
+    "print(model2)\n",
+    "# move tensors to GPU if CUDA is available\n",
+    "if train_on_gpu:\n",
+    "    model2.cuda()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "109ca0c2",
+   "metadata": {},
+   "source": [
+    "## Training the new model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 32,
+   "id": "40638ce8",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Epoch: 0 \tTraining Loss: 45.992308 \tValidation Loss: 45.734079\n",
+      "Validation loss decreased (inf --> 45.734079).  Saving model ...\n",
+      "Epoch: 1 \tTraining Loss: 42.861547 \tValidation Loss: 39.263893\n",
+      "Validation loss decreased (45.734079 --> 39.263893).  Saving model ...\n",
+      "Epoch: 2 \tTraining Loss: 36.771661 \tValidation Loss: 34.267659\n",
+      "Validation loss decreased (39.263893 --> 34.267659).  Saving model ...\n",
+      "Epoch: 3 \tTraining Loss: 33.214925 \tValidation Loss: 32.355083\n",
+      "Validation loss decreased (34.267659 --> 32.355083).  Saving model ...\n",
+      "Epoch: 4 \tTraining Loss: 31.095436 \tValidation Loss: 30.169813\n",
+      "Validation loss decreased (32.355083 --> 30.169813).  Saving model ...\n",
+      "Epoch: 5 \tTraining Loss: 29.427925 \tValidation Loss: 28.723804\n",
+      "Validation loss decreased (30.169813 --> 28.723804).  Saving model ...\n",
+      "Epoch: 6 \tTraining Loss: 27.979727 \tValidation Loss: 27.368319\n",
+      "Validation loss decreased (28.723804 --> 27.368319).  Saving model ...\n",
+      "Epoch: 7 \tTraining Loss: 26.560045 \tValidation Loss: 26.531596\n",
+      "Validation loss decreased (27.368319 --> 26.531596).  Saving model ...\n",
+      "Epoch: 8 \tTraining Loss: 25.233062 \tValidation Loss: 25.151196\n",
+      "Validation loss decreased (26.531596 --> 25.151196).  Saving model ...\n",
+      "Epoch: 9 \tTraining Loss: 23.933243 \tValidation Loss: 24.118065\n",
+      "Validation loss decreased (25.151196 --> 24.118065).  Saving model ...\n",
+      "Epoch: 10 \tTraining Loss: 22.824302 \tValidation Loss: 23.136555\n",
+      "Validation loss decreased (24.118065 --> 23.136555).  Saving model ...\n",
+      "Epoch: 11 \tTraining Loss: 21.638535 \tValidation Loss: 22.276559\n",
+      "Validation loss decreased (23.136555 --> 22.276559).  Saving model ...\n",
+      "Epoch: 12 \tTraining Loss: 20.643672 \tValidation Loss: 21.490677\n",
+      "Validation loss decreased (22.276559 --> 21.490677).  Saving model ...\n",
+      "Epoch: 13 \tTraining Loss: 19.723929 \tValidation Loss: 20.878862\n",
+      "Validation loss decreased (21.490677 --> 20.878862).  Saving model ...\n",
+      "Epoch: 14 \tTraining Loss: 18.881656 \tValidation Loss: 20.151909\n",
+      "Validation loss decreased (20.878862 --> 20.151909).  Saving model ...\n",
+      "Epoch: 15 \tTraining Loss: 18.077398 \tValidation Loss: 22.761932\n",
+      "Epoch: 16 \tTraining Loss: 17.244630 \tValidation Loss: 20.172645\n",
+      "Epoch: 17 \tTraining Loss: 16.708238 \tValidation Loss: 19.282629\n",
+      "Validation loss decreased (20.151909 --> 19.282629).  Saving model ...\n",
+      "Epoch: 18 \tTraining Loss: 16.049521 \tValidation Loss: 19.141060\n",
+      "Validation loss decreased (19.282629 --> 19.141060).  Saving model ...\n",
+      "Epoch: 19 \tTraining Loss: 15.306451 \tValidation Loss: 18.852022\n",
+      "Validation loss decreased (19.141060 --> 18.852022).  Saving model ...\n",
+      "Epoch: 20 \tTraining Loss: 14.730358 \tValidation Loss: 18.173483\n",
+      "Validation loss decreased (18.852022 --> 18.173483).  Saving model ...\n",
+      "Epoch: 21 \tTraining Loss: 14.233885 \tValidation Loss: 18.950112\n",
+      "Epoch: 22 \tTraining Loss: 13.598710 \tValidation Loss: 19.136868\n",
+      "Epoch: 23 \tTraining Loss: 13.122754 \tValidation Loss: 18.415266\n",
+      "Early stopping after 23 epochss.\n"
+     ]
+    }
+   ],
+   "source": [
+    "import torch.optim as optim\n",
+    "\n",
+    "criterion = nn.CrossEntropyLoss()  # specify loss function\n",
+    "optimizer = optim.SGD(model2.parameters(), lr=0.01)  # specify optimizer\n",
+    "\n",
+    "n_epochs = 30  # number of epochs to train the model\n",
+    "train_loss_list = []  # list to store loss to visualize\n",
+    "valid_loss_list = [] # We track validation loss to check for overfitting\n",
+    "valid_loss_min = np.Inf  # track change in validation loss\n",
+    "\n",
+    "patience = 3 # We stop the training if loss doesn't improve for 3 consecutive epochs\n",
+    "\n",
+    "for epoch in range(n_epochs):\n",
+    "    # Keep track of training and validation loss\n",
+    "    train_loss = 0.0\n",
+    "    valid_loss = 0.0\n",
+    "\n",
+    "    # Train the model\n",
+    "    model2.train()\n",
+    "    for data, target in train_loader:\n",
+    "        # Move tensors to GPU if CUDA is available\n",
+    "        if train_on_gpu:\n",
+    "            data, target = data.cuda(), target.cuda()\n",
+    "        # Clear the gradients of all optimized variables\n",
+    "        optimizer.zero_grad()\n",
+    "        # Forward pass: compute predicted outputs by passing inputs to the model\n",
+    "        output = model2(data)\n",
+    "        # Calculate the batch loss\n",
+    "        loss = criterion(output, target)\n",
+    "        # Backward pass: compute gradient of the loss with respect to model parameters\n",
+    "        loss.backward()\n",
+    "        # Perform a single optimization step (parameter update)\n",
+    "        optimizer.step()\n",
+    "        # Update training loss\n",
+    "        train_loss += loss.item() * data.size(0)\n",
+    "\n",
+    "    # Validate the model\n",
+    "    model2.eval()\n",
+    "    for data, target in valid_loader:\n",
+    "        # Move tensors to GPU if CUDA is available\n",
+    "        if train_on_gpu:\n",
+    "            data, target = data.cuda(), target.cuda()\n",
+    "        # Forward pass: compute predicted outputs by passing inputs to the model\n",
+    "        output = model2(data)\n",
+    "        # Calculate the batch loss\n",
+    "        loss = criterion(output, target)\n",
+    "        # Update average validation loss\n",
+    "        valid_loss += loss.item() * data.size(0)\n",
+    "\n",
+    "    # Calculate average losses\n",
+    "    train_loss = train_loss / len(train_loader)\n",
+    "    valid_loss = valid_loss / len(valid_loader)\n",
+    "    train_loss_list.append(train_loss)\n",
+    "    valid_loss_list.append(valid_loss)\n",
+    "\n",
+    "    \n",
+    "    # Print training/validation statistics\n",
+    "    print(\n",
+    "        \"Epoch: {} \\tTraining Loss: {:.6f} \\tValidation Loss: {:.6f}\".format(\n",
+    "            epoch, train_loss, valid_loss\n",
+    "        )\n",
+    "    )\n",
+    "\n",
+    "    # Save model if validation loss has decreased\n",
+    "    if valid_loss <= valid_loss_min:\n",
+    "        print(\n",
+    "            \"Validation loss decreased ({:.6f} --> {:.6f}).  Saving model ...\".format(\n",
+    "                valid_loss_min, valid_loss\n",
+    "            )\n",
+    "        )\n",
+    "        torch.save(model2.state_dict(), \"model_cifar_exo1.pt\")\n",
+    "        valid_loss_min = valid_loss\n",
+    "        patience_counter = 0\n",
+    "    else:\n",
+    "        patience_counter += 1\n",
+    "        \n",
+    "    if patience_counter >= patience:\n",
+    "        print(f\"Early stopping after {epoch} epochss.\")\n",
+    "        break"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "d0e23d94",
+   "metadata": {},
+   "source": [
+    "## Checking performance"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 33,
+   "id": "206bc2a1",
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjMAAAHFCAYAAAAHcXhbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB2z0lEQVR4nO3dd1yVdf/H8ddhb2TIUkQcONHcqzT3ztSy0krbVvbLynamTdv33X1bdje0pWm2y5wp5hY37omigiioLGVevz+OHCEFBYHDgffz8TgPD9f1Pdf1ORyRt9f1HSbDMAxEREREbJSdtQsQERERuRYKMyIiImLTFGZERETEpinMiIiIiE1TmBERERGbpjAjIiIiNk1hRkRERGyawoyIiIjYNIUZERERsWkKM2KzvvzyS0wmk+Xh4OBA7dq1ueeeezh27FiZnisrK4uxY8cSHByMvb091113XZkeX4o2Z84cmjVrhqurKyaTiS1btly23c6dO5k8eTKxsbGX7Lvxxhtp3rx5+RYKjBkzBpPJRLNmzcjNzb1kv8lkYty4ceVex5Xk/8yMGTPmsvtfffVVS5vLfT9La8yYMdStW7dUr73xxhu58cYby6wWqVoUZsTmzZgxgzVr1rB48WIeeOABvvvuO2644QbS09PL7BzTpk3jf//7Hy+++CIrV67km2++KbNjS9FOnjzJXXfdRf369VmwYAFr1qwhIiLism137tzJK6+8Uqa/fEtr586dfPnll9Yuo1ienp7MnTuX1NTUQtsNw+DLL7/Ey8vLSpWJlJzCjNi85s2b07FjR7p3786kSZN45plnOHToEL/88ss1HzsjIwOA7du34+rqyrhx4+jUqRORkZHXfOxz585d8zGqur1795Kdnc2dd95Jt27d6NixI25ubtYuq1ju7u7ccMMNTJo0qVJ/xkOGDMEwDGbPnl1o+9KlSzl06BC33XablSoTKTmFGalyOnbsCMDhw4cB8/80P/74Y6677jpcXV3x8fHhlltu4eDBg4Vel38r4u+//6Zz5864ublx7733YjKZ+Pzzzzl37pzl0nv+/7rPnz/P888/T3h4OE5OTtSqVYtHH32UM2fOFDp23bp1GTRoED/99BOtWrXCxcWFV155haioKEwmE7NmzeLZZ58lODgYDw8PBg8ezIkTJ0hNTeXBBx/E398ff39/7rnnHtLS0god+6OPPqJr164EBATg7u5OZGQk77zzDtnZ2Zd9f9HR0dxwww24ublRr1493nrrLfLy8gq1PXPmDE899RT16tXD2dmZgIAABgwYwO7duy1tsrKyeP3112ncuDHOzs7UrFmTe+65h5MnT17V5/Tbb7/RqVMn3Nzc8PT0pHfv3qxZs8ayf8yYMVx//fUA3HbbbZhMpiJvM3z55ZfceuutAHTv3v2Szynf1bz3lJQUJkyYUOgzHT9+fImu9L399tscO3aMDz/88Iptr+Z8t956K82aNSv0usGDB2MymZg7d65l26ZNmzCZTPz+++9XPK+3tzdDhw5l+vTphbZPnz6dLl26FHkFbPr06bRs2RIXFxd8fX0ZOnQou3btuqTdl19+SaNGjXB2dqZJkyZ8/fXXlz3etf49EgHAELFRM2bMMAAjOjq60PYPP/zQAIxPP/3UMAzDeOCBBwxHR0fjqaeeMhYsWGDMmjXLaNy4sREYGGgkJCRYXtetWzfD19fXCA0NNf773/8ay5YtM5YvX26sWbPGGDBggOHq6mqsWbPGWLNmjZGYmGjk5eUZffv2NRwcHIyJEycaixYtMt577z3D3d3daNWqlXH+/HnLscPCwozg4GCjXr16xvTp041ly5YZ69evN5YtW2YARlhYmDFmzBhjwYIFxieffGJ4eHgY3bt3N3r37m1MmDDBWLRokfH2228b9vb2xmOPPVbo/T7xxBPGtGnTjAULFhhLly41/vWvfxn+/v7GPffcU6hdt27dDD8/P6Nhw4bGJ598YixevNh45JFHDMD46quvLO1SUlKMZs2aGe7u7sarr75qLFy40Pjxxx+Nxx9/3Fi6dKlhGIaRm5tr9OvXz3B3dzdeeeUVY/Hixcbnn39u1KpVy2jatKmRkZFR7Gc3c+ZMAzD69Olj/PLLL8acOXOMNm3aGE5OTsaKFSsMwzCM/fv3Gx999JEBGG+++aaxZs0aY8eOHZc9XmJiovHmm28agPHRRx8V+pxK8t7T09ON6667zvD39zc++OADY8mSJcaHH35oeHt7Gz169DDy8vKKfV+jR4823N3dDcMwjKFDhxo1atQwkpKSLPsB49FHHy3x+T755BMDMI4fP24YhmFkZ2cbnp6ehqurq/HAAw9Yjvf2228bDg4ORkpKSrF15tfx119/GYCxc+dOwzAM4/Tp04aLi4sxffp049133zUA49ChQ5bX5X+P77jjDmPevHnG119/bdSrV8/w9vY29u7da2mX/7M5ZMgQ4/fffze+/fZbo0GDBkZoaKgRFhZmaVeSv0fdunUzunXrVuz7kupLYUZsVv4/mGvXrjWys7ON1NRU448//jBq1qxpeHp6GgkJCcaaNWsMwHj//fcLvTYuLs5wdXU1nnnmGcu2bt26GYDx119/XXKugr+k8i1YsMAAjHfeeafQ9jlz5hQKU4ZhDjP29vbGnj17CrXNDzODBw8utH38+PEGYPzf//1foe0333yz4evrW+T3JDc318jOzja+/vprw97e3khOTr7k/a1bt67Qa5o2bWr07dvX8vWrr75qAMbixYuLPM93331nAMaPP/5YaHt0dLQBGB9//HGxNYaEhBiRkZFGbm6uZXtqaqoREBBgdO7c2bIt//szd+7cIo+Xb+7cuQZgLFu27JJ9V/vep0yZYtjZ2V0SkH/44QcDMP78889iayj492T37t2Gvb298dRTT1n2/zPMXO359u/fbwDG119/bRiGYaxcudIAjGeeecYIDw+3vK53796Fvn9Fya8jLy/PCA8PNyZMmGAYhmF89NFHhoeHh5GamnpJmDl9+rTh6upqDBgwoNCxjhw5Yjg7OxsjR440DOPi59u6detC4S82NtZwdHQsFGZK8vdIYUaKo9tMYvM6duyIo6Mjnp6eDBo0iKCgIObPn09gYCB//PEHJpOJO++8k5ycHMsjKCiIli1bEhUVVehYPj4+9OjR46rOu3TpUoBLRoTceuutuLu789dffxXa3qJFiyIv3Q8aNKjQ102aNAFg4MCBl2xPTk4udKtp8+bN3HTTTfj5+WFvb4+joyN33303ubm57N27t9Drg4KCaN++/SV15d+SA5g/fz4RERH06tWrqLfOH3/8QY0aNRg8eHCh7+t1111HUFDQJd/Xgvbs2cPx48e56667sLO7+E+Qh4cHw4cPZ+3atZa+SmXpat77H3/8QfPmzbnuuusKva++fftiMpmKfV//1KhRI+677z6mTp3KkSNHLtvmas9Xv3596taty5IlSwBYvHgxkZGR3HnnnRw6dIgDBw6QmZnJypUri/3c/il/RNM333xDTk4OX3zxBSNGjMDDw+OStmvWrOHcuXOX/H0PDQ2lR48elr/v+Z/vyJEjMZlMlnZhYWF07tz5kvdf2r9HIgUp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",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "plt.plot(range(len(train_loss_list)), train_loss_list, label=\"train_loss\")\n",
+    "plt.plot(range(len(valid_loss_list)), valid_loss_list, label=\"validation_loss\")\n",
+    "plt.xlabel(\"Epoch\")\n",
+    "plt.ylabel(\"Loss\")\n",
+    "plt.legend()\n",
+    "plt.title(\"Performance of the New Model \")\n",
+    "plt.show()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 35,
+   "id": "b0fbfa80",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Test Loss: 18.870971\n",
+      "\n",
+      "Test Accuracy of airplane: 75% (758/1000)\n",
+      "Test Accuracy of automobile: 85% (850/1000)\n",
+      "Test Accuracy of  bird: 62% (625/1000)\n",
+      "Test Accuracy of   cat: 39% (394/1000)\n",
+      "Test Accuracy of  deer: 62% (628/1000)\n",
+      "Test Accuracy of   dog: 59% (592/1000)\n",
+      "Test Accuracy of  frog: 81% (812/1000)\n",
+      "Test Accuracy of horse: 71% (714/1000)\n",
+      "Test Accuracy of  ship: 81% (813/1000)\n",
+      "Test Accuracy of truck: 74% (744/1000)\n",
+      "\n",
+      "Test Accuracy (Overall): 69% (6930/10000)\n"
+     ]
+    }
+   ],
+   "source": [
+    "model2.load_state_dict(torch.load(\"./model_cifar_exo1.pt\"))\n",
+    "\n",
+    "# track test loss\n",
+    "test_loss = 0.0\n",
+    "class_correct2 = list(0.0 for i in range(10))\n",
+    "class_total2 = list(0.0 for i in range(10))\n",
+    "\n",
+    "model2.eval()\n",
+    "# iterate over test data\n",
+    "for data, target in test_loader:\n",
+    "    # move tensors to GPU if CUDA is available\n",
+    "    if train_on_gpu:\n",
+    "        data, target = data.cuda(), target.cuda()\n",
+    "    # forward pass: compute predicted outputs by passing inputs to the model\n",
+    "    output = model2(data)\n",
+    "    # calculate the batch loss\n",
+    "    loss = criterion(output, target)\n",
+    "    # update test loss\n",
+    "    test_loss += loss.item() * data.size(0)\n",
+    "    # convert output probabilities to predicted class\n",
+    "    _, pred = torch.max(output, 1)\n",
+    "    # compare predictions to true label\n",
+    "    correct_tensor = pred.eq(target.data.view_as(pred))\n",
+    "    correct = (\n",
+    "        np.squeeze(correct_tensor.numpy())\n",
+    "        if not train_on_gpu\n",
+    "        else np.squeeze(correct_tensor.cpu().numpy())\n",
+    "    )\n",
+    "    # calculate test accuracy for each object class\n",
+    "    for i in range(batch_size):\n",
+    "        label = target.data[i]\n",
+    "        class_correct2[label] += correct[i].item()\n",
+    "        class_total2[label] += 1\n",
+    "\n",
+    "# average test loss\n",
+    "test_loss = test_loss / len(test_loader)\n",
+    "print(\"Test Loss: {:.6f}\\n\".format(test_loss))\n",
+    "\n",
+    "for i in range(10):\n",
+    "    if class_total2[i] > 0:\n",
+    "        print(\n",
+    "            \"Test Accuracy of %5s: %2d%% (%2d/%2d)\"\n",
+    "            % (\n",
+    "                classes[i],\n",
+    "                100 * class_correct2[i] / class_total2[i],\n",
+    "                np.sum(class_correct2[i]),\n",
+    "                np.sum(class_total2[i]),\n",
+    "            )\n",
+    "        )\n",
+    "    else:\n",
+    "        print(\"Test Accuracy of %5s: N/A (no training examples)\" % (classes[i]))\n",
+    "\n",
+    "print(\n",
+    "    \"\\nTest Accuracy (Overall): %2d%% (%2d/%2d)\"\n",
+    "    % (\n",
+    "        100.0 * np.sum(class_correct2) / np.sum(class_total2),\n",
+    "        np.sum(class_correct2),\n",
+    "        np.sum(class_total2),\n",
+    "    )\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "efb5df69",
+   "metadata": {},
+   "source": [
+    "We compare the results obtained with this new network to those obtained previously. Our new model is better than the first model on almost all classes. We get XX% of accuracy on average over all the classes."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 38,
+   "id": "86f7cf40",
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "accuracy_initial = [correct / total for correct, total in zip(class_correct, class_total)]\n",
+    "accuracy_new = [correct / total for correct, total in zip(class_correct2, class_total2)]\n",
+    "\n",
+    "x = np.arange(len(classes))\n",
+    "width = .35\n",
+    "\n",
+    "fig, ax = plt.subplots()\n",
+    "r1 = ax.bar(x - width/2, accuracy_initial, width, label=\"Initial Model\")\n",
+    "r2 = ax.bar(x + width/2, accuracy_new, width, label=\"New Model\")\n",
+    "\n",
+    "ax.set_xlabel('Classes')\n",
+    "ax.set_ylabel('Accuracy')\n",
+    "ax.set_title('Accuracy comparison by class')\n",
+    "ax.set_xticks(x)\n",
+    "ax.set_xticklabels(classes)\n",
+    "ax.legend()\n",
+    "plt.show()"
+   ]
+  },
   {
    "cell_type": "markdown",
    "id": "bc381cf4",
@@ -883,7 +1440,7 @@
   },
   {
    "cell_type": "markdown",
-   "id": "bbd48800",
+   "id": "0316c65c",
    "metadata": {},
    "source": [
     "Experiments:\n",
@@ -926,7 +1483,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3.8.5 ('base')",
+   "display_name": "Python 3 (ipykernel)",
    "language": "python",
    "name": "python3"
   },
@@ -940,7 +1497,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.8.5"
+   "version": "3.11.5"
   },
   "vscode": {
    "interpreter": {