{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "bbe21c4d",
   "metadata": {},
   "source": [
    "### Strategy Improvements for Plant Disease Classification\n",
    "##### Based on the results achieved by CNN Model 2 (93.46% Test Accuracy), several advanced techniques can be implemented to further improve classification performance, particularly for the challenging classes Powdery Mildew and Scab."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e0c29fa9",
   "metadata": {},
   "source": [
    "### Step 1: Import Required Libraries"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "101358ca",
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "\n",
    "import tensorflow as tf\n",
    "\n",
    "from tensorflow.keras.models import Sequential\n",
    "from tensorflow.keras.layers import (\n",
    "    Conv2D,\n",
    "    MaxPooling2D,\n",
    "    Flatten,\n",
    "    Dense,\n",
    "    Dropout,\n",
    "    Input\n",
    ")\n",
    "\n",
    "from tensorflow.keras.preprocessing.image import (\n",
    "    ImageDataGenerator\n",
    ")\n",
    "\n",
    "from tensorflow.keras.callbacks import (\n",
    "    EarlyStopping,\n",
    "    ReduceLROnPlateau,\n",
    "    ModelCheckpoint\n",
    ")\n",
    "\n",
    "from tensorflow.keras.optimizers import Adam\n",
    "\n",
    "from sklearn.utils.class_weight import (\n",
    "    compute_class_weight\n",
    ")\n",
    "\n",
    "from sklearn.metrics import (\n",
    "    confusion_matrix,\n",
    "    classification_report\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "34437478",
   "metadata": {},
   "source": [
    "#### The dataset preparation stages have been completed in the previous notebook, plants_model_1_2.ipynb.The train, validation, and test structure was created in the plants_model_1_2.ipynb.\n",
    "### Stage 2: Check Class Distribution (for training set)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "aa5bf145",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Natalia\\AppData\\Local\\Temp\\ipykernel_28900\\4235888531.py:43: FutureWarning: \n",
      "\n",
      "Passing `palette` without assigning `hue` is deprecated and will be removed in v0.14.0. Assign the `x` variable to `hue` and set `legend=False` for the same effect.\n",
      "\n",
      "  ax = sns.barplot(\n"
     ]
    },
    {
     "data": {
      "image/png": "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bUsWERGhF154QdeuXZN0/RSali1bKikpSVOnTtXhw4d1/PhxtW7dWjt27JC3t7dGjRqljRs3avr06VY/N64FkNFOJwCQRtI79QPAo+LG2Yzq1avf13N1w0xGSjNBhw8fNr/++qv58ssvzSeffGJGjRplChQoYD1n2LBhVtvy5ctbj6d0aHhERIR1ePlvv/1mtW3cuPEtbWNiYsyxY8fuaQz3MtNtjDHVqlWz2mTLlu22z0+WmhrvNJucUhsnJyezadOmW9rc60y3JLNmzRpr25o1a+y2vffee/dU251mLu926Pid2syaNcuunvHjx1vbrl69aldThQoVrG03/0569eplbdu6davdtj///DPFmm60ZcsWu+f069fP2paQkGCCg4Otbd7e3nanQaTm0OaU3M9MtyTz+++/37avixcvmnnz5pmJEyeaTz/91IwaNcrUqVPHem79+vXt2t/u7zy1r/O9znRnz57dHD9+3Nr23HPPWdueeOIJ6/GRI0fa7evGQ6Vv/ltIy5luY4x5/vnn7dqdPn3abvupU6fMH3/8YcaPH2/9G1i2bFmr/csvv2zX/l7fL4mJiWbdunVmypQp5vPPPzejRo0yffr0savlyJEjxhhjNm/ebD1WunTpW07tSUhIMIcOHbLu9+7d22pfokQJ6wgjY4w5ceKE3dE1f/zxh7XtTqfaAHg8MdMNAA507tw5hYaGau7cuXdslzyDKUlPPvmktm/fLun6LG9wcLCKFy+uoKAg1alTR+XKlbPaVq1aVa6uroqNjdXChQtVpkwZlS9fXiVKlFClSpXUoEEDFShQIE3HZO7zUmkPo8amTZvqiSeeSPXzixQpYjcDVbNmTQUGBioiIkKStGnTpgeq70ElzyAnu3Em293dXc8//7w1m7Z9+3ZdvXpV2bJlu6Wf1157zfq5ZMmSdtuSjyy4nzpCQ0Otn52cnNShQwerzfnz57V3716VLl36rv06StmyZdWiRYtbHk9KStI777yjMWPGKC4u7rbPv/Hv8n486Ot8sxYtWtjNjt/Y5439bdy40fo5b968atKkiXW/bt26Kly4sN216tPS7f5duHbtml577TV9//33SkpKuu3zU/NaL168WF27dtWRI0fu2O7YsWPy9/dX6dKllTt3bp07d067d+9WsWLFVKlSJZUoUULly5dXw4YNFRAQYD1vzZo11s//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2rdvn9avX6/169crW7ZsateunSTp7Nmzql69uiIiIuTi4qISJUrIGKOwsDCdOHFCRYoUSc+XAwAAAPeImW4AuAc//fSTTpw4oc2bN2vXrl16993rl/s7f/689uzZI29vb33zzTc6e/astmzZokOHDikwMFCSNHXqVKufZs2aKTo6Wrt27dKmTZu0ZcsWa9uaNWusnwcOHKiIiAiVKVNGhw4d0s6dOxUeHq6LFy+qatWqD2nUAAAAeFDMdAPAPXBzc9OsWbP00UcfKTo6Wnv37pUk5c2bVyVKlFDOnDlVvnx5q32uXLlUtmxZRUREyNXV1XrcxcVFcXFxqlOnjuLj47V//35rW+3atSVJxhjNmDFDkuTv76+nn35aERERKlasmN555x298MILD2PIAAAASAOEbgC4R6dOndK6deus+4GBgZo9e7Zy5sx5S9u9e/dq2bJlkqRu3brZbUtKSrLrx9nZWZ9++qnatm0r6fq53BcuXJAkLViwQAUKFFCuXLm0fft2vfjii8qaNavatGmT5uMDAABA2uPwcgC4R927d1dSUpIOHz6stm3bKiIiQm3bttWlS5fs2m3YsEFPPfWUrly5olatWmno0KF2293c3GSMUXR0tKZMmSJjjPr166d58+ZJkhISEqy2pUuX1sGDB3Xw4EGVLl1akvTll186eKQAAABIK4RuALgPNptNhQoVss7pDg8P108//WRt/+OPP1S3bl2dOnVKr7zyimbMmCFn55QPKsqZM6dCQ0NVvnx5xcbG6oMPPpB0/ZB1FxcXSVKFChXk4uIiFxcXVahQQZJ06NAhB44QAAAAaYnQDQB3ce7cOf3www+Ki4uzHkuelZakK1euSJLGjBmjVq1a6dq1a/roo4/01VdfycnJya6vqVOn6vjx49b9f/75xzqvO7mfrFmzqk6dOpKk7du3Kz4+XvHx8dblyYoXL+6AUQIAAMARbMYYk95FZDTR0dHy9PRUVFSUPDw8HqivZxq8m0ZV4XE1Z+mI9C4h00teidzd3V1FixZVVFSUjh49Kun6bPWOHTt04sQJ1axZ03osKCjIro9Zs2YpX758qlu3rlatWqVChQopZ86c2rNnj3U4+aeffqo+ffpIktatW6c6deooLi5OBQoUkCQdP35cTk5OWrx4serVq/ewhg8AAIAU3GsuZKYbAO7Cy8tL7dq1U758+XTg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tXHjRoWEhGj+/PmSpG3btum///2vKleurDNnzmjQoEFpWigAAAAAABmNc2qeVL16dc2bN0+vvvqqOnXqJEnq27evJKlo0aKaN2+eypcvn3ZVAgAAAACQAaUqdEtS/fr1tXfvXm3ZskX79+9XUlKSihYtqsqVK6e4uBoAAAAAAI+bVIfuZJUqVVKlSpXSohYAAAAAADKVVIfu2NhYffPNN5o3b54OHTokSSpcuLCaNWumrl27ys3NLa1qBAAAAAAgQ0rVQmrHjh1TxYoV9cYbb2jbtm3Kmzev8ubNq23btumNN95QxYoVdezYsbSuFQAAAACADCVVobtHjx46fPiwZsyYoePHj2vlypVauXKljh8/runTp+vIkSPq0aPHffe7atUqNW/eXPnz55fNZtPvv/9ut71z586y2Wx2tyZNmti1OX/+vNq3by8PDw95eXmpS5cuunz5sl2b7du368knn5Sbm5v8/f318ccf33etAAAAAADcTapC99KlS9W7d2+1adPmlm3/+te/9Oabb2rp0qX33e+VK1dUoUIFjRs37rZtmjRpopMnT1q3n376yW57+/btFR4ersWLF2vOnDlatWqVXnnlFWt7dHS0GjVqpICAAG3atEmjRo3SkCFD9PXXX993vQAAAAAA3EmqzunOmTOnfHx8brvdz89POXPmvO9+mzZtqqZNm96xjaurq/z8/FLctnv3bi1YsEAbNmxQlSpVJEljx45Vs2bN9Mknnyh//vyaOnWq4uLiNGnSJLm4uKhMmTLaunWrPvvsM7twDgAAAADAg0rVTPdLL72kKVOm6OrVq7dsu3z5siZPnqwuXbo8cHEpWbFihXx8fFSyZEm9+uqrOnfunLUtLCxMXl5eVuCWpIYNGypLlixat26d1aZOnTpycXGx2jRu3Fh79+7VhQsXUtxnbGysoqOj7W4AAAAAANzNPc10//bbb3b3K1WqpLlz56pUqVIKDQ1VsWLFJEn79u3T999/L29vb5UvXz7Ni23SpIlatWqlwMBAHThwQO+++66aNm2qsLAwOTk5KTIy8pYZeGdnZ3l7eysyMlKSFBkZqcDAQLs2vr6+1rZcuXLdst+RI0dq6NChaT4eAAAAAEDmdk+hu02bNrLZbDLGSJLdz//5z39uaX/s2DG98MILev7559OwVKldu3bWz+XKlVP58uVVtGhRrVixQg0a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3gXcqGnTpmratGmK24wx+vzzzzVw4EC1aNFCkvT999/L19dXv//+u9q1a6fdu3drwYIF2rBhg6pUqSJJGjt2rJo1a6ZPPvlE+fPn19SpUxUXF6dJkybJxcVFZcqU0datW/XZZ5/ZhXMAAAAAAB7UIzXTfScRERGKjIxUw4YNrcc8PT1VvXp1hYWFSZLCwsLk5eVlBW5JatiwobJkyaJ169ZZberUqSMXFxerTePGjbV3715duHAhxX3HxsYqOjra7gYAAAAAwN1kmNAdGRkpSfL19bV73NfX19oWGRkpHx8fu+3Ozs7y9va2a5NSHzfu42YjR46Up6endfP393/wAQEAAAAAMr0ME7rT04ABAxQVFWXdjh49mt4lAQAAAAAygAwTuv38/CRJp06dsnv81KlT1jY/Pz+dPn3abntCQoLOnz9v1yalPm7cx81cXV3l4eFhdwMAAAAA4G4yTOgODAyUn5+fli5daj0WHR2tdevWKTg4WJIUHBysixcvatOmTVabZcuWKSkpSdWrV7farFq1SvHx8VabxYsXq2TJksqVK9dDGg0AAAAA4HHwSIXuy5cva+vWrdq6dauk64unbd26VUeOHJHNZlOvXr30wQcf6M8//9SOHTvUqVMn5c+fX88995wkqXTp0mrSpIm6deum9evXa82aNerZs6fatWun/PnzS5JefPFFubi4qEuXLgoPD9f06dM1ZswY9enTJ51GDQAAAADIrB6pS4Zt3LhR9erVs+4nB+HQ0FBNmTJF/fr105UrV/TKK6/o4sWLql27thYsWCA3NzfrOVOnTlXPnj3VoEEDZcmSRa1bt9YXX3xhbff09NSiRYvUo0cPVa5cWXny5NH777/P5cIAAAAAAGnukQrddevWlTHmttttNpuGDRumYcOG3baNt7e3pk2bdsf9lC9fXn/99Veq6wQAAAAA4F48UoeXAwAAAACQmRC6AQAAAABwEEI3AAAAAAAOQugGAAAAgEfYlStX1K9fPxUvXlzZsmWTp6enypcvr1GjRskYo0uXLqlXr17WQtHu7u4qUaKEBg0apEuXLtn1tXTpUj399NPy9fWVq6ur8ufPrzZt2mjHjh3pNLrM75FaSA0AAAAAYK9Hjx767rvvJEllypRRVFSUduzYoX79+snNzU3NmzfXmDFj5OrqqlKlSun48ePat2+fPvjgA23atEnz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R44c0caNG60+kbEk/7uY0u/u5ZdfVrNmzRQfH699+/Zp06ZNql69ujw8PHTo0CE5OztbbZs1ayZnZ2ctWrToodUOZETHjx9XxYoVNWzYMEn2a2cYYzRp0iS1a9dOw4YN065du5Q/f34NGTJE+/fv11dffSWbzSYfHx8FBgaqefPmGjlypOLj4xUZGSk3N7f0HNoDIXQj3dx4+Phvv/2mYcOG6cCBA5KufxvWs2dPLVy4UJ07d9bHH38sPz8/TZw4UZLk4+OjFi1aaNWqVTp58qRcXFwkSRs2bJCXlxezfnikfP3113rqqaesQ6dmz56tFi1aKCYmRlFRUZo0aZKKFy+u6tWrKywsTF9++aXmzp2rP/74Q//5z3+0detWTZ8+XZL04osvqm/fvvr22281fvx4lS5d2nq/Z9RDroAHcfP6H8m2bNmipUuXqkuXLvrwww+1evVqPffccxowYIAkydXVVSdOnFBAQID1nHz58qls2bI6ceKEDh48qOLFi6tatWoaNGiQZs2apbfeekvjx4+39otHkzHGblZNkg4fPqyZM2fafSnfsWNH7d+/X//884+KFSumKlWq6IsvvlCZMmXUu3dv1alTR02aNNHKlSuVPXt2Pffccxo7dqxOnDihq1evasWKFdb+AFyXvA7CvHnzJMn68urkyZN6+umnNXLkSAUGBmrZsmXq0qWLfv31V5UrV06vvfaavvrqKy1fvlxPP/20/vnnH/Xp00dnzpzRjh07tH37drsvwjIaQjceioSEhFsOIU9KStKkSZPk4+Ojt956SxEREdqyZYskqUmTJgoNDdW6devUqlUrFSlSRMePH9fOnTsVFhYmZ2dnVa1aVfny5VPr1q01bdo07d69W5988omefvppVa1alf8JIt0lv+crVqyoo0ePateuXZKuz565ubmpRo0ayp07tyZOnKjLly+rWrVqkiR/f3+VKVNGktSiRQuVL19e06ZNs/rt2bOnOnTooFGjRmny5MmqUKGCEhISHvLogPR38/ofyesb7N27V2+88YbatWsnm82mffv2af78+Ro+fLhGjx6t1atX64knnlCOHDn0119/2fXp4eGhmJgY5cyZU5I0duxY+fr66rXXXtPevXsVHBwsiVnvR5nNZlOWLFmUmJioJUuWqEaNGmrbtq3+9a9/af/+/Va7evXqKVeuXJo5c6ZsNps+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",
      "text/plain": [
       "<Figure size 1000x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import os\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "\n",
    "# Training dataset location\n",
    "train_dir = \"plant_split_dataset/train\"\n",
    "\n",
    "# Count images per class\n",
    "class_counts = {}\n",
    "\n",
    "for class_name in os.listdir(train_dir):\n",
    "\n",
    "    class_path = os.path.join(\n",
    "        train_dir,\n",
    "        class_name\n",
    "    )\n",
    "\n",
    "    class_counts[class_name] = len(\n",
    "        os.listdir(class_path)\n",
    "    )\n",
    "\n",
    "# Convert to DataFrame\n",
    "distribution_df = pd.DataFrame(\n",
    "\n",
    "    list(class_counts.items()),\n",
    "\n",
    "    columns=[\n",
    "        \"Class\",\n",
    "        \"Number of Images\"\n",
    "    ]\n",
    ")\n",
    "\n",
    "# Sort descending\n",
    "distribution_df = distribution_df.sort_values(\n",
    "    by=\"Number of Images\",\n",
    "    ascending=False\n",
    ")\n",
    "\n",
    "# Plot\n",
    "plt.figure(figsize=(10,6))\n",
    "\n",
    "ax = sns.barplot(\n",
    "    data=distribution_df,\n",
    "    x=\"Class\",\n",
    "    y=\"Number of Images\",\n",
    "    palette=\"viridis\"\n",
    ")\n",
    "\n",
    "# Add data labels\n",
    "for p in ax.patches:\n",
    "\n",
    "    ax.annotate(\n",
    "\n",
    "        f\"{int(p.get_height())}\",\n",
    "\n",
    "        (p.get_x() + p.get_width()/2,\n",
    "         p.get_height()),\n",
    "\n",
    "        ha='center',\n",
    "\n",
    "        va='bottom',\n",
    "\n",
    "        fontsize=10,\n",
    "\n",
    "        fontweight='bold'\n",
    "    )\n",
    "\n",
    "plt.title(\n",
    "    \"Class Distribution of Training Dataset\",\n",
    "    fontsize=14,\n",
    "    fontweight=\"bold\"\n",
    ")\n",
    "\n",
    "plt.xlabel(\n",
    "    \"Disease Class\",\n",
    "    fontsize=12\n",
    ")\n",
    "\n",
    "plt.ylabel(\n",
    "    \"Number of Images\",\n",
    "    fontsize=12\n",
    ")\n",
    "\n",
    "plt.xticks(rotation=20)\n",
    "\n",
    "plt.tight_layout()\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5372be32",
   "metadata": {},
   "source": [
    "### Targeted Augmentation for Minority Classes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "134b94cc",
   "metadata": {},
   "outputs": [],
   "source": [
    "minority_gen = ImageDataGenerator(\n",
    "\n",
    "    rotation_range=40,\n",
    "\n",
    "    width_shift_range=0.20,\n",
    "\n",
    "    height_shift_range=0.20,\n",
    "\n",
    "    zoom_range=0.25,\n",
    "\n",
    "    brightness_range=[0.8,1.2],\n",
    "\n",
    "    horizontal_flip=True,\n",
    "\n",
    "    fill_mode='nearest'\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f4b2d0d3",
   "metadata": {},
   "source": [
    "### Generate Additional Images"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "5caca0c4",
   "metadata": {},
   "outputs": [],
   "source": [
    "from tensorflow.keras.utils import (\n",
    "    load_img,\n",
    "    img_to_array\n",
    ")\n",
    "\n",
    "minority_folder = (\n",
    "    \"plant_split_dataset/train/powdery_mildew\"\n",
    ")\n",
    "\n",
    "for file in os.listdir(minority_folder):\n",
    "\n",
    "    img_path = os.path.join(\n",
    "        minority_folder,\n",
    "        file\n",
    "    )\n",
    "\n",
    "    img = load_img(img_path)\n",
    "\n",
    "    img = img_to_array(img)\n",
    "\n",
    "    img = img.reshape(\n",
    "        (1,) + img.shape\n",
    "    )\n",
    "\n",
    "    i = 0\n",
    "\n",
    "    for batch in minority_gen.flow(\n",
    "\n",
    "        img,\n",
    "\n",
    "        batch_size=1,\n",
    "\n",
    "        save_to_dir=minority_folder,\n",
    "\n",
    "        save_prefix='aug',\n",
    "\n",
    "        save_format='jpg'\n",
    "    ):\n",
    "\n",
    "        i += 1\n",
    "\n",
    "        if i >= 3:\n",
    "            break"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "e3118427",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "['frog_eye_leaf_spot', 'healthy', 'powdery_mildew', 'rust', 'scab']\n"
     ]
    }
   ],
   "source": [
    "import os\n",
    "import numpy as np\n",
    "# Count Images Per Class\n",
    "train_dir = \"plant_split_dataset/train\"\n",
    "\n",
    "class_names = []\n",
    "labels = []\n",
    "\n",
    "for idx, class_name in enumerate(sorted(os.listdir(train_dir))):\n",
    "\n",
    "    class_path = os.path.join(\n",
    "        train_dir,\n",
    "        class_name\n",
    "    )\n",
    "\n",
    "    if os.path.isdir(class_path):\n",
    "\n",
    "        image_count = len(os.listdir(class_path))\n",
    "\n",
    "        class_names.append(class_name)\n",
    "\n",
    "        labels.extend(\n",
    "            [idx] * image_count\n",
    "        )\n",
    "\n",
    "print(class_names)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "825adcf7",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{np.int64(0): np.float64(1.182210242587601), np.int64(1): np.float64(0.8132262051915946), np.int64(2): np.float64(0.8725464190981432), np.int64(3): np.float64(2.021198156682028), np.int64(4): np.float64(0.7790408525754885)}\n"
     ]
    }
   ],
   "source": [
    "from sklearn.utils.class_weight import compute_class_weight\n",
    "# Compute class weights\n",
    "classes = np.unique(labels)\n",
    "\n",
    "weights = compute_class_weight(\n",
    "\n",
    "    class_weight='balanced',\n",
    "\n",
    "    classes=classes,\n",
    "\n",
    "    y=labels\n",
    ")\n",
    "\n",
    "class_weights = dict(\n",
    "    zip(classes, weights)\n",
    ")\n",
    "\n",
    "print(class_weights)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "43a6a2ae",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Class</th>\n",
       "      <th>Weight</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>frog_eye_leaf_spot</td>\n",
       "      <td>1.182210</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>healthy</td>\n",
       "      <td>0.813226</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>powdery_mildew</td>\n",
       "      <td>0.872546</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>rust</td>\n",
       "      <td>2.021198</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>scab</td>\n",
       "      <td>0.779041</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                Class    Weight\n",
       "0  frog_eye_leaf_spot  1.182210\n",
       "1             healthy  0.813226\n",
       "2      powdery_mildew  0.872546\n",
       "3                rust  2.021198\n",
       "4                scab  0.779041"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "weight_df = pd.DataFrame({\n",
    "\n",
    "    \"Class\": class_names,\n",
    "\n",
    "    \"Weight\": weights\n",
    "\n",
    "})\n",
    "\n",
    "weight_df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "16e8b001",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Natalia\\AppData\\Local\\Temp\\ipykernel_28900\\4247672820.py:3: FutureWarning: \n",
      "\n",
      "Passing `palette` without assigning `hue` is deprecated and will be removed in v0.14.0. Assign the `x` variable to `hue` and set `legend=False` for the same effect.\n",
      "\n",
      "  sns.barplot(\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1cAAAIjCAYAAADvBuGTAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAbJpJREFUeJzt3Xd8FNX+//H3EkghIYFASKElQKgCAaQjRSIBgUsRQeRKQJoKNgSvUWk21EtXlHKlqQgqxQKGHnoVwlVvpIaeACIkBCSB5Pz+4Md8XRMwkYEFeT0fj32wO3Pm7Odslt28MzNnHMYYIwAAAADADcnn6gIAAAAA4O+AcAUAAAAANiBcAQAAAIANCFcAAAAAYAPCFQAAAADYgHAFAAAAADYgXAEAAACADQhXAAAAAGADwhUAAAAA2IBwBQD42wgNDVXPnj1t7XPEiBFyOBy29nmniIuLk8PhUFxc3F/e9ssvv7S/MAC4TRGuAOA2sn//fvXv319ly5aVp6enfH191ahRI02YMEG//fabq8uzxZIlSzRixAhXl6GLFy9q3Lhxqlevnvz8/OTp6akKFSpo4MCB2rNnj6vLu6bMzEz5+vqqffv22daNGzdODodD0dHR2dYNGzZMDofjthzbnDlzNH78eFeXAQA3LL+rCwAAXLF48WI9/PDD8vDwUI8ePXTPPfcoIyND69ev15AhQ/TTTz9p6tSpri7zhi1ZskSTJk1yacD65Zdf1KpVK33//fdq27atHn30Ufn4+Gj37t2aO3eupk6dqoyMDJfVdz1ubm6qX7++Nm7cmG3dhg0blD9/fm3YsCHHdcWLF1eFChVy/VxNmjTRb7/9Jnd39xuq+c/MmTNHP/74o5577rmb+jwAcLMRrgDgNpCYmKhHHnlEZcqU0apVqxQcHGytGzBggPbt26fFixe7sMK/l549e2rnzp368ssv9dBDDzmte/311/XKK6+4qLLcady4sZYvX66EhARVrlzZWr5hwwZ16dJFc+bMUXJysoKCgiRJly9f1pYtW9SyZcs8PU++fPnk6elpa+0A8HfGYYEAcBt49913lZaWpo8++sgpWF1Vvnx5Pfvss9bjy5cv6/XXX1e5cuXk4eGh0NBQvfzyy0pPT3faLjQ0VG3btlVcXJzuvfdeeXl5qVq1atY5NAsWLFC1atXk6emp2rVra+fOnU7b9+zZUz4+Pjpw4ICioqLk7e2tkJAQvfbaazLGWO2udW7OwYMH5XA4NHPmTKu/SZMmSZIcDod1uyorK0vjx49X1apV5enpqcDAQPXv319nzpxx6tcYozfeeEMlS5ZUwYIF1bx5c/3000+5eq23bNmixYsXq3fv3tmClSR5eHho9OjR1+1jxowZuv/++1W8eHF5eHioSpUq+vDDD7O12759u6KiolSsWDF5eXkpLCxMjz/+uFObuXPnqnbt2ipUqJB8fX1VrVo1TZgw4brP37hxY0ly2kN14MABJScna+DAgfL09HRaFx8fr/Pnz1vbSdLPP/+szp07y9/fX56enrr33nv19ddfOz3PtX6ukyZNUtmyZeXl5aW6detq3bp1atasmZo1a5at1qysLL355psqWbKkPD091aJFC+3bt89a36xZMy1evFiHDh2y3g+hoaHW+vfee09Vq1ZVwYIFVaRIEd17772aM2fOdV8fAHAV9lwBwG3gm2++UdmyZdWwYcNcte/Tp49mzZqlzp0764UXXtCWLVs0atQoJSQkaOHChU5t9+3bp0cffVT9+/fXP//5T40ePVrt2rXT5MmT9fLLL+upp56SJI0aNUpdunTR7t27lS/f//3tLTMzU61atVL9+vX17rvvKjY2VsOHD9fly5f12muv5Wmc/fv31/Hjx7V8+XJ9/PHHOa6fOXOmevXqpWeeeUaJiYl6//33tXPnTm3YsEEFChSQdOX8oTfeeEMPPvigHnzwQe3YsUMtW7bM1aF8VwPEY489lqfaf+/DDz9U1apV9Y9//EP58+fXN998o6eeekpZWVkaMGCAJOnkyZNq2bKlAgIC9NJLL6lw4cI6ePCgFixYYPWzfPlydevWTS1atNA777wjSUpISNCGDRucwvQf1a9fX/nz59f69evVp08fSVeClre3t+rUqaN7771XGzZssMLj1aB1NVz99NNPatSokUqUKKGXXnpJ3t7e+vzzz9WhQwfNnz9fHTt2vO7YBw4cqPvuu0/PP/+8Dh48qA4dOqhIkSIqWbJktvZvv/228uXLp8GDByslJUXvvvuuunfvri1btkiSXnnlFaWkpOjo0aMaN26cJMnHx0eSNG3aND3zzDPq3Lmznn32WV28eFH//e9/tWXLFj366KO5+EkBwC1mAAAulZKSYiSZ9u3b56p9fHy8kWT69OnjtHzw4MFG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Rx/V0aNHNW3atDwdCoYrf6QYNGiQdu/erc8++0zvvfeenn32WYWHh6t9+/bq27ev1q9fr127dumf//ynSpQoofbt21vbX/1FPyIiQj4+PsqXL5+aNGmiTz/91OkPG5GRkapQoYLT/9lXXnnFqZYb/dzq06ePVq1apdjYWJe/D67udR89erT27t2r999/32mWP0kaNmyYZs+erZEjR+qnn35SQkKC5s6dq1dffdVq06RJE507d07ffvutFaSaNWumTz/9VMHBwapQocKtHNZdzcvLS/Xr19fbb7+thIQErVmzxulnJV35mX711Vfat2+ffvrpJ3377bfW9xbfOfi9LVu26K233tL27dt1+PBhLViwQKdOnVLlypU1YsQIjRkzRhMnTtTevXut37mkKzOEXrp0Se+9954OHDigjz/+WJMnT87Wf4ECBfT0009ry5Yt+v7779WzZ0/Vr1/f6ZQV5Ixw5QIlSpTQkiVLtHXrVtWoUUNPPPGEevfu7fQhO3bsWDVo0EBt27ZVZGSkGjVqpMqVK1uHevyZGTNmqEePHnrhhRdUsWJFdejQwWlP2FVXdwP/8ReJggULau3atSpdurQ6deqkypUrq3fv3rp48eJf2pP1+uuva+jQoRo1apQqV66sVq1aafHixdbUsv3791enTp3UtWtX1atXT6dPn3bai5VXBQsW1M8//6yHHnpIFSpUUL9+/TRgwAD179/falO+fHl16tRJDz74oFq2bKnq1avrgw8+sNY/88wzGjRokF544QVVq1ZNsbGx+vrrrxUeHi7pyl+6J06cqClTpigkJMTpF0Zcm8Ph0JIlS9SkSRP16tVLFSpU0COPPKJDhw4pMDBQ0pX3f5EiRdSwYUO1a9dOUVFRqlWr1nX7HTNmjJYvX65SpUpZfxXOLT8/Pz300EPy8fFRhw4d/urQ7ko9evTQb7/9prp162rAgAF69tln1a9fP0lXPodq166ttm3bqkGDBjLGaMmSJU6HyzVt2lSZmZlOe1CaNWuWbVm+fPm0cOFC67n69OmjN99806mWG/3cCg8PV8OGDVWpUqVs5zvdavXr19e0adM0YcIE1ahRQ8uWLcv2i3hUVJS+/fZbLVu2THXq1FH9+vU1btw4lSlTxmpTpEgRVatWTQEBAapUqZKkK4ErKyuL861cYPr06bp8+bJq166t5557Tm+88YbTend3d8XExKh69epq0qSJ3NzcNHfuXEl858CZr6+v1q5dqwcffFAVKlTQq6++qjFjxqh169aKjo7W+PHj9cEHH6hq1apq27atdRmMGjVqaOzYsXrnnXd0zz336NNPP9WoUaOy9V+wYEH961//0qOPPqpGjRrJx8dH8+bNu9XDvCM5zO8P/sVt6/z58ypRooTGjBmj3r1729bvxx9/rOeff17Hjx+/qy5uOGLECC1atIgr3cPSokULVa1aVRMnTnR1KXeMZs2aKSIiQuPHj3d1KbYwxig8PFxPPfWUBg0a5OpyAAB3IM65uk3t3LlTP//8s+rWrauUlBS99tprkmTbX6ouXLigpKQkvf322+rfv/9dFayA3ztz5ozi4uIUFxfntOcSd5dTp05p7ty5Sk5OVq9evVxdDgDgDkW4uo2NHj1au3fvlru7u2rXrq1169apWLFiWrdunVq3bn3N7XK6yvYfvfvuu3rzzTfVpEkTxcTE5Lm23886+EfffffddSfSsMvtUAPufDVr1tSZM2f0zjvv5PpyB/j7KV68uIoVK6apU6eqSJEiTuv4rAEA5BaHBd6BfvvtN+uaPDm53sxRdtm3b98115UoUeKWzLJ1O9QA4O+PzxoAQG4RrgAAAADABswWCAAAAAA2IFwBAAAAgA0IVwAAAABgA8IVAAAAANiAcAUAuK04HA4tWrTI1WXcVAcPHpTD4eBC5gDwN0O4AgDcdD179pTD4ZDD4VCBAgUUGBioBx54QNOnT1dWVpZT26SkpOtey+9OsG/fPvXq1UslS5aUh4eHwsLC1K1bN23fvt3VpQEAbiLCFQDglmjVqpWSkpJ08OBBfffdd2revLmeffZZtW3bVpcvX7baBQUFycPDw4WV3pjt27erdu3a2rNnj6ZMmaL//e9/WrhwoSpVqqQXXnjB1eUBAG4iwhUA4Jbw8PBQUFCQSpQooVq1aunll1/WV199pe+++04zZ8602v3+sMCMjAwNHDhQwcHB8vT0VJkyZTRq1Cir7dmzZ9WnTx8FBATI19dX999/v3bt2mWt379/v9q3b6/AwED5+PioTp06WrFihVNdH3zwgcLDw+Xp6anAwEB17tzZWpeVlaVRo0YpLCxMXl5eqlGjhr788strjtEYo549eyo8PFzr1q1TmzZtVK5cOUVERGj48OH66quvctwuMzNTvXv3tp6nYsWKmjBhglObuLg41a1bV97e3ipcuLAaNWqkQ4cOSZJ27dql5s2bq1ChQvL19VXt2rXZSwYALpDf1QUAAO5e999/v2rUqKEFCxaoT58+2dZPnDhRX3/9tT7//HOVLl1aR44c0ZEjR6z1Dz/8sLy8vPTdd9/Jz89PU6ZMUYsWLbRnzx75+/srLS1NDz74oN588015eHho9uzZateunXbv3q3SpUtr+/bteuaZZ/Txxx+rYcOG+vXXX7Vu3Tqr/1GjRumTTz7R5MmTFR4errVr1+qf//ynAgIC1LRp02z1xsfH66efftKcOXOUL1/2v18WLlw4x9chKytLJUuW1BdffKGiRYtq48aN6tevn4KDg9WlSxddvnxZHTp0UN++ffXZZ58pIyNDW7dulcPhkCR1795dNWvW1Icffig3NzfFx8erQIECef1xAABuEOEKAOBSlSpV0n//+98c1x0+fFjh4eFq3LixHA6HypQpY61bv369tm7dqpMnT1qHEY4ePVqLFi3Sl19+qX79+qlGjRqqUaOGtc3rr7+uhQsX6uuvv9bAgQN1+PBheXt7q23btipUqJDKlCmjmjVrSpLS09P11ltvacWKFWrQoIEkqWzZslq/fr2mTJmSY7jau3evNaa8KFCggEaOHGk9DgsL06ZNm/T555+rS5cuSk1NVUpKitq2baty5cpJkipXruz0Og0ZMsR63vDw8Dw9PwDAHhwWCABwKWOMtQfmj3r27Kn4+HhVrFhRzzzzjJYtW2at27Vrl9LS0lS0aFH5+PhYt8TERO3fv1+SlJaWpsGDB6ty5coqXLiwfHx8lJCQoMOHD0uSHnjgAZUpU0Zly5bVY489pk8//VQXLlyQdGVSigsXLuiBBx5w6n/27NlW/zmN5a+aNGmSateurYCAAPn4+Gjq1KlWnf7+/urZs6eioqLUrl07TZgwQUlJSda2gwYNUp8+fRQZGam33377mvUBAG4uwhUAwKUSEhIUFhaW47patWopMTFRr7/+un777Td16dLFOicqLS1NwcHBio+Pd7rt3r1bQ4YMkSQNHjxYCxcu1FtvvaV169YpPj5e1apVU0ZGhiSpUKFC2rFjhz777DMFBwdr2LBhqlGjhs6ePau0tDRJ0uLFi536/9///nfN864qVKggSfr555/z9BrMnTtXgwcPVu/evbVs2TLFx8erV69eVp2SNGPGDG3atEkNGzbUvHnzVKFCBW3evFmSNGLECP30009q06aNVq1apSpVqmjhwoV5qgEAcOM4LBAA4DKrVq3SDz/8oOeff/6abXx9fdW1a1d17dpVnTt3VqtWrfTrr7+qVq1aSk5OVv78+RUaGprjths2bFDPnj3VsWNHSVcC2cGDB53a5M+fX5GRkYqMjNTw4cNVuHBhrVq1Sg888IA8PDx0+PDhHA8BzElERISqVKmiMWPGqGvXrtnOuzp79myO511t2LBBDRs21FNPPWUty2nvU82aNVWzZk3FxMSoQYMGmjNnjurXry/pSrCrUKGCnn/+eXXr1k0zZsywxg0AuDUIVwCAWyI9PV3JycnKzMzUiRMnFBsbq1GjRqlt27bq0aNHjtuMHTtWwcHBqlmzpvLly6cvvvhCQUFBKly4sCIjI9WgQQN16NBB7777ripUqKDjx49r8eLF6tixo+69916Fh4drwYIFateunRwOh4YOHep0Xa1vv/1WBw4cUJMmTVSkSBEtWbJEWVlZqlixogoVKqTBgwfr+eefV1ZWlho3bqyUlBRt2LBBvr6+io6Ozlavw+HQjBkzFBkZqfvuu0+vvPKKKlWqpLS0NH3zzTdatmyZ1qxZk2278PBwzZ49W0uXLlVYWJg+/vhjbdu2zdqjl5iYqKlTp+of//iHQkJCtHv3bu3du1c9evTQb7/9piFDhqhz584KCwvT0aNHtW3bNj300EM2/eQAALlFuAIA3BKxsbEKDg5W/vz5VaRIEdWoUUMTJ05UdHR0jjPrSVcO23v33Xe1d+9eubm5qU6dOlqyZInVfsmSJXrllVfUq1cvnTp1SkFBQWrSpIkCAwMlXQlnjz/+uBo2bKhixYrpX//6l1JTU63+CxcurAULFmjEiBG6ePGiwsPD9dlnn6lq1aqSrkyAERAQoFGjRunAgQMqXLiwNY38tdStW1fbt2/Xm2++qb59++qXX35RcHCwGjZsqPHjx+e4Tf/+/bVz50517dpVDodD3bp101NPPaXvvvtOklSwYEH9/PPPmjVrlk6fPq3g4GANGDBA/fv31+XLl3X69Gn16NFDJ06cULFixdSpUyenCTIAALeGw9zI2bcAAAAAAElMaAEAAAAAtiBcAQAAAIANCFcAAAAAYAPCFQAAAADYgHAFAAAAADYgXAEAAACADQhXAAAAAGADwhUAAAAA2IBwBQAAAAA2IFwBAAAAgA0IVwAAAABgg/8HT4+VepPAV7oAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 1000x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(10,6))\n",
    "\n",
    "sns.barplot(\n",
    "\n",
    "    data=weight_df,\n",
    "\n",
    "    x=\"Class\",\n",
    "\n",
    "    y=\"Weight\",\n",
    "\n",
    "    palette=\"magma\"\n",
    ")\n",
    "\n",
    "plt.title(\n",
    "    \"Computed Class Weights\"\n",
    ")\n",
    "\n",
    "plt.xlabel(\n",
    "    \"Disease Class\"\n",
    ")\n",
    "\n",
    "plt.ylabel(\n",
    "    \"Weight\"\n",
    ")\n",
    "\n",
    "for i, weight in enumerate(weight_df[\"Weight\"]):\n",
    "\n",
    "    plt.text(\n",
    "\n",
    "        i,\n",
    "\n",
    "        weight + 0.03,\n",
    "\n",
    "        f\"{weight:.2f}\",\n",
    "\n",
    "        ha='center',\n",
    "\n",
    "        fontweight='bold'\n",
    "    )\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a6d290f4",
   "metadata": {},
   "source": [
    "### Create Updated Data Generators"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "f4b40692",
   "metadata": {},
   "outputs": [],
   "source": [
    "#Create Updated Data Generators (from CNN model 2 for CNN model 3)\n",
    "#Training Generator\n",
    "from tensorflow.keras.preprocessing.image import ImageDataGenerator\n",
    "\n",
    "train_datagen = ImageDataGenerator(\n",
    "\n",
    "    rescale=1./255,\n",
    "\n",
    "    rotation_range=30,\n",
    "\n",
    "    width_shift_range=0.15,\n",
    "\n",
    "    height_shift_range=0.15,\n",
    "\n",
    "    zoom_range=0.20,\n",
    "\n",
    "    horizontal_flip=True,\n",
    "\n",
    "    brightness_range=[0.8,1.2],\n",
    "\n",
    "    fill_mode='nearest'\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "55e5e808",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found 13158 images belonging to 5 classes.\n"
     ]
    }
   ],
   "source": [
    "# train_generator = train_datagen.flow_from_directory(\n",
    "train_generator = train_datagen.flow_from_directory(\n",
    "\n",
    "    \"plant_split_dataset/train\",\n",
    "\n",
    "    target_size=(224,224),\n",
    "\n",
    "    batch_size=32,\n",
    "\n",
    "    class_mode='categorical'\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "fd92a10c",
   "metadata": {},
   "outputs": [],
   "source": [
    "#validation generator\n",
    "validation_datagen = ImageDataGenerator(\n",
    "    rescale=1./255\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "id": "b2524177",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found 2352 images belonging to 5 classes.\n"
     ]
    }
   ],
   "source": [
    "# validation generator \n",
    "validation_generator = validation_datagen.flow_from_directory(\n",
    "\n",
    "    \"plant_split_dataset/validation\",\n",
    "\n",
    "    target_size=(224,224),\n",
    "\n",
    "    batch_size=32,\n",
    "\n",
    "    class_mode='categorical',\n",
    "\n",
    "    shuffle=False\n",
    ")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "id": "ba30c6b9",
   "metadata": {},
   "outputs": [],
   "source": [
    "# test generator\n",
    "test_datagen = ImageDataGenerator(\n",
    "    rescale=1./255\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "id": "0b328376",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found 2353 images belonging to 5 classes.\n"
     ]
    }
   ],
   "source": [
    "# test generator\n",
    "test_generator = test_datagen.flow_from_directory(\n",
    "\n",
    "    \"plant_split_dataset/test\",\n",
    "\n",
    "    target_size=(224,224),\n",
    "\n",
    "    batch_size=32,\n",
    "\n",
    "    class_mode='categorical',\n",
    "\n",
    "    shuffle=False\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "id": "9169ca31",
   "metadata": {},
   "outputs": [],
   "source": [
    "# define focal loss function (provides additional attention to difficult-to-classify samples\n",
    "# Instead of learning mostly from easy samples, the model focuses on images it struggles to classify.)\n",
    "import tensorflow as tf\n",
    "\n",
    "def focal_loss(gamma=2.0, alpha=0.25):\n",
    "\n",
    "    def loss(y_true, y_pred):\n",
    "\n",
    "        y_pred = tf.clip_by_value(\n",
    "            y_pred,\n",
    "            1e-7,\n",
    "            1.0\n",
    "        )\n",
    "\n",
    "        cross_entropy = (\n",
    "            -y_true *\n",
    "            tf.math.log(y_pred)\n",
    "        )\n",
    "\n",
    "        weights = (\n",
    "            alpha *\n",
    "            tf.pow(\n",
    "                1 - y_pred,\n",
    "                gamma\n",
    "            )\n",
    "        )\n",
    "\n",
    "        focal = weights * cross_entropy\n",
    "\n",
    "        return tf.reduce_mean(focal)\n",
    "\n",
    "    return loss"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "id": "88f94a77",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\">Model: \"sequential_3\"</span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1mModel: \"sequential_3\"\u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\">┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
       "┃<span style=\"font-weight: bold\"> Layer (type)                    </span>┃<span style=\"font-weight: bold\"> Output Shape           </span>┃<span style=\"font-weight: bold\">       Param # </span>┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
       "│ conv2d_12 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Conv2D</span>)              │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">222</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">222</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">32</span>)   │           <span style=\"color: #00af00; text-decoration-color: #00af00\">896</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_12 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">MaxPooling2D</span>) │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">111</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">111</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">32</span>)   │             <span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ conv2d_13 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Conv2D</span>)              │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">109</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">109</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">64</span>)   │        <span style=\"color: #00af00; text-decoration-color: #00af00\">18,496</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_13 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">MaxPooling2D</span>) │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">54</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">54</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">64</span>)     │             <span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ conv2d_14 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Conv2D</span>)              │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">52</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">52</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">128</span>)    │        <span style=\"color: #00af00; text-decoration-color: #00af00\">73,856</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_14 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">MaxPooling2D</span>) │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">26</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">26</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">128</span>)    │             <span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ conv2d_15 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Conv2D</span>)              │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">24</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">24</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">256</span>)    │       <span style=\"color: #00af00; text-decoration-color: #00af00\">295,168</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_15 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">MaxPooling2D</span>) │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">12</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">12</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">256</span>)    │             <span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ flatten_3 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Flatten</span>)             │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">36864</span>)          │             <span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dense_6 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Dense</span>)                 │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">256</span>)            │     <span style=\"color: #00af00; text-decoration-color: #00af00\">9,437,440</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dropout_3 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Dropout</span>)             │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">256</span>)            │             <span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dense_7 (<span style=\"color: #0087ff; text-decoration-color: #0087ff\">Dense</span>)                 │ (<span style=\"color: #00d7ff; text-decoration-color: #00d7ff\">None</span>, <span style=\"color: #00af00; text-decoration-color: #00af00\">5</span>)              │         <span style=\"color: #00af00; text-decoration-color: #00af00\">1,285</span> │\n",
       "└─────────────────────────────────┴────────────────────────┴───────────────┘\n",
       "</pre>\n"
      ],
      "text/plain": [
       "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
       "┃\u001b[1m \u001b[0m\u001b[1mLayer (type)                   \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape          \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m      Param #\u001b[0m\u001b[1m \u001b[0m┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
       "│ conv2d_12 (\u001b[38;5;33mConv2D\u001b[0m)              │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m222\u001b[0m, \u001b[38;5;34m222\u001b[0m, \u001b[38;5;34m32\u001b[0m)   │           \u001b[38;5;34m896\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_12 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m111\u001b[0m, \u001b[38;5;34m111\u001b[0m, \u001b[38;5;34m32\u001b[0m)   │             \u001b[38;5;34m0\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ conv2d_13 (\u001b[38;5;33mConv2D\u001b[0m)              │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m109\u001b[0m, \u001b[38;5;34m109\u001b[0m, \u001b[38;5;34m64\u001b[0m)   │        \u001b[38;5;34m18,496\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_13 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m54\u001b[0m, \u001b[38;5;34m54\u001b[0m, \u001b[38;5;34m64\u001b[0m)     │             \u001b[38;5;34m0\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ conv2d_14 (\u001b[38;5;33mConv2D\u001b[0m)              │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m52\u001b[0m, \u001b[38;5;34m52\u001b[0m, \u001b[38;5;34m128\u001b[0m)    │        \u001b[38;5;34m73,856\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_14 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m26\u001b[0m, \u001b[38;5;34m26\u001b[0m, \u001b[38;5;34m128\u001b[0m)    │             \u001b[38;5;34m0\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ conv2d_15 (\u001b[38;5;33mConv2D\u001b[0m)              │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m24\u001b[0m, \u001b[38;5;34m24\u001b[0m, \u001b[38;5;34m256\u001b[0m)    │       \u001b[38;5;34m295,168\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_15 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m12\u001b[0m, \u001b[38;5;34m12\u001b[0m, \u001b[38;5;34m256\u001b[0m)    │             \u001b[38;5;34m0\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ flatten_3 (\u001b[38;5;33mFlatten\u001b[0m)             │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m36864\u001b[0m)          │             \u001b[38;5;34m0\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dense_6 (\u001b[38;5;33mDense\u001b[0m)                 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m256\u001b[0m)            │     \u001b[38;5;34m9,437,440\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dropout_3 (\u001b[38;5;33mDropout\u001b[0m)             │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m256\u001b[0m)            │             \u001b[38;5;34m0\u001b[0m │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dense_7 (\u001b[38;5;33mDense\u001b[0m)                 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m5\u001b[0m)              │         \u001b[38;5;34m1,285\u001b[0m │\n",
       "└─────────────────────────────────┴────────────────────────┴───────────────┘\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Total params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">9,827,141</span> (37.49 MB)\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m9,827,141\u001b[0m (37.49 MB)\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Trainable params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">9,827,141</span> (37.49 MB)\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m9,827,141\u001b[0m (37.49 MB)\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"font-weight: bold\"> Non-trainable params: </span><span style=\"color: #00af00; text-decoration-color: #00af00\">0</span> (0.00 B)\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Reusing the best-performing CNN model2 architecture.\n",
    "model3 = Sequential([\n",
    "    Input(shape=(224,224,3)),\n",
    "\n",
    "    Conv2D(32,(3,3),activation='relu'),\n",
    "    MaxPooling2D(2,2),\n",
    "\n",
    "    Conv2D(64,(3,3),activation='relu'),\n",
    "    MaxPooling2D(2,2),\n",
    "\n",
    "    Conv2D(128,(3,3),activation='relu'),\n",
    "    MaxPooling2D(2,2),\n",
    "\n",
    "    Conv2D(256,(3,3),activation='relu'),\n",
    "    MaxPooling2D(2,2),\n",
    "\n",
    "    Flatten(),\n",
    "\n",
    "    Dense(256,activation='relu'),\n",
    "    Dropout(0.5),\n",
    "\n",
    "    Dense(5,activation='softmax')\n",
    "])\n",
    "model3.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "id": "44a753a5",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "WARNING:tensorflow:TensorFlow GPU support is not available on native Windows for TensorFlow >= 2.11. Even if CUDA/cuDNN are installed, GPU will not be used. Please use WSL2 or the TensorFlow-DirectML plugin.\n"
     ]
    }
   ],
   "source": [
    "# Compile Model,using Adam optimisation together with Focal Loss. \n",
    "from tensorflow.keras.optimizers import Adam\n",
    "\n",
    "model3.compile(\n",
    "\n",
    "    optimizer=Adam(\n",
    "        learning_rate=0.001\n",
    "    ),\n",
    "\n",
    "    loss=focal_loss(),\n",
    "\n",
    "    metrics=['accuracy']\n",
    ")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "id": "98ef28ff",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Create Callbacks for Early Stopping\n",
    "from tensorflow.keras.callbacks import EarlyStopping\n",
    "\n",
    "early_stop = EarlyStopping(\n",
    "\n",
    "    monitor='val_loss',\n",
    "\n",
    "    patience=5,\n",
    "\n",
    "    restore_best_weights=True\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "id": "efc6f39e",
   "metadata": {},
   "outputs": [],
   "source": [
    "#Create Callbacks for Learning Rate Scheduling\n",
    "from tensorflow.keras.callbacks import ReduceLROnPlateau\n",
    "\n",
    "reduce_lr = ReduceLROnPlateau(\n",
    "\n",
    "    monitor='val_loss',\n",
    "\n",
    "    factor=0.5,\n",
    "\n",
    "    patience=3,\n",
    "\n",
    "    min_lr=1e-6,\n",
    "\n",
    "    verbose=1\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "id": "ed0f0419",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Create Callbacks, Save Best Model\n",
    "from tensorflow.keras.callbacks import ModelCheckpoint\n",
    "\n",
    "checkpoint = ModelCheckpoint(\n",
    "\n",
    "    \"3plant_disease_best_balanced_cnn.keras\",\n",
    "\n",
    "    monitor='val_accuracy',\n",
    "\n",
    "    save_best_only=True,\n",
    "\n",
    "    verbose=1\n",
    ")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "95a2252b",
   "metadata": {},
   "source": [
    "### Train Improved CNN Model3"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "id": "8b100395",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.4256 - loss: 0.0408\n",
      "Epoch 1: val_accuracy improved from None to 0.53104, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 1: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m564s\u001b[0m 1s/step - accuracy: 0.4256 - loss: 0.0408 - val_accuracy: 0.5310 - val_loss: 0.0310 - learning_rate: 0.0010\n",
      "Epoch 2/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.5913 - loss: 0.0258\n",
      "Epoch 2: val_accuracy improved from 0.53104 to 0.63776, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 2: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m528s\u001b[0m 1s/step - accuracy: 0.5913 - loss: 0.0258 - val_accuracy: 0.6378 - val_loss: 0.0174 - learning_rate: 0.0010\n",
      "Epoch 3/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.6344 - loss: 0.0211\n",
      "Epoch 3: val_accuracy improved from 0.63776 to 0.64881, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 3: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m527s\u001b[0m 1s/step - accuracy: 0.6344 - loss: 0.0211 - val_accuracy: 0.6488 - val_loss: 0.0190 - learning_rate: 0.0010\n",
      "Epoch 4/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.6630 - loss: 0.0186\n",
      "Epoch 4: val_accuracy improved from 0.64881 to 0.66199, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 4: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m553s\u001b[0m 1s/step - accuracy: 0.6630 - loss: 0.0186 - val_accuracy: 0.6620 - val_loss: 0.0156 - learning_rate: 0.0010\n",
      "Epoch 5/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.6856 - loss: 0.0171\n",
      "Epoch 5: val_accuracy did not improve from 0.66199\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m530s\u001b[0m 1s/step - accuracy: 0.6856 - loss: 0.0171 - val_accuracy: 0.6552 - val_loss: 0.0152 - learning_rate: 0.0010\n",
      "Epoch 6/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.7145 - loss: 0.0154\n",
      "Epoch 6: val_accuracy improved from 0.66199 to 0.74277, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 6: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m597s\u001b[0m 1s/step - accuracy: 0.7145 - loss: 0.0154 - val_accuracy: 0.7428 - val_loss: 0.0114 - learning_rate: 0.0010\n",
      "Epoch 7/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.7398 - loss: 0.0139\n",
      "Epoch 7: val_accuracy improved from 0.74277 to 0.77423, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 7: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m521s\u001b[0m 1s/step - accuracy: 0.7398 - loss: 0.0139 - val_accuracy: 0.7742 - val_loss: 0.0118 - learning_rate: 0.0010\n",
      "Epoch 8/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.7500 - loss: 0.0134\n",
      "Epoch 8: val_accuracy improved from 0.77423 to 0.78019, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 8: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m479s\u001b[0m 1s/step - accuracy: 0.7500 - loss: 0.0134 - val_accuracy: 0.7802 - val_loss: 0.0113 - learning_rate: 0.0010\n",
      "Epoch 9/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.7759 - loss: 0.0123\n",
      "Epoch 9: val_accuracy improved from 0.78019 to 0.84481, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 9: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m512s\u001b[0m 1s/step - accuracy: 0.7759 - loss: 0.0123 - val_accuracy: 0.8448 - val_loss: 0.0088 - learning_rate: 0.0010\n",
      "Epoch 10/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.8110 - loss: 0.0109\n",
      "Epoch 10: val_accuracy did not improve from 0.84481\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m495s\u001b[0m 1s/step - accuracy: 0.8110 - loss: 0.0109 - val_accuracy: 0.8253 - val_loss: 0.0100 - learning_rate: 0.0010\n",
      "Epoch 11/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.8417 - loss: 0.0097\n",
      "Epoch 11: val_accuracy improved from 0.84481 to 0.84694, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 11: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m532s\u001b[0m 1s/step - accuracy: 0.8417 - loss: 0.0097 - val_accuracy: 0.8469 - val_loss: 0.0098 - learning_rate: 0.0010\n",
      "Epoch 12/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.8491 - loss: 0.0096\n",
      "Epoch 12: val_accuracy improved from 0.84694 to 0.86862, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 12: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m595s\u001b[0m 1s/step - accuracy: 0.8491 - loss: 0.0096 - val_accuracy: 0.8686 - val_loss: 0.0080 - learning_rate: 0.0010\n",
      "Epoch 13/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.8697 - loss: 0.0084\n",
      "Epoch 13: val_accuracy improved from 0.86862 to 0.89753, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 13: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m623s\u001b[0m 2s/step - accuracy: 0.8697 - loss: 0.0084 - val_accuracy: 0.8975 - val_loss: 0.0069 - learning_rate: 0.0010\n",
      "Epoch 14/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.8763 - loss: 0.0078\n",
      "Epoch 14: val_accuracy did not improve from 0.89753\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m595s\u001b[0m 1s/step - accuracy: 0.8763 - loss: 0.0078 - val_accuracy: 0.8907 - val_loss: 0.0082 - learning_rate: 0.0010\n",
      "Epoch 15/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.8890 - loss: 0.0076\n",
      "Epoch 15: val_accuracy improved from 0.89753 to 0.91497, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 15: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m567s\u001b[0m 1s/step - accuracy: 0.8890 - loss: 0.0076 - val_accuracy: 0.9150 - val_loss: 0.0057 - learning_rate: 0.0010\n",
      "Epoch 16/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.8891 - loss: 0.0069\n",
      "Epoch 16: val_accuracy did not improve from 0.91497\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m509s\u001b[0m 1s/step - accuracy: 0.8891 - loss: 0.0069 - val_accuracy: 0.9094 - val_loss: 0.0067 - learning_rate: 0.0010\n",
      "Epoch 17/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9010 - loss: 0.0066\n",
      "Epoch 17: val_accuracy did not improve from 0.91497\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m508s\u001b[0m 1s/step - accuracy: 0.9010 - loss: 0.0066 - val_accuracy: 0.9060 - val_loss: 0.0071 - learning_rate: 0.0010\n",
      "Epoch 18/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.8909 - loss: 0.0069\n",
      "Epoch 18: ReduceLROnPlateau reducing learning rate to 0.0005000000237487257.\n",
      "\n",
      "Epoch 18: val_accuracy did not improve from 0.91497\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m513s\u001b[0m 1s/step - accuracy: 0.8909 - loss: 0.0069 - val_accuracy: 0.8797 - val_loss: 0.0079 - learning_rate: 0.0010\n",
      "Epoch 19/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9114 - loss: 0.0055\n",
      "Epoch 19: val_accuracy did not improve from 0.91497\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m510s\u001b[0m 1s/step - accuracy: 0.9114 - loss: 0.0055 - val_accuracy: 0.9145 - val_loss: 0.0063 - learning_rate: 5.0000e-04\n",
      "Epoch 20/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9153 - loss: 0.0052\n",
      "Epoch 20: val_accuracy improved from 0.91497 to 0.91539, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 20: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m555s\u001b[0m 1s/step - accuracy: 0.9153 - loss: 0.0052 - val_accuracy: 0.9154 - val_loss: 0.0051 - learning_rate: 5.0000e-04\n",
      "Epoch 21/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9204 - loss: 0.0050\n",
      "Epoch 21: val_accuracy improved from 0.91539 to 0.92219, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 21: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m513s\u001b[0m 1s/step - accuracy: 0.9204 - loss: 0.0050 - val_accuracy: 0.9222 - val_loss: 0.0052 - learning_rate: 5.0000e-04\n",
      "Epoch 22/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9207 - loss: 0.0049\n",
      "Epoch 22: val_accuracy improved from 0.92219 to 0.92304, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 22: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m527s\u001b[0m 1s/step - accuracy: 0.9207 - loss: 0.0049 - val_accuracy: 0.9230 - val_loss: 0.0055 - learning_rate: 5.0000e-04\n",
      "Epoch 23/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9221 - loss: 0.0048\n",
      "Epoch 23: ReduceLROnPlateau reducing learning rate to 0.0002500000118743628.\n",
      "\n",
      "Epoch 23: val_accuracy did not improve from 0.92304\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m524s\u001b[0m 1s/step - accuracy: 0.9221 - loss: 0.0048 - val_accuracy: 0.9226 - val_loss: 0.0057 - learning_rate: 5.0000e-04\n",
      "Epoch 24/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9321 - loss: 0.0041\n",
      "Epoch 24: val_accuracy did not improve from 0.92304\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m502s\u001b[0m 1s/step - accuracy: 0.9321 - loss: 0.0041 - val_accuracy: 0.9167 - val_loss: 0.0046 - learning_rate: 2.5000e-04\n",
      "Epoch 25/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9311 - loss: 0.0041\n",
      "Epoch 25: val_accuracy improved from 0.92304 to 0.93750, saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\n",
      "Epoch 25: finished saving model to 3plant_disease_best_balanced_cnn.keras\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m518s\u001b[0m 1s/step - accuracy: 0.9311 - loss: 0.0041 - val_accuracy: 0.9375 - val_loss: 0.0040 - learning_rate: 2.5000e-04\n",
      "Epoch 26/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9341 - loss: 0.0039\n",
      "Epoch 26: val_accuracy did not improve from 0.93750\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m515s\u001b[0m 1s/step - accuracy: 0.9341 - loss: 0.0039 - val_accuracy: 0.9345 - val_loss: 0.0040 - learning_rate: 2.5000e-04\n",
      "Epoch 27/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9336 - loss: 0.0038\n",
      "Epoch 27: val_accuracy did not improve from 0.93750\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m489s\u001b[0m 1s/step - accuracy: 0.9336 - loss: 0.0038 - val_accuracy: 0.9298 - val_loss: 0.0045 - learning_rate: 2.5000e-04\n",
      "Epoch 28/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9384 - loss: 0.0038\n",
      "Epoch 28: ReduceLROnPlateau reducing learning rate to 0.0001250000059371814.\n",
      "\n",
      "Epoch 28: val_accuracy did not improve from 0.93750\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m549s\u001b[0m 1s/step - accuracy: 0.9384 - loss: 0.0038 - val_accuracy: 0.9358 - val_loss: 0.0040 - learning_rate: 2.5000e-04\n",
      "Epoch 29/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9428 - loss: 0.0033\n",
      "Epoch 29: val_accuracy did not improve from 0.93750\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m519s\u001b[0m 1s/step - accuracy: 0.9428 - loss: 0.0033 - val_accuracy: 0.9341 - val_loss: 0.0041 - learning_rate: 1.2500e-04\n",
      "Epoch 30/30\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1s/step - accuracy: 0.9470 - loss: 0.0033\n",
      "Epoch 30: val_accuracy did not improve from 0.93750\n",
      "\u001b[1m412/412\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m551s\u001b[0m 1s/step - accuracy: 0.9470 - loss: 0.0033 - val_accuracy: 0.9324 - val_loss: 0.0044 - learning_rate: 1.2500e-04\n"
     ]
    }
   ],
   "source": [
    "# Train Improved CNN Model3\n",
    "history = model3.fit(\n",
    "\n",
    "    train_generator,\n",
    "\n",
    "    validation_data=validation_generator,\n",
    "\n",
    "    epochs=30,\n",
    "\n",
    "    class_weight=class_weights,\n",
    "\n",
    "    callbacks=[\n",
    "\n",
    "        early_stop,\n",
    "\n",
    "        reduce_lr,\n",
    "\n",
    "        checkpoint\n",
    "    ]\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "id": "b364047f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Final model saved successfully as '3plant_disease_final_balanced_cnn.keras'\n"
     ]
    }
   ],
   "source": [
    "#Saving the Final Model\n",
    "model3.save(\"3plant_disease_final_balanced_cnn.keras\")\n",
    "print(\"Final model saved successfully as '3plant_disease_final_balanced_cnn.keras'\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "id": "655562d4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA04AAAIjCAYAAAA0vUuxAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAm2VJREFUeJzs3Xd4FGXbxuHf7qb3kEBIIBB6b9JsYANRioKogHQBXwsq9oaIqGBBRMVX/JSmVEVAFBWB1wbSpPcaeigJpPfd+f4YWAgJkECSJeE6j2OP7MxOuXcJkCvPM/dYDMMwEBERERERkQuyuroAERERERGRq52Ck4iIiIiIyCUoOImIiIiIiFyCgpOIiIiIiMglKDiJiIiIiIhcgoKTiIiIiIjIJSg4iYiIiIiIXIKCk4iIiIiIyCUoOImIiIiIiFyCgpOISCHp168fUVFRl7Xv8OHDsVgshVvQVWbfvn1YLBYmT55c7Oe2WCwMHz7cuTx58mQsFgv79u275L5RUVH069evUOu5ku8VERFxDQUnESn1LBZLvh5//PGHq0u95j311FNYLBZ27959wW1ee+01LBYLGzduLMbKCu7IkSMMHz6c9evXu7qUPG3btg2LxYKXlxfx8fGuLkdE5Kqn4CQipd4333yT49G2bds819epU+eKzvPll1+yY8eOy9p36NChpKWlXdH5S4OePXsCMH369AtuM2PGDBo0aEDDhg0v+zy9e/cmLS2NypUrX/YxLuXIkSO8+eabeQanK/leKSxTp06lfPnyAMyePdultYiIlARuri5ARKSo9erVK8fyihUrWLRoUa7150tNTcXHxyff53F3d7+s+gDc3Nxwc9M/yS1btqR69erMmDGDYcOG5Xp9+fLlREdH8+67717ReWw2Gzab7YqOcSWu5HulMBiGwfTp03nooYeIjo5m2rRpDBw40KU1XUhKSgq+vr6uLkNERCNOIiIAt956K/Xr12fNmjW0bt0aHx8fXn31VQB++OEHOnToQEREBJ6enlSrVo233noLu92e4xjnX7dy5pqe0aNH83//939Uq1YNT09PmjdvzurVq3Psm9c1ThaLhcGDBzNv3jzq16+Pp6cn9erV49dff81V/x9//EGzZs3w8vKiWrVqfPHFF/m+burvv//mgQceoFKlSnh6ehIZGckzzzyTawSsX79++Pn5cfjwYTp37oyfnx9ly5bl+eefz/VZxMfH069fPwIDAwkKCqJv3775ng7Ws2dPtm/fztq1a3O9Nn36dCwWCz169CAzM5Nhw4bRtGlTAgMD8fX1pVWrVvz++++XPEde1zgZhsHbb79NxYoV8fHx4bbbbmPLli259j158iTPP/88DRo0wM/Pj4CAAO6++242bNjg3OaPP/6gefPmAPTv3985HfTM9V15XeOUkpLCc889R2RkJJ6entSqVYvRo0djGEaO7QryfXEhy5YtY9++fXTv3p3u3bvz119/cejQoVzbORwOPv74Yxo0aICXlxdly5blrrvu4t9//82x3dSpU2nRogU+Pj4EBwfTunVrfvvttxw1n3uN2RnnXz925s/lzz//5PHHH6dcuXJUrFgRgP379/P4449Tq1YtvL29CQkJ4YEHHsjzOrX4+HieeeYZoqKi8PT0pGLFivTp04fY2FiSk5Px9fXl6aefzrXfoUOHsNlsjBo1Kp+fpIhcS/TrTRGR0+Li4rj77rvp3r07vXr1IiwsDDB/mPPz8+PZZ5/Fz8+P//3vfwwbNozExEQ++OCDSx53+vTpJCUl8Z///AeLxcL777/Pfffdx969ey858rB06VLmzJnD448/jr+/P5988gldu3blwIEDhISEALBu3TruuusuwsPDefPNN7Hb7YwYMYKyZcvm631/9913pKam8thjjxESEsKqVav49NNPOXToEN99912Obe12O+3ataNly5aMHj2axYsX8+GHH1KtWjUee+wxwAwg9957L0uXLuXRRx+lTp06zJ07l759++arnp49e/Lmm28yffp0rrvuuhzn/vbbb2nVqhWVKlUiNjaWr776ih49ejBo0CCSkpKYMGEC7dq1Y9WqVTRu3Dhf5ztj2LBhvP3227Rv35727duzdu1a7rzzTjIzM3Nst3fvXubNm8cDDzxAlSpVOHbsGF988QW33HILW7duJSIigjp16jBixAiGDRvGI488QqtWrQC48cYb8zy3YRjcc889/P777wwYMIDGjRuzcOFCXnjhBQ4fPsxHH32UY/v8fF9czLRp06hWrRrNmzenfv36+Pj4MGPGDF544YUc2w0YMIDJkydz9913M3DgQLKzs/n7779ZsWIFzZo1A+DNN99k+PDh3HjjjYwYMQIPDw9WrlzJ//73P+688858f/7nevzxxylbtizDhg0j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vOCoU7Vq1XA4HGzduvWizTiCg4NzdVXMzMwkJiYm37XPnj2bvn378uGHHzrXpaen5zputWrV2Lx58yWPV79+fZo0acK0adOoWLEiBw4c4NNPP813PSJy7dGIk4jIRZz5zf65v4XPzMzkv//9r6tKysFms9GmTRvmzZvHkSNHnOt3796d67qYC+0POd+fYRh8/PHHl11T+/btyc7O5vPPP3eus9vtBf6htHPnzvj4+PDf//6XX375hfvuuw8vL6+L1r5y5UqWL19e4JrbtGmDu7s7n376aY7jjR07Nte2Npst16jMd999x+HDh3OsO3Pvofy0YW/fvj12u51x48blWP/RRx9hsVjyfb3apUydOpWqVavy6KOPcv/99+d4PP/88/j5+Tmn63Xt2hXDMHjzzTdzHefM++/cuTNWq5URI0bkGvU59zOqVq1ajuvVAP7v//7vgiNOecnrc//0009zHaNr165s2LCBuXPnXrDuM3r37s1vv/3G2LFjCQkJKbTPWURKJ404iYhcxI033khwcDB9+/blqaeewmKx8M033xTrdKZLGT58OL/99hs33XQTjz32mPMH8Pr167N+/fqL7lu7dm2qVavG888/z+HDhwkICOD777/P17UyF9KpUyduuukmXn75Zfbt20fdunWZM2dOga//8fPzo3Pnzs7rnM5vEd2xY0fmzJlDly5d6NChA9HR0YwfP566deuSnJxcoHOduR/VqFGj6NixI+3bt2fdunX88ssvuUZmOnbsyIgRI+jfvz833ngjmzZtYtq0aTlGqsAMC0FBQYwfPx5/f398fX1p2bJlntfvdOrUidtuu43XXnuNffv20ahRI3777Td++OEHhgwZkqMRxOU6cuQIv//+e64GFGd4enrSrl07vvvuOz755BNuu+02evfuzSeffMKuXbu46667cDgc/P3339x2220MHjyY6tWr89prr/HWW2/RqlUr7rvvPjw9PVm9ejURERHO+yENHDiQRx99lK5du9K2bVs2bNjAwoULc322F9OxY0e++eYbAgMDqVu3LsuXL2fx4sW52q+/8MILzJ49mwceeICHH36Ypk2bcvLkSebPn8/48eNp1KiRc9uHHnqIF198kblz5/LYY4+5/MbEInJ104iTiMhFhISE8NNPPxEeHs7QoUMZPXo0bdu25f3333d1aU5Nmzbll19+ITg4mNdff50JEyYwYsQI7rjjjhwjNHlxd3fnxx9/pHHjxowaNYo333yTGjVq8PXXX192PVarlfnz59OzZ0+mTp3Ka6+9RoUKFZgyZUqBj3UmLIWHh3P77bfneK1fv36MHDmSDRs28NRTT7Fw4UKmTp3qvL9QQb399tu8+eabrFu3jhdeeIE9e/bw22+/OUeOznj11Vd57rnnWLhwIU8//TRr165lwYIFREZG5tjO3d2dKVOmYLPZePTRR+nRowd//vlnnuc+85kNGTKEn376iSFDhrB161Y++OADxowZc1nv53wzZ87E4XDkmO54vk6dOhEXF+ccrZw0aRIffPAB0dHRvPDCC4wcOZK0tLQc96MaMWIEEydOJC0tjddee41hw4axf/9+7rjjDuc2gwYN4qWXXuKvv/7iueeeIzo6mkWLFuX6bC/m448/pk+fPkybNo3nnnuOmJgYFi9enKsJiZ+fH3///TePPfYYP//8M0899RT//e9/qVWrlvNmumeEhYU57zXVu3fvfNciItcmi3E1/dpUREQKTefOndmyZQu7du1ydSkiV60uXbqwadOmfF0TKCLXNo04iYiUAmlpaTmWd+3axc8//8ytt97qmoJESoCYmBgWLFig0SYRyReNOImIlALh4eH069ePqlWrsn//fj7//HMyMjJYt25drnsTiVzroqOjWbZsGV999RWrV69mz549lC9f3tVlichVTs0hRERKgbvuuosZM2Zw9OhRPD09ueGGGxg5cqRCk0ge/vzzT/r370+lSpWYMmWKQpOI5ItGnERERERERC5B1ziJiIiIiIhcgoKTiIiIiIjIJVxz1zg5HA6OHDmCv78/FovF1eWIiIiIiIiLGIZBUlISERERWK0XH1O65oLTkSNHct2kUERERERErl0HDx7MdZPs811zwcnf3x8wP5yAgAAXVyMiIiIiIq6SmJhIZGSkMyNczDUXnM5MzwsICFBwEhERERGRfF3Co+YQIiIiIiIil6DgJCIiIiIicgkKTiIiIiIiIpdwzV3jlB+GYZCdnY3dbnd1KSKFzmaz4ebmpnb8IiIiIgWg4HSezMxMYmJiSE1NdXUpIkXGx8eH8PBwPDw8XF2KiIiISImg4HQOh8NBdHQ0NpuNiIgIPDw89Ft5KVUMwyAzM5MTJ04QHR1NjRo1LnmzNxERERFRcMohMzMTh8NBZGQkPj4+ri5HpEh4e3vj7u7O/v37yczMxMvLy9UliYiIiFz19KvmPOg38FLa6XtcREREpGD005OIiIiIiMglKDiJiIiIiIhcgoKTXFBUVBRjx47N9/Z//PEHFouF+Pj4IqtJRERERMQVFJxKAYvFctHH8OHDL+u4q1ev5pFHHsn39jfeeCMxMTEEBgZe1vkuR+3atfH09OTo0aPFdk4RERERufYoOJUCMTExzsfYsWMJCAjIse755593bnvm5r75UbZs2QJ1F/Tw8KB8+fLF1sJ96dKlpKWlcf/99zNlypRiOefFZGVluboEERERESkiCk6XYBgGqZnZLnkYhpGvGsuXL+98BAYGYrFYnMvbt2/H39+fX375haZNm+Lp6cnSpUvZs2cP9957L2FhYfj5+dG8eXMWL16c47jnT9WzWCx89dVXdOnSBR8fH2rUqMH8+fOdr58/VW/y5MkEBQWxcOFC6tSpg5+fH3fddRcxMTHOfbKzs3nqqacICgoiJCSEl156ib59+9K5c+dLvu8JEybw0EMP0bt3byZOnJjr9UOHDtGjRw/KlCmDr68vzZo1Y+XKlc7Xf/zxR5o3b46XlxehoaF06dIlx3udN29ejuMFBQUxefJkAPbt24fFYmHWrFnccssteHl5MW3aNOLi4ujRowcVKlTAx8eHBg0aMGPGjBzHcTgcvP/++1SvXh1PT08qVarEO++8A8Dtt9/O4MGDc2x/4sQJPDw8WLJkySU/ExEREREpGrqP0yWkZdmpO2yhS869dUQ7fDwK54/o5ZdfZvTo0VStWpXg4GAOHjxI+/bteeedd/D09OTrr7+mU6dO7Nixg0qVKl3wOG+++Sbvv/8+H3zwAZ9++ik9e/Zk//79lClTJs/tU1NTGT16NN988w1Wq5VevXrx/PPPM23aNADee+89pk2bxqRJk6hTpw4ff/wx8+bN47bbbrvo+0lKSuK7775j5cqV1K5dm4SEBP7++29atWoFQHJyMrfccgsVKlRg/vz5lC9fnrVr1+JwOABYsGABXbp04bXXXuPrr78mMzOTn3/++bI+1w8//JAmTZrg5eVFeno6TZs25aWXXiIgIIAFCxbQu3dvqlWrRosWLQB45ZVX+PLLL/noo4+4+eabiYmJYfv27QAMHDiQwYMH8+GHH+Lp6QnA1KlTqVChArfffnuB6xMRERGRwqHgdI0YMWIEbdu2dS6XKVOGRo0aOZffeust5s6dy/z583ONeJyrX79+9OjRA4CRI0fyySefsGrVKu666648t8/KymL8+PFUq1YNgMGDBzNixAjn659++imvvPKKc7Rn3Lhx+QowM2fOpEaNGtSrVw+A7t27M2HCBGdwmj59OidOnGD16tXOUFe9enXn/u+88w7du3fnzTffdK479/PIryFDhnDfffflWHfu1Mgnn3yShQsX8u2339KiRQuSkpL4+OOPGTduHH379gWgWrVq3HzzzQDcd999DB48mB9++IEHH3wQMEfu+vXrV2xTIEVEREQkNwWnS/B2t7F1RDuXnbuwNGvWLMdycnIyw4cPZ8GCBcTExJCdnU1aWhoHDhy46HEaNmzofO7r60tAQADHjx+/4PY+Pj7O0AQQHh7u3D4hIYFjx445R2IAbDYbTZs2dY4MXcjEiRPp1auXc7lXr17ccsstfPrpp/j7+7N+/XqaNGlywZGw9evXM2jQoIueIz/O/1ztdjsjR47k22+/5fDhw2RmZpKRkeG8Vmzbtm1kZGRwxx135Hk8Ly8v59TDBx98kLVr17J58+YcUyJFRERESiK7wyAmIY0Dcakcik/jwWaRri6pQBScLsFisRTadDlX8vX1zbH8/PPPs2jRIkaPHk316tXx9vbm/vvvJzMz86LHcXd3z7FssVguGnLy2j6/125dyNatW1mxYgWrVq3ipZdecq632+3MnDmTQYMG4e3tfdFjXOr1vOrMq/nD+Z/rBx98wMcff8zYsWNp0KABvr6+DBkyxPm5Xuq8YE7Xa9y4MYcOHWLSpEncfvvtVK5c+ZL7iYiIiLhaepadAydT2R+Xyv64FOfzgydTOXQqjUz72Z8b76wbRpCPhwurLZiSnwjksixbtox+/fo5p8glJyezb9++Yq0hMDCQsLAwVq9eTevWrQEz/Kxdu5bGjRtfcL8JEybQunVrPvvssxzrJ02axIQJExg0aBANGzbkq6++4uTJk3mOOjVs2JAlS5bQv3//PM9RtmzZHE0sdu3aRWpq6iXf07Jly7j33nudo2EOh4OdO3dSt25dAGrUqIG3tzdLlixh4MCBeR6jQYMGNGvWjC+//JLp06czbty4S55XREREpDgYhsHJlEz2nzTDkBmQUjlwMoX9cakcT8q46P7uNguRwT5UCvEhNdNOUP4bOLucgtM1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Hld2ooOrYM4jcCraXG75GLR5A9y9r+y4VyObG4RUMx+17nJ1NVJEdIesSzlzkZwrHkbeNz87X8eOHSlbtiyTJ0/OsT45OZnvvvuOAQMGEBcXR48ePahQoQI+Pj40aNCAGTNmXPS4UVFRzml7ALt27aJ169Z4eXlRt25dFi1alGufl156iZo1a+Lj40PVqlV5/fXXycoyL+icPHkyb775Jhs2bMBiMTvtnKnZYrEwb94853E2bdrE7bffjre3NyEhITzyyCMkJ5/9x71fv3507tyZ0aNHEx4eTkhICE888YTzXBczYcIEevXqRa9evZgwYUKu17ds2ULHjh0JCAjA39+fVq1asWfPHufrEydOpF69enh6ehIeHs7gwYMB2LdvHxaLJcdoWnx8PBaLhT/++AOAP/74A4vFwi+//ELTpk3x9PRk6dKl7Nmzh3vvvZewsDD8/Pxo3rw5ixcvzlFXRkYGL730EpGRkXh6elK9enUmTJiAYRhUr16d0aNH59h+/fr1WCwWdu++cBtWEREp/QzDYFtMImN+20GbMX9y50d/8fGSXew8loy7zcJttcrywf0N+XdoG6Y83IJuzStdWWjKzoQlI2BiOzM0BVSAPj/A3e+WztAk1wz9mvtSslJhZN6tMYvcq0fydddrNzc3+vTpw+TJk3nttdec83+/++477HY7PXr0IDk5maZNm/LSSy8REBDAggUL6N27N9WqVaNFixaXPIfD4eC+++4jLCyMlStXkpCQkOe1T/7+/kyePJmIiAg2bdrEoEGD8Pf358UXX6Rbt25s3ryZX3/91RkKAgNzXxSYkpJCu3btuOGGG1i9ejXHjx9n4MCBDB48OEc4/P333wkPD+f3339n9+7ddOvWjcaNGzNo0KALvo89e/awfPly5syZg2EYPPPMM+zfv5/KlSsDcPjwYVq3bs2tt97K//73PwICAli2bBnZ2Wb3m88//5xnn32Wd999l7vvvpuEhASWLVt2yc/vfC+//DKjR4+matWqBAcHc/DgQdq3b88777yDp6cnX3/9NZ06dWLHjh1UqlQJgD59+rB8+XI++eQTGjVqRHR0NLGxsVgsFh5++GEmTZrE888/7zzHpEmTaN26NdWrVy9wfSIiUsgMA+yZ5hQuiwWsbua9cqxu+euaVuDTGWyNSeTnTWaDh72xKc7XPGxWWtcM5e764bSp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",
      "text/plain": [
       "<Figure size 1000x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#Plot Accuracy Curves\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "plt.figure(figsize=(10,6))\n",
    "\n",
    "plt.plot(\n",
    "    history.history['accuracy'],\n",
    "    label='Training Accuracy'\n",
    ")\n",
    "\n",
    "plt.plot(\n",
    "    history.history['val_accuracy'],\n",
    "    label='Validation Accuracy'\n",
    ")\n",
    "\n",
    "plt.title(\n",
    "    'Training and Validation Accuracy'\n",
    ")\n",
    "\n",
    "plt.xlabel('Epoch')\n",
    "\n",
    "plt.ylabel('Accuracy')\n",
    "\n",
    "plt.legend()\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "id": "32097339",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA18AAAIjCAYAAAD80aFnAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAoMVJREFUeJzs3Xd4k2X7xvFvki66oYWWUSh7FoqMAsrSKgiiCCryQxni4hUQcQAORBw4X1FQEfUFF4I4EBHBgqAsZU/Zo2UVKKUtbelK8vsjNFop0JE0HefnOHI0efKM68Eeyul9P9dtsFqtVkRERERERMSpjK4uQEREREREpCJQ+BIRERERESkBCl8iIiIiIiIlQOFLRERERESkBCh8iYiIiIiIlACFLxERERERkRKg8CUiIiIiIlICFL5ERERERERKgMKXiIiIiIhICVD4EhEpx4YOHUp4eHiRjp00aRIGg8GxBZUyR44cwWAwMHv27BK/tsFgYNKkSfbPs2fPxmAwcOTIkaseGx4eztChQx1aT3F+V0REpGAUvkREXMBgMBTotXLlSleXWuGNHj0ag8HAgQMHLrvPM888g8FgYPv27SVYWeGdOHGCSZMmsXXrVleXYpcbgN98801XlyIi4nRuri5ARKQi+vzzz/N8/uyzz4iJiblke9OmTYt1nY8++giLxVKkY5999lnGjx9frOuXB4MGDWLatGnMmTOHiRMn5rvPV199RUREBC1btizyde69917uvvtuPD09i3yOqzlx4gQvvPAC4eHhREZG5vmuOL8rIiJSMApfIiIucM899+T5/McffxATE3PJ9n9LT0/H29u7wNdxd3cvUn0Abm5uuLnpPxNRUVE0aNCAr776Kt/wtW7dOg4fPsyrr75arOuYTCZMJlOxzlEcxfldERGRgtG0QxGRUqpbt260aNGCTZs20aVLF7y9vXn66acB+OGHH+jduzc1atTA09OT+vXr8+KLL2I2m/Oc49/P8fxzitfMmTOpX78+np6etGvXjg0bNuQ5Nr9nvgwGAyNHjmTBggW0aNECT09PmjdvzpIlSy6pf+XKlbRt2xYvLy/q16/Phx9+WODnyFatWsWdd95J7dq18fT0JCwsjMcee4wLFy5ccn++vr4cP36cvn374uvrS9WqVXniiScu+bNISkpi6NChBAQEEBgYyJAhQ0hKSrpqLWAb/dqzZw+bN2++5Ls5c+ZgMBgYOHAgWVlZTJw4kTZt2hAQEICPjw+dO3dmxYoVV71Gfs98Wa1WXnrpJWrVqoW3tzfdu3dn165dlxybmJjIE088QUREBL6+vvj7+3PzzTezbds2+z4rV66kXbt2AAwbNsw+tTX3ebf8nvlKS0vj8ccfJywsDE9PTxo3bsybb76J1WrNs19hfi+K6vTp0wwfPpyQkBC8vLxo1aoVn3766SX7zZ07lzZt2uDn54e/vz8RERG888479u+zs7N54YUXaNiwIV5eXgQFBXHdddcRExPjsFpFRC5H/0tTRKQUO3v2LDfffDN3330399xzDyEhIYDtL+q+vr6MHTsWX19ffv31VyZOnEhKSgpvvPHGVc87Z84czp8/z0MPPYTBYOD111+nX79+HDp06KojIKtXr+a7777jP//5D35+frz77rv079+fuLg4goKCANiyZQs9e/akevXqvPDCC5jNZiZPnkzVqlULdN/z588nPT2dESNGEBQUxPr165k2bRrHjh1j/vz5efY1m8306NGDqKgo3nzzTZYtW8Zbb71F/fr1GTFiBGALMbfddhurV6/m4YcfpmnTpnz//fcMGTKkQPUMGjSIF154gTlz5nDNNdfkufbXX39N586dqV27NgkJCXz88ccMHDiQBx54gPPnz/PJJ5/Qo0cP1q9ff8lUv6uZOHEiL730Er169aJXr15s3ryZm266iaysrDz7HTp0iAULFnDnnXdSt25dTp06xYcffkjXrl3566+/qFGjBk2bNmXy5MlMnDiRBx98kM6dOwPQqVOnfK9ttVq59dZbWbFiBcOHDycyMpKlS5fy5JNPcvz4cd5+++08+xfk96KoLly4QLdu3Thw4AAjR46kbt26zJ8/n6FDh5KUlMSjjz4KQExMDAMHDuSGG27gtddeA2D37t2sWbPGvs+kSZOYMmUK999/P+3btyclJYWNGzeyefNmbrzxxmLVKSJyVVYREXG5Rx55xPrvfyV37drVClhnzJhxyf7p6emXbHvooYes3t7e1oyMDPu2IUOGWOvUqWP/fPjwYStgDQoKsiYmJtq3//DDD1bA+uOPP9q3Pf/885fUBFg9PDysBw4csG/btm2bFbBOmzbNvq1Pnz5Wb29v6/Hjx+3b9u/fb3Vzc7vknPnJ7/6mTJliNRgM1tjY2Dz3B1gnT56c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+8nv/nKD12+//UZOTg6PPPIIAwYMsD++NGjQIFq3bs0HH3yAyWRi69atuLu7A/DII4+QlZXF77//jo+PD3/99Re+vr6FrqOgFL7KEfvIl6YdioiIiJQJ9913H2+88Qa//fYb3bp1A2xTDvv3709AQAABAQE88cQT9v1HjRrF0qVL+frrrwsUvpYtW8aePXtYunSpvav3K6+8ws0335xnv2effdb+Pjw8nCeeeIK5c+fy1FNPUalSJXx9fXFzc7vsmrgAc+bMISMjg88++8z+zNn06dPp06cPr732mr2hXuXKlZk+fTomk4kmTZrQu3dvli9fXqTwtXz5cnbs2MHhw4cJCwsD4LPPPqN58+Zs2LCBdu3aERcXx5NPPkmTJk0AaNiwof34uLg4+vfvT0REBAD16tUrdA2FofBVjtTVtEMRERERG3dv2wiUq65dQE2aNKFTp07873//o1u3bhw4cIBVq1YxefJkAMxmM6+88gpff/01x48fJysri8zMzAI/07V7927CwsLyLKeU33q68+bN49133+XgwYOkpqaSk5ODv79/ge8j91qtWrXK0+zj2muvxWKxsHfvXnv4at68OSaTyb5P9erV2bFjR6Gu9c9rhoWF2YMXQLNmzQgMDGT37t20a9eOsWPHcv/99/P5558THR3NnXfeSf369QEYPXo0I0aM4JdffiE6Opr+/fsX6Tm7gtIzX+VI7sjX2bQsUjKKPm9WREREpMwzGGxT/1zxujh9sKCGDx/Ot99+y/nz55k1axb169ena9euALzxxhu88847jBs3jhUrVrB161Z69OhBVlaWw/6o1q1bx6BBg+jVqxeLFi1iy5YtPPPMMw69xj/lTvnLZTAYsFgsTrkW2Do17tq1i969e/Prr7/SrFkzvv/+ewDuv/9+Dh06xL333suOHTto27Yt06ZNc1otCl/liK+nG8G+tm4zGv0SERERKRvuuusujEYjc+bM4bPPPuO+++6zP/+1Zs0abrvtNu655x5atWpFvXr12LdvX4HP3bRpU44ePZpn3dw//vgjzz5r166lTp06PPPMM7Rt25aGDRsSGxubZx8PDw/MZvNVr7Vt2zbS0v7+e+iaNWswGo00bty4wDUXRu79HT161L7tr7/+IikpiWbNmtm3NWrUiMcee4xffvmFfv36MWvWLPt3YWFhPPzww3z33Xc8/vjj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O3cuK1as4KGHHuKVV17hqaeeumytU6ZMISAgwP4KCwsr7O26VN1gdTwUEREREXElN1cX4Czdu3dn69atJCQk8NFHH3HXXXfx559/Uq1aNQDGjh1r37dly5Z4eHjw0EMPMWXKFDw9PS8534QJE/Ick5KSUqYCWO5zX+p4KCIiIiLiGi4d+QoODsZkMnHq1Kk820+dOkVoaGi+x4SGhhZofx8fHxo0aECHDh345JNPcHNz45NPPrlsLVFRUeTk5HDkyJF8v/f09MTf3z/PqyxRx0MREREREddyafjy8PCgTZs2LF++3L7NYrGwfPlyOnbsmO8xHTt2zLM/QExMzGX3/+d5MzMzL/v91q1bMRqN9pGx8kbTDkVEREREXMvl0w7Hjh3LkCFDaNu2Le3bt2fq1KmkpaUxbNgwAAYPHkzNmjWZMmUKAI8++ihdu3blrbfeonfv3sydO5eNGzcyc+ZMANLS0nj55Ze59dZbqV69OgkJCbz33nscP36cO++8E7A17fjzzz/p3r07fn5+rFu3jscee4x77rmHypUru+YPwslyR77iEtPJMVtwM7l8lQERERERkQrF5eFrwIABnDlzhokTJxIfH09kZCRLliyxN9WIi4vDaPw7KHTq1Ik5c+bw7LPP8vTTT9OwYUMWLFhAixYtADCZTOzZs4dPP/2UhIQEgoKCaNeuHatWraJ58+aAbQrh3LlzmTRpEpmZmdStW5fHHnsszzNd5U11fy883Yxk5lg4nnSBOhefARMRERERkZLh8nW+yqqytM5Xrpve/o19p1KZPawd3RqXz+mVIiIiIiIlrUys8yUlK7fjoZ77EhEREREpeQpfFYi96cZZtZsXERERESlpCl8VSG7TjcMa+RIRERERKXEKXxWIfdqh1voSERERESlxCl8VSO60w2PnLpBttri4GhERERGRikXhqwIJ8fekkrsJs8XK0UQ99yUiIiIiUpIUvioQg8FAnSBvQFMPRURERERKmsJXBVPX3nRDI18iIiIiIiVJ4auCye14qLW+RERERERKlsJXBVNXHQ9FRERERFxC4auC0VpfIiIiIiKuofBVwYQH2xpunEi6QGaO2cXViIiIiIhUHApfFUxVX098PExYrKjdvIiIiIhICVL4qmAMBsM/ph4qfImIiIiIlBSFrwpIHQ9FREREREqewlcFlNvx8LA6HoqIiIiI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0SBPGRHSZjv9dXarheyesYzIjPCw/ih8hZzCl4iIiIh0d9Uud+BSxeZAtu9oLb4wJYzb87J58ubLwvNhZ6F7vkREREREJKQSo6OY0L8nE/r3DGxraPJSXF7N4e8a8Pp8uL3mSJCnjfToX/f6DNw+H95WI0CeNmLkKaNDevyjQvbreeYRKi9FCl8iIiIiItJhYhw2Ls9O5vLs5EiXcsnR09RERERERETCQOFLREREREQkDBS+REREREREwkDhS0REREREJAwUvkRERERERMJA4UtERERERCQMFL5ERERERETCQOFLREREREQkDBS+REREREREwkDhS0REREREJAwUvkRERERERMJA4UtERERERCQMFL5ERERERETCQOFLREREREQkDBS+REREREREwkDhS0REREREJAwUvkRERERERMJA4UtERERERCQM7JEuoLMyDAOA6urqCFciIiIiIiKR1JwJmjPCmSh8XaCamhoAsrKyIlyJiIiIiIhcCmpqakhKSjpju8U4VzyTNvl8PkpLS0lISMBisUS0lurqarKysjh8+DCJiYkRrUVCQ8e4e9Bx7vp0jLsHHeeuT8e4ezif42wYBjU1NWRmZmK1nvnOLvV8XSCr1Urfvn0jXUaQxMRE/QPQxekYdw86zl2fjnH3oOPc9ekYdw/tPc5n6/FqpgE3REREREREwkDhS0REREREJAwUvroAp9PJkiVLcDqdkS5FQkTHuHvQce76dIy7Bx3nrk/HuHsIxXHWgBsiIiIiIiJhoJ4vERERERGRMFD4EhERERERCQOFLxERERERkTBQ+BIREREREQkDha8u4IUXXqBfv35ER0eTl5fHF198EemSpIM8/vjjWCyWoGno0KGRLksu0t/+9jduvPFGMjMzsVgsvPPOO0HthmHwi1/8goyMDGJiYpgyZQp79+6NTLFyQc51jO+6667Tzu1p06ZFpli5IIWFhYwbN46EhAR69+7NzJkz2bNnT9A+LpeLOXPm0LNnT+Lj45k1axYVFRURqlguRHuO87XXXnva+XzfffdFqGI5XytWrGDUqFGBBynn5+fz4YcfBto7+jxW+Ork3njjDRYuXMiSJUv4+uuvGT16NFOnTuXo0aORLk06yIgRIygrKwtMn332WaRLkotUV1fH6NGjeeGFF9psf+qpp3j22Wd56aWX2LRpE3FxcUydOhWX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",
      "text/plain": [
       "<Figure size 1000x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#Plot Loss Curves\n",
    "plt.figure(figsize=(10,6))\n",
    "\n",
    "plt.plot(\n",
    "    history.history['loss'],\n",
    "    label='Training Loss'\n",
    ")\n",
    "\n",
    "plt.plot(\n",
    "    history.history['val_loss'],\n",
    "    label='Validation Loss'\n",
    ")\n",
    "\n",
    "plt.title(\n",
    "    'Training and Validation Loss'\n",
    ")\n",
    "\n",
    "plt.xlabel('Epoch')\n",
    "\n",
    "plt.ylabel('Loss')\n",
    "\n",
    "plt.legend()\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "id": "c6503802",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[1m74/74\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m29s\u001b[0m 389ms/step - accuracy: 0.9380 - loss: 0.0040\n",
      "Test Accuracy: 0.9379515647888184\n",
      "Test Loss: 0.004037749022245407\n"
     ]
    }
   ],
   "source": [
    "# Evaluate Model\n",
    "test_loss, test_accuracy = model3.evaluate(\n",
    "    test_generator\n",
    ")\n",
    "\n",
    "print(\n",
    "    \"Test Accuracy:\",\n",
    "    test_accuracy\n",
    ")\n",
    "\n",
    "print(\n",
    "    \"Test Loss:\",\n",
    "    test_loss\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "id": "f6b157ce",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[1m74/74\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 400ms/step\n"
     ]
    }
   ],
   "source": [
    "# Generate Predictions\n",
    "import numpy as np\n",
    "\n",
    "predictions = model3.predict(\n",
    "    test_generator\n",
    ")\n",
    "\n",
    "y_pred = np.argmax(\n",
    "    predictions,\n",
    "    axis=1\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "id": "b141f47c",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                    precision    recall  f1-score   support\n",
      "\n",
      "frog_eye_leaf_spot       0.95      0.98      0.96       478\n",
      "           healthy       0.91      0.96      0.94       694\n",
      "    powdery_mildew       0.94      0.76      0.84       178\n",
      "              rust       0.99      0.95      0.97       279\n",
      "              scab       0.94      0.93      0.93       724\n",
      "\n",
      "          accuracy                           0.94      2353\n",
      "         macro avg       0.95      0.92      0.93      2353\n",
      "      weighted avg       0.94      0.94      0.94      2353\n",
      "\n"
     ]
    }
   ],
   "source": [
    "#Classification Report\n",
    "from sklearn.metrics import classification_report\n",
    "\n",
    "print(\n",
    "\n",
    "    classification_report(\n",
    "\n",
    "        test_generator.classes,\n",
    "\n",
    "        y_pred,\n",
    "\n",
    "        target_names=list(\n",
    "            test_generator.class_indices.keys()\n",
    "        )\n",
    "    )\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "id": "9e76fc54",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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7Eni5cuXUbt2bQDAr7/+isqVK+PEiRNYv349QkND5Q2OiIiItINCR71bAST7mMSMjAwYGBgAAPbv34927doBeH3/5piYGDlDIyIiIm1RQC8Jq5PsqW3FihWxbNky/PXXXwgLC1PeZSU6OhrW1tYyR0dERESknWRPEmfMmIHly5ejUaNG6NKlC6pWrQoA2Llzp/IyNBEREZFa8XKzhOyXmxs1aoSEhAQkJSWp3Iavf//+MDY2Vj4+fvw4atasqbw0TURERETqoxGpra6uruQ+zc7OzrC1tVU+btmyJR49epTfoREREZE24BI4EhqRJOaGEELuEIiIiIi0huyXm4mIiIhkV0DHDaoT3xEiIiIikmAlkYiIiKiAjhtUpwKTJCr44REREZG68HKzhCzvyM6dO5GRkZGnYzhxhYiIiCj/yJIkdujQAYmJiQBeL38THx//n8e8ePECLi4uao6MiIiItBKXwJGQJUm0sbHByZMnAbyuEPJSMhEREZFmkWVM4jfffAM/Pz8oFAooFArY29u/t29WVlY+RkZERERaiWMSJWRJEidNmoTOnTvj9u3baNeuHUJCQmBpaSlHKERERESUA9lmN5cvXx7ly5dHQEAAPv/8c5X7NBMRERHlK1YSJWRfAicgIEDuEIiIiIjoHbIniQCwZcsW/Prrr4iKikJ6errKvrNnz8oUFREREWkNHU6ifZfstdUFCxagV69esLOzw7lz51C7dm1YW1vj7t27aNmypdzhERERkTZQ6Kh3K4Bkj3rJkiVYsWIFFi5cCH19fYwZMwZhYWEYMmQInj9/Lnd4RERERFpJ9iQxKioK9erVAwAYGRnhxYsXAIDu3btj48aNcoZGRERE2oKLaUvIniTa29vj6dOnAIBSpUopF9mOjIzkrfiIiIiIZCJ7ktikSRPs3LkTANCrVy8MHz4czZo1w5dffokOHTrIHB0RERFpBY5JlJB9dvOKFSuQnZ0NABg4cCCsra1x4sQJtGvXDl9//bXM0RERERFpJ9mTRB0dHejo/D/D7ty5Mzp37ixjRERERKR1Cui4QXXSiPrnX3/9ha+++gqenp549OgRAGDdunU4duyYzJERERERaSfZk8TffvsNvr6+MDIywrlz55CWlgYAeP78OaZPny5zdERERKQVOCZRQvaop06dimXLlmHlypXQ09NTtnt5efFuK0RERJQ/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mC43E31KXBVDc4RG3JM7BPpHj5radcMGTWasJ98vqbBr6l0poVmF3P0HrRACgwcPxrZt23D48GGULat684bnz5/DxsYGGzduRKdOnQAAN27cQPny5REeHo66deti9+7daNOmDWJiYmBr+7q6v2LFCowePRrx8fG5rmhqRCXRwsJC0tasWTPo6+tjxIgROHPmjAxREREREeWvgQMHYsOGDdixYwfMzMyUYwgtLCxgZGQECwsL9OnTByNGjICVlRXMzc0xePBgeHp6om7dugCA5s2bw93dHd27d8fMmTMRGxuL8ePHY+DAgXm65K0RSeL72NnZSRaQJCIiIvrUdDTkSsvSpUsBSIfihYSEoGfPngCAuXPnQkdHB506dUJaWhp8fX2xZMkSZV9dXV3s2rULAwYMgKenJ0xMTODv74/AwMA8xaIRl5svXryo8lgIgZiYGPz444/IzMzM84BNXm4myhkvN2sOXm7WHLzcrDnkvNx84Lp6Lzc3LV/wxk9rRCXRw8MDCoUC7+ardevWxU8//SRTVERERKQtFGpeTLsgkj1JzMjIQKNGjbBs2TLldXIdHR3Y2NjA0NBQ5uiIiIhIG/BKi5TsSaKenh4uXboEHR0dODmx5E9ERESkCTTitnxfffUVVq1aJXcYREREpKUUav5fQSR7JREAMjMz8dNPP2H//v2oUaMGTExMVPYHBwfLFBkRERGRdtKIJPHy5cuoXr06AODmzZsq+xQcJEBERERqpilL4GgSjUgSDx06JHcIRERERPQWjUgSiYiIiORUUMcNqpNGTFwhIiIiIs3CSiIRERFpPU6BkGKSSERERFqPOaIULzcTERERkQQriURERKT1dHi9WYKVRCIiIiKSYCWRiIiItB7riFKsJBIRERGRBCuJRERERCwlSrCSSEREREQSrCQSERGR1uNt+aSYJBIREZHW4wo4UrzcTEREREQSrCQSERGR1mMhUYqVRCIiIiKSYCWRiIiIiKVECVYSiYiIiEiClUQiIiLSelwCR4qVRCIiIiKSYCWRiIiItB7XSZRiJZGIiIiIJFhJJCIiIq3HQqIUk0QiIiIiZokSvNxMRERERBKsJBIREZHW4xI4UqwkEhEREZEEK4lERESk9bgEjhQriUREREQkwUoiERERaT0WEqUKZZKYLYTcIdBb0jKy5Q6B/mFsoCt3CPSPnrWc5Q6B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",
      "text/plain": [
       "<Figure size 800x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#Confusion Matrix\n",
    "from sklearn.metrics import confusion_matrix\n",
    "import seaborn as sns\n",
    "\n",
    "cm = confusion_matrix(\n",
    "\n",
    "    test_generator.classes,\n",
    "\n",
    "    y_pred\n",
    ")\n",
    "\n",
    "plt.figure(figsize=(8,6))\n",
    "\n",
    "sns.heatmap(\n",
    "\n",
    "    cm,\n",
    "\n",
    "    annot=True,\n",
    "\n",
    "    fmt='d',\n",
    "\n",
    "    cmap='Blues',\n",
    "\n",
    "    xticklabels=list(\n",
    "        test_generator.class_indices.keys()\n",
    "    ),\n",
    "\n",
    "    yticklabels=list(\n",
    "        test_generator.class_indices.keys()\n",
    "    )\n",
    ")\n",
    "\n",
    "plt.xlabel(\"Predicted\")\n",
    "\n",
    "plt.ylabel(\"Actual\")\n",
    "\n",
    "plt.title(\n",
    "    \"Confusion Matrix CNN Model 3\"\n",
    ")\n",
    "\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "base",
   "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.13.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
