diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 069d105..eb0d802 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -1,9 +1,11 @@ + + - - + - { + "keyToString": { + "RunOnceActivity.CodyProjectSettingsMigration": "true", + "RunOnceActivity.OpenProjectViewOnStart": "true", + "RunOnceActivity.ShowReadmeOnStart": "true", + "git-widget-placeholder": "Alpha-b", + "ignore.virus.scanning.warn.message": "true", + "node.js.detected.package.eslint": "true", + "node.js.detected.package.tslint": "true", + "node.js.selected.package.eslint": "(autodetect)", + "node.js.selected.package.tslint": "(autodetect)", + "nodejs_package_manager_path": "npm", + "vue.rearranger.settings.migration": "true" } -}]]> +} @@ -56,6 +77,7 @@ + diff --git a/BETA_E_Model_T&T.ipynb b/BETA_E_Model_T&T.ipynb index 9135ffd..7046af8 100644 --- a/BETA_E_Model_T&T.ipynb +++ b/BETA_E_Model_T&T.ipynb @@ -22,7 +22,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:27:44.939427800Z", @@ -46,7 +46,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:27:47.128539500Z", @@ -86,6 +86,7 @@ "# import tensorflow_addons as tfa\n", "from keras_adabound import AdaBound\n", "from importlib import reload\n", + "from tabulate import tabulate\n", "from sklearn.metrics import confusion_matrix\n", "from keras.losses import categorical_crossentropy\n", "import tensorflow as tf\n", @@ -129,6 +130,7 @@ "from Utils.Grad_cam import make_gradcam_heatmap\n", "from Utils.print_color_V2_NEW import print_Color_V2\n", "from Utils.print_color_V1_OLD import print_Color\n", + "from Utils.Debug import P_Debug\n", "from Utils.FixedDropout import FixedDropout\n", "from Utils.Other import *\n", "# Other\n", @@ -147,7 +149,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 3, "metadata": { "notebookRunGroups": { "groupValue": "12" @@ -182,7 +184,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:27:47.139048Z", @@ -208,7 +210,7 @@ "R_fill_mode = True\n", "add_img_grain = True\n", "Save_TS = True\n", - "Img_Data_type = 'float16' # float32 / float16\n", + "Img_Data_type = 'float32' # float32 / float16\n", "Use_SMOTE = False # (⚠️Beta⚠️)\n", "ADBD = 0\n", "OP_HDC = False\n", @@ -229,7 +231,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:27:48.287855100Z", @@ -269,7 +271,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:31:27.059139500Z", @@ -286,27 +288,19 @@ "text": [ "\u001b[0;33mUsing Def IDG...\u001b[0m\n", "Found 23681 images belonging to 2 classes.\n", - "\u001b[0;33mLoading all images and labels into memory...\u001b[0m\n" - ] - }, - { - "ename": "KeyboardInterrupt", - "evalue": "", - "output_type": "error", - "traceback": [ - "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[1;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", - "Cell \u001b[1;32mIn[22], line 220\u001b[0m\n\u001b[0;32m 218\u001b[0m \u001b[38;5;66;03m# Load all images and labels into memory\u001b[39;00m\n\u001b[0;32m 219\u001b[0m print_Color(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mLoading all images and labels into memory...\u001b[39m\u001b[38;5;124m'\u001b[39m, [\u001b[38;5;124m'\u001b[39m\u001b[38;5;124myellow\u001b[39m\u001b[38;5;124m'\u001b[39m])\n\u001b[1;32m--> 220\u001b[0m x_train, y_train \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mnext\u001b[39;49m\u001b[43m(\u001b[49m\u001b[38;5;28;43miter\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mtrain_generator_SM\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 221\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m Make_EV_DATA:\n\u001b[0;32m 222\u001b[0m x_val, y_val \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mnext\u001b[39m(\u001b[38;5;28miter\u001b[39m(val_generator))\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:156\u001b[0m, in \u001b[0;36mIterator.__next__\u001b[1;34m(self, *args, **kwargs)\u001b[0m\n\u001b[0;32m 155\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__next__\u001b[39m(\u001b[38;5;28mself\u001b[39m, \u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs):\n\u001b[1;32m--> 156\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mnext(\u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:168\u001b[0m, in \u001b[0;36mIterator.next\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 165\u001b[0m index_array \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mnext\u001b[39m(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mindex_generator)\n\u001b[0;32m 166\u001b[0m \u001b[38;5;66;03m# The transformation of images is not under thread lock\u001b[39;00m\n\u001b[0;32m 167\u001b[0m \u001b[38;5;66;03m# so it can be done in parallel\u001b[39;00m\n\u001b[1;32m--> 168\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_get_batches_of_transformed_samples\u001b[49m\u001b[43m(\u001b[49m\u001b[43mindex_array\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:384\u001b[0m, in \u001b[0;36mBatchFromFilesMixin._get_batches_of_transformed_samples\u001b[1;34m(self, index_array)\u001b[0m\n\u001b[0;32m 382\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mimage_data_generator:\n\u001b[0;32m 383\u001b[0m params \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mimage_data_generator\u001b[38;5;241m.\u001b[39mget_random_transform(x\u001b[38;5;241m.\u001b[39mshape)\n\u001b[1;32m--> 384\u001b[0m x \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mimage_data_generator\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mapply_transform\u001b[49m\u001b[43m(\u001b[49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mparams\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 385\u001b[0m x \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mimage_data_generator\u001b[38;5;241m.\u001b[39mstandardize(x)\n\u001b[0;32m 386\u001b[0m batch_x[i] \u001b[38;5;241m=\u001b[39m x\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:2013\u001b[0m, in \u001b[0;36mImageDataGenerator.apply_transform\u001b[1;34m(self, x, transform_parameters)\u001b[0m\n\u001b[0;32m 2010\u001b[0m img_col_axis \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcol_axis \u001b[38;5;241m-\u001b[39m \u001b[38;5;241m1\u001b[39m\n\u001b[0;32m 2011\u001b[0m img_channel_axis \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mchannel_axis \u001b[38;5;241m-\u001b[39m \u001b[38;5;241m1\u001b[39m\n\u001b[1;32m-> 2013\u001b[0m x \u001b[38;5;241m=\u001b[39m \u001b[43mapply_affine_transform\u001b[49m\u001b[43m(\u001b[49m\n\u001b[0;32m 2014\u001b[0m \u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2015\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mtheta\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2016\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mtx\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2017\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mty\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2018\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mshear\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2019\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mzx\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2020\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mzy\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2021\u001b[0m \u001b[43m \u001b[49m\u001b[43mrow_axis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mimg_row_axis\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2022\u001b[0m \u001b[43m \u001b[49m\u001b[43mcol_axis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mimg_col_axis\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2023\u001b[0m \u001b[43m \u001b[49m\u001b[43mchannel_axis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mimg_channel_axis\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2024\u001b[0m \u001b[43m \u001b[49m\u001b[43mfill_mode\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfill_mode\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2025\u001b[0m \u001b[43m \u001b[49m\u001b[43mcval\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcval\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2026\u001b[0m \u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43minterpolation_order\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2027\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 2029\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m transform_parameters\u001b[38;5;241m.\u001b[39mget(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mchannel_shift_intensity\u001b[39m\u001b[38;5;124m\"\u001b[39m) \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m 2030\u001b[0m x \u001b[38;5;241m=\u001b[39m apply_channel_shift(\n\u001b[0;32m 2031\u001b[0m x,\n\u001b[0;32m 2032\u001b[0m transform_parameters[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mchannel_shift_intensity\u001b[39m\u001b[38;5;124m\"\u001b[39m],\n\u001b[0;32m 2033\u001b[0m img_channel_axis,\n\u001b[0;32m 2034\u001b[0m )\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:2615\u001b[0m, in \u001b[0;36mapply_affine_transform\u001b[1;34m(x, theta, tx, ty, shear, zx, zy, row_axis, col_axis, channel_axis, fill_mode, cval, order)\u001b[0m\n\u001b[0;32m 2612\u001b[0m final_affine_matrix \u001b[38;5;241m=\u001b[39m transform_matrix[:\u001b[38;5;241m2\u001b[39m, :\u001b[38;5;241m2\u001b[39m]\n\u001b[0;32m 2613\u001b[0m final_offset \u001b[38;5;241m=\u001b[39m transform_matrix[:\u001b[38;5;241m2\u001b[39m, \u001b[38;5;241m2\u001b[39m]\n\u001b[1;32m-> 2615\u001b[0m channel_images \u001b[38;5;241m=\u001b[39m [\n\u001b[0;32m 2616\u001b[0m ndimage\u001b[38;5;241m.\u001b[39minterpolation\u001b[38;5;241m.\u001b[39maffine_transform(\n\u001b[0;32m 2617\u001b[0m x_channel,\n\u001b[0;32m 2618\u001b[0m final_affine_matrix,\n\u001b[0;32m 2619\u001b[0m final_offset,\n\u001b[0;32m 2620\u001b[0m order\u001b[38;5;241m=\u001b[39morder,\n\u001b[0;32m 2621\u001b[0m mode\u001b[38;5;241m=\u001b[39mfill_mode,\n\u001b[0;32m 2622\u001b[0m cval\u001b[38;5;241m=\u001b[39mcval,\n\u001b[0;32m 2623\u001b[0m )\n\u001b[0;32m 2624\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m x_channel \u001b[38;5;129;01min\u001b[39;00m x\n\u001b[0;32m 2625\u001b[0m ]\n\u001b[0;32m 2626\u001b[0m x \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mstack(channel_images, axis\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m0\u001b[39m)\n\u001b[0;32m 2627\u001b[0m x \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mrollaxis(x, \u001b[38;5;241m0\u001b[39m, channel_axis \u001b[38;5;241m+\u001b[39m \u001b[38;5;241m1\u001b[39m)\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:2616\u001b[0m, in \u001b[0;36m\u001b[1;34m(.0)\u001b[0m\n\u001b[0;32m 2612\u001b[0m final_affine_matrix \u001b[38;5;241m=\u001b[39m transform_matrix[:\u001b[38;5;241m2\u001b[39m, :\u001b[38;5;241m2\u001b[39m]\n\u001b[0;32m 2613\u001b[0m final_offset \u001b[38;5;241m=\u001b[39m transform_matrix[:\u001b[38;5;241m2\u001b[39m, \u001b[38;5;241m2\u001b[39m]\n\u001b[0;32m 2615\u001b[0m channel_images \u001b[38;5;241m=\u001b[39m [\n\u001b[1;32m-> 2616\u001b[0m \u001b[43mndimage\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43minterpolation\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43maffine_transform\u001b[49m\u001b[43m(\u001b[49m\n\u001b[0;32m 2617\u001b[0m \u001b[43m \u001b[49m\u001b[43mx_channel\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2618\u001b[0m \u001b[43m \u001b[49m\u001b[43mfinal_affine_matrix\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2619\u001b[0m \u001b[43m \u001b[49m\u001b[43mfinal_offset\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2620\u001b[0m \u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2621\u001b[0m \u001b[43m \u001b[49m\u001b[43mmode\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfill_mode\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2622\u001b[0m \u001b[43m \u001b[49m\u001b[43mcval\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcval\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2623\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 2624\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m x_channel \u001b[38;5;129;01min\u001b[39;00m x\n\u001b[0;32m 2625\u001b[0m ]\n\u001b[0;32m 2626\u001b[0m x \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mstack(channel_images, axis\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m0\u001b[39m)\n\u001b[0;32m 2627\u001b[0m x \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mrollaxis(x, \u001b[38;5;241m0\u001b[39m, channel_axis \u001b[38;5;241m+\u001b[39m \u001b[38;5;241m1\u001b[39m)\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\scipy\\ndimage\\_interpolation.py:572\u001b[0m, in \u001b[0;36maffine_transform\u001b[1;34m(input, matrix, offset, output_shape, output, order, mode, cval, prefilter)\u001b[0m\n\u001b[0;32m 570\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m prefilter \u001b[38;5;129;01mand\u001b[39;00m order \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[0;32m 571\u001b[0m padded, npad \u001b[38;5;241m=\u001b[39m _prepad_for_spline_filter(\u001b[38;5;28minput\u001b[39m, mode, cval)\n\u001b[1;32m--> 572\u001b[0m filtered \u001b[38;5;241m=\u001b[39m \u001b[43mspline_filter\u001b[49m\u001b[43m(\u001b[49m\u001b[43mpadded\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43moutput\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mnumpy\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfloat64\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 573\u001b[0m \u001b[43m \u001b[49m\u001b[43mmode\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmode\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 574\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m 575\u001b[0m npad \u001b[38;5;241m=\u001b[39m \u001b[38;5;241m0\u001b[39m\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\scipy\\ndimage\\_interpolation.py:191\u001b[0m, in \u001b[0;36mspline_filter\u001b[1;34m(input, order, output, mode)\u001b[0m\n\u001b[0;32m 189\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m order \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;129;01min\u001b[39;00m [\u001b[38;5;241m0\u001b[39m, \u001b[38;5;241m1\u001b[39m] \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28minput\u001b[39m\u001b[38;5;241m.\u001b[39mndim \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m0\u001b[39m:\n\u001b[0;32m 190\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m axis \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mrange\u001b[39m(\u001b[38;5;28minput\u001b[39m\u001b[38;5;241m.\u001b[39mndim):\n\u001b[1;32m--> 191\u001b[0m \u001b[43mspline_filter1d\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43minput\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43moutput\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43moutput\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mmode\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmode\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 192\u001b[0m \u001b[38;5;28minput\u001b[39m \u001b[38;5;241m=\u001b[39m output\n\u001b[0;32m 193\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\scipy\\ndimage\\_interpolation.py:132\u001b[0m, in \u001b[0;36mspline_filter1d\u001b[1;34m(input, order, axis, output, mode)\u001b[0m\n\u001b[0;32m 130\u001b[0m mode \u001b[38;5;241m=\u001b[39m _ni_support\u001b[38;5;241m.\u001b[39m_extend_mode_to_code(mode)\n\u001b[0;32m 131\u001b[0m axis \u001b[38;5;241m=\u001b[39m normalize_axis_index(axis, \u001b[38;5;28minput\u001b[39m\u001b[38;5;241m.\u001b[39mndim)\n\u001b[1;32m--> 132\u001b[0m \u001b[43m_nd_image\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mspline_filter1d\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43minput\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43moutput\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mmode\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 133\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m output\n", - "\u001b[1;31mKeyboardInterrupt\u001b[0m: " + "\u001b[0;33mLoading all images and labels into memory...\u001b[0m\n", + "\u001b[0;33mMaking categorical data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mGenerating augmented data \u001b[0m\u001b[0;36m[\u001b[0m\u001b[0;32mADBD: \u001b[0m\u001b[0;31m0\u001b[0m\u001b[0;36m]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0;33mNormalizing image data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mData type: \u001b[0m\u001b[0;32mfloat32\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mRGB Range: \u001b[0m\u001b[0;34mMin = 0.0\u001b[0m\u001b[0m | \u001b[0m\u001b[0;31mMax = 1.0\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mLabel ratio: \u001b[0m\u001b[0;31m49.35% PNEUMONIA \u001b[0m\u001b[0;35m| \u001b[0m\u001b[0;32m50.65% NORMAL\u001b[0m\n", + "\u001b[0;33mSetting LNTS...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mOriginal num_samples: \u001b[0m\u001b[0;32m23681\u001b[0m\n", + "\u001b[0;33mshuffling data...\u001b[0m\n", + "\u001b[0;33mSaving TS...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mSample dir: \u001b[0m\u001b[0;32mSamples/TSR400_y2024_m03_d03-h21_m06_s02\u001b[0m\n", + "\u001b[0;32mDone.\u001b[0m\n" ] } ], @@ -721,7 +715,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:31:27.380088800Z", @@ -875,7 +869,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 12, "metadata": { "ExecuteTime": { "end_time": "2023-12-27T17:34:12.077394600Z", @@ -3069,7 +3063,7 @@ " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", " #Dense\n", " Dense_L1 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.008),\n", + " kernel_regularizer=l2(0.0086),\n", " name='FC_C_Dense-L1-512'\n", " )(base_model_FT)\n", " #Dropout\n", @@ -3080,8 +3074,8 @@ " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n", " )(Dropout_L1)\n", " #Dense\n", - " Dense_L2 = Dense(512, activation='swish',\n", - " kernel_regularizer=l2(0.004),\n", + " Dense_L2 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.0065),\n", " name='FC_C_Dense-L2-512'\n", " )(BatchNorm_L2)\n", " #BatchNormalization\n", @@ -7407,7 +7401,7 @@ "recommended: ✅\n", "statuses: Ready\n", "Working: ✅\n", - "Max fine tuned acc: 95.3\n", + "Max fine tuned acc: 95.54\n", "Max fine tuned acc TLRev2: 97.12\n", "type: transfer learning>>>(EfficientNetB4::CCL)\n", "```" @@ -7415,249 +7409,1606 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from efficientnet.keras import EfficientNetB4 as KENB4\n", - "# FUNC\n", - "def Eff_B4_NS(freeze_layers):\n", - " base_model = KENB4(input_shape=(\n", - " img_res[0], img_res[1], img_res[2]), weights='noisy-student', include_top=False)\n", - " print('Total layers in the base model: ', len(base_model.layers))\n", - " print(f'Freezing {freeze_layers} layers in the base model...')\n", - " # Freeze the specified number of layers\n", - " for layer in base_model.layers[:freeze_layers]:\n", - " layer.trainable = False\n", - "\n", - " # Unfreeze the rest\n", - " for layer in base_model.layers[freeze_layers:]:\n", - " layer.trainable = True\n", - "\n", - " # Calculate the percentage of the model that is frozen\n", - " frozen_percentage = ((freeze_layers + 1e-10) /\n", - " len(base_model.layers)) * 100\n", - " print(\n", - " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", - " # adding CDL>>>\n", - " #GlobalAveragePooling2D\n", - " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", - " #Dense\n", - " Dense_L1 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.02),\n", - " name='FC_C_Dense-L1-512'\n", - " )(base_model_FT)\n", - " #Dropout\n", - " Dropout_L1 = Dropout(0.1,\n", - " name='FC_C_Dropout-L1-0.1'\n", - " )(Dense_L1)\n", - " #BatchNormalization\n", - " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n", - " )(Dropout_L1)\n", - " #Dense\n", - " Dense_L2 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.01),\n", - " name='FC_C_Dense-L2-512'\n", - " )(BatchNorm_L2)\n", - " #BatchNormalization\n", - " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L2'\n", - " )(Dense_L2)\n", - " #Dense\n", - " Dense_L3 = Dense(128, activation='relu',\n", - " name='FC_C_Dense-L3-128'\n", - " )(BatchNorm_L3)\n", - " #Dense\n", - " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", - " predictions = Dense(2, activation='softmax',\n", - " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", - " # CDL<<<\n", - " model_EfficientNetB4_NS = Model(\n", - " inputs=base_model.input, outputs=predictions)\n", - " print('Total model layers: ', len(model_EfficientNetB4_NS.layers))\n", - " # OPT/compile\n", - " opt = SGD(momentum=0.92, nesterov=False)\n", - " # opt = Nadam()\n", - " # opt = Adamax()\n", - " # opt = RMSprop(momentum=0.9)\n", - " # opt = Adagrad()\n", - " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", - " # opt = Yogi()\n", - " model_EfficientNetB4_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", - "\n", - " return model_EfficientNetB4_NS\n", - "\n", - "print('Creating the model...')\n", - "# Main\n", - "freeze_layers = 0\n", - "model = Eff_B4_NS(freeze_layers)\n", - "model.summary(show_trainable=True, expand_nested=True)\n", - "print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### V(T) Beta" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from efficientnet.keras import EfficientNetL2 as KENBL2\n", - "#FUNC\n", - "def Eff_B7_NS(freeze_layers):\n", - " base_model = KENBL2(input_shape=(img_res[0], img_res[1], img_res[2]),\n", - " weights='./download/Models/EFN_L2/efficientnet-l2_noisy-student_notop.h5',\n", - " include_top=False,\n", - " drop_connect_rate=0)\n", - " print('Total layers in the base model: ', len(base_model.layers))\n", - " print(f'Freezing {freeze_layers} layers in the base model...')\n", - " # Freeze the specified number of layers\n", - " for layer in base_model.layers[:freeze_layers]:\n", - " layer.trainable = False\n", - "\n", - " # Unfreeze the rest\n", - " for layer in base_model.layers[freeze_layers:]:\n", - " layer.trainable = True\n", - "\n", - " # Calculate the percentage of the model that is frozen\n", - " frozen_percentage = ((freeze_layers + 1e-10) / len(base_model.layers)) * 100\n", - " print(f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", - " # adding CDL\n", - " base_model_FT = GlobalAveragePooling2D()(base_model.output)\n", - " Dense_L1 = Dense(512, activation='relu', kernel_regularizer=l2(0.02))(base_model_FT)\n", - " Dropout_L1 = Dropout(0.1)(Dense_L1) \n", - " BatchNorm_L2 = BatchNormalization()(Dropout_L1)\n", - " Dense_L2 = Dense(512, activation='relu', kernel_regularizer=l2(0.01))(BatchNorm_L2)\n", - " BatchNorm_L3 = BatchNormalization()(Dense_L2)\n", - " Dense_L3 = Dense(128, activation='relu')(BatchNorm_L3)\n", - " predictions = Dense(2, activation='softmax')(Dense_L3)\n", - "\n", - " model_EfficientNetB7_NS = Model(inputs=base_model.input, outputs=predictions) \n", - " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", - " #OPT/compile\n", - " opt = SGD(momentum=0.9)\n", - " # opt = Yogi()\n", - " model_EfficientNetB7_NS.compile(optimizer = opt, loss='categorical_crossentropy', metrics=['accuracy'])\n", - "\n", - " return model_EfficientNetB7_NS\n", - "print('Creating the model...')\n", - "# Main\n", - "freeze_layers = 0\n", - "model = Eff_B7_NS(freeze_layers)\n", - "model.summary(show_trainable=True, expand_nested=True)\n", - "print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### V(T) Beta2" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "ExecuteTime": { - "end_time": "2023-12-28T02:31:32.994176700Z", - "start_time": "2023-12-28T02:31:27.381088600Z" - } - }, - "outputs": [], - "source": [ - "from efficientnet.keras import EfficientNetB7 as KENB7\n", - "# FUNC\n", - "def Eff_B7_NS(freeze_layers):\n", - " base_model = KENB7(input_shape=(\n", - " img_res[0], img_res[1], img_res[2]), weights=None, include_top=False)\n", - " print('Total layers in the base model: ', len(base_model.layers))\n", - " print(f'Freezing {freeze_layers} layers in the base model...')\n", - " # Freeze the specified number of layers\n", - " for layer in base_model.layers[:freeze_layers]:\n", - " layer.trainable = False\n", - "\n", - " # Unfreeze the rest\n", - " for layer in base_model.layers[freeze_layers:]:\n", - " layer.trainable = True\n", - "\n", - " # Calculate the percentage of the model that is frozen\n", - " frozen_percentage = ((freeze_layers + 1e-10) /\n", - " len(base_model.layers)) * 100\n", - " print(\n", - " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", - " # adding CDL>>>\n", - " #GlobalAveragePooling2D\n", - " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", - " #Dense\n", - " Dense_L1 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.02),\n", - " name='FC_C_Dense-L1-512'\n", - " )(base_model_FT)\n", - " #Dropout\n", - " Dropout_L1 = Dropout(0.1,\n", - " name='FC_C_Dropout-L1-0.1'\n", - " )(Dense_L1)\n", - " #BatchNormalization\n", - " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-Pooling-L1'\n", - " )(Dropout_L1)\n", - " #Dense\n", - " Dense_L2 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.01),\n", - " name='FC_C_Dense-L2-512'\n", - " )(BatchNorm_L2)\n", - " #BatchNormalization\n", - " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-Pooling-L2'\n", - " )(Dense_L2)\n", - " #Dense\n", - " Dense_L3 = Dense(128, activation='relu',\n", - " name='FC_C_Dense-L3-128'\n", - " )(BatchNorm_L3)\n", - " #Dense\n", - " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", - " predictions = Dense(2, activation='softmax',\n", - " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", - " # CDL<<<\n", - " model_EfficientNetB7_NS = Model(\n", - " inputs=base_model.input, outputs=predictions)\n", - " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", - " # OPT/compile\n", - " opt = SGD(momentum=0.9, nesterov=False)\n", - " # opt = Nadam()\n", - " # opt = Adamax()\n", - " # opt = RMSprop(momentum=0.9)\n", - " # opt = Adagrad()\n", - " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", - " # opt = Yogi()\n", - " model_EfficientNetB7_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", - "\n", - " return model_EfficientNetB7_NS\n", - "\n", - "print('Creating the model...')\n", - "# Main\n", - "freeze_layers = 0\n", - "model = Eff_B7_NS(freeze_layers)\n", - "model.summary(show_trainable=True, expand_nested=True)\n", - "print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### V(T) Beta3" - ] - }, - { - "cell_type": "code", - "execution_count": null, + "execution_count": 13, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Creating the model...\n", + "Total layers in the base model: 467\n", + "Freezing 0 layers in the base model...\n", + "Percentage of the base model that is frozen: 0.00%\n", + "Total model layers: 475\n", + "Model: \"model\"\n", + "_____________________________________________________________________________________________________________\n", + " Layer (type) Output Shape Param # Connected to Trainable \n", + "=============================================================================================================\n", + " input_1 (InputLayer) [(None, 224, 224, 3 0 [] Y \n", + " )] \n", + " \n", + " stem_conv (Conv2D) (None, 112, 112, 48 1296 ['input_1[0][0]'] Y \n", + " ) \n", + " \n", + " stem_bn (BatchNormalization) (None, 112, 112, 48 192 ['stem_conv[0][0]'] Y \n", + " ) \n", + " \n", + " stem_activation (Activation) (None, 112, 112, 48 0 ['stem_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block1a_dwconv (DepthwiseConv2 (None, 112, 112, 48 432 ['stem_activation[0][0]'] Y \n", + " D) ) \n", + " \n", + " block1a_bn (BatchNormalization (None, 112, 112, 48 192 ['block1a_dwconv[0][0]'] Y \n", + " ) ) \n", + " \n", + " block1a_activation (Activation (None, 112, 112, 48 0 ['block1a_bn[0][0]'] Y \n", + " ) ) \n", + " \n", + " block1a_se_squeeze (GlobalAver (None, 48) 0 ['block1a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block1a_se_reshape (Reshape) (None, 1, 1, 48) 0 ['block1a_se_squeeze[0][0]'] Y \n", + " \n", + " block1a_se_reduce (Conv2D) (None, 1, 1, 12) 588 ['block1a_se_reshape[0][0]'] Y \n", + " \n", + " block1a_se_expand (Conv2D) (None, 1, 1, 48) 624 ['block1a_se_reduce[0][0]'] Y \n", + " \n", + " block1a_se_excite (Multiply) (None, 112, 112, 48 0 ['block1a_activation[0][0]', Y \n", + " ) 'block1a_se_expand[0][0]'] \n", + " \n", + " block1a_project_conv (Conv2D) (None, 112, 112, 24 1152 ['block1a_se_excite[0][0]'] Y \n", + " ) \n", + " \n", + " block1a_project_bn (BatchNorma (None, 112, 112, 24 96 ['block1a_project_conv[0][0]'] Y \n", + " lization) ) \n", + " \n", + " block1b_dwconv (DepthwiseConv2 (None, 112, 112, 24 216 ['block1a_project_bn[0][0]'] Y \n", + " D) ) \n", + " \n", + " block1b_bn (BatchNormalization (None, 112, 112, 24 96 ['block1b_dwconv[0][0]'] Y \n", + " ) ) \n", + " \n", + " block1b_activation (Activation (None, 112, 112, 24 0 ['block1b_bn[0][0]'] Y \n", + " ) ) \n", + " \n", + " block1b_se_squeeze (GlobalAver (None, 24) 0 ['block1b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block1b_se_reshape (Reshape) (None, 1, 1, 24) 0 ['block1b_se_squeeze[0][0]'] Y \n", + " \n", + " block1b_se_reduce (Conv2D) (None, 1, 1, 6) 150 ['block1b_se_reshape[0][0]'] Y \n", + " \n", + " block1b_se_expand (Conv2D) (None, 1, 1, 24) 168 ['block1b_se_reduce[0][0]'] Y \n", + " \n", + " block1b_se_excite (Multiply) (None, 112, 112, 24 0 ['block1b_activation[0][0]', Y \n", + " ) 'block1b_se_expand[0][0]'] \n", + " \n", + " block1b_project_conv (Conv2D) (None, 112, 112, 24 576 ['block1b_se_excite[0][0]'] Y \n", + " ) \n", + " \n", + " block1b_project_bn (BatchNorma (None, 112, 112, 24 96 ['block1b_project_conv[0][0]'] Y \n", + " lization) ) \n", + " \n", + " block1b_drop (FixedDropout) (None, 112, 112, 24 0 ['block1b_project_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block1b_add (Add) (None, 112, 112, 24 0 ['block1b_drop[0][0]', Y \n", + " ) 'block1a_project_bn[0][0]'] \n", + " \n", + " block2a_expand_conv (Conv2D) (None, 112, 112, 14 3456 ['block1b_add[0][0]'] Y \n", + " 4) \n", + " \n", + " block2a_expand_bn (BatchNormal (None, 112, 112, 14 576 ['block2a_expand_conv[0][0]'] Y \n", + " ization) 4) \n", + " \n", + " block2a_expand_activation (Act (None, 112, 112, 14 0 ['block2a_expand_bn[0][0]'] Y \n", + " ivation) 4) \n", + " \n", + " block2a_dwconv (DepthwiseConv2 (None, 56, 56, 144) 1296 ['block2a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block2a_bn (BatchNormalization (None, 56, 56, 144) 576 ['block2a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block2a_activation (Activation (None, 56, 56, 144) 0 ['block2a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block2a_se_squeeze (GlobalAver (None, 144) 0 ['block2a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block2a_se_reshape (Reshape) (None, 1, 1, 144) 0 ['block2a_se_squeeze[0][0]'] Y \n", + " \n", + " block2a_se_reduce (Conv2D) (None, 1, 1, 6) 870 ['block2a_se_reshape[0][0]'] Y \n", + " \n", + " block2a_se_expand (Conv2D) (None, 1, 1, 144) 1008 ['block2a_se_reduce[0][0]'] Y \n", + " \n", + " block2a_se_excite (Multiply) (None, 56, 56, 144) 0 ['block2a_activation[0][0]', Y \n", + " 'block2a_se_expand[0][0]'] \n", + " \n", + " block2a_project_conv (Conv2D) (None, 56, 56, 32) 4608 ['block2a_se_excite[0][0]'] Y \n", + " \n", + " block2a_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block2b_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2a_project_bn[0][0]'] Y \n", + " \n", + " block2b_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block2b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block2b_expand_activation (Act (None, 56, 56, 192) 0 ['block2b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block2b_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block2b_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block2b_activation (Activation (None, 56, 56, 192) 0 ['block2b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block2b_se_squeeze (GlobalAver (None, 192) 0 ['block2b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block2b_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2b_se_squeeze[0][0]'] Y \n", + " \n", + " block2b_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2b_se_reshape[0][0]'] Y \n", + " \n", + " block2b_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2b_se_reduce[0][0]'] Y \n", + " \n", + " block2b_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2b_activation[0][0]', Y \n", + " 'block2b_se_expand[0][0]'] \n", + " \n", + " block2b_project_conv (Conv2D) (None, 56, 56, 32) 6144 ['block2b_se_excite[0][0]'] Y \n", + " \n", + " block2b_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block2b_drop (FixedDropout) (None, 56, 56, 32) 0 ['block2b_project_bn[0][0]'] Y \n", + " \n", + " block2b_add (Add) (None, 56, 56, 32) 0 ['block2b_drop[0][0]', Y \n", + " 'block2a_project_bn[0][0]'] \n", + " \n", + " block2c_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2b_add[0][0]'] Y \n", + " \n", + " block2c_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block2c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block2c_expand_activation (Act (None, 56, 56, 192) 0 ['block2c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block2c_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block2c_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block2c_activation (Activation (None, 56, 56, 192) 0 ['block2c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block2c_se_squeeze (GlobalAver (None, 192) 0 ['block2c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block2c_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2c_se_squeeze[0][0]'] Y \n", + " \n", + " block2c_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2c_se_reshape[0][0]'] Y \n", + " \n", + " block2c_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2c_se_reduce[0][0]'] Y \n", + " \n", + " block2c_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2c_activation[0][0]', Y \n", + " 'block2c_se_expand[0][0]'] \n", + " \n", + " block2c_project_conv (Conv2D) (None, 56, 56, 32) 6144 ['block2c_se_excite[0][0]'] Y \n", + " \n", + " block2c_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block2c_drop (FixedDropout) (None, 56, 56, 32) 0 ['block2c_project_bn[0][0]'] Y \n", + " \n", + " block2c_add (Add) (None, 56, 56, 32) 0 ['block2c_drop[0][0]', Y \n", + " 'block2b_add[0][0]'] \n", + " \n", + " block2d_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2c_add[0][0]'] Y \n", + " \n", + " block2d_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block2d_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block2d_expand_activation (Act (None, 56, 56, 192) 0 ['block2d_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block2d_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2d_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block2d_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2d_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block2d_activation (Activation (None, 56, 56, 192) 0 ['block2d_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block2d_se_squeeze (GlobalAver (None, 192) 0 ['block2d_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block2d_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2d_se_squeeze[0][0]'] Y \n", + " \n", + " block2d_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2d_se_reshape[0][0]'] Y \n", + " \n", + " block2d_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2d_se_reduce[0][0]'] Y \n", + " \n", + " block2d_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2d_activation[0][0]', Y \n", + " 'block2d_se_expand[0][0]'] \n", + " \n", + " block2d_project_conv (Conv2D) (None, 56, 56, 32) 6144 ['block2d_se_excite[0][0]'] Y \n", + " \n", + " block2d_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2d_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block2d_drop (FixedDropout) (None, 56, 56, 32) 0 ['block2d_project_bn[0][0]'] Y \n", + " \n", + " block2d_add (Add) (None, 56, 56, 32) 0 ['block2d_drop[0][0]', Y \n", + " 'block2c_add[0][0]'] \n", + " \n", + " block3a_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2d_add[0][0]'] Y \n", + " \n", + " block3a_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block3a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block3a_expand_activation (Act (None, 56, 56, 192) 0 ['block3a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block3a_dwconv (DepthwiseConv2 (None, 28, 28, 192) 4800 ['block3a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block3a_bn (BatchNormalization (None, 28, 28, 192) 768 ['block3a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block3a_activation (Activation (None, 28, 28, 192) 0 ['block3a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block3a_se_squeeze (GlobalAver (None, 192) 0 ['block3a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block3a_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block3a_se_squeeze[0][0]'] Y \n", + " \n", + " block3a_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block3a_se_reshape[0][0]'] Y \n", + " \n", + " block3a_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block3a_se_reduce[0][0]'] Y \n", + " \n", + " block3a_se_excite (Multiply) (None, 28, 28, 192) 0 ['block3a_activation[0][0]', Y \n", + " 'block3a_se_expand[0][0]'] \n", + " \n", + " block3a_project_conv (Conv2D) (None, 28, 28, 56) 10752 ['block3a_se_excite[0][0]'] Y \n", + " \n", + " block3a_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block3b_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3a_project_bn[0][0]'] Y \n", + " \n", + " block3b_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block3b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block3b_expand_activation (Act (None, 28, 28, 336) 0 ['block3b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block3b_dwconv (DepthwiseConv2 (None, 28, 28, 336) 8400 ['block3b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block3b_bn (BatchNormalization (None, 28, 28, 336) 1344 ['block3b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block3b_activation (Activation (None, 28, 28, 336) 0 ['block3b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block3b_se_squeeze (GlobalAver (None, 336) 0 ['block3b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block3b_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block3b_se_squeeze[0][0]'] Y \n", + " \n", + " block3b_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block3b_se_reshape[0][0]'] Y \n", + " \n", + " block3b_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block3b_se_reduce[0][0]'] Y \n", + " \n", + " block3b_se_excite (Multiply) (None, 28, 28, 336) 0 ['block3b_activation[0][0]', Y \n", + " 'block3b_se_expand[0][0]'] \n", + " \n", + " block3b_project_conv (Conv2D) (None, 28, 28, 56) 18816 ['block3b_se_excite[0][0]'] Y \n", + " \n", + " block3b_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block3b_drop (FixedDropout) (None, 28, 28, 56) 0 ['block3b_project_bn[0][0]'] Y \n", + " \n", + " block3b_add (Add) (None, 28, 28, 56) 0 ['block3b_drop[0][0]', Y \n", + " 'block3a_project_bn[0][0]'] \n", + " \n", + " block3c_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3b_add[0][0]'] Y \n", + " \n", + " block3c_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block3c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block3c_expand_activation (Act (None, 28, 28, 336) 0 ['block3c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block3c_dwconv (DepthwiseConv2 (None, 28, 28, 336) 8400 ['block3c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block3c_bn (BatchNormalization (None, 28, 28, 336) 1344 ['block3c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block3c_activation (Activation (None, 28, 28, 336) 0 ['block3c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block3c_se_squeeze (GlobalAver (None, 336) 0 ['block3c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block3c_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block3c_se_squeeze[0][0]'] Y \n", + " \n", + " block3c_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block3c_se_reshape[0][0]'] Y \n", + " \n", + " block3c_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block3c_se_reduce[0][0]'] Y \n", + " \n", + " block3c_se_excite (Multiply) (None, 28, 28, 336) 0 ['block3c_activation[0][0]', Y \n", + " 'block3c_se_expand[0][0]'] \n", + " \n", + " block3c_project_conv (Conv2D) (None, 28, 28, 56) 18816 ['block3c_se_excite[0][0]'] Y \n", + " \n", + " block3c_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block3c_drop (FixedDropout) (None, 28, 28, 56) 0 ['block3c_project_bn[0][0]'] Y \n", + " \n", + " block3c_add (Add) (None, 28, 28, 56) 0 ['block3c_drop[0][0]', Y \n", + " 'block3b_add[0][0]'] \n", + " \n", + " block3d_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3c_add[0][0]'] Y \n", + " \n", + " block3d_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block3d_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block3d_expand_activation (Act (None, 28, 28, 336) 0 ['block3d_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block3d_dwconv (DepthwiseConv2 (None, 28, 28, 336) 8400 ['block3d_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block3d_bn (BatchNormalization (None, 28, 28, 336) 1344 ['block3d_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block3d_activation (Activation (None, 28, 28, 336) 0 ['block3d_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block3d_se_squeeze (GlobalAver (None, 336) 0 ['block3d_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block3d_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block3d_se_squeeze[0][0]'] Y \n", + " \n", + " block3d_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block3d_se_reshape[0][0]'] Y \n", + " \n", + " block3d_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block3d_se_reduce[0][0]'] Y \n", + " \n", + " block3d_se_excite (Multiply) (None, 28, 28, 336) 0 ['block3d_activation[0][0]', Y \n", + " 'block3d_se_expand[0][0]'] \n", + " \n", + " block3d_project_conv (Conv2D) (None, 28, 28, 56) 18816 ['block3d_se_excite[0][0]'] Y \n", + " \n", + " block3d_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3d_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block3d_drop (FixedDropout) (None, 28, 28, 56) 0 ['block3d_project_bn[0][0]'] Y \n", + " \n", + " block3d_add (Add) (None, 28, 28, 56) 0 ['block3d_drop[0][0]', Y \n", + " 'block3c_add[0][0]'] \n", + " \n", + " block4a_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3d_add[0][0]'] Y \n", + " \n", + " block4a_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block4a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block4a_expand_activation (Act (None, 28, 28, 336) 0 ['block4a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block4a_dwconv (DepthwiseConv2 (None, 14, 14, 336) 3024 ['block4a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block4a_bn (BatchNormalization (None, 14, 14, 336) 1344 ['block4a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block4a_activation (Activation (None, 14, 14, 336) 0 ['block4a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block4a_se_squeeze (GlobalAver (None, 336) 0 ['block4a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block4a_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block4a_se_squeeze[0][0]'] Y \n", + " \n", + " block4a_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block4a_se_reshape[0][0]'] Y \n", + " \n", + " block4a_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block4a_se_reduce[0][0]'] Y \n", + " \n", + " block4a_se_excite (Multiply) (None, 14, 14, 336) 0 ['block4a_activation[0][0]', Y \n", + " 'block4a_se_expand[0][0]'] \n", + " \n", + " block4a_project_conv (Conv2D) (None, 14, 14, 112) 37632 ['block4a_se_excite[0][0]'] Y \n", + " \n", + " block4a_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block4b_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4a_project_bn[0][0]'] Y \n", + " \n", + " block4b_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block4b_expand_activation (Act (None, 14, 14, 672) 0 ['block4b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block4b_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block4b_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block4b_activation (Activation (None, 14, 14, 672) 0 ['block4b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block4b_se_squeeze (GlobalAver (None, 672) 0 ['block4b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block4b_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4b_se_squeeze[0][0]'] Y \n", + " \n", + " block4b_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4b_se_reshape[0][0]'] Y \n", + " \n", + " block4b_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4b_se_reduce[0][0]'] Y \n", + " \n", + " block4b_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4b_activation[0][0]', Y \n", + " 'block4b_se_expand[0][0]'] \n", + " \n", + " block4b_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4b_se_excite[0][0]'] Y \n", + " \n", + " block4b_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block4b_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4b_project_bn[0][0]'] Y \n", + " \n", + " block4b_add (Add) (None, 14, 14, 112) 0 ['block4b_drop[0][0]', Y \n", + " 'block4a_project_bn[0][0]'] \n", + " \n", + " block4c_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4b_add[0][0]'] Y \n", + " \n", + " block4c_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block4c_expand_activation (Act (None, 14, 14, 672) 0 ['block4c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block4c_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block4c_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block4c_activation (Activation (None, 14, 14, 672) 0 ['block4c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block4c_se_squeeze (GlobalAver (None, 672) 0 ['block4c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block4c_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4c_se_squeeze[0][0]'] Y \n", + " \n", + " block4c_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4c_se_reshape[0][0]'] Y \n", + " \n", + " block4c_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4c_se_reduce[0][0]'] Y \n", + " \n", + " block4c_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4c_activation[0][0]', Y \n", + " 'block4c_se_expand[0][0]'] \n", + " \n", + " block4c_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4c_se_excite[0][0]'] Y \n", + " \n", + " block4c_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block4c_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4c_project_bn[0][0]'] Y \n", + " \n", + " block4c_add (Add) (None, 14, 14, 112) 0 ['block4c_drop[0][0]', Y \n", + " 'block4b_add[0][0]'] \n", + " \n", + " block4d_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4c_add[0][0]'] Y \n", + " \n", + " block4d_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4d_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block4d_expand_activation (Act (None, 14, 14, 672) 0 ['block4d_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block4d_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4d_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block4d_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4d_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block4d_activation (Activation (None, 14, 14, 672) 0 ['block4d_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block4d_se_squeeze (GlobalAver (None, 672) 0 ['block4d_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block4d_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4d_se_squeeze[0][0]'] Y \n", + " \n", + " block4d_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4d_se_reshape[0][0]'] Y \n", + " \n", + " block4d_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4d_se_reduce[0][0]'] Y \n", + " \n", + " block4d_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4d_activation[0][0]', Y \n", + " 'block4d_se_expand[0][0]'] \n", + " \n", + " block4d_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4d_se_excite[0][0]'] Y \n", + " \n", + " block4d_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4d_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block4d_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4d_project_bn[0][0]'] Y \n", + " \n", + " block4d_add (Add) (None, 14, 14, 112) 0 ['block4d_drop[0][0]', Y \n", + " 'block4c_add[0][0]'] \n", + " \n", + " block4e_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4d_add[0][0]'] Y \n", + " \n", + " block4e_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4e_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block4e_expand_activation (Act (None, 14, 14, 672) 0 ['block4e_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block4e_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4e_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block4e_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4e_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block4e_activation (Activation (None, 14, 14, 672) 0 ['block4e_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block4e_se_squeeze (GlobalAver (None, 672) 0 ['block4e_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block4e_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4e_se_squeeze[0][0]'] Y \n", + " \n", + " block4e_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4e_se_reshape[0][0]'] Y \n", + " \n", + " block4e_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4e_se_reduce[0][0]'] Y \n", + " \n", + " block4e_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4e_activation[0][0]', Y \n", + " 'block4e_se_expand[0][0]'] \n", + " \n", + " block4e_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4e_se_excite[0][0]'] Y \n", + " \n", + " block4e_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4e_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block4e_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4e_project_bn[0][0]'] Y \n", + " \n", + " block4e_add (Add) (None, 14, 14, 112) 0 ['block4e_drop[0][0]', Y \n", + " 'block4d_add[0][0]'] \n", + " \n", + " block4f_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4e_add[0][0]'] Y \n", + " \n", + " block4f_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4f_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block4f_expand_activation (Act (None, 14, 14, 672) 0 ['block4f_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block4f_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4f_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block4f_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4f_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block4f_activation (Activation (None, 14, 14, 672) 0 ['block4f_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block4f_se_squeeze (GlobalAver (None, 672) 0 ['block4f_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block4f_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4f_se_squeeze[0][0]'] Y \n", + " \n", + " block4f_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4f_se_reshape[0][0]'] Y \n", + " \n", + " block4f_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4f_se_reduce[0][0]'] Y \n", + " \n", + " block4f_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4f_activation[0][0]', Y \n", + " 'block4f_se_expand[0][0]'] \n", + " \n", + " block4f_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4f_se_excite[0][0]'] Y \n", + " \n", + " block4f_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4f_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block4f_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4f_project_bn[0][0]'] Y \n", + " \n", + " block4f_add (Add) (None, 14, 14, 112) 0 ['block4f_drop[0][0]', Y \n", + " 'block4e_add[0][0]'] \n", + " \n", + " block5a_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4f_add[0][0]'] Y \n", + " \n", + " block5a_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block5a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5a_expand_activation (Act (None, 14, 14, 672) 0 ['block5a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5a_dwconv (DepthwiseConv2 (None, 14, 14, 672) 16800 ['block5a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5a_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block5a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5a_activation (Activation (None, 14, 14, 672) 0 ['block5a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5a_se_squeeze (GlobalAver (None, 672) 0 ['block5a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5a_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block5a_se_squeeze[0][0]'] Y \n", + " \n", + " block5a_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block5a_se_reshape[0][0]'] Y \n", + " \n", + " block5a_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block5a_se_reduce[0][0]'] Y \n", + " \n", + " block5a_se_excite (Multiply) (None, 14, 14, 672) 0 ['block5a_activation[0][0]', Y \n", + " 'block5a_se_expand[0][0]'] \n", + " \n", + " block5a_project_conv (Conv2D) (None, 14, 14, 160) 107520 ['block5a_se_excite[0][0]'] Y \n", + " \n", + " block5a_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5b_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5a_project_bn[0][0]'] Y \n", + " \n", + " block5b_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5b_expand_activation (Act (None, 14, 14, 960) 0 ['block5b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5b_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5b_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5b_activation (Activation (None, 14, 14, 960) 0 ['block5b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5b_se_squeeze (GlobalAver (None, 960) 0 ['block5b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5b_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5b_se_squeeze[0][0]'] Y \n", + " \n", + " block5b_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5b_se_reshape[0][0]'] Y \n", + " \n", + " block5b_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5b_se_reduce[0][0]'] Y \n", + " \n", + " block5b_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5b_activation[0][0]', Y \n", + " 'block5b_se_expand[0][0]'] \n", + " \n", + " block5b_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5b_se_excite[0][0]'] Y \n", + " \n", + " block5b_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5b_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5b_project_bn[0][0]'] Y \n", + " \n", + " block5b_add (Add) (None, 14, 14, 160) 0 ['block5b_drop[0][0]', Y \n", + " 'block5a_project_bn[0][0]'] \n", + " \n", + " block5c_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5b_add[0][0]'] Y \n", + " \n", + " block5c_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5c_expand_activation (Act (None, 14, 14, 960) 0 ['block5c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5c_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5c_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5c_activation (Activation (None, 14, 14, 960) 0 ['block5c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5c_se_squeeze (GlobalAver (None, 960) 0 ['block5c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5c_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5c_se_squeeze[0][0]'] Y \n", + " \n", + " block5c_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5c_se_reshape[0][0]'] Y \n", + " \n", + " block5c_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5c_se_reduce[0][0]'] Y \n", + " \n", + " block5c_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5c_activation[0][0]', Y \n", + " 'block5c_se_expand[0][0]'] \n", + " \n", + " block5c_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5c_se_excite[0][0]'] Y \n", + " \n", + " block5c_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5c_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5c_project_bn[0][0]'] Y \n", + " \n", + " block5c_add (Add) (None, 14, 14, 160) 0 ['block5c_drop[0][0]', Y \n", + " 'block5b_add[0][0]'] \n", + " \n", + " block5d_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5c_add[0][0]'] Y \n", + " \n", + " block5d_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5d_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5d_expand_activation (Act (None, 14, 14, 960) 0 ['block5d_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5d_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5d_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5d_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5d_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5d_activation (Activation (None, 14, 14, 960) 0 ['block5d_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5d_se_squeeze (GlobalAver (None, 960) 0 ['block5d_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5d_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5d_se_squeeze[0][0]'] Y \n", + " \n", + " block5d_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5d_se_reshape[0][0]'] Y \n", + " \n", + " block5d_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5d_se_reduce[0][0]'] Y \n", + " \n", + " block5d_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5d_activation[0][0]', Y \n", + " 'block5d_se_expand[0][0]'] \n", + " \n", + " block5d_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5d_se_excite[0][0]'] Y \n", + " \n", + " block5d_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5d_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5d_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5d_project_bn[0][0]'] Y \n", + " \n", + " block5d_add (Add) (None, 14, 14, 160) 0 ['block5d_drop[0][0]', Y \n", + " 'block5c_add[0][0]'] \n", + " \n", + " block5e_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5d_add[0][0]'] Y \n", + " \n", + " block5e_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5e_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5e_expand_activation (Act (None, 14, 14, 960) 0 ['block5e_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5e_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5e_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5e_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5e_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5e_activation (Activation (None, 14, 14, 960) 0 ['block5e_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5e_se_squeeze (GlobalAver (None, 960) 0 ['block5e_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5e_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5e_se_squeeze[0][0]'] Y \n", + " \n", + " block5e_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5e_se_reshape[0][0]'] Y \n", + " \n", + " block5e_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5e_se_reduce[0][0]'] Y \n", + " \n", + " block5e_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5e_activation[0][0]', Y \n", + " 'block5e_se_expand[0][0]'] \n", + " \n", + " block5e_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5e_se_excite[0][0]'] Y \n", + " \n", + " block5e_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5e_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5e_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5e_project_bn[0][0]'] Y \n", + " \n", + " block5e_add (Add) (None, 14, 14, 160) 0 ['block5e_drop[0][0]', Y \n", + " 'block5d_add[0][0]'] \n", + " \n", + " block5f_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5e_add[0][0]'] Y \n", + " \n", + " block5f_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5f_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5f_expand_activation (Act (None, 14, 14, 960) 0 ['block5f_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5f_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5f_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5f_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5f_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5f_activation (Activation (None, 14, 14, 960) 0 ['block5f_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5f_se_squeeze (GlobalAver (None, 960) 0 ['block5f_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5f_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5f_se_squeeze[0][0]'] Y \n", + " \n", + " block5f_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5f_se_reshape[0][0]'] Y \n", + " \n", + " block5f_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5f_se_reduce[0][0]'] Y \n", + " \n", + " block5f_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5f_activation[0][0]', Y \n", + " 'block5f_se_expand[0][0]'] \n", + " \n", + " block5f_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5f_se_excite[0][0]'] Y \n", + " \n", + " block5f_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5f_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5f_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5f_project_bn[0][0]'] Y \n", + " \n", + " block5f_add (Add) (None, 14, 14, 160) 0 ['block5f_drop[0][0]', Y \n", + " 'block5e_add[0][0]'] \n", + " \n", + " block6a_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5f_add[0][0]'] Y \n", + " \n", + " block6a_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block6a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6a_expand_activation (Act (None, 14, 14, 960) 0 ['block6a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6a_dwconv (DepthwiseConv2 (None, 7, 7, 960) 24000 ['block6a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6a_bn (BatchNormalization (None, 7, 7, 960) 3840 ['block6a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6a_activation (Activation (None, 7, 7, 960) 0 ['block6a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6a_se_squeeze (GlobalAver (None, 960) 0 ['block6a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6a_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block6a_se_squeeze[0][0]'] Y \n", + " \n", + " block6a_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block6a_se_reshape[0][0]'] Y \n", + " \n", + " block6a_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block6a_se_reduce[0][0]'] Y \n", + " \n", + " block6a_se_excite (Multiply) (None, 7, 7, 960) 0 ['block6a_activation[0][0]', Y \n", + " 'block6a_se_expand[0][0]'] \n", + " \n", + " block6a_project_conv (Conv2D) (None, 7, 7, 272) 261120 ['block6a_se_excite[0][0]'] Y \n", + " \n", + " block6a_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6b_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6a_project_bn[0][0]'] Y \n", + " \n", + " block6b_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6b_expand_activation (Act (None, 7, 7, 1632) 0 ['block6b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6b_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6b_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6b_activation (Activation (None, 7, 7, 1632) 0 ['block6b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6b_se_squeeze (GlobalAver (None, 1632) 0 ['block6b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6b_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6b_se_squeeze[0][0]'] Y \n", + " \n", + " block6b_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6b_se_reshape[0][0]'] Y \n", + " \n", + " block6b_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6b_se_reduce[0][0]'] Y \n", + " \n", + " block6b_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6b_activation[0][0]', Y \n", + " 'block6b_se_expand[0][0]'] \n", + " \n", + " block6b_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6b_se_excite[0][0]'] Y \n", + " \n", + " block6b_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6b_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6b_project_bn[0][0]'] Y \n", + " \n", + " block6b_add (Add) (None, 7, 7, 272) 0 ['block6b_drop[0][0]', Y \n", + " 'block6a_project_bn[0][0]'] \n", + " \n", + " block6c_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6b_add[0][0]'] Y \n", + " \n", + " block6c_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6c_expand_activation (Act (None, 7, 7, 1632) 0 ['block6c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6c_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6c_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6c_activation (Activation (None, 7, 7, 1632) 0 ['block6c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6c_se_squeeze (GlobalAver (None, 1632) 0 ['block6c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6c_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6c_se_squeeze[0][0]'] Y \n", + " \n", + " block6c_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6c_se_reshape[0][0]'] Y \n", + " \n", + " block6c_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6c_se_reduce[0][0]'] Y \n", + " \n", + " block6c_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6c_activation[0][0]', Y \n", + " 'block6c_se_expand[0][0]'] \n", + " \n", + " block6c_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6c_se_excite[0][0]'] Y \n", + " \n", + " block6c_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6c_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6c_project_bn[0][0]'] Y \n", + " \n", + " block6c_add (Add) (None, 7, 7, 272) 0 ['block6c_drop[0][0]', Y \n", + " 'block6b_add[0][0]'] \n", + " \n", + " block6d_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6c_add[0][0]'] Y \n", + " \n", + " block6d_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6d_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6d_expand_activation (Act (None, 7, 7, 1632) 0 ['block6d_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6d_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6d_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6d_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6d_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6d_activation (Activation (None, 7, 7, 1632) 0 ['block6d_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6d_se_squeeze (GlobalAver (None, 1632) 0 ['block6d_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6d_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6d_se_squeeze[0][0]'] Y \n", + " \n", + " block6d_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6d_se_reshape[0][0]'] Y \n", + " \n", + " block6d_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6d_se_reduce[0][0]'] Y \n", + " \n", + " block6d_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6d_activation[0][0]', Y \n", + " 'block6d_se_expand[0][0]'] \n", + " \n", + " block6d_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6d_se_excite[0][0]'] Y \n", + " \n", + " block6d_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6d_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6d_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6d_project_bn[0][0]'] Y \n", + " \n", + " block6d_add (Add) (None, 7, 7, 272) 0 ['block6d_drop[0][0]', Y \n", + " 'block6c_add[0][0]'] \n", + " \n", + " block6e_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6d_add[0][0]'] Y \n", + " \n", + " block6e_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6e_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6e_expand_activation (Act (None, 7, 7, 1632) 0 ['block6e_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6e_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6e_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6e_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6e_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6e_activation (Activation (None, 7, 7, 1632) 0 ['block6e_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6e_se_squeeze (GlobalAver (None, 1632) 0 ['block6e_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6e_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6e_se_squeeze[0][0]'] Y \n", + " \n", + " block6e_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6e_se_reshape[0][0]'] Y \n", + " \n", + " block6e_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6e_se_reduce[0][0]'] Y \n", + " \n", + " block6e_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6e_activation[0][0]', Y \n", + " 'block6e_se_expand[0][0]'] \n", + " \n", + " block6e_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6e_se_excite[0][0]'] Y \n", + " \n", + " block6e_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6e_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6e_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6e_project_bn[0][0]'] Y \n", + " \n", + " block6e_add (Add) (None, 7, 7, 272) 0 ['block6e_drop[0][0]', Y \n", + " 'block6d_add[0][0]'] \n", + " \n", + " block6f_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6e_add[0][0]'] Y \n", + " \n", + " block6f_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6f_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6f_expand_activation (Act (None, 7, 7, 1632) 0 ['block6f_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6f_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6f_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6f_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6f_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6f_activation (Activation (None, 7, 7, 1632) 0 ['block6f_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6f_se_squeeze (GlobalAver (None, 1632) 0 ['block6f_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6f_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6f_se_squeeze[0][0]'] Y \n", + " \n", + " block6f_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6f_se_reshape[0][0]'] Y \n", + " \n", + " block6f_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6f_se_reduce[0][0]'] Y \n", + " \n", + " block6f_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6f_activation[0][0]', Y \n", + " 'block6f_se_expand[0][0]'] \n", + " \n", + " block6f_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6f_se_excite[0][0]'] Y \n", + " \n", + " block6f_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6f_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6f_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6f_project_bn[0][0]'] Y \n", + " \n", + " block6f_add (Add) (None, 7, 7, 272) 0 ['block6f_drop[0][0]', Y \n", + " 'block6e_add[0][0]'] \n", + " \n", + " block6g_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6f_add[0][0]'] Y \n", + " \n", + " block6g_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6g_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6g_expand_activation (Act (None, 7, 7, 1632) 0 ['block6g_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6g_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6g_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6g_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6g_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6g_activation (Activation (None, 7, 7, 1632) 0 ['block6g_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6g_se_squeeze (GlobalAver (None, 1632) 0 ['block6g_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6g_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6g_se_squeeze[0][0]'] Y \n", + " \n", + " block6g_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6g_se_reshape[0][0]'] Y \n", + " \n", + " block6g_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6g_se_reduce[0][0]'] Y \n", + " \n", + " block6g_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6g_activation[0][0]', Y \n", + " 'block6g_se_expand[0][0]'] \n", + " \n", + " block6g_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6g_se_excite[0][0]'] Y \n", + " \n", + " block6g_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6g_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6g_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6g_project_bn[0][0]'] Y \n", + " \n", + " block6g_add (Add) (None, 7, 7, 272) 0 ['block6g_drop[0][0]', Y \n", + " 'block6f_add[0][0]'] \n", + " \n", + " block6h_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6g_add[0][0]'] Y \n", + " \n", + " block6h_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6h_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6h_expand_activation (Act (None, 7, 7, 1632) 0 ['block6h_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6h_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6h_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6h_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6h_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6h_activation (Activation (None, 7, 7, 1632) 0 ['block6h_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6h_se_squeeze (GlobalAver (None, 1632) 0 ['block6h_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6h_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6h_se_squeeze[0][0]'] Y \n", + " \n", + " block6h_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6h_se_reshape[0][0]'] Y \n", + " \n", + " block6h_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6h_se_reduce[0][0]'] Y \n", + " \n", + " block6h_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6h_activation[0][0]', Y \n", + " 'block6h_se_expand[0][0]'] \n", + " \n", + " block6h_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6h_se_excite[0][0]'] Y \n", + " \n", + " block6h_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6h_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6h_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6h_project_bn[0][0]'] Y \n", + " \n", + " block6h_add (Add) (None, 7, 7, 272) 0 ['block6h_drop[0][0]', Y \n", + " 'block6g_add[0][0]'] \n", + " \n", + " block7a_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6h_add[0][0]'] Y \n", + " \n", + " block7a_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block7a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block7a_expand_activation (Act (None, 7, 7, 1632) 0 ['block7a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block7a_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 14688 ['block7a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block7a_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block7a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block7a_activation (Activation (None, 7, 7, 1632) 0 ['block7a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block7a_se_squeeze (GlobalAver (None, 1632) 0 ['block7a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block7a_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block7a_se_squeeze[0][0]'] Y \n", + " \n", + " block7a_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block7a_se_reshape[0][0]'] Y \n", + " \n", + " block7a_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block7a_se_reduce[0][0]'] Y \n", + " \n", + " block7a_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block7a_activation[0][0]', Y \n", + " 'block7a_se_expand[0][0]'] \n", + " \n", + " block7a_project_conv (Conv2D) (None, 7, 7, 448) 731136 ['block7a_se_excite[0][0]'] Y \n", + " \n", + " block7a_project_bn (BatchNorma (None, 7, 7, 448) 1792 ['block7a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block7b_expand_conv (Conv2D) (None, 7, 7, 2688) 1204224 ['block7a_project_bn[0][0]'] Y \n", + " \n", + " block7b_expand_bn (BatchNormal (None, 7, 7, 2688) 10752 ['block7b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block7b_expand_activation (Act (None, 7, 7, 2688) 0 ['block7b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block7b_dwconv (DepthwiseConv2 (None, 7, 7, 2688) 24192 ['block7b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block7b_bn (BatchNormalization (None, 7, 7, 2688) 10752 ['block7b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block7b_activation (Activation (None, 7, 7, 2688) 0 ['block7b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block7b_se_squeeze (GlobalAver (None, 2688) 0 ['block7b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block7b_se_reshape (Reshape) (None, 1, 1, 2688) 0 ['block7b_se_squeeze[0][0]'] Y \n", + " \n", + " block7b_se_reduce (Conv2D) (None, 1, 1, 112) 301168 ['block7b_se_reshape[0][0]'] Y \n", + " \n", + " block7b_se_expand (Conv2D) (None, 1, 1, 2688) 303744 ['block7b_se_reduce[0][0]'] Y \n", + " \n", + " block7b_se_excite (Multiply) (None, 7, 7, 2688) 0 ['block7b_activation[0][0]', Y \n", + " 'block7b_se_expand[0][0]'] \n", + " \n", + " block7b_project_conv (Conv2D) (None, 7, 7, 448) 1204224 ['block7b_se_excite[0][0]'] Y \n", + " \n", + " block7b_project_bn (BatchNorma (None, 7, 7, 448) 1792 ['block7b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block7b_drop (FixedDropout) (None, 7, 7, 448) 0 ['block7b_project_bn[0][0]'] Y \n", + " \n", + " block7b_add (Add) (None, 7, 7, 448) 0 ['block7b_drop[0][0]', Y \n", + " 'block7a_project_bn[0][0]'] \n", + " \n", + " top_conv (Conv2D) (None, 7, 7, 1792) 802816 ['block7b_add[0][0]'] Y \n", + " \n", + " top_bn (BatchNormalization) (None, 7, 7, 1792) 7168 ['top_conv[0][0]'] Y \n", + " \n", + " top_activation (Activation) (None, 7, 7, 1792) 0 ['top_bn[0][0]'] Y \n", + " \n", + " FC_INPUT_Avg-Pooling (GlobalAv (None, 1792) 0 ['top_activation[0][0]'] Y \n", + " eragePooling2D) \n", + " \n", + " FC_C_Dense-L1-512 (Dense) (None, 512) 918016 ['FC_INPUT_Avg-Pooling[0][0]'] Y \n", + " \n", + " FC_C_Dropout-L1-0.1 (Dropout) (None, 512) 0 ['FC_C_Dense-L1-512[0][0]'] Y \n", + " \n", + " FC_C_Avg-BatchNormalization-L1 (None, 512) 2048 ['FC_C_Dropout-L1-0.1[0][0]'] Y \n", + " (BatchNormalization) \n", + " \n", + " FC_C_Dense-L2-512 (Dense) (None, 512) 262656 ['FC_C_Avg-BatchNormalization-L Y \n", + " 1[0][0]'] \n", + " \n", + " FC_C_Avg-BatchNormalization-L2 (None, 512) 2048 ['FC_C_Dense-L2-512[0][0]'] Y \n", + " (BatchNormalization) \n", + " \n", + " FC_C_Dense-L3-128 (Dense) (None, 128) 65664 ['FC_C_Avg-BatchNormalization-L Y \n", + " 2[0][0]'] \n", + " \n", + " FC_OUTPUT_Dense-2 (Dense) (None, 2) 258 ['FC_C_Dense-L3-128[0][0]'] Y \n", + " \n", + "=============================================================================================================\n", + "Total params: 18,924,506\n", + "Trainable params: 18,797,258\n", + "Non-trainable params: 127,248\n", + "_____________________________________________________________________________________________________________\n", + "done.\n" + ] + } + ], + "source": [ + "from efficientnet.keras import EfficientNetB4 as KENB4\n", + "# FUNC\n", + "def Eff_B4_NS(freeze_layers):\n", + " base_model = KENB4(input_shape=(\n", + " img_res[0], img_res[1], img_res[2]), weights='noisy-student', include_top=False)\n", + " print('Total layers in the base model: ', len(base_model.layers))\n", + " print(f'Freezing {freeze_layers} layers in the base model...')\n", + " # Freeze the specified number of layers\n", + " for layer in base_model.layers[:freeze_layers]:\n", + " layer.trainable = False\n", + "\n", + " # Unfreeze the rest\n", + " for layer in base_model.layers[freeze_layers:]:\n", + " layer.trainable = True\n", + "\n", + " # Calculate the percentage of the model that is frozen\n", + " frozen_percentage = ((freeze_layers + 1e-10) /\n", + " len(base_model.layers)) * 100\n", + " print(\n", + " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", + " # adding CDL>>>\n", + " #GlobalAveragePooling2D\n", + " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", + " #Dense\n", + " Dense_L1 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.02),\n", + " name='FC_C_Dense-L1-512'\n", + " )(base_model_FT)\n", + " #Dropout\n", + " Dropout_L1 = Dropout(0.1,\n", + " name='FC_C_Dropout-L1-0.1'\n", + " )(Dense_L1)\n", + " #BatchNormalization\n", + " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n", + " )(Dropout_L1)\n", + " #Dense\n", + " Dense_L2 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.01),\n", + " name='FC_C_Dense-L2-512'\n", + " )(BatchNorm_L2)\n", + " #BatchNormalization\n", + " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L2'\n", + " )(Dense_L2)\n", + " #Dense\n", + " Dense_L3 = Dense(128, activation='relu',\n", + " name='FC_C_Dense-L3-128'\n", + " )(BatchNorm_L3)\n", + " #Dense\n", + " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", + " predictions = Dense(2, activation='softmax',\n", + " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", + " # CDL<<<\n", + " model_EfficientNetB4_NS = Model(\n", + " inputs=base_model.input, outputs=predictions)\n", + " print('Total model layers: ', len(model_EfficientNetB4_NS.layers))\n", + " # OPT/compile\n", + " opt = SGD(momentum=0.92, nesterov=False)\n", + " # opt = Nadam()\n", + " # opt = Adamax()\n", + " # opt = RMSprop(momentum=0.9)\n", + " # opt = Adagrad()\n", + " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", + " # opt = Yogi()\n", + " model_EfficientNetB4_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", + "\n", + " return model_EfficientNetB4_NS\n", + "\n", + "print('Creating the model...')\n", + "# Main\n", + "freeze_layers = 0\n", + "model = Eff_B4_NS(freeze_layers)\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Rev1.6 \n", + "```\n", + "recommended: ✅\n", + "statuses: Ready\n", + "Working: ✅\n", + "Max fine tuned acc: 96.47\n", + "type: transfer learning>>>(EfficientNetB0::CCL)\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from efficientnet.keras import EfficientNetB0 as KENB0\n", + "# FUNC\n", + "def Eff_B0_NS(freeze_layers):\n", + " base_model = KENB0(input_shape=(\n", + " img_res[0], img_res[1], img_res[2]), weights='noisy-student', include_top=False)\n", + " print('Total layers in the base model: ', len(base_model.layers))\n", + " print(f'Freezing {freeze_layers} layers in the base model...')\n", + " # Freeze the specified number of layers\n", + " for layer in base_model.layers[:freeze_layers]:\n", + " layer.trainable = False\n", + "\n", + " # Unfreeze the rest\n", + " for layer in base_model.layers[freeze_layers:]:\n", + " layer.trainable = True\n", + "\n", + " # Calculate the percentage of the model that is frozen\n", + " frozen_percentage = ((freeze_layers + 1e-10) /\n", + " len(base_model.layers)) * 100\n", + " print(\n", + " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", + " # adding CDL>>>\n", + " #GlobalAveragePooling2D\n", + " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", + " #Dense\n", + " Dense_L1 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.02),\n", + " name='FC_C_Dense-L1-512'\n", + " )(base_model_FT)\n", + " #Dropout\n", + " Dropout_L1 = Dropout(0.1,\n", + " name='FC_C_Dropout-L1-0.1'\n", + " )(Dense_L1)\n", + " #BatchNormalization\n", + " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n", + " )(Dropout_L1)\n", + " #Dense\n", + " Dense_L2 = Dense(256, activation='relu',\n", + " kernel_regularizer=l2(0.01),\n", + " name='FC_C_Dense-L2-512'\n", + " )(BatchNorm_L2)\n", + " #BatchNormalization\n", + " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L2'\n", + " )(Dense_L2)\n", + " #Dense\n", + " Dense_L3 = Dense(128, activation='relu',\n", + " name='FC_C_Dense-L3-128'\n", + " )(BatchNorm_L3)\n", + " #Dense\n", + " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", + " predictions = Dense(2, activation='softmax',\n", + " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", + " # CDL<<<\n", + " model_EfficientNetB0_NS = Model(\n", + " inputs=base_model.input, outputs=predictions)\n", + " print('Total model layers: ', len(model_EfficientNetB0_NS.layers))\n", + " # OPT/compile\n", + " opt = SGD(momentum=0.92, nesterov=False)\n", + " # opt = Nadam()\n", + " # opt = Adamax()\n", + " # opt = RMSprop(momentum=0.9)\n", + " # opt = Adagrad()\n", + " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", + " # opt = Yogi()\n", + " model_EfficientNetB0_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", + "\n", + " return model_EfficientNetB0_NS\n", + "\n", + "print('Creating the model...')\n", + "# Main\n", + "freeze_layers = 0\n", + "model = Eff_B0_NS(freeze_layers)\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### V(T) Beta" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from efficientnet.keras import EfficientNetL2 as KENBL2\n", + "#FUNC\n", + "def Eff_B7_NS(freeze_layers):\n", + " base_model = KENBL2(input_shape=(img_res[0], img_res[1], img_res[2]),\n", + " weights='./download/Models/EFN_L2/efficientnet-l2_noisy-student_notop.h5',\n", + " include_top=False,\n", + " drop_connect_rate=0)\n", + " print('Total layers in the base model: ', len(base_model.layers))\n", + " print(f'Freezing {freeze_layers} layers in the base model...')\n", + " # Freeze the specified number of layers\n", + " for layer in base_model.layers[:freeze_layers]:\n", + " layer.trainable = False\n", + "\n", + " # Unfreeze the rest\n", + " for layer in base_model.layers[freeze_layers:]:\n", + " layer.trainable = True\n", + "\n", + " # Calculate the percentage of the model that is frozen\n", + " frozen_percentage = ((freeze_layers + 1e-10) / len(base_model.layers)) * 100\n", + " print(f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", + " # adding CDL\n", + " base_model_FT = GlobalAveragePooling2D()(base_model.output)\n", + " Dense_L1 = Dense(512, activation='relu', kernel_regularizer=l2(0.02))(base_model_FT)\n", + " Dropout_L1 = Dropout(0.1)(Dense_L1) \n", + " BatchNorm_L2 = BatchNormalization()(Dropout_L1)\n", + " Dense_L2 = Dense(512, activation='relu', kernel_regularizer=l2(0.01))(BatchNorm_L2)\n", + " BatchNorm_L3 = BatchNormalization()(Dense_L2)\n", + " Dense_L3 = Dense(128, activation='relu')(BatchNorm_L3)\n", + " predictions = Dense(2, activation='softmax')(Dense_L3)\n", + "\n", + " model_EfficientNetB7_NS = Model(inputs=base_model.input, outputs=predictions) \n", + " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", + " #OPT/compile\n", + " opt = SGD(momentum=0.9)\n", + " # opt = Yogi()\n", + " model_EfficientNetB7_NS.compile(optimizer = opt, loss='categorical_crossentropy', metrics=['accuracy'])\n", + "\n", + " return model_EfficientNetB7_NS\n", + "print('Creating the model...')\n", + "# Main\n", + "freeze_layers = 0\n", + "model = Eff_B7_NS(freeze_layers)\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### V(T) Beta2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "ExecuteTime": { + "end_time": "2023-12-28T02:31:32.994176700Z", + "start_time": "2023-12-28T02:31:27.381088600Z" + } + }, + "outputs": [], + "source": [ + "from efficientnet.keras import EfficientNetB7 as KENB7\n", + "# FUNC\n", + "def Eff_B7_NS(freeze_layers):\n", + " base_model = KENB7(input_shape=(\n", + " img_res[0], img_res[1], img_res[2]), weights=None, include_top=False)\n", + " print('Total layers in the base model: ', len(base_model.layers))\n", + " print(f'Freezing {freeze_layers} layers in the base model...')\n", + " # Freeze the specified number of layers\n", + " for layer in base_model.layers[:freeze_layers]:\n", + " layer.trainable = False\n", + "\n", + " # Unfreeze the rest\n", + " for layer in base_model.layers[freeze_layers:]:\n", + " layer.trainable = True\n", + "\n", + " # Calculate the percentage of the model that is frozen\n", + " frozen_percentage = ((freeze_layers + 1e-10) /\n", + " len(base_model.layers)) * 100\n", + " print(\n", + " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", + " # adding CDL>>>\n", + " #GlobalAveragePooling2D\n", + " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", + " #Dense\n", + " Dense_L1 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.02),\n", + " name='FC_C_Dense-L1-512'\n", + " )(base_model_FT)\n", + " #Dropout\n", + " Dropout_L1 = Dropout(0.1,\n", + " name='FC_C_Dropout-L1-0.1'\n", + " )(Dense_L1)\n", + " #BatchNormalization\n", + " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-Pooling-L1'\n", + " )(Dropout_L1)\n", + " #Dense\n", + " Dense_L2 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.01),\n", + " name='FC_C_Dense-L2-512'\n", + " )(BatchNorm_L2)\n", + " #BatchNormalization\n", + " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-Pooling-L2'\n", + " )(Dense_L2)\n", + " #Dense\n", + " Dense_L3 = Dense(128, activation='relu',\n", + " name='FC_C_Dense-L3-128'\n", + " )(BatchNorm_L3)\n", + " #Dense\n", + " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", + " predictions = Dense(2, activation='softmax',\n", + " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", + " # CDL<<<\n", + " model_EfficientNetB7_NS = Model(\n", + " inputs=base_model.input, outputs=predictions)\n", + " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", + " # OPT/compile\n", + " opt = SGD(momentum=0.9, nesterov=False)\n", + " # opt = Nadam()\n", + " # opt = Adamax()\n", + " # opt = RMSprop(momentum=0.9)\n", + " # opt = Adagrad()\n", + " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", + " # opt = Yogi()\n", + " model_EfficientNetB7_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", + "\n", + " return model_EfficientNetB7_NS\n", + "\n", + "print('Creating the model...')\n", + "# Main\n", + "freeze_layers = 0\n", + "model = Eff_B7_NS(freeze_layers)\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### V(T) Beta3" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "from keras.applications import ConvNeXtXLarge\n", "from keras.layers import Lambda\n", @@ -8606,7 +9957,7 @@ " + Lower memory usage.\n", " - Slow training.\n", " + Achieving higher acc.\n", - " - Some models dont work.\n", + " - Unstable training.\n", "```\n", "- TODO:\n", " - add Pruning" @@ -8614,7 +9965,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 13, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T07:04:23.573633300Z", @@ -8629,2943 +9980,2166 @@ "Training the model...\n", "\u001b[0;33m\n", "Setup Verbose:\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSetting TensorBoard Log dir to \u001b[0m\u001b[0;32m[logs/fit/y2024_m02_d29-h14_m51_s51]\u001b[0m\u001b[0;36m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSetting TensorBoard Log dir to \u001b[0m\u001b[0;32m[logs/fit/y2024_m03_d04-h14_m34_s05]\u001b[0m\u001b[0;36m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mUse_extended_tensorboard \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mDebug_OUTPUT_DPS \u001b[0m\u001b[0;32m[True]\u001b[0m\u001b[0;36m.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mUse_OneCycleLr \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mUsing the modified ReduceLROnPlateau.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mUse_OneCycleLr \u001b[0m\u001b[0;32m[True]\u001b[0m\u001b[0;36m.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mOneCycleLr_UFTS \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", "\u001b[0;33mSetup Verbose END.\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m1\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 0)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Loading fitted ImageDataGenerator...\u001b[0m\n", + "\u001b[0;33m- Fitting ImageDataGenerator...\u001b[0m\n", "\u001b[0;33m- ImageDataGenerator fit done.\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m02_d29-h14_m53_s09\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m03_d04-h14_m44_s04\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 1/6\n", - "366/366 [==============================] - 31s 60ms/step - loss: 6.6653 - accuracy: 0.7860 - val_loss: 1.4964 - val_accuracy: 0.7420 - lr: 0.0100\n", + "171/171 [==============================] - 171s 899ms/step - loss: 10.9431 - accuracy: 0.6035 - val_loss: 9.8914 - val_accuracy: 0.7532\n", "Epoch 2/6\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.7452 - accuracy: 0.8799 - val_loss: 0.3893 - val_accuracy: 0.9054 - lr: 0.0100\n", + "171/171 [==============================] - 132s 770ms/step - loss: 8.3882 - accuracy: 0.7949 - val_loss: 6.8499 - val_accuracy: 0.9231\n", "Epoch 3/6\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.3348 - accuracy: 0.9003 - val_loss: 0.2708 - val_accuracy: 0.8958 - lr: 0.0100\n", + "171/171 [==============================] - 125s 734ms/step - loss: 5.9035 - accuracy: 0.8655 - val_loss: 4.8416 - val_accuracy: 0.9407\n", "Epoch 4/6\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.2637 - accuracy: 0.9187 - val_loss: 0.4863 - val_accuracy: 0.7821 - lr: 0.0100\n", + "171/171 [==============================] - 132s 769ms/step - loss: 4.2602 - accuracy: 0.9031 - val_loss: 3.6133 - val_accuracy: 0.9407\n", "Epoch 5/6\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.2211 - accuracy: 0.9317 - val_loss: 0.3759 - val_accuracy: 0.8558 - lr: 0.0100\n", + "171/171 [==============================] - 124s 726ms/step - loss: 3.3017 - accuracy: 0.9236 - val_loss: 3.3014 - val_accuracy: 0.8301\n", "Epoch 6/6\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1969 - accuracy: 0.9403 - val_loss: 0.4197 - val_accuracy: 0.8862 - lr: 0.0100\n", + "171/171 [==============================] - 133s 775ms/step - loss: 2.9081 - accuracy: 0.9360 - val_loss: 3.0891 - val_accuracy: 0.8622\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-002-0.9054.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9054\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.3893\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.000000 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.905449\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-003-0.9407.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m4.8417\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model accuracy from 0.000000 to 0.940705. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32minf \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.3892704844\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from inf to 4.84167004. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m229.27 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m137.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.44 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.41GB, used: 23.59GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1442.13 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m817.94 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m624.19 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [1] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m2\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 6)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 7/12\n", - "366/366 [==============================] - 23s 59ms/step - loss: 0.3972 - accuracy: 0.8857 - val_loss: 0.4236 - val_accuracy: 0.8590 - lr: 0.0100\n", + "171/171 [==============================] - 205s 1s/step - loss: 4.7614 - accuracy: 0.8843 - val_loss: 4.4211 - val_accuracy: 0.8189\n", "Epoch 8/12\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.3055 - accuracy: 0.9003 - val_loss: 0.2175 - val_accuracy: 0.9151 - lr: 0.0100\n", + "171/171 [==============================] - 343s 2s/step - loss: 3.7328 - accuracy: 0.8965 - val_loss: 3.0718 - val_accuracy: 0.9327\n", "Epoch 9/12\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.2556 - accuracy: 0.9155 - val_loss: 0.2480 - val_accuracy: 0.9231 - lr: 0.0100\n", + "171/171 [==============================] - 344s 2s/step - loss: 2.6825 - accuracy: 0.9080 - val_loss: 2.2597 - val_accuracy: 0.9279\n", "Epoch 10/12\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.2164 - accuracy: 0.9302 - val_loss: 0.5680 - val_accuracy: 0.8670 - lr: 0.0100\n", + "171/171 [==============================] - 343s 2s/step - loss: 1.9648 - accuracy: 0.9285 - val_loss: 1.7169 - val_accuracy: 0.9295\n", "Epoch 11/12\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.1879 - accuracy: 0.9441 - val_loss: 0.2536 - val_accuracy: 0.9103 - lr: 0.0100\n", + "171/171 [==============================] - 343s 2s/step - loss: 1.5323 - accuracy: 0.9436 - val_loss: 1.4514 - val_accuracy: 0.9375\n", "Epoch 12/12\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.1795 - accuracy: 0.9432 - val_loss: 0.2268 - val_accuracy: 0.9231 - lr: 0.0100\n", + "171/171 [==============================] - 343s 2s/step - loss: 1.3492 - accuracy: 0.9504 - val_loss: 1.4014 - val_accuracy: 0.9295\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-009-0.9231.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9231\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2480\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.905449 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.923077\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.3892704844 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.2480491996\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-011-0.9375.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9375\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m1.4514\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9407051206. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 4.84167004 to 1.45140171. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m223.93 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m128.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.45GB, used: 23.55GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m2056.09 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1921.82 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m134.26 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [2] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m3\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 12)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 13/18\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.3029 - accuracy: 0.8987 - val_loss: 0.2165 - val_accuracy: 0.9439 - lr: 0.0100\n", + "171/171 [==============================] - 154s 874ms/step - loss: 1.4692 - accuracy: 0.9036 - val_loss: 1.3772 - val_accuracy: 0.8846\n", "Epoch 14/18\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.2615 - accuracy: 0.9138 - val_loss: 0.3931 - val_accuracy: 0.8510 - lr: 0.0100\n", + "171/171 [==============================] - 149s 871ms/step - loss: 1.1797 - accuracy: 0.9119 - val_loss: 1.0027 - val_accuracy: 0.9295\n", "Epoch 15/18\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.2290 - accuracy: 0.9278 - val_loss: 0.2150 - val_accuracy: 0.9311 - lr: 0.0100\n", + "171/171 [==============================] - 195s 1s/step - loss: 0.8707 - accuracy: 0.9243 - val_loss: 0.8689 - val_accuracy: 0.8814\n", "Epoch 16/18\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1862 - accuracy: 0.9420 - val_loss: 0.2514 - val_accuracy: 0.9279 - lr: 0.0100\n", + "171/171 [==============================] - 178s 1s/step - loss: 0.6679 - accuracy: 0.9360 - val_loss: 0.6451 - val_accuracy: 0.9311\n", "Epoch 17/18\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1718 - accuracy: 0.9483 - val_loss: 0.2599 - val_accuracy: 0.9167 - lr: 0.0100\n", + "171/171 [==============================] - 261s 2s/step - loss: 0.5365 - accuracy: 0.9453 - val_loss: 0.5666 - val_accuracy: 0.9247\n", "Epoch 18/18\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1820 - accuracy: 0.9454 - val_loss: 0.2322 - val_accuracy: 0.9375 - lr: 0.0100\n", + "171/171 [==============================] - 236s 1s/step - loss: 0.4630 - accuracy: 0.9592 - val_loss: 0.5333 - val_accuracy: 0.9263\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-013-0.9439.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2165\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.923077 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.943910\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-016-0.9311.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9311\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.6451\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9407051206. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 1.45140171 to 0.64505482. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.2480491996 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.2164981365\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m222.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m125.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m96.39 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1305.41 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1174.41 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m131.01 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [3] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m4\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 18)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 19/24\n", - "366/366 [==============================] - 24s 60ms/step - loss: 0.2989 - accuracy: 0.9040 - val_loss: 0.2227 - val_accuracy: 0.9054 - lr: 0.0100\n", + "171/171 [==============================] - 225s 1s/step - loss: 0.6602 - accuracy: 0.9141 - val_loss: 0.6252 - val_accuracy: 0.8862\n", "Epoch 20/24\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.2515 - accuracy: 0.9157 - val_loss: 0.3875 - val_accuracy: 0.8349 - lr: 0.0100\n", + "171/171 [==============================] - 180s 1s/step - loss: 0.5568 - accuracy: 0.9185 - val_loss: 0.4581 - val_accuracy: 0.9247\n", "Epoch 21/24\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.2067 - accuracy: 0.9333 - val_loss: 0.4290 - val_accuracy: 0.7628 - lr: 0.0100\n", + "171/171 [==============================] - 190s 1s/step - loss: 0.4358 - accuracy: 0.9275 - val_loss: 0.4394 - val_accuracy: 0.8862\n", "Epoch 22/24\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1932 - accuracy: 0.9398 - val_loss: 0.5184 - val_accuracy: 0.7788 - lr: 0.0100\n", + "171/171 [==============================] - 127s 735ms/step - loss: 0.3421 - accuracy: 0.9397 - val_loss: 0.3335 - val_accuracy: 0.9391\n", "Epoch 23/24\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1576 - accuracy: 0.9499 - val_loss: 0.4231 - val_accuracy: 0.9263 - lr: 0.0100\n", + "171/171 [==============================] - 168s 976ms/step - loss: 0.2820 - accuracy: 0.9531 - val_loss: 0.3865 - val_accuracy: 0.9038\n", "Epoch 24/24\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1486 - accuracy: 0.9567 - val_loss: 0.2922 - val_accuracy: 0.9006 - lr: 0.0100\n", + "171/171 [==============================] - 237s 1s/step - loss: 0.2344 - accuracy: 0.9644 - val_loss: 0.3260 - val_accuracy: 0.9391\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-023-0.9263.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9263\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.4231\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9439102411. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.2164981365. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m220.25 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m129.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.18 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-022-0.9391.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9391\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.3335\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9407051206. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.64505482 to 0.33354959. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.45GB, used: 23.55GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1293.77 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1128.60 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m165.17 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [4] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m5\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 24)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 25/30\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.2931 - accuracy: 0.9025 - val_loss: 0.2578 - val_accuracy: 0.9103 - lr: 0.0100\n", + "171/171 [==============================] - 81s 437ms/step - loss: 0.3809 - accuracy: 0.9172 - val_loss: 0.3108 - val_accuracy: 0.9439\n", "Epoch 26/30\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.2268 - accuracy: 0.9304 - val_loss: 0.3001 - val_accuracy: 0.9391 - lr: 0.0100\n", + "171/171 [==============================] - 189s 1s/step - loss: 0.3253 - accuracy: 0.9299 - val_loss: 0.3773 - val_accuracy: 0.8942\n", "Epoch 27/30\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1764 - accuracy: 0.9478 - val_loss: 0.2786 - val_accuracy: 0.9167 - lr: 0.0100\n", + "171/171 [==============================] - 207s 1s/step - loss: 0.2685 - accuracy: 0.9404 - val_loss: 0.2774 - val_accuracy: 0.9247\n", "Epoch 28/30\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1744 - accuracy: 0.9507 - val_loss: 0.2659 - val_accuracy: 0.9151 - lr: 0.0100\n", + "171/171 [==============================] - 132s 770ms/step - loss: 0.2249 - accuracy: 0.9485 - val_loss: 0.2544 - val_accuracy: 0.9263\n", "Epoch 29/30\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1457 - accuracy: 0.9586 - val_loss: 0.3496 - val_accuracy: 0.8798 - lr: 0.0100\n", + "171/171 [==============================] - 173s 990ms/step - loss: 0.1730 - accuracy: 0.9634 - val_loss: 0.2309 - val_accuracy: 0.9391\n", "Epoch 30/30\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1333 - accuracy: 0.9661 - val_loss: 0.7506 - val_accuracy: 0.8045 - lr: 0.0100\n", + "171/171 [==============================] - 258s 1s/step - loss: 0.1516 - accuracy: 0.9668 - val_loss: 0.2352 - val_accuracy: 0.9343\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-026-0.9391.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9391\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.3001\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9439102411. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.2164981365. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m214.74 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.48 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.25 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-025-0.9439.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.3108\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model accuracy from 0.940705 to 0.943910. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.33354959 to 0.31077188. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.39GB, used: 23.61GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1206.48 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1040.50 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m165.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [5] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m6\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 30)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 31/36\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.2807 - accuracy: 0.9119 - val_loss: 0.2550 - val_accuracy: 0.9327 - lr: 0.0100\n", + "171/171 [==============================] - 246s 1s/step - loss: 0.3729 - accuracy: 0.9119 - val_loss: 0.2766 - val_accuracy: 0.9455\n", "Epoch 32/36\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.2180 - accuracy: 0.9321 - val_loss: 0.3120 - val_accuracy: 0.9119 - lr: 0.0100\n", + "171/171 [==============================] - 202s 1s/step - loss: 0.3360 - accuracy: 0.9148 - val_loss: 0.2593 - val_accuracy: 0.9311\n", "Epoch 33/36\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1936 - accuracy: 0.9355 - val_loss: 0.3346 - val_accuracy: 0.9038 - lr: 0.0100\n", + "171/171 [==============================] - 237s 1s/step - loss: 0.2704 - accuracy: 0.9307 - val_loss: 0.2190 - val_accuracy: 0.9567\n", "Epoch 34/36\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1594 - accuracy: 0.9518 - val_loss: 0.1873 - val_accuracy: 0.9471 - lr: 0.0100\n", + "171/171 [==============================] - 245s 1s/step - loss: 0.2144 - accuracy: 0.9456 - val_loss: 0.3174 - val_accuracy: 0.8974\n", "Epoch 35/36\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1325 - accuracy: 0.9639 - val_loss: 0.1918 - val_accuracy: 0.9391 - lr: 0.0100\n", + "171/171 [==============================] - 229s 1s/step - loss: 0.1768 - accuracy: 0.9563 - val_loss: 0.2411 - val_accuracy: 0.9327\n", "Epoch 36/36\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1298 - accuracy: 0.9653 - val_loss: 0.2610 - val_accuracy: 0.9279 - lr: 0.0100\n", + "171/171 [==============================] - 227s 1s/step - loss: 0.1438 - accuracy: 0.9670 - val_loss: 0.2402 - val_accuracy: 0.9343\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-034-0.9471.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9471\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1873\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.943910 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.947115\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-033-0.9567.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2190\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model accuracy from 0.943910 to 0.956731. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.2164981365 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1872564852\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.31077188 to 0.21901828. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m219.85 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m125.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m93.87 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.33GB, used: 23.67GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1560.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1388.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m172.00 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [6] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m7\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 36)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 37/42\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.2874 - accuracy: 0.9121 - val_loss: 0.2147 - val_accuracy: 0.9343 - lr: 0.0100\n", + "171/171 [==============================] - 208s 1s/step - loss: 0.2821 - accuracy: 0.9224 - val_loss: 0.2224 - val_accuracy: 0.9407\n", "Epoch 38/42\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.2231 - accuracy: 0.9352 - val_loss: 0.2508 - val_accuracy: 0.9295 - lr: 0.0100\n", + "171/171 [==============================] - 238s 1s/step - loss: 0.2562 - accuracy: 0.9280 - val_loss: 0.4158 - val_accuracy: 0.8558\n", "Epoch 39/42\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.1792 - accuracy: 0.9516 - val_loss: 0.2214 - val_accuracy: 0.9263 - lr: 0.0100\n", + "171/171 [==============================] - 161s 944ms/step - loss: 0.2179 - accuracy: 0.9373 - val_loss: 0.3369 - val_accuracy: 0.8894\n", "Epoch 40/42\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1501 - accuracy: 0.9595 - val_loss: 0.4272 - val_accuracy: 0.8429 - lr: 0.0100\n", + "171/171 [==============================] - 208s 1s/step - loss: 0.1971 - accuracy: 0.9470 - val_loss: 0.2427 - val_accuracy: 0.9151\n", "Epoch 41/42\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1190 - accuracy: 0.9677 - val_loss: 0.2084 - val_accuracy: 0.9295 - lr: 0.0100\n", + "171/171 [==============================] - 243s 1s/step - loss: 0.1559 - accuracy: 0.9546 - val_loss: 0.2347 - val_accuracy: 0.9279\n", "Epoch 42/42\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.1279 - accuracy: 0.9684 - val_loss: 0.2463 - val_accuracy: 0.9167 - lr: 0.0100\n", + "171/171 [==============================] - 213s 1s/step - loss: 0.1308 - accuracy: 0.9651 - val_loss: 0.2588 - val_accuracy: 0.9183\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-037-0.9343.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9343\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2147\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m219.17 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m127.38 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.79 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-037-0.9407.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2224\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.2190182805. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.33GB, used: 23.67GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1446.31 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1272.12 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m174.18 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [7] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m8\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 42)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 43/48\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.2473 - accuracy: 0.9256 - val_loss: 0.2310 - val_accuracy: 0.8974 - lr: 0.0100\n", + "171/171 [==============================] - 175s 986ms/step - loss: 0.2799 - accuracy: 0.9192 - val_loss: 0.2421 - val_accuracy: 0.9087\n", "Epoch 44/48\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1858 - accuracy: 0.9458 - val_loss: 0.2239 - val_accuracy: 0.9343 - lr: 0.0100\n", + "171/171 [==============================] - 197s 1s/step - loss: 0.2564 - accuracy: 0.9292 - val_loss: 0.2883 - val_accuracy: 0.9519\n", "Epoch 45/48\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1682 - accuracy: 0.9545 - val_loss: 0.2679 - val_accuracy: 0.8798 - lr: 0.0100\n", + "171/171 [==============================] - 166s 969ms/step - loss: 0.2314 - accuracy: 0.9341 - val_loss: 0.2330 - val_accuracy: 0.9167\n", "Epoch 46/48\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1491 - accuracy: 0.9579 - val_loss: 0.2604 - val_accuracy: 0.8926 - lr: 0.0100\n", + "171/171 [==============================] - 209s 1s/step - loss: 0.1864 - accuracy: 0.9438 - val_loss: 0.2060 - val_accuracy: 0.9327\n", "Epoch 47/48\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1252 - accuracy: 0.9639 - val_loss: 0.2447 - val_accuracy: 0.9359 - lr: 0.0100\n", + "171/171 [==============================] - 222s 1s/step - loss: 0.1500 - accuracy: 0.9585 - val_loss: 0.2068 - val_accuracy: 0.9295\n", "Epoch 48/48\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0998 - accuracy: 0.9755 - val_loss: 0.2264 - val_accuracy: 0.9407 - lr: 0.0100\n", + "171/171 [==============================] - 219s 1s/step - loss: 0.1185 - accuracy: 0.9692 - val_loss: 0.2050 - val_accuracy: 0.9423\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-048-0.9407.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2264\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m216.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m126.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m89.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-044-0.9519.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2883\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.2190182805. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.29GB, used: 23.71GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1380.73 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1189.82 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m190.92 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [8] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m9\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 48)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 49/54\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.2560 - accuracy: 0.9235 - val_loss: 0.2655 - val_accuracy: 0.9247 - lr: 0.0100\n", + "171/171 [==============================] - 206s 1s/step - loss: 0.2468 - accuracy: 0.9258 - val_loss: 0.2026 - val_accuracy: 0.9455\n", "Epoch 50/54\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1899 - accuracy: 0.9442 - val_loss: 0.3228 - val_accuracy: 0.8510 - lr: 0.0100\n", + "171/171 [==============================] - 194s 1s/step - loss: 0.2353 - accuracy: 0.9292 - val_loss: 0.2040 - val_accuracy: 0.9439\n", "Epoch 51/54\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1637 - accuracy: 0.9490 - val_loss: 0.2941 - val_accuracy: 0.8894 - lr: 0.0100\n", + "171/171 [==============================] - 263s 2s/step - loss: 0.1927 - accuracy: 0.9417 - val_loss: 0.2421 - val_accuracy: 0.9279\n", "Epoch 52/54\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1359 - accuracy: 0.9673 - val_loss: 0.4025 - val_accuracy: 0.8862 - lr: 0.0100\n", + "171/171 [==============================] - 195s 1s/step - loss: 0.1569 - accuracy: 0.9558 - val_loss: 0.1720 - val_accuracy: 0.9503\n", "Epoch 53/54\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1436 - accuracy: 0.9637 - val_loss: 0.2121 - val_accuracy: 0.9471 - lr: 0.0100\n", + "171/171 [==============================] - 239s 1s/step - loss: 0.1263 - accuracy: 0.9622 - val_loss: 0.1902 - val_accuracy: 0.9295\n", "Epoch 54/54\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1053 - accuracy: 0.9788 - val_loss: 0.3626 - val_accuracy: 0.9183 - lr: 0.0100\n", + "171/171 [==============================] - 222s 1s/step - loss: 0.1141 - accuracy: 0.9661 - val_loss: 0.2256 - val_accuracy: 0.9135\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-053-0.9471.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2122\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m216.64 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m124.93 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.70 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-052-0.9503.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1720\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.21901828 to 0.17200762. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.36GB, used: 23.64GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1498.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1318.48 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m180.36 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [9] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m10\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 54)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 55/60\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.2594 - accuracy: 0.9227 - val_loss: 0.2336 - val_accuracy: 0.9327 - lr: 0.0100\n", + "171/171 [==============================] - 83s 443ms/step - loss: 0.2303 - accuracy: 0.9275 - val_loss: 0.1819 - val_accuracy: 0.9295\n", "Epoch 56/60\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1871 - accuracy: 0.9501 - val_loss: 0.2288 - val_accuracy: 0.9407 - lr: 0.0100\n", + "171/171 [==============================] - 164s 961ms/step - loss: 0.2013 - accuracy: 0.9355 - val_loss: 0.1877 - val_accuracy: 0.9343\n", "Epoch 57/60\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1473 - accuracy: 0.9617 - val_loss: 0.2232 - val_accuracy: 0.9359 - lr: 0.0100\n", + "171/171 [==============================] - 202s 1s/step - loss: 0.1828 - accuracy: 0.9426 - val_loss: 0.2195 - val_accuracy: 0.9551\n", "Epoch 58/60\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1251 - accuracy: 0.9689 - val_loss: 0.2326 - val_accuracy: 0.9279 - lr: 0.0100\n", + "171/171 [==============================] - 221s 1s/step - loss: 0.1503 - accuracy: 0.9556 - val_loss: 0.2125 - val_accuracy: 0.9119\n", "Epoch 59/60\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0839 - accuracy: 0.9798 - val_loss: 0.2549 - val_accuracy: 0.9391 - lr: 0.0100\n", + "171/171 [==============================] - 199s 1s/step - loss: 0.1267 - accuracy: 0.9617 - val_loss: 0.1786 - val_accuracy: 0.9503\n", "Epoch 60/60\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.0965 - accuracy: 0.9793 - val_loss: 0.2463 - val_accuracy: 0.9423 - lr: 0.0100\n", + "171/171 [==============================] - 204s 1s/step - loss: 0.1012 - accuracy: 0.9688 - val_loss: 0.1689 - val_accuracy: 0.9439\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-060-0.9423.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9423\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2463\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m214.95 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m124.44 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m90.51 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-057-0.9551.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2195\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1720076203. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1251.73 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1072.70 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m179.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [10] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m11\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 60)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 61/66\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.2587 - accuracy: 0.9201 - val_loss: 0.1990 - val_accuracy: 0.9311 - lr: 0.0100\n", + "171/171 [==============================] - 198s 1s/step - loss: 0.2086 - accuracy: 0.9341 - val_loss: 0.1839 - val_accuracy: 0.9199\n", "Epoch 62/66\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1849 - accuracy: 0.9425 - val_loss: 0.3178 - val_accuracy: 0.8638 - lr: 0.0100\n", + "171/171 [==============================] - 162s 946ms/step - loss: 0.2079 - accuracy: 0.9348 - val_loss: 0.1997 - val_accuracy: 0.9455\n", "Epoch 63/66\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1610 - accuracy: 0.9581 - val_loss: 0.5144 - val_accuracy: 0.7740 - lr: 0.0100\n", + "171/171 [==============================] - 183s 1s/step - loss: 0.1745 - accuracy: 0.9500 - val_loss: 0.2310 - val_accuracy: 0.9359\n", "Epoch 64/66\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1342 - accuracy: 0.9692 - val_loss: 0.3000 - val_accuracy: 0.9231 - lr: 0.0100\n", + "171/171 [==============================] - 231s 1s/step - loss: 0.1437 - accuracy: 0.9541 - val_loss: 0.1726 - val_accuracy: 0.9295\n", "Epoch 65/66\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1083 - accuracy: 0.9737 - val_loss: 0.2032 - val_accuracy: 0.9423 - lr: 0.0100\n", + "171/171 [==============================] - 223s 1s/step - loss: 0.1170 - accuracy: 0.9646 - val_loss: 0.1483 - val_accuracy: 0.9535\n", "Epoch 66/66\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0852 - accuracy: 0.9810 - val_loss: 0.2182 - val_accuracy: 0.9263 - lr: 0.0100\n", + "171/171 [==============================] - 224s 1s/step - loss: 0.1027 - accuracy: 0.9709 - val_loss: 0.1629 - val_accuracy: 0.9487\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-065-0.9423.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9423\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2032\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m220.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m126.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.52 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-065-0.9535.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1483\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.17200762 to 0.14832748. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1383.15 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1222.12 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m161.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [11] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m12\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 66)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 67/72\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2604 - accuracy: 0.9268 - val_loss: 0.1935 - val_accuracy: 0.9583 - lr: 0.0100\n", + "171/171 [==============================] - 81s 437ms/step - loss: 0.2008 - accuracy: 0.9355 - val_loss: 0.1532 - val_accuracy: 0.9455\n", "Epoch 68/72\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1651 - accuracy: 0.9569 - val_loss: 0.3852 - val_accuracy: 0.8926 - lr: 0.0100\n", + "171/171 [==============================] - 197s 1s/step - loss: 0.1953 - accuracy: 0.9338 - val_loss: 0.1590 - val_accuracy: 0.9503\n", "Epoch 69/72\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1295 - accuracy: 0.9641 - val_loss: 0.1867 - val_accuracy: 0.9439 - lr: 0.0100\n", + "171/171 [==============================] - 197s 1s/step - loss: 0.1603 - accuracy: 0.9495 - val_loss: 0.2574 - val_accuracy: 0.8990\n", "Epoch 70/72\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1180 - accuracy: 0.9677 - val_loss: 0.2156 - val_accuracy: 0.9455 - lr: 0.0100\n", + "171/171 [==============================] - 174s 1s/step - loss: 0.1356 - accuracy: 0.9583 - val_loss: 0.2159 - val_accuracy: 0.9151\n", "Epoch 71/72\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0965 - accuracy: 0.9764 - val_loss: 0.2010 - val_accuracy: 0.9439 - lr: 0.0100\n", + "171/171 [==============================] - 185s 1s/step - loss: 0.0994 - accuracy: 0.9736 - val_loss: 0.2736 - val_accuracy: 0.9103\n", "Epoch 72/72\n", - "366/366 [==============================] - 19s 51ms/step - loss: 0.1046 - accuracy: 0.9761 - val_loss: 0.2792 - val_accuracy: 0.9231 - lr: 0.0100\n", + "171/171 [==============================] - 172s 1s/step - loss: 0.0892 - accuracy: 0.9734 - val_loss: 0.2454 - val_accuracy: 0.9183\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-067-0.9583.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1935\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.947115 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.958333\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m207.73 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.43 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m90.30 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-068-0.9503.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1590\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1483274847. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.40GB, used: 23.60GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1168.76 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1006.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m162.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [12] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m13\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 72)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 73/78\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2033 - accuracy: 0.9369 - val_loss: 0.1724 - val_accuracy: 0.9535 - lr: 0.0100\n", + "171/171 [==============================] - 112s 624ms/step - loss: 0.2183 - accuracy: 0.9329 - val_loss: 0.1450 - val_accuracy: 0.9487\n", "Epoch 74/78\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1620 - accuracy: 0.9524 - val_loss: 0.2472 - val_accuracy: 0.9215 - lr: 0.0100\n", + "171/171 [==============================] - 210s 1s/step - loss: 0.2062 - accuracy: 0.9294 - val_loss: 0.1630 - val_accuracy: 0.9423\n", "Epoch 75/78\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1257 - accuracy: 0.9660 - val_loss: 0.2054 - val_accuracy: 0.9279 - lr: 0.0100\n", + "171/171 [==============================] - 203s 1s/step - loss: 0.1772 - accuracy: 0.9438 - val_loss: 0.1947 - val_accuracy: 0.9279\n", "Epoch 76/78\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1057 - accuracy: 0.9749 - val_loss: 0.1894 - val_accuracy: 0.9503 - lr: 0.0100\n", + "171/171 [==============================] - 231s 1s/step - loss: 0.1337 - accuracy: 0.9609 - val_loss: 0.1962 - val_accuracy: 0.9343\n", "Epoch 77/78\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0809 - accuracy: 0.9800 - val_loss: 0.2397 - val_accuracy: 0.9423 - lr: 0.0100\n", + "171/171 [==============================] - 210s 1s/step - loss: 0.1128 - accuracy: 0.9656 - val_loss: 0.1964 - val_accuracy: 0.9295\n", "Epoch 78/78\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1003 - accuracy: 0.9761 - val_loss: 0.2016 - val_accuracy: 0.9359 - lr: 0.0100\n", + "171/171 [==============================] - 185s 1s/step - loss: 0.0938 - accuracy: 0.9746 - val_loss: 0.1771 - val_accuracy: 0.9375\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-073-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1724\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1872564852 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1723635942\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-073-0.9487.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1450\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.14832748 to 0.14496151. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.92 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.67 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.39GB, used: 23.61GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1317.78 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1152.61 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m165.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [13] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m14\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 78)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 79/84\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2118 - accuracy: 0.9343 - val_loss: 0.2300 - val_accuracy: 0.9119 - lr: 0.0100\n", + "171/171 [==============================] - 196s 1s/step - loss: 0.2047 - accuracy: 0.9321 - val_loss: 0.1853 - val_accuracy: 0.9375\n", "Epoch 80/84\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1633 - accuracy: 0.9483 - val_loss: 0.2020 - val_accuracy: 0.9407 - lr: 0.0100\n", + "171/171 [==============================] - 208s 1s/step - loss: 0.1984 - accuracy: 0.9353 - val_loss: 0.1861 - val_accuracy: 0.9391\n", "Epoch 81/84\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1364 - accuracy: 0.9600 - val_loss: 0.2054 - val_accuracy: 0.9359 - lr: 0.0100\n", + "171/171 [==============================] - 191s 1s/step - loss: 0.1587 - accuracy: 0.9504 - val_loss: 0.1720 - val_accuracy: 0.9343\n", "Epoch 82/84\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1083 - accuracy: 0.9733 - val_loss: 0.2520 - val_accuracy: 0.9119 - lr: 0.0100\n", + "171/171 [==============================] - 155s 887ms/step - loss: 0.1346 - accuracy: 0.9561 - val_loss: 0.1589 - val_accuracy: 0.9519\n", "Epoch 83/84\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0983 - accuracy: 0.9762 - val_loss: 0.2651 - val_accuracy: 0.9199 - lr: 0.0100\n", + "171/171 [==============================] - 158s 926ms/step - loss: 0.1031 - accuracy: 0.9702 - val_loss: 0.1940 - val_accuracy: 0.9343\n", "Epoch 84/84\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0699 - accuracy: 0.9848 - val_loss: 0.3111 - val_accuracy: 0.9151 - lr: 0.0100\n", + "171/171 [==============================] - 200s 1s/step - loss: 0.0774 - accuracy: 0.9775 - val_loss: 0.1893 - val_accuracy: 0.9375\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-080-0.9407.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2020\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1723635942. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.34 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-082-0.9519.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1589\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1449615061. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.45GB, used: 23.55GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1288.60 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1108.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m179.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [14] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m15\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 84)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 85/90\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2199 - accuracy: 0.9294 - val_loss: 0.1876 - val_accuracy: 0.9551 - lr: 0.0100\n", + "171/171 [==============================] - 82s 440ms/step - loss: 0.1858 - accuracy: 0.9363 - val_loss: 0.1640 - val_accuracy: 0.9295\n", "Epoch 86/90\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1783 - accuracy: 0.9490 - val_loss: 0.4330 - val_accuracy: 0.8494 - lr: 0.0100\n", + "171/171 [==============================] - 179s 1s/step - loss: 0.1701 - accuracy: 0.9421 - val_loss: 0.1998 - val_accuracy: 0.9215\n", "Epoch 87/90\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1196 - accuracy: 0.9678 - val_loss: 0.3361 - val_accuracy: 0.9263 - lr: 0.0100\n", + "171/171 [==============================] - 218s 1s/step - loss: 0.1533 - accuracy: 0.9487 - val_loss: 0.2891 - val_accuracy: 0.9087\n", "Epoch 88/90\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0988 - accuracy: 0.9745 - val_loss: 0.3732 - val_accuracy: 0.9135 - lr: 0.0100\n", + "171/171 [==============================] - 212s 1s/step - loss: 0.1336 - accuracy: 0.9575 - val_loss: 0.1509 - val_accuracy: 0.9455\n", "Epoch 89/90\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0963 - accuracy: 0.9766 - val_loss: 0.2456 - val_accuracy: 0.9455 - lr: 0.0100\n", + "171/171 [==============================] - 217s 1s/step - loss: 0.0953 - accuracy: 0.9692 - val_loss: 0.1656 - val_accuracy: 0.9455\n", "Epoch 90/90\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0969 - accuracy: 0.9776 - val_loss: 0.4148 - val_accuracy: 0.9071 - lr: 0.0100\n", + "171/171 [==============================] - 219s 1s/step - loss: 0.0704 - accuracy: 0.9792 - val_loss: 0.1849 - val_accuracy: 0.9359\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-085-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1876\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1723635942. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.78 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.75 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-088-0.9455.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1509\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1449615061. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1316.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1127.47 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m189.50 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [15] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m16\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 90)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 91/96\n", - "366/366 [==============================] - 21s 53ms/step - loss: 0.2133 - accuracy: 0.9379 - val_loss: 0.1913 - val_accuracy: 0.9455 - lr: 0.0100\n", + "171/171 [==============================] - 207s 1s/step - loss: 0.1684 - accuracy: 0.9446 - val_loss: 0.1568 - val_accuracy: 0.9519\n", "Epoch 92/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1541 - accuracy: 0.9535 - val_loss: 0.2024 - val_accuracy: 0.9263 - lr: 0.0100\n", + "171/171 [==============================] - 200s 1s/step - loss: 0.1713 - accuracy: 0.9390 - val_loss: 0.1756 - val_accuracy: 0.9343\n", "Epoch 93/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1314 - accuracy: 0.9619 - val_loss: 0.1984 - val_accuracy: 0.9407 - lr: 0.0100\n", + "171/171 [==============================] - 186s 1s/step - loss: 0.1435 - accuracy: 0.9548 - val_loss: 0.1548 - val_accuracy: 0.9487\n", "Epoch 94/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1063 - accuracy: 0.9754 - val_loss: 0.1840 - val_accuracy: 0.9503 - lr: 0.0100\n", + "171/171 [==============================] - 195s 1s/step - loss: 0.1179 - accuracy: 0.9634 - val_loss: 0.1537 - val_accuracy: 0.9487\n", "Epoch 95/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0889 - accuracy: 0.9802 - val_loss: 0.1975 - val_accuracy: 0.9455 - lr: 0.0100\n", + "171/171 [==============================] - 184s 1s/step - loss: 0.0968 - accuracy: 0.9731 - val_loss: 0.1986 - val_accuracy: 0.9519\n", "Epoch 96/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0729 - accuracy: 0.9829 - val_loss: 0.2412 - val_accuracy: 0.9231 - lr: 0.0100\n", + "171/171 [==============================] - 192s 1s/step - loss: 0.0730 - accuracy: 0.9795 - val_loss: 0.1740 - val_accuracy: 0.9519\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-094-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1840\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1723635942. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.52 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-091-0.9519.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1568\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1449615061. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.44GB, used: 23.56GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1331.60 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1164.76 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m166.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [16] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m17\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 96)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 97/102\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2148 - accuracy: 0.9343 - val_loss: 0.1640 - val_accuracy: 0.9519 - lr: 0.0100\n", + "171/171 [==============================] - 227s 1s/step - loss: 0.2008 - accuracy: 0.9336 - val_loss: 0.1460 - val_accuracy: 0.9551\n", "Epoch 98/102\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1570 - accuracy: 0.9538 - val_loss: 0.2423 - val_accuracy: 0.9071 - lr: 0.0100\n", + "171/171 [==============================] - 236s 1s/step - loss: 0.1776 - accuracy: 0.9431 - val_loss: 0.3225 - val_accuracy: 0.8269\n", "Epoch 99/102\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1092 - accuracy: 0.9731 - val_loss: 0.2588 - val_accuracy: 0.9183 - lr: 0.0100\n", + "171/171 [==============================] - 259s 2s/step - loss: 0.1520 - accuracy: 0.9519 - val_loss: 0.1503 - val_accuracy: 0.9535\n", "Epoch 100/102\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0907 - accuracy: 0.9774 - val_loss: 0.1908 - val_accuracy: 0.9375 - lr: 0.0100\n", + "171/171 [==============================] - 193s 1s/step - loss: 0.1241 - accuracy: 0.9656 - val_loss: 0.3912 - val_accuracy: 0.8349\n", "Epoch 101/102\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0763 - accuracy: 0.9824 - val_loss: 0.3325 - val_accuracy: 0.9151 - lr: 0.0100\n", + "171/171 [==============================] - 216s 1s/step - loss: 0.1014 - accuracy: 0.9678 - val_loss: 0.1842 - val_accuracy: 0.9359\n", "Epoch 102/102\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0865 - accuracy: 0.9803 - val_loss: 0.1915 - val_accuracy: 0.9439 - lr: 0.0100\n", + "171/171 [==============================] - 235s 1s/step - loss: 0.0826 - accuracy: 0.9744 - val_loss: 0.1617 - val_accuracy: 0.9487\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-097-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1640\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1723635942 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1640251279\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.29 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m83.13 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-097-0.9551.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1460\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1449615061. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.56GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1534.08 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1366.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m168.06 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [17] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m18\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 102)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 103/108\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2147 - accuracy: 0.9365 - val_loss: 0.1958 - val_accuracy: 0.9439 - lr: 0.0100\n", + "171/171 [==============================] - 231s 1s/step - loss: 0.1754 - accuracy: 0.9385 - val_loss: 0.1520 - val_accuracy: 0.9439\n", "Epoch 104/108\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1566 - accuracy: 0.9569 - val_loss: 0.1760 - val_accuracy: 0.9455 - lr: 0.0100\n", + "171/171 [==============================] - 194s 1s/step - loss: 0.1771 - accuracy: 0.9395 - val_loss: 0.1407 - val_accuracy: 0.9535\n", "Epoch 105/108\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1117 - accuracy: 0.9684 - val_loss: 0.2404 - val_accuracy: 0.9359 - lr: 0.0100\n", + "171/171 [==============================] - 184s 1s/step - loss: 0.1597 - accuracy: 0.9465 - val_loss: 0.1654 - val_accuracy: 0.9487\n", "Epoch 106/108\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0882 - accuracy: 0.9786 - val_loss: 0.2202 - val_accuracy: 0.9391 - lr: 0.0100\n", + "171/171 [==============================] - 180s 1s/step - loss: 0.1203 - accuracy: 0.9619 - val_loss: 0.2260 - val_accuracy: 0.9455\n", "Epoch 107/108\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1349 - accuracy: 0.9625 - val_loss: 0.2006 - val_accuracy: 0.9519 - lr: 0.0100\n", + "171/171 [==============================] - 202s 1s/step - loss: 0.1035 - accuracy: 0.9714 - val_loss: 0.1613 - val_accuracy: 0.9423\n", "Epoch 108/108\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0739 - accuracy: 0.9829 - val_loss: 0.3931 - val_accuracy: 0.9038 - lr: 0.0100\n", + "171/171 [==============================] - 202s 1s/step - loss: 0.0737 - accuracy: 0.9790 - val_loss: 0.3055 - val_accuracy: 0.9359\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-107-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2006\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.82 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.38 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.45 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-104-0.9535.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1407\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.14496151 to 0.14072238. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.46GB, used: 23.54GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1360.79 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1193.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m167.10 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [18] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m19\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 108)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 109/114\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2193 - accuracy: 0.9341 - val_loss: 0.1944 - val_accuracy: 0.9375 - lr: 0.0100\n", + "171/171 [==============================] - 336s 2s/step - loss: 0.1826 - accuracy: 0.9358 - val_loss: 0.1444 - val_accuracy: 0.9519\n", "Epoch 110/114\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1531 - accuracy: 0.9567 - val_loss: 0.4085 - val_accuracy: 0.8750 - lr: 0.0100\n", + "171/171 [==============================] - 281s 2s/step - loss: 0.1804 - accuracy: 0.9419 - val_loss: 0.2735 - val_accuracy: 0.9375\n", "Epoch 111/114\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1208 - accuracy: 0.9696 - val_loss: 0.3156 - val_accuracy: 0.9167 - lr: 0.0100\n", + "171/171 [==============================] - 174s 1s/step - loss: 0.1545 - accuracy: 0.9509 - val_loss: 0.1871 - val_accuracy: 0.9519\n", "Epoch 112/114\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0959 - accuracy: 0.9764 - val_loss: 0.2254 - val_accuracy: 0.9327 - lr: 0.0100\n", + "171/171 [==============================] - 258s 2s/step - loss: 0.1127 - accuracy: 0.9651 - val_loss: 0.1702 - val_accuracy: 0.9567\n", "Epoch 113/114\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0815 - accuracy: 0.9812 - val_loss: 0.3595 - val_accuracy: 0.8942 - lr: 0.0100\n", + "171/171 [==============================] - 277s 2s/step - loss: 0.0938 - accuracy: 0.9727 - val_loss: 0.1629 - val_accuracy: 0.9567\n", "Epoch 114/114\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0688 - accuracy: 0.9867 - val_loss: 0.2561 - val_accuracy: 0.9295 - lr: 0.0100\n", + "171/171 [==============================] - 256s 2s/step - loss: 0.0705 - accuracy: 0.9829 - val_loss: 0.1669 - val_accuracy: 0.9551\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-109-0.9375.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9375\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1944\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.34 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.19 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-112-0.9567.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1702\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1407223791. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.45GB, used: 23.55GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1753.23 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1582.11 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m171.12 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [19] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m20\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 114)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 115/120\n", - "365/366 [============================>.] - ETA: 0s - loss: 0.2032 - accuracy: 0.9361\n", - "Epoch 115: ReduceLROnPlateau reducing learning rate to 0.009499999787658453.\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2031 - accuracy: 0.9362 - val_loss: 0.1928 - val_accuracy: 0.9423 - lr: 0.0100\n", + "171/171 [==============================] - 193s 1s/step - loss: 0.1831 - accuracy: 0.9417 - val_loss: 0.1521 - val_accuracy: 0.9519\n", "Epoch 116/120\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1653 - accuracy: 0.9516 - val_loss: 0.1700 - val_accuracy: 0.9487 - lr: 0.0095\n", + "171/171 [==============================] - 146s 851ms/step - loss: 0.1727 - accuracy: 0.9407 - val_loss: 0.1602 - val_accuracy: 0.9487\n", "Epoch 117/120\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1192 - accuracy: 0.9680 - val_loss: 0.3368 - val_accuracy: 0.9087 - lr: 0.0095\n", + "171/171 [==============================] - 155s 890ms/step - loss: 0.1309 - accuracy: 0.9617 - val_loss: 0.1603 - val_accuracy: 0.9375\n", "Epoch 118/120\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1055 - accuracy: 0.9735 - val_loss: 0.2844 - val_accuracy: 0.9327 - lr: 0.0095\n", + "171/171 [==============================] - 167s 978ms/step - loss: 0.1079 - accuracy: 0.9666 - val_loss: 0.1609 - val_accuracy: 0.9327\n", "Epoch 119/120\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0870 - accuracy: 0.9771 - val_loss: 0.4639 - val_accuracy: 0.8782 - lr: 0.0095\n", + "171/171 [==============================] - 133s 782ms/step - loss: 0.0846 - accuracy: 0.9753 - val_loss: 0.1634 - val_accuracy: 0.9471\n", "Epoch 120/120\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0740 - accuracy: 0.9827 - val_loss: 0.4725 - val_accuracy: 0.9087 - lr: 0.0095\n", + "171/171 [==============================] - 180s 1s/step - loss: 0.0755 - accuracy: 0.9792 - val_loss: 0.1746 - val_accuracy: 0.9519\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-116-0.9487.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1700\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.47 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.45 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-115-0.9519.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1521\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1407223791. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.47GB, used: 23.53GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1172.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m976.01 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m196.01 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [20] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m21\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 120)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 121/126\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1918 - accuracy: 0.9394 - val_loss: 0.2095 - val_accuracy: 0.9359 - lr: 0.0095\n", + "171/171 [==============================] - 197s 1s/step - loss: 0.1581 - accuracy: 0.9485 - val_loss: 0.1650 - val_accuracy: 0.9551\n", "Epoch 122/126\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1408 - accuracy: 0.9593 - val_loss: 0.2417 - val_accuracy: 0.9327 - lr: 0.0095\n", + "171/171 [==============================] - 153s 893ms/step - loss: 0.1581 - accuracy: 0.9514 - val_loss: 0.1686 - val_accuracy: 0.9535\n", "Epoch 123/126\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1132 - accuracy: 0.9678 - val_loss: 0.2165 - val_accuracy: 0.9455 - lr: 0.0095\n", + "171/171 [==============================] - 154s 901ms/step - loss: 0.1171 - accuracy: 0.9646 - val_loss: 0.2725 - val_accuracy: 0.9551\n", "Epoch 124/126\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0866 - accuracy: 0.9786 - val_loss: 0.2033 - val_accuracy: 0.9343 - lr: 0.0095\n", + "171/171 [==============================] - 157s 919ms/step - loss: 0.1103 - accuracy: 0.9663 - val_loss: 0.1721 - val_accuracy: 0.9567\n", "Epoch 125/126\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0751 - accuracy: 0.9839 - val_loss: 0.2164 - val_accuracy: 0.9407 - lr: 0.0095\n", + "171/171 [==============================] - 150s 873ms/step - loss: 0.0813 - accuracy: 0.9771 - val_loss: 0.1517 - val_accuracy: 0.9551\n", "Epoch 126/126\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0701 - accuracy: 0.9867 - val_loss: 0.2657 - val_accuracy: 0.9375 - lr: 0.0095\n", + "171/171 [==============================] - 148s 863ms/step - loss: 0.0612 - accuracy: 0.9834 - val_loss: 0.1826 - val_accuracy: 0.9567\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-123-0.9455.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2165\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.35 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.63 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.72 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-124-0.9567.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1722\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1407223791. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.37GB, used: 23.63GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1136.14 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m959.74 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m176.41 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [21] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m22\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 126)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 127/132\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1954 - accuracy: 0.9418 - val_loss: 0.1628 - val_accuracy: 0.9487 - lr: 0.0095\n", + "171/171 [==============================] - 182s 1s/step - loss: 0.1752 - accuracy: 0.9441 - val_loss: 0.1661 - val_accuracy: 0.9551\n", "Epoch 128/132\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1427 - accuracy: 0.9566 - val_loss: 0.4082 - val_accuracy: 0.8894 - lr: 0.0095\n", + "171/171 [==============================] - 190s 1s/step - loss: 0.1736 - accuracy: 0.9482 - val_loss: 0.1366 - val_accuracy: 0.9567\n", "Epoch 129/132\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1116 - accuracy: 0.9696 - val_loss: 0.2475 - val_accuracy: 0.9423 - lr: 0.0095\n", + "171/171 [==============================] - 227s 1s/step - loss: 0.1412 - accuracy: 0.9551 - val_loss: 0.1935 - val_accuracy: 0.9343\n", "Epoch 130/132\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0829 - accuracy: 0.9817 - val_loss: 0.1677 - val_accuracy: 0.9519 - lr: 0.0095\n", + "171/171 [==============================] - 246s 1s/step - loss: 0.1102 - accuracy: 0.9697 - val_loss: 0.1653 - val_accuracy: 0.9359\n", "Epoch 131/132\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0803 - accuracy: 0.9819 - val_loss: 0.2718 - val_accuracy: 0.9455 - lr: 0.0095\n", + "171/171 [==============================] - 252s 1s/step - loss: 0.0846 - accuracy: 0.9768 - val_loss: 0.1704 - val_accuracy: 0.9311\n", "Epoch 132/132\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0771 - accuracy: 0.9832 - val_loss: 0.1848 - val_accuracy: 0.9551 - lr: 0.0095\n", + "171/171 [==============================] - 199s 1s/step - loss: 0.0707 - accuracy: 0.9805 - val_loss: 0.1628 - val_accuracy: 0.9471\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-132-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1848\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.88 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.72 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-128-0.9567.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1366\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.14072238 to 0.13655412. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.41GB, used: 23.59GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1491.13 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1296.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m195.11 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [22] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m23\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 132)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 133/138\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2137 - accuracy: 0.9372 - val_loss: 0.1736 - val_accuracy: 0.9535 - lr: 0.0095\n", + "171/171 [==============================] - 80s 430ms/step - loss: 0.1819 - accuracy: 0.9370 - val_loss: 0.1395 - val_accuracy: 0.9535\n", "Epoch 134/138\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1563 - accuracy: 0.9562 - val_loss: 0.2229 - val_accuracy: 0.9183 - lr: 0.0095\n", + "171/171 [==============================] - 232s 1s/step - loss: 0.1705 - accuracy: 0.9412 - val_loss: 0.1520 - val_accuracy: 0.9423\n", "Epoch 135/138\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1127 - accuracy: 0.9711 - val_loss: 0.1956 - val_accuracy: 0.9471 - lr: 0.0095\n", + "171/171 [==============================] - 226s 1s/step - loss: 0.1400 - accuracy: 0.9526 - val_loss: 0.1807 - val_accuracy: 0.9343\n", "Epoch 136/138\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0889 - accuracy: 0.9802 - val_loss: 0.3771 - val_accuracy: 0.8878 - lr: 0.0095\n", + "171/171 [==============================] - 279s 2s/step - loss: 0.1076 - accuracy: 0.9658 - val_loss: 0.1422 - val_accuracy: 0.9551\n", "Epoch 137/138\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0706 - accuracy: 0.9824 - val_loss: 0.2678 - val_accuracy: 0.9375 - lr: 0.0095\n", + "171/171 [==============================] - 230s 1s/step - loss: 0.0821 - accuracy: 0.9741 - val_loss: 0.1580 - val_accuracy: 0.9551\n", "Epoch 138/138\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0706 - accuracy: 0.9846 - val_loss: 0.3875 - val_accuracy: 0.9503 - lr: 0.0095\n", + "171/171 [==============================] - 265s 2s/step - loss: 0.0606 - accuracy: 0.9856 - val_loss: 0.1659 - val_accuracy: 0.9519\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-133-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1736\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.20 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.78 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.42 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-136-0.9551.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1423\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1506.15 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1311.71 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m194.44 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [23] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m24\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 138)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 139/144\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1893 - accuracy: 0.9432 - val_loss: 0.2358 - val_accuracy: 0.9151 - lr: 0.0095\n", + "171/171 [==============================] - 272s 2s/step - loss: 0.1839 - accuracy: 0.9390 - val_loss: 0.1512 - val_accuracy: 0.9439\n", "Epoch 140/144\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1412 - accuracy: 0.9608 - val_loss: 0.2494 - val_accuracy: 0.9199 - lr: 0.0095\n", + "171/171 [==============================] - 218s 1s/step - loss: 0.1672 - accuracy: 0.9519 - val_loss: 0.1506 - val_accuracy: 0.9487\n", "Epoch 141/144\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0999 - accuracy: 0.9731 - val_loss: 0.2231 - val_accuracy: 0.9391 - lr: 0.0095\n", + "171/171 [==============================] - 217s 1s/step - loss: 0.1318 - accuracy: 0.9575 - val_loss: 0.1846 - val_accuracy: 0.9167\n", "Epoch 142/144\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0801 - accuracy: 0.9800 - val_loss: 0.1718 - val_accuracy: 0.9631 - lr: 0.0095\n", + "171/171 [==============================] - 235s 1s/step - loss: 0.1070 - accuracy: 0.9673 - val_loss: 0.2014 - val_accuracy: 0.9455\n", "Epoch 143/144\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0753 - accuracy: 0.9851 - val_loss: 0.1816 - val_accuracy: 0.9487 - lr: 0.0095\n", + "171/171 [==============================] - 236s 1s/step - loss: 0.0887 - accuracy: 0.9736 - val_loss: 0.1655 - val_accuracy: 0.9471\n", "Epoch 144/144\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0584 - accuracy: 0.9865 - val_loss: 0.1874 - val_accuracy: 0.9471 - lr: 0.0095\n", + "171/171 [==============================] - 270s 2s/step - loss: 0.0623 - accuracy: 0.9824 - val_loss: 0.1519 - val_accuracy: 0.9535\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-142-0.9631.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9631\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1718\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.958333 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.963141\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.06 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.47 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-144-0.9535.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1519\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1668.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1449.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m219.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [24] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m25\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 144)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.01\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 145/150\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2001 - accuracy: 0.9405 - val_loss: 0.2071 - val_accuracy: 0.9375 - lr: 0.0095\n", + "171/171 [==============================] - 175s 987ms/step - loss: 0.1854 - accuracy: 0.9441 - val_loss: 0.1797 - val_accuracy: 0.9167\n", "Epoch 146/150\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1367 - accuracy: 0.9627 - val_loss: 0.1533 - val_accuracy: 0.9535 - lr: 0.0095\n", + "171/171 [==============================] - 249s 1s/step - loss: 0.1521 - accuracy: 0.9502 - val_loss: 0.1711 - val_accuracy: 0.9519\n", "Epoch 147/150\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0998 - accuracy: 0.9737 - val_loss: 0.1731 - val_accuracy: 0.9503 - lr: 0.0095\n", + "171/171 [==============================] - 189s 1s/step - loss: 0.1270 - accuracy: 0.9609 - val_loss: 0.2408 - val_accuracy: 0.9535\n", "Epoch 148/150\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0779 - accuracy: 0.9805 - val_loss: 0.1966 - val_accuracy: 0.9567 - lr: 0.0095\n", + "171/171 [==============================] - 254s 1s/step - loss: 0.1055 - accuracy: 0.9666 - val_loss: 0.2019 - val_accuracy: 0.8974\n", "Epoch 149/150\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0750 - accuracy: 0.9827 - val_loss: 0.1798 - val_accuracy: 0.9519 - lr: 0.0095\n", + "171/171 [==============================] - 227s 1s/step - loss: 0.0783 - accuracy: 0.9744 - val_loss: 0.1425 - val_accuracy: 0.9391\n", "Epoch 150/150\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0649 - accuracy: 0.9873 - val_loss: 0.3749 - val_accuracy: 0.8990 - lr: 0.0095\n", + "171/171 [==============================] - 245s 1s/step - loss: 0.0587 - accuracy: 0.9822 - val_loss: 0.1469 - val_accuracy: 0.9487\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-148-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1966\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m203.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m83.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-147-0.9535.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2408\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1557.05 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1339.67 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m217.37 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [25] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m26\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 150)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00995\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 151/156\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2088 - accuracy: 0.9350 - val_loss: 0.1861 - val_accuracy: 0.9455 - lr: 0.0095\n", + "171/171 [==============================] - 111s 611ms/step - loss: 0.1712 - accuracy: 0.9482 - val_loss: 0.1382 - val_accuracy: 0.9487\n", "Epoch 152/156\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1315 - accuracy: 0.9625 - val_loss: 0.2289 - val_accuracy: 0.9327 - lr: 0.0095\n", + "171/171 [==============================] - 191s 1s/step - loss: 0.1610 - accuracy: 0.9512 - val_loss: 0.1653 - val_accuracy: 0.9535\n", "Epoch 153/156\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0981 - accuracy: 0.9733 - val_loss: 0.1754 - val_accuracy: 0.9487 - lr: 0.0095\n", + "171/171 [==============================] - 248s 1s/step - loss: 0.1251 - accuracy: 0.9629 - val_loss: 0.1741 - val_accuracy: 0.9535\n", "Epoch 154/156\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0819 - accuracy: 0.9807 - val_loss: 0.5241 - val_accuracy: 0.8894 - lr: 0.0095\n", + "171/171 [==============================] - 253s 1s/step - loss: 0.1168 - accuracy: 0.9680 - val_loss: 0.1513 - val_accuracy: 0.9519\n", "Epoch 155/156\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0678 - accuracy: 0.9841 - val_loss: 0.3241 - val_accuracy: 0.9279 - lr: 0.0095\n", + "171/171 [==============================] - 243s 1s/step - loss: 0.0740 - accuracy: 0.9797 - val_loss: 0.1453 - val_accuracy: 0.9487\n", "Epoch 156/156\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0634 - accuracy: 0.9856 - val_loss: 0.5862 - val_accuracy: 0.8814 - lr: 0.0095\n", + "171/171 [==============================] - 208s 1s/step - loss: 0.0641 - accuracy: 0.9822 - val_loss: 0.1568 - val_accuracy: 0.9439\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-153-0.9487.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1754\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.94 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-152-0.9535.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1653\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1471.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1255.00 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m216.55 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [26] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m27\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 156)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0099\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 157/162\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1902 - accuracy: 0.9417 - val_loss: 0.2014 - val_accuracy: 0.9375 - lr: 0.0095\n", + "171/171 [==============================] - 81s 436ms/step - loss: 0.1636 - accuracy: 0.9500 - val_loss: 0.1535 - val_accuracy: 0.9519\n", "Epoch 158/162\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1355 - accuracy: 0.9600 - val_loss: 0.2242 - val_accuracy: 0.9407 - lr: 0.0095\n", + "171/171 [==============================] - 239s 1s/step - loss: 0.1457 - accuracy: 0.9521 - val_loss: 0.1654 - val_accuracy: 0.9407\n", "Epoch 159/162\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1036 - accuracy: 0.9740 - val_loss: 0.2177 - val_accuracy: 0.9263 - lr: 0.0095\n", + "171/171 [==============================] - 208s 1s/step - loss: 0.1256 - accuracy: 0.9609 - val_loss: 0.1511 - val_accuracy: 0.9327\n", "Epoch 160/162\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0829 - accuracy: 0.9788 - val_loss: 0.4008 - val_accuracy: 0.9071 - lr: 0.0095\n", + "171/171 [==============================] - 216s 1s/step - loss: 0.1017 - accuracy: 0.9670 - val_loss: 0.1574 - val_accuracy: 0.9439\n", "Epoch 161/162\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0741 - accuracy: 0.9815 - val_loss: 0.2212 - val_accuracy: 0.9391 - lr: 0.0095\n", + "171/171 [==============================] - 242s 1s/step - loss: 0.0854 - accuracy: 0.9741 - val_loss: 0.1574 - val_accuracy: 0.9391\n", "Epoch 162/162\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0550 - accuracy: 0.9892 - val_loss: 0.3319 - val_accuracy: 0.9247 - lr: 0.0095\n", + "171/171 [==============================] - 216s 1s/step - loss: 0.0584 - accuracy: 0.9849 - val_loss: 0.1552 - val_accuracy: 0.9503\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-158-0.9407.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2242\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m203.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.66 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.36 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9519}, \u001b[0m\u001b[0;33mloss{0.1511}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9567}, loss{0.1366}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1552\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.44GB, used: 23.56GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1416.76 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1203.58 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m213.19 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [27] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m28\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 162)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00985\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 163/168\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1807 - accuracy: 0.9470 - val_loss: 0.1855 - val_accuracy: 0.9391 - lr: 0.0095\n", + "171/171 [==============================] - 200s 1s/step - loss: 0.1692 - accuracy: 0.9487 - val_loss: 0.1394 - val_accuracy: 0.9551\n", "Epoch 164/168\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1340 - accuracy: 0.9607 - val_loss: 0.1799 - val_accuracy: 0.9423 - lr: 0.0095\n", + "171/171 [==============================] - 227s 1s/step - loss: 0.1452 - accuracy: 0.9556 - val_loss: 0.1566 - val_accuracy: 0.9263\n", "Epoch 165/168\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0879 - accuracy: 0.9788 - val_loss: 0.2900 - val_accuracy: 0.9279 - lr: 0.0095\n", + "171/171 [==============================] - 198s 1s/step - loss: 0.1255 - accuracy: 0.9622 - val_loss: 0.2241 - val_accuracy: 0.9135\n", "Epoch 166/168\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0772 - accuracy: 0.9812 - val_loss: 0.2162 - val_accuracy: 0.9343 - lr: 0.0095\n", + "171/171 [==============================] - 191s 1s/step - loss: 0.1062 - accuracy: 0.9700 - val_loss: 0.1474 - val_accuracy: 0.9567\n", "Epoch 167/168\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0623 - accuracy: 0.9853 - val_loss: 0.2107 - val_accuracy: 0.9391 - lr: 0.0095\n", + "171/171 [==============================] - 226s 1s/step - loss: 0.0769 - accuracy: 0.9780 - val_loss: 0.1448 - val_accuracy: 0.9567\n", "Epoch 168/168\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0623 - accuracy: 0.9872 - val_loss: 0.2354 - val_accuracy: 0.9263 - lr: 0.0095\n", + "171/171 [==============================] - 195s 1s/step - loss: 0.0515 - accuracy: 0.9875 - val_loss: 0.1562 - val_accuracy: 0.9567\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-164-0.9423.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9423\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1799\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.73 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.78 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.95 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9567}, \u001b[0m\u001b[0;33mloss{0.1394}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9567}, loss{0.1366}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1563\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1444.25 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1237.86 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m206.39 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [28] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m29\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 168)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0098\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 169/174\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1772 - accuracy: 0.9451 - val_loss: 0.1965 - val_accuracy: 0.9263 - lr: 0.0095\n", + "171/171 [==============================] - 148s 826ms/step - loss: 0.1808 - accuracy: 0.9414 - val_loss: 0.1454 - val_accuracy: 0.9519\n", "Epoch 170/174\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1278 - accuracy: 0.9636 - val_loss: 0.2487 - val_accuracy: 0.9199 - lr: 0.0095\n", + "171/171 [==============================] - 180s 1s/step - loss: 0.1588 - accuracy: 0.9490 - val_loss: 0.1388 - val_accuracy: 0.9487\n", "Epoch 171/174\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1020 - accuracy: 0.9762 - val_loss: 0.4315 - val_accuracy: 0.9279 - lr: 0.0095\n", + "171/171 [==============================] - 178s 1s/step - loss: 0.1404 - accuracy: 0.9553 - val_loss: 0.1577 - val_accuracy: 0.9359\n", "Epoch 172/174\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0856 - accuracy: 0.9805 - val_loss: 0.4638 - val_accuracy: 0.8830 - lr: 0.0095\n", + "171/171 [==============================] - 182s 1s/step - loss: 0.1038 - accuracy: 0.9697 - val_loss: 0.1219 - val_accuracy: 0.9567\n", "Epoch 173/174\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0680 - accuracy: 0.9841 - val_loss: 0.2388 - val_accuracy: 0.9375 - lr: 0.0095\n", + "171/171 [==============================] - 229s 1s/step - loss: 0.0847 - accuracy: 0.9758 - val_loss: 0.1406 - val_accuracy: 0.9551\n", "Epoch 174/174\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0691 - accuracy: 0.9843 - val_loss: 0.2450 - val_accuracy: 0.9375 - lr: 0.0095\n", + "171/171 [==============================] - 174s 1s/step - loss: 0.0541 - accuracy: 0.9880 - val_loss: 0.1592 - val_accuracy: 0.9615\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-173-0.9375.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9375\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2388\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m203.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.75 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-174-0.9615.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1592\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model accuracy from 0.956731 to 0.961538. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1306.55 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1092.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m213.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [29] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m30\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 174)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00975\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 175/180\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1887 - accuracy: 0.9482 - val_loss: 0.1749 - val_accuracy: 0.9519 - lr: 0.0095\n", + "171/171 [==============================] - 226s 1s/step - loss: 0.1533 - accuracy: 0.9553 - val_loss: 0.1372 - val_accuracy: 0.9535\n", "Epoch 176/180\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1304 - accuracy: 0.9665 - val_loss: 0.2173 - val_accuracy: 0.9375 - lr: 0.0095\n", + "171/171 [==============================] - 228s 1s/step - loss: 0.1409 - accuracy: 0.9595 - val_loss: 0.1552 - val_accuracy: 0.9615\n", "Epoch 177/180\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0910 - accuracy: 0.9761 - val_loss: 0.2561 - val_accuracy: 0.9295 - lr: 0.0095\n", + "171/171 [==============================] - 204s 1s/step - loss: 0.1068 - accuracy: 0.9712 - val_loss: 0.2069 - val_accuracy: 0.9103\n", "Epoch 178/180\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0691 - accuracy: 0.9836 - val_loss: 0.2810 - val_accuracy: 0.9215 - lr: 0.0095\n", + "171/171 [==============================] - 226s 1s/step - loss: 0.0865 - accuracy: 0.9768 - val_loss: 0.1524 - val_accuracy: 0.9583\n", "Epoch 179/180\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0683 - accuracy: 0.9858 - val_loss: 0.3478 - val_accuracy: 0.9071 - lr: 0.0095\n", + "171/171 [==============================] - 246s 1s/step - loss: 0.0618 - accuracy: 0.9832 - val_loss: 0.1630 - val_accuracy: 0.9535\n", "Epoch 180/180\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0519 - accuracy: 0.9882 - val_loss: 0.3221 - val_accuracy: 0.9439 - lr: 0.0095\n", + "171/171 [==============================] - 231s 1s/step - loss: 0.0445 - accuracy: 0.9897 - val_loss: 0.1699 - val_accuracy: 0.9551\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-175-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1749\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9615}, \u001b[0m\u001b[0;33mloss{0.1372}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1366}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1699\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1576.93 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1363.25 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m213.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [30] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m31\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 180)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0097\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 181/186\n", - "366/366 [==============================] - 21s 53ms/step - loss: 0.1901 - accuracy: 0.9439 - val_loss: 0.2325 - val_accuracy: 0.9119 - lr: 0.0095\n", + "171/171 [==============================] - 267s 2s/step - loss: 0.1712 - accuracy: 0.9453 - val_loss: 0.1574 - val_accuracy: 0.9503\n", "Epoch 182/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1385 - accuracy: 0.9615 - val_loss: 0.2267 - val_accuracy: 0.9391 - lr: 0.0095\n", + "171/171 [==============================] - 218s 1s/step - loss: 0.1593 - accuracy: 0.9438 - val_loss: 0.1534 - val_accuracy: 0.9311\n", "Epoch 183/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1085 - accuracy: 0.9718 - val_loss: 0.2042 - val_accuracy: 0.9391 - lr: 0.0095\n", + "171/171 [==============================] - 233s 1s/step - loss: 0.1287 - accuracy: 0.9597 - val_loss: 0.1614 - val_accuracy: 0.9391\n", "Epoch 184/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0779 - accuracy: 0.9795 - val_loss: 0.1841 - val_accuracy: 0.9359 - lr: 0.0095\n", + "171/171 [==============================] - 235s 1s/step - loss: 0.0979 - accuracy: 0.9692 - val_loss: 0.1428 - val_accuracy: 0.9455\n", "Epoch 185/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0675 - accuracy: 0.9855 - val_loss: 0.1921 - val_accuracy: 0.9535 - lr: 0.0095\n", + "171/171 [==============================] - 241s 1s/step - loss: 0.0773 - accuracy: 0.9766 - val_loss: 0.1403 - val_accuracy: 0.9503\n", "Epoch 186/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0693 - accuracy: 0.9827 - val_loss: 0.2805 - val_accuracy: 0.9359 - lr: 0.0095\n", + "171/171 [==============================] - 222s 1s/step - loss: 0.0476 - accuracy: 0.9878 - val_loss: 0.2032 - val_accuracy: 0.9423\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-185-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1921\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m198.90 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.01 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.90 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9503}, \u001b[0m\u001b[0;33mloss{0.1403}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1366}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9423\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2032\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.40GB, used: 23.59GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1650.00 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1417.55 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m232.45 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [31] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m32\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 186)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33m└───Shuffling data...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00965\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 187/192\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1975 - accuracy: 0.9429 - val_loss: 0.2513 - val_accuracy: 0.9119 - lr: 0.0095\n", + "171/171 [==============================] - 218s 1s/step - loss: 0.1543 - accuracy: 0.9514 - val_loss: 0.1515 - val_accuracy: 0.9391\n", "Epoch 188/192\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1266 - accuracy: 0.9639 - val_loss: 0.2057 - val_accuracy: 0.9311 - lr: 0.0095\n", + "171/171 [==============================] - 230s 1s/step - loss: 0.1446 - accuracy: 0.9573 - val_loss: 0.1353 - val_accuracy: 0.9503\n", "Epoch 189/192\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0870 - accuracy: 0.9762 - val_loss: 0.2292 - val_accuracy: 0.9407 - lr: 0.0095\n", + "171/171 [==============================] - 220s 1s/step - loss: 0.1227 - accuracy: 0.9675 - val_loss: 0.1368 - val_accuracy: 0.9583\n", "Epoch 190/192\n", - "366/366 [==============================] - ETA: 0s - loss: 0.0741 - accuracy: 0.9836\n", - "Epoch 190: ReduceLROnPlateau reducing learning rate to 0.009024999709799886.\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0741 - accuracy: 0.9836 - val_loss: 0.2149 - val_accuracy: 0.9407 - lr: 0.0095\n", + "171/171 [==============================] - 249s 1s/step - loss: 0.1052 - accuracy: 0.9692 - val_loss: 0.1782 - val_accuracy: 0.9407\n", "Epoch 191/192\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0666 - accuracy: 0.9843 - val_loss: 0.1717 - val_accuracy: 0.9551 - lr: 0.0090\n", + "171/171 [==============================] - 225s 1s/step - loss: 0.0653 - accuracy: 0.9836 - val_loss: 0.1549 - val_accuracy: 0.9407\n", "Epoch 192/192\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0437 - accuracy: 0.9933 - val_loss: 0.2202 - val_accuracy: 0.9567 - lr: 0.0090\n", + "171/171 [==============================] - 242s 1s/step - loss: 0.0568 - accuracy: 0.9866 - val_loss: 0.1395 - val_accuracy: 0.9583\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-192-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2202\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.36 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.67 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-189-0.9583.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1368\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1365541220. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1619.92 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1385.94 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m233.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [32] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m33\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 192)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0096\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 193/198\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1938 - accuracy: 0.9495 - val_loss: 0.2620 - val_accuracy: 0.9231 - lr: 0.0090\n", + "171/171 [==============================] - 139s 778ms/step - loss: 0.1574 - accuracy: 0.9490 - val_loss: 0.1364 - val_accuracy: 0.9551\n", "Epoch 194/198\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1164 - accuracy: 0.9716 - val_loss: 0.2127 - val_accuracy: 0.9439 - lr: 0.0090\n", + "171/171 [==============================] - 265s 2s/step - loss: 0.1391 - accuracy: 0.9546 - val_loss: 0.1292 - val_accuracy: 0.9535\n", "Epoch 195/198\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0924 - accuracy: 0.9796 - val_loss: 0.3926 - val_accuracy: 0.9231 - lr: 0.0090\n", + "171/171 [==============================] - 253s 1s/step - loss: 0.1158 - accuracy: 0.9673 - val_loss: 0.1403 - val_accuracy: 0.9519\n", "Epoch 196/198\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0677 - accuracy: 0.9851 - val_loss: 0.2297 - val_accuracy: 0.9407 - lr: 0.0090\n", + "171/171 [==============================] - 232s 1s/step - loss: 0.0903 - accuracy: 0.9736 - val_loss: 0.1333 - val_accuracy: 0.9567\n", "Epoch 197/198\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0759 - accuracy: 0.9817 - val_loss: 0.2357 - val_accuracy: 0.9439 - lr: 0.0090\n", + "171/171 [==============================] - 179s 1s/step - loss: 0.0591 - accuracy: 0.9834 - val_loss: 0.1665 - val_accuracy: 0.9535\n", "Epoch 198/198\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0538 - accuracy: 0.9899 - val_loss: 0.3371 - val_accuracy: 0.9215 - lr: 0.0090\n", + "171/171 [==============================] - 223s 1s/step - loss: 0.0418 - accuracy: 0.9888 - val_loss: 0.1586 - val_accuracy: 0.9567\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-194-0.9439.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2127\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.08 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-196-0.9567.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1333\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.13655412 to 0.13326979. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.44GB, used: 23.56GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1525.43 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1292.48 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m232.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [33] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m34\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 198)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00955\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 199/204\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1822 - accuracy: 0.9465 - val_loss: 0.1777 - val_accuracy: 0.9455 - lr: 0.0090\n", + "171/171 [==============================] - 186s 1s/step - loss: 0.1659 - accuracy: 0.9468 - val_loss: 0.1266 - val_accuracy: 0.9487\n", "Epoch 200/204\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1326 - accuracy: 0.9641 - val_loss: 0.1924 - val_accuracy: 0.9455 - lr: 0.0090\n", + "171/171 [==============================] - 241s 1s/step - loss: 0.1446 - accuracy: 0.9551 - val_loss: 0.1252 - val_accuracy: 0.9503\n", "Epoch 201/204\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0907 - accuracy: 0.9757 - val_loss: 0.2015 - val_accuracy: 0.9439 - lr: 0.0090\n", + "171/171 [==============================] - 214s 1s/step - loss: 0.1200 - accuracy: 0.9631 - val_loss: 0.1261 - val_accuracy: 0.9567\n", "Epoch 202/204\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0647 - accuracy: 0.9848 - val_loss: 0.2639 - val_accuracy: 0.9327 - lr: 0.0090\n", + "171/171 [==============================] - 218s 1s/step - loss: 0.0885 - accuracy: 0.9768 - val_loss: 0.1324 - val_accuracy: 0.9567\n", "Epoch 203/204\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0575 - accuracy: 0.9860 - val_loss: 0.1819 - val_accuracy: 0.9519 - lr: 0.0090\n", + "171/171 [==============================] - 225s 1s/step - loss: 0.0708 - accuracy: 0.9797 - val_loss: 0.1264 - val_accuracy: 0.9551\n", "Epoch 204/204\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0425 - accuracy: 0.9916 - val_loss: 0.2494 - val_accuracy: 0.9471 - lr: 0.0090\n", + "171/171 [==============================] - 227s 1s/step - loss: 0.0551 - accuracy: 0.9836 - val_loss: 0.1260 - val_accuracy: 0.9615\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-203-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1819\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.82 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-204-0.9615.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1260\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.13326979 to 0.12604468. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1532.88 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1313.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m219.24 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [34] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m35\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 204)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0095\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 205/210\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1881 - accuracy: 0.9410 - val_loss: 0.2134 - val_accuracy: 0.9407 - lr: 0.0090\n", + "171/171 [==============================] - 106s 579ms/step - loss: 0.1567 - accuracy: 0.9519 - val_loss: 0.1198 - val_accuracy: 0.9551\n", "Epoch 206/210\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1214 - accuracy: 0.9678 - val_loss: 0.2818 - val_accuracy: 0.9375 - lr: 0.0090\n", + "171/171 [==============================] - 241s 1s/step - loss: 0.1322 - accuracy: 0.9580 - val_loss: 0.1446 - val_accuracy: 0.9519\n", "Epoch 207/210\n", - "366/366 [==============================] - 19s 51ms/step - loss: 0.0947 - accuracy: 0.9761 - val_loss: 0.1971 - val_accuracy: 0.9311 - lr: 0.0090\n", + "171/171 [==============================] - 206s 1s/step - loss: 0.1057 - accuracy: 0.9653 - val_loss: 0.1290 - val_accuracy: 0.9455\n", "Epoch 208/210\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0676 - accuracy: 0.9844 - val_loss: 0.2918 - val_accuracy: 0.9391 - lr: 0.0090\n", + "171/171 [==============================] - 177s 1s/step - loss: 0.0826 - accuracy: 0.9783 - val_loss: 0.1446 - val_accuracy: 0.9535\n", "Epoch 209/210\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0633 - accuracy: 0.9865 - val_loss: 0.2375 - val_accuracy: 0.9391 - lr: 0.0090\n", + "171/171 [==============================] - 204s 1s/step - loss: 0.0490 - accuracy: 0.9868 - val_loss: 0.2034 - val_accuracy: 0.9487\n", "Epoch 210/210\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0557 - accuracy: 0.9894 - val_loss: 0.3272 - val_accuracy: 0.9151 - lr: 0.0090\n", + "171/171 [==============================] - 189s 1s/step - loss: 0.0435 - accuracy: 0.9893 - val_loss: 0.1657 - val_accuracy: 0.9519\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-205-0.9407.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2134\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m197.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.90 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-205-0.9551.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1198\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.12604468 to 0.11975538. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1360.93 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1123.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m237.90 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [35] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m36\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 210)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00945\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 211/216\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1802 - accuracy: 0.9468 - val_loss: 0.1623 - val_accuracy: 0.9455 - lr: 0.0090\n", + "171/171 [==============================] - 204s 1s/step - loss: 0.1606 - accuracy: 0.9478 - val_loss: 0.1241 - val_accuracy: 0.9615\n", "Epoch 212/216\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1325 - accuracy: 0.9641 - val_loss: 0.3039 - val_accuracy: 0.8894 - lr: 0.0090\n", + "171/171 [==============================] - 211s 1s/step - loss: 0.1449 - accuracy: 0.9534 - val_loss: 0.1458 - val_accuracy: 0.9423\n", "Epoch 213/216\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1014 - accuracy: 0.9752 - val_loss: 0.2054 - val_accuracy: 0.9343 - lr: 0.0090\n", + "171/171 [==============================] - 226s 1s/step - loss: 0.1138 - accuracy: 0.9641 - val_loss: 0.1546 - val_accuracy: 0.9471\n", "Epoch 214/216\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0776 - accuracy: 0.9812 - val_loss: 0.4122 - val_accuracy: 0.8830 - lr: 0.0090\n", + "171/171 [==============================] - 246s 1s/step - loss: 0.0869 - accuracy: 0.9717 - val_loss: 0.1757 - val_accuracy: 0.9455\n", "Epoch 215/216\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0579 - accuracy: 0.9875 - val_loss: 0.2895 - val_accuracy: 0.9327 - lr: 0.0090\n", + "171/171 [==============================] - 214s 1s/step - loss: 0.0676 - accuracy: 0.9810 - val_loss: 0.1673 - val_accuracy: 0.9391\n", "Epoch 216/216\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0953 - accuracy: 0.9766 - val_loss: 0.9459 - val_accuracy: 0.7740 - lr: 0.0090\n", + "171/171 [==============================] - 244s 1s/step - loss: 0.0518 - accuracy: 0.9851 - val_loss: 0.1852 - val_accuracy: 0.9503\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-211-0.9455.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1624\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1640251279 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1623503417\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.51 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.88 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9615}, \u001b[0m\u001b[0;33mloss{0.1241}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1852\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1580.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1346.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m233.43 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [36] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m37\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 216)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0094\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 217/222\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1558 - accuracy: 0.9524 - val_loss: 0.2708 - val_accuracy: 0.9087 - lr: 0.0090\n", + "171/171 [==============================] - 172s 966ms/step - loss: 0.1590 - accuracy: 0.9526 - val_loss: 0.1475 - val_accuracy: 0.9375\n", "Epoch 218/222\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1159 - accuracy: 0.9678 - val_loss: 0.1806 - val_accuracy: 0.9391 - lr: 0.0090\n", + "171/171 [==============================] - 266s 2s/step - loss: 0.1217 - accuracy: 0.9622 - val_loss: 0.2518 - val_accuracy: 0.9054\n", "Epoch 219/222\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0884 - accuracy: 0.9793 - val_loss: 0.4853 - val_accuracy: 0.8846 - lr: 0.0090\n", + "171/171 [==============================] - 257s 2s/step - loss: 0.1144 - accuracy: 0.9644 - val_loss: 0.1623 - val_accuracy: 0.9279\n", "Epoch 220/222\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0705 - accuracy: 0.9831 - val_loss: 0.1582 - val_accuracy: 0.9631 - lr: 0.0090\n", + "171/171 [==============================] - 235s 1s/step - loss: 0.0773 - accuracy: 0.9790 - val_loss: 0.1955 - val_accuracy: 0.9263\n", "Epoch 221/222\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0542 - accuracy: 0.9891 - val_loss: 0.1939 - val_accuracy: 0.9567 - lr: 0.0090\n", + "171/171 [==============================] - 224s 1s/step - loss: 0.0574 - accuracy: 0.9851 - val_loss: 0.1780 - val_accuracy: 0.9487\n", "Epoch 222/222\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0531 - accuracy: 0.9887 - val_loss: 0.2286 - val_accuracy: 0.9439 - lr: 0.0090\n", + "171/171 [==============================] - 237s 1s/step - loss: 0.0418 - accuracy: 0.9905 - val_loss: 0.2013 - val_accuracy: 0.9487\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-220-0.9631.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9631\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1582\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1623503417 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1581732184\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.13 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.81 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9487}, \u001b[0m\u001b[0;33mloss{0.1475}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2013\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.40GB, used: 23.60GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1689.89 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1392.28 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m297.61 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [37] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m38\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 222)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00935\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 223/228\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1827 - accuracy: 0.9483 - val_loss: 0.2623 - val_accuracy: 0.9119 - lr: 0.0090\n", + "171/171 [==============================] - 213s 1s/step - loss: 0.1527 - accuracy: 0.9492 - val_loss: 0.1812 - val_accuracy: 0.9327\n", "Epoch 224/228\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1156 - accuracy: 0.9699 - val_loss: 0.1609 - val_accuracy: 0.9503 - lr: 0.0090\n", + "171/171 [==============================] - 206s 1s/step - loss: 0.1285 - accuracy: 0.9590 - val_loss: 0.1517 - val_accuracy: 0.9551\n", "Epoch 225/228\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0830 - accuracy: 0.9781 - val_loss: 0.1679 - val_accuracy: 0.9471 - lr: 0.0090\n", + "171/171 [==============================] - 245s 1s/step - loss: 0.1142 - accuracy: 0.9653 - val_loss: 0.1597 - val_accuracy: 0.9567\n", "Epoch 226/228\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0606 - accuracy: 0.9853 - val_loss: 0.3393 - val_accuracy: 0.9343 - lr: 0.0090\n", + "171/171 [==============================] - 203s 1s/step - loss: 0.0883 - accuracy: 0.9778 - val_loss: 0.1721 - val_accuracy: 0.9503\n", "Epoch 227/228\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0497 - accuracy: 0.9911 - val_loss: 0.2521 - val_accuracy: 0.9423 - lr: 0.0090\n", + "171/171 [==============================] - 267s 2s/step - loss: 0.0666 - accuracy: 0.9839 - val_loss: 0.2166 - val_accuracy: 0.9279\n", "Epoch 228/228\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0578 - accuracy: 0.9921 - val_loss: 0.2283 - val_accuracy: 0.9487 - lr: 0.0090\n", + "171/171 [==============================] - 235s 1s/step - loss: 0.0464 - accuracy: 0.9878 - val_loss: 0.2116 - val_accuracy: 0.9343\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-224-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1609\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1581732184. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.24 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.46 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.77 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9567}, \u001b[0m\u001b[0;33mloss{0.1517}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9343\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2116\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.40GB, used: 23.60GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1611.45 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1370.76 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m240.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [38] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m39\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 228)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0093\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 229/234\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1718 - accuracy: 0.9475 - val_loss: 0.1678 - val_accuracy: 0.9487 - lr: 0.0090\n", + "171/171 [==============================] - 195s 1s/step - loss: 0.1512 - accuracy: 0.9495 - val_loss: 0.1383 - val_accuracy: 0.9503\n", "Epoch 230/234\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1302 - accuracy: 0.9619 - val_loss: 0.1780 - val_accuracy: 0.9503 - lr: 0.0090\n", + "171/171 [==============================] - 237s 1s/step - loss: 0.1306 - accuracy: 0.9565 - val_loss: 0.1658 - val_accuracy: 0.9311\n", "Epoch 231/234\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0918 - accuracy: 0.9761 - val_loss: 0.4040 - val_accuracy: 0.9087 - lr: 0.0090\n", + "171/171 [==============================] - 200s 1s/step - loss: 0.1137 - accuracy: 0.9656 - val_loss: 0.1485 - val_accuracy: 0.9567\n", "Epoch 232/234\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0717 - accuracy: 0.9846 - val_loss: 0.2767 - val_accuracy: 0.9263 - lr: 0.0090\n", + "171/171 [==============================] - 202s 1s/step - loss: 0.0680 - accuracy: 0.9814 - val_loss: 0.2250 - val_accuracy: 0.9487\n", "Epoch 233/234\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0622 - accuracy: 0.9851 - val_loss: 0.3809 - val_accuracy: 0.9151 - lr: 0.0090\n", + "171/171 [==============================] - 214s 1s/step - loss: 0.0641 - accuracy: 0.9822 - val_loss: 0.1701 - val_accuracy: 0.9535\n", "Epoch 234/234\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0572 - accuracy: 0.9902 - val_loss: 0.7363 - val_accuracy: 0.8590 - lr: 0.0090\n", + "171/171 [==============================] - 216s 1s/step - loss: 0.0468 - accuracy: 0.9883 - val_loss: 0.1934 - val_accuracy: 0.9455\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-230-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1779\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1581732184. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.48 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.50 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9567}, \u001b[0m\u001b[0;33mloss{0.1383}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1934\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1509.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1264.29 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m245.51 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [39] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m40\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 234)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00925\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 235/240\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1672 - accuracy: 0.9492 - val_loss: 0.2512 - val_accuracy: 0.9167 - lr: 0.0090\n", + "171/171 [==============================] - 225s 1s/step - loss: 0.1566 - accuracy: 0.9478 - val_loss: 0.2143 - val_accuracy: 0.9551\n", "Epoch 236/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1221 - accuracy: 0.9651 - val_loss: 0.3716 - val_accuracy: 0.8974 - lr: 0.0090\n", + "171/171 [==============================] - 232s 1s/step - loss: 0.1367 - accuracy: 0.9580 - val_loss: 0.2566 - val_accuracy: 0.9503\n", "Epoch 237/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0945 - accuracy: 0.9802 - val_loss: 0.1822 - val_accuracy: 0.9487 - lr: 0.0090\n", + "171/171 [==============================] - 264s 2s/step - loss: 0.1091 - accuracy: 0.9661 - val_loss: 0.1900 - val_accuracy: 0.9551\n", "Epoch 238/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0692 - accuracy: 0.9826 - val_loss: 0.1737 - val_accuracy: 0.9455 - lr: 0.0090\n", + "171/171 [==============================] - 234s 1s/step - loss: 0.0794 - accuracy: 0.9758 - val_loss: 0.1876 - val_accuracy: 0.9551\n", "Epoch 239/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0688 - accuracy: 0.9860 - val_loss: 0.2778 - val_accuracy: 0.9327 - lr: 0.0090\n", + "171/171 [==============================] - 298s 2s/step - loss: 0.0676 - accuracy: 0.9819 - val_loss: 0.1644 - val_accuracy: 0.9551\n", "Epoch 240/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0548 - accuracy: 0.9892 - val_loss: 0.2084 - val_accuracy: 0.9375 - lr: 0.0090\n", + "171/171 [==============================] - 194s 1s/step - loss: 0.0567 - accuracy: 0.9858 - val_loss: 0.1652 - val_accuracy: 0.9503\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-237-0.9487.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1822\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1581732184. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.55 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.10 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9551}, \u001b[0m\u001b[0;33mloss{0.1644}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1652\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.39GB, used: 23.61GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1693.21 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1448.23 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m244.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [40] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m41\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 240)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0092\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 241/246\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1620 - accuracy: 0.9499 - val_loss: 0.1682 - val_accuracy: 0.9567 - lr: 0.0090\n", + "171/171 [==============================] - 164s 920ms/step - loss: 0.1454 - accuracy: 0.9561 - val_loss: 0.1705 - val_accuracy: 0.9519\n", "Epoch 242/246\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1175 - accuracy: 0.9682 - val_loss: 0.2344 - val_accuracy: 0.9295 - lr: 0.0090\n", + "171/171 [==============================] - 275s 2s/step - loss: 0.1259 - accuracy: 0.9580 - val_loss: 0.1916 - val_accuracy: 0.9583\n", "Epoch 243/246\n", - "365/366 [============================>.] - ETA: 0s - loss: 0.0795 - accuracy: 0.9810\n", - "Epoch 243: ReduceLROnPlateau reducing learning rate to 0.008573750033974648.\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0795 - accuracy: 0.9810 - val_loss: 0.1750 - val_accuracy: 0.9471 - lr: 0.0090\n", + "171/171 [==============================] - 248s 1s/step - loss: 0.0964 - accuracy: 0.9714 - val_loss: 0.2590 - val_accuracy: 0.9423\n", "Epoch 244/246\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0655 - accuracy: 0.9844 - val_loss: 0.2334 - val_accuracy: 0.9359 - lr: 0.0086\n", + "171/171 [==============================] - 245s 1s/step - loss: 0.0698 - accuracy: 0.9805 - val_loss: 0.2027 - val_accuracy: 0.9439\n", "Epoch 245/246\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0520 - accuracy: 0.9885 - val_loss: 0.4432 - val_accuracy: 0.8718 - lr: 0.0086\n", + "171/171 [==============================] - 292s 2s/step - loss: 0.0546 - accuracy: 0.9854 - val_loss: 0.1953 - val_accuracy: 0.9455\n", "Epoch 246/246\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0523 - accuracy: 0.9906 - val_loss: 0.2261 - val_accuracy: 0.9423 - lr: 0.0086\n", + "171/171 [==============================] - 213s 1s/step - loss: 0.0402 - accuracy: 0.9888 - val_loss: 0.2255 - val_accuracy: 0.9455\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-241-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1682\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1581732184. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.58 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9583}, \u001b[0m\u001b[0;33mloss{0.1705}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2255\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.46GB, used: 23.54GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1699.14 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1438.19 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m260.95 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [41] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m42\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 246)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m02_d29-h17_m14_s05\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m03_d05-h07_m20_s08\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00915\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 247/252\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1631 - accuracy: 0.9477 - val_loss: 0.1511 - val_accuracy: 0.9647 - lr: 0.0086\n", + "171/171 [==============================] - 185s 1s/step - loss: 0.1694 - accuracy: 0.9482 - val_loss: 0.1764 - val_accuracy: 0.9535\n", "Epoch 248/252\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1240 - accuracy: 0.9639 - val_loss: 0.3919 - val_accuracy: 0.8846 - lr: 0.0086\n", + "171/171 [==============================] - 211s 1s/step - loss: 0.1340 - accuracy: 0.9558 - val_loss: 0.1761 - val_accuracy: 0.9183\n", "Epoch 249/252\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0823 - accuracy: 0.9762 - val_loss: 0.1953 - val_accuracy: 0.9359 - lr: 0.0086\n", + "171/171 [==============================] - 245s 1s/step - loss: 0.1101 - accuracy: 0.9639 - val_loss: 0.1679 - val_accuracy: 0.9471\n", "Epoch 250/252\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0787 - accuracy: 0.9817 - val_loss: 0.2526 - val_accuracy: 0.9279 - lr: 0.0086\n", + "171/171 [==============================] - 244s 1s/step - loss: 0.0859 - accuracy: 0.9729 - val_loss: 0.1789 - val_accuracy: 0.9455\n", "Epoch 251/252\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0519 - accuracy: 0.9904 - val_loss: 0.1624 - val_accuracy: 0.9519 - lr: 0.0086\n", + "171/171 [==============================] - 244s 1s/step - loss: 0.0553 - accuracy: 0.9856 - val_loss: 0.1907 - val_accuracy: 0.9503\n", "Epoch 252/252\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0550 - accuracy: 0.9879 - val_loss: 0.5036 - val_accuracy: 0.9215 - lr: 0.0086\n", + "171/171 [==============================] - 163s 951ms/step - loss: 0.0411 - accuracy: 0.9907 - val_loss: 0.1986 - val_accuracy: 0.9487\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-247-0.9647.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9647\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1511\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.963141 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.964744\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1581732184 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1511378735\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m209.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9535}, \u001b[0m\u001b[0;33mloss{0.1679}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1986\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1561.29 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1293.09 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m268.20 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [42] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m43\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 252)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0091\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 253/258\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1676 - accuracy: 0.9468 - val_loss: 0.1480 - val_accuracy: 0.9519 - lr: 0.0086\n", + "171/171 [==============================] - 84s 452ms/step - loss: 0.1384 - accuracy: 0.9565 - val_loss: 0.1545 - val_accuracy: 0.9455\n", "Epoch 254/258\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1222 - accuracy: 0.9672 - val_loss: 0.2920 - val_accuracy: 0.9295 - lr: 0.0086\n", + "171/171 [==============================] - 179s 1s/step - loss: 0.1191 - accuracy: 0.9617 - val_loss: 0.1612 - val_accuracy: 0.9487\n", "Epoch 255/258\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0898 - accuracy: 0.9737 - val_loss: 0.5387 - val_accuracy: 0.8846 - lr: 0.0086\n", + "171/171 [==============================] - 275s 2s/step - loss: 0.0855 - accuracy: 0.9763 - val_loss: 0.2150 - val_accuracy: 0.9327\n", "Epoch 256/258\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0774 - accuracy: 0.9841 - val_loss: 0.1780 - val_accuracy: 0.9503 - lr: 0.0086\n", + "171/171 [==============================] - 241s 1s/step - loss: 0.0738 - accuracy: 0.9795 - val_loss: 0.1581 - val_accuracy: 0.9551\n", "Epoch 257/258\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0541 - accuracy: 0.9872 - val_loss: 0.3867 - val_accuracy: 0.9359 - lr: 0.0086\n", + "171/171 [==============================] - 218s 1s/step - loss: 0.0480 - accuracy: 0.9885 - val_loss: 0.1975 - val_accuracy: 0.9535\n", "Epoch 258/258\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0597 - accuracy: 0.9887 - val_loss: 0.5682 - val_accuracy: 0.8702 - lr: 0.0086\n", + "171/171 [==============================] - 250s 1s/step - loss: 0.0404 - accuracy: 0.9912 - val_loss: 0.1968 - val_accuracy: 0.9519\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-253-0.9519.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9551}, \u001b[0m\u001b[0;33mloss{0.1545}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1480\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1511378735 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1480352581\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.42 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.74 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1969\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.44GB, used: 23.56GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1498.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1248.81 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m249.26 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [43] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m44\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 258)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00905\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 259/264\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1490 - accuracy: 0.9535 - val_loss: 0.1558 - val_accuracy: 0.9487 - lr: 0.0086\n", + "171/171 [==============================] - 209s 1s/step - loss: 0.1365 - accuracy: 0.9595 - val_loss: 0.1857 - val_accuracy: 0.9503\n", "Epoch 260/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1101 - accuracy: 0.9702 - val_loss: 0.1801 - val_accuracy: 0.9487 - lr: 0.0086\n", + "171/171 [==============================] - 240s 1s/step - loss: 0.1189 - accuracy: 0.9619 - val_loss: 0.3419 - val_accuracy: 0.9231\n", "Epoch 261/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0938 - accuracy: 0.9755 - val_loss: 0.3549 - val_accuracy: 0.9071 - lr: 0.0086\n", + "171/171 [==============================] - 242s 1s/step - loss: 0.0928 - accuracy: 0.9712 - val_loss: 0.1522 - val_accuracy: 0.9599\n", "Epoch 262/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0677 - accuracy: 0.9832 - val_loss: 0.1872 - val_accuracy: 0.9503 - lr: 0.0086\n", + "171/171 [==============================] - 270s 2s/step - loss: 0.0743 - accuracy: 0.9785 - val_loss: 0.2084 - val_accuracy: 0.9567\n", "Epoch 263/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0528 - accuracy: 0.9875 - val_loss: 0.3440 - val_accuracy: 0.9391 - lr: 0.0086\n", + "171/171 [==============================] - 228s 1s/step - loss: 0.0572 - accuracy: 0.9856 - val_loss: 0.2337 - val_accuracy: 0.9535\n", "Epoch 264/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0516 - accuracy: 0.9892 - val_loss: 0.2368 - val_accuracy: 0.9455 - lr: 0.0086\n", + "171/171 [==============================] - 260s 2s/step - loss: 0.0460 - accuracy: 0.9905 - val_loss: 0.1934 - val_accuracy: 0.9567\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-262-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1872\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m197.87 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.18 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9599}, \u001b[0m\u001b[0;33mloss{0.1522}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1934\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1705.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1451.19 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m254.50 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [44] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m45\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 264)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.009\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 265/270\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1584 - accuracy: 0.9535 - val_loss: 0.1454 - val_accuracy: 0.9567 - lr: 0.0086\n", + "171/171 [==============================] - 239s 1s/step - loss: 0.1470 - accuracy: 0.9539 - val_loss: 0.2100 - val_accuracy: 0.9519\n", "Epoch 266/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1205 - accuracy: 0.9687 - val_loss: 0.1504 - val_accuracy: 0.9599 - lr: 0.0086\n", + "171/171 [==============================] - 248s 1s/step - loss: 0.1291 - accuracy: 0.9590 - val_loss: 0.2186 - val_accuracy: 0.9503\n", "Epoch 267/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0837 - accuracy: 0.9793 - val_loss: 0.2561 - val_accuracy: 0.9199 - lr: 0.0086\n", + "171/171 [==============================] - 194s 1s/step - loss: 0.1037 - accuracy: 0.9673 - val_loss: 0.3078 - val_accuracy: 0.9423\n", "Epoch 268/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0790 - accuracy: 0.9824 - val_loss: 0.1982 - val_accuracy: 0.9407 - lr: 0.0086\n", + "171/171 [==============================] - 258s 2s/step - loss: 0.0699 - accuracy: 0.9819 - val_loss: 0.2223 - val_accuracy: 0.9423\n", "Epoch 269/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0514 - accuracy: 0.9891 - val_loss: 0.2214 - val_accuracy: 0.9503 - lr: 0.0086\n", + "171/171 [==============================] - 235s 1s/step - loss: 0.0482 - accuracy: 0.9880 - val_loss: 0.2177 - val_accuracy: 0.9407\n", "Epoch 270/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0531 - accuracy: 0.9873 - val_loss: 0.2867 - val_accuracy: 0.9407 - lr: 0.0086\n", + "171/171 [==============================] - 245s 1s/step - loss: 0.0454 - accuracy: 0.9888 - val_loss: 0.2255 - val_accuracy: 0.9487\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-266-0.9599.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9599\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1504\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.06 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9519}, \u001b[0m\u001b[0;33mloss{0.2100}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2255\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1665.00 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1420.17 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m244.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [45] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m46\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 270)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00895\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 271/276\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1577 - accuracy: 0.9519 - val_loss: 0.1714 - val_accuracy: 0.9471 - lr: 0.0086\n", + "171/171 [==============================] - 256s 1s/step - loss: 0.1475 - accuracy: 0.9556 - val_loss: 0.1431 - val_accuracy: 0.9439\n", "Epoch 272/276\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1125 - accuracy: 0.9673 - val_loss: 0.1889 - val_accuracy: 0.9391 - lr: 0.0086\n", + "171/171 [==============================] - 246s 1s/step - loss: 0.1269 - accuracy: 0.9583 - val_loss: 0.1834 - val_accuracy: 0.9503\n", "Epoch 273/276\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0757 - accuracy: 0.9815 - val_loss: 0.3932 - val_accuracy: 0.8974 - lr: 0.0086\n", + "171/171 [==============================] - 182s 1s/step - loss: 0.1133 - accuracy: 0.9663 - val_loss: 0.1616 - val_accuracy: 0.9311\n", "Epoch 274/276\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0820 - accuracy: 0.9814 - val_loss: 0.1895 - val_accuracy: 0.9519 - lr: 0.0086\n", + "171/171 [==============================] - 202s 1s/step - loss: 0.0757 - accuracy: 0.9758 - val_loss: 0.1592 - val_accuracy: 0.9535\n", "Epoch 275/276\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0534 - accuracy: 0.9880 - val_loss: 0.3728 - val_accuracy: 0.9151 - lr: 0.0086\n", + "171/171 [==============================] - 220s 1s/step - loss: 0.0586 - accuracy: 0.9834 - val_loss: 0.1621 - val_accuracy: 0.9583\n", "Epoch 276/276\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0422 - accuracy: 0.9923 - val_loss: 0.6337 - val_accuracy: 0.8686 - lr: 0.0086\n", + "171/171 [==============================] - 225s 1s/step - loss: 0.0442 - accuracy: 0.9897 - val_loss: 0.1737 - val_accuracy: 0.9551\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-274-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1894\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.87 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9583}, \u001b[0m\u001b[0;33mloss{0.1431}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1737\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1589.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1333.73 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m255.49 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [46] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m47\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 276)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0089\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 277/282\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1727 - accuracy: 0.9528 - val_loss: 0.2081 - val_accuracy: 0.9375 - lr: 0.0086\n", + "171/171 [==============================] - 120s 660ms/step - loss: 0.1373 - accuracy: 0.9556 - val_loss: 0.1468 - val_accuracy: 0.9535\n", "Epoch 278/282\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1331 - accuracy: 0.9629 - val_loss: 0.1784 - val_accuracy: 0.9487 - lr: 0.0086\n", + "171/171 [==============================] - 226s 1s/step - loss: 0.1156 - accuracy: 0.9619 - val_loss: 0.1690 - val_accuracy: 0.9567\n", "Epoch 279/282\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0885 - accuracy: 0.9793 - val_loss: 0.1819 - val_accuracy: 0.9615 - lr: 0.0086\n", + "171/171 [==============================] - 219s 1s/step - loss: 0.0887 - accuracy: 0.9736 - val_loss: 0.2043 - val_accuracy: 0.9551\n", "Epoch 280/282\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0722 - accuracy: 0.9817 - val_loss: 0.1774 - val_accuracy: 0.9599 - lr: 0.0086\n", + "171/171 [==============================] - 265s 2s/step - loss: 0.0599 - accuracy: 0.9812 - val_loss: 0.2175 - val_accuracy: 0.9567\n", "Epoch 281/282\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0536 - accuracy: 0.9885 - val_loss: 0.2732 - val_accuracy: 0.9375 - lr: 0.0086\n", + "171/171 [==============================] - 203s 1s/step - loss: 0.0496 - accuracy: 0.9861 - val_loss: 0.2410 - val_accuracy: 0.9519\n", "Epoch 282/282\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0548 - accuracy: 0.9896 - val_loss: 0.1667 - val_accuracy: 0.9599 - lr: 0.0086\n", + "171/171 [==============================] - 252s 1s/step - loss: 0.0349 - accuracy: 0.9917 - val_loss: 0.2350 - val_accuracy: 0.9487\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-279-0.9615.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1819\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.51 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.86 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9567}, \u001b[0m\u001b[0;33mloss{0.1468}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2350\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1566.63 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1286.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m280.56 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [47] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m48\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 282)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00885\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 283/288\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1742 - accuracy: 0.9456 - val_loss: 0.1775 - val_accuracy: 0.9327 - lr: 0.0086\n", + "171/171 [==============================] - 101s 551ms/step - loss: 0.1418 - accuracy: 0.9583 - val_loss: 0.1668 - val_accuracy: 0.9519\n", "Epoch 284/288\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1094 - accuracy: 0.9684 - val_loss: 0.1814 - val_accuracy: 0.9391 - lr: 0.0086\n", + "171/171 [==============================] - 220s 1s/step - loss: 0.1284 - accuracy: 0.9600 - val_loss: 0.1411 - val_accuracy: 0.9439\n", "Epoch 285/288\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0901 - accuracy: 0.9762 - val_loss: 0.1725 - val_accuracy: 0.9583 - lr: 0.0086\n", + "171/171 [==============================] - 247s 1s/step - loss: 0.1021 - accuracy: 0.9697 - val_loss: 0.1864 - val_accuracy: 0.9503\n", "Epoch 286/288\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0740 - accuracy: 0.9836 - val_loss: 0.1607 - val_accuracy: 0.9567 - lr: 0.0086\n", + "171/171 [==============================] - 263s 2s/step - loss: 0.0765 - accuracy: 0.9785 - val_loss: 0.1645 - val_accuracy: 0.9471\n", "Epoch 287/288\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0573 - accuracy: 0.9868 - val_loss: 0.2204 - val_accuracy: 0.9311 - lr: 0.0086\n", + "171/171 [==============================] - 249s 1s/step - loss: 0.0595 - accuracy: 0.9824 - val_loss: 0.2190 - val_accuracy: 0.9519\n", "Epoch 288/288\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0496 - accuracy: 0.9891 - val_loss: 0.2225 - val_accuracy: 0.9279 - lr: 0.0086\n", + "171/171 [==============================] - 225s 1s/step - loss: 0.0430 - accuracy: 0.9890 - val_loss: 0.2378 - val_accuracy: 0.9535\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-285-0.9583.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1725\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.75 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9535}, \u001b[0m\u001b[0;33mloss{0.1411}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2378\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.44GB, used: 23.56GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1570.58 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1306.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m264.19 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [48] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m49\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 288)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0088\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 289/294\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1603 - accuracy: 0.9536 - val_loss: 0.2128 - val_accuracy: 0.9487 - lr: 0.0086\n", + "171/171 [==============================] - 228s 1s/step - loss: 0.1337 - accuracy: 0.9597 - val_loss: 0.2043 - val_accuracy: 0.9455\n", "Epoch 290/294\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1082 - accuracy: 0.9689 - val_loss: 0.2046 - val_accuracy: 0.9407 - lr: 0.0086\n", + "171/171 [==============================] - 271s 2s/step - loss: 0.1093 - accuracy: 0.9673 - val_loss: 0.1879 - val_accuracy: 0.9567\n", "Epoch 291/294\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0737 - accuracy: 0.9819 - val_loss: 0.2969 - val_accuracy: 0.9391 - lr: 0.0086\n", + "171/171 [==============================] - 214s 1s/step - loss: 0.0886 - accuracy: 0.9741 - val_loss: 0.2107 - val_accuracy: 0.9583\n", "Epoch 292/294\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0654 - accuracy: 0.9837 - val_loss: 0.2191 - val_accuracy: 0.9471 - lr: 0.0086\n", + "171/171 [==============================] - 204s 1s/step - loss: 0.0593 - accuracy: 0.9829 - val_loss: 0.2077 - val_accuracy: 0.9583\n", "Epoch 293/294\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0463 - accuracy: 0.9902 - val_loss: 0.1924 - val_accuracy: 0.9455 - lr: 0.0086\n", + "171/171 [==============================] - 263s 2s/step - loss: 0.0408 - accuracy: 0.9919 - val_loss: 0.1978 - val_accuracy: 0.9503\n", "Epoch 294/294\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0479 - accuracy: 0.9906 - val_loss: 0.2347 - val_accuracy: 0.9519 - lr: 0.0086\n", + "171/171 [==============================] - 243s 1s/step - loss: 0.0393 - accuracy: 0.9915 - val_loss: 0.1952 - val_accuracy: 0.9519\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-294-0.9519.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9583}, \u001b[0m\u001b[0;33mloss{0.1879}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2348\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.99 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1952\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.41GB, used: 23.59GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1676.72 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1424.58 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m252.14 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [49] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m50\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 294)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00875\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 295/300\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2019 - accuracy: 0.9406 - val_loss: 0.1554 - val_accuracy: 0.9583 - lr: 0.0086\n", + "171/171 [==============================] - 157s 881ms/step - loss: 0.1402 - accuracy: 0.9541 - val_loss: 0.1348 - val_accuracy: 0.9535\n", "Epoch 296/300\n", - "366/366 [==============================] - ETA: 0s - loss: 0.1171 - accuracy: 0.9637\n", - "Epoch 296: ReduceLROnPlateau reducing learning rate to 0.008145062532275914.\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1171 - accuracy: 0.9637 - val_loss: 0.1928 - val_accuracy: 0.9343 - lr: 0.0086\n", + "171/171 [==============================] - 197s 1s/step - loss: 0.1228 - accuracy: 0.9646 - val_loss: 0.1765 - val_accuracy: 0.9615\n", "Epoch 297/300\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0861 - accuracy: 0.9796 - val_loss: 0.5329 - val_accuracy: 0.9215 - lr: 0.0081\n", + "171/171 [==============================] - 276s 2s/step - loss: 0.0913 - accuracy: 0.9724 - val_loss: 0.1611 - val_accuracy: 0.9583\n", "Epoch 298/300\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0853 - accuracy: 0.9757 - val_loss: 0.1790 - val_accuracy: 0.9615 - lr: 0.0081\n", + "171/171 [==============================] - 275s 2s/step - loss: 0.0641 - accuracy: 0.9827 - val_loss: 0.2224 - val_accuracy: 0.9519\n", "Epoch 299/300\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0485 - accuracy: 0.9899 - val_loss: 0.3676 - val_accuracy: 0.9423 - lr: 0.0081\n", + "171/171 [==============================] - 256s 2s/step - loss: 0.0524 - accuracy: 0.9834 - val_loss: 0.1800 - val_accuracy: 0.9471\n", "Epoch 300/300\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0514 - accuracy: 0.9891 - val_loss: 0.2564 - val_accuracy: 0.9247 - lr: 0.0081\n", + "171/171 [==============================] - 256s 2s/step - loss: 0.0339 - accuracy: 0.9924 - val_loss: 0.2005 - val_accuracy: 0.9551\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-298-0.9615.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1791\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m198.86 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.95 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9615}, \u001b[0m\u001b[0;33mloss{0.1348}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2005\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.45GB, used: 23.55GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1685.71 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1419.61 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m266.10 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [50] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m51\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 300)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0087\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 301/306\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1675 - accuracy: 0.9477 - val_loss: 0.2300 - val_accuracy: 0.9391 - lr: 0.0081\n", + "171/171 [==============================] - 158s 883ms/step - loss: 0.1471 - accuracy: 0.9514 - val_loss: 0.1979 - val_accuracy: 0.9006\n", "Epoch 302/306\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1177 - accuracy: 0.9663 - val_loss: 0.1547 - val_accuracy: 0.9615 - lr: 0.0081\n", + "171/171 [==============================] - 210s 1s/step - loss: 0.1384 - accuracy: 0.9561 - val_loss: 0.1500 - val_accuracy: 0.9439\n", "Epoch 303/306\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0892 - accuracy: 0.9778 - val_loss: 0.2677 - val_accuracy: 0.9215 - lr: 0.0081\n", + "171/171 [==============================] - 195s 1s/step - loss: 0.1084 - accuracy: 0.9670 - val_loss: 0.1386 - val_accuracy: 0.9535\n", "Epoch 304/306\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0588 - accuracy: 0.9880 - val_loss: 0.2955 - val_accuracy: 0.9343 - lr: 0.0081\n", + "171/171 [==============================] - 249s 1s/step - loss: 0.0774 - accuracy: 0.9768 - val_loss: 0.1399 - val_accuracy: 0.9583\n", "Epoch 305/306\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0520 - accuracy: 0.9891 - val_loss: 0.3094 - val_accuracy: 0.9503 - lr: 0.0081\n", + "171/171 [==============================] - 229s 1s/step - loss: 0.0552 - accuracy: 0.9834 - val_loss: 0.1457 - val_accuracy: 0.9487\n", "Epoch 306/306\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0477 - accuracy: 0.9918 - val_loss: 0.3404 - val_accuracy: 0.9279 - lr: 0.0081\n", + "171/171 [==============================] - 271s 2s/step - loss: 0.0405 - accuracy: 0.9895 - val_loss: 0.1638 - val_accuracy: 0.9503\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-302-0.9615.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1547\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.15 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.23 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.92 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9583}, \u001b[0m\u001b[0;33mloss{0.1386}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1638\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1585.14 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1312.37 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m272.77 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [51] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m52\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 306)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00865\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 307/312\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1717 - accuracy: 0.9465 - val_loss: 0.3964 - val_accuracy: 0.8942 - lr: 0.0081\n", + "171/171 [==============================] - 120s 661ms/step - loss: 0.1407 - accuracy: 0.9600 - val_loss: 0.1583 - val_accuracy: 0.9519\n", "Epoch 308/312\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1219 - accuracy: 0.9677 - val_loss: 0.2203 - val_accuracy: 0.9247 - lr: 0.0081\n", + "171/171 [==============================] - 259s 2s/step - loss: 0.1160 - accuracy: 0.9629 - val_loss: 0.1770 - val_accuracy: 0.9423\n", "Epoch 309/312\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0779 - accuracy: 0.9822 - val_loss: 0.2918 - val_accuracy: 0.9375 - lr: 0.0081\n", + "171/171 [==============================] - 277s 2s/step - loss: 0.0917 - accuracy: 0.9753 - val_loss: 0.2113 - val_accuracy: 0.9215\n", "Epoch 310/312\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0641 - accuracy: 0.9831 - val_loss: 0.2030 - val_accuracy: 0.9439 - lr: 0.0081\n", + "171/171 [==============================] - 175s 1s/step - loss: 0.0708 - accuracy: 0.9822 - val_loss: 0.2267 - val_accuracy: 0.9311\n", "Epoch 311/312\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0499 - accuracy: 0.9901 - val_loss: 0.4132 - val_accuracy: 0.9215 - lr: 0.0081\n", + "171/171 [==============================] - 240s 1s/step - loss: 0.0501 - accuracy: 0.9883 - val_loss: 0.2306 - val_accuracy: 0.9359\n", "Epoch 312/312\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0532 - accuracy: 0.9892 - val_loss: 0.4055 - val_accuracy: 0.9215 - lr: 0.0081\n", + "171/171 [==============================] - 225s 1s/step - loss: 0.0379 - accuracy: 0.9910 - val_loss: 0.2153 - val_accuracy: 0.9375\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-310-0.9439.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2030\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.64 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.34 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.30 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9519}, \u001b[0m\u001b[0;33mloss{0.1583}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9375\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2153\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.40GB, used: 23.60GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1578.88 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1297.92 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m280.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [52] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m53\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 312)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0086\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 313/318\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1548 - accuracy: 0.9576 - val_loss: 0.1932 - val_accuracy: 0.9471 - lr: 0.0081\n", + "171/171 [==============================] - 86s 457ms/step - loss: 0.1341 - accuracy: 0.9563 - val_loss: 0.1441 - val_accuracy: 0.9487\n", "Epoch 314/318\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1085 - accuracy: 0.9696 - val_loss: 0.3754 - val_accuracy: 0.9151 - lr: 0.0081\n", + "171/171 [==============================] - 258s 2s/step - loss: 0.1034 - accuracy: 0.9670 - val_loss: 0.1463 - val_accuracy: 0.9471\n", "Epoch 315/318\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0671 - accuracy: 0.9829 - val_loss: 0.2502 - val_accuracy: 0.9279 - lr: 0.0081\n", + "171/171 [==============================] - 288s 2s/step - loss: 0.0803 - accuracy: 0.9773 - val_loss: 0.1450 - val_accuracy: 0.9519\n", "Epoch 316/318\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0558 - accuracy: 0.9877 - val_loss: 0.2734 - val_accuracy: 0.9311 - lr: 0.0081\n", + "171/171 [==============================] - 249s 1s/step - loss: 0.0579 - accuracy: 0.9841 - val_loss: 0.1600 - val_accuracy: 0.9551\n", "Epoch 317/318\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0513 - accuracy: 0.9897 - val_loss: 0.3104 - val_accuracy: 0.9359 - lr: 0.0081\n", + "171/171 [==============================] - 234s 1s/step - loss: 0.0431 - accuracy: 0.9895 - val_loss: 0.2077 - val_accuracy: 0.9519\n", "Epoch 318/318\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0411 - accuracy: 0.9921 - val_loss: 0.3359 - val_accuracy: 0.9215 - lr: 0.0081\n", + "171/171 [==============================] - 219s 1s/step - loss: 0.0318 - accuracy: 0.9929 - val_loss: 0.2165 - val_accuracy: 0.9503\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-313-0.9471.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9471\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1933\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.63 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.35 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.29 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9551}, \u001b[0m\u001b[0;33mloss{0.1441}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2165\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1612.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1335.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m277.00 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [53] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m54\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 318)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00855\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 319/324\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1581 - accuracy: 0.9471 - val_loss: 0.1889 - val_accuracy: 0.9375 - lr: 0.0081\n", + "171/171 [==============================] - 261s 1s/step - loss: 0.1396 - accuracy: 0.9570 - val_loss: 0.1638 - val_accuracy: 0.9455\n", "Epoch 320/324\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1100 - accuracy: 0.9684 - val_loss: 0.3070 - val_accuracy: 0.8974 - lr: 0.0081\n", + "171/171 [==============================] - 194s 1s/step - loss: 0.1227 - accuracy: 0.9636 - val_loss: 0.1332 - val_accuracy: 0.9503\n", "Epoch 321/324\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0774 - accuracy: 0.9805 - val_loss: 0.2811 - val_accuracy: 0.9439 - lr: 0.0081\n", + "171/171 [==============================] - 223s 1s/step - loss: 0.0965 - accuracy: 0.9702 - val_loss: 0.3272 - val_accuracy: 0.9375\n", "Epoch 322/324\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0518 - accuracy: 0.9872 - val_loss: 0.3805 - val_accuracy: 0.9247 - lr: 0.0081\n", + "171/171 [==============================] - 218s 1s/step - loss: 0.0714 - accuracy: 0.9797 - val_loss: 0.4061 - val_accuracy: 0.9327\n", "Epoch 323/324\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0633 - accuracy: 0.9882 - val_loss: 0.3095 - val_accuracy: 0.9151 - lr: 0.0081\n", + "171/171 [==============================] - 239s 1s/step - loss: 0.0463 - accuracy: 0.9895 - val_loss: 0.1888 - val_accuracy: 0.9471\n", "Epoch 324/324\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0878 - accuracy: 0.9793 - val_loss: 0.2006 - val_accuracy: 0.9487 - lr: 0.0081\n", + "171/171 [==============================] - 227s 1s/step - loss: 0.0387 - accuracy: 0.9905 - val_loss: 0.2170 - val_accuracy: 0.9487\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-324-0.9487.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9503}, \u001b[0m\u001b[0;33mloss{0.1332}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2006\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2170\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.41GB, used: 23.59GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1645.08 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1363.11 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m281.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [54] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m55\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 324)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0085\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 325/330\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1741 - accuracy: 0.9461 - val_loss: 0.1596 - val_accuracy: 0.9551 - lr: 0.0081\n", + "171/171 [==============================] - 92s 486ms/step - loss: 0.1334 - accuracy: 0.9604 - val_loss: 0.2576 - val_accuracy: 0.9407\n", "Epoch 326/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1117 - accuracy: 0.9658 - val_loss: 0.1735 - val_accuracy: 0.9519 - lr: 0.0081\n", + "171/171 [==============================] - 237s 1s/step - loss: 0.1138 - accuracy: 0.9663 - val_loss: 0.2451 - val_accuracy: 0.9375\n", "Epoch 327/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0769 - accuracy: 0.9815 - val_loss: 0.2129 - val_accuracy: 0.9327 - lr: 0.0081\n", + "171/171 [==============================] - 241s 1s/step - loss: 0.0932 - accuracy: 0.9717 - val_loss: 0.2023 - val_accuracy: 0.9439\n", "Epoch 328/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0653 - accuracy: 0.9855 - val_loss: 0.2309 - val_accuracy: 0.9487 - lr: 0.0081\n", + "171/171 [==============================] - 224s 1s/step - loss: 0.0630 - accuracy: 0.9800 - val_loss: 0.2191 - val_accuracy: 0.9487\n", "Epoch 329/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0497 - accuracy: 0.9891 - val_loss: 0.2585 - val_accuracy: 0.9391 - lr: 0.0081\n", + "171/171 [==============================] - 245s 1s/step - loss: 0.0440 - accuracy: 0.9890 - val_loss: 0.2052 - val_accuracy: 0.9519\n", "Epoch 330/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0463 - accuracy: 0.9921 - val_loss: 0.3118 - val_accuracy: 0.9519 - lr: 0.0081\n", + "171/171 [==============================] - 257s 2s/step - loss: 0.0395 - accuracy: 0.9888 - val_loss: 0.1992 - val_accuracy: 0.9535\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-325-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1596\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.12 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9535}, \u001b[0m\u001b[0;33mloss{0.1992}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1992\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1576.37 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1296.30 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m280.08 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [55] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m56\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 330)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00845\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 331/336\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1570 - accuracy: 0.9494 - val_loss: 0.1638 - val_accuracy: 0.9455 - lr: 0.0081\n", + "171/171 [==============================] - 307s 2s/step - loss: 0.1410 - accuracy: 0.9553 - val_loss: 0.1515 - val_accuracy: 0.9583\n", "Epoch 332/336\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1137 - accuracy: 0.9668 - val_loss: 0.2520 - val_accuracy: 0.9215 - lr: 0.0081\n", + "171/171 [==============================] - 318s 2s/step - loss: 0.1165 - accuracy: 0.9607 - val_loss: 0.1772 - val_accuracy: 0.9519\n", "Epoch 333/336\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0766 - accuracy: 0.9796 - val_loss: 0.3264 - val_accuracy: 0.9231 - lr: 0.0081\n", + "171/171 [==============================] - 223s 1s/step - loss: 0.0913 - accuracy: 0.9729 - val_loss: 0.1288 - val_accuracy: 0.9503\n", "Epoch 334/336\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0701 - accuracy: 0.9839 - val_loss: 0.2616 - val_accuracy: 0.9279 - lr: 0.0081\n", + "171/171 [==============================] - 265s 2s/step - loss: 0.0679 - accuracy: 0.9783 - val_loss: 0.1636 - val_accuracy: 0.9599\n", "Epoch 335/336\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0647 - accuracy: 0.9860 - val_loss: 0.2867 - val_accuracy: 0.9199 - lr: 0.0081\n", + "171/171 [==============================] - 194s 1s/step - loss: 0.0445 - accuracy: 0.9880 - val_loss: 0.1778 - val_accuracy: 0.9535\n", "Epoch 336/336\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0436 - accuracy: 0.9901 - val_loss: 0.4000 - val_accuracy: 0.9183 - lr: 0.0081\n", + "171/171 [==============================] - 317s 2s/step - loss: 0.0352 - accuracy: 0.9922 - val_loss: 0.1977 - val_accuracy: 0.9551\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-331-0.9455.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1638\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m198.55 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.05 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.51 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9599}, \u001b[0m\u001b[0;33mloss{0.1288}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1976\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1926.09 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1625.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m300.47 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [56] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m57\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 336)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0084\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 337/342\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1482 - accuracy: 0.9567 - val_loss: 0.1578 - val_accuracy: 0.9535 - lr: 0.0081\n", + "171/171 [==============================] - 266s 2s/step - loss: 0.1470 - accuracy: 0.9558 - val_loss: 0.1230 - val_accuracy: 0.9519\n", "Epoch 338/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1099 - accuracy: 0.9689 - val_loss: 0.1643 - val_accuracy: 0.9439 - lr: 0.0081\n", + "171/171 [==============================] - 285s 2s/step - loss: 0.1269 - accuracy: 0.9578 - val_loss: 0.1332 - val_accuracy: 0.9583\n", "Epoch 339/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0807 - accuracy: 0.9786 - val_loss: 0.2379 - val_accuracy: 0.9471 - lr: 0.0081\n", + "171/171 [==============================] - 209s 1s/step - loss: 0.0899 - accuracy: 0.9727 - val_loss: 0.1613 - val_accuracy: 0.9535\n", "Epoch 340/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0518 - accuracy: 0.9867 - val_loss: 0.3268 - val_accuracy: 0.9391 - lr: 0.0081\n", + "171/171 [==============================] - 212s 1s/step - loss: 0.0710 - accuracy: 0.9788 - val_loss: 0.1679 - val_accuracy: 0.9567\n", "Epoch 341/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0724 - accuracy: 0.9851 - val_loss: 0.2250 - val_accuracy: 0.9391 - lr: 0.0081\n", + "171/171 [==============================] - 239s 1s/step - loss: 0.0575 - accuracy: 0.9854 - val_loss: 0.1580 - val_accuracy: 0.9567\n", "Epoch 342/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0461 - accuracy: 0.9916 - val_loss: 0.5026 - val_accuracy: 0.9135 - lr: 0.0081\n", + "171/171 [==============================] - 242s 1s/step - loss: 0.0419 - accuracy: 0.9878 - val_loss: 0.1716 - val_accuracy: 0.9567\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-337-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1578\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9583}, \u001b[0m\u001b[0;33mloss{0.1230}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1716\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.41GB, used: 23.59GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1736.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1453.37 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m283.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [57] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m58\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 342)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00835\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 343/348\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1418 - accuracy: 0.9569 - val_loss: 0.1607 - val_accuracy: 0.9583 - lr: 0.0081\n", + "171/171 [==============================] - 219s 1s/step - loss: 0.1276 - accuracy: 0.9604 - val_loss: 0.1472 - val_accuracy: 0.9519\n", "Epoch 344/348\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1113 - accuracy: 0.9689 - val_loss: 0.1962 - val_accuracy: 0.9599 - lr: 0.0081\n", + "171/171 [==============================] - 231s 1s/step - loss: 0.1097 - accuracy: 0.9646 - val_loss: 0.1290 - val_accuracy: 0.9551\n", "Epoch 345/348\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0728 - accuracy: 0.9808 - val_loss: 0.1756 - val_accuracy: 0.9615 - lr: 0.0081\n", + "171/171 [==============================] - 273s 2s/step - loss: 0.0860 - accuracy: 0.9739 - val_loss: 0.1475 - val_accuracy: 0.9487\n", "Epoch 346/348\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0464 - accuracy: 0.9899 - val_loss: 0.2245 - val_accuracy: 0.9471 - lr: 0.0081\n", + "171/171 [==============================] - 255s 1s/step - loss: 0.0627 - accuracy: 0.9827 - val_loss: 0.1352 - val_accuracy: 0.9487\n", "Epoch 347/348\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0465 - accuracy: 0.9908 - val_loss: 0.2125 - val_accuracy: 0.9519 - lr: 0.0081\n", + "171/171 [==============================] - 247s 1s/step - loss: 0.0417 - accuracy: 0.9895 - val_loss: 0.1664 - val_accuracy: 0.9567\n", "Epoch 348/348\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0422 - accuracy: 0.9914 - val_loss: 0.2365 - val_accuracy: 0.9487 - lr: 0.0081\n", + "171/171 [==============================] - 251s 1s/step - loss: 0.0353 - accuracy: 0.9922 - val_loss: 0.1623 - val_accuracy: 0.9583\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-345-0.9615.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1757\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.21 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.37 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9583}, \u001b[0m\u001b[0;33mloss{0.1290}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1623\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.45GB, used: 23.55GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1773.89 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1476.58 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m297.31 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [58] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m59\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 348)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0083\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 349/354\n", - "366/366 [==============================] - ETA: 0s - loss: 0.1575 - accuracy: 0.9512\n", - "Epoch 349: ReduceLROnPlateau reducing learning rate to 0.0077378091402351854.\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1575 - accuracy: 0.9512 - val_loss: 0.1543 - val_accuracy: 0.9487 - lr: 0.0081\n", + "171/171 [==============================] - 266s 1s/step - loss: 0.1462 - accuracy: 0.9561 - val_loss: 0.1564 - val_accuracy: 0.9391\n", "Epoch 350/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1114 - accuracy: 0.9687 - val_loss: 0.2462 - val_accuracy: 0.9423 - lr: 0.0077\n", + "171/171 [==============================] - 215s 1s/step - loss: 0.1119 - accuracy: 0.9653 - val_loss: 0.1736 - val_accuracy: 0.9439\n", "Epoch 351/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0683 - accuracy: 0.9815 - val_loss: 0.3381 - val_accuracy: 0.9183 - lr: 0.0077\n", + "171/171 [==============================] - 217s 1s/step - loss: 0.0925 - accuracy: 0.9719 - val_loss: 0.1559 - val_accuracy: 0.9455\n", "Epoch 352/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0571 - accuracy: 0.9863 - val_loss: 0.3063 - val_accuracy: 0.9231 - lr: 0.0077\n", + "171/171 [==============================] - 237s 1s/step - loss: 0.0726 - accuracy: 0.9783 - val_loss: 0.1677 - val_accuracy: 0.9471\n", "Epoch 353/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0440 - accuracy: 0.9906 - val_loss: 0.2627 - val_accuracy: 0.9439 - lr: 0.0077\n", + "171/171 [==============================] - 225s 1s/step - loss: 0.0489 - accuracy: 0.9871 - val_loss: 0.1805 - val_accuracy: 0.9455\n", "Epoch 354/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0338 - accuracy: 0.9942 - val_loss: 0.2186 - val_accuracy: 0.9503 - lr: 0.0077\n", + "171/171 [==============================] - 280s 2s/step - loss: 0.0374 - accuracy: 0.9910 - val_loss: 0.1817 - val_accuracy: 0.9503\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-354-0.9503.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9503}, \u001b[0m\u001b[0;33mloss{0.1559}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2187\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.34 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.26 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.08 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1816\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.47GB, used: 23.53GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1767.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1441.63 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m325.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [59] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m60\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 354)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00825\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 355/360\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1696 - accuracy: 0.9492 - val_loss: 0.1551 - val_accuracy: 0.9551 - lr: 0.0077\n", + "171/171 [==============================] - 199s 1s/step - loss: 0.1174 - accuracy: 0.9685 - val_loss: 0.1524 - val_accuracy: 0.9455\n", "Epoch 356/360\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1082 - accuracy: 0.9678 - val_loss: 0.2374 - val_accuracy: 0.9407 - lr: 0.0077\n", + "171/171 [==============================] - 233s 1s/step - loss: 0.1006 - accuracy: 0.9705 - val_loss: 0.1531 - val_accuracy: 0.9535\n", "Epoch 357/360\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0745 - accuracy: 0.9819 - val_loss: 0.5832 - val_accuracy: 0.8862 - lr: 0.0077\n", + "171/171 [==============================] - 260s 2s/step - loss: 0.0768 - accuracy: 0.9775 - val_loss: 0.2500 - val_accuracy: 0.9487\n", "Epoch 358/360\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0726 - accuracy: 0.9843 - val_loss: 0.1913 - val_accuracy: 0.9407 - lr: 0.0077\n", + "171/171 [==============================] - 226s 1s/step - loss: 0.0584 - accuracy: 0.9834 - val_loss: 0.1843 - val_accuracy: 0.9423\n", "Epoch 359/360\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0523 - accuracy: 0.9873 - val_loss: 0.2649 - val_accuracy: 0.9359 - lr: 0.0077\n", + "171/171 [==============================] - 243s 1s/step - loss: 0.0386 - accuracy: 0.9890 - val_loss: 0.2104 - val_accuracy: 0.9519\n", "Epoch 360/360\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0378 - accuracy: 0.9926 - val_loss: 0.2061 - val_accuracy: 0.9311 - lr: 0.0077\n", + "171/171 [==============================] - 220s 1s/step - loss: 0.0329 - accuracy: 0.9924 - val_loss: 0.1966 - val_accuracy: 0.9551\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-355-0.9551.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9551}, \u001b[0m\u001b[0;33mloss{0.1524}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.53 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.85 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1966\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.44GB, used: 23.56GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1686.53 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1383.39 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m303.14 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [60] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m61\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 360)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0082\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 361/366\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1466 - accuracy: 0.9538 - val_loss: 0.1534 - val_accuracy: 0.9567 - lr: 0.0077\n", + "171/171 [==============================] - 103s 555ms/step - loss: 0.1404 - accuracy: 0.9583 - val_loss: 0.1495 - val_accuracy: 0.9535\n", "Epoch 362/366\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1045 - accuracy: 0.9726 - val_loss: 0.3452 - val_accuracy: 0.9199 - lr: 0.0077\n", + "171/171 [==============================] - 228s 1s/step - loss: 0.1159 - accuracy: 0.9597 - val_loss: 0.2138 - val_accuracy: 0.9423\n", "Epoch 363/366\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0720 - accuracy: 0.9822 - val_loss: 0.2492 - val_accuracy: 0.9343 - lr: 0.0077\n", + "171/171 [==============================] - 261s 2s/step - loss: 0.0803 - accuracy: 0.9778 - val_loss: 0.1589 - val_accuracy: 0.9503\n", "Epoch 364/366\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0618 - accuracy: 0.9846 - val_loss: 0.2676 - val_accuracy: 0.9407 - lr: 0.0077\n", + "171/171 [==============================] - 274s 2s/step - loss: 0.0553 - accuracy: 0.9846 - val_loss: 0.3110 - val_accuracy: 0.9391\n", "Epoch 365/366\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0366 - accuracy: 0.9942 - val_loss: 0.2527 - val_accuracy: 0.9519 - lr: 0.0077\n", + "171/171 [==============================] - 237s 1s/step - loss: 0.0366 - accuracy: 0.9905 - val_loss: 0.2016 - val_accuracy: 0.9439\n", "Epoch 366/366\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0360 - accuracy: 0.9937 - val_loss: 0.6950 - val_accuracy: 0.9231 - lr: 0.0077\n", + "171/171 [==============================] - 224s 1s/step - loss: 0.0333 - accuracy: 0.9919 - val_loss: 0.2743 - val_accuracy: 0.9439\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-361-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1534\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.63 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9535}, \u001b[0m\u001b[0;33mloss{0.1495}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2743\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1623.44 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1328.25 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m295.19 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [61] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m62\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 366)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00815\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 367/372\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1500 - accuracy: 0.9557 - val_loss: 0.2041 - val_accuracy: 0.9439 - lr: 0.0077\n", + "171/171 [==============================] - 270s 2s/step - loss: 0.1423 - accuracy: 0.9524 - val_loss: 0.1618 - val_accuracy: 0.9343\n", "Epoch 368/372\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1099 - accuracy: 0.9697 - val_loss: 0.2217 - val_accuracy: 0.9295 - lr: 0.0077\n", + "171/171 [==============================] - 262s 2s/step - loss: 0.1039 - accuracy: 0.9644 - val_loss: 0.1624 - val_accuracy: 0.9519\n", "Epoch 369/372\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0799 - accuracy: 0.9776 - val_loss: 0.3372 - val_accuracy: 0.9263 - lr: 0.0077\n", + "171/171 [==============================] - 271s 2s/step - loss: 0.0750 - accuracy: 0.9763 - val_loss: 0.1628 - val_accuracy: 0.9487\n", "Epoch 370/372\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0603 - accuracy: 0.9882 - val_loss: 0.2544 - val_accuracy: 0.9471 - lr: 0.0077\n", + "171/171 [==============================] - 249s 1s/step - loss: 0.0559 - accuracy: 0.9824 - val_loss: 0.2118 - val_accuracy: 0.9439\n", "Epoch 371/372\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0507 - accuracy: 0.9908 - val_loss: 0.2169 - val_accuracy: 0.9567 - lr: 0.0077\n", + "171/171 [==============================] - 267s 2s/step - loss: 0.0409 - accuracy: 0.9868 - val_loss: 0.2344 - val_accuracy: 0.9327\n", "Epoch 372/372\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0412 - accuracy: 0.9923 - val_loss: 0.1692 - val_accuracy: 0.9535 - lr: 0.0077\n", + "171/171 [==============================] - 228s 1s/step - loss: 0.0342 - accuracy: 0.9932 - val_loss: 0.2460 - val_accuracy: 0.9375\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-371-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2170\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9519}, \u001b[0m\u001b[0;33mloss{0.1618}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9375\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2461\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1856.45 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1548.67 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m307.78 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [62] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m63\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 372)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.0081\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 373/378\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1836 - accuracy: 0.9461 - val_loss: 0.2396 - val_accuracy: 0.9135 - lr: 0.0077\n", + "171/171 [==============================] - 218s 1s/step - loss: 0.1370 - accuracy: 0.9583 - val_loss: 0.4882 - val_accuracy: 0.7276\n", "Epoch 374/378\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1010 - accuracy: 0.9735 - val_loss: 0.3093 - val_accuracy: 0.9103 - lr: 0.0077\n", + "171/171 [==============================] - 237s 1s/step - loss: 0.1137 - accuracy: 0.9619 - val_loss: 0.1708 - val_accuracy: 0.9439\n", "Epoch 375/378\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0798 - accuracy: 0.9814 - val_loss: 0.2368 - val_accuracy: 0.9375 - lr: 0.0077\n", + "171/171 [==============================] - 211s 1s/step - loss: 0.0891 - accuracy: 0.9712 - val_loss: 0.1674 - val_accuracy: 0.9503\n", "Epoch 376/378\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0614 - accuracy: 0.9855 - val_loss: 0.2952 - val_accuracy: 0.9279 - lr: 0.0077\n", + "171/171 [==============================] - 207s 1s/step - loss: 0.0581 - accuracy: 0.9839 - val_loss: 0.2040 - val_accuracy: 0.9503\n", "Epoch 377/378\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0424 - accuracy: 0.9916 - val_loss: 0.2488 - val_accuracy: 0.9519 - lr: 0.0077\n", + "171/171 [==============================] - 206s 1s/step - loss: 0.0459 - accuracy: 0.9863 - val_loss: 0.2020 - val_accuracy: 0.9535\n", "Epoch 378/378\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0432 - accuracy: 0.9942 - val_loss: 0.2553 - val_accuracy: 0.9471 - lr: 0.0077\n", + "171/171 [==============================] - 235s 1s/step - loss: 0.0324 - accuracy: 0.9924 - val_loss: 0.1975 - val_accuracy: 0.9535\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-377-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2488\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m209.74 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.71 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m87.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9535}, \u001b[0m\u001b[0;33mloss{0.1674}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1975\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.43GB, used: 23.57GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1625.21 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1314.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m310.38 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [63] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m64\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 378)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33m└───Shuffling data...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00805\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 379/384\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1600 - accuracy: 0.9542 - val_loss: 0.2439 - val_accuracy: 0.9471 - lr: 0.0077\n", + "171/171 [==============================] - 262s 1s/step - loss: 0.1395 - accuracy: 0.9563 - val_loss: 0.1569 - val_accuracy: 0.9487\n", "Epoch 380/384\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1040 - accuracy: 0.9721 - val_loss: 0.2251 - val_accuracy: 0.9375 - lr: 0.0077\n", + "171/171 [==============================] - 226s 1s/step - loss: 0.0992 - accuracy: 0.9670 - val_loss: 0.1585 - val_accuracy: 0.9407\n", "Epoch 381/384\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0712 - accuracy: 0.9824 - val_loss: 0.2614 - val_accuracy: 0.9391 - lr: 0.0077\n", + "171/171 [==============================] - 206s 1s/step - loss: 0.0757 - accuracy: 0.9763 - val_loss: 0.1895 - val_accuracy: 0.9503\n", "Epoch 382/384\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0530 - accuracy: 0.9875 - val_loss: 0.2840 - val_accuracy: 0.9327 - lr: 0.0077\n", + "171/171 [==============================] - 249s 1s/step - loss: 0.0526 - accuracy: 0.9849 - val_loss: 0.2179 - val_accuracy: 0.9407\n", "Epoch 383/384\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0516 - accuracy: 0.9884 - val_loss: 0.2637 - val_accuracy: 0.9455 - lr: 0.0077\n", + "171/171 [==============================] - 230s 1s/step - loss: 0.0345 - accuracy: 0.9915 - val_loss: 0.2255 - val_accuracy: 0.9407\n", "Epoch 384/384\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0479 - accuracy: 0.9897 - val_loss: 0.3878 - val_accuracy: 0.9327 - lr: 0.0077\n", + "171/171 [==============================] - 216s 1s/step - loss: 0.0272 - accuracy: 0.9922 - val_loss: 0.2132 - val_accuracy: 0.9503\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-379-0.9471.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9471\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m212.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.86 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m89.11 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9503}, \u001b[0m\u001b[0;33mloss{0.1569}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2132\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.42GB, used: 23.58GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1714.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1390.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m324.18 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [64] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m65\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 384)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.008\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 385/390\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1612 - accuracy: 0.9502 - val_loss: 0.1930 - val_accuracy: 0.9503 - lr: 0.0077\n", + "171/171 [==============================] - 180s 1s/step - loss: 0.1455 - accuracy: 0.9568 - val_loss: 0.1833 - val_accuracy: 0.9487\n", "Epoch 386/390\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1152 - accuracy: 0.9675 - val_loss: 0.2259 - val_accuracy: 0.9359 - lr: 0.0077\n", + "171/171 [==============================] - 275s 2s/step - loss: 0.1081 - accuracy: 0.9666 - val_loss: 0.1413 - val_accuracy: 0.9503\n", "Epoch 387/390\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0787 - accuracy: 0.9815 - val_loss: 0.3067 - val_accuracy: 0.9311 - lr: 0.0077\n", + "171/171 [==============================] - 249s 1s/step - loss: 0.0780 - accuracy: 0.9758 - val_loss: 0.2276 - val_accuracy: 0.9439\n", "Epoch 388/390\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0563 - accuracy: 0.9870 - val_loss: 0.1961 - val_accuracy: 0.9391 - lr: 0.0077\n", + "171/171 [==============================] - 267s 2s/step - loss: 0.0583 - accuracy: 0.9836 - val_loss: 0.2135 - val_accuracy: 0.9471\n", "Epoch 389/390\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0505 - accuracy: 0.9884 - val_loss: 0.1882 - val_accuracy: 0.9519 - lr: 0.0077\n", + "171/171 [==============================] - 223s 1s/step - loss: 0.0455 - accuracy: 0.9863 - val_loss: 0.1849 - val_accuracy: 0.9471\n", "Epoch 390/390\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0429 - accuracy: 0.9913 - val_loss: 0.2171 - val_accuracy: 0.9471 - lr: 0.0077\n", + "171/171 [==============================] - 244s 1s/step - loss: 0.0328 - accuracy: 0.9919 - val_loss: 0.1858 - val_accuracy: 0.9487\n", "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-389-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1882\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m206.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.13 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m87.46 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mNot loading weights\u001b[0m\u001b[0;32m[\u001b[0m\u001b[0;94mBSR:\u001b[0m\u001b[0;33macc{0.9503}, \u001b[0m\u001b[0;33mloss{0.1413}\u001b[0m\u001b[0;95m|\u001b[0m\u001b[0;94mBTR:\u001b[0m\u001b[0;32macc{0.9615}, loss{0.1198}]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1858\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9615384340. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1197553799. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 0.46GB, used: 23.54GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1759.36 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m1439.31 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m320.05 \u001b[0m\u001b[0;36msec\u001b[0m\n", "\u001b[0;36m<---------------------------------------|Epoch [65] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m66\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 390)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.00795\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", "Epoch 391/396\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1509 - accuracy: 0.9557 - val_loss: 0.2093 - val_accuracy: 0.9391 - lr: 0.0077\n", + "171/171 [==============================] - 155s 867ms/step - loss: 0.1209 - accuracy: 0.9631 - val_loss: 0.1387 - val_accuracy: 0.9471\n", "Epoch 392/396\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.0979 - accuracy: 0.9706 - val_loss: 0.1581 - val_accuracy: 0.9551 - lr: 0.0077\n", + "171/171 [==============================] - 227s 1s/step - loss: 0.0984 - accuracy: 0.9685 - val_loss: 0.1890 - val_accuracy: 0.9519\n", "Epoch 393/396\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0607 - accuracy: 0.9849 - val_loss: 0.1833 - val_accuracy: 0.9455 - lr: 0.0077\n", + "171/171 [==============================] - 230s 1s/step - loss: 0.0732 - accuracy: 0.9802 - val_loss: 0.1722 - val_accuracy: 0.9535\n", "Epoch 394/396\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0485 - accuracy: 0.9913 - val_loss: 0.1769 - val_accuracy: 0.9599 - lr: 0.0077\n", + "171/171 [==============================] - 261s 2s/step - loss: 0.0506 - accuracy: 0.9868 - val_loss: 0.1998 - val_accuracy: 0.9535\n", "Epoch 395/396\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0402 - accuracy: 0.9891 - val_loss: 0.1870 - val_accuracy: 0.9503 - lr: 0.0077\n", - "Epoch 396/396\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0425 - accuracy: 0.9933 - val_loss: 0.2909 - val_accuracy: 0.9391 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-394-0.9599.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9599\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1769\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m208.67 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m85.45 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [66] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m67\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 396)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 397/402\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1518 - accuracy: 0.9545 - val_loss: 0.2655 - val_accuracy: 0.9151 - lr: 0.0077\n", - "Epoch 398/402\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0974 - accuracy: 0.9731 - val_loss: 0.2308 - val_accuracy: 0.9487 - lr: 0.0077\n", - "Epoch 399/402\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0675 - accuracy: 0.9834 - val_loss: 0.2251 - val_accuracy: 0.9311 - lr: 0.0077\n", - "Epoch 400/402\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0508 - accuracy: 0.9885 - val_loss: 0.2065 - val_accuracy: 0.9503 - lr: 0.0077\n", - "Epoch 401/402\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0430 - accuracy: 0.9899 - val_loss: 0.3678 - val_accuracy: 0.9343 - lr: 0.0077\n", - "Epoch 402/402\n", - "366/366 [==============================] - ETA: 0s - loss: 0.0415 - accuracy: 0.9925\n", - "Epoch 402: ReduceLROnPlateau reducing learning rate to 0.007350918860174715.\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0415 - accuracy: 0.9925 - val_loss: 0.2715 - val_accuracy: 0.9343 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-400-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2064\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m208.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m87.18 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [67] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m68\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 402)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 403/408\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1613 - accuracy: 0.9552 - val_loss: 0.2115 - val_accuracy: 0.9311 - lr: 0.0074\n", - "Epoch 404/408\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1035 - accuracy: 0.9730 - val_loss: 0.2326 - val_accuracy: 0.9375 - lr: 0.0074\n", - "Epoch 405/408\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0708 - accuracy: 0.9827 - val_loss: 0.3043 - val_accuracy: 0.9375 - lr: 0.0074\n", - "Epoch 406/408\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0662 - accuracy: 0.9892 - val_loss: 0.2143 - val_accuracy: 0.9519 - lr: 0.0074\n", - "Epoch 407/408\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0393 - accuracy: 0.9928 - val_loss: 0.2337 - val_accuracy: 0.9439 - lr: 0.0074\n", - "Epoch 408/408\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0357 - accuracy: 0.9928 - val_loss: 0.6715 - val_accuracy: 0.8878 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-406-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2143\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m210.14 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m88.33 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [68] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m69\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 408)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 409/414\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1612 - accuracy: 0.9507 - val_loss: 0.2437 - val_accuracy: 0.9327 - lr: 0.0074\n", - "Epoch 410/414\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1088 - accuracy: 0.9678 - val_loss: 0.2919 - val_accuracy: 0.9183 - lr: 0.0074\n", - "Epoch 411/414\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0745 - accuracy: 0.9822 - val_loss: 0.1982 - val_accuracy: 0.9503 - lr: 0.0074\n", - "Epoch 412/414\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0586 - accuracy: 0.9870 - val_loss: 0.3077 - val_accuracy: 0.9167 - lr: 0.0074\n", - "Epoch 413/414\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0467 - accuracy: 0.9909 - val_loss: 0.2648 - val_accuracy: 0.9407 - lr: 0.0074\n", - "Epoch 414/414\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0309 - accuracy: 0.9950 - val_loss: 0.2886 - val_accuracy: 0.9407 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-411-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1982\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m212.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.89 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m90.14 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [69] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m70\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 414)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 415/420\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1477 - accuracy: 0.9550 - val_loss: 0.1990 - val_accuracy: 0.9487 - lr: 0.0074\n", - "Epoch 416/420\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0889 - accuracy: 0.9761 - val_loss: 0.2268 - val_accuracy: 0.9471 - lr: 0.0074\n", - "Epoch 417/420\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0637 - accuracy: 0.9868 - val_loss: 0.2459 - val_accuracy: 0.9503 - lr: 0.0074\n", - "Epoch 418/420\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0526 - accuracy: 0.9868 - val_loss: 0.3545 - val_accuracy: 0.9183 - lr: 0.0074\n", - "Epoch 419/420\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0463 - accuracy: 0.9911 - val_loss: 0.1760 - val_accuracy: 0.9391 - lr: 0.0074\n", - "Epoch 420/420\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0638 - accuracy: 0.9909 - val_loss: 0.1988 - val_accuracy: 0.9423 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-417-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2459\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m223.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m126.71 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m96.88 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [70] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m71\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 420)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 421/426\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1391 - accuracy: 0.9577 - val_loss: 0.1691 - val_accuracy: 0.9535 - lr: 0.0074\n", - "Epoch 422/426\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0912 - accuracy: 0.9752 - val_loss: 0.1319 - val_accuracy: 0.9647 - lr: 0.0074\n", - "Epoch 423/426\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0676 - accuracy: 0.9814 - val_loss: 0.1885 - val_accuracy: 0.9535 - lr: 0.0074\n", - "Epoch 424/426\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.0538 - accuracy: 0.9870 - val_loss: 0.1716 - val_accuracy: 0.9631 - lr: 0.0074\n", - "Epoch 425/426\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.0457 - accuracy: 0.9896 - val_loss: 0.3328 - val_accuracy: 0.9087 - lr: 0.0074\n", - "Epoch 426/426\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0359 - accuracy: 0.9933 - val_loss: 0.2633 - val_accuracy: 0.9343 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-422-0.9647.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9647\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1318\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1480352581 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1318498403\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m212.01 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m125.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m86.17 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [71] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m72\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 426)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 427/432\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.1529 - accuracy: 0.9543 - val_loss: 0.1720 - val_accuracy: 0.9519 - lr: 0.0074\n", - "Epoch 428/432\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1011 - accuracy: 0.9704 - val_loss: 0.1741 - val_accuracy: 0.9455 - lr: 0.0074\n", - "Epoch 429/432\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0712 - accuracy: 0.9841 - val_loss: 0.2622 - val_accuracy: 0.9391 - lr: 0.0074\n", - "Epoch 430/432\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0601 - accuracy: 0.9853 - val_loss: 0.2211 - val_accuracy: 0.9375 - lr: 0.0074\n", - "Epoch 431/432\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0494 - accuracy: 0.9875 - val_loss: 0.3935 - val_accuracy: 0.9103 - lr: 0.0074\n", - "Epoch 432/432\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0403 - accuracy: 0.9911 - val_loss: 0.4013 - val_accuracy: 0.9231 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-427-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1720\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m220.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m126.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.21 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [72] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m73\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 432)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 433/438\n", - "366/366 [==============================] - 25s 62ms/step - loss: 0.1477 - accuracy: 0.9530 - val_loss: 0.2880 - val_accuracy: 0.8894 - lr: 0.0074\n", - "Epoch 434/438\n", - "366/366 [==============================] - 22s 60ms/step - loss: 0.0961 - accuracy: 0.9733 - val_loss: 0.2094 - val_accuracy: 0.9391 - lr: 0.0074\n", - "Epoch 435/438\n", - "366/366 [==============================] - 22s 60ms/step - loss: 0.0727 - accuracy: 0.9800 - val_loss: 0.2153 - val_accuracy: 0.9471 - lr: 0.0074\n", - "Epoch 436/438\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.0499 - accuracy: 0.9880 - val_loss: 0.3235 - val_accuracy: 0.9359 - lr: 0.0074\n", - "Epoch 437/438\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0437 - accuracy: 0.9894 - val_loss: 0.3569 - val_accuracy: 0.9407 - lr: 0.0074\n", - "Epoch 438/438\n", - "366/366 [==============================] - 22s 59ms/step - loss: 0.0361 - accuracy: 0.9937 - val_loss: 0.2279 - val_accuracy: 0.9503 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-438-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2280\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m227.76 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m133.41 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.35 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [73] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m74\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 438)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 439/444\n", - "366/366 [==============================] - 23s 59ms/step - loss: 0.1556 - accuracy: 0.9507 - val_loss: 0.1537 - val_accuracy: 0.9535 - lr: 0.0074\n", - "Epoch 440/444\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.0926 - accuracy: 0.9749 - val_loss: 0.3155 - val_accuracy: 0.9263 - lr: 0.0074\n", - "Epoch 441/444\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0644 - accuracy: 0.9849 - val_loss: 0.2972 - val_accuracy: 0.9455 - lr: 0.0074\n", - "Epoch 442/444\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0520 - accuracy: 0.9879 - val_loss: 0.2176 - val_accuracy: 0.9471 - lr: 0.0074\n", - "Epoch 443/444\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0369 - accuracy: 0.9928 - val_loss: 0.3897 - val_accuracy: 0.9167 - lr: 0.0074\n", - "Epoch 444/444\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0313 - accuracy: 0.9952 - val_loss: 0.3425 - val_accuracy: 0.9471 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-439-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1537\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m214.08 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.92 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [74] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m75\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 444)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 445/450\n", - "366/366 [==============================] - 23s 60ms/step - loss: 0.1483 - accuracy: 0.9569 - val_loss: 0.1857 - val_accuracy: 0.9407 - lr: 0.0074\n", - "Epoch 446/450\n", - "366/366 [==============================] - 22s 59ms/step - loss: 0.0976 - accuracy: 0.9740 - val_loss: 0.2764 - val_accuracy: 0.9263 - lr: 0.0074\n", - "Epoch 447/450\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0820 - accuracy: 0.9815 - val_loss: 0.1420 - val_accuracy: 0.9583 - lr: 0.0074\n", - "Epoch 448/450\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0496 - accuracy: 0.9902 - val_loss: 0.3020 - val_accuracy: 0.9455 - lr: 0.0074\n", - "Epoch 449/450\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0378 - accuracy: 0.9925 - val_loss: 0.2155 - val_accuracy: 0.9455 - lr: 0.0074\n", - "Epoch 450/450\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.0373 - accuracy: 0.9911 - val_loss: 0.2442 - val_accuracy: 0.9327 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-447-0.9583.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1420\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m221.99 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m127.43 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.56 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [75] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m76\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 450)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 451/456\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1483 - accuracy: 0.9521 - val_loss: 0.1384 - val_accuracy: 0.9583 - lr: 0.0074\n", - "Epoch 452/456\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0964 - accuracy: 0.9737 - val_loss: 0.1451 - val_accuracy: 0.9503 - lr: 0.0074\n", - "Epoch 453/456\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0675 - accuracy: 0.9839 - val_loss: 0.2225 - val_accuracy: 0.9407 - lr: 0.0074\n", - "Epoch 454/456\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0704 - accuracy: 0.9831 - val_loss: 0.2923 - val_accuracy: 0.9375 - lr: 0.0074\n", - "Epoch 455/456\n", - "365/366 [============================>.] - ETA: 0s - loss: 0.0488 - accuracy: 0.9906\n", - "Epoch 455: ReduceLROnPlateau reducing learning rate to 0.006983372895047068.\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0488 - accuracy: 0.9906 - val_loss: 0.1657 - val_accuracy: 0.9487 - lr: 0.0074\n", - "Epoch 456/456\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0350 - accuracy: 0.9935 - val_loss: 0.3884 - val_accuracy: 0.9071 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-451-0.9583.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1384\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m211.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.21 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m90.33 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [76] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m77\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 456)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 457/462\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1371 - accuracy: 0.9569 - val_loss: 0.2017 - val_accuracy: 0.9279 - lr: 0.0070\n", - "Epoch 458/462\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0934 - accuracy: 0.9711 - val_loss: 0.2961 - val_accuracy: 0.9038 - lr: 0.0070\n", - "Epoch 459/462\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0704 - accuracy: 0.9814 - val_loss: 0.3361 - val_accuracy: 0.9327 - lr: 0.0070\n", - "Epoch 460/462\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0497 - accuracy: 0.9894 - val_loss: 0.2803 - val_accuracy: 0.9327 - lr: 0.0070\n", - "Epoch 461/462\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0411 - accuracy: 0.9911 - val_loss: 0.4175 - val_accuracy: 0.9247 - lr: 0.0070\n", - "Epoch 462/462\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0563 - accuracy: 0.9896 - val_loss: 0.3733 - val_accuracy: 0.9167 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-459-0.9327.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9327\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.3361\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m203.53 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.72 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [77] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m78\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 462)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 463/468\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1401 - accuracy: 0.9557 - val_loss: 0.1863 - val_accuracy: 0.9375 - lr: 0.0070\n", - "Epoch 464/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0952 - accuracy: 0.9735 - val_loss: 0.1739 - val_accuracy: 0.9455 - lr: 0.0070\n", - "Epoch 465/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0685 - accuracy: 0.9832 - val_loss: 0.1786 - val_accuracy: 0.9519 - lr: 0.0070\n", - "Epoch 466/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0568 - accuracy: 0.9867 - val_loss: 0.1787 - val_accuracy: 0.9487 - lr: 0.0070\n", - "Epoch 467/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0477 - accuracy: 0.9913 - val_loss: 0.2478 - val_accuracy: 0.9343 - lr: 0.0070\n", - "Epoch 468/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0356 - accuracy: 0.9937 - val_loss: 0.1796 - val_accuracy: 0.9455 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-465-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1786\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m204.33 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.47 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.86 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [78] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m79\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 468)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 469/474\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1396 - accuracy: 0.9588 - val_loss: 0.2554 - val_accuracy: 0.9359 - lr: 0.0070\n", - "Epoch 470/474\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0863 - accuracy: 0.9766 - val_loss: 0.4866 - val_accuracy: 0.9215 - lr: 0.0070\n", - "Epoch 471/474\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0702 - accuracy: 0.9839 - val_loss: 0.1728 - val_accuracy: 0.9599 - lr: 0.0070\n", - "Epoch 472/474\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0476 - accuracy: 0.9887 - val_loss: 0.3812 - val_accuracy: 0.9311 - lr: 0.0070\n", - "Epoch 473/474\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0330 - accuracy: 0.9947 - val_loss: 0.3739 - val_accuracy: 0.9407 - lr: 0.0070\n", - "Epoch 474/474\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0354 - accuracy: 0.9933 - val_loss: 0.5377 - val_accuracy: 0.9231 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-471-0.9599.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9599\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1728\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m205.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m83.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [79] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m80\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 474)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 475/480\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1436 - accuracy: 0.9569 - val_loss: 0.1854 - val_accuracy: 0.9439 - lr: 0.0070\n", - "Epoch 476/480\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0988 - accuracy: 0.9721 - val_loss: 0.2520 - val_accuracy: 0.9167 - lr: 0.0070\n", - "Epoch 477/480\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0629 - accuracy: 0.9841 - val_loss: 0.1861 - val_accuracy: 0.9455 - lr: 0.0070\n", - "Epoch 478/480\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0490 - accuracy: 0.9899 - val_loss: 0.3253 - val_accuracy: 0.9071 - lr: 0.0070\n", - "Epoch 479/480\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0401 - accuracy: 0.9916 - val_loss: 0.3218 - val_accuracy: 0.9439 - lr: 0.0070\n", - "Epoch 480/480\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0422 - accuracy: 0.9916 - val_loss: 0.2117 - val_accuracy: 0.9535 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-480-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2117\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m205.76 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.27 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m83.49 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [80] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m81\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 480)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 481/486\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1519 - accuracy: 0.9560 - val_loss: 0.1911 - val_accuracy: 0.9375 - lr: 0.0070\n", - "Epoch 482/486\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0898 - accuracy: 0.9771 - val_loss: 0.1612 - val_accuracy: 0.9535 - lr: 0.0070\n", - "Epoch 483/486\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0641 - accuracy: 0.9867 - val_loss: 0.4178 - val_accuracy: 0.8798 - lr: 0.0070\n", - "Epoch 484/486\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0374 - accuracy: 0.9920 - val_loss: 0.3697 - val_accuracy: 0.9167 - lr: 0.0070\n", - "Epoch 485/486\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0316 - accuracy: 0.9938 - val_loss: 0.5891 - val_accuracy: 0.9087 - lr: 0.0070\n", - "Epoch 486/486\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0327 - accuracy: 0.9952 - val_loss: 0.3991 - val_accuracy: 0.9087 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-482-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1612\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m205.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.31 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m84.31 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [81] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m82\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 486)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 487/492\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1423 - accuracy: 0.9548 - val_loss: 0.2058 - val_accuracy: 0.9295 - lr: 0.0070\n", - "Epoch 488/492\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0937 - accuracy: 0.9730 - val_loss: 0.2295 - val_accuracy: 0.9279 - lr: 0.0070\n", - "Epoch 489/492\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0712 - accuracy: 0.9829 - val_loss: 0.3317 - val_accuracy: 0.9295 - lr: 0.0070\n", - "Epoch 490/492\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0450 - accuracy: 0.9901 - val_loss: 0.7250 - val_accuracy: 0.8958 - lr: 0.0070\n", - "Epoch 491/492\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0351 - accuracy: 0.9906 - val_loss: 0.1926 - val_accuracy: 0.9407 - lr: 0.0070\n", - "Epoch 492/492\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0265 - accuracy: 0.9964 - val_loss: 0.2211 - val_accuracy: 0.9455 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-492-0.9455.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2211\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m206.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.81 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m84.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [82] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m83\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 492)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 493/498\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1584 - accuracy: 0.9555 - val_loss: 0.1909 - val_accuracy: 0.9359 - lr: 0.0070\n", - "Epoch 494/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0916 - accuracy: 0.9750 - val_loss: 0.3194 - val_accuracy: 0.9247 - lr: 0.0070\n", - "Epoch 495/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0643 - accuracy: 0.9834 - val_loss: 0.3101 - val_accuracy: 0.9279 - lr: 0.0070\n", - "Epoch 496/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0458 - accuracy: 0.9887 - val_loss: 0.3190 - val_accuracy: 0.9295 - lr: 0.0070\n", - "Epoch 497/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0432 - accuracy: 0.9913 - val_loss: 0.1926 - val_accuracy: 0.9471 - lr: 0.0070\n", - "Epoch 498/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0718 - accuracy: 0.9856 - val_loss: 0.2387 - val_accuracy: 0.9295 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-497-0.9471.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9471\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1926\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m209.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m85.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [83] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m84\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 498)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m02_d29-h19_m38_s22\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 499/504\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1609 - accuracy: 0.9528 - val_loss: 0.1881 - val_accuracy: 0.9295 - lr: 0.0070\n", - "Epoch 500/504\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1053 - accuracy: 0.9723 - val_loss: 0.1571 - val_accuracy: 0.9503 - lr: 0.0070\n", - "Epoch 501/504\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0755 - accuracy: 0.9817 - val_loss: 0.2829 - val_accuracy: 0.9231 - lr: 0.0070\n", - "Epoch 502/504\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0510 - accuracy: 0.9877 - val_loss: 0.2969 - val_accuracy: 0.9359 - lr: 0.0070\n", - "Epoch 503/504\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0390 - accuracy: 0.9918 - val_loss: 0.2665 - val_accuracy: 0.9439 - lr: 0.0070\n", - "Epoch 504/504\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0344 - accuracy: 0.9913 - val_loss: 0.4348 - val_accuracy: 0.9423 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-500-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1571\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m217.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.42 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [84] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m85\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 504)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 505/510\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1417 - accuracy: 0.9577 - val_loss: 0.1738 - val_accuracy: 0.9359 - lr: 0.0070\n", - "Epoch 506/510\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0995 - accuracy: 0.9719 - val_loss: 0.1508 - val_accuracy: 0.9551 - lr: 0.0070\n", - "Epoch 507/510\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0641 - accuracy: 0.9839 - val_loss: 0.1598 - val_accuracy: 0.9551 - lr: 0.0070\n", - "Epoch 508/510\n", - "365/366 [============================>.] - ETA: 0s - loss: 0.0435 - accuracy: 0.9906\n", - "Epoch 508: ReduceLROnPlateau reducing learning rate to 0.006634204206056892.\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0435 - accuracy: 0.9906 - val_loss: 0.2226 - val_accuracy: 0.9439 - lr: 0.0070\n", - "Epoch 509/510\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0413 - accuracy: 0.9902 - val_loss: 0.3162 - val_accuracy: 0.9407 - lr: 0.0066\n", - "Epoch 510/510\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0311 - accuracy: 0.9932 - val_loss: 0.2552 - val_accuracy: 0.9423 - lr: 0.0066\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-506-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1508\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m207.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m85.29 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [85] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m86\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 510)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 511/516\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1312 - accuracy: 0.9596 - val_loss: 0.2344 - val_accuracy: 0.9183 - lr: 0.0066\n", - "Epoch 512/516\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0930 - accuracy: 0.9735 - val_loss: 0.2015 - val_accuracy: 0.9407 - lr: 0.0066\n", - "Epoch 513/516\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0602 - accuracy: 0.9855 - val_loss: 0.2459 - val_accuracy: 0.9423 - lr: 0.0066\n", - "Epoch 514/516\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0416 - accuracy: 0.9899 - val_loss: 0.2909 - val_accuracy: 0.9407 - lr: 0.0066\n", - "Epoch 515/516\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0385 - accuracy: 0.9913 - val_loss: 0.2050 - val_accuracy: 0.9551 - lr: 0.0066\n", - "Epoch 516/516\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0319 - accuracy: 0.9938 - val_loss: 0.2285 - val_accuracy: 0.9535 - lr: 0.0066\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-515-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2050\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m209.26 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.25 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m86.01 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [86] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m87\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 516)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 517/522\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1382 - accuracy: 0.9605 - val_loss: 0.3483 - val_accuracy: 0.9103 - lr: 0.0066\n", - "Epoch 518/522\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0831 - accuracy: 0.9805 - val_loss: 0.2605 - val_accuracy: 0.9231 - lr: 0.0066\n", - "Epoch 519/522\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0609 - accuracy: 0.9868 - val_loss: 0.2459 - val_accuracy: 0.9439 - lr: 0.0066\n", - "Epoch 520/522\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0423 - accuracy: 0.9921 - val_loss: 0.2561 - val_accuracy: 0.9375 - lr: 0.0066\n", - "Epoch 521/522\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0405 - accuracy: 0.9899 - val_loss: 0.3116 - val_accuracy: 0.9311 - lr: 0.0066\n", - "Epoch 522/522\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0288 - accuracy: 0.9938 - val_loss: 0.3394 - val_accuracy: 0.9343 - lr: 0.0066\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-519-0.9439.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2459\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m207.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.56 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m84.50 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [87] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m88\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 522)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 523/528\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1513 - accuracy: 0.9562 - val_loss: 0.2526 - val_accuracy: 0.9199 - lr: 0.0066\n", - "Epoch 524/528\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0941 - accuracy: 0.9733 - val_loss: 0.4758 - val_accuracy: 0.9054 - lr: 0.0066\n", - "Epoch 525/528\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0640 - accuracy: 0.9856 - val_loss: 0.3418 - val_accuracy: 0.9407 - lr: 0.0066\n", - "Epoch 526/528\n", - "176/366 [=============>................] - ETA: 9s - loss: 0.0483 - accuracy: 0.9890 \n", + "130/171 [=====================>........] - ETA: 39s - loss: 0.0397 - accuracy: 0.9901\n", "KeyboardInterrupt. (Training stopped)\n", "Training done.\n", "\n" @@ -11584,26 +12158,26 @@ "subset_epoch = 6 # subset_epoch: Number of epochs to train each subset.\n", "subset_epoch_FT = 6 # subset_epoch_FT: subset_epoch after pre-training epochs.\n", "PL_epoch = 26 # PL_epoch: Number of pre-training epochs. Use >=24 for large models or 0/1 for fine-tuning only.\n", - "subset_size = 5846 # subset_size: Size of each training subset. Common values: 512, 1024, 2048, 3200, 4096, 8192.\n", - "Conf_batch_size_REV2 = 16 # Conf_batch_size_REV2: Batch size.\n", + "subset_size = 4096 # subset_size: Size of each training subset. Common values: 512, 1024, 2048, 3200, 4096, 5846, 8192.\n", + "Conf_batch_size_REV2 = 24 # Conf_batch_size_REV2: Batch size. \n", "RES_Train = False # RES_Train: Resume training if True.\n", "MAX_LR = 0.01 # MAX_LR: Maximum learning rate.\n", - "DEC_LR = 0.00006 # DEC_LR: Learning rate decay.\n", + "DEC_LR = 0.00005 # DEC_LR: Learning rate decay.\n", "MIN_LR = 0.0005 # MIN_LR: Minimum learning rate.\n", "RES_LR = 0.006 # RES_LR: Resuming learning rate.\n", - "ReduceLROnPlateau_factor = 0.95 # ReduceLROnPlateau_factor: ReduceLROnPlateau factor. (Lr = Factor * Lr_prev)\n", - "Use_OneCycleLr = False # Use_OneCycleLr: Use OneCycleLr if True. if false, use ReduceLROnPlateau.\n", + "ReduceLROnPlateau_factor = 0.98 # ReduceLROnPlateau_factor: ReduceLROnPlateau factor. (Lr = Factor * Lr_prev)\n", + "Use_OneCycleLr = True # Use_OneCycleLr: Use OneCycleLr if True. if false, use ReduceLROnPlateau.\n", "OneCycleLr_UFTS = False # OneCycleLr_UFTS: Set the OneCycleLr max epochs to the estimated full training SUB epochs. (DEC_LR and MIN_LR dont have any effect if True)\n", "Debug_OUTPUT_DPS = True # Debug_OUTPUT_DPS: Output debug image samples if True.\n", "Debug_OUTPUT_DPS_freq = 42 # Debug_OUTPUT_DPS_freq: Debug image output frequency(epoch).\n", - "TerminateOnHighTemp_M = False # TerminateOnHighTemp_M: Terminate training on high GPU temp to prevent damage. (Can make the training slower)\n", + "TerminateOnHighTemp_M = True # TerminateOnHighTemp_M: Terminate training on high GPU temp to prevent damage. (Can make the training slower)\n", "SAVE_FULLM = True # SAVE_FULLM: Save full model if True.\n", "AdvSubsetC = True # AdvSubsetC: Use advanced subset sampling to prevent overfitting if True.\n", "AdvSubsetC_SHR = 32 # AdvSubsetC_SHR: Parameter for advanced subset sampling (shuffling data after n epochs).\n", "load_SUB_BRW = True # load_SUB_BRW: Load previous subset weights to speed up training if True. May reduce max accuracy.\n", "load_SUB_BRW_MODE = 'val_accuracy' # load_SUB_BRW_MODE: Previous subset weights loading mode - 'val_accuracy' or 'val_loss'.\n", "load_SUB_BRW_LMODE = 0 # load_SUB_BRW_LMODE: Previous subset weights loading mode parameter (1 for only on imp and !1 for normal mode (for subset_epoch > 6 normal mode is better)).\n", - "load_SUB_BRW_LMODE_FN = False # load_SUB_BRW_LMODE_FN: Set load_SUB_BRW_LMODE=1 during fine-tuning if True.\n", + "load_SUB_BRW_LMODE_FN = True # load_SUB_BRW_LMODE_FN: Set load_SUB_BRW_LMODE=1 during fine-tuning if True.\n", "ModelCheckpoint_mode = 'auto' # ModelCheckpoint_mode: 'auto', 'min', or 'max' - how to monitor ModelCheckpoint.\n", "ModelCheckpoint_Reset_TO = 0.6251 # ModelCheckpoint_Reset_TO: Reset ModelCheckpoint monitor to this value, e.g. 0 or float('inf').\n", "Auto_clear_cache = True # Auto_clear_cache: Clear cache during training if True to reduce memory usage.\n", @@ -11615,7 +12189,7 @@ "Use_noise_func_TRLRev2 = True # Use_noise_func_TRLRev2: Use noise function for IDG if True.\n", "Show_confusion_matrix_tensorBoard = False # Show_confusion_matrix_tensorBoard: Show confusion matrix on tensorboard.\n", "BEST_RSN = 'PAI_model_T' # Best model save name prefix. (Uses a lot of memory and storage).\n", - "ALWAYS_REFIT_IDG = 0 # ALWAYS_REFIT_IDG: if 0/False - do not always refit IDG. if 1 - always refit IDG (In Start). if 2 - always refit IDG (After each epoch) (slow).\n", + "ALWAYS_REFIT_IDG = 1 # ALWAYS_REFIT_IDG: if 0/False - do not always refit IDG. if 1 - always refit IDG (In Start). if 2 - always refit IDG (After each epoch) (slow).\n", "IDG_FitP_PATH = 'Data\\\\image_SUB_generator.pkl'\n", "# CONF END <---------------------------------------------------------------------->\n", "#Prep\n", @@ -11632,22 +12206,22 @@ "best_loss = float('inf')\n", "#Funcs\n", "def normalize_TO_RANGE(arr, min_val, max_val):\n", - " arr = arr.astype('float32')\n", - " arr = (arr - arr.min()) / (arr.max() - arr.min())\n", - " arr = arr * (max_val - min_val) + min_val\n", - " return arr\n", + " arr = arr.astype('float32')\n", + " arr = (arr - arr.min()) / (arr.max() - arr.min())\n", + " arr = arr * (max_val - min_val) + min_val\n", + " return arr\n", "\n", "def Z_SCORE_normalize(arr):\n", - " arr = arr.astype('float32')\n", - " mean = np.mean(arr)\n", - " std_dev = np.std(arr)\n", - " arr = (arr - mean) / std_dev\n", - " return arr\n", + " arr = arr.astype('float32')\n", + " mean = np.mean(arr)\n", + " std_dev = np.std(arr)\n", + " arr = (arr - mean) / std_dev\n", + " return arr\n", "\n", "def add_image_grain_TRLRev2(image, intensity = 0.01):\n", " # Generate random noise array\n", " noise = (np.random.randint(-255, 255, size=image.shape, dtype=np.int16) \\\n", - " + np.random.randint(-255, 255, size=image.shape, dtype=np.int16)) / 2\n", + " + np.random.randint(-255, 255, size=image.shape, dtype=np.int16)) / 2\n", "\n", " # Scale the noise array\n", " scaled_noise = (noise * intensity).astype(np.float32)\n", @@ -11655,7 +12229,7 @@ " noisy_image = cv2.add(image, scaled_noise)\n", "\n", " return noisy_image\n", - "# noise_func_TRLRev2 ([REV1 OLD])\n", + "# noise_func_TRLRev2 \n", "def noise_func_TRLRev2(image): \n", " noise_type = np.random.choice(['L1', 'L2', 'L3', 'none'])\n", " new_image = np.copy(image)\n", @@ -11686,7 +12260,7 @@ " new_image[i:i+block_size_L1, j:j+block_size_L1] = block\n", " \n", " if add_img_grain:\n", - " intensity = random.uniform(0, 0.07) # Random intensity \n", + " intensity = random.uniform(0, 0.068) # Random intensity \n", " new_image = add_image_grain_TRLRev2(new_image, intensity=intensity)\n", " return new_image\n", "#CONST\n", @@ -11694,11 +12268,11 @@ " horizontal_flip=True,\n", " vertical_flip=True,\n", " rotation_range=179,\n", - " zoom_range=0.18, \n", - " shear_range=0.18,\n", - " width_shift_range=0.18,\n", - " brightness_range=(0.82, 1.18),\n", - " height_shift_range=0.18,\n", + " zoom_range=0.16, \n", + " shear_range=0.16,\n", + " width_shift_range=0.16,\n", + " brightness_range=(0.805, 1.195),\n", + " height_shift_range=0.16,\n", " featurewise_center=True,\n", " featurewise_std_normalization=True,\n", " zca_whitening=False,\n", @@ -11766,24 +12340,24 @@ "#callbacks>>>\n", "# EarlyStopping\n", "early_stopping = EarlyStopping(monitor='val_accuracy',\n", - " patience=EarlyStopping_P,\n", - " verbose=1, restore_best_weights=True,\n", - " mode='max'\n", - " ) if Use_ES_ONSUBT else DummyCallback()\n", + " patience=EarlyStopping_P,\n", + " verbose=1, restore_best_weights=True,\n", + " mode='max'\n", + " )\n", "# ModelCheckpoint \n", "checkpoint_SUB = ModelCheckpoint(f'cache\\\\model_SUB_checkpoint-{{epoch:03d}}-{{{load_SUB_BRW_MODE}:.4f}}.h5', # f'cache\\\\model_SUB_checkpoint-{{epoch:03d}}-{{{load_SUB_BRW_MODE}:.4f}}.h5', \n", - " monitor=load_SUB_BRW_MODE,\n", - " save_best_only=True, mode=ModelCheckpoint_mode,\n", - " save_weights_only = True\n", - " ) if load_SUB_BRW else DummyCallback()\n", + " monitor=load_SUB_BRW_MODE,\n", + " save_best_only=True, mode=ModelCheckpoint_mode,\n", + " save_weights_only = True\n", + " ) \n", "checkpoint_SUB.best = ModelCheckpoint_Reset_TO\n", "# TerminateOnHighTemp\n", "TerminateOnHighTemp_CB = TerminateOnHighTemp(check_every_n_batches=6,\n", - " high_temp=73,\n", - " low_temp=58,\n", - " pause_time=60) if TerminateOnHighTemp_M else DummyCallback()\n", + " high_temp=73,\n", + " low_temp=58,\n", + " pause_time=60)\n", "# confusion_matrix_callback\n", - "confusion_matrix_callback = LambdaCallback(on_epoch_end=plot_confusion_matrix_TensorBoard) if Show_confusion_matrix_tensorBoard else DummyCallback()\n", + "confusion_matrix_callback = LambdaCallback(on_epoch_end=plot_confusion_matrix_TensorBoard)\n", "# TensorBoard\n", "log_dir = 'logs/fit/' + datetime.datetime.now().strftime('y%Y_m%m_d%d-h%H_m%M_s%S')\n", "file_writer = tf.summary.create_file_writer(log_dir + '\\\\Data')\n", @@ -11794,7 +12368,7 @@ " histogram_freq=1,\n", " update_freq='epoch',\n", " write_grads=True,\n", - " profile_batch='256,512' if Use_tensorboard_profiler else 0\n", + " profile_batch='128,138' if Use_tensorboard_profiler else 0\n", " )\n", "else:\n", " tensorboard_callback = TensorBoard(\n", @@ -11803,7 +12377,7 @@ " histogram_freq=1,\n", " update_freq='epoch',\n", " write_grads=True,\n", - " profile_batch='256,512' if Use_tensorboard_profiler else 0\n", + " profile_batch='128,138' if Use_tensorboard_profiler else 0\n", " )\n", "# OneCycleLr\n", "if OneCycleLr_UFTS and Use_OneCycleLr: \n", @@ -11813,14 +12387,21 @@ "# ReduceLROnPlateau\n", "if not Use_OneCycleLr:\n", " learning_rate_schedule_SUB = ReduceLROnPlateau(monitor='val_accuracy',\n", - " factor=ReduceLROnPlateau_factor,\n", - " cooldown=subset_epoch,\n", - " patience=subset_epoch * 8,\n", - " min_lr=MIN_LR,\n", - " verbose=1)\n", + " factor=ReduceLROnPlateau_factor,\n", + " cooldown=subset_epoch,\n", + " patience=subset_epoch * 8,\n", + " min_lr=MIN_LR,\n", + " verbose=1)\n", " learning_rate_schedule_SUB.on_train_begin = DummyFunc # Remove on_train_begin to make it work with subset training.\n", "#PRES\n", - "# ...\n", + "callbacks_active = {\n", + " \"learning_rate_schedule_SUB\": True,\n", + " \"TerminateOnHighTemp_CB\": TerminateOnHighTemp_M,\n", + " \"checkpoint_SUB\": load_SUB_BRW,\n", + " \"early_stopping\": Use_ES_ONSUBT,\n", + " \"tensorboard_callback\": True,\n", + " \"confusion_matrix_callback\": Show_confusion_matrix_tensorBoard\n", + "}\n", "#MAIN\n", "print('Training the model...')\n", "# INFOp\n", @@ -11848,7 +12429,8 @@ " subprocess.run([\"Cache_clear.cmd\"], shell=True)\n", " # Reset TF_Summary_text_Dict\n", " TF_Summary_text_Dict = {\n", - " 'Model progress': []\n", + " 'Model progress': [],\n", + " 'Error': []\n", " }\n", " # TSEC: Total-Subset-Epoch-Count\n", " print_Color(f'\\n~*Epoch: ~*{epoch}~*/~*{max_epoch} (TSEC: {Total_SUB_epoch_C})~* | ~*[{STG}]', ['normal', 'cyan', 'normal', 'green', 'blue', 'green'], advanced_mode=True)\n", @@ -11924,6 +12506,16 @@ " S_dir = 'Samples/TSR_SUB_400_' + datetime.datetime.now().strftime('y%Y_m%m_d%d-h%H_m%M_s%S')\n", " print_Color(f'~*- Debug DP Sample dir: ~*{S_dir}', ['red', 'green'], advanced_mode=True)\n", " save_images_to_dir(np.clip(x_SUB_train[SITD], 0, 1), y_SUB_train[SITD], S_dir)\n", + " with file_writer.as_default():\n", + " # For Pneumonia\n", + " indices = np.where(np.all(y_SUB_train[SITD] == (0, 1), axis=-1))\n", + " tensor = np.clip(x_SUB_train[SITD][indices], 0, 1)\n", + " tf.summary.image('Debug SUB_DP Samples (Pneumonia)', tensor, step=epoch, max_outputs=4)\n", + " # For Normal\n", + " indices = np.where(np.all(y_SUB_train[SITD] == (1, 0), axis=-1))\n", + " tensor = np.clip(x_SUB_train[SITD][indices], 0, 1)\n", + " tf.summary.image('Debug SUB_DP Samples (Normal)', tensor, step=epoch, max_outputs=4)\n", + " del indices, tensor\n", " # learning_rate_schedule_SUB\n", " if PL_epoch == 0:\n", " CU_LR = MIN_LR\n", @@ -11943,23 +12535,34 @@ " print_Color(f'~*Setting training subset epoch.c to ~*[{C_subset_epoch}]~*...', ['yellow', 'green', 'yellow'], advanced_mode=True)\n", " # Train\n", " print_Color('Training on subset...', ['green'])\n", + " # Gen input callbacks\n", + " callbacks_dict = {\n", + " \"learning_rate_schedule_SUB\": learning_rate_schedule_SUB,\n", + " \"TerminateOnHighTemp_CB\": TerminateOnHighTemp_CB,\n", + " \"checkpoint_SUB\": checkpoint_SUB,\n", + " \"early_stopping\": early_stopping,\n", + " \"tensorboard_callback\": tensorboard_callback,\n", + " \"confusion_matrix_callback\": confusion_matrix_callback\n", + " }\n", + " Active_callbacks = [\n", + " callbacks_dict[cb] for cb, active in callbacks_active.items() if active\n", + " ]\n", " start_SUBO_time = time.time()\n", - " SUB_history = model.fit(x_SUB_train,\n", - " y_SUB_train,\n", - " epochs=C_subset_epoch + Total_SUB_epoch_C, # TO FIX TensorBoard (Total_SUB_epoch_C)\n", - " batch_size=Conf_batch_size_REV2,\n", - " validation_data=(x_test, y_test),\n", - " verbose='auto',\n", - " initial_epoch=Total_SUB_epoch_C, # TO FIX TensorBoard\n", - " callbacks=[\n", - " learning_rate_schedule_SUB,\n", - " TerminateOnHighTemp_CB,\n", - " checkpoint_SUB,\n", - " early_stopping,\n", - " tensorboard_callback,\n", - " confusion_matrix_callback\n", - " ]\n", - " )\n", + " try:\n", + " SUB_history = model.fit(x_SUB_train,\n", + " y_SUB_train,\n", + " epochs=C_subset_epoch + Total_SUB_epoch_C, # TO FIX TensorBoard (Total_SUB_epoch_C)\n", + " batch_size=Conf_batch_size_REV2,\n", + " validation_data=(x_test, y_test),\n", + " verbose='auto',\n", + " initial_epoch=Total_SUB_epoch_C, # TO FIX TensorBoard\n", + " callbacks=Active_callbacks\n", + " )\n", + " except Exception as Err:\n", + " print_Color(f'Error occurred during fitting: \\n{Err}', ['red'])\n", + " TF_Summary_text_Dict['Error'].append(f'Error occurred during fitting: \\n{Err}')\n", + " raise Exception(f'Error occurred during fitting: \\n{Err}')\n", + " \n", " end_SUBO_time = time.time()\n", " print_Color('Subset training done.', ['green'])\n", " if load_SUB_BRW_LMODE == 1:\n", @@ -11982,6 +12585,7 @@ " model.load_weights(best_weights_filename)\n", " except Exception as Err:\n", " print_Color(f'ERROR: Failed to load weights. Error: {Err}', ['red'])\n", + " TF_Summary_text_Dict['Error'].append(f'ERROR: Failed to load weights. Error: {Err}')\n", " elif load_SUB_BRW and (not load_weights):\n", " print_Color_V2(f'Not loading weights[BSR:acc{{{max(SUB_history.history[\"val_accuracy\"]):.4f}}}, loss{{{min(SUB_history.history[\"val_loss\"]):.4f}}}|BTR:acc{{{best_acc:.4f}}}, loss{{{best_loss:.4f}}}]')\n", " all_histories.append(SUB_history.history)\n", @@ -12002,7 +12606,7 @@ " tf.summary.scalar('Model loss (Main-Sub_Re)', loss, step=epoch)\n", " # If the accuracy is higher than the best_acc\n", " if acc > best_acc:\n", - " print_Color_V2(f'Improved model accuracy from {best_acc:10f} to {acc:10f}. Saving model.')\n", + " print_Color_V2(f'Improved model accuracy from {best_acc:8f} to {acc:8f}. Saving model.')\n", " TF_Summary_text_Dict['Model progress'].append(f'Improved model accuracy from `{best_acc:10f}` to `{acc:10f}` Saving model.')\n", " # Update the best_acc\n", " best_acc = acc\n", @@ -12020,7 +12624,7 @@ " \n", " # If the loss is higher than the best_loss\n", " if loss < best_loss:\n", - " print_Color_V2(f'Improved model loss from {best_loss:.10f} to {loss:.10f}. Saving model.')\n", + " print_Color_V2(f'Improved model loss from {best_loss:.8f} to {loss:.8f}. Saving model.')\n", " TF_Summary_text_Dict['Model progress'].append(f'Improved model loss from `{best_loss:10f}` to `{loss:10f}` Saving model.')\n", " # Update the best_acc\n", " best_loss = loss\n", @@ -12043,10 +12647,12 @@ " # Update TF summary text\n", " for Key in TF_Summary_text_Dict:\n", " TF_Summary_text_cache = f'# @[{Key}].Data:\\n'\n", - " for ID, Item in enumerate(TF_Summary_text_Dict[Key]):\n", - " TF_Summary_text_cache += f'### Data --> \\n#### ~ {Item}\\n'\n", - " # tf.summary.text\n", - " tf.summary.text(Key, TF_Summary_text_cache, step=epoch)\n", + " if TF_Summary_text_Dict[Key] != []:\n", + " for ID, Item in enumerate(TF_Summary_text_Dict[Key]):\n", + " TF_Summary_text_cache += f'### Data |id: {str(ID)}| --> \\n#### ~ {Item}\\n'\n", + " # tf.summary.text\n", + " with file_writer.as_default():\n", + " tf.summary.text(Key, TF_Summary_text_cache, step=epoch)\n", " # Epoch end\n", " end_time = time.time()\n", " epoch_time = end_time - start_FULL_time\n", @@ -12059,7 +12665,18 @@ " Total_SUB_epoch_C += C_subset_epoch # TO FIX TensorBoard\n", "except KeyboardInterrupt:\n", " print('\\nKeyboardInterrupt. (Training stopped)')\n", + "except Exception as Err:\n", + " print(f'Error while training model (Training stopped):\\n{Err}')\n", "# End\n", + "# Update TF summary text\n", + "for Key in TF_Summary_text_Dict:\n", + " TF_Summary_text_cache = f'# @[{Key}].Data:\\n'\n", + " if TF_Summary_text_Dict[Key] != []:\n", + " for ID, Item in enumerate(TF_Summary_text_Dict[Key]):\n", + " TF_Summary_text_cache += f'### Data |id: {str(ID)}| --> \\n#### ~ {Item}\\n'\n", + " # tf.summary.text\n", + " with file_writer.as_default():\n", + " tf.summary.text(Key, TF_Summary_text_cache, step=epoch)\n", "try:\n", " history = {}\n", " for key in all_histories[0].keys():\n", diff --git a/Create_requirements.cmd b/Create_requirements.cmd index 54cec77..904e913 100644 --- a/Create_requirements.cmd +++ b/Create_requirements.cmd @@ -1,10 +1,11 @@ @echo off -echo Generating requirements.txt... -del requirements.txt >nul 2>&1 -echo Y | pigar -l ERROR generate +echo (Batch script) Generating requirements.txt... +del requirements.txt >nul 2>&1 +echo Y | pigar -l ERROR generate >nul 2>&1 rem Use PowerShell to remove the first line of requirements.txt and save to a temporary file powershell -Command "Get-Content requirements.txt | Select-Object -Skip 2 | Set-Content requirements_temp.txt" rem Replace the original file with the modified temporary file move /Y requirements_temp.txt requirements.txt >nul +echo (Batch script) Done Generating requirements.txt. \ No newline at end of file diff --git a/Data/image_SUB_generator.pkl b/Data/image_SUB_generator.pkl index debf82e..da5e723 100644 Binary files a/Data/image_SUB_generator.pkl and b/Data/image_SUB_generator.pkl differ diff --git a/Interface/CLI/LICENSE b/Interface/CLI/LICENSE index 6bb4d95..4f4255e 100644 --- a/Interface/CLI/LICENSE +++ b/Interface/CLI/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Aydin hamedi +Copyright (c) 2024 Aydin hamedi Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Interface/GUI/LICENSE b/Interface/GUI/LICENSE index 6bb4d95..4f4255e 100644 --- a/Interface/GUI/LICENSE +++ b/Interface/GUI/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Aydin hamedi +Copyright (c) 2024 Aydin hamedi Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/LICENSE b/LICENSE index 6bb4d95..4f4255e 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Aydin hamedi +Copyright (c) 2024 Aydin hamedi Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Model_T&T.ipynb b/Model_T&T.ipynb index 9135ffd..831a634 100644 --- a/Model_T&T.ipynb +++ b/Model_T&T.ipynb @@ -22,7 +22,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:27:44.939427800Z", @@ -46,7 +46,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:27:47.128539500Z", @@ -129,6 +129,7 @@ "from Utils.Grad_cam import make_gradcam_heatmap\n", "from Utils.print_color_V2_NEW import print_Color_V2\n", "from Utils.print_color_V1_OLD import print_Color\n", + "from Utils.Debug import P_Debug\n", "from Utils.FixedDropout import FixedDropout\n", "from Utils.Other import *\n", "# Other\n", @@ -147,7 +148,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 3, "metadata": { "notebookRunGroups": { "groupValue": "12" @@ -182,7 +183,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:27:47.139048Z", @@ -229,7 +230,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:27:48.287855100Z", @@ -269,7 +270,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:31:27.059139500Z", @@ -286,27 +287,19 @@ "text": [ "\u001b[0;33mUsing Def IDG...\u001b[0m\n", "Found 23681 images belonging to 2 classes.\n", - "\u001b[0;33mLoading all images and labels into memory...\u001b[0m\n" - ] - }, - { - "ename": "KeyboardInterrupt", - "evalue": "", - "output_type": "error", - "traceback": [ - "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[1;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", - "Cell \u001b[1;32mIn[22], line 220\u001b[0m\n\u001b[0;32m 218\u001b[0m \u001b[38;5;66;03m# Load all images and labels into memory\u001b[39;00m\n\u001b[0;32m 219\u001b[0m print_Color(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mLoading all images and labels into memory...\u001b[39m\u001b[38;5;124m'\u001b[39m, [\u001b[38;5;124m'\u001b[39m\u001b[38;5;124myellow\u001b[39m\u001b[38;5;124m'\u001b[39m])\n\u001b[1;32m--> 220\u001b[0m x_train, y_train \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mnext\u001b[39;49m\u001b[43m(\u001b[49m\u001b[38;5;28;43miter\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mtrain_generator_SM\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 221\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m Make_EV_DATA:\n\u001b[0;32m 222\u001b[0m x_val, y_val \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mnext\u001b[39m(\u001b[38;5;28miter\u001b[39m(val_generator))\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:156\u001b[0m, in \u001b[0;36mIterator.__next__\u001b[1;34m(self, *args, **kwargs)\u001b[0m\n\u001b[0;32m 155\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__next__\u001b[39m(\u001b[38;5;28mself\u001b[39m, \u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs):\n\u001b[1;32m--> 156\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mnext(\u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:168\u001b[0m, in \u001b[0;36mIterator.next\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 165\u001b[0m index_array \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mnext\u001b[39m(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mindex_generator)\n\u001b[0;32m 166\u001b[0m \u001b[38;5;66;03m# The transformation of images is not under thread lock\u001b[39;00m\n\u001b[0;32m 167\u001b[0m \u001b[38;5;66;03m# so it can be done in parallel\u001b[39;00m\n\u001b[1;32m--> 168\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_get_batches_of_transformed_samples\u001b[49m\u001b[43m(\u001b[49m\u001b[43mindex_array\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:384\u001b[0m, in \u001b[0;36mBatchFromFilesMixin._get_batches_of_transformed_samples\u001b[1;34m(self, index_array)\u001b[0m\n\u001b[0;32m 382\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mimage_data_generator:\n\u001b[0;32m 383\u001b[0m params \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mimage_data_generator\u001b[38;5;241m.\u001b[39mget_random_transform(x\u001b[38;5;241m.\u001b[39mshape)\n\u001b[1;32m--> 384\u001b[0m x \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mimage_data_generator\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mapply_transform\u001b[49m\u001b[43m(\u001b[49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mparams\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 385\u001b[0m x \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mimage_data_generator\u001b[38;5;241m.\u001b[39mstandardize(x)\n\u001b[0;32m 386\u001b[0m batch_x[i] \u001b[38;5;241m=\u001b[39m x\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:2013\u001b[0m, in \u001b[0;36mImageDataGenerator.apply_transform\u001b[1;34m(self, x, transform_parameters)\u001b[0m\n\u001b[0;32m 2010\u001b[0m img_col_axis \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcol_axis \u001b[38;5;241m-\u001b[39m \u001b[38;5;241m1\u001b[39m\n\u001b[0;32m 2011\u001b[0m img_channel_axis \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mchannel_axis \u001b[38;5;241m-\u001b[39m \u001b[38;5;241m1\u001b[39m\n\u001b[1;32m-> 2013\u001b[0m x \u001b[38;5;241m=\u001b[39m \u001b[43mapply_affine_transform\u001b[49m\u001b[43m(\u001b[49m\n\u001b[0;32m 2014\u001b[0m \u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2015\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mtheta\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2016\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mtx\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2017\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mty\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2018\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mshear\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2019\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mzx\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2020\u001b[0m \u001b[43m \u001b[49m\u001b[43mtransform_parameters\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mzy\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2021\u001b[0m \u001b[43m \u001b[49m\u001b[43mrow_axis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mimg_row_axis\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2022\u001b[0m \u001b[43m \u001b[49m\u001b[43mcol_axis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mimg_col_axis\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2023\u001b[0m \u001b[43m \u001b[49m\u001b[43mchannel_axis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mimg_channel_axis\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2024\u001b[0m \u001b[43m \u001b[49m\u001b[43mfill_mode\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfill_mode\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2025\u001b[0m \u001b[43m \u001b[49m\u001b[43mcval\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcval\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2026\u001b[0m \u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43minterpolation_order\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2027\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 2029\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m transform_parameters\u001b[38;5;241m.\u001b[39mget(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mchannel_shift_intensity\u001b[39m\u001b[38;5;124m\"\u001b[39m) \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m 2030\u001b[0m x \u001b[38;5;241m=\u001b[39m apply_channel_shift(\n\u001b[0;32m 2031\u001b[0m x,\n\u001b[0;32m 2032\u001b[0m transform_parameters[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mchannel_shift_intensity\u001b[39m\u001b[38;5;124m\"\u001b[39m],\n\u001b[0;32m 2033\u001b[0m img_channel_axis,\n\u001b[0;32m 2034\u001b[0m )\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:2615\u001b[0m, in \u001b[0;36mapply_affine_transform\u001b[1;34m(x, theta, tx, ty, shear, zx, zy, row_axis, col_axis, channel_axis, fill_mode, cval, order)\u001b[0m\n\u001b[0;32m 2612\u001b[0m final_affine_matrix \u001b[38;5;241m=\u001b[39m transform_matrix[:\u001b[38;5;241m2\u001b[39m, :\u001b[38;5;241m2\u001b[39m]\n\u001b[0;32m 2613\u001b[0m final_offset \u001b[38;5;241m=\u001b[39m transform_matrix[:\u001b[38;5;241m2\u001b[39m, \u001b[38;5;241m2\u001b[39m]\n\u001b[1;32m-> 2615\u001b[0m channel_images \u001b[38;5;241m=\u001b[39m [\n\u001b[0;32m 2616\u001b[0m ndimage\u001b[38;5;241m.\u001b[39minterpolation\u001b[38;5;241m.\u001b[39maffine_transform(\n\u001b[0;32m 2617\u001b[0m x_channel,\n\u001b[0;32m 2618\u001b[0m final_affine_matrix,\n\u001b[0;32m 2619\u001b[0m final_offset,\n\u001b[0;32m 2620\u001b[0m order\u001b[38;5;241m=\u001b[39morder,\n\u001b[0;32m 2621\u001b[0m mode\u001b[38;5;241m=\u001b[39mfill_mode,\n\u001b[0;32m 2622\u001b[0m cval\u001b[38;5;241m=\u001b[39mcval,\n\u001b[0;32m 2623\u001b[0m )\n\u001b[0;32m 2624\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m x_channel \u001b[38;5;129;01min\u001b[39;00m x\n\u001b[0;32m 2625\u001b[0m ]\n\u001b[0;32m 2626\u001b[0m x \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mstack(channel_images, axis\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m0\u001b[39m)\n\u001b[0;32m 2627\u001b[0m x \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mrollaxis(x, \u001b[38;5;241m0\u001b[39m, channel_axis \u001b[38;5;241m+\u001b[39m \u001b[38;5;241m1\u001b[39m)\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\preprocessing\\image.py:2616\u001b[0m, in \u001b[0;36m\u001b[1;34m(.0)\u001b[0m\n\u001b[0;32m 2612\u001b[0m final_affine_matrix \u001b[38;5;241m=\u001b[39m transform_matrix[:\u001b[38;5;241m2\u001b[39m, :\u001b[38;5;241m2\u001b[39m]\n\u001b[0;32m 2613\u001b[0m final_offset \u001b[38;5;241m=\u001b[39m transform_matrix[:\u001b[38;5;241m2\u001b[39m, \u001b[38;5;241m2\u001b[39m]\n\u001b[0;32m 2615\u001b[0m channel_images \u001b[38;5;241m=\u001b[39m [\n\u001b[1;32m-> 2616\u001b[0m \u001b[43mndimage\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43minterpolation\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43maffine_transform\u001b[49m\u001b[43m(\u001b[49m\n\u001b[0;32m 2617\u001b[0m \u001b[43m \u001b[49m\u001b[43mx_channel\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2618\u001b[0m \u001b[43m \u001b[49m\u001b[43mfinal_affine_matrix\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2619\u001b[0m \u001b[43m \u001b[49m\u001b[43mfinal_offset\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2620\u001b[0m \u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2621\u001b[0m \u001b[43m \u001b[49m\u001b[43mmode\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfill_mode\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2622\u001b[0m \u001b[43m \u001b[49m\u001b[43mcval\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcval\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 2623\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 2624\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m x_channel \u001b[38;5;129;01min\u001b[39;00m x\n\u001b[0;32m 2625\u001b[0m ]\n\u001b[0;32m 2626\u001b[0m x \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mstack(channel_images, axis\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m0\u001b[39m)\n\u001b[0;32m 2627\u001b[0m x \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mrollaxis(x, \u001b[38;5;241m0\u001b[39m, channel_axis \u001b[38;5;241m+\u001b[39m \u001b[38;5;241m1\u001b[39m)\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\scipy\\ndimage\\_interpolation.py:572\u001b[0m, in \u001b[0;36maffine_transform\u001b[1;34m(input, matrix, offset, output_shape, output, order, mode, cval, prefilter)\u001b[0m\n\u001b[0;32m 570\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m prefilter \u001b[38;5;129;01mand\u001b[39;00m order \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[0;32m 571\u001b[0m padded, npad \u001b[38;5;241m=\u001b[39m _prepad_for_spline_filter(\u001b[38;5;28minput\u001b[39m, mode, cval)\n\u001b[1;32m--> 572\u001b[0m filtered \u001b[38;5;241m=\u001b[39m \u001b[43mspline_filter\u001b[49m\u001b[43m(\u001b[49m\u001b[43mpadded\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43moutput\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mnumpy\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfloat64\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 573\u001b[0m \u001b[43m \u001b[49m\u001b[43mmode\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmode\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 574\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m 575\u001b[0m npad \u001b[38;5;241m=\u001b[39m \u001b[38;5;241m0\u001b[39m\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\scipy\\ndimage\\_interpolation.py:191\u001b[0m, in \u001b[0;36mspline_filter\u001b[1;34m(input, order, output, mode)\u001b[0m\n\u001b[0;32m 189\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m order \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;129;01min\u001b[39;00m [\u001b[38;5;241m0\u001b[39m, \u001b[38;5;241m1\u001b[39m] \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28minput\u001b[39m\u001b[38;5;241m.\u001b[39mndim \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m0\u001b[39m:\n\u001b[0;32m 190\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m axis \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mrange\u001b[39m(\u001b[38;5;28minput\u001b[39m\u001b[38;5;241m.\u001b[39mndim):\n\u001b[1;32m--> 191\u001b[0m \u001b[43mspline_filter1d\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43minput\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43moutput\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43moutput\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mmode\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmode\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 192\u001b[0m \u001b[38;5;28minput\u001b[39m \u001b[38;5;241m=\u001b[39m output\n\u001b[0;32m 193\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n", - "File \u001b[1;32mc:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\scipy\\ndimage\\_interpolation.py:132\u001b[0m, in \u001b[0;36mspline_filter1d\u001b[1;34m(input, order, axis, output, mode)\u001b[0m\n\u001b[0;32m 130\u001b[0m mode \u001b[38;5;241m=\u001b[39m _ni_support\u001b[38;5;241m.\u001b[39m_extend_mode_to_code(mode)\n\u001b[0;32m 131\u001b[0m axis \u001b[38;5;241m=\u001b[39m normalize_axis_index(axis, \u001b[38;5;28minput\u001b[39m\u001b[38;5;241m.\u001b[39mndim)\n\u001b[1;32m--> 132\u001b[0m \u001b[43m_nd_image\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mspline_filter1d\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43minput\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43morder\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43moutput\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mmode\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 133\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m output\n", - "\u001b[1;31mKeyboardInterrupt\u001b[0m: " + "\u001b[0;33mLoading all images and labels into memory...\u001b[0m\n", + "\u001b[0;33mMaking categorical data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mGenerating augmented data \u001b[0m\u001b[0;36m[\u001b[0m\u001b[0;32mADBD: \u001b[0m\u001b[0;31m0\u001b[0m\u001b[0;36m]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0;33mNormalizing image data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mData type: \u001b[0m\u001b[0;32mfloat16\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mRGB Range: \u001b[0m\u001b[0;34mMin = 0.0\u001b[0m\u001b[0m | \u001b[0m\u001b[0;31mMax = 1.0\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mLabel ratio: \u001b[0m\u001b[0;31m49.35% PNEUMONIA \u001b[0m\u001b[0;35m| \u001b[0m\u001b[0;32m50.65% NORMAL\u001b[0m\n", + "\u001b[0;33mSetting LNTS...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mOriginal num_samples: \u001b[0m\u001b[0;32m23681\u001b[0m\n", + "\u001b[0;33mshuffling data...\u001b[0m\n", + "\u001b[0;33mSaving TS...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0mSample dir: \u001b[0m\u001b[0;32mSamples/TSR400_y2024_m03_d02-h08_m25_s52\u001b[0m\n", + "\u001b[0;32mDone.\u001b[0m\n" ] } ], @@ -721,7 +714,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": { "ExecuteTime": { "end_time": "2023-12-28T02:31:27.380088800Z", @@ -7407,7 +7400,7 @@ "recommended: ✅\n", "statuses: Ready\n", "Working: ✅\n", - "Max fine tuned acc: 95.3\n", + "Max fine tuned acc: 95.54\n", "Max fine tuned acc TLRev2: 97.12\n", "type: transfer learning>>>(EfficientNetB4::CCL)\n", "```" @@ -7415,295 +7408,7 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from efficientnet.keras import EfficientNetB4 as KENB4\n", - "# FUNC\n", - "def Eff_B4_NS(freeze_layers):\n", - " base_model = KENB4(input_shape=(\n", - " img_res[0], img_res[1], img_res[2]), weights='noisy-student', include_top=False)\n", - " print('Total layers in the base model: ', len(base_model.layers))\n", - " print(f'Freezing {freeze_layers} layers in the base model...')\n", - " # Freeze the specified number of layers\n", - " for layer in base_model.layers[:freeze_layers]:\n", - " layer.trainable = False\n", - "\n", - " # Unfreeze the rest\n", - " for layer in base_model.layers[freeze_layers:]:\n", - " layer.trainable = True\n", - "\n", - " # Calculate the percentage of the model that is frozen\n", - " frozen_percentage = ((freeze_layers + 1e-10) /\n", - " len(base_model.layers)) * 100\n", - " print(\n", - " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", - " # adding CDL>>>\n", - " #GlobalAveragePooling2D\n", - " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", - " #Dense\n", - " Dense_L1 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.02),\n", - " name='FC_C_Dense-L1-512'\n", - " )(base_model_FT)\n", - " #Dropout\n", - " Dropout_L1 = Dropout(0.1,\n", - " name='FC_C_Dropout-L1-0.1'\n", - " )(Dense_L1)\n", - " #BatchNormalization\n", - " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n", - " )(Dropout_L1)\n", - " #Dense\n", - " Dense_L2 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.01),\n", - " name='FC_C_Dense-L2-512'\n", - " )(BatchNorm_L2)\n", - " #BatchNormalization\n", - " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L2'\n", - " )(Dense_L2)\n", - " #Dense\n", - " Dense_L3 = Dense(128, activation='relu',\n", - " name='FC_C_Dense-L3-128'\n", - " )(BatchNorm_L3)\n", - " #Dense\n", - " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", - " predictions = Dense(2, activation='softmax',\n", - " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", - " # CDL<<<\n", - " model_EfficientNetB4_NS = Model(\n", - " inputs=base_model.input, outputs=predictions)\n", - " print('Total model layers: ', len(model_EfficientNetB4_NS.layers))\n", - " # OPT/compile\n", - " opt = SGD(momentum=0.92, nesterov=False)\n", - " # opt = Nadam()\n", - " # opt = Adamax()\n", - " # opt = RMSprop(momentum=0.9)\n", - " # opt = Adagrad()\n", - " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", - " # opt = Yogi()\n", - " model_EfficientNetB4_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", - "\n", - " return model_EfficientNetB4_NS\n", - "\n", - "print('Creating the model...')\n", - "# Main\n", - "freeze_layers = 0\n", - "model = Eff_B4_NS(freeze_layers)\n", - "model.summary(show_trainable=True, expand_nested=True)\n", - "print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### V(T) Beta" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from efficientnet.keras import EfficientNetL2 as KENBL2\n", - "#FUNC\n", - "def Eff_B7_NS(freeze_layers):\n", - " base_model = KENBL2(input_shape=(img_res[0], img_res[1], img_res[2]),\n", - " weights='./download/Models/EFN_L2/efficientnet-l2_noisy-student_notop.h5',\n", - " include_top=False,\n", - " drop_connect_rate=0)\n", - " print('Total layers in the base model: ', len(base_model.layers))\n", - " print(f'Freezing {freeze_layers} layers in the base model...')\n", - " # Freeze the specified number of layers\n", - " for layer in base_model.layers[:freeze_layers]:\n", - " layer.trainable = False\n", - "\n", - " # Unfreeze the rest\n", - " for layer in base_model.layers[freeze_layers:]:\n", - " layer.trainable = True\n", - "\n", - " # Calculate the percentage of the model that is frozen\n", - " frozen_percentage = ((freeze_layers + 1e-10) / len(base_model.layers)) * 100\n", - " print(f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", - " # adding CDL\n", - " base_model_FT = GlobalAveragePooling2D()(base_model.output)\n", - " Dense_L1 = Dense(512, activation='relu', kernel_regularizer=l2(0.02))(base_model_FT)\n", - " Dropout_L1 = Dropout(0.1)(Dense_L1) \n", - " BatchNorm_L2 = BatchNormalization()(Dropout_L1)\n", - " Dense_L2 = Dense(512, activation='relu', kernel_regularizer=l2(0.01))(BatchNorm_L2)\n", - " BatchNorm_L3 = BatchNormalization()(Dense_L2)\n", - " Dense_L3 = Dense(128, activation='relu')(BatchNorm_L3)\n", - " predictions = Dense(2, activation='softmax')(Dense_L3)\n", - "\n", - " model_EfficientNetB7_NS = Model(inputs=base_model.input, outputs=predictions) \n", - " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", - " #OPT/compile\n", - " opt = SGD(momentum=0.9)\n", - " # opt = Yogi()\n", - " model_EfficientNetB7_NS.compile(optimizer = opt, loss='categorical_crossentropy', metrics=['accuracy'])\n", - "\n", - " return model_EfficientNetB7_NS\n", - "print('Creating the model...')\n", - "# Main\n", - "freeze_layers = 0\n", - "model = Eff_B7_NS(freeze_layers)\n", - "model.summary(show_trainable=True, expand_nested=True)\n", - "print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### V(T) Beta2" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "ExecuteTime": { - "end_time": "2023-12-28T02:31:32.994176700Z", - "start_time": "2023-12-28T02:31:27.381088600Z" - } - }, - "outputs": [], - "source": [ - "from efficientnet.keras import EfficientNetB7 as KENB7\n", - "# FUNC\n", - "def Eff_B7_NS(freeze_layers):\n", - " base_model = KENB7(input_shape=(\n", - " img_res[0], img_res[1], img_res[2]), weights=None, include_top=False)\n", - " print('Total layers in the base model: ', len(base_model.layers))\n", - " print(f'Freezing {freeze_layers} layers in the base model...')\n", - " # Freeze the specified number of layers\n", - " for layer in base_model.layers[:freeze_layers]:\n", - " layer.trainable = False\n", - "\n", - " # Unfreeze the rest\n", - " for layer in base_model.layers[freeze_layers:]:\n", - " layer.trainable = True\n", - "\n", - " # Calculate the percentage of the model that is frozen\n", - " frozen_percentage = ((freeze_layers + 1e-10) /\n", - " len(base_model.layers)) * 100\n", - " print(\n", - " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", - " # adding CDL>>>\n", - " #GlobalAveragePooling2D\n", - " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", - " #Dense\n", - " Dense_L1 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.02),\n", - " name='FC_C_Dense-L1-512'\n", - " )(base_model_FT)\n", - " #Dropout\n", - " Dropout_L1 = Dropout(0.1,\n", - " name='FC_C_Dropout-L1-0.1'\n", - " )(Dense_L1)\n", - " #BatchNormalization\n", - " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-Pooling-L1'\n", - " )(Dropout_L1)\n", - " #Dense\n", - " Dense_L2 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.01),\n", - " name='FC_C_Dense-L2-512'\n", - " )(BatchNorm_L2)\n", - " #BatchNormalization\n", - " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-Pooling-L2'\n", - " )(Dense_L2)\n", - " #Dense\n", - " Dense_L3 = Dense(128, activation='relu',\n", - " name='FC_C_Dense-L3-128'\n", - " )(BatchNorm_L3)\n", - " #Dense\n", - " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", - " predictions = Dense(2, activation='softmax',\n", - " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", - " # CDL<<<\n", - " model_EfficientNetB7_NS = Model(\n", - " inputs=base_model.input, outputs=predictions)\n", - " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", - " # OPT/compile\n", - " opt = SGD(momentum=0.9, nesterov=False)\n", - " # opt = Nadam()\n", - " # opt = Adamax()\n", - " # opt = RMSprop(momentum=0.9)\n", - " # opt = Adagrad()\n", - " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", - " # opt = Yogi()\n", - " model_EfficientNetB7_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", - "\n", - " return model_EfficientNetB7_NS\n", - "\n", - "print('Creating the model...')\n", - "# Main\n", - "freeze_layers = 0\n", - "model = Eff_B7_NS(freeze_layers)\n", - "model.summary(show_trainable=True, expand_nested=True)\n", - "print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### V(T) Beta3" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from keras.applications import ConvNeXtXLarge\n", - "from keras.layers import Lambda\n", - "#FUNC\n", - "def Eff_B7_NS():\n", - " # Add a Lambda layer at the beginning to scale the input\n", - " input = Input(shape=(img_res[0], img_res[1], img_res[2]))\n", - " x = Lambda(lambda image: image * 255)(input)\n", - " \n", - " base_model = ConvNeXtXLarge(include_top=False, weights='imagenet', classes=2, classifier_activation='softmax', include_preprocessing=True)(x)\n", - " # adding CDL\n", - " base_model_FT = GlobalAveragePooling2D()(base_model)\n", - " Dense_L1 = Dense(512, activation='relu', kernel_regularizer=l2(0.02))(base_model_FT)\n", - " Dropout_L1 = Dropout(0.1)(Dense_L1) \n", - " BatchNorm_L2 = BatchNormalization()(Dropout_L1)\n", - " Dense_L2 = Dense(512, activation='relu', kernel_regularizer=l2(0.01))(BatchNorm_L2)\n", - " BatchNorm_L3 = BatchNormalization()(Dense_L2)\n", - " Dense_L3 = Dense(128, activation='relu')(BatchNorm_L3)\n", - " predictions = Dense(2, activation='softmax')(Dense_L3)\n", - "\n", - " model_EfficientNetB7_NS = Model(inputs=input, outputs=predictions) \n", - " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", - " #OPT/compile\n", - " opt = SGD(momentum=0.9)\n", - " # opt = Yogi()\n", - " model_EfficientNetB7_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy'])\n", - "\n", - " return model_EfficientNetB7_NS\n", - "\n", - "print('Creating the model...')\n", - "# Main\n", - "model = Eff_B7_NS()\n", - "model.summary(show_trainable=True, expand_nested=True)\n", - "print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### V(T) Beta4" - ] - }, - { - "cell_type": "code", - "execution_count": 8, + "execution_count": 11, "metadata": {}, "outputs": [ { @@ -7711,3864 +7416,2803 @@ "output_type": "stream", "text": [ "Creating the model...\n", - "Total layers in the base model: 230\n", + "Total layers in the base model: 467\n", "Freezing 0 layers in the base model...\n", "Percentage of the base model that is frozen: 0.00%\n", - "Total model layers: 238\n", - "Model: \"model\"\n", + "Total model layers: 475\n", + "Model: \"model_1\"\n", "_____________________________________________________________________________________________________________\n", " Layer (type) Output Shape Param # Connected to Trainable \n", "=============================================================================================================\n", - " input_1 (InputLayer) [(None, 224, 224, 3 0 [] Y \n", + " input_2 (InputLayer) [(None, 224, 224, 3 0 [] Y \n", " )] \n", " \n", - " stem_conv (Conv2D) (None, 112, 112, 32 864 ['input_1[0][0]'] Y \n", + " stem_conv (Conv2D) (None, 112, 112, 48 1296 ['input_2[0][0]'] Y \n", " ) \n", " \n", - " stem_bn (BatchNormalization) (None, 112, 112, 32 128 ['stem_conv[0][0]'] Y \n", + " stem_bn (BatchNormalization) (None, 112, 112, 48 192 ['stem_conv[0][0]'] Y \n", " ) \n", " \n", - " stem_activation (Activation) (None, 112, 112, 32 0 ['stem_bn[0][0]'] Y \n", + " stem_activation (Activation) (None, 112, 112, 48 0 ['stem_bn[0][0]'] Y \n", " ) \n", " \n", - " block1a_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['stem_activation[0][0]'] Y \n", + " block1a_dwconv (DepthwiseConv2 (None, 112, 112, 48 432 ['stem_activation[0][0]'] Y \n", " D) ) \n", " \n", - " block1a_bn (BatchNormalization (None, 112, 112, 32 128 ['block1a_dwconv[0][0]'] Y \n", + " block1a_bn (BatchNormalization (None, 112, 112, 48 192 ['block1a_dwconv[0][0]'] Y \n", " ) ) \n", " \n", - " block1a_activation (Activation (None, 112, 112, 32 0 ['block1a_bn[0][0]'] Y \n", + " block1a_activation (Activation (None, 112, 112, 48 0 ['block1a_bn[0][0]'] Y \n", " ) ) \n", " \n", - " block1a_se_squeeze (GlobalAver (None, 32) 0 ['block1a_activation[0][0]'] Y \n", + " block1a_se_squeeze (GlobalAver (None, 48) 0 ['block1a_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block1a_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1a_se_squeeze[0][0]'] Y \n", + " block1a_se_reshape (Reshape) (None, 1, 1, 48) 0 ['block1a_se_squeeze[0][0]'] Y \n", " \n", - " block1a_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1a_se_reshape[0][0]'] Y \n", + " block1a_se_reduce (Conv2D) (None, 1, 1, 12) 588 ['block1a_se_reshape[0][0]'] Y \n", " \n", - " block1a_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1a_se_reduce[0][0]'] Y \n", + " block1a_se_expand (Conv2D) (None, 1, 1, 48) 624 ['block1a_se_reduce[0][0]'] Y \n", " \n", - " block1a_se_excite (Multiply) (None, 112, 112, 32 0 ['block1a_activation[0][0]', Y \n", + " block1a_se_excite (Multiply) (None, 112, 112, 48 0 ['block1a_activation[0][0]', Y \n", " ) 'block1a_se_expand[0][0]'] \n", " \n", - " block1a_project_conv (Conv2D) (None, 112, 112, 16 512 ['block1a_se_excite[0][0]'] Y \n", + " block1a_project_conv (Conv2D) (None, 112, 112, 24 1152 ['block1a_se_excite[0][0]'] Y \n", " ) \n", " \n", - " block1a_project_bn (BatchNorma (None, 112, 112, 16 64 ['block1a_project_conv[0][0]'] Y \n", + " block1a_project_bn (BatchNorma (None, 112, 112, 24 96 ['block1a_project_conv[0][0]'] Y \n", " lization) ) \n", " \n", - " block2a_expand_conv (Conv2D) (None, 112, 112, 96 1536 ['block1a_project_bn[0][0]'] Y \n", + " block1b_dwconv (DepthwiseConv2 (None, 112, 112, 24 216 ['block1a_project_bn[0][0]'] Y \n", + " D) ) \n", + " \n", + " block1b_bn (BatchNormalization (None, 112, 112, 24 96 ['block1b_dwconv[0][0]'] Y \n", + " ) ) \n", + " \n", + " block1b_activation (Activation (None, 112, 112, 24 0 ['block1b_bn[0][0]'] Y \n", + " ) ) \n", + " \n", + " block1b_se_squeeze (GlobalAver (None, 24) 0 ['block1b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block1b_se_reshape (Reshape) (None, 1, 1, 24) 0 ['block1b_se_squeeze[0][0]'] Y \n", + " \n", + " block1b_se_reduce (Conv2D) (None, 1, 1, 6) 150 ['block1b_se_reshape[0][0]'] Y \n", + " \n", + " block1b_se_expand (Conv2D) (None, 1, 1, 24) 168 ['block1b_se_reduce[0][0]'] Y \n", + " \n", + " block1b_se_excite (Multiply) (None, 112, 112, 24 0 ['block1b_activation[0][0]', Y \n", + " ) 'block1b_se_expand[0][0]'] \n", + " \n", + " block1b_project_conv (Conv2D) (None, 112, 112, 24 576 ['block1b_se_excite[0][0]'] Y \n", " ) \n", " \n", - " block2a_expand_bn (BatchNormal (None, 112, 112, 96 384 ['block2a_expand_conv[0][0]'] Y \n", - " ization) ) \n", + " block1b_project_bn (BatchNorma (None, 112, 112, 24 96 ['block1b_project_conv[0][0]'] Y \n", + " lization) ) \n", " \n", - " block2a_expand_activation (Act (None, 112, 112, 96 0 ['block2a_expand_bn[0][0]'] Y \n", - " ivation) ) \n", + " block1b_drop (FixedDropout) (None, 112, 112, 24 0 ['block1b_project_bn[0][0]'] Y \n", + " ) \n", " \n", - " block2a_dwconv (DepthwiseConv2 (None, 56, 56, 96) 864 ['block2a_expand_activation[0][ Y \n", + " block1b_add (Add) (None, 112, 112, 24 0 ['block1b_drop[0][0]', Y \n", + " ) 'block1a_project_bn[0][0]'] \n", + " \n", + " block2a_expand_conv (Conv2D) (None, 112, 112, 14 3456 ['block1b_add[0][0]'] Y \n", + " 4) \n", + " \n", + " block2a_expand_bn (BatchNormal (None, 112, 112, 14 576 ['block2a_expand_conv[0][0]'] Y \n", + " ization) 4) \n", + " \n", + " block2a_expand_activation (Act (None, 112, 112, 14 0 ['block2a_expand_bn[0][0]'] Y \n", + " ivation) 4) \n", + " \n", + " block2a_dwconv (DepthwiseConv2 (None, 56, 56, 144) 1296 ['block2a_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block2a_bn (BatchNormalization (None, 56, 56, 96) 384 ['block2a_dwconv[0][0]'] Y \n", + " block2a_bn (BatchNormalization (None, 56, 56, 144) 576 ['block2a_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block2a_activation (Activation (None, 56, 56, 96) 0 ['block2a_bn[0][0]'] Y \n", + " block2a_activation (Activation (None, 56, 56, 144) 0 ['block2a_bn[0][0]'] Y \n", " ) \n", " \n", - " block2a_se_squeeze (GlobalAver (None, 96) 0 ['block2a_activation[0][0]'] Y \n", + " block2a_se_squeeze (GlobalAver (None, 144) 0 ['block2a_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block2a_se_reshape (Reshape) (None, 1, 1, 96) 0 ['block2a_se_squeeze[0][0]'] Y \n", + " block2a_se_reshape (Reshape) (None, 1, 1, 144) 0 ['block2a_se_squeeze[0][0]'] Y \n", " \n", - " block2a_se_reduce (Conv2D) (None, 1, 1, 4) 388 ['block2a_se_reshape[0][0]'] Y \n", + " block2a_se_reduce (Conv2D) (None, 1, 1, 6) 870 ['block2a_se_reshape[0][0]'] Y \n", " \n", - " block2a_se_expand (Conv2D) (None, 1, 1, 96) 480 ['block2a_se_reduce[0][0]'] Y \n", + " block2a_se_expand (Conv2D) (None, 1, 1, 144) 1008 ['block2a_se_reduce[0][0]'] Y \n", " \n", - " block2a_se_excite (Multiply) (None, 56, 56, 96) 0 ['block2a_activation[0][0]', Y \n", + " block2a_se_excite (Multiply) (None, 56, 56, 144) 0 ['block2a_activation[0][0]', Y \n", " 'block2a_se_expand[0][0]'] \n", " \n", - " block2a_project_conv (Conv2D) (None, 56, 56, 24) 2304 ['block2a_se_excite[0][0]'] Y \n", + " block2a_project_conv (Conv2D) (None, 56, 56, 32) 4608 ['block2a_se_excite[0][0]'] Y \n", " \n", - " block2a_project_bn (BatchNorma (None, 56, 56, 24) 96 ['block2a_project_conv[0][0]'] Y \n", + " block2a_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2a_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block2b_expand_conv (Conv2D) (None, 56, 56, 144) 3456 ['block2a_project_bn[0][0]'] Y \n", + " block2b_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2a_project_bn[0][0]'] Y \n", " \n", - " block2b_expand_bn (BatchNormal (None, 56, 56, 144) 576 ['block2b_expand_conv[0][0]'] Y \n", + " block2b_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block2b_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block2b_expand_activation (Act (None, 56, 56, 144) 0 ['block2b_expand_bn[0][0]'] Y \n", + " block2b_expand_activation (Act (None, 56, 56, 192) 0 ['block2b_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block2b_dwconv (DepthwiseConv2 (None, 56, 56, 144) 1296 ['block2b_expand_activation[0][ Y \n", + " block2b_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2b_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block2b_bn (BatchNormalization (None, 56, 56, 144) 576 ['block2b_dwconv[0][0]'] Y \n", + " block2b_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2b_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block2b_activation (Activation (None, 56, 56, 144) 0 ['block2b_bn[0][0]'] Y \n", + " block2b_activation (Activation (None, 56, 56, 192) 0 ['block2b_bn[0][0]'] Y \n", " ) \n", " \n", - " block2b_se_squeeze (GlobalAver (None, 144) 0 ['block2b_activation[0][0]'] Y \n", + " block2b_se_squeeze (GlobalAver (None, 192) 0 ['block2b_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block2b_se_reshape (Reshape) (None, 1, 1, 144) 0 ['block2b_se_squeeze[0][0]'] Y \n", + " block2b_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2b_se_squeeze[0][0]'] Y \n", " \n", - " block2b_se_reduce (Conv2D) (None, 1, 1, 6) 870 ['block2b_se_reshape[0][0]'] Y \n", + " block2b_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2b_se_reshape[0][0]'] Y \n", " \n", - " block2b_se_expand (Conv2D) (None, 1, 1, 144) 1008 ['block2b_se_reduce[0][0]'] Y \n", + " block2b_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2b_se_reduce[0][0]'] Y \n", " \n", - " block2b_se_excite (Multiply) (None, 56, 56, 144) 0 ['block2b_activation[0][0]', Y \n", + " block2b_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2b_activation[0][0]', Y \n", " 'block2b_se_expand[0][0]'] \n", " \n", - " block2b_project_conv (Conv2D) (None, 56, 56, 24) 3456 ['block2b_se_excite[0][0]'] Y \n", + " block2b_project_conv (Conv2D) (None, 56, 56, 32) 6144 ['block2b_se_excite[0][0]'] Y \n", " \n", - " block2b_project_bn (BatchNorma (None, 56, 56, 24) 96 ['block2b_project_conv[0][0]'] Y \n", + " block2b_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2b_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block2b_drop (FixedDropout) (None, 56, 56, 24) 0 ['block2b_project_bn[0][0]'] Y \n", + " block2b_drop (FixedDropout) (None, 56, 56, 32) 0 ['block2b_project_bn[0][0]'] Y \n", " \n", - " block2b_add (Add) (None, 56, 56, 24) 0 ['block2b_drop[0][0]', Y \n", + " block2b_add (Add) (None, 56, 56, 32) 0 ['block2b_drop[0][0]', Y \n", " 'block2a_project_bn[0][0]'] \n", " \n", - " block3a_expand_conv (Conv2D) (None, 56, 56, 144) 3456 ['block2b_add[0][0]'] Y \n", + " block2c_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2b_add[0][0]'] Y \n", " \n", - " block3a_expand_bn (BatchNormal (None, 56, 56, 144) 576 ['block3a_expand_conv[0][0]'] Y \n", + " block2c_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block2c_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block3a_expand_activation (Act (None, 56, 56, 144) 0 ['block3a_expand_bn[0][0]'] Y \n", + " block2c_expand_activation (Act (None, 56, 56, 192) 0 ['block2c_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block3a_dwconv (DepthwiseConv2 (None, 28, 28, 144) 3600 ['block3a_expand_activation[0][ Y \n", + " block2c_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2c_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block3a_bn (BatchNormalization (None, 28, 28, 144) 576 ['block3a_dwconv[0][0]'] Y \n", + " block2c_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2c_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block3a_activation (Activation (None, 28, 28, 144) 0 ['block3a_bn[0][0]'] Y \n", + " block2c_activation (Activation (None, 56, 56, 192) 0 ['block2c_bn[0][0]'] Y \n", " ) \n", " \n", - " block3a_se_squeeze (GlobalAver (None, 144) 0 ['block3a_activation[0][0]'] Y \n", + " block2c_se_squeeze (GlobalAver (None, 192) 0 ['block2c_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block3a_se_reshape (Reshape) (None, 1, 1, 144) 0 ['block3a_se_squeeze[0][0]'] Y \n", + " block2c_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2c_se_squeeze[0][0]'] Y \n", " \n", - " block3a_se_reduce (Conv2D) (None, 1, 1, 6) 870 ['block3a_se_reshape[0][0]'] Y \n", + " block2c_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2c_se_reshape[0][0]'] Y \n", " \n", - " block3a_se_expand (Conv2D) (None, 1, 1, 144) 1008 ['block3a_se_reduce[0][0]'] Y \n", + " block2c_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2c_se_reduce[0][0]'] Y \n", " \n", - " block3a_se_excite (Multiply) (None, 28, 28, 144) 0 ['block3a_activation[0][0]', Y \n", - " 'block3a_se_expand[0][0]'] \n", + " block2c_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2c_activation[0][0]', Y \n", + " 'block2c_se_expand[0][0]'] \n", " \n", - " block3a_project_conv (Conv2D) (None, 28, 28, 40) 5760 ['block3a_se_excite[0][0]'] Y \n", + " block2c_project_conv (Conv2D) (None, 56, 56, 32) 6144 ['block2c_se_excite[0][0]'] Y \n", " \n", - " block3a_project_bn (BatchNorma (None, 28, 28, 40) 160 ['block3a_project_conv[0][0]'] Y \n", + " block2c_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2c_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block3b_expand_conv (Conv2D) (None, 28, 28, 240) 9600 ['block3a_project_bn[0][0]'] Y \n", + " block2c_drop (FixedDropout) (None, 56, 56, 32) 0 ['block2c_project_bn[0][0]'] Y \n", " \n", - " block3b_expand_bn (BatchNormal (None, 28, 28, 240) 960 ['block3b_expand_conv[0][0]'] Y \n", + " block2c_add (Add) (None, 56, 56, 32) 0 ['block2c_drop[0][0]', Y \n", + " 'block2b_add[0][0]'] \n", + " \n", + " block2d_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2c_add[0][0]'] Y \n", + " \n", + " block2d_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block2d_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block3b_expand_activation (Act (None, 28, 28, 240) 0 ['block3b_expand_bn[0][0]'] Y \n", + " block2d_expand_activation (Act (None, 56, 56, 192) 0 ['block2d_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block3b_dwconv (DepthwiseConv2 (None, 28, 28, 240) 6000 ['block3b_expand_activation[0][ Y \n", + " block2d_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2d_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block3b_bn (BatchNormalization (None, 28, 28, 240) 960 ['block3b_dwconv[0][0]'] Y \n", + " block2d_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2d_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block3b_activation (Activation (None, 28, 28, 240) 0 ['block3b_bn[0][0]'] Y \n", + " block2d_activation (Activation (None, 56, 56, 192) 0 ['block2d_bn[0][0]'] Y \n", " ) \n", " \n", - " block3b_se_squeeze (GlobalAver (None, 240) 0 ['block3b_activation[0][0]'] Y \n", + " block2d_se_squeeze (GlobalAver (None, 192) 0 ['block2d_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block3b_se_reshape (Reshape) (None, 1, 1, 240) 0 ['block3b_se_squeeze[0][0]'] Y \n", + " block2d_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2d_se_squeeze[0][0]'] Y \n", " \n", - " block3b_se_reduce (Conv2D) (None, 1, 1, 10) 2410 ['block3b_se_reshape[0][0]'] Y \n", + " block2d_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2d_se_reshape[0][0]'] Y \n", " \n", - " block3b_se_expand (Conv2D) (None, 1, 1, 240) 2640 ['block3b_se_reduce[0][0]'] Y \n", + " block2d_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2d_se_reduce[0][0]'] Y \n", " \n", - " block3b_se_excite (Multiply) (None, 28, 28, 240) 0 ['block3b_activation[0][0]', Y \n", - " 'block3b_se_expand[0][0]'] \n", + " block2d_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2d_activation[0][0]', Y \n", + " 'block2d_se_expand[0][0]'] \n", " \n", - " block3b_project_conv (Conv2D) (None, 28, 28, 40) 9600 ['block3b_se_excite[0][0]'] Y \n", + " block2d_project_conv (Conv2D) (None, 56, 56, 32) 6144 ['block2d_se_excite[0][0]'] Y \n", " \n", - " block3b_project_bn (BatchNorma (None, 28, 28, 40) 160 ['block3b_project_conv[0][0]'] Y \n", + " block2d_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2d_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block3b_drop (FixedDropout) (None, 28, 28, 40) 0 ['block3b_project_bn[0][0]'] Y \n", + " block2d_drop (FixedDropout) (None, 56, 56, 32) 0 ['block2d_project_bn[0][0]'] Y \n", " \n", - " block3b_add (Add) (None, 28, 28, 40) 0 ['block3b_drop[0][0]', Y \n", - " 'block3a_project_bn[0][0]'] \n", + " block2d_add (Add) (None, 56, 56, 32) 0 ['block2d_drop[0][0]', Y \n", + " 'block2c_add[0][0]'] \n", " \n", - " block4a_expand_conv (Conv2D) (None, 28, 28, 240) 9600 ['block3b_add[0][0]'] Y \n", + " block3a_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2d_add[0][0]'] Y \n", " \n", - " block4a_expand_bn (BatchNormal (None, 28, 28, 240) 960 ['block4a_expand_conv[0][0]'] Y \n", + " block3a_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block3a_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block4a_expand_activation (Act (None, 28, 28, 240) 0 ['block4a_expand_bn[0][0]'] Y \n", + " block3a_expand_activation (Act (None, 56, 56, 192) 0 ['block3a_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block4a_dwconv (DepthwiseConv2 (None, 14, 14, 240) 2160 ['block4a_expand_activation[0][ Y \n", + " block3a_dwconv (DepthwiseConv2 (None, 28, 28, 192) 4800 ['block3a_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block4a_bn (BatchNormalization (None, 14, 14, 240) 960 ['block4a_dwconv[0][0]'] Y \n", + " block3a_bn (BatchNormalization (None, 28, 28, 192) 768 ['block3a_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block4a_activation (Activation (None, 14, 14, 240) 0 ['block4a_bn[0][0]'] Y \n", + " block3a_activation (Activation (None, 28, 28, 192) 0 ['block3a_bn[0][0]'] Y \n", " ) \n", " \n", - " block4a_se_squeeze (GlobalAver (None, 240) 0 ['block4a_activation[0][0]'] Y \n", + " block3a_se_squeeze (GlobalAver (None, 192) 0 ['block3a_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block4a_se_reshape (Reshape) (None, 1, 1, 240) 0 ['block4a_se_squeeze[0][0]'] Y \n", + " block3a_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block3a_se_squeeze[0][0]'] Y \n", " \n", - " block4a_se_reduce (Conv2D) (None, 1, 1, 10) 2410 ['block4a_se_reshape[0][0]'] Y \n", + " block3a_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block3a_se_reshape[0][0]'] Y \n", " \n", - " block4a_se_expand (Conv2D) (None, 1, 1, 240) 2640 ['block4a_se_reduce[0][0]'] Y \n", + " block3a_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block3a_se_reduce[0][0]'] Y \n", " \n", - " block4a_se_excite (Multiply) (None, 14, 14, 240) 0 ['block4a_activation[0][0]', Y \n", - " 'block4a_se_expand[0][0]'] \n", + " block3a_se_excite (Multiply) (None, 28, 28, 192) 0 ['block3a_activation[0][0]', Y \n", + " 'block3a_se_expand[0][0]'] \n", " \n", - " block4a_project_conv (Conv2D) (None, 14, 14, 80) 19200 ['block4a_se_excite[0][0]'] Y \n", + " block3a_project_conv (Conv2D) (None, 28, 28, 56) 10752 ['block3a_se_excite[0][0]'] Y \n", " \n", - " block4a_project_bn (BatchNorma (None, 14, 14, 80) 320 ['block4a_project_conv[0][0]'] Y \n", + " block3a_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3a_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block4b_expand_conv (Conv2D) (None, 14, 14, 480) 38400 ['block4a_project_bn[0][0]'] Y \n", + " block3b_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3a_project_bn[0][0]'] Y \n", " \n", - " block4b_expand_bn (BatchNormal (None, 14, 14, 480) 1920 ['block4b_expand_conv[0][0]'] Y \n", + " block3b_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block3b_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block4b_expand_activation (Act (None, 14, 14, 480) 0 ['block4b_expand_bn[0][0]'] Y \n", + " block3b_expand_activation (Act (None, 28, 28, 336) 0 ['block3b_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block4b_dwconv (DepthwiseConv2 (None, 14, 14, 480) 4320 ['block4b_expand_activation[0][ Y \n", + " block3b_dwconv (DepthwiseConv2 (None, 28, 28, 336) 8400 ['block3b_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block4b_bn (BatchNormalization (None, 14, 14, 480) 1920 ['block4b_dwconv[0][0]'] Y \n", + " block3b_bn (BatchNormalization (None, 28, 28, 336) 1344 ['block3b_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block4b_activation (Activation (None, 14, 14, 480) 0 ['block4b_bn[0][0]'] Y \n", + " block3b_activation (Activation (None, 28, 28, 336) 0 ['block3b_bn[0][0]'] Y \n", " ) \n", " \n", - " block4b_se_squeeze (GlobalAver (None, 480) 0 ['block4b_activation[0][0]'] Y \n", + " block3b_se_squeeze (GlobalAver (None, 336) 0 ['block3b_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block4b_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block4b_se_squeeze[0][0]'] Y \n", + " block3b_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block3b_se_squeeze[0][0]'] Y \n", " \n", - " block4b_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block4b_se_reshape[0][0]'] Y \n", + " block3b_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block3b_se_reshape[0][0]'] Y \n", " \n", - " block4b_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block4b_se_reduce[0][0]'] Y \n", + " block3b_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block3b_se_reduce[0][0]'] Y \n", " \n", - " block4b_se_excite (Multiply) (None, 14, 14, 480) 0 ['block4b_activation[0][0]', Y \n", - " 'block4b_se_expand[0][0]'] \n", + " block3b_se_excite (Multiply) (None, 28, 28, 336) 0 ['block3b_activation[0][0]', Y \n", + " 'block3b_se_expand[0][0]'] \n", " \n", - " block4b_project_conv (Conv2D) (None, 14, 14, 80) 38400 ['block4b_se_excite[0][0]'] Y \n", + " block3b_project_conv (Conv2D) (None, 28, 28, 56) 18816 ['block3b_se_excite[0][0]'] Y \n", " \n", - " block4b_project_bn (BatchNorma (None, 14, 14, 80) 320 ['block4b_project_conv[0][0]'] Y \n", + " block3b_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3b_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block4b_drop (FixedDropout) (None, 14, 14, 80) 0 ['block4b_project_bn[0][0]'] Y \n", + " block3b_drop (FixedDropout) (None, 28, 28, 56) 0 ['block3b_project_bn[0][0]'] Y \n", " \n", - " block4b_add (Add) (None, 14, 14, 80) 0 ['block4b_drop[0][0]', Y \n", - " 'block4a_project_bn[0][0]'] \n", + " block3b_add (Add) (None, 28, 28, 56) 0 ['block3b_drop[0][0]', Y \n", + " 'block3a_project_bn[0][0]'] \n", " \n", - " block4c_expand_conv (Conv2D) (None, 14, 14, 480) 38400 ['block4b_add[0][0]'] Y \n", + " block3c_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3b_add[0][0]'] Y \n", " \n", - " block4c_expand_bn (BatchNormal (None, 14, 14, 480) 1920 ['block4c_expand_conv[0][0]'] Y \n", + " block3c_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block3c_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block4c_expand_activation (Act (None, 14, 14, 480) 0 ['block4c_expand_bn[0][0]'] Y \n", + " block3c_expand_activation (Act (None, 28, 28, 336) 0 ['block3c_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block4c_dwconv (DepthwiseConv2 (None, 14, 14, 480) 4320 ['block4c_expand_activation[0][ Y \n", + " block3c_dwconv (DepthwiseConv2 (None, 28, 28, 336) 8400 ['block3c_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block4c_bn (BatchNormalization (None, 14, 14, 480) 1920 ['block4c_dwconv[0][0]'] Y \n", + " block3c_bn (BatchNormalization (None, 28, 28, 336) 1344 ['block3c_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block4c_activation (Activation (None, 14, 14, 480) 0 ['block4c_bn[0][0]'] Y \n", + " block3c_activation (Activation (None, 28, 28, 336) 0 ['block3c_bn[0][0]'] Y \n", " ) \n", " \n", - " block4c_se_squeeze (GlobalAver (None, 480) 0 ['block4c_activation[0][0]'] Y \n", + " block3c_se_squeeze (GlobalAver (None, 336) 0 ['block3c_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block4c_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block4c_se_squeeze[0][0]'] Y \n", + " block3c_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block3c_se_squeeze[0][0]'] Y \n", " \n", - " block4c_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block4c_se_reshape[0][0]'] Y \n", + " block3c_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block3c_se_reshape[0][0]'] Y \n", " \n", - " block4c_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block4c_se_reduce[0][0]'] Y \n", + " block3c_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block3c_se_reduce[0][0]'] Y \n", " \n", - " block4c_se_excite (Multiply) (None, 14, 14, 480) 0 ['block4c_activation[0][0]', Y \n", - " 'block4c_se_expand[0][0]'] \n", + " block3c_se_excite (Multiply) (None, 28, 28, 336) 0 ['block3c_activation[0][0]', Y \n", + " 'block3c_se_expand[0][0]'] \n", " \n", - " block4c_project_conv (Conv2D) (None, 14, 14, 80) 38400 ['block4c_se_excite[0][0]'] Y \n", + " block3c_project_conv (Conv2D) (None, 28, 28, 56) 18816 ['block3c_se_excite[0][0]'] Y \n", " \n", - " block4c_project_bn (BatchNorma (None, 14, 14, 80) 320 ['block4c_project_conv[0][0]'] Y \n", + " block3c_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3c_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block4c_drop (FixedDropout) (None, 14, 14, 80) 0 ['block4c_project_bn[0][0]'] Y \n", + " block3c_drop (FixedDropout) (None, 28, 28, 56) 0 ['block3c_project_bn[0][0]'] Y \n", " \n", - " block4c_add (Add) (None, 14, 14, 80) 0 ['block4c_drop[0][0]', Y \n", - " 'block4b_add[0][0]'] \n", + " block3c_add (Add) (None, 28, 28, 56) 0 ['block3c_drop[0][0]', Y \n", + " 'block3b_add[0][0]'] \n", " \n", - " block5a_expand_conv (Conv2D) (None, 14, 14, 480) 38400 ['block4c_add[0][0]'] Y \n", + " block3d_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3c_add[0][0]'] Y \n", " \n", - " block5a_expand_bn (BatchNormal (None, 14, 14, 480) 1920 ['block5a_expand_conv[0][0]'] Y \n", + " block3d_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block3d_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block5a_expand_activation (Act (None, 14, 14, 480) 0 ['block5a_expand_bn[0][0]'] Y \n", + " block3d_expand_activation (Act (None, 28, 28, 336) 0 ['block3d_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block5a_dwconv (DepthwiseConv2 (None, 14, 14, 480) 12000 ['block5a_expand_activation[0][ Y \n", + " block3d_dwconv (DepthwiseConv2 (None, 28, 28, 336) 8400 ['block3d_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block5a_bn (BatchNormalization (None, 14, 14, 480) 1920 ['block5a_dwconv[0][0]'] Y \n", + " block3d_bn (BatchNormalization (None, 28, 28, 336) 1344 ['block3d_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block5a_activation (Activation (None, 14, 14, 480) 0 ['block5a_bn[0][0]'] Y \n", + " block3d_activation (Activation (None, 28, 28, 336) 0 ['block3d_bn[0][0]'] Y \n", " ) \n", " \n", - " block5a_se_squeeze (GlobalAver (None, 480) 0 ['block5a_activation[0][0]'] Y \n", + " block3d_se_squeeze (GlobalAver (None, 336) 0 ['block3d_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block5a_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block5a_se_squeeze[0][0]'] Y \n", + " block3d_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block3d_se_squeeze[0][0]'] Y \n", " \n", - " block5a_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block5a_se_reshape[0][0]'] Y \n", + " block3d_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block3d_se_reshape[0][0]'] Y \n", " \n", - " block5a_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block5a_se_reduce[0][0]'] Y \n", + " block3d_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block3d_se_reduce[0][0]'] Y \n", " \n", - " block5a_se_excite (Multiply) (None, 14, 14, 480) 0 ['block5a_activation[0][0]', Y \n", - " 'block5a_se_expand[0][0]'] \n", + " block3d_se_excite (Multiply) (None, 28, 28, 336) 0 ['block3d_activation[0][0]', Y \n", + " 'block3d_se_expand[0][0]'] \n", " \n", - " block5a_project_conv (Conv2D) (None, 14, 14, 112) 53760 ['block5a_se_excite[0][0]'] Y \n", + " block3d_project_conv (Conv2D) (None, 28, 28, 56) 18816 ['block3d_se_excite[0][0]'] Y \n", " \n", - " block5a_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block5a_project_conv[0][0]'] Y \n", + " block3d_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3d_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block5b_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block5a_project_bn[0][0]'] Y \n", + " block3d_drop (FixedDropout) (None, 28, 28, 56) 0 ['block3d_project_bn[0][0]'] Y \n", " \n", - " block5b_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block5b_expand_conv[0][0]'] Y \n", + " block3d_add (Add) (None, 28, 28, 56) 0 ['block3d_drop[0][0]', Y \n", + " 'block3c_add[0][0]'] \n", + " \n", + " block4a_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3d_add[0][0]'] Y \n", + " \n", + " block4a_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block4a_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block5b_expand_activation (Act (None, 14, 14, 672) 0 ['block5b_expand_bn[0][0]'] Y \n", + " block4a_expand_activation (Act (None, 28, 28, 336) 0 ['block4a_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block5b_dwconv (DepthwiseConv2 (None, 14, 14, 672) 16800 ['block5b_expand_activation[0][ Y \n", + " block4a_dwconv (DepthwiseConv2 (None, 14, 14, 336) 3024 ['block4a_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block5b_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block5b_dwconv[0][0]'] Y \n", + " block4a_bn (BatchNormalization (None, 14, 14, 336) 1344 ['block4a_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block5b_activation (Activation (None, 14, 14, 672) 0 ['block5b_bn[0][0]'] Y \n", + " block4a_activation (Activation (None, 14, 14, 336) 0 ['block4a_bn[0][0]'] Y \n", " ) \n", " \n", - " block5b_se_squeeze (GlobalAver (None, 672) 0 ['block5b_activation[0][0]'] Y \n", + " block4a_se_squeeze (GlobalAver (None, 336) 0 ['block4a_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block5b_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block5b_se_squeeze[0][0]'] Y \n", + " block4a_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block4a_se_squeeze[0][0]'] Y \n", " \n", - " block5b_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block5b_se_reshape[0][0]'] Y \n", + " block4a_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block4a_se_reshape[0][0]'] Y \n", " \n", - " block5b_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block5b_se_reduce[0][0]'] Y \n", + " block4a_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block4a_se_reduce[0][0]'] Y \n", " \n", - " block5b_se_excite (Multiply) (None, 14, 14, 672) 0 ['block5b_activation[0][0]', Y \n", - " 'block5b_se_expand[0][0]'] \n", + " block4a_se_excite (Multiply) (None, 14, 14, 336) 0 ['block4a_activation[0][0]', Y \n", + " 'block4a_se_expand[0][0]'] \n", " \n", - " block5b_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block5b_se_excite[0][0]'] Y \n", + " block4a_project_conv (Conv2D) (None, 14, 14, 112) 37632 ['block4a_se_excite[0][0]'] Y \n", " \n", - " block5b_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block5b_project_conv[0][0]'] Y \n", + " block4a_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4a_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block5b_drop (FixedDropout) (None, 14, 14, 112) 0 ['block5b_project_bn[0][0]'] Y \n", - " \n", - " block5b_add (Add) (None, 14, 14, 112) 0 ['block5b_drop[0][0]', Y \n", - " 'block5a_project_bn[0][0]'] \n", - " \n", - " block5c_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block5b_add[0][0]'] Y \n", + " block4b_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4a_project_bn[0][0]'] Y \n", " \n", - " block5c_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block5c_expand_conv[0][0]'] Y \n", + " block4b_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4b_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block5c_expand_activation (Act (None, 14, 14, 672) 0 ['block5c_expand_bn[0][0]'] Y \n", + " block4b_expand_activation (Act (None, 14, 14, 672) 0 ['block4b_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block5c_dwconv (DepthwiseConv2 (None, 14, 14, 672) 16800 ['block5c_expand_activation[0][ Y \n", + " block4b_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4b_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block5c_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block5c_dwconv[0][0]'] Y \n", + " block4b_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4b_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block5c_activation (Activation (None, 14, 14, 672) 0 ['block5c_bn[0][0]'] Y \n", + " block4b_activation (Activation (None, 14, 14, 672) 0 ['block4b_bn[0][0]'] Y \n", " ) \n", " \n", - " block5c_se_squeeze (GlobalAver (None, 672) 0 ['block5c_activation[0][0]'] Y \n", + " block4b_se_squeeze (GlobalAver (None, 672) 0 ['block4b_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block5c_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block5c_se_squeeze[0][0]'] Y \n", + " block4b_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4b_se_squeeze[0][0]'] Y \n", " \n", - " block5c_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block5c_se_reshape[0][0]'] Y \n", + " block4b_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4b_se_reshape[0][0]'] Y \n", " \n", - " block5c_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block5c_se_reduce[0][0]'] Y \n", + " block4b_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4b_se_reduce[0][0]'] Y \n", " \n", - " block5c_se_excite (Multiply) (None, 14, 14, 672) 0 ['block5c_activation[0][0]', Y \n", - " 'block5c_se_expand[0][0]'] \n", + " block4b_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4b_activation[0][0]', Y \n", + " 'block4b_se_expand[0][0]'] \n", " \n", - " block5c_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block5c_se_excite[0][0]'] Y \n", + " block4b_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4b_se_excite[0][0]'] Y \n", " \n", - " block5c_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block5c_project_conv[0][0]'] Y \n", + " block4b_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4b_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block5c_drop (FixedDropout) (None, 14, 14, 112) 0 ['block5c_project_bn[0][0]'] Y \n", + " block4b_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4b_project_bn[0][0]'] Y \n", " \n", - " block5c_add (Add) (None, 14, 14, 112) 0 ['block5c_drop[0][0]', Y \n", - " 'block5b_add[0][0]'] \n", + " block4b_add (Add) (None, 14, 14, 112) 0 ['block4b_drop[0][0]', Y \n", + " 'block4a_project_bn[0][0]'] \n", " \n", - " block6a_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block5c_add[0][0]'] Y \n", + " block4c_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4b_add[0][0]'] Y \n", " \n", - " block6a_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block6a_expand_conv[0][0]'] Y \n", + " block4c_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4c_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block6a_expand_activation (Act (None, 14, 14, 672) 0 ['block6a_expand_bn[0][0]'] Y \n", + " block4c_expand_activation (Act (None, 14, 14, 672) 0 ['block4c_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block6a_dwconv (DepthwiseConv2 (None, 7, 7, 672) 16800 ['block6a_expand_activation[0][ Y \n", + " block4c_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4c_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block6a_bn (BatchNormalization (None, 7, 7, 672) 2688 ['block6a_dwconv[0][0]'] Y \n", + " block4c_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4c_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block6a_activation (Activation (None, 7, 7, 672) 0 ['block6a_bn[0][0]'] Y \n", + " block4c_activation (Activation (None, 14, 14, 672) 0 ['block4c_bn[0][0]'] Y \n", " ) \n", " \n", - " block6a_se_squeeze (GlobalAver (None, 672) 0 ['block6a_activation[0][0]'] Y \n", + " block4c_se_squeeze (GlobalAver (None, 672) 0 ['block4c_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block6a_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block6a_se_squeeze[0][0]'] Y \n", + " block4c_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4c_se_squeeze[0][0]'] Y \n", " \n", - " block6a_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block6a_se_reshape[0][0]'] Y \n", + " block4c_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4c_se_reshape[0][0]'] Y \n", " \n", - " block6a_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block6a_se_reduce[0][0]'] Y \n", + " block4c_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4c_se_reduce[0][0]'] Y \n", " \n", - " block6a_se_excite (Multiply) (None, 7, 7, 672) 0 ['block6a_activation[0][0]', Y \n", - " 'block6a_se_expand[0][0]'] \n", + " block4c_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4c_activation[0][0]', Y \n", + " 'block4c_se_expand[0][0]'] \n", " \n", - " block6a_project_conv (Conv2D) (None, 7, 7, 192) 129024 ['block6a_se_excite[0][0]'] Y \n", + " block4c_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4c_se_excite[0][0]'] Y \n", " \n", - " block6a_project_bn (BatchNorma (None, 7, 7, 192) 768 ['block6a_project_conv[0][0]'] Y \n", + " block4c_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4c_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block6b_expand_conv (Conv2D) (None, 7, 7, 1152) 221184 ['block6a_project_bn[0][0]'] Y \n", + " block4c_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4c_project_bn[0][0]'] Y \n", " \n", - " block6b_expand_bn (BatchNormal (None, 7, 7, 1152) 4608 ['block6b_expand_conv[0][0]'] Y \n", + " block4c_add (Add) (None, 14, 14, 112) 0 ['block4c_drop[0][0]', Y \n", + " 'block4b_add[0][0]'] \n", + " \n", + " block4d_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4c_add[0][0]'] Y \n", + " \n", + " block4d_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4d_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block6b_expand_activation (Act (None, 7, 7, 1152) 0 ['block6b_expand_bn[0][0]'] Y \n", + " block4d_expand_activation (Act (None, 14, 14, 672) 0 ['block4d_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block6b_dwconv (DepthwiseConv2 (None, 7, 7, 1152) 28800 ['block6b_expand_activation[0][ Y \n", + " block4d_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4d_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block6b_bn (BatchNormalization (None, 7, 7, 1152) 4608 ['block6b_dwconv[0][0]'] Y \n", + " block4d_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4d_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block6b_activation (Activation (None, 7, 7, 1152) 0 ['block6b_bn[0][0]'] Y \n", + " block4d_activation (Activation (None, 14, 14, 672) 0 ['block4d_bn[0][0]'] Y \n", " ) \n", " \n", - " block6b_se_squeeze (GlobalAver (None, 1152) 0 ['block6b_activation[0][0]'] Y \n", + " block4d_se_squeeze (GlobalAver (None, 672) 0 ['block4d_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block6b_se_reshape (Reshape) (None, 1, 1, 1152) 0 ['block6b_se_squeeze[0][0]'] Y \n", + " block4d_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4d_se_squeeze[0][0]'] Y \n", " \n", - " block6b_se_reduce (Conv2D) (None, 1, 1, 48) 55344 ['block6b_se_reshape[0][0]'] Y \n", + " block4d_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4d_se_reshape[0][0]'] Y \n", " \n", - " block6b_se_expand (Conv2D) (None, 1, 1, 1152) 56448 ['block6b_se_reduce[0][0]'] Y \n", + " block4d_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4d_se_reduce[0][0]'] Y \n", " \n", - " block6b_se_excite (Multiply) (None, 7, 7, 1152) 0 ['block6b_activation[0][0]', Y \n", - " 'block6b_se_expand[0][0]'] \n", + " block4d_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4d_activation[0][0]', Y \n", + " 'block4d_se_expand[0][0]'] \n", " \n", - " block6b_project_conv (Conv2D) (None, 7, 7, 192) 221184 ['block6b_se_excite[0][0]'] Y \n", + " block4d_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4d_se_excite[0][0]'] Y \n", " \n", - " block6b_project_bn (BatchNorma (None, 7, 7, 192) 768 ['block6b_project_conv[0][0]'] Y \n", + " block4d_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4d_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block6b_drop (FixedDropout) (None, 7, 7, 192) 0 ['block6b_project_bn[0][0]'] Y \n", + " block4d_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4d_project_bn[0][0]'] Y \n", " \n", - " block6b_add (Add) (None, 7, 7, 192) 0 ['block6b_drop[0][0]', Y \n", - " 'block6a_project_bn[0][0]'] \n", + " block4d_add (Add) (None, 14, 14, 112) 0 ['block4d_drop[0][0]', Y \n", + " 'block4c_add[0][0]'] \n", " \n", - " block6c_expand_conv (Conv2D) (None, 7, 7, 1152) 221184 ['block6b_add[0][0]'] Y \n", + " block4e_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4d_add[0][0]'] Y \n", " \n", - " block6c_expand_bn (BatchNormal (None, 7, 7, 1152) 4608 ['block6c_expand_conv[0][0]'] Y \n", + " block4e_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4e_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block6c_expand_activation (Act (None, 7, 7, 1152) 0 ['block6c_expand_bn[0][0]'] Y \n", + " block4e_expand_activation (Act (None, 14, 14, 672) 0 ['block4e_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block6c_dwconv (DepthwiseConv2 (None, 7, 7, 1152) 28800 ['block6c_expand_activation[0][ Y \n", + " block4e_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4e_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block6c_bn (BatchNormalization (None, 7, 7, 1152) 4608 ['block6c_dwconv[0][0]'] Y \n", + " block4e_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4e_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block6c_activation (Activation (None, 7, 7, 1152) 0 ['block6c_bn[0][0]'] Y \n", + " block4e_activation (Activation (None, 14, 14, 672) 0 ['block4e_bn[0][0]'] Y \n", " ) \n", " \n", - " block6c_se_squeeze (GlobalAver (None, 1152) 0 ['block6c_activation[0][0]'] Y \n", + " block4e_se_squeeze (GlobalAver (None, 672) 0 ['block4e_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block6c_se_reshape (Reshape) (None, 1, 1, 1152) 0 ['block6c_se_squeeze[0][0]'] Y \n", + " block4e_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4e_se_squeeze[0][0]'] Y \n", " \n", - " block6c_se_reduce (Conv2D) (None, 1, 1, 48) 55344 ['block6c_se_reshape[0][0]'] Y \n", + " block4e_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4e_se_reshape[0][0]'] Y \n", " \n", - " block6c_se_expand (Conv2D) (None, 1, 1, 1152) 56448 ['block6c_se_reduce[0][0]'] Y \n", + " block4e_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4e_se_reduce[0][0]'] Y \n", " \n", - " block6c_se_excite (Multiply) (None, 7, 7, 1152) 0 ['block6c_activation[0][0]', Y \n", - " 'block6c_se_expand[0][0]'] \n", + " block4e_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4e_activation[0][0]', Y \n", + " 'block4e_se_expand[0][0]'] \n", " \n", - " block6c_project_conv (Conv2D) (None, 7, 7, 192) 221184 ['block6c_se_excite[0][0]'] Y \n", + " block4e_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4e_se_excite[0][0]'] Y \n", " \n", - " block6c_project_bn (BatchNorma (None, 7, 7, 192) 768 ['block6c_project_conv[0][0]'] Y \n", + " block4e_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4e_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block6c_drop (FixedDropout) (None, 7, 7, 192) 0 ['block6c_project_bn[0][0]'] Y \n", + " block4e_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4e_project_bn[0][0]'] Y \n", " \n", - " block6c_add (Add) (None, 7, 7, 192) 0 ['block6c_drop[0][0]', Y \n", - " 'block6b_add[0][0]'] \n", + " block4e_add (Add) (None, 14, 14, 112) 0 ['block4e_drop[0][0]', Y \n", + " 'block4d_add[0][0]'] \n", " \n", - " block6d_expand_conv (Conv2D) (None, 7, 7, 1152) 221184 ['block6c_add[0][0]'] Y \n", + " block4f_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4e_add[0][0]'] Y \n", " \n", - " block6d_expand_bn (BatchNormal (None, 7, 7, 1152) 4608 ['block6d_expand_conv[0][0]'] Y \n", + " block4f_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4f_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block6d_expand_activation (Act (None, 7, 7, 1152) 0 ['block6d_expand_bn[0][0]'] Y \n", + " block4f_expand_activation (Act (None, 14, 14, 672) 0 ['block4f_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block6d_dwconv (DepthwiseConv2 (None, 7, 7, 1152) 28800 ['block6d_expand_activation[0][ Y \n", + " block4f_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4f_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block6d_bn (BatchNormalization (None, 7, 7, 1152) 4608 ['block6d_dwconv[0][0]'] Y \n", + " block4f_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4f_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block6d_activation (Activation (None, 7, 7, 1152) 0 ['block6d_bn[0][0]'] Y \n", + " block4f_activation (Activation (None, 14, 14, 672) 0 ['block4f_bn[0][0]'] Y \n", " ) \n", " \n", - " block6d_se_squeeze (GlobalAver (None, 1152) 0 ['block6d_activation[0][0]'] Y \n", + " block4f_se_squeeze (GlobalAver (None, 672) 0 ['block4f_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block6d_se_reshape (Reshape) (None, 1, 1, 1152) 0 ['block6d_se_squeeze[0][0]'] Y \n", + " block4f_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4f_se_squeeze[0][0]'] Y \n", " \n", - " block6d_se_reduce (Conv2D) (None, 1, 1, 48) 55344 ['block6d_se_reshape[0][0]'] Y \n", + " block4f_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4f_se_reshape[0][0]'] Y \n", " \n", - " block6d_se_expand (Conv2D) (None, 1, 1, 1152) 56448 ['block6d_se_reduce[0][0]'] Y \n", + " block4f_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4f_se_reduce[0][0]'] Y \n", " \n", - " block6d_se_excite (Multiply) (None, 7, 7, 1152) 0 ['block6d_activation[0][0]', Y \n", - " 'block6d_se_expand[0][0]'] \n", + " block4f_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4f_activation[0][0]', Y \n", + " 'block4f_se_expand[0][0]'] \n", " \n", - " block6d_project_conv (Conv2D) (None, 7, 7, 192) 221184 ['block6d_se_excite[0][0]'] Y \n", + " block4f_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4f_se_excite[0][0]'] Y \n", " \n", - " block6d_project_bn (BatchNorma (None, 7, 7, 192) 768 ['block6d_project_conv[0][0]'] Y \n", + " block4f_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4f_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " block6d_drop (FixedDropout) (None, 7, 7, 192) 0 ['block6d_project_bn[0][0]'] Y \n", + " block4f_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4f_project_bn[0][0]'] Y \n", " \n", - " block6d_add (Add) (None, 7, 7, 192) 0 ['block6d_drop[0][0]', Y \n", - " 'block6c_add[0][0]'] \n", + " block4f_add (Add) (None, 14, 14, 112) 0 ['block4f_drop[0][0]', Y \n", + " 'block4e_add[0][0]'] \n", " \n", - " block7a_expand_conv (Conv2D) (None, 7, 7, 1152) 221184 ['block6d_add[0][0]'] Y \n", + " block5a_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4f_add[0][0]'] Y \n", " \n", - " block7a_expand_bn (BatchNormal (None, 7, 7, 1152) 4608 ['block7a_expand_conv[0][0]'] Y \n", + " block5a_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block5a_expand_conv[0][0]'] Y \n", " ization) \n", " \n", - " block7a_expand_activation (Act (None, 7, 7, 1152) 0 ['block7a_expand_bn[0][0]'] Y \n", + " block5a_expand_activation (Act (None, 14, 14, 672) 0 ['block5a_expand_bn[0][0]'] Y \n", " ivation) \n", " \n", - " block7a_dwconv (DepthwiseConv2 (None, 7, 7, 1152) 10368 ['block7a_expand_activation[0][ Y \n", + " block5a_dwconv (DepthwiseConv2 (None, 14, 14, 672) 16800 ['block5a_expand_activation[0][ Y \n", " D) 0]'] \n", " \n", - " block7a_bn (BatchNormalization (None, 7, 7, 1152) 4608 ['block7a_dwconv[0][0]'] Y \n", + " block5a_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block5a_dwconv[0][0]'] Y \n", " ) \n", " \n", - " block7a_activation (Activation (None, 7, 7, 1152) 0 ['block7a_bn[0][0]'] Y \n", + " block5a_activation (Activation (None, 14, 14, 672) 0 ['block5a_bn[0][0]'] Y \n", " ) \n", " \n", - " block7a_se_squeeze (GlobalAver (None, 1152) 0 ['block7a_activation[0][0]'] Y \n", + " block5a_se_squeeze (GlobalAver (None, 672) 0 ['block5a_activation[0][0]'] Y \n", " agePooling2D) \n", " \n", - " block7a_se_reshape (Reshape) (None, 1, 1, 1152) 0 ['block7a_se_squeeze[0][0]'] Y \n", + " block5a_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block5a_se_squeeze[0][0]'] Y \n", " \n", - " block7a_se_reduce (Conv2D) (None, 1, 1, 48) 55344 ['block7a_se_reshape[0][0]'] Y \n", + " block5a_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block5a_se_reshape[0][0]'] Y \n", " \n", - " block7a_se_expand (Conv2D) (None, 1, 1, 1152) 56448 ['block7a_se_reduce[0][0]'] Y \n", + " block5a_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block5a_se_reduce[0][0]'] Y \n", " \n", - " block7a_se_excite (Multiply) (None, 7, 7, 1152) 0 ['block7a_activation[0][0]', Y \n", - " 'block7a_se_expand[0][0]'] \n", + " block5a_se_excite (Multiply) (None, 14, 14, 672) 0 ['block5a_activation[0][0]', Y \n", + " 'block5a_se_expand[0][0]'] \n", " \n", - " block7a_project_conv (Conv2D) (None, 7, 7, 320) 368640 ['block7a_se_excite[0][0]'] Y \n", + " block5a_project_conv (Conv2D) (None, 14, 14, 160) 107520 ['block5a_se_excite[0][0]'] Y \n", " \n", - " block7a_project_bn (BatchNorma (None, 7, 7, 320) 1280 ['block7a_project_conv[0][0]'] Y \n", + " block5a_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5a_project_conv[0][0]'] Y \n", " lization) \n", " \n", - " top_conv (Conv2D) (None, 7, 7, 1280) 409600 ['block7a_project_bn[0][0]'] Y \n", + " block5b_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5a_project_bn[0][0]'] Y \n", " \n", - " top_bn (BatchNormalization) (None, 7, 7, 1280) 5120 ['top_conv[0][0]'] Y \n", + " block5b_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5b_expand_conv[0][0]'] Y \n", + " ization) \n", " \n", - " top_activation (Activation) (None, 7, 7, 1280) 0 ['top_bn[0][0]'] Y \n", + " block5b_expand_activation (Act (None, 14, 14, 960) 0 ['block5b_expand_bn[0][0]'] Y \n", + " ivation) \n", " \n", - " FC_INPUT_Avg-Pooling (GlobalAv (None, 1280) 0 ['top_activation[0][0]'] Y \n", - " eragePooling2D) \n", + " block5b_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5b_expand_activation[0][ Y \n", + " D) 0]'] \n", " \n", - " FC_C_Dense-L1-512 (Dense) (None, 512) 655872 ['FC_INPUT_Avg-Pooling[0][0]'] Y \n", + " block5b_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5b_dwconv[0][0]'] Y \n", + " ) \n", " \n", - " FC_C_Dropout-L1-0.1 (Dropout) (None, 512) 0 ['FC_C_Dense-L1-512[0][0]'] Y \n", + " block5b_activation (Activation (None, 14, 14, 960) 0 ['block5b_bn[0][0]'] Y \n", + " ) \n", " \n", - " FC_C_Avg-BatchNormalization-L1 (None, 512) 2048 ['FC_C_Dropout-L1-0.1[0][0]'] Y \n", - " (BatchNormalization) \n", + " block5b_se_squeeze (GlobalAver (None, 960) 0 ['block5b_activation[0][0]'] Y \n", + " agePooling2D) \n", " \n", - " FC_C_Dense-L2-512 (Dense) (None, 256) 131328 ['FC_C_Avg-BatchNormalization-L Y \n", - " 1[0][0]'] \n", + " block5b_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5b_se_squeeze[0][0]'] Y \n", " \n", - " FC_C_Avg-BatchNormalization-L2 (None, 256) 1024 ['FC_C_Dense-L2-512[0][0]'] Y \n", - " (BatchNormalization) \n", + " block5b_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5b_se_reshape[0][0]'] Y \n", " \n", - " FC_C_Dense-L3-128 (Dense) (None, 128) 32896 ['FC_C_Avg-BatchNormalization-L Y \n", - " 2[0][0]'] \n", + " block5b_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5b_se_reduce[0][0]'] Y \n", " \n", - " FC_OUTPUT_Dense-2 (Dense) (None, 2) 258 ['FC_C_Dense-L3-128[0][0]'] Y \n", + " block5b_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5b_activation[0][0]', Y \n", + " 'block5b_se_expand[0][0]'] \n", " \n", - "=============================================================================================================\n", - "Total params: 4,872,990\n", - "Trainable params: 4,829,438\n", - "Non-trainable params: 43,552\n", - "_____________________________________________________________________________________________________________\n", - "done.\n" - ] - } - ], - "source": [ - "from efficientnet.keras import EfficientNetB0 as KENB0\n", - "# FUNC\n", - "def Eff_B0_NS(freeze_layers):\n", - " base_model = KENB0(input_shape=(\n", - " img_res[0], img_res[1], img_res[2]), weights='noisy-student', include_top=False)\n", - " print('Total layers in the base model: ', len(base_model.layers))\n", - " print(f'Freezing {freeze_layers} layers in the base model...')\n", - " # Freeze the specified number of layers\n", - " for layer in base_model.layers[:freeze_layers]:\n", - " layer.trainable = False\n", - "\n", - " # Unfreeze the rest\n", - " for layer in base_model.layers[freeze_layers:]:\n", - " layer.trainable = True\n", - "\n", - " # Calculate the percentage of the model that is frozen\n", - " frozen_percentage = ((freeze_layers + 1e-10) /\n", - " len(base_model.layers)) * 100\n", - " print(\n", - " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", - " # adding CDL>>>\n", - " #GlobalAveragePooling2D\n", - " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", - " #Dense\n", - " Dense_L1 = Dense(512, activation='relu',\n", - " kernel_regularizer=l2(0.02),\n", - " name='FC_C_Dense-L1-512'\n", - " )(base_model_FT)\n", - " #Dropout\n", - " Dropout_L1 = Dropout(0.1,\n", - " name='FC_C_Dropout-L1-0.1'\n", - " )(Dense_L1)\n", - " #BatchNormalization\n", - " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n", - " )(Dropout_L1)\n", - " #Dense\n", - " Dense_L2 = Dense(256, activation='relu',\n", - " kernel_regularizer=l2(0.01),\n", - " name='FC_C_Dense-L2-512'\n", - " )(BatchNorm_L2)\n", - " #BatchNormalization\n", - " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L2'\n", - " )(Dense_L2)\n", - " #Dense\n", - " Dense_L3 = Dense(128, activation='relu',\n", - " name='FC_C_Dense-L3-128'\n", - " )(BatchNorm_L3)\n", - " #Dense\n", - " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", - " predictions = Dense(2, activation='softmax',\n", - " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", - " # CDL<<<\n", - " model_EfficientNetB4_NS = Model(\n", - " inputs=base_model.input, outputs=predictions)\n", - " print('Total model layers: ', len(model_EfficientNetB4_NS.layers))\n", - " # OPT/compile\n", - " opt = SGD(momentum=0.92, nesterov=False)\n", - " # opt = Nadam()\n", - " # opt = Adamax()\n", - " # opt = RMSprop(momentum=0.9)\n", - " # opt = Adagrad()\n", - " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", - " # opt = Yogi()\n", - " model_EfficientNetB4_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", - "\n", - " return model_EfficientNetB4_NS\n", - "\n", - "print('Creating the model...')\n", - "# Main\n", - "freeze_layers = 0\n", - "model = Eff_B0_NS(freeze_layers)\n", - "model.summary(show_trainable=True, expand_nested=True)\n", - "print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### LR FINDER" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import gc\n", - "# Garbage Collection (memory)\n", - "gc.collect()\n", - "tf.keras.backend.clear_session()\n", - "#CONF/Other\n", - "LRF_OPT = SGD(momentum=0.9)\n", - "LFR_batch_size = 1 # or any other batch size that fits in your memory\n", - "LRF_dataset = tf.data.Dataset.from_tensor_slices((x_train, y_train)).batch(LFR_batch_size)\n", - "# Instantiate LrFinder\n", - "lr_find = LrFinder(model, LRF_OPT, tf.keras.losses.categorical_crossentropy)\n", - "\n", - "# Start range_test\n", - "lr_find.range_test(LRF_dataset)\n", - "lr_find.plot_lrs(skip_end=0, suggestion=True, show_grid=True)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Model vis" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dot_img_file = 'model_1.png'\n", - "keras.utils.plot_model(model, to_file=dot_img_file, show_shapes=True)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Loading the model" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Loading the full model" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import efficientnet.tfkeras\n", - "# Configuration\n", - "PRMC = False\n", - "freeze_from_opposite = False\n", - "Extra_EXT = '_T'\n", - "freeze_layers = 0 \n", - "randomly_frozen_layers = 0 \n", - "freeze_last_seven = False \n", - "# CEC_opt = Adagrad()\n", - "# CEC_opt = Yogi()\n", - "# CEC_opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=1e-3)\n", - "CEC_opt = SGD(momentum=0.9, nesterov=False)\n", - "# CEC_opt = Adam()\n", - "# Main\n", - "try:\n", - " if SAVE_TYPE == 'TF':\n", - " model = load_model(f'PAI_model{Extra_EXT}', compile=PRMC)\n", - " else:\n", - " model = load_model(f'PAI_model{Extra_EXT}.h5', compile=PRMC)\n", - "except (ImportError, IOError) as e:\n", - " print(f'\\033[91mfailed to load the model ERROR:\\n{e}')\n", - "else:\n", - " print('\\033[92mLoading model done.')\n", - " if not PRMC:\n", - " print('Compiling the AI model...\\033[0m')\n", - " \n", - " for layer in model.layers:\n", - " layer.trainable = True\n", - " \n", - " # Select random layers to freeze\n", - " frozen_layer_indices = random.sample(range(len(model.layers)), randomly_frozen_layers)\n", - " \n", - " for i, layer in enumerate(model.layers):\n", - " if i in frozen_layer_indices:\n", - " layer.trainable = False\n", - " else:\n", - " if freeze_from_opposite and (i > len(model.layers) - freeze_layers):\n", - " layer.trainable = False\n", - " elif (not freeze_from_opposite) and i < freeze_layers:\n", - " layer.trainable = False\n", - " else:\n", - " layer.trainable = True\n", - " \n", - " for layer in model.layers[-7:]:\n", - " layer.trainable = not freeze_last_seven\n", - " \n", - " model.compile(optimizer=CEC_opt, loss='categorical_crossentropy', metrics=['accuracy'])\n", - " model.summary(show_trainable=True, expand_nested=True)\n", - " print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Loading model weights" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "model.load_weights('PAI_model_weights.h5')\n", - "print('done.')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Reset FC" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "for layer in model.layers[-7:]:\n", - " if hasattr(layer, 'kernel_initializer') and hasattr(layer, 'bias_initializer'):\n", - " weight_initializer = layer.kernel_initializer\n", - " bias_initializer = layer.bias_initializer\n", - "\n", - " old_weights, old_biases = layer.get_weights()\n", - "\n", - " layer.set_weights([\n", - " weight_initializer(shape=old_weights.shape),\n", - " bias_initializer(shape=len(old_biases))\n", - " ])\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Training" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### Rev2 (THE BEST)\n", - "```\n", - "Working: ✅\n", - "Other:\n", - " + Tensorboard works.\n", - " + Perverts overfitting.\n", - " + Lower memory usage.\n", - " - Slow training.\n", - " + Achieving higher acc.\n", - " - Some models dont work.\n", - "```\n", - "- TODO:\n", - " - add Pruning" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "ExecuteTime": { - "end_time": "2023-12-28T07:04:23.573633300Z", - "start_time": "2023-12-28T02:31:32.468641900Z" - } - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Training the model...\n", - "\u001b[0;33m\n", - "Setup Verbose:\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSetting TensorBoard Log dir to \u001b[0m\u001b[0;32m[logs/fit/y2024_m02_d29-h14_m51_s51]\u001b[0m\u001b[0;36m...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mUse_extended_tensorboard \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mDebug_OUTPUT_DPS \u001b[0m\u001b[0;32m[True]\u001b[0m\u001b[0;36m.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mUse_OneCycleLr \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mUsing the modified ReduceLROnPlateau.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mOneCycleLr_UFTS \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0;33mSetup Verbose END.\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m1\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 0)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Loading fitted ImageDataGenerator...\u001b[0m\n", - "\u001b[0;33m- ImageDataGenerator fit done.\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m02_d29-h14_m53_s09\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 1/6\n", - "366/366 [==============================] - 31s 60ms/step - loss: 6.6653 - accuracy: 0.7860 - val_loss: 1.4964 - val_accuracy: 0.7420 - lr: 0.0100\n", - "Epoch 2/6\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.7452 - accuracy: 0.8799 - val_loss: 0.3893 - val_accuracy: 0.9054 - lr: 0.0100\n", - "Epoch 3/6\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.3348 - accuracy: 0.9003 - val_loss: 0.2708 - val_accuracy: 0.8958 - lr: 0.0100\n", - "Epoch 4/6\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.2637 - accuracy: 0.9187 - val_loss: 0.4863 - val_accuracy: 0.7821 - lr: 0.0100\n", - "Epoch 5/6\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.2211 - accuracy: 0.9317 - val_loss: 0.3759 - val_accuracy: 0.8558 - lr: 0.0100\n", - "Epoch 6/6\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1969 - accuracy: 0.9403 - val_loss: 0.4197 - val_accuracy: 0.8862 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-002-0.9054.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9054\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.3893\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.000000 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.905449\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32minf \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.3892704844\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m229.27 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m137.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.44 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [1] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m2\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 6)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 7/12\n", - "366/366 [==============================] - 23s 59ms/step - loss: 0.3972 - accuracy: 0.8857 - val_loss: 0.4236 - val_accuracy: 0.8590 - lr: 0.0100\n", - "Epoch 8/12\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.3055 - accuracy: 0.9003 - val_loss: 0.2175 - val_accuracy: 0.9151 - lr: 0.0100\n", - "Epoch 9/12\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.2556 - accuracy: 0.9155 - val_loss: 0.2480 - val_accuracy: 0.9231 - lr: 0.0100\n", - "Epoch 10/12\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.2164 - accuracy: 0.9302 - val_loss: 0.5680 - val_accuracy: 0.8670 - lr: 0.0100\n", - "Epoch 11/12\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.1879 - accuracy: 0.9441 - val_loss: 0.2536 - val_accuracy: 0.9103 - lr: 0.0100\n", - "Epoch 12/12\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.1795 - accuracy: 0.9432 - val_loss: 0.2268 - val_accuracy: 0.9231 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-009-0.9231.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9231\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2480\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.905449 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.923077\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.3892704844 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.2480491996\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m223.93 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m128.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [2] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m3\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 12)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 13/18\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.3029 - accuracy: 0.8987 - val_loss: 0.2165 - val_accuracy: 0.9439 - lr: 0.0100\n", - "Epoch 14/18\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.2615 - accuracy: 0.9138 - val_loss: 0.3931 - val_accuracy: 0.8510 - lr: 0.0100\n", - "Epoch 15/18\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.2290 - accuracy: 0.9278 - val_loss: 0.2150 - val_accuracy: 0.9311 - lr: 0.0100\n", - "Epoch 16/18\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1862 - accuracy: 0.9420 - val_loss: 0.2514 - val_accuracy: 0.9279 - lr: 0.0100\n", - "Epoch 17/18\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1718 - accuracy: 0.9483 - val_loss: 0.2599 - val_accuracy: 0.9167 - lr: 0.0100\n", - "Epoch 18/18\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1820 - accuracy: 0.9454 - val_loss: 0.2322 - val_accuracy: 0.9375 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-013-0.9439.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2165\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.923077 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.943910\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.2480491996 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.2164981365\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m222.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m125.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m96.39 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [3] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m4\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 18)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 19/24\n", - "366/366 [==============================] - 24s 60ms/step - loss: 0.2989 - accuracy: 0.9040 - val_loss: 0.2227 - val_accuracy: 0.9054 - lr: 0.0100\n", - "Epoch 20/24\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.2515 - accuracy: 0.9157 - val_loss: 0.3875 - val_accuracy: 0.8349 - lr: 0.0100\n", - "Epoch 21/24\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.2067 - accuracy: 0.9333 - val_loss: 0.4290 - val_accuracy: 0.7628 - lr: 0.0100\n", - "Epoch 22/24\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1932 - accuracy: 0.9398 - val_loss: 0.5184 - val_accuracy: 0.7788 - lr: 0.0100\n", - "Epoch 23/24\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1576 - accuracy: 0.9499 - val_loss: 0.4231 - val_accuracy: 0.9263 - lr: 0.0100\n", - "Epoch 24/24\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1486 - accuracy: 0.9567 - val_loss: 0.2922 - val_accuracy: 0.9006 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-023-0.9263.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9263\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.4231\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9439102411. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.2164981365. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m220.25 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m129.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.18 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [4] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m5\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 24)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 25/30\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.2931 - accuracy: 0.9025 - val_loss: 0.2578 - val_accuracy: 0.9103 - lr: 0.0100\n", - "Epoch 26/30\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.2268 - accuracy: 0.9304 - val_loss: 0.3001 - val_accuracy: 0.9391 - lr: 0.0100\n", - "Epoch 27/30\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1764 - accuracy: 0.9478 - val_loss: 0.2786 - val_accuracy: 0.9167 - lr: 0.0100\n", - "Epoch 28/30\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1744 - accuracy: 0.9507 - val_loss: 0.2659 - val_accuracy: 0.9151 - lr: 0.0100\n", - "Epoch 29/30\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1457 - accuracy: 0.9586 - val_loss: 0.3496 - val_accuracy: 0.8798 - lr: 0.0100\n", - "Epoch 30/30\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1333 - accuracy: 0.9661 - val_loss: 0.7506 - val_accuracy: 0.8045 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-026-0.9391.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9391\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.3001\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9439102411. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.2164981365. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m214.74 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.48 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.25 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [5] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m6\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 30)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 31/36\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.2807 - accuracy: 0.9119 - val_loss: 0.2550 - val_accuracy: 0.9327 - lr: 0.0100\n", - "Epoch 32/36\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.2180 - accuracy: 0.9321 - val_loss: 0.3120 - val_accuracy: 0.9119 - lr: 0.0100\n", - "Epoch 33/36\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1936 - accuracy: 0.9355 - val_loss: 0.3346 - val_accuracy: 0.9038 - lr: 0.0100\n", - "Epoch 34/36\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1594 - accuracy: 0.9518 - val_loss: 0.1873 - val_accuracy: 0.9471 - lr: 0.0100\n", - "Epoch 35/36\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1325 - accuracy: 0.9639 - val_loss: 0.1918 - val_accuracy: 0.9391 - lr: 0.0100\n", - "Epoch 36/36\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1298 - accuracy: 0.9653 - val_loss: 0.2610 - val_accuracy: 0.9279 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-034-0.9471.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9471\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1873\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.943910 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.947115\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.2164981365 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1872564852\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m219.85 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m125.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m93.87 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [6] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m7\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 36)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 37/42\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.2874 - accuracy: 0.9121 - val_loss: 0.2147 - val_accuracy: 0.9343 - lr: 0.0100\n", - "Epoch 38/42\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.2231 - accuracy: 0.9352 - val_loss: 0.2508 - val_accuracy: 0.9295 - lr: 0.0100\n", - "Epoch 39/42\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.1792 - accuracy: 0.9516 - val_loss: 0.2214 - val_accuracy: 0.9263 - lr: 0.0100\n", - "Epoch 40/42\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1501 - accuracy: 0.9595 - val_loss: 0.4272 - val_accuracy: 0.8429 - lr: 0.0100\n", - "Epoch 41/42\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1190 - accuracy: 0.9677 - val_loss: 0.2084 - val_accuracy: 0.9295 - lr: 0.0100\n", - "Epoch 42/42\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.1279 - accuracy: 0.9684 - val_loss: 0.2463 - val_accuracy: 0.9167 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-037-0.9343.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9343\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2147\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m219.17 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m127.38 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.79 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [7] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m8\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 42)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 43/48\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.2473 - accuracy: 0.9256 - val_loss: 0.2310 - val_accuracy: 0.8974 - lr: 0.0100\n", - "Epoch 44/48\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1858 - accuracy: 0.9458 - val_loss: 0.2239 - val_accuracy: 0.9343 - lr: 0.0100\n", - "Epoch 45/48\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1682 - accuracy: 0.9545 - val_loss: 0.2679 - val_accuracy: 0.8798 - lr: 0.0100\n", - "Epoch 46/48\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1491 - accuracy: 0.9579 - val_loss: 0.2604 - val_accuracy: 0.8926 - lr: 0.0100\n", - "Epoch 47/48\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1252 - accuracy: 0.9639 - val_loss: 0.2447 - val_accuracy: 0.9359 - lr: 0.0100\n", - "Epoch 48/48\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0998 - accuracy: 0.9755 - val_loss: 0.2264 - val_accuracy: 0.9407 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-048-0.9407.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2264\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m216.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m126.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m89.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [8] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m9\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 48)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 49/54\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.2560 - accuracy: 0.9235 - val_loss: 0.2655 - val_accuracy: 0.9247 - lr: 0.0100\n", - "Epoch 50/54\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1899 - accuracy: 0.9442 - val_loss: 0.3228 - val_accuracy: 0.8510 - lr: 0.0100\n", - "Epoch 51/54\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1637 - accuracy: 0.9490 - val_loss: 0.2941 - val_accuracy: 0.8894 - lr: 0.0100\n", - "Epoch 52/54\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1359 - accuracy: 0.9673 - val_loss: 0.4025 - val_accuracy: 0.8862 - lr: 0.0100\n", - "Epoch 53/54\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1436 - accuracy: 0.9637 - val_loss: 0.2121 - val_accuracy: 0.9471 - lr: 0.0100\n", - "Epoch 54/54\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1053 - accuracy: 0.9788 - val_loss: 0.3626 - val_accuracy: 0.9183 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-053-0.9471.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2122\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m216.64 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m124.93 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.70 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [9] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m10\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 54)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 55/60\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.2594 - accuracy: 0.9227 - val_loss: 0.2336 - val_accuracy: 0.9327 - lr: 0.0100\n", - "Epoch 56/60\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1871 - accuracy: 0.9501 - val_loss: 0.2288 - val_accuracy: 0.9407 - lr: 0.0100\n", - "Epoch 57/60\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1473 - accuracy: 0.9617 - val_loss: 0.2232 - val_accuracy: 0.9359 - lr: 0.0100\n", - "Epoch 58/60\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1251 - accuracy: 0.9689 - val_loss: 0.2326 - val_accuracy: 0.9279 - lr: 0.0100\n", - "Epoch 59/60\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0839 - accuracy: 0.9798 - val_loss: 0.2549 - val_accuracy: 0.9391 - lr: 0.0100\n", - "Epoch 60/60\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.0965 - accuracy: 0.9793 - val_loss: 0.2463 - val_accuracy: 0.9423 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-060-0.9423.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9423\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2463\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m214.95 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m124.44 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m90.51 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [10] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m11\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 60)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 61/66\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.2587 - accuracy: 0.9201 - val_loss: 0.1990 - val_accuracy: 0.9311 - lr: 0.0100\n", - "Epoch 62/66\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1849 - accuracy: 0.9425 - val_loss: 0.3178 - val_accuracy: 0.8638 - lr: 0.0100\n", - "Epoch 63/66\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1610 - accuracy: 0.9581 - val_loss: 0.5144 - val_accuracy: 0.7740 - lr: 0.0100\n", - "Epoch 64/66\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1342 - accuracy: 0.9692 - val_loss: 0.3000 - val_accuracy: 0.9231 - lr: 0.0100\n", - "Epoch 65/66\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.1083 - accuracy: 0.9737 - val_loss: 0.2032 - val_accuracy: 0.9423 - lr: 0.0100\n", - "Epoch 66/66\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0852 - accuracy: 0.9810 - val_loss: 0.2182 - val_accuracy: 0.9263 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-065-0.9423.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9423\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2032\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m220.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m126.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.52 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [11] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m12\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 66)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 67/72\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2604 - accuracy: 0.9268 - val_loss: 0.1935 - val_accuracy: 0.9583 - lr: 0.0100\n", - "Epoch 68/72\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1651 - accuracy: 0.9569 - val_loss: 0.3852 - val_accuracy: 0.8926 - lr: 0.0100\n", - "Epoch 69/72\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1295 - accuracy: 0.9641 - val_loss: 0.1867 - val_accuracy: 0.9439 - lr: 0.0100\n", - "Epoch 70/72\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1180 - accuracy: 0.9677 - val_loss: 0.2156 - val_accuracy: 0.9455 - lr: 0.0100\n", - "Epoch 71/72\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0965 - accuracy: 0.9764 - val_loss: 0.2010 - val_accuracy: 0.9439 - lr: 0.0100\n", - "Epoch 72/72\n", - "366/366 [==============================] - 19s 51ms/step - loss: 0.1046 - accuracy: 0.9761 - val_loss: 0.2792 - val_accuracy: 0.9231 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-067-0.9583.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1935\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.947115 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.958333\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1872564852. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m207.73 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.43 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m90.30 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [12] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m13\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 72)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 73/78\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2033 - accuracy: 0.9369 - val_loss: 0.1724 - val_accuracy: 0.9535 - lr: 0.0100\n", - "Epoch 74/78\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1620 - accuracy: 0.9524 - val_loss: 0.2472 - val_accuracy: 0.9215 - lr: 0.0100\n", - "Epoch 75/78\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1257 - accuracy: 0.9660 - val_loss: 0.2054 - val_accuracy: 0.9279 - lr: 0.0100\n", - "Epoch 76/78\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1057 - accuracy: 0.9749 - val_loss: 0.1894 - val_accuracy: 0.9503 - lr: 0.0100\n", - "Epoch 77/78\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0809 - accuracy: 0.9800 - val_loss: 0.2397 - val_accuracy: 0.9423 - lr: 0.0100\n", - "Epoch 78/78\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1003 - accuracy: 0.9761 - val_loss: 0.2016 - val_accuracy: 0.9359 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-073-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1724\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1872564852 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1723635942\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.92 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.67 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [13] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m14\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 78)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 79/84\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2118 - accuracy: 0.9343 - val_loss: 0.2300 - val_accuracy: 0.9119 - lr: 0.0100\n", - "Epoch 80/84\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1633 - accuracy: 0.9483 - val_loss: 0.2020 - val_accuracy: 0.9407 - lr: 0.0100\n", - "Epoch 81/84\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1364 - accuracy: 0.9600 - val_loss: 0.2054 - val_accuracy: 0.9359 - lr: 0.0100\n", - "Epoch 82/84\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1083 - accuracy: 0.9733 - val_loss: 0.2520 - val_accuracy: 0.9119 - lr: 0.0100\n", - "Epoch 83/84\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0983 - accuracy: 0.9762 - val_loss: 0.2651 - val_accuracy: 0.9199 - lr: 0.0100\n", - "Epoch 84/84\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0699 - accuracy: 0.9848 - val_loss: 0.3111 - val_accuracy: 0.9151 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-080-0.9407.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2020\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1723635942. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.34 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [14] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m15\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 84)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 85/90\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2199 - accuracy: 0.9294 - val_loss: 0.1876 - val_accuracy: 0.9551 - lr: 0.0100\n", - "Epoch 86/90\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1783 - accuracy: 0.9490 - val_loss: 0.4330 - val_accuracy: 0.8494 - lr: 0.0100\n", - "Epoch 87/90\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1196 - accuracy: 0.9678 - val_loss: 0.3361 - val_accuracy: 0.9263 - lr: 0.0100\n", - "Epoch 88/90\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0988 - accuracy: 0.9745 - val_loss: 0.3732 - val_accuracy: 0.9135 - lr: 0.0100\n", - "Epoch 89/90\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0963 - accuracy: 0.9766 - val_loss: 0.2456 - val_accuracy: 0.9455 - lr: 0.0100\n", - "Epoch 90/90\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0969 - accuracy: 0.9776 - val_loss: 0.4148 - val_accuracy: 0.9071 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-085-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1876\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1723635942. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.78 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.75 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [15] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m16\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 90)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 91/96\n", - "366/366 [==============================] - 21s 53ms/step - loss: 0.2133 - accuracy: 0.9379 - val_loss: 0.1913 - val_accuracy: 0.9455 - lr: 0.0100\n", - "Epoch 92/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1541 - accuracy: 0.9535 - val_loss: 0.2024 - val_accuracy: 0.9263 - lr: 0.0100\n", - "Epoch 93/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1314 - accuracy: 0.9619 - val_loss: 0.1984 - val_accuracy: 0.9407 - lr: 0.0100\n", - "Epoch 94/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1063 - accuracy: 0.9754 - val_loss: 0.1840 - val_accuracy: 0.9503 - lr: 0.0100\n", - "Epoch 95/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0889 - accuracy: 0.9802 - val_loss: 0.1975 - val_accuracy: 0.9455 - lr: 0.0100\n", - "Epoch 96/96\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0729 - accuracy: 0.9829 - val_loss: 0.2412 - val_accuracy: 0.9231 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-094-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1840\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1723635942. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.52 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [16] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m17\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 96)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 97/102\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2148 - accuracy: 0.9343 - val_loss: 0.1640 - val_accuracy: 0.9519 - lr: 0.0100\n", - "Epoch 98/102\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1570 - accuracy: 0.9538 - val_loss: 0.2423 - val_accuracy: 0.9071 - lr: 0.0100\n", - "Epoch 99/102\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1092 - accuracy: 0.9731 - val_loss: 0.2588 - val_accuracy: 0.9183 - lr: 0.0100\n", - "Epoch 100/102\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0907 - accuracy: 0.9774 - val_loss: 0.1908 - val_accuracy: 0.9375 - lr: 0.0100\n", - "Epoch 101/102\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0763 - accuracy: 0.9824 - val_loss: 0.3325 - val_accuracy: 0.9151 - lr: 0.0100\n", - "Epoch 102/102\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0865 - accuracy: 0.9803 - val_loss: 0.1915 - val_accuracy: 0.9439 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-097-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1640\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1723635942 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1640251279\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.29 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m83.13 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [17] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m18\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 102)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 103/108\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2147 - accuracy: 0.9365 - val_loss: 0.1958 - val_accuracy: 0.9439 - lr: 0.0100\n", - "Epoch 104/108\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1566 - accuracy: 0.9569 - val_loss: 0.1760 - val_accuracy: 0.9455 - lr: 0.0100\n", - "Epoch 105/108\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1117 - accuracy: 0.9684 - val_loss: 0.2404 - val_accuracy: 0.9359 - lr: 0.0100\n", - "Epoch 106/108\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0882 - accuracy: 0.9786 - val_loss: 0.2202 - val_accuracy: 0.9391 - lr: 0.0100\n", - "Epoch 107/108\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1349 - accuracy: 0.9625 - val_loss: 0.2006 - val_accuracy: 0.9519 - lr: 0.0100\n", - "Epoch 108/108\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0739 - accuracy: 0.9829 - val_loss: 0.3931 - val_accuracy: 0.9038 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-107-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2006\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.82 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.38 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.45 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [18] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m19\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 108)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 109/114\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2193 - accuracy: 0.9341 - val_loss: 0.1944 - val_accuracy: 0.9375 - lr: 0.0100\n", - "Epoch 110/114\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1531 - accuracy: 0.9567 - val_loss: 0.4085 - val_accuracy: 0.8750 - lr: 0.0100\n", - "Epoch 111/114\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1208 - accuracy: 0.9696 - val_loss: 0.3156 - val_accuracy: 0.9167 - lr: 0.0100\n", - "Epoch 112/114\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0959 - accuracy: 0.9764 - val_loss: 0.2254 - val_accuracy: 0.9327 - lr: 0.0100\n", - "Epoch 113/114\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0815 - accuracy: 0.9812 - val_loss: 0.3595 - val_accuracy: 0.8942 - lr: 0.0100\n", - "Epoch 114/114\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0688 - accuracy: 0.9867 - val_loss: 0.2561 - val_accuracy: 0.9295 - lr: 0.0100\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-109-0.9375.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9375\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1944\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.34 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.19 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [19] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m20\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 114)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 115/120\n", - "365/366 [============================>.] - ETA: 0s - loss: 0.2032 - accuracy: 0.9361\n", - "Epoch 115: ReduceLROnPlateau reducing learning rate to 0.009499999787658453.\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2031 - accuracy: 0.9362 - val_loss: 0.1928 - val_accuracy: 0.9423 - lr: 0.0100\n", - "Epoch 116/120\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1653 - accuracy: 0.9516 - val_loss: 0.1700 - val_accuracy: 0.9487 - lr: 0.0095\n", - "Epoch 117/120\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1192 - accuracy: 0.9680 - val_loss: 0.3368 - val_accuracy: 0.9087 - lr: 0.0095\n", - "Epoch 118/120\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1055 - accuracy: 0.9735 - val_loss: 0.2844 - val_accuracy: 0.9327 - lr: 0.0095\n", - "Epoch 119/120\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0870 - accuracy: 0.9771 - val_loss: 0.4639 - val_accuracy: 0.8782 - lr: 0.0095\n", - "Epoch 120/120\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0740 - accuracy: 0.9827 - val_loss: 0.4725 - val_accuracy: 0.9087 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-116-0.9487.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1700\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.47 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.45 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [20] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m21\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 120)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 121/126\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1918 - accuracy: 0.9394 - val_loss: 0.2095 - val_accuracy: 0.9359 - lr: 0.0095\n", - "Epoch 122/126\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1408 - accuracy: 0.9593 - val_loss: 0.2417 - val_accuracy: 0.9327 - lr: 0.0095\n", - "Epoch 123/126\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1132 - accuracy: 0.9678 - val_loss: 0.2165 - val_accuracy: 0.9455 - lr: 0.0095\n", - "Epoch 124/126\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0866 - accuracy: 0.9786 - val_loss: 0.2033 - val_accuracy: 0.9343 - lr: 0.0095\n", - "Epoch 125/126\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0751 - accuracy: 0.9839 - val_loss: 0.2164 - val_accuracy: 0.9407 - lr: 0.0095\n", - "Epoch 126/126\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0701 - accuracy: 0.9867 - val_loss: 0.2657 - val_accuracy: 0.9375 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-123-0.9455.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2165\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.35 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.63 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.72 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [21] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m22\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 126)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 127/132\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1954 - accuracy: 0.9418 - val_loss: 0.1628 - val_accuracy: 0.9487 - lr: 0.0095\n", - "Epoch 128/132\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1427 - accuracy: 0.9566 - val_loss: 0.4082 - val_accuracy: 0.8894 - lr: 0.0095\n", - "Epoch 129/132\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1116 - accuracy: 0.9696 - val_loss: 0.2475 - val_accuracy: 0.9423 - lr: 0.0095\n", - "Epoch 130/132\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0829 - accuracy: 0.9817 - val_loss: 0.1677 - val_accuracy: 0.9519 - lr: 0.0095\n", - "Epoch 131/132\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0803 - accuracy: 0.9819 - val_loss: 0.2718 - val_accuracy: 0.9455 - lr: 0.0095\n", - "Epoch 132/132\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0771 - accuracy: 0.9832 - val_loss: 0.1848 - val_accuracy: 0.9551 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-132-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1848\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.88 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.72 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [22] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m23\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 132)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 133/138\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2137 - accuracy: 0.9372 - val_loss: 0.1736 - val_accuracy: 0.9535 - lr: 0.0095\n", - "Epoch 134/138\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1563 - accuracy: 0.9562 - val_loss: 0.2229 - val_accuracy: 0.9183 - lr: 0.0095\n", - "Epoch 135/138\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1127 - accuracy: 0.9711 - val_loss: 0.1956 - val_accuracy: 0.9471 - lr: 0.0095\n", - "Epoch 136/138\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0889 - accuracy: 0.9802 - val_loss: 0.3771 - val_accuracy: 0.8878 - lr: 0.0095\n", - "Epoch 137/138\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0706 - accuracy: 0.9824 - val_loss: 0.2678 - val_accuracy: 0.9375 - lr: 0.0095\n", - "Epoch 138/138\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0706 - accuracy: 0.9846 - val_loss: 0.3875 - val_accuracy: 0.9503 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-133-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1736\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9583333135. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.20 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.78 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.42 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [23] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m24\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 138)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 139/144\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1893 - accuracy: 0.9432 - val_loss: 0.2358 - val_accuracy: 0.9151 - lr: 0.0095\n", - "Epoch 140/144\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1412 - accuracy: 0.9608 - val_loss: 0.2494 - val_accuracy: 0.9199 - lr: 0.0095\n", - "Epoch 141/144\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0999 - accuracy: 0.9731 - val_loss: 0.2231 - val_accuracy: 0.9391 - lr: 0.0095\n", - "Epoch 142/144\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0801 - accuracy: 0.9800 - val_loss: 0.1718 - val_accuracy: 0.9631 - lr: 0.0095\n", - "Epoch 143/144\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0753 - accuracy: 0.9851 - val_loss: 0.1816 - val_accuracy: 0.9487 - lr: 0.0095\n", - "Epoch 144/144\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0584 - accuracy: 0.9865 - val_loss: 0.1874 - val_accuracy: 0.9471 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-142-0.9631.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9631\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1718\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.958333 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.963141\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.06 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.47 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [24] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m25\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 144)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 145/150\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.2001 - accuracy: 0.9405 - val_loss: 0.2071 - val_accuracy: 0.9375 - lr: 0.0095\n", - "Epoch 146/150\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1367 - accuracy: 0.9627 - val_loss: 0.1533 - val_accuracy: 0.9535 - lr: 0.0095\n", - "Epoch 147/150\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0998 - accuracy: 0.9737 - val_loss: 0.1731 - val_accuracy: 0.9503 - lr: 0.0095\n", - "Epoch 148/150\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0779 - accuracy: 0.9805 - val_loss: 0.1966 - val_accuracy: 0.9567 - lr: 0.0095\n", - "Epoch 149/150\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0750 - accuracy: 0.9827 - val_loss: 0.1798 - val_accuracy: 0.9519 - lr: 0.0095\n", - "Epoch 150/150\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0649 - accuracy: 0.9873 - val_loss: 0.3749 - val_accuracy: 0.8990 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-148-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1966\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m203.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m83.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [25] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m26\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 150)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 151/156\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2088 - accuracy: 0.9350 - val_loss: 0.1861 - val_accuracy: 0.9455 - lr: 0.0095\n", - "Epoch 152/156\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1315 - accuracy: 0.9625 - val_loss: 0.2289 - val_accuracy: 0.9327 - lr: 0.0095\n", - "Epoch 153/156\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0981 - accuracy: 0.9733 - val_loss: 0.1754 - val_accuracy: 0.9487 - lr: 0.0095\n", - "Epoch 154/156\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0819 - accuracy: 0.9807 - val_loss: 0.5241 - val_accuracy: 0.8894 - lr: 0.0095\n", - "Epoch 155/156\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0678 - accuracy: 0.9841 - val_loss: 0.3241 - val_accuracy: 0.9279 - lr: 0.0095\n", - "Epoch 156/156\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0634 - accuracy: 0.9856 - val_loss: 0.5862 - val_accuracy: 0.8814 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-153-0.9487.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1754\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.94 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [26] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m27\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 156)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 157/162\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1902 - accuracy: 0.9417 - val_loss: 0.2014 - val_accuracy: 0.9375 - lr: 0.0095\n", - "Epoch 158/162\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1355 - accuracy: 0.9600 - val_loss: 0.2242 - val_accuracy: 0.9407 - lr: 0.0095\n", - "Epoch 159/162\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1036 - accuracy: 0.9740 - val_loss: 0.2177 - val_accuracy: 0.9263 - lr: 0.0095\n", - "Epoch 160/162\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0829 - accuracy: 0.9788 - val_loss: 0.4008 - val_accuracy: 0.9071 - lr: 0.0095\n", - "Epoch 161/162\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0741 - accuracy: 0.9815 - val_loss: 0.2212 - val_accuracy: 0.9391 - lr: 0.0095\n", - "Epoch 162/162\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0550 - accuracy: 0.9892 - val_loss: 0.3319 - val_accuracy: 0.9247 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-158-0.9407.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2242\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m203.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.66 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.36 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [27] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m28\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 162)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 163/168\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1807 - accuracy: 0.9470 - val_loss: 0.1855 - val_accuracy: 0.9391 - lr: 0.0095\n", - "Epoch 164/168\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1340 - accuracy: 0.9607 - val_loss: 0.1799 - val_accuracy: 0.9423 - lr: 0.0095\n", - "Epoch 165/168\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0879 - accuracy: 0.9788 - val_loss: 0.2900 - val_accuracy: 0.9279 - lr: 0.0095\n", - "Epoch 166/168\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0772 - accuracy: 0.9812 - val_loss: 0.2162 - val_accuracy: 0.9343 - lr: 0.0095\n", - "Epoch 167/168\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0623 - accuracy: 0.9853 - val_loss: 0.2107 - val_accuracy: 0.9391 - lr: 0.0095\n", - "Epoch 168/168\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0623 - accuracy: 0.9872 - val_loss: 0.2354 - val_accuracy: 0.9263 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-164-0.9423.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9423\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1799\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.73 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.78 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.95 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [28] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m29\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 168)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 169/174\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1772 - accuracy: 0.9451 - val_loss: 0.1965 - val_accuracy: 0.9263 - lr: 0.0095\n", - "Epoch 170/174\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1278 - accuracy: 0.9636 - val_loss: 0.2487 - val_accuracy: 0.9199 - lr: 0.0095\n", - "Epoch 171/174\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1020 - accuracy: 0.9762 - val_loss: 0.4315 - val_accuracy: 0.9279 - lr: 0.0095\n", - "Epoch 172/174\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0856 - accuracy: 0.9805 - val_loss: 0.4638 - val_accuracy: 0.8830 - lr: 0.0095\n", - "Epoch 173/174\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0680 - accuracy: 0.9841 - val_loss: 0.2388 - val_accuracy: 0.9375 - lr: 0.0095\n", - "Epoch 174/174\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0691 - accuracy: 0.9843 - val_loss: 0.2450 - val_accuracy: 0.9375 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-173-0.9375.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9375\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2388\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m203.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.75 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [29] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m30\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 174)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 175/180\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1887 - accuracy: 0.9482 - val_loss: 0.1749 - val_accuracy: 0.9519 - lr: 0.0095\n", - "Epoch 176/180\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1304 - accuracy: 0.9665 - val_loss: 0.2173 - val_accuracy: 0.9375 - lr: 0.0095\n", - "Epoch 177/180\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0910 - accuracy: 0.9761 - val_loss: 0.2561 - val_accuracy: 0.9295 - lr: 0.0095\n", - "Epoch 178/180\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0691 - accuracy: 0.9836 - val_loss: 0.2810 - val_accuracy: 0.9215 - lr: 0.0095\n", - "Epoch 179/180\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0683 - accuracy: 0.9858 - val_loss: 0.3478 - val_accuracy: 0.9071 - lr: 0.0095\n", - "Epoch 180/180\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0519 - accuracy: 0.9882 - val_loss: 0.3221 - val_accuracy: 0.9439 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-175-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1749\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [30] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m31\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 180)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 181/186\n", - "366/366 [==============================] - 21s 53ms/step - loss: 0.1901 - accuracy: 0.9439 - val_loss: 0.2325 - val_accuracy: 0.9119 - lr: 0.0095\n", - "Epoch 182/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1385 - accuracy: 0.9615 - val_loss: 0.2267 - val_accuracy: 0.9391 - lr: 0.0095\n", - "Epoch 183/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1085 - accuracy: 0.9718 - val_loss: 0.2042 - val_accuracy: 0.9391 - lr: 0.0095\n", - "Epoch 184/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0779 - accuracy: 0.9795 - val_loss: 0.1841 - val_accuracy: 0.9359 - lr: 0.0095\n", - "Epoch 185/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0675 - accuracy: 0.9855 - val_loss: 0.1921 - val_accuracy: 0.9535 - lr: 0.0095\n", - "Epoch 186/186\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0693 - accuracy: 0.9827 - val_loss: 0.2805 - val_accuracy: 0.9359 - lr: 0.0095\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-185-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1921\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m198.90 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.01 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.90 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [31] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m32\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 186)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33m└───Shuffling data...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 187/192\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1975 - accuracy: 0.9429 - val_loss: 0.2513 - val_accuracy: 0.9119 - lr: 0.0095\n", - "Epoch 188/192\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1266 - accuracy: 0.9639 - val_loss: 0.2057 - val_accuracy: 0.9311 - lr: 0.0095\n", - "Epoch 189/192\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0870 - accuracy: 0.9762 - val_loss: 0.2292 - val_accuracy: 0.9407 - lr: 0.0095\n", - "Epoch 190/192\n", - "366/366 [==============================] - ETA: 0s - loss: 0.0741 - accuracy: 0.9836\n", - "Epoch 190: ReduceLROnPlateau reducing learning rate to 0.009024999709799886.\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0741 - accuracy: 0.9836 - val_loss: 0.2149 - val_accuracy: 0.9407 - lr: 0.0095\n", - "Epoch 191/192\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0666 - accuracy: 0.9843 - val_loss: 0.1717 - val_accuracy: 0.9551 - lr: 0.0090\n", - "Epoch 192/192\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0437 - accuracy: 0.9933 - val_loss: 0.2202 - val_accuracy: 0.9567 - lr: 0.0090\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-192-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2202\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.36 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.67 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [32] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m33\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 192)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 193/198\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1938 - accuracy: 0.9495 - val_loss: 0.2620 - val_accuracy: 0.9231 - lr: 0.0090\n", - "Epoch 194/198\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1164 - accuracy: 0.9716 - val_loss: 0.2127 - val_accuracy: 0.9439 - lr: 0.0090\n", - "Epoch 195/198\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0924 - accuracy: 0.9796 - val_loss: 0.3926 - val_accuracy: 0.9231 - lr: 0.0090\n", - "Epoch 196/198\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0677 - accuracy: 0.9851 - val_loss: 0.2297 - val_accuracy: 0.9407 - lr: 0.0090\n", - "Epoch 197/198\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0759 - accuracy: 0.9817 - val_loss: 0.2357 - val_accuracy: 0.9439 - lr: 0.0090\n", - "Epoch 198/198\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0538 - accuracy: 0.9899 - val_loss: 0.3371 - val_accuracy: 0.9215 - lr: 0.0090\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-194-0.9439.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2127\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.08 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [33] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m34\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 198)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 199/204\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1822 - accuracy: 0.9465 - val_loss: 0.1777 - val_accuracy: 0.9455 - lr: 0.0090\n", - "Epoch 200/204\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1326 - accuracy: 0.9641 - val_loss: 0.1924 - val_accuracy: 0.9455 - lr: 0.0090\n", - "Epoch 201/204\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0907 - accuracy: 0.9757 - val_loss: 0.2015 - val_accuracy: 0.9439 - lr: 0.0090\n", - "Epoch 202/204\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0647 - accuracy: 0.9848 - val_loss: 0.2639 - val_accuracy: 0.9327 - lr: 0.0090\n", - "Epoch 203/204\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0575 - accuracy: 0.9860 - val_loss: 0.1819 - val_accuracy: 0.9519 - lr: 0.0090\n", - "Epoch 204/204\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0425 - accuracy: 0.9916 - val_loss: 0.2494 - val_accuracy: 0.9471 - lr: 0.0090\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-203-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1819\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.82 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [34] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m35\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 204)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 205/210\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1881 - accuracy: 0.9410 - val_loss: 0.2134 - val_accuracy: 0.9407 - lr: 0.0090\n", - "Epoch 206/210\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1214 - accuracy: 0.9678 - val_loss: 0.2818 - val_accuracy: 0.9375 - lr: 0.0090\n", - "Epoch 207/210\n", - "366/366 [==============================] - 19s 51ms/step - loss: 0.0947 - accuracy: 0.9761 - val_loss: 0.1971 - val_accuracy: 0.9311 - lr: 0.0090\n", - "Epoch 208/210\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0676 - accuracy: 0.9844 - val_loss: 0.2918 - val_accuracy: 0.9391 - lr: 0.0090\n", - "Epoch 209/210\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0633 - accuracy: 0.9865 - val_loss: 0.2375 - val_accuracy: 0.9391 - lr: 0.0090\n", - "Epoch 210/210\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0557 - accuracy: 0.9894 - val_loss: 0.3272 - val_accuracy: 0.9151 - lr: 0.0090\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-205-0.9407.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2134\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1640251279. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m197.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.90 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [35] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m36\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 210)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 211/216\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1802 - accuracy: 0.9468 - val_loss: 0.1623 - val_accuracy: 0.9455 - lr: 0.0090\n", - "Epoch 212/216\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1325 - accuracy: 0.9641 - val_loss: 0.3039 - val_accuracy: 0.8894 - lr: 0.0090\n", - "Epoch 213/216\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1014 - accuracy: 0.9752 - val_loss: 0.2054 - val_accuracy: 0.9343 - lr: 0.0090\n", - "Epoch 214/216\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0776 - accuracy: 0.9812 - val_loss: 0.4122 - val_accuracy: 0.8830 - lr: 0.0090\n", - "Epoch 215/216\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0579 - accuracy: 0.9875 - val_loss: 0.2895 - val_accuracy: 0.9327 - lr: 0.0090\n", - "Epoch 216/216\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0953 - accuracy: 0.9766 - val_loss: 0.9459 - val_accuracy: 0.7740 - lr: 0.0090\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-211-0.9455.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1624\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1640251279 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1623503417\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.51 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.88 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [36] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m37\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 216)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 217/222\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1558 - accuracy: 0.9524 - val_loss: 0.2708 - val_accuracy: 0.9087 - lr: 0.0090\n", - "Epoch 218/222\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1159 - accuracy: 0.9678 - val_loss: 0.1806 - val_accuracy: 0.9391 - lr: 0.0090\n", - "Epoch 219/222\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0884 - accuracy: 0.9793 - val_loss: 0.4853 - val_accuracy: 0.8846 - lr: 0.0090\n", - "Epoch 220/222\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0705 - accuracy: 0.9831 - val_loss: 0.1582 - val_accuracy: 0.9631 - lr: 0.0090\n", - "Epoch 221/222\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0542 - accuracy: 0.9891 - val_loss: 0.1939 - val_accuracy: 0.9567 - lr: 0.0090\n", - "Epoch 222/222\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0531 - accuracy: 0.9887 - val_loss: 0.2286 - val_accuracy: 0.9439 - lr: 0.0090\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-220-0.9631.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9631\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1582\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1623503417 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1581732184\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.13 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.81 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [37] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m38\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 222)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 223/228\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1827 - accuracy: 0.9483 - val_loss: 0.2623 - val_accuracy: 0.9119 - lr: 0.0090\n", - "Epoch 224/228\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1156 - accuracy: 0.9699 - val_loss: 0.1609 - val_accuracy: 0.9503 - lr: 0.0090\n", - "Epoch 225/228\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0830 - accuracy: 0.9781 - val_loss: 0.1679 - val_accuracy: 0.9471 - lr: 0.0090\n", - "Epoch 226/228\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0606 - accuracy: 0.9853 - val_loss: 0.3393 - val_accuracy: 0.9343 - lr: 0.0090\n", - "Epoch 227/228\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0497 - accuracy: 0.9911 - val_loss: 0.2521 - val_accuracy: 0.9423 - lr: 0.0090\n", - "Epoch 228/228\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0578 - accuracy: 0.9921 - val_loss: 0.2283 - val_accuracy: 0.9487 - lr: 0.0090\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-224-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1609\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1581732184. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.24 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.46 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.77 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [38] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m39\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 228)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 229/234\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1718 - accuracy: 0.9475 - val_loss: 0.1678 - val_accuracy: 0.9487 - lr: 0.0090\n", - "Epoch 230/234\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1302 - accuracy: 0.9619 - val_loss: 0.1780 - val_accuracy: 0.9503 - lr: 0.0090\n", - "Epoch 231/234\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0918 - accuracy: 0.9761 - val_loss: 0.4040 - val_accuracy: 0.9087 - lr: 0.0090\n", - "Epoch 232/234\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0717 - accuracy: 0.9846 - val_loss: 0.2767 - val_accuracy: 0.9263 - lr: 0.0090\n", - "Epoch 233/234\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0622 - accuracy: 0.9851 - val_loss: 0.3809 - val_accuracy: 0.9151 - lr: 0.0090\n", - "Epoch 234/234\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0572 - accuracy: 0.9902 - val_loss: 0.7363 - val_accuracy: 0.8590 - lr: 0.0090\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-230-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1779\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1581732184. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.48 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.50 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [39] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m40\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 234)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 235/240\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1672 - accuracy: 0.9492 - val_loss: 0.2512 - val_accuracy: 0.9167 - lr: 0.0090\n", - "Epoch 236/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1221 - accuracy: 0.9651 - val_loss: 0.3716 - val_accuracy: 0.8974 - lr: 0.0090\n", - "Epoch 237/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0945 - accuracy: 0.9802 - val_loss: 0.1822 - val_accuracy: 0.9487 - lr: 0.0090\n", - "Epoch 238/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0692 - accuracy: 0.9826 - val_loss: 0.1737 - val_accuracy: 0.9455 - lr: 0.0090\n", - "Epoch 239/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0688 - accuracy: 0.9860 - val_loss: 0.2778 - val_accuracy: 0.9327 - lr: 0.0090\n", - "Epoch 240/240\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0548 - accuracy: 0.9892 - val_loss: 0.2084 - val_accuracy: 0.9375 - lr: 0.0090\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-237-0.9487.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1822\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1581732184. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.55 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.10 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [40] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m41\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 240)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 241/246\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1620 - accuracy: 0.9499 - val_loss: 0.1682 - val_accuracy: 0.9567 - lr: 0.0090\n", - "Epoch 242/246\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1175 - accuracy: 0.9682 - val_loss: 0.2344 - val_accuracy: 0.9295 - lr: 0.0090\n", - "Epoch 243/246\n", - "365/366 [============================>.] - ETA: 0s - loss: 0.0795 - accuracy: 0.9810\n", - "Epoch 243: ReduceLROnPlateau reducing learning rate to 0.008573750033974648.\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0795 - accuracy: 0.9810 - val_loss: 0.1750 - val_accuracy: 0.9471 - lr: 0.0090\n", - "Epoch 244/246\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0655 - accuracy: 0.9844 - val_loss: 0.2334 - val_accuracy: 0.9359 - lr: 0.0086\n", - "Epoch 245/246\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0520 - accuracy: 0.9885 - val_loss: 0.4432 - val_accuracy: 0.8718 - lr: 0.0086\n", - "Epoch 246/246\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0523 - accuracy: 0.9906 - val_loss: 0.2261 - val_accuracy: 0.9423 - lr: 0.0086\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-241-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1682\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9631410241. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1581732184. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.58 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [41] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m42\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 246)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m02_d29-h17_m14_s05\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 247/252\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1631 - accuracy: 0.9477 - val_loss: 0.1511 - val_accuracy: 0.9647 - lr: 0.0086\n", - "Epoch 248/252\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1240 - accuracy: 0.9639 - val_loss: 0.3919 - val_accuracy: 0.8846 - lr: 0.0086\n", - "Epoch 249/252\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0823 - accuracy: 0.9762 - val_loss: 0.1953 - val_accuracy: 0.9359 - lr: 0.0086\n", - "Epoch 250/252\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0787 - accuracy: 0.9817 - val_loss: 0.2526 - val_accuracy: 0.9279 - lr: 0.0086\n", - "Epoch 251/252\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0519 - accuracy: 0.9904 - val_loss: 0.1624 - val_accuracy: 0.9519 - lr: 0.0086\n", - "Epoch 252/252\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0550 - accuracy: 0.9879 - val_loss: 0.5036 - val_accuracy: 0.9215 - lr: 0.0086\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-247-0.9647.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9647\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1511\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.963141 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.964744\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1581732184 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1511378735\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m209.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.03 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [42] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m43\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 252)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 253/258\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1676 - accuracy: 0.9468 - val_loss: 0.1480 - val_accuracy: 0.9519 - lr: 0.0086\n", - "Epoch 254/258\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1222 - accuracy: 0.9672 - val_loss: 0.2920 - val_accuracy: 0.9295 - lr: 0.0086\n", - "Epoch 255/258\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0898 - accuracy: 0.9737 - val_loss: 0.5387 - val_accuracy: 0.8846 - lr: 0.0086\n", - "Epoch 256/258\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0774 - accuracy: 0.9841 - val_loss: 0.1780 - val_accuracy: 0.9503 - lr: 0.0086\n", - "Epoch 257/258\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0541 - accuracy: 0.9872 - val_loss: 0.3867 - val_accuracy: 0.9359 - lr: 0.0086\n", - "Epoch 258/258\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0597 - accuracy: 0.9887 - val_loss: 0.5682 - val_accuracy: 0.8702 - lr: 0.0086\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-253-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1480\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1511378735 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1480352581\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.42 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.74 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [43] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m44\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 258)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 259/264\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1490 - accuracy: 0.9535 - val_loss: 0.1558 - val_accuracy: 0.9487 - lr: 0.0086\n", - "Epoch 260/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1101 - accuracy: 0.9702 - val_loss: 0.1801 - val_accuracy: 0.9487 - lr: 0.0086\n", - "Epoch 261/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0938 - accuracy: 0.9755 - val_loss: 0.3549 - val_accuracy: 0.9071 - lr: 0.0086\n", - "Epoch 262/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0677 - accuracy: 0.9832 - val_loss: 0.1872 - val_accuracy: 0.9503 - lr: 0.0086\n", - "Epoch 263/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0528 - accuracy: 0.9875 - val_loss: 0.3440 - val_accuracy: 0.9391 - lr: 0.0086\n", - "Epoch 264/264\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0516 - accuracy: 0.9892 - val_loss: 0.2368 - val_accuracy: 0.9455 - lr: 0.0086\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-262-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1872\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m197.87 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.18 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [44] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m45\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 264)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 265/270\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1584 - accuracy: 0.9535 - val_loss: 0.1454 - val_accuracy: 0.9567 - lr: 0.0086\n", - "Epoch 266/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1205 - accuracy: 0.9687 - val_loss: 0.1504 - val_accuracy: 0.9599 - lr: 0.0086\n", - "Epoch 267/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0837 - accuracy: 0.9793 - val_loss: 0.2561 - val_accuracy: 0.9199 - lr: 0.0086\n", - "Epoch 268/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0790 - accuracy: 0.9824 - val_loss: 0.1982 - val_accuracy: 0.9407 - lr: 0.0086\n", - "Epoch 269/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0514 - accuracy: 0.9891 - val_loss: 0.2214 - val_accuracy: 0.9503 - lr: 0.0086\n", - "Epoch 270/270\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0531 - accuracy: 0.9873 - val_loss: 0.2867 - val_accuracy: 0.9407 - lr: 0.0086\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-266-0.9599.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9599\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1504\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.97 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.06 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [45] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m46\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 270)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 271/276\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1577 - accuracy: 0.9519 - val_loss: 0.1714 - val_accuracy: 0.9471 - lr: 0.0086\n", - "Epoch 272/276\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1125 - accuracy: 0.9673 - val_loss: 0.1889 - val_accuracy: 0.9391 - lr: 0.0086\n", - "Epoch 273/276\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0757 - accuracy: 0.9815 - val_loss: 0.3932 - val_accuracy: 0.8974 - lr: 0.0086\n", - "Epoch 274/276\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0820 - accuracy: 0.9814 - val_loss: 0.1895 - val_accuracy: 0.9519 - lr: 0.0086\n", - "Epoch 275/276\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0534 - accuracy: 0.9880 - val_loss: 0.3728 - val_accuracy: 0.9151 - lr: 0.0086\n", - "Epoch 276/276\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0422 - accuracy: 0.9923 - val_loss: 0.6337 - val_accuracy: 0.8686 - lr: 0.0086\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-274-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1894\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.87 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [46] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m47\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 276)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 277/282\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1727 - accuracy: 0.9528 - val_loss: 0.2081 - val_accuracy: 0.9375 - lr: 0.0086\n", - "Epoch 278/282\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1331 - accuracy: 0.9629 - val_loss: 0.1784 - val_accuracy: 0.9487 - lr: 0.0086\n", - "Epoch 279/282\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0885 - accuracy: 0.9793 - val_loss: 0.1819 - val_accuracy: 0.9615 - lr: 0.0086\n", - "Epoch 280/282\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0722 - accuracy: 0.9817 - val_loss: 0.1774 - val_accuracy: 0.9599 - lr: 0.0086\n", - "Epoch 281/282\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0536 - accuracy: 0.9885 - val_loss: 0.2732 - val_accuracy: 0.9375 - lr: 0.0086\n", - "Epoch 282/282\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0548 - accuracy: 0.9896 - val_loss: 0.1667 - val_accuracy: 0.9599 - lr: 0.0086\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-279-0.9615.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1819\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.51 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.86 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [47] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m48\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 282)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 283/288\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1742 - accuracy: 0.9456 - val_loss: 0.1775 - val_accuracy: 0.9327 - lr: 0.0086\n", - "Epoch 284/288\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1094 - accuracy: 0.9684 - val_loss: 0.1814 - val_accuracy: 0.9391 - lr: 0.0086\n", - "Epoch 285/288\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0901 - accuracy: 0.9762 - val_loss: 0.1725 - val_accuracy: 0.9583 - lr: 0.0086\n", - "Epoch 286/288\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0740 - accuracy: 0.9836 - val_loss: 0.1607 - val_accuracy: 0.9567 - lr: 0.0086\n", - "Epoch 287/288\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0573 - accuracy: 0.9868 - val_loss: 0.2204 - val_accuracy: 0.9311 - lr: 0.0086\n", - "Epoch 288/288\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0496 - accuracy: 0.9891 - val_loss: 0.2225 - val_accuracy: 0.9279 - lr: 0.0086\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-285-0.9583.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1725\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.75 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [48] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m49\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 288)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 289/294\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1603 - accuracy: 0.9536 - val_loss: 0.2128 - val_accuracy: 0.9487 - lr: 0.0086\n", - "Epoch 290/294\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1082 - accuracy: 0.9689 - val_loss: 0.2046 - val_accuracy: 0.9407 - lr: 0.0086\n", - "Epoch 291/294\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0737 - accuracy: 0.9819 - val_loss: 0.2969 - val_accuracy: 0.9391 - lr: 0.0086\n", - "Epoch 292/294\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0654 - accuracy: 0.9837 - val_loss: 0.2191 - val_accuracy: 0.9471 - lr: 0.0086\n", - "Epoch 293/294\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0463 - accuracy: 0.9902 - val_loss: 0.1924 - val_accuracy: 0.9455 - lr: 0.0086\n", - "Epoch 294/294\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0479 - accuracy: 0.9906 - val_loss: 0.2347 - val_accuracy: 0.9519 - lr: 0.0086\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-294-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2348\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.99 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [49] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m50\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 294)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 295/300\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.2019 - accuracy: 0.9406 - val_loss: 0.1554 - val_accuracy: 0.9583 - lr: 0.0086\n", - "Epoch 296/300\n", - "366/366 [==============================] - ETA: 0s - loss: 0.1171 - accuracy: 0.9637\n", - "Epoch 296: ReduceLROnPlateau reducing learning rate to 0.008145062532275914.\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1171 - accuracy: 0.9637 - val_loss: 0.1928 - val_accuracy: 0.9343 - lr: 0.0086\n", - "Epoch 297/300\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0861 - accuracy: 0.9796 - val_loss: 0.5329 - val_accuracy: 0.9215 - lr: 0.0081\n", - "Epoch 298/300\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0853 - accuracy: 0.9757 - val_loss: 0.1790 - val_accuracy: 0.9615 - lr: 0.0081\n", - "Epoch 299/300\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0485 - accuracy: 0.9899 - val_loss: 0.3676 - val_accuracy: 0.9423 - lr: 0.0081\n", - "Epoch 300/300\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0514 - accuracy: 0.9891 - val_loss: 0.2564 - val_accuracy: 0.9247 - lr: 0.0081\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-298-0.9615.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1791\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m198.86 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m117.95 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.91 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [50] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m51\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 300)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 301/306\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1675 - accuracy: 0.9477 - val_loss: 0.2300 - val_accuracy: 0.9391 - lr: 0.0081\n", - "Epoch 302/306\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1177 - accuracy: 0.9663 - val_loss: 0.1547 - val_accuracy: 0.9615 - lr: 0.0081\n", - "Epoch 303/306\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0892 - accuracy: 0.9778 - val_loss: 0.2677 - val_accuracy: 0.9215 - lr: 0.0081\n", - "Epoch 304/306\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0588 - accuracy: 0.9880 - val_loss: 0.2955 - val_accuracy: 0.9343 - lr: 0.0081\n", - "Epoch 305/306\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0520 - accuracy: 0.9891 - val_loss: 0.3094 - val_accuracy: 0.9503 - lr: 0.0081\n", - "Epoch 306/306\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0477 - accuracy: 0.9918 - val_loss: 0.3404 - val_accuracy: 0.9279 - lr: 0.0081\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-302-0.9615.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1547\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.15 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.23 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.92 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [51] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m52\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 306)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 307/312\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1717 - accuracy: 0.9465 - val_loss: 0.3964 - val_accuracy: 0.8942 - lr: 0.0081\n", - "Epoch 308/312\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1219 - accuracy: 0.9677 - val_loss: 0.2203 - val_accuracy: 0.9247 - lr: 0.0081\n", - "Epoch 309/312\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0779 - accuracy: 0.9822 - val_loss: 0.2918 - val_accuracy: 0.9375 - lr: 0.0081\n", - "Epoch 310/312\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0641 - accuracy: 0.9831 - val_loss: 0.2030 - val_accuracy: 0.9439 - lr: 0.0081\n", - "Epoch 311/312\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0499 - accuracy: 0.9901 - val_loss: 0.4132 - val_accuracy: 0.9215 - lr: 0.0081\n", - "Epoch 312/312\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0532 - accuracy: 0.9892 - val_loss: 0.4055 - val_accuracy: 0.9215 - lr: 0.0081\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-310-0.9439.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2030\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.64 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.34 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.30 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [52] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m53\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 312)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 313/318\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1548 - accuracy: 0.9576 - val_loss: 0.1932 - val_accuracy: 0.9471 - lr: 0.0081\n", - "Epoch 314/318\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1085 - accuracy: 0.9696 - val_loss: 0.3754 - val_accuracy: 0.9151 - lr: 0.0081\n", - "Epoch 315/318\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0671 - accuracy: 0.9829 - val_loss: 0.2502 - val_accuracy: 0.9279 - lr: 0.0081\n", - "Epoch 316/318\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0558 - accuracy: 0.9877 - val_loss: 0.2734 - val_accuracy: 0.9311 - lr: 0.0081\n", - "Epoch 317/318\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0513 - accuracy: 0.9897 - val_loss: 0.3104 - val_accuracy: 0.9359 - lr: 0.0081\n", - "Epoch 318/318\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0411 - accuracy: 0.9921 - val_loss: 0.3359 - val_accuracy: 0.9215 - lr: 0.0081\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-313-0.9471.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9471\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1933\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.63 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.35 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.29 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [53] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m54\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 318)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 319/324\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1581 - accuracy: 0.9471 - val_loss: 0.1889 - val_accuracy: 0.9375 - lr: 0.0081\n", - "Epoch 320/324\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1100 - accuracy: 0.9684 - val_loss: 0.3070 - val_accuracy: 0.8974 - lr: 0.0081\n", - "Epoch 321/324\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0774 - accuracy: 0.9805 - val_loss: 0.2811 - val_accuracy: 0.9439 - lr: 0.0081\n", - "Epoch 322/324\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0518 - accuracy: 0.9872 - val_loss: 0.3805 - val_accuracy: 0.9247 - lr: 0.0081\n", - "Epoch 323/324\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0633 - accuracy: 0.9882 - val_loss: 0.3095 - val_accuracy: 0.9151 - lr: 0.0081\n", - "Epoch 324/324\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0878 - accuracy: 0.9793 - val_loss: 0.2006 - val_accuracy: 0.9487 - lr: 0.0081\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-324-0.9487.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2006\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [54] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m55\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 324)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 325/330\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1741 - accuracy: 0.9461 - val_loss: 0.1596 - val_accuracy: 0.9551 - lr: 0.0081\n", - "Epoch 326/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1117 - accuracy: 0.9658 - val_loss: 0.1735 - val_accuracy: 0.9519 - lr: 0.0081\n", - "Epoch 327/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0769 - accuracy: 0.9815 - val_loss: 0.2129 - val_accuracy: 0.9327 - lr: 0.0081\n", - "Epoch 328/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0653 - accuracy: 0.9855 - val_loss: 0.2309 - val_accuracy: 0.9487 - lr: 0.0081\n", - "Epoch 329/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0497 - accuracy: 0.9891 - val_loss: 0.2585 - val_accuracy: 0.9391 - lr: 0.0081\n", - "Epoch 330/330\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0463 - accuracy: 0.9921 - val_loss: 0.3118 - val_accuracy: 0.9519 - lr: 0.0081\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-325-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1596\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.12 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [55] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m56\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 330)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 331/336\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1570 - accuracy: 0.9494 - val_loss: 0.1638 - val_accuracy: 0.9455 - lr: 0.0081\n", - "Epoch 332/336\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.1137 - accuracy: 0.9668 - val_loss: 0.2520 - val_accuracy: 0.9215 - lr: 0.0081\n", - "Epoch 333/336\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0766 - accuracy: 0.9796 - val_loss: 0.3264 - val_accuracy: 0.9231 - lr: 0.0081\n", - "Epoch 334/336\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0701 - accuracy: 0.9839 - val_loss: 0.2616 - val_accuracy: 0.9279 - lr: 0.0081\n", - "Epoch 335/336\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0647 - accuracy: 0.9860 - val_loss: 0.2867 - val_accuracy: 0.9199 - lr: 0.0081\n", - "Epoch 336/336\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0436 - accuracy: 0.9901 - val_loss: 0.4000 - val_accuracy: 0.9183 - lr: 0.0081\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-331-0.9455.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1638\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m198.55 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.05 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.51 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [56] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m57\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 336)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 337/342\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1482 - accuracy: 0.9567 - val_loss: 0.1578 - val_accuracy: 0.9535 - lr: 0.0081\n", - "Epoch 338/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1099 - accuracy: 0.9689 - val_loss: 0.1643 - val_accuracy: 0.9439 - lr: 0.0081\n", - "Epoch 339/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0807 - accuracy: 0.9786 - val_loss: 0.2379 - val_accuracy: 0.9471 - lr: 0.0081\n", - "Epoch 340/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0518 - accuracy: 0.9867 - val_loss: 0.3268 - val_accuracy: 0.9391 - lr: 0.0081\n", - "Epoch 341/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0724 - accuracy: 0.9851 - val_loss: 0.2250 - val_accuracy: 0.9391 - lr: 0.0081\n", - "Epoch 342/342\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0461 - accuracy: 0.9916 - val_loss: 0.5026 - val_accuracy: 0.9135 - lr: 0.0081\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-337-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1578\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m199.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m118.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [57] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m58\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 342)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 343/348\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1418 - accuracy: 0.9569 - val_loss: 0.1607 - val_accuracy: 0.9583 - lr: 0.0081\n", - "Epoch 344/348\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1113 - accuracy: 0.9689 - val_loss: 0.1962 - val_accuracy: 0.9599 - lr: 0.0081\n", - "Epoch 345/348\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0728 - accuracy: 0.9808 - val_loss: 0.1756 - val_accuracy: 0.9615 - lr: 0.0081\n", - "Epoch 346/348\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0464 - accuracy: 0.9899 - val_loss: 0.2245 - val_accuracy: 0.9471 - lr: 0.0081\n", - "Epoch 347/348\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0465 - accuracy: 0.9908 - val_loss: 0.2125 - val_accuracy: 0.9519 - lr: 0.0081\n", - "Epoch 348/348\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0422 - accuracy: 0.9914 - val_loss: 0.2365 - val_accuracy: 0.9487 - lr: 0.0081\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-345-0.9615.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9615\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1757\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.21 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.37 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [58] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m59\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 348)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 349/354\n", - "366/366 [==============================] - ETA: 0s - loss: 0.1575 - accuracy: 0.9512\n", - "Epoch 349: ReduceLROnPlateau reducing learning rate to 0.0077378091402351854.\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1575 - accuracy: 0.9512 - val_loss: 0.1543 - val_accuracy: 0.9487 - lr: 0.0081\n", - "Epoch 350/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1114 - accuracy: 0.9687 - val_loss: 0.2462 - val_accuracy: 0.9423 - lr: 0.0077\n", - "Epoch 351/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0683 - accuracy: 0.9815 - val_loss: 0.3381 - val_accuracy: 0.9183 - lr: 0.0077\n", - "Epoch 352/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0571 - accuracy: 0.9863 - val_loss: 0.3063 - val_accuracy: 0.9231 - lr: 0.0077\n", - "Epoch 353/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0440 - accuracy: 0.9906 - val_loss: 0.2627 - val_accuracy: 0.9439 - lr: 0.0077\n", - "Epoch 354/354\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0338 - accuracy: 0.9942 - val_loss: 0.2186 - val_accuracy: 0.9503 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-354-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2187\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m201.34 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.26 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.08 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [59] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m60\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 354)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 355/360\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1696 - accuracy: 0.9492 - val_loss: 0.1551 - val_accuracy: 0.9551 - lr: 0.0077\n", - "Epoch 356/360\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1082 - accuracy: 0.9678 - val_loss: 0.2374 - val_accuracy: 0.9407 - lr: 0.0077\n", - "Epoch 357/360\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0745 - accuracy: 0.9819 - val_loss: 0.5832 - val_accuracy: 0.8862 - lr: 0.0077\n", - "Epoch 358/360\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0726 - accuracy: 0.9843 - val_loss: 0.1913 - val_accuracy: 0.9407 - lr: 0.0077\n", - "Epoch 359/360\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0523 - accuracy: 0.9873 - val_loss: 0.2649 - val_accuracy: 0.9359 - lr: 0.0077\n", - "Epoch 360/360\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0378 - accuracy: 0.9926 - val_loss: 0.2061 - val_accuracy: 0.9311 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-355-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m200.53 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.69 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m80.85 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [60] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m61\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 360)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 361/366\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1466 - accuracy: 0.9538 - val_loss: 0.1534 - val_accuracy: 0.9567 - lr: 0.0077\n", - "Epoch 362/366\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1045 - accuracy: 0.9726 - val_loss: 0.3452 - val_accuracy: 0.9199 - lr: 0.0077\n", - "Epoch 363/366\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0720 - accuracy: 0.9822 - val_loss: 0.2492 - val_accuracy: 0.9343 - lr: 0.0077\n", - "Epoch 364/366\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0618 - accuracy: 0.9846 - val_loss: 0.2676 - val_accuracy: 0.9407 - lr: 0.0077\n", - "Epoch 365/366\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0366 - accuracy: 0.9942 - val_loss: 0.2527 - val_accuracy: 0.9519 - lr: 0.0077\n", - "Epoch 366/366\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0360 - accuracy: 0.9937 - val_loss: 0.6950 - val_accuracy: 0.9231 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-361-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1534\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.65 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.63 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [61] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m62\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 366)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 367/372\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1500 - accuracy: 0.9557 - val_loss: 0.2041 - val_accuracy: 0.9439 - lr: 0.0077\n", - "Epoch 368/372\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.1099 - accuracy: 0.9697 - val_loss: 0.2217 - val_accuracy: 0.9295 - lr: 0.0077\n", - "Epoch 369/372\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0799 - accuracy: 0.9776 - val_loss: 0.3372 - val_accuracy: 0.9263 - lr: 0.0077\n", - "Epoch 370/372\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0603 - accuracy: 0.9882 - val_loss: 0.2544 - val_accuracy: 0.9471 - lr: 0.0077\n", - "Epoch 371/372\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0507 - accuracy: 0.9908 - val_loss: 0.2169 - val_accuracy: 0.9567 - lr: 0.0077\n", - "Epoch 372/372\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0412 - accuracy: 0.9923 - val_loss: 0.1692 - val_accuracy: 0.9535 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-371-0.9567.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2170\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m202.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m81.32 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [62] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m63\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 372)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 373/378\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1836 - accuracy: 0.9461 - val_loss: 0.2396 - val_accuracy: 0.9135 - lr: 0.0077\n", - "Epoch 374/378\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1010 - accuracy: 0.9735 - val_loss: 0.3093 - val_accuracy: 0.9103 - lr: 0.0077\n", - "Epoch 375/378\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0798 - accuracy: 0.9814 - val_loss: 0.2368 - val_accuracy: 0.9375 - lr: 0.0077\n", - "Epoch 376/378\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0614 - accuracy: 0.9855 - val_loss: 0.2952 - val_accuracy: 0.9279 - lr: 0.0077\n", - "Epoch 377/378\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0424 - accuracy: 0.9916 - val_loss: 0.2488 - val_accuracy: 0.9519 - lr: 0.0077\n", - "Epoch 378/378\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0432 - accuracy: 0.9942 - val_loss: 0.2553 - val_accuracy: 0.9471 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-377-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2488\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m209.74 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.71 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m87.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [63] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m64\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 378)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33m└───Shuffling data...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 379/384\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1600 - accuracy: 0.9542 - val_loss: 0.2439 - val_accuracy: 0.9471 - lr: 0.0077\n", - "Epoch 380/384\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1040 - accuracy: 0.9721 - val_loss: 0.2251 - val_accuracy: 0.9375 - lr: 0.0077\n", - "Epoch 381/384\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0712 - accuracy: 0.9824 - val_loss: 0.2614 - val_accuracy: 0.9391 - lr: 0.0077\n", - "Epoch 382/384\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0530 - accuracy: 0.9875 - val_loss: 0.2840 - val_accuracy: 0.9327 - lr: 0.0077\n", - "Epoch 383/384\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0516 - accuracy: 0.9884 - val_loss: 0.2637 - val_accuracy: 0.9455 - lr: 0.0077\n", - "Epoch 384/384\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0479 - accuracy: 0.9897 - val_loss: 0.3878 - val_accuracy: 0.9327 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-379-0.9471.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9471\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m212.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.86 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m89.11 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [64] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m65\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 384)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 385/390\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1612 - accuracy: 0.9502 - val_loss: 0.1930 - val_accuracy: 0.9503 - lr: 0.0077\n", - "Epoch 386/390\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.1152 - accuracy: 0.9675 - val_loss: 0.2259 - val_accuracy: 0.9359 - lr: 0.0077\n", - "Epoch 387/390\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0787 - accuracy: 0.9815 - val_loss: 0.3067 - val_accuracy: 0.9311 - lr: 0.0077\n", - "Epoch 388/390\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0563 - accuracy: 0.9870 - val_loss: 0.1961 - val_accuracy: 0.9391 - lr: 0.0077\n", - "Epoch 389/390\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0505 - accuracy: 0.9884 - val_loss: 0.1882 - val_accuracy: 0.9519 - lr: 0.0077\n", - "Epoch 390/390\n", - "366/366 [==============================] - 19s 52ms/step - loss: 0.0429 - accuracy: 0.9913 - val_loss: 0.2171 - val_accuracy: 0.9471 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-389-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1882\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m206.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m119.13 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m87.46 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [65] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m66\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 390)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 391/396\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1509 - accuracy: 0.9557 - val_loss: 0.2093 - val_accuracy: 0.9391 - lr: 0.0077\n", - "Epoch 392/396\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.0979 - accuracy: 0.9706 - val_loss: 0.1581 - val_accuracy: 0.9551 - lr: 0.0077\n", - "Epoch 393/396\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0607 - accuracy: 0.9849 - val_loss: 0.1833 - val_accuracy: 0.9455 - lr: 0.0077\n", - "Epoch 394/396\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0485 - accuracy: 0.9913 - val_loss: 0.1769 - val_accuracy: 0.9599 - lr: 0.0077\n", - "Epoch 395/396\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0402 - accuracy: 0.9891 - val_loss: 0.1870 - val_accuracy: 0.9503 - lr: 0.0077\n", - "Epoch 396/396\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0425 - accuracy: 0.9933 - val_loss: 0.2909 - val_accuracy: 0.9391 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-394-0.9599.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9599\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1769\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m208.67 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m85.45 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [66] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m67\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 396)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 397/402\n", - "366/366 [==============================] - 21s 54ms/step - loss: 0.1518 - accuracy: 0.9545 - val_loss: 0.2655 - val_accuracy: 0.9151 - lr: 0.0077\n", - "Epoch 398/402\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0974 - accuracy: 0.9731 - val_loss: 0.2308 - val_accuracy: 0.9487 - lr: 0.0077\n", - "Epoch 399/402\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0675 - accuracy: 0.9834 - val_loss: 0.2251 - val_accuracy: 0.9311 - lr: 0.0077\n", - "Epoch 400/402\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0508 - accuracy: 0.9885 - val_loss: 0.2065 - val_accuracy: 0.9503 - lr: 0.0077\n", - "Epoch 401/402\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0430 - accuracy: 0.9899 - val_loss: 0.3678 - val_accuracy: 0.9343 - lr: 0.0077\n", - "Epoch 402/402\n", - "366/366 [==============================] - ETA: 0s - loss: 0.0415 - accuracy: 0.9925\n", - "Epoch 402: ReduceLROnPlateau reducing learning rate to 0.007350918860174715.\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0415 - accuracy: 0.9925 - val_loss: 0.2715 - val_accuracy: 0.9343 - lr: 0.0077\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-400-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2064\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m208.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m87.18 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [67] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m68\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 402)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 403/408\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1613 - accuracy: 0.9552 - val_loss: 0.2115 - val_accuracy: 0.9311 - lr: 0.0074\n", - "Epoch 404/408\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.1035 - accuracy: 0.9730 - val_loss: 0.2326 - val_accuracy: 0.9375 - lr: 0.0074\n", - "Epoch 405/408\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0708 - accuracy: 0.9827 - val_loss: 0.3043 - val_accuracy: 0.9375 - lr: 0.0074\n", - "Epoch 406/408\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0662 - accuracy: 0.9892 - val_loss: 0.2143 - val_accuracy: 0.9519 - lr: 0.0074\n", - "Epoch 407/408\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0393 - accuracy: 0.9928 - val_loss: 0.2337 - val_accuracy: 0.9439 - lr: 0.0074\n", - "Epoch 408/408\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0357 - accuracy: 0.9928 - val_loss: 0.6715 - val_accuracy: 0.8878 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-406-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2143\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m210.14 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m88.33 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [68] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m69\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 408)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 409/414\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1612 - accuracy: 0.9507 - val_loss: 0.2437 - val_accuracy: 0.9327 - lr: 0.0074\n", - "Epoch 410/414\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1088 - accuracy: 0.9678 - val_loss: 0.2919 - val_accuracy: 0.9183 - lr: 0.0074\n", - "Epoch 411/414\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0745 - accuracy: 0.9822 - val_loss: 0.1982 - val_accuracy: 0.9503 - lr: 0.0074\n", - "Epoch 412/414\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0586 - accuracy: 0.9870 - val_loss: 0.3077 - val_accuracy: 0.9167 - lr: 0.0074\n", - "Epoch 413/414\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0467 - accuracy: 0.9909 - val_loss: 0.2648 - val_accuracy: 0.9407 - lr: 0.0074\n", - "Epoch 414/414\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0309 - accuracy: 0.9950 - val_loss: 0.2886 - val_accuracy: 0.9407 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-411-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1982\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m212.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.89 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m90.14 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [69] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m70\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 414)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", + " block5b_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5b_se_excite[0][0]'] Y \n", + " \n", + " block5b_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5b_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5b_project_bn[0][0]'] Y \n", + " \n", + " block5b_add (Add) (None, 14, 14, 160) 0 ['block5b_drop[0][0]', Y \n", + " 'block5a_project_bn[0][0]'] \n", + " \n", + " block5c_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5b_add[0][0]'] Y \n", + " \n", + " block5c_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5c_expand_activation (Act (None, 14, 14, 960) 0 ['block5c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5c_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5c_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5c_activation (Activation (None, 14, 14, 960) 0 ['block5c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5c_se_squeeze (GlobalAver (None, 960) 0 ['block5c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5c_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5c_se_squeeze[0][0]'] Y \n", + " \n", + " block5c_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5c_se_reshape[0][0]'] Y \n", + " \n", + " block5c_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5c_se_reduce[0][0]'] Y \n", + " \n", + " block5c_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5c_activation[0][0]', Y \n", + " 'block5c_se_expand[0][0]'] \n", + " \n", + " block5c_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5c_se_excite[0][0]'] Y \n", + " \n", + " block5c_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5c_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5c_project_bn[0][0]'] Y \n", + " \n", + " block5c_add (Add) (None, 14, 14, 160) 0 ['block5c_drop[0][0]', Y \n", + " 'block5b_add[0][0]'] \n", + " \n", + " block5d_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5c_add[0][0]'] Y \n", + " \n", + " block5d_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5d_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5d_expand_activation (Act (None, 14, 14, 960) 0 ['block5d_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5d_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5d_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5d_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5d_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5d_activation (Activation (None, 14, 14, 960) 0 ['block5d_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5d_se_squeeze (GlobalAver (None, 960) 0 ['block5d_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5d_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5d_se_squeeze[0][0]'] Y \n", + " \n", + " block5d_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5d_se_reshape[0][0]'] Y \n", + " \n", + " block5d_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5d_se_reduce[0][0]'] Y \n", + " \n", + " block5d_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5d_activation[0][0]', Y \n", + " 'block5d_se_expand[0][0]'] \n", + " \n", + " block5d_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5d_se_excite[0][0]'] Y \n", + " \n", + " block5d_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5d_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5d_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5d_project_bn[0][0]'] Y \n", + " \n", + " block5d_add (Add) (None, 14, 14, 160) 0 ['block5d_drop[0][0]', Y \n", + " 'block5c_add[0][0]'] \n", + " \n", + " block5e_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5d_add[0][0]'] Y \n", + " \n", + " block5e_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5e_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5e_expand_activation (Act (None, 14, 14, 960) 0 ['block5e_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5e_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5e_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5e_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5e_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5e_activation (Activation (None, 14, 14, 960) 0 ['block5e_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5e_se_squeeze (GlobalAver (None, 960) 0 ['block5e_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5e_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5e_se_squeeze[0][0]'] Y \n", + " \n", + " block5e_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5e_se_reshape[0][0]'] Y \n", + " \n", + " block5e_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5e_se_reduce[0][0]'] Y \n", + " \n", + " block5e_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5e_activation[0][0]', Y \n", + " 'block5e_se_expand[0][0]'] \n", + " \n", + " block5e_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5e_se_excite[0][0]'] Y \n", + " \n", + " block5e_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5e_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5e_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5e_project_bn[0][0]'] Y \n", + " \n", + " block5e_add (Add) (None, 14, 14, 160) 0 ['block5e_drop[0][0]', Y \n", + " 'block5d_add[0][0]'] \n", + " \n", + " block5f_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5e_add[0][0]'] Y \n", + " \n", + " block5f_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5f_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5f_expand_activation (Act (None, 14, 14, 960) 0 ['block5f_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5f_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5f_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5f_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5f_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5f_activation (Activation (None, 14, 14, 960) 0 ['block5f_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5f_se_squeeze (GlobalAver (None, 960) 0 ['block5f_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5f_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5f_se_squeeze[0][0]'] Y \n", + " \n", + " block5f_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5f_se_reshape[0][0]'] Y \n", + " \n", + " block5f_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5f_se_reduce[0][0]'] Y \n", + " \n", + " block5f_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5f_activation[0][0]', Y \n", + " 'block5f_se_expand[0][0]'] \n", + " \n", + " block5f_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5f_se_excite[0][0]'] Y \n", + " \n", + " block5f_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5f_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5f_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5f_project_bn[0][0]'] Y \n", + " \n", + " block5f_add (Add) (None, 14, 14, 160) 0 ['block5f_drop[0][0]', Y \n", + " 'block5e_add[0][0]'] \n", + " \n", + " block6a_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5f_add[0][0]'] Y \n", + " \n", + " block6a_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block6a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6a_expand_activation (Act (None, 14, 14, 960) 0 ['block6a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6a_dwconv (DepthwiseConv2 (None, 7, 7, 960) 24000 ['block6a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6a_bn (BatchNormalization (None, 7, 7, 960) 3840 ['block6a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6a_activation (Activation (None, 7, 7, 960) 0 ['block6a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6a_se_squeeze (GlobalAver (None, 960) 0 ['block6a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6a_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block6a_se_squeeze[0][0]'] Y \n", + " \n", + " block6a_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block6a_se_reshape[0][0]'] Y \n", + " \n", + " block6a_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block6a_se_reduce[0][0]'] Y \n", + " \n", + " block6a_se_excite (Multiply) (None, 7, 7, 960) 0 ['block6a_activation[0][0]', Y \n", + " 'block6a_se_expand[0][0]'] \n", + " \n", + " block6a_project_conv (Conv2D) (None, 7, 7, 272) 261120 ['block6a_se_excite[0][0]'] Y \n", + " \n", + " block6a_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6b_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6a_project_bn[0][0]'] Y \n", + " \n", + " block6b_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6b_expand_activation (Act (None, 7, 7, 1632) 0 ['block6b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6b_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6b_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6b_activation (Activation (None, 7, 7, 1632) 0 ['block6b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6b_se_squeeze (GlobalAver (None, 1632) 0 ['block6b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6b_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6b_se_squeeze[0][0]'] Y \n", + " \n", + " block6b_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6b_se_reshape[0][0]'] Y \n", + " \n", + " block6b_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6b_se_reduce[0][0]'] Y \n", + " \n", + " block6b_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6b_activation[0][0]', Y \n", + " 'block6b_se_expand[0][0]'] \n", + " \n", + " block6b_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6b_se_excite[0][0]'] Y \n", + " \n", + " block6b_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6b_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6b_project_bn[0][0]'] Y \n", + " \n", + " block6b_add (Add) (None, 7, 7, 272) 0 ['block6b_drop[0][0]', Y \n", + " 'block6a_project_bn[0][0]'] \n", + " \n", + " block6c_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6b_add[0][0]'] Y \n", + " \n", + " block6c_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6c_expand_activation (Act (None, 7, 7, 1632) 0 ['block6c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6c_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6c_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6c_activation (Activation (None, 7, 7, 1632) 0 ['block6c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6c_se_squeeze (GlobalAver (None, 1632) 0 ['block6c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6c_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6c_se_squeeze[0][0]'] Y \n", + " \n", + " block6c_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6c_se_reshape[0][0]'] Y \n", + " \n", + " block6c_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6c_se_reduce[0][0]'] Y \n", + " \n", + " block6c_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6c_activation[0][0]', Y \n", + " 'block6c_se_expand[0][0]'] \n", + " \n", + " block6c_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6c_se_excite[0][0]'] Y \n", + " \n", + " block6c_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6c_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6c_project_bn[0][0]'] Y \n", + " \n", + " block6c_add (Add) (None, 7, 7, 272) 0 ['block6c_drop[0][0]', Y \n", + " 'block6b_add[0][0]'] \n", + " \n", + " block6d_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6c_add[0][0]'] Y \n", + " \n", + " block6d_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6d_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6d_expand_activation (Act (None, 7, 7, 1632) 0 ['block6d_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6d_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6d_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6d_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6d_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6d_activation (Activation (None, 7, 7, 1632) 0 ['block6d_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6d_se_squeeze (GlobalAver (None, 1632) 0 ['block6d_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6d_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6d_se_squeeze[0][0]'] Y \n", + " \n", + " block6d_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6d_se_reshape[0][0]'] Y \n", + " \n", + " block6d_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6d_se_reduce[0][0]'] Y \n", + " \n", + " block6d_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6d_activation[0][0]', Y \n", + " 'block6d_se_expand[0][0]'] \n", + " \n", + " block6d_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6d_se_excite[0][0]'] Y \n", + " \n", + " block6d_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6d_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6d_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6d_project_bn[0][0]'] Y \n", + " \n", + " block6d_add (Add) (None, 7, 7, 272) 0 ['block6d_drop[0][0]', Y \n", + " 'block6c_add[0][0]'] \n", + " \n", + " block6e_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6d_add[0][0]'] Y \n", + " \n", + " block6e_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6e_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6e_expand_activation (Act (None, 7, 7, 1632) 0 ['block6e_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6e_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6e_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6e_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6e_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6e_activation (Activation (None, 7, 7, 1632) 0 ['block6e_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6e_se_squeeze (GlobalAver (None, 1632) 0 ['block6e_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6e_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6e_se_squeeze[0][0]'] Y \n", + " \n", + " block6e_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6e_se_reshape[0][0]'] Y \n", + " \n", + " block6e_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6e_se_reduce[0][0]'] Y \n", + " \n", + " block6e_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6e_activation[0][0]', Y \n", + " 'block6e_se_expand[0][0]'] \n", + " \n", + " block6e_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6e_se_excite[0][0]'] Y \n", + " \n", + " block6e_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6e_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6e_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6e_project_bn[0][0]'] Y \n", + " \n", + " block6e_add (Add) (None, 7, 7, 272) 0 ['block6e_drop[0][0]', Y \n", + " 'block6d_add[0][0]'] \n", + " \n", + " block6f_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6e_add[0][0]'] Y \n", + " \n", + " block6f_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6f_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6f_expand_activation (Act (None, 7, 7, 1632) 0 ['block6f_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6f_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6f_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6f_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6f_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6f_activation (Activation (None, 7, 7, 1632) 0 ['block6f_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6f_se_squeeze (GlobalAver (None, 1632) 0 ['block6f_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6f_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6f_se_squeeze[0][0]'] Y \n", + " \n", + " block6f_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6f_se_reshape[0][0]'] Y \n", + " \n", + " block6f_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6f_se_reduce[0][0]'] Y \n", + " \n", + " block6f_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6f_activation[0][0]', Y \n", + " 'block6f_se_expand[0][0]'] \n", + " \n", + " block6f_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6f_se_excite[0][0]'] Y \n", + " \n", + " block6f_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6f_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6f_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6f_project_bn[0][0]'] Y \n", + " \n", + " block6f_add (Add) (None, 7, 7, 272) 0 ['block6f_drop[0][0]', Y \n", + " 'block6e_add[0][0]'] \n", + " \n", + " block6g_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6f_add[0][0]'] Y \n", + " \n", + " block6g_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6g_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6g_expand_activation (Act (None, 7, 7, 1632) 0 ['block6g_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6g_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6g_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6g_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6g_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6g_activation (Activation (None, 7, 7, 1632) 0 ['block6g_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6g_se_squeeze (GlobalAver (None, 1632) 0 ['block6g_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6g_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6g_se_squeeze[0][0]'] Y \n", + " \n", + " block6g_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6g_se_reshape[0][0]'] Y \n", + " \n", + " block6g_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6g_se_reduce[0][0]'] Y \n", + " \n", + " block6g_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6g_activation[0][0]', Y \n", + " 'block6g_se_expand[0][0]'] \n", + " \n", + " block6g_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6g_se_excite[0][0]'] Y \n", + " \n", + " block6g_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6g_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6g_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6g_project_bn[0][0]'] Y \n", + " \n", + " block6g_add (Add) (None, 7, 7, 272) 0 ['block6g_drop[0][0]', Y \n", + " 'block6f_add[0][0]'] \n", + " \n", + " block6h_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6g_add[0][0]'] Y \n", + " \n", + " block6h_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6h_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6h_expand_activation (Act (None, 7, 7, 1632) 0 ['block6h_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6h_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6h_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6h_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6h_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6h_activation (Activation (None, 7, 7, 1632) 0 ['block6h_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6h_se_squeeze (GlobalAver (None, 1632) 0 ['block6h_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6h_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6h_se_squeeze[0][0]'] Y \n", + " \n", + " block6h_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6h_se_reshape[0][0]'] Y \n", + " \n", + " block6h_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6h_se_reduce[0][0]'] Y \n", + " \n", + " block6h_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6h_activation[0][0]', Y \n", + " 'block6h_se_expand[0][0]'] \n", + " \n", + " block6h_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6h_se_excite[0][0]'] Y \n", + " \n", + " block6h_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6h_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6h_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6h_project_bn[0][0]'] Y \n", + " \n", + " block6h_add (Add) (None, 7, 7, 272) 0 ['block6h_drop[0][0]', Y \n", + " 'block6g_add[0][0]'] \n", + " \n", + " block7a_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6h_add[0][0]'] Y \n", + " \n", + " block7a_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block7a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block7a_expand_activation (Act (None, 7, 7, 1632) 0 ['block7a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block7a_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 14688 ['block7a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block7a_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block7a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block7a_activation (Activation (None, 7, 7, 1632) 0 ['block7a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block7a_se_squeeze (GlobalAver (None, 1632) 0 ['block7a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block7a_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block7a_se_squeeze[0][0]'] Y \n", + " \n", + " block7a_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block7a_se_reshape[0][0]'] Y \n", + " \n", + " block7a_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block7a_se_reduce[0][0]'] Y \n", + " \n", + " block7a_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block7a_activation[0][0]', Y \n", + " 'block7a_se_expand[0][0]'] \n", + " \n", + " block7a_project_conv (Conv2D) (None, 7, 7, 448) 731136 ['block7a_se_excite[0][0]'] Y \n", + " \n", + " block7a_project_bn (BatchNorma (None, 7, 7, 448) 1792 ['block7a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block7b_expand_conv (Conv2D) (None, 7, 7, 2688) 1204224 ['block7a_project_bn[0][0]'] Y \n", + " \n", + " block7b_expand_bn (BatchNormal (None, 7, 7, 2688) 10752 ['block7b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block7b_expand_activation (Act (None, 7, 7, 2688) 0 ['block7b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block7b_dwconv (DepthwiseConv2 (None, 7, 7, 2688) 24192 ['block7b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block7b_bn (BatchNormalization (None, 7, 7, 2688) 10752 ['block7b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block7b_activation (Activation (None, 7, 7, 2688) 0 ['block7b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block7b_se_squeeze (GlobalAver (None, 2688) 0 ['block7b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block7b_se_reshape (Reshape) (None, 1, 1, 2688) 0 ['block7b_se_squeeze[0][0]'] Y \n", + " \n", + " block7b_se_reduce (Conv2D) (None, 1, 1, 112) 301168 ['block7b_se_reshape[0][0]'] Y \n", + " \n", + " block7b_se_expand (Conv2D) (None, 1, 1, 2688) 303744 ['block7b_se_reduce[0][0]'] Y \n", + " \n", + " block7b_se_excite (Multiply) (None, 7, 7, 2688) 0 ['block7b_activation[0][0]', Y \n", + " 'block7b_se_expand[0][0]'] \n", + " \n", + " block7b_project_conv (Conv2D) (None, 7, 7, 448) 1204224 ['block7b_se_excite[0][0]'] Y \n", + " \n", + " block7b_project_bn (BatchNorma (None, 7, 7, 448) 1792 ['block7b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block7b_drop (FixedDropout) (None, 7, 7, 448) 0 ['block7b_project_bn[0][0]'] Y \n", + " \n", + " block7b_add (Add) (None, 7, 7, 448) 0 ['block7b_drop[0][0]', Y \n", + " 'block7a_project_bn[0][0]'] \n", + " \n", + " top_conv (Conv2D) (None, 7, 7, 1792) 802816 ['block7b_add[0][0]'] Y \n", + " \n", + " top_bn (BatchNormalization) (None, 7, 7, 1792) 7168 ['top_conv[0][0]'] Y \n", + " \n", + " top_activation (Activation) (None, 7, 7, 1792) 0 ['top_bn[0][0]'] Y \n", + " \n", + " FC_INPUT_Avg-Pooling (GlobalAv (None, 1792) 0 ['top_activation[0][0]'] Y \n", + " eragePooling2D) \n", + " \n", + " FC_C_Dense-L1-512 (Dense) (None, 512) 918016 ['FC_INPUT_Avg-Pooling[0][0]'] Y \n", + " \n", + " FC_C_Dropout-L1-0.1 (Dropout) (None, 512) 0 ['FC_C_Dense-L1-512[0][0]'] Y \n", + " \n", + " FC_C_Avg-BatchNormalization-L1 (None, 512) 2048 ['FC_C_Dropout-L1-0.1[0][0]'] Y \n", + " (BatchNormalization) \n", + " \n", + " FC_C_Dense-L2-512 (Dense) (None, 512) 262656 ['FC_C_Avg-BatchNormalization-L Y \n", + " 1[0][0]'] \n", + " \n", + " FC_C_Avg-BatchNormalization-L2 (None, 512) 2048 ['FC_C_Dense-L2-512[0][0]'] Y \n", + " (BatchNormalization) \n", + " \n", + " FC_C_Dense-L3-128 (Dense) (None, 128) 65664 ['FC_C_Avg-BatchNormalization-L Y \n", + " 2[0][0]'] \n", + " \n", + " FC_OUTPUT_Dense-2 (Dense) (None, 2) 258 ['FC_C_Dense-L3-128[0][0]'] Y \n", + " \n", + "=============================================================================================================\n", + "Total params: 18,924,506\n", + "Trainable params: 18,797,258\n", + "Non-trainable params: 127,248\n", + "_____________________________________________________________________________________________________________\n", + "done.\n" + ] + } + ], + "source": [ + "from efficientnet.keras import EfficientNetB4 as KENB4\n", + "# FUNC\n", + "def Eff_B4_NS(freeze_layers):\n", + " base_model = KENB4(input_shape=(\n", + " img_res[0], img_res[1], img_res[2]), weights='noisy-student', include_top=False)\n", + " print('Total layers in the base model: ', len(base_model.layers))\n", + " print(f'Freezing {freeze_layers} layers in the base model...')\n", + " # Freeze the specified number of layers\n", + " for layer in base_model.layers[:freeze_layers]:\n", + " layer.trainable = False\n", + "\n", + " # Unfreeze the rest\n", + " for layer in base_model.layers[freeze_layers:]:\n", + " layer.trainable = True\n", + "\n", + " # Calculate the percentage of the model that is frozen\n", + " frozen_percentage = ((freeze_layers + 1e-10) /\n", + " len(base_model.layers)) * 100\n", + " print(\n", + " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", + " # adding CDL>>>\n", + " #GlobalAveragePooling2D\n", + " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", + " #Dense\n", + " Dense_L1 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.02),\n", + " name='FC_C_Dense-L1-512'\n", + " )(base_model_FT)\n", + " #Dropout\n", + " Dropout_L1 = Dropout(0.1,\n", + " name='FC_C_Dropout-L1-0.1'\n", + " )(Dense_L1)\n", + " #BatchNormalization\n", + " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n", + " )(Dropout_L1)\n", + " #Dense\n", + " Dense_L2 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.01),\n", + " name='FC_C_Dense-L2-512'\n", + " )(BatchNorm_L2)\n", + " #BatchNormalization\n", + " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L2'\n", + " )(Dense_L2)\n", + " #Dense\n", + " Dense_L3 = Dense(128, activation='relu',\n", + " name='FC_C_Dense-L3-128'\n", + " )(BatchNorm_L3)\n", + " #Dense\n", + " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", + " predictions = Dense(2, activation='softmax',\n", + " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", + " # CDL<<<\n", + " model_EfficientNetB4_NS = Model(\n", + " inputs=base_model.input, outputs=predictions)\n", + " print('Total model layers: ', len(model_EfficientNetB4_NS.layers))\n", + " # OPT/compile\n", + " opt = SGD(momentum=0.92, nesterov=False)\n", + " # opt = Nadam()\n", + " # opt = Adamax()\n", + " # opt = RMSprop(momentum=0.9)\n", + " # opt = Adagrad()\n", + " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", + " # opt = Yogi()\n", + " model_EfficientNetB4_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", + "\n", + " return model_EfficientNetB4_NS\n", + "\n", + "print('Creating the model...')\n", + "# Main\n", + "freeze_layers = 0\n", + "model = Eff_B4_NS(freeze_layers)\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Rev1.6 \n", + "```\n", + "recommended: ✅\n", + "statuses: Ready\n", + "Working: ✅\n", + "Max fine tuned acc: 96.47\n", + "type: transfer learning>>>(EfficientNetB0::CCL)\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from efficientnet.keras import EfficientNetB0 as KENB0\n", + "# FUNC\n", + "def Eff_B0_NS(freeze_layers):\n", + " base_model = KENB0(input_shape=(\n", + " img_res[0], img_res[1], img_res[2]), weights='noisy-student', include_top=False)\n", + " print('Total layers in the base model: ', len(base_model.layers))\n", + " print(f'Freezing {freeze_layers} layers in the base model...')\n", + " # Freeze the specified number of layers\n", + " for layer in base_model.layers[:freeze_layers]:\n", + " layer.trainable = False\n", + "\n", + " # Unfreeze the rest\n", + " for layer in base_model.layers[freeze_layers:]:\n", + " layer.trainable = True\n", + "\n", + " # Calculate the percentage of the model that is frozen\n", + " frozen_percentage = ((freeze_layers + 1e-10) /\n", + " len(base_model.layers)) * 100\n", + " print(\n", + " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", + " # adding CDL>>>\n", + " #GlobalAveragePooling2D\n", + " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", + " #Dense\n", + " Dense_L1 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.02),\n", + " name='FC_C_Dense-L1-512'\n", + " )(base_model_FT)\n", + " #Dropout\n", + " Dropout_L1 = Dropout(0.1,\n", + " name='FC_C_Dropout-L1-0.1'\n", + " )(Dense_L1)\n", + " #BatchNormalization\n", + " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n", + " )(Dropout_L1)\n", + " #Dense\n", + " Dense_L2 = Dense(256, activation='relu',\n", + " kernel_regularizer=l2(0.01),\n", + " name='FC_C_Dense-L2-512'\n", + " )(BatchNorm_L2)\n", + " #BatchNormalization\n", + " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L2'\n", + " )(Dense_L2)\n", + " #Dense\n", + " Dense_L3 = Dense(128, activation='relu',\n", + " name='FC_C_Dense-L3-128'\n", + " )(BatchNorm_L3)\n", + " #Dense\n", + " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", + " predictions = Dense(2, activation='softmax',\n", + " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", + " # CDL<<<\n", + " model_EfficientNetB0_NS = Model(\n", + " inputs=base_model.input, outputs=predictions)\n", + " print('Total model layers: ', len(model_EfficientNetB0_NS.layers))\n", + " # OPT/compile\n", + " opt = SGD(momentum=0.92, nesterov=False)\n", + " # opt = Nadam()\n", + " # opt = Adamax()\n", + " # opt = RMSprop(momentum=0.9)\n", + " # opt = Adagrad()\n", + " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", + " # opt = Yogi()\n", + " model_EfficientNetB0_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", + "\n", + " return model_EfficientNetB0_NS\n", + "\n", + "print('Creating the model...')\n", + "# Main\n", + "freeze_layers = 0\n", + "model = Eff_B0_NS(freeze_layers)\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### V(T) Beta" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from efficientnet.keras import EfficientNetL2 as KENBL2\n", + "#FUNC\n", + "def Eff_B7_NS(freeze_layers):\n", + " base_model = KENBL2(input_shape=(img_res[0], img_res[1], img_res[2]),\n", + " weights='./download/Models/EFN_L2/efficientnet-l2_noisy-student_notop.h5',\n", + " include_top=False,\n", + " drop_connect_rate=0)\n", + " print('Total layers in the base model: ', len(base_model.layers))\n", + " print(f'Freezing {freeze_layers} layers in the base model...')\n", + " # Freeze the specified number of layers\n", + " for layer in base_model.layers[:freeze_layers]:\n", + " layer.trainable = False\n", + "\n", + " # Unfreeze the rest\n", + " for layer in base_model.layers[freeze_layers:]:\n", + " layer.trainable = True\n", + "\n", + " # Calculate the percentage of the model that is frozen\n", + " frozen_percentage = ((freeze_layers + 1e-10) / len(base_model.layers)) * 100\n", + " print(f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", + " # adding CDL\n", + " base_model_FT = GlobalAveragePooling2D()(base_model.output)\n", + " Dense_L1 = Dense(512, activation='relu', kernel_regularizer=l2(0.02))(base_model_FT)\n", + " Dropout_L1 = Dropout(0.1)(Dense_L1) \n", + " BatchNorm_L2 = BatchNormalization()(Dropout_L1)\n", + " Dense_L2 = Dense(512, activation='relu', kernel_regularizer=l2(0.01))(BatchNorm_L2)\n", + " BatchNorm_L3 = BatchNormalization()(Dense_L2)\n", + " Dense_L3 = Dense(128, activation='relu')(BatchNorm_L3)\n", + " predictions = Dense(2, activation='softmax')(Dense_L3)\n", + "\n", + " model_EfficientNetB7_NS = Model(inputs=base_model.input, outputs=predictions) \n", + " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", + " #OPT/compile\n", + " opt = SGD(momentum=0.9)\n", + " # opt = Yogi()\n", + " model_EfficientNetB7_NS.compile(optimizer = opt, loss='categorical_crossentropy', metrics=['accuracy'])\n", + "\n", + " return model_EfficientNetB7_NS\n", + "print('Creating the model...')\n", + "# Main\n", + "freeze_layers = 0\n", + "model = Eff_B7_NS(freeze_layers)\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### V(T) Beta2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "ExecuteTime": { + "end_time": "2023-12-28T02:31:32.994176700Z", + "start_time": "2023-12-28T02:31:27.381088600Z" + } + }, + "outputs": [], + "source": [ + "from efficientnet.keras import EfficientNetB7 as KENB7\n", + "# FUNC\n", + "def Eff_B7_NS(freeze_layers):\n", + " base_model = KENB7(input_shape=(\n", + " img_res[0], img_res[1], img_res[2]), weights=None, include_top=False)\n", + " print('Total layers in the base model: ', len(base_model.layers))\n", + " print(f'Freezing {freeze_layers} layers in the base model...')\n", + " # Freeze the specified number of layers\n", + " for layer in base_model.layers[:freeze_layers]:\n", + " layer.trainable = False\n", + "\n", + " # Unfreeze the rest\n", + " for layer in base_model.layers[freeze_layers:]:\n", + " layer.trainable = True\n", + "\n", + " # Calculate the percentage of the model that is frozen\n", + " frozen_percentage = ((freeze_layers + 1e-10) /\n", + " len(base_model.layers)) * 100\n", + " print(\n", + " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", + " # adding CDL>>>\n", + " #GlobalAveragePooling2D\n", + " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", + " #Dense\n", + " Dense_L1 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.02),\n", + " name='FC_C_Dense-L1-512'\n", + " )(base_model_FT)\n", + " #Dropout\n", + " Dropout_L1 = Dropout(0.1,\n", + " name='FC_C_Dropout-L1-0.1'\n", + " )(Dense_L1)\n", + " #BatchNormalization\n", + " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-Pooling-L1'\n", + " )(Dropout_L1)\n", + " #Dense\n", + " Dense_L2 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.01),\n", + " name='FC_C_Dense-L2-512'\n", + " )(BatchNorm_L2)\n", + " #BatchNormalization\n", + " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-Pooling-L2'\n", + " )(Dense_L2)\n", + " #Dense\n", + " Dense_L3 = Dense(128, activation='relu',\n", + " name='FC_C_Dense-L3-128'\n", + " )(BatchNorm_L3)\n", + " #Dense\n", + " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", + " predictions = Dense(2, activation='softmax',\n", + " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", + " # CDL<<<\n", + " model_EfficientNetB7_NS = Model(\n", + " inputs=base_model.input, outputs=predictions)\n", + " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", + " # OPT/compile\n", + " opt = SGD(momentum=0.9, nesterov=False)\n", + " # opt = Nadam()\n", + " # opt = Adamax()\n", + " # opt = RMSprop(momentum=0.9)\n", + " # opt = Adagrad()\n", + " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", + " # opt = Yogi()\n", + " model_EfficientNetB7_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", + "\n", + " return model_EfficientNetB7_NS\n", + "\n", + "print('Creating the model...')\n", + "# Main\n", + "freeze_layers = 0\n", + "model = Eff_B7_NS(freeze_layers)\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### V(T) Beta3" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from keras.applications import ConvNeXtXLarge\n", + "from keras.layers import Lambda\n", + "#FUNC\n", + "def Eff_B7_NS():\n", + " # Add a Lambda layer at the beginning to scale the input\n", + " input = Input(shape=(img_res[0], img_res[1], img_res[2]))\n", + " x = Lambda(lambda image: image * 255)(input)\n", + " \n", + " base_model = ConvNeXtXLarge(include_top=False, weights='imagenet', classes=2, classifier_activation='softmax', include_preprocessing=True)(x)\n", + " # adding CDL\n", + " base_model_FT = GlobalAveragePooling2D()(base_model)\n", + " Dense_L1 = Dense(512, activation='relu', kernel_regularizer=l2(0.02))(base_model_FT)\n", + " Dropout_L1 = Dropout(0.1)(Dense_L1) \n", + " BatchNorm_L2 = BatchNormalization()(Dropout_L1)\n", + " Dense_L2 = Dense(512, activation='relu', kernel_regularizer=l2(0.01))(BatchNorm_L2)\n", + " BatchNorm_L3 = BatchNormalization()(Dense_L2)\n", + " Dense_L3 = Dense(128, activation='relu')(BatchNorm_L3)\n", + " predictions = Dense(2, activation='softmax')(Dense_L3)\n", + "\n", + " model_EfficientNetB7_NS = Model(inputs=input, outputs=predictions) \n", + " print('Total model layers: ', len(model_EfficientNetB7_NS.layers))\n", + " #OPT/compile\n", + " opt = SGD(momentum=0.9)\n", + " # opt = Yogi()\n", + " model_EfficientNetB7_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy'])\n", + "\n", + " return model_EfficientNetB7_NS\n", + "\n", + "print('Creating the model...')\n", + "# Main\n", + "model = Eff_B7_NS()\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### V(T) Beta4" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Creating the model...\n", + "Total layers in the base model: 230\n", + "Freezing 0 layers in the base model...\n", + "Percentage of the base model that is frozen: 0.00%\n", + "Total model layers: 238\n", + "Model: \"model\"\n", + "_____________________________________________________________________________________________________________\n", + " Layer (type) Output Shape Param # Connected to Trainable \n", + "=============================================================================================================\n", + " input_1 (InputLayer) [(None, 224, 224, 3 0 [] Y \n", + " )] \n", + " \n", + " stem_conv (Conv2D) (None, 112, 112, 32 864 ['input_1[0][0]'] Y \n", + " ) \n", + " \n", + " stem_bn (BatchNormalization) (None, 112, 112, 32 128 ['stem_conv[0][0]'] Y \n", + " ) \n", + " \n", + " stem_activation (Activation) (None, 112, 112, 32 0 ['stem_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block1a_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['stem_activation[0][0]'] Y \n", + " D) ) \n", + " \n", + " block1a_bn (BatchNormalization (None, 112, 112, 32 128 ['block1a_dwconv[0][0]'] Y \n", + " ) ) \n", + " \n", + " block1a_activation (Activation (None, 112, 112, 32 0 ['block1a_bn[0][0]'] Y \n", + " ) ) \n", + " \n", + " block1a_se_squeeze (GlobalAver (None, 32) 0 ['block1a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block1a_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1a_se_squeeze[0][0]'] Y \n", + " \n", + " block1a_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1a_se_reshape[0][0]'] Y \n", + " \n", + " block1a_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1a_se_reduce[0][0]'] Y \n", + " \n", + " block1a_se_excite (Multiply) (None, 112, 112, 32 0 ['block1a_activation[0][0]', Y \n", + " ) 'block1a_se_expand[0][0]'] \n", + " \n", + " block1a_project_conv (Conv2D) (None, 112, 112, 16 512 ['block1a_se_excite[0][0]'] Y \n", + " ) \n", + " \n", + " block1a_project_bn (BatchNorma (None, 112, 112, 16 64 ['block1a_project_conv[0][0]'] Y \n", + " lization) ) \n", + " \n", + " block2a_expand_conv (Conv2D) (None, 112, 112, 96 1536 ['block1a_project_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block2a_expand_bn (BatchNormal (None, 112, 112, 96 384 ['block2a_expand_conv[0][0]'] Y \n", + " ization) ) \n", + " \n", + " block2a_expand_activation (Act (None, 112, 112, 96 0 ['block2a_expand_bn[0][0]'] Y \n", + " ivation) ) \n", + " \n", + " block2a_dwconv (DepthwiseConv2 (None, 56, 56, 96) 864 ['block2a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block2a_bn (BatchNormalization (None, 56, 56, 96) 384 ['block2a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block2a_activation (Activation (None, 56, 56, 96) 0 ['block2a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block2a_se_squeeze (GlobalAver (None, 96) 0 ['block2a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block2a_se_reshape (Reshape) (None, 1, 1, 96) 0 ['block2a_se_squeeze[0][0]'] Y \n", + " \n", + " block2a_se_reduce (Conv2D) (None, 1, 1, 4) 388 ['block2a_se_reshape[0][0]'] Y \n", + " \n", + " block2a_se_expand (Conv2D) (None, 1, 1, 96) 480 ['block2a_se_reduce[0][0]'] Y \n", + " \n", + " block2a_se_excite (Multiply) (None, 56, 56, 96) 0 ['block2a_activation[0][0]', Y \n", + " 'block2a_se_expand[0][0]'] \n", + " \n", + " block2a_project_conv (Conv2D) (None, 56, 56, 24) 2304 ['block2a_se_excite[0][0]'] Y \n", + " \n", + " block2a_project_bn (BatchNorma (None, 56, 56, 24) 96 ['block2a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block2b_expand_conv (Conv2D) (None, 56, 56, 144) 3456 ['block2a_project_bn[0][0]'] Y \n", + " \n", + " block2b_expand_bn (BatchNormal (None, 56, 56, 144) 576 ['block2b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block2b_expand_activation (Act (None, 56, 56, 144) 0 ['block2b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block2b_dwconv (DepthwiseConv2 (None, 56, 56, 144) 1296 ['block2b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block2b_bn (BatchNormalization (None, 56, 56, 144) 576 ['block2b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block2b_activation (Activation (None, 56, 56, 144) 0 ['block2b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block2b_se_squeeze (GlobalAver (None, 144) 0 ['block2b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block2b_se_reshape (Reshape) (None, 1, 1, 144) 0 ['block2b_se_squeeze[0][0]'] Y \n", + " \n", + " block2b_se_reduce (Conv2D) (None, 1, 1, 6) 870 ['block2b_se_reshape[0][0]'] Y \n", + " \n", + " block2b_se_expand (Conv2D) (None, 1, 1, 144) 1008 ['block2b_se_reduce[0][0]'] Y \n", + " \n", + " block2b_se_excite (Multiply) (None, 56, 56, 144) 0 ['block2b_activation[0][0]', Y \n", + " 'block2b_se_expand[0][0]'] \n", + " \n", + " block2b_project_conv (Conv2D) (None, 56, 56, 24) 3456 ['block2b_se_excite[0][0]'] Y \n", + " \n", + " block2b_project_bn (BatchNorma (None, 56, 56, 24) 96 ['block2b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block2b_drop (FixedDropout) (None, 56, 56, 24) 0 ['block2b_project_bn[0][0]'] Y \n", + " \n", + " block2b_add (Add) (None, 56, 56, 24) 0 ['block2b_drop[0][0]', Y \n", + " 'block2a_project_bn[0][0]'] \n", + " \n", + " block3a_expand_conv (Conv2D) (None, 56, 56, 144) 3456 ['block2b_add[0][0]'] Y \n", + " \n", + " block3a_expand_bn (BatchNormal (None, 56, 56, 144) 576 ['block3a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block3a_expand_activation (Act (None, 56, 56, 144) 0 ['block3a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block3a_dwconv (DepthwiseConv2 (None, 28, 28, 144) 3600 ['block3a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block3a_bn (BatchNormalization (None, 28, 28, 144) 576 ['block3a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block3a_activation (Activation (None, 28, 28, 144) 0 ['block3a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block3a_se_squeeze (GlobalAver (None, 144) 0 ['block3a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block3a_se_reshape (Reshape) (None, 1, 1, 144) 0 ['block3a_se_squeeze[0][0]'] Y \n", + " \n", + " block3a_se_reduce (Conv2D) (None, 1, 1, 6) 870 ['block3a_se_reshape[0][0]'] Y \n", + " \n", + " block3a_se_expand (Conv2D) (None, 1, 1, 144) 1008 ['block3a_se_reduce[0][0]'] Y \n", + " \n", + " block3a_se_excite (Multiply) (None, 28, 28, 144) 0 ['block3a_activation[0][0]', Y \n", + " 'block3a_se_expand[0][0]'] \n", + " \n", + " block3a_project_conv (Conv2D) (None, 28, 28, 40) 5760 ['block3a_se_excite[0][0]'] Y \n", + " \n", + " block3a_project_bn (BatchNorma (None, 28, 28, 40) 160 ['block3a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block3b_expand_conv (Conv2D) (None, 28, 28, 240) 9600 ['block3a_project_bn[0][0]'] Y \n", + " \n", + " block3b_expand_bn (BatchNormal (None, 28, 28, 240) 960 ['block3b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block3b_expand_activation (Act (None, 28, 28, 240) 0 ['block3b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block3b_dwconv (DepthwiseConv2 (None, 28, 28, 240) 6000 ['block3b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block3b_bn (BatchNormalization (None, 28, 28, 240) 960 ['block3b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block3b_activation (Activation (None, 28, 28, 240) 0 ['block3b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block3b_se_squeeze (GlobalAver (None, 240) 0 ['block3b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block3b_se_reshape (Reshape) (None, 1, 1, 240) 0 ['block3b_se_squeeze[0][0]'] Y \n", + " \n", + " block3b_se_reduce (Conv2D) (None, 1, 1, 10) 2410 ['block3b_se_reshape[0][0]'] Y \n", + " \n", + " block3b_se_expand (Conv2D) (None, 1, 1, 240) 2640 ['block3b_se_reduce[0][0]'] Y \n", + " \n", + " block3b_se_excite (Multiply) (None, 28, 28, 240) 0 ['block3b_activation[0][0]', Y \n", + " 'block3b_se_expand[0][0]'] \n", + " \n", + " block3b_project_conv (Conv2D) (None, 28, 28, 40) 9600 ['block3b_se_excite[0][0]'] Y \n", + " \n", + " block3b_project_bn (BatchNorma (None, 28, 28, 40) 160 ['block3b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block3b_drop (FixedDropout) (None, 28, 28, 40) 0 ['block3b_project_bn[0][0]'] Y \n", + " \n", + " block3b_add (Add) (None, 28, 28, 40) 0 ['block3b_drop[0][0]', Y \n", + " 'block3a_project_bn[0][0]'] \n", + " \n", + " block4a_expand_conv (Conv2D) (None, 28, 28, 240) 9600 ['block3b_add[0][0]'] Y \n", + " \n", + " block4a_expand_bn (BatchNormal (None, 28, 28, 240) 960 ['block4a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block4a_expand_activation (Act (None, 28, 28, 240) 0 ['block4a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block4a_dwconv (DepthwiseConv2 (None, 14, 14, 240) 2160 ['block4a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block4a_bn (BatchNormalization (None, 14, 14, 240) 960 ['block4a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block4a_activation (Activation (None, 14, 14, 240) 0 ['block4a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block4a_se_squeeze (GlobalAver (None, 240) 0 ['block4a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block4a_se_reshape (Reshape) (None, 1, 1, 240) 0 ['block4a_se_squeeze[0][0]'] Y \n", + " \n", + " block4a_se_reduce (Conv2D) (None, 1, 1, 10) 2410 ['block4a_se_reshape[0][0]'] Y \n", + " \n", + " block4a_se_expand (Conv2D) (None, 1, 1, 240) 2640 ['block4a_se_reduce[0][0]'] Y \n", + " \n", + " block4a_se_excite (Multiply) (None, 14, 14, 240) 0 ['block4a_activation[0][0]', Y \n", + " 'block4a_se_expand[0][0]'] \n", + " \n", + " block4a_project_conv (Conv2D) (None, 14, 14, 80) 19200 ['block4a_se_excite[0][0]'] Y \n", + " \n", + " block4a_project_bn (BatchNorma (None, 14, 14, 80) 320 ['block4a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block4b_expand_conv (Conv2D) (None, 14, 14, 480) 38400 ['block4a_project_bn[0][0]'] Y \n", + " \n", + " block4b_expand_bn (BatchNormal (None, 14, 14, 480) 1920 ['block4b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block4b_expand_activation (Act (None, 14, 14, 480) 0 ['block4b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block4b_dwconv (DepthwiseConv2 (None, 14, 14, 480) 4320 ['block4b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block4b_bn (BatchNormalization (None, 14, 14, 480) 1920 ['block4b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block4b_activation (Activation (None, 14, 14, 480) 0 ['block4b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block4b_se_squeeze (GlobalAver (None, 480) 0 ['block4b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block4b_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block4b_se_squeeze[0][0]'] Y \n", + " \n", + " block4b_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block4b_se_reshape[0][0]'] Y \n", + " \n", + " block4b_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block4b_se_reduce[0][0]'] Y \n", + " \n", + " block4b_se_excite (Multiply) (None, 14, 14, 480) 0 ['block4b_activation[0][0]', Y \n", + " 'block4b_se_expand[0][0]'] \n", + " \n", + " block4b_project_conv (Conv2D) (None, 14, 14, 80) 38400 ['block4b_se_excite[0][0]'] Y \n", + " \n", + " block4b_project_bn (BatchNorma (None, 14, 14, 80) 320 ['block4b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block4b_drop (FixedDropout) (None, 14, 14, 80) 0 ['block4b_project_bn[0][0]'] Y \n", + " \n", + " block4b_add (Add) (None, 14, 14, 80) 0 ['block4b_drop[0][0]', Y \n", + " 'block4a_project_bn[0][0]'] \n", + " \n", + " block4c_expand_conv (Conv2D) (None, 14, 14, 480) 38400 ['block4b_add[0][0]'] Y \n", + " \n", + " block4c_expand_bn (BatchNormal (None, 14, 14, 480) 1920 ['block4c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block4c_expand_activation (Act (None, 14, 14, 480) 0 ['block4c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block4c_dwconv (DepthwiseConv2 (None, 14, 14, 480) 4320 ['block4c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block4c_bn (BatchNormalization (None, 14, 14, 480) 1920 ['block4c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block4c_activation (Activation (None, 14, 14, 480) 0 ['block4c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block4c_se_squeeze (GlobalAver (None, 480) 0 ['block4c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block4c_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block4c_se_squeeze[0][0]'] Y \n", + " \n", + " block4c_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block4c_se_reshape[0][0]'] Y \n", + " \n", + " block4c_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block4c_se_reduce[0][0]'] Y \n", + " \n", + " block4c_se_excite (Multiply) (None, 14, 14, 480) 0 ['block4c_activation[0][0]', Y \n", + " 'block4c_se_expand[0][0]'] \n", + " \n", + " block4c_project_conv (Conv2D) (None, 14, 14, 80) 38400 ['block4c_se_excite[0][0]'] Y \n", + " \n", + " block4c_project_bn (BatchNorma (None, 14, 14, 80) 320 ['block4c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block4c_drop (FixedDropout) (None, 14, 14, 80) 0 ['block4c_project_bn[0][0]'] Y \n", + " \n", + " block4c_add (Add) (None, 14, 14, 80) 0 ['block4c_drop[0][0]', Y \n", + " 'block4b_add[0][0]'] \n", + " \n", + " block5a_expand_conv (Conv2D) (None, 14, 14, 480) 38400 ['block4c_add[0][0]'] Y \n", + " \n", + " block5a_expand_bn (BatchNormal (None, 14, 14, 480) 1920 ['block5a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5a_expand_activation (Act (None, 14, 14, 480) 0 ['block5a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5a_dwconv (DepthwiseConv2 (None, 14, 14, 480) 12000 ['block5a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5a_bn (BatchNormalization (None, 14, 14, 480) 1920 ['block5a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5a_activation (Activation (None, 14, 14, 480) 0 ['block5a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5a_se_squeeze (GlobalAver (None, 480) 0 ['block5a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5a_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block5a_se_squeeze[0][0]'] Y \n", + " \n", + " block5a_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block5a_se_reshape[0][0]'] Y \n", + " \n", + " block5a_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block5a_se_reduce[0][0]'] Y \n", + " \n", + " block5a_se_excite (Multiply) (None, 14, 14, 480) 0 ['block5a_activation[0][0]', Y \n", + " 'block5a_se_expand[0][0]'] \n", + " \n", + " block5a_project_conv (Conv2D) (None, 14, 14, 112) 53760 ['block5a_se_excite[0][0]'] Y \n", + " \n", + " block5a_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block5a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5b_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block5a_project_bn[0][0]'] Y \n", + " \n", + " block5b_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block5b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5b_expand_activation (Act (None, 14, 14, 672) 0 ['block5b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5b_dwconv (DepthwiseConv2 (None, 14, 14, 672) 16800 ['block5b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5b_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block5b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5b_activation (Activation (None, 14, 14, 672) 0 ['block5b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5b_se_squeeze (GlobalAver (None, 672) 0 ['block5b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5b_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block5b_se_squeeze[0][0]'] Y \n", + " \n", + " block5b_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block5b_se_reshape[0][0]'] Y \n", + " \n", + " block5b_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block5b_se_reduce[0][0]'] Y \n", + " \n", + " block5b_se_excite (Multiply) (None, 14, 14, 672) 0 ['block5b_activation[0][0]', Y \n", + " 'block5b_se_expand[0][0]'] \n", + " \n", + " block5b_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block5b_se_excite[0][0]'] Y \n", + " \n", + " block5b_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block5b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5b_drop (FixedDropout) (None, 14, 14, 112) 0 ['block5b_project_bn[0][0]'] Y \n", + " \n", + " block5b_add (Add) (None, 14, 14, 112) 0 ['block5b_drop[0][0]', Y \n", + " 'block5a_project_bn[0][0]'] \n", + " \n", + " block5c_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block5b_add[0][0]'] Y \n", + " \n", + " block5c_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block5c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block5c_expand_activation (Act (None, 14, 14, 672) 0 ['block5c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block5c_dwconv (DepthwiseConv2 (None, 14, 14, 672) 16800 ['block5c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block5c_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block5c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block5c_activation (Activation (None, 14, 14, 672) 0 ['block5c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block5c_se_squeeze (GlobalAver (None, 672) 0 ['block5c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block5c_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block5c_se_squeeze[0][0]'] Y \n", + " \n", + " block5c_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block5c_se_reshape[0][0]'] Y \n", + " \n", + " block5c_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block5c_se_reduce[0][0]'] Y \n", + " \n", + " block5c_se_excite (Multiply) (None, 14, 14, 672) 0 ['block5c_activation[0][0]', Y \n", + " 'block5c_se_expand[0][0]'] \n", + " \n", + " block5c_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block5c_se_excite[0][0]'] Y \n", + " \n", + " block5c_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block5c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block5c_drop (FixedDropout) (None, 14, 14, 112) 0 ['block5c_project_bn[0][0]'] Y \n", + " \n", + " block5c_add (Add) (None, 14, 14, 112) 0 ['block5c_drop[0][0]', Y \n", + " 'block5b_add[0][0]'] \n", + " \n", + " block6a_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block5c_add[0][0]'] Y \n", + " \n", + " block6a_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block6a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6a_expand_activation (Act (None, 14, 14, 672) 0 ['block6a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6a_dwconv (DepthwiseConv2 (None, 7, 7, 672) 16800 ['block6a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6a_bn (BatchNormalization (None, 7, 7, 672) 2688 ['block6a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6a_activation (Activation (None, 7, 7, 672) 0 ['block6a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6a_se_squeeze (GlobalAver (None, 672) 0 ['block6a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6a_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block6a_se_squeeze[0][0]'] Y \n", + " \n", + " block6a_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block6a_se_reshape[0][0]'] Y \n", + " \n", + " block6a_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block6a_se_reduce[0][0]'] Y \n", + " \n", + " block6a_se_excite (Multiply) (None, 7, 7, 672) 0 ['block6a_activation[0][0]', Y \n", + " 'block6a_se_expand[0][0]'] \n", + " \n", + " block6a_project_conv (Conv2D) (None, 7, 7, 192) 129024 ['block6a_se_excite[0][0]'] Y \n", + " \n", + " block6a_project_bn (BatchNorma (None, 7, 7, 192) 768 ['block6a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6b_expand_conv (Conv2D) (None, 7, 7, 1152) 221184 ['block6a_project_bn[0][0]'] Y \n", + " \n", + " block6b_expand_bn (BatchNormal (None, 7, 7, 1152) 4608 ['block6b_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6b_expand_activation (Act (None, 7, 7, 1152) 0 ['block6b_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6b_dwconv (DepthwiseConv2 (None, 7, 7, 1152) 28800 ['block6b_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6b_bn (BatchNormalization (None, 7, 7, 1152) 4608 ['block6b_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6b_activation (Activation (None, 7, 7, 1152) 0 ['block6b_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6b_se_squeeze (GlobalAver (None, 1152) 0 ['block6b_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6b_se_reshape (Reshape) (None, 1, 1, 1152) 0 ['block6b_se_squeeze[0][0]'] Y \n", + " \n", + " block6b_se_reduce (Conv2D) (None, 1, 1, 48) 55344 ['block6b_se_reshape[0][0]'] Y \n", + " \n", + " block6b_se_expand (Conv2D) (None, 1, 1, 1152) 56448 ['block6b_se_reduce[0][0]'] Y \n", + " \n", + " block6b_se_excite (Multiply) (None, 7, 7, 1152) 0 ['block6b_activation[0][0]', Y \n", + " 'block6b_se_expand[0][0]'] \n", + " \n", + " block6b_project_conv (Conv2D) (None, 7, 7, 192) 221184 ['block6b_se_excite[0][0]'] Y \n", + " \n", + " block6b_project_bn (BatchNorma (None, 7, 7, 192) 768 ['block6b_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6b_drop (FixedDropout) (None, 7, 7, 192) 0 ['block6b_project_bn[0][0]'] Y \n", + " \n", + " block6b_add (Add) (None, 7, 7, 192) 0 ['block6b_drop[0][0]', Y \n", + " 'block6a_project_bn[0][0]'] \n", + " \n", + " block6c_expand_conv (Conv2D) (None, 7, 7, 1152) 221184 ['block6b_add[0][0]'] Y \n", + " \n", + " block6c_expand_bn (BatchNormal (None, 7, 7, 1152) 4608 ['block6c_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6c_expand_activation (Act (None, 7, 7, 1152) 0 ['block6c_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6c_dwconv (DepthwiseConv2 (None, 7, 7, 1152) 28800 ['block6c_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6c_bn (BatchNormalization (None, 7, 7, 1152) 4608 ['block6c_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6c_activation (Activation (None, 7, 7, 1152) 0 ['block6c_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6c_se_squeeze (GlobalAver (None, 1152) 0 ['block6c_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6c_se_reshape (Reshape) (None, 1, 1, 1152) 0 ['block6c_se_squeeze[0][0]'] Y \n", + " \n", + " block6c_se_reduce (Conv2D) (None, 1, 1, 48) 55344 ['block6c_se_reshape[0][0]'] Y \n", + " \n", + " block6c_se_expand (Conv2D) (None, 1, 1, 1152) 56448 ['block6c_se_reduce[0][0]'] Y \n", + " \n", + " block6c_se_excite (Multiply) (None, 7, 7, 1152) 0 ['block6c_activation[0][0]', Y \n", + " 'block6c_se_expand[0][0]'] \n", + " \n", + " block6c_project_conv (Conv2D) (None, 7, 7, 192) 221184 ['block6c_se_excite[0][0]'] Y \n", + " \n", + " block6c_project_bn (BatchNorma (None, 7, 7, 192) 768 ['block6c_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6c_drop (FixedDropout) (None, 7, 7, 192) 0 ['block6c_project_bn[0][0]'] Y \n", + " \n", + " block6c_add (Add) (None, 7, 7, 192) 0 ['block6c_drop[0][0]', Y \n", + " 'block6b_add[0][0]'] \n", + " \n", + " block6d_expand_conv (Conv2D) (None, 7, 7, 1152) 221184 ['block6c_add[0][0]'] Y \n", + " \n", + " block6d_expand_bn (BatchNormal (None, 7, 7, 1152) 4608 ['block6d_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block6d_expand_activation (Act (None, 7, 7, 1152) 0 ['block6d_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block6d_dwconv (DepthwiseConv2 (None, 7, 7, 1152) 28800 ['block6d_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block6d_bn (BatchNormalization (None, 7, 7, 1152) 4608 ['block6d_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block6d_activation (Activation (None, 7, 7, 1152) 0 ['block6d_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block6d_se_squeeze (GlobalAver (None, 1152) 0 ['block6d_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block6d_se_reshape (Reshape) (None, 1, 1, 1152) 0 ['block6d_se_squeeze[0][0]'] Y \n", + " \n", + " block6d_se_reduce (Conv2D) (None, 1, 1, 48) 55344 ['block6d_se_reshape[0][0]'] Y \n", + " \n", + " block6d_se_expand (Conv2D) (None, 1, 1, 1152) 56448 ['block6d_se_reduce[0][0]'] Y \n", + " \n", + " block6d_se_excite (Multiply) (None, 7, 7, 1152) 0 ['block6d_activation[0][0]', Y \n", + " 'block6d_se_expand[0][0]'] \n", + " \n", + " block6d_project_conv (Conv2D) (None, 7, 7, 192) 221184 ['block6d_se_excite[0][0]'] Y \n", + " \n", + " block6d_project_bn (BatchNorma (None, 7, 7, 192) 768 ['block6d_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " block6d_drop (FixedDropout) (None, 7, 7, 192) 0 ['block6d_project_bn[0][0]'] Y \n", + " \n", + " block6d_add (Add) (None, 7, 7, 192) 0 ['block6d_drop[0][0]', Y \n", + " 'block6c_add[0][0]'] \n", + " \n", + " block7a_expand_conv (Conv2D) (None, 7, 7, 1152) 221184 ['block6d_add[0][0]'] Y \n", + " \n", + " block7a_expand_bn (BatchNormal (None, 7, 7, 1152) 4608 ['block7a_expand_conv[0][0]'] Y \n", + " ization) \n", + " \n", + " block7a_expand_activation (Act (None, 7, 7, 1152) 0 ['block7a_expand_bn[0][0]'] Y \n", + " ivation) \n", + " \n", + " block7a_dwconv (DepthwiseConv2 (None, 7, 7, 1152) 10368 ['block7a_expand_activation[0][ Y \n", + " D) 0]'] \n", + " \n", + " block7a_bn (BatchNormalization (None, 7, 7, 1152) 4608 ['block7a_dwconv[0][0]'] Y \n", + " ) \n", + " \n", + " block7a_activation (Activation (None, 7, 7, 1152) 0 ['block7a_bn[0][0]'] Y \n", + " ) \n", + " \n", + " block7a_se_squeeze (GlobalAver (None, 1152) 0 ['block7a_activation[0][0]'] Y \n", + " agePooling2D) \n", + " \n", + " block7a_se_reshape (Reshape) (None, 1, 1, 1152) 0 ['block7a_se_squeeze[0][0]'] Y \n", + " \n", + " block7a_se_reduce (Conv2D) (None, 1, 1, 48) 55344 ['block7a_se_reshape[0][0]'] Y \n", + " \n", + " block7a_se_expand (Conv2D) (None, 1, 1, 1152) 56448 ['block7a_se_reduce[0][0]'] Y \n", + " \n", + " block7a_se_excite (Multiply) (None, 7, 7, 1152) 0 ['block7a_activation[0][0]', Y \n", + " 'block7a_se_expand[0][0]'] \n", + " \n", + " block7a_project_conv (Conv2D) (None, 7, 7, 320) 368640 ['block7a_se_excite[0][0]'] Y \n", + " \n", + " block7a_project_bn (BatchNorma (None, 7, 7, 320) 1280 ['block7a_project_conv[0][0]'] Y \n", + " lization) \n", + " \n", + " top_conv (Conv2D) (None, 7, 7, 1280) 409600 ['block7a_project_bn[0][0]'] Y \n", + " \n", + " top_bn (BatchNormalization) (None, 7, 7, 1280) 5120 ['top_conv[0][0]'] Y \n", + " \n", + " top_activation (Activation) (None, 7, 7, 1280) 0 ['top_bn[0][0]'] Y \n", + " \n", + " FC_INPUT_Avg-Pooling (GlobalAv (None, 1280) 0 ['top_activation[0][0]'] Y \n", + " eragePooling2D) \n", + " \n", + " FC_C_Dense-L1-512 (Dense) (None, 512) 655872 ['FC_INPUT_Avg-Pooling[0][0]'] Y \n", + " \n", + " FC_C_Dropout-L1-0.1 (Dropout) (None, 512) 0 ['FC_C_Dense-L1-512[0][0]'] Y \n", + " \n", + " FC_C_Avg-BatchNormalization-L1 (None, 512) 2048 ['FC_C_Dropout-L1-0.1[0][0]'] Y \n", + " (BatchNormalization) \n", + " \n", + " FC_C_Dense-L2-512 (Dense) (None, 256) 131328 ['FC_C_Avg-BatchNormalization-L Y \n", + " 1[0][0]'] \n", + " \n", + " FC_C_Avg-BatchNormalization-L2 (None, 256) 1024 ['FC_C_Dense-L2-512[0][0]'] Y \n", + " (BatchNormalization) \n", + " \n", + " FC_C_Dense-L3-128 (Dense) (None, 128) 32896 ['FC_C_Avg-BatchNormalization-L Y \n", + " 2[0][0]'] \n", + " \n", + " FC_OUTPUT_Dense-2 (Dense) (None, 2) 258 ['FC_C_Dense-L3-128[0][0]'] Y \n", + " \n", + "=============================================================================================================\n", + "Total params: 4,872,990\n", + "Trainable params: 4,829,438\n", + "Non-trainable params: 43,552\n", + "_____________________________________________________________________________________________________________\n", + "done.\n" + ] + } + ], + "source": [ + "from efficientnet.keras import EfficientNetB0 as KENB0\n", + "# FUNC\n", + "def Eff_B0_NS(freeze_layers):\n", + " base_model = KENB0(input_shape=(\n", + " img_res[0], img_res[1], img_res[2]), weights='noisy-student', include_top=False)\n", + " print('Total layers in the base model: ', len(base_model.layers))\n", + " print(f'Freezing {freeze_layers} layers in the base model...')\n", + " # Freeze the specified number of layers\n", + " for layer in base_model.layers[:freeze_layers]:\n", + " layer.trainable = False\n", + "\n", + " # Unfreeze the rest\n", + " for layer in base_model.layers[freeze_layers:]:\n", + " layer.trainable = True\n", + "\n", + " # Calculate the percentage of the model that is frozen\n", + " frozen_percentage = ((freeze_layers + 1e-10) /\n", + " len(base_model.layers)) * 100\n", + " print(\n", + " f'Percentage of the base model that is frozen: {frozen_percentage:.2f}%')\n", + " # adding CDL>>>\n", + " #GlobalAveragePooling2D\n", + " base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n", + " #Dense\n", + " Dense_L1 = Dense(512, activation='relu',\n", + " kernel_regularizer=l2(0.02),\n", + " name='FC_C_Dense-L1-512'\n", + " )(base_model_FT)\n", + " #Dropout\n", + " Dropout_L1 = Dropout(0.1,\n", + " name='FC_C_Dropout-L1-0.1'\n", + " )(Dense_L1)\n", + " #BatchNormalization\n", + " BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n", + " )(Dropout_L1)\n", + " #Dense\n", + " Dense_L2 = Dense(256, activation='relu',\n", + " kernel_regularizer=l2(0.01),\n", + " name='FC_C_Dense-L2-512'\n", + " )(BatchNorm_L2)\n", + " #BatchNormalization\n", + " BatchNorm_L3 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L2'\n", + " )(Dense_L2)\n", + " #Dense\n", + " Dense_L3 = Dense(128, activation='relu',\n", + " name='FC_C_Dense-L3-128'\n", + " )(BatchNorm_L3)\n", + " #Dense\n", + " # predictions = Dense(2, activation='softmax')(Dense_L3) / predictions = Dense(1, activation='sigmoid')(Dense_L3)\n", + " predictions = Dense(2, activation='softmax',\n", + " name='FC_OUTPUT_Dense-2')(Dense_L3)\n", + " # CDL<<<\n", + " model_EfficientNetB4_NS = Model(\n", + " inputs=base_model.input, outputs=predictions)\n", + " print('Total model layers: ', len(model_EfficientNetB4_NS.layers))\n", + " # OPT/compile\n", + " opt = SGD(momentum=0.92, nesterov=False)\n", + " # opt = Nadam()\n", + " # opt = Adamax()\n", + " # opt = RMSprop(momentum=0.9)\n", + " # opt = Adagrad()\n", + " # opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=5e-4, print_change_log=False, total_steps=0, amsgrad=False)\n", + " # opt = Yogi()\n", + " model_EfficientNetB4_NS.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy']) # categorical_crossentropy / binary_crossentropy\n", + "\n", + " return model_EfficientNetB4_NS\n", + "\n", + "print('Creating the model...')\n", + "# Main\n", + "freeze_layers = 0\n", + "model = Eff_B0_NS(freeze_layers)\n", + "model.summary(show_trainable=True, expand_nested=True)\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### LR FINDER" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import gc\n", + "# Garbage Collection (memory)\n", + "gc.collect()\n", + "tf.keras.backend.clear_session()\n", + "#CONF/Other\n", + "LRF_OPT = SGD(momentum=0.9)\n", + "LFR_batch_size = 1 # or any other batch size that fits in your memory\n", + "LRF_dataset = tf.data.Dataset.from_tensor_slices((x_train, y_train)).batch(LFR_batch_size)\n", + "# Instantiate LrFinder\n", + "lr_find = LrFinder(model, LRF_OPT, tf.keras.losses.categorical_crossentropy)\n", + "\n", + "# Start range_test\n", + "lr_find.range_test(LRF_dataset)\n", + "lr_find.plot_lrs(skip_end=0, suggestion=True, show_grid=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Model vis" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "dot_img_file = 'model_1.png'\n", + "keras.utils.plot_model(model, to_file=dot_img_file, show_shapes=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Loading the model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Loading the full model" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import efficientnet.tfkeras\n", + "# Configuration\n", + "PRMC = False\n", + "freeze_from_opposite = False\n", + "Extra_EXT = '_T'\n", + "freeze_layers = 0 \n", + "randomly_frozen_layers = 0 \n", + "freeze_last_seven = False \n", + "# CEC_opt = Adagrad()\n", + "# CEC_opt = Yogi()\n", + "# CEC_opt = AdaBeliefOptimizer(epsilon=1e-7, rectify=False, weight_decay=1e-3)\n", + "CEC_opt = SGD(momentum=0.9, nesterov=False)\n", + "# CEC_opt = Adam()\n", + "# Main\n", + "try:\n", + " if SAVE_TYPE == 'TF':\n", + " model = load_model(f'PAI_model{Extra_EXT}', compile=PRMC)\n", + " else:\n", + " model = load_model(f'PAI_model{Extra_EXT}.h5', compile=PRMC)\n", + "except (ImportError, IOError) as e:\n", + " print(f'\\033[91mfailed to load the model ERROR:\\n{e}')\n", + "else:\n", + " print('\\033[92mLoading model done.')\n", + " if not PRMC:\n", + " print('Compiling the AI model...\\033[0m')\n", + " \n", + " for layer in model.layers:\n", + " layer.trainable = True\n", + " \n", + " # Select random layers to freeze\n", + " frozen_layer_indices = random.sample(range(len(model.layers)), randomly_frozen_layers)\n", + " \n", + " for i, layer in enumerate(model.layers):\n", + " if i in frozen_layer_indices:\n", + " layer.trainable = False\n", + " else:\n", + " if freeze_from_opposite and (i > len(model.layers) - freeze_layers):\n", + " layer.trainable = False\n", + " elif (not freeze_from_opposite) and i < freeze_layers:\n", + " layer.trainable = False\n", + " else:\n", + " layer.trainable = True\n", + " \n", + " for layer in model.layers[-7:]:\n", + " layer.trainable = not freeze_last_seven\n", + " \n", + " model.compile(optimizer=CEC_opt, loss='categorical_crossentropy', metrics=['accuracy'])\n", + " model.summary(show_trainable=True, expand_nested=True)\n", + " print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Loading model weights" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model.load_weights('PAI_model_weights.h5')\n", + "print('done.')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Reset FC" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "for layer in model.layers[-7:]:\n", + " if hasattr(layer, 'kernel_initializer') and hasattr(layer, 'bias_initializer'):\n", + " weight_initializer = layer.kernel_initializer\n", + " bias_initializer = layer.bias_initializer\n", + "\n", + " old_weights, old_biases = layer.get_weights()\n", + "\n", + " layer.set_weights([\n", + " weight_initializer(shape=old_weights.shape),\n", + " bias_initializer(shape=len(old_biases))\n", + " ])\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Training" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Rev2 (THE BEST)\n", + "```\n", + "Working: ✅\n", + "Other:\n", + " + Tensorboard works.\n", + " + Perverts overfitting.\n", + " + Lower memory usage.\n", + " - Slow training.\n", + " + Achieving higher acc.\n", + " - Some models dont work.\n", + "```\n", + "- TODO:\n", + " - add Pruning" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "ExecuteTime": { + "end_time": "2023-12-28T07:04:23.573633300Z", + "start_time": "2023-12-28T02:31:32.468641900Z" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Training the model...\n", + "\u001b[0;33m\n", + "Setup Verbose:\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSetting TensorBoard Log dir to \u001b[0m\u001b[0;32m[logs/fit/y2024_m03_d02-h15_m00_s29]\u001b[0m\u001b[0;36m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mUse_extended_tensorboard \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mDebug_OUTPUT_DPS \u001b[0m\u001b[0;32m[True]\u001b[0m\u001b[0;36m.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mUse_OneCycleLr \u001b[0m\u001b[0;32m[True]\u001b[0m\u001b[0;36m.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mOneCycleLr_UFTS \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 415/420\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1477 - accuracy: 0.9550 - val_loss: 0.1990 - val_accuracy: 0.9487 - lr: 0.0074\n", - "Epoch 416/420\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0889 - accuracy: 0.9761 - val_loss: 0.2268 - val_accuracy: 0.9471 - lr: 0.0074\n", - "Epoch 417/420\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0637 - accuracy: 0.9868 - val_loss: 0.2459 - val_accuracy: 0.9503 - lr: 0.0074\n", - "Epoch 418/420\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0526 - accuracy: 0.9868 - val_loss: 0.3545 - val_accuracy: 0.9183 - lr: 0.0074\n", - "Epoch 419/420\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0463 - accuracy: 0.9911 - val_loss: 0.1760 - val_accuracy: 0.9391 - lr: 0.0074\n", - "Epoch 420/420\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0638 - accuracy: 0.9909 - val_loss: 0.1988 - val_accuracy: 0.9423 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-417-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2459\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1480352581. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m223.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m126.71 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m96.88 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [70] END|--------------------------------------->\u001b[0m\n", + "\u001b[0;33mSetup Verbose END.\u001b[0m\n", "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m71\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 420)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", + "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m1\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 0)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", + "\u001b[0;33m- Loading fitted ImageDataGenerator...\u001b[0m\n", + "\u001b[0;33m- ImageDataGenerator fit done.\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m03_d02-h15_m01_s28\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 421/426\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1391 - accuracy: 0.9577 - val_loss: 0.1691 - val_accuracy: 0.9535 - lr: 0.0074\n", - "Epoch 422/426\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0912 - accuracy: 0.9752 - val_loss: 0.1319 - val_accuracy: 0.9647 - lr: 0.0074\n", - "Epoch 423/426\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0676 - accuracy: 0.9814 - val_loss: 0.1885 - val_accuracy: 0.9535 - lr: 0.0074\n", - "Epoch 424/426\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.0538 - accuracy: 0.9870 - val_loss: 0.1716 - val_accuracy: 0.9631 - lr: 0.0074\n", - "Epoch 425/426\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.0457 - accuracy: 0.9896 - val_loss: 0.3328 - val_accuracy: 0.9087 - lr: 0.0074\n", - "Epoch 426/426\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0359 - accuracy: 0.9933 - val_loss: 0.2633 - val_accuracy: 0.9343 - lr: 0.0074\n", + "Epoch 1/6\n", + "256/256 [==============================] - 42s 132ms/step - loss: 18.4742 - accuracy: 0.7417 - val_loss: 12.8053 - val_accuracy: 0.8542\n", + "Epoch 2/6\n", + "256/256 [==============================] - 32s 125ms/step - loss: 7.7897 - accuracy: 0.8645 - val_loss: 4.3510 - val_accuracy: 0.9022\n", + "Epoch 3/6\n", + "256/256 [==============================] - 32s 125ms/step - loss: 2.7192 - accuracy: 0.8855 - val_loss: 1.7246 - val_accuracy: 0.9103\n", + "Epoch 4/6\n", + "256/256 [==============================] - 32s 125ms/step - loss: 1.1640 - accuracy: 0.9216 - val_loss: 0.8333 - val_accuracy: 0.9359\n", + "Epoch 5/6\n", + "256/256 [==============================] - 32s 124ms/step - loss: 0.6518 - accuracy: 0.9463 - val_loss: 0.5977 - val_accuracy: 0.9231\n", + "Epoch 6/6\n", + "256/256 [==============================] - 32s 125ms/step - loss: 0.4723 - accuracy: 0.9651 - val_loss: 0.8745 - val_accuracy: 0.9375\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-422-0.9647.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9647\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1318\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1480352581 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1318498403\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-006-0.9375.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9375\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.5348\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model accuracy from 0.000000 to 0.937500. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m212.01 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m125.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m86.17 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [71] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m72\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 426)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 427/432\n", - "366/366 [==============================] - 22s 58ms/step - loss: 0.1529 - accuracy: 0.9543 - val_loss: 0.1720 - val_accuracy: 0.9519 - lr: 0.0074\n", - "Epoch 428/432\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1011 - accuracy: 0.9704 - val_loss: 0.1741 - val_accuracy: 0.9455 - lr: 0.0074\n", - "Epoch 429/432\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0712 - accuracy: 0.9841 - val_loss: 0.2622 - val_accuracy: 0.9391 - lr: 0.0074\n", - "Epoch 430/432\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0601 - accuracy: 0.9853 - val_loss: 0.2211 - val_accuracy: 0.9375 - lr: 0.0074\n", - "Epoch 431/432\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0494 - accuracy: 0.9875 - val_loss: 0.3935 - val_accuracy: 0.9103 - lr: 0.0074\n", - "Epoch 432/432\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0403 - accuracy: 0.9911 - val_loss: 0.4013 - val_accuracy: 0.9231 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-427-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1720\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m220.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m126.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.21 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [72] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m73\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 432)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 433/438\n", - "366/366 [==============================] - 25s 62ms/step - loss: 0.1477 - accuracy: 0.9530 - val_loss: 0.2880 - val_accuracy: 0.8894 - lr: 0.0074\n", - "Epoch 434/438\n", - "366/366 [==============================] - 22s 60ms/step - loss: 0.0961 - accuracy: 0.9733 - val_loss: 0.2094 - val_accuracy: 0.9391 - lr: 0.0074\n", - "Epoch 435/438\n", - "366/366 [==============================] - 22s 60ms/step - loss: 0.0727 - accuracy: 0.9800 - val_loss: 0.2153 - val_accuracy: 0.9471 - lr: 0.0074\n", - "Epoch 436/438\n", - "366/366 [==============================] - 21s 58ms/step - loss: 0.0499 - accuracy: 0.9880 - val_loss: 0.3235 - val_accuracy: 0.9359 - lr: 0.0074\n", - "Epoch 437/438\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.0437 - accuracy: 0.9894 - val_loss: 0.3569 - val_accuracy: 0.9407 - lr: 0.0074\n", - "Epoch 438/438\n", - "366/366 [==============================] - 22s 59ms/step - loss: 0.0361 - accuracy: 0.9937 - val_loss: 0.2279 - val_accuracy: 0.9503 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-438-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2280\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m227.76 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m133.41 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.35 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [73] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m74\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 438)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 439/444\n", - "366/366 [==============================] - 23s 59ms/step - loss: 0.1556 - accuracy: 0.9507 - val_loss: 0.1537 - val_accuracy: 0.9535 - lr: 0.0074\n", - "Epoch 440/444\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.0926 - accuracy: 0.9749 - val_loss: 0.3155 - val_accuracy: 0.9263 - lr: 0.0074\n", - "Epoch 441/444\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0644 - accuracy: 0.9849 - val_loss: 0.2972 - val_accuracy: 0.9455 - lr: 0.0074\n", - "Epoch 442/444\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0520 - accuracy: 0.9879 - val_loss: 0.2176 - val_accuracy: 0.9471 - lr: 0.0074\n", - "Epoch 443/444\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0369 - accuracy: 0.9928 - val_loss: 0.3897 - val_accuracy: 0.9167 - lr: 0.0074\n", - "Epoch 444/444\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0313 - accuracy: 0.9952 - val_loss: 0.3425 - val_accuracy: 0.9471 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-439-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1537\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m214.08 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.92 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m91.16 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [74] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m75\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 444)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 445/450\n", - "366/366 [==============================] - 23s 60ms/step - loss: 0.1483 - accuracy: 0.9569 - val_loss: 0.1857 - val_accuracy: 0.9407 - lr: 0.0074\n", - "Epoch 446/450\n", - "366/366 [==============================] - 22s 59ms/step - loss: 0.0976 - accuracy: 0.9740 - val_loss: 0.2764 - val_accuracy: 0.9263 - lr: 0.0074\n", - "Epoch 447/450\n", - "366/366 [==============================] - 21s 57ms/step - loss: 0.0820 - accuracy: 0.9815 - val_loss: 0.1420 - val_accuracy: 0.9583 - lr: 0.0074\n", - "Epoch 448/450\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0496 - accuracy: 0.9902 - val_loss: 0.3020 - val_accuracy: 0.9455 - lr: 0.0074\n", - "Epoch 449/450\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0378 - accuracy: 0.9925 - val_loss: 0.2155 - val_accuracy: 0.9455 - lr: 0.0074\n", - "Epoch 450/450\n", - "366/366 [==============================] - 20s 56ms/step - loss: 0.0373 - accuracy: 0.9911 - val_loss: 0.2442 - val_accuracy: 0.9327 - lr: 0.0074\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-447-0.9583.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1420\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m221.99 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m127.43 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.56 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [75] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m76\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 450)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 451/456\n", - "366/366 [==============================] - 21s 55ms/step - loss: 0.1483 - accuracy: 0.9521 - val_loss: 0.1384 - val_accuracy: 0.9583 - lr: 0.0074\n", - "Epoch 452/456\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0964 - accuracy: 0.9737 - val_loss: 0.1451 - val_accuracy: 0.9503 - lr: 0.0074\n", - "Epoch 453/456\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0675 - accuracy: 0.9839 - val_loss: 0.2225 - val_accuracy: 0.9407 - lr: 0.0074\n", - "Epoch 454/456\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0704 - accuracy: 0.9831 - val_loss: 0.2923 - val_accuracy: 0.9375 - lr: 0.0074\n", - "Epoch 455/456\n", - "365/366 [============================>.] - ETA: 0s - loss: 0.0488 - accuracy: 0.9906\n", - "Epoch 455: ReduceLROnPlateau reducing learning rate to 0.006983372895047068.\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0488 - accuracy: 0.9906 - val_loss: 0.1657 - val_accuracy: 0.9487 - lr: 0.0074\n", - "Epoch 456/456\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0350 - accuracy: 0.9935 - val_loss: 0.3884 - val_accuracy: 0.9071 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-451-0.9583.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9583\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1384\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m211.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.21 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m90.33 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [76] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m77\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 456)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 457/462\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1371 - accuracy: 0.9569 - val_loss: 0.2017 - val_accuracy: 0.9279 - lr: 0.0070\n", - "Epoch 458/462\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0934 - accuracy: 0.9711 - val_loss: 0.2961 - val_accuracy: 0.9038 - lr: 0.0070\n", - "Epoch 459/462\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0704 - accuracy: 0.9814 - val_loss: 0.3361 - val_accuracy: 0.9327 - lr: 0.0070\n", - "Epoch 460/462\n", - "366/366 [==============================] - 19s 53ms/step - loss: 0.0497 - accuracy: 0.9894 - val_loss: 0.2803 - val_accuracy: 0.9327 - lr: 0.0070\n", - "Epoch 461/462\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0411 - accuracy: 0.9911 - val_loss: 0.4175 - val_accuracy: 0.9247 - lr: 0.0070\n", - "Epoch 462/462\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0563 - accuracy: 0.9896 - val_loss: 0.3733 - val_accuracy: 0.9167 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-459-0.9327.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9327\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.3361\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m203.53 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m120.72 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.80 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [77] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m78\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 462)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 463/468\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1401 - accuracy: 0.9557 - val_loss: 0.1863 - val_accuracy: 0.9375 - lr: 0.0070\n", - "Epoch 464/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0952 - accuracy: 0.9735 - val_loss: 0.1739 - val_accuracy: 0.9455 - lr: 0.0070\n", - "Epoch 465/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0685 - accuracy: 0.9832 - val_loss: 0.1786 - val_accuracy: 0.9519 - lr: 0.0070\n", - "Epoch 466/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0568 - accuracy: 0.9867 - val_loss: 0.1787 - val_accuracy: 0.9487 - lr: 0.0070\n", - "Epoch 467/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0477 - accuracy: 0.9913 - val_loss: 0.2478 - val_accuracy: 0.9343 - lr: 0.0070\n", - "Epoch 468/468\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0356 - accuracy: 0.9937 - val_loss: 0.1796 - val_accuracy: 0.9455 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-465-0.9519.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1786\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m204.33 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.47 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m82.86 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [78] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m79\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 468)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 469/474\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1396 - accuracy: 0.9588 - val_loss: 0.2554 - val_accuracy: 0.9359 - lr: 0.0070\n", - "Epoch 470/474\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0863 - accuracy: 0.9766 - val_loss: 0.4866 - val_accuracy: 0.9215 - lr: 0.0070\n", - "Epoch 471/474\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0702 - accuracy: 0.9839 - val_loss: 0.1728 - val_accuracy: 0.9599 - lr: 0.0070\n", - "Epoch 472/474\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0476 - accuracy: 0.9887 - val_loss: 0.3812 - val_accuracy: 0.9311 - lr: 0.0070\n", - "Epoch 473/474\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0330 - accuracy: 0.9947 - val_loss: 0.3739 - val_accuracy: 0.9407 - lr: 0.0070\n", - "Epoch 474/474\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0354 - accuracy: 0.9933 - val_loss: 0.5377 - val_accuracy: 0.9231 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-471-0.9599.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9599\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1728\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m205.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m83.96 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [79] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m80\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 474)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 475/480\n", - "366/366 [==============================] - 21s 56ms/step - loss: 0.1436 - accuracy: 0.9569 - val_loss: 0.1854 - val_accuracy: 0.9439 - lr: 0.0070\n", - "Epoch 476/480\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0988 - accuracy: 0.9721 - val_loss: 0.2520 - val_accuracy: 0.9167 - lr: 0.0070\n", - "Epoch 477/480\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0629 - accuracy: 0.9841 - val_loss: 0.1861 - val_accuracy: 0.9455 - lr: 0.0070\n", - "Epoch 478/480\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0490 - accuracy: 0.9899 - val_loss: 0.3253 - val_accuracy: 0.9071 - lr: 0.0070\n", - "Epoch 479/480\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0401 - accuracy: 0.9916 - val_loss: 0.3218 - val_accuracy: 0.9439 - lr: 0.0070\n", - "Epoch 480/480\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0422 - accuracy: 0.9916 - val_loss: 0.2117 - val_accuracy: 0.9535 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-480-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2117\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m205.76 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.27 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m83.49 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [80] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m81\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 480)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 481/486\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1519 - accuracy: 0.9560 - val_loss: 0.1911 - val_accuracy: 0.9375 - lr: 0.0070\n", - "Epoch 482/486\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0898 - accuracy: 0.9771 - val_loss: 0.1612 - val_accuracy: 0.9535 - lr: 0.0070\n", - "Epoch 483/486\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0641 - accuracy: 0.9867 - val_loss: 0.4178 - val_accuracy: 0.8798 - lr: 0.0070\n", - "Epoch 484/486\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0374 - accuracy: 0.9920 - val_loss: 0.3697 - val_accuracy: 0.9167 - lr: 0.0070\n", - "Epoch 485/486\n", - "366/366 [==============================] - 20s 53ms/step - loss: 0.0316 - accuracy: 0.9938 - val_loss: 0.5891 - val_accuracy: 0.9087 - lr: 0.0070\n", - "Epoch 486/486\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0327 - accuracy: 0.9952 - val_loss: 0.3991 - val_accuracy: 0.9087 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-482-0.9535.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1612\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m205.62 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m121.31 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m84.31 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [81] END|--------------------------------------->\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from inf to 0.53478003. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.64GB, used: 10.35GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m278.44 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m202.81 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m75.63 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;36m<---------------------------------------|Epoch [1] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m82\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 486)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", + "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m2\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 6)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 487/492\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1423 - accuracy: 0.9548 - val_loss: 0.2058 - val_accuracy: 0.9295 - lr: 0.0070\n", - "Epoch 488/492\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0937 - accuracy: 0.9730 - val_loss: 0.2295 - val_accuracy: 0.9279 - lr: 0.0070\n", - "Epoch 489/492\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0712 - accuracy: 0.9829 - val_loss: 0.3317 - val_accuracy: 0.9295 - lr: 0.0070\n", - "Epoch 490/492\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0450 - accuracy: 0.9901 - val_loss: 0.7250 - val_accuracy: 0.8958 - lr: 0.0070\n", - "Epoch 491/492\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0351 - accuracy: 0.9906 - val_loss: 0.1926 - val_accuracy: 0.9407 - lr: 0.0070\n", - "Epoch 492/492\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0265 - accuracy: 0.9964 - val_loss: 0.2211 - val_accuracy: 0.9455 - lr: 0.0070\n", + "Epoch 7/12\n", + "256/256 [==============================] - 36s 132ms/step - loss: 0.5944 - accuracy: 0.8940 - val_loss: 0.5320 - val_accuracy: 0.9263\n", + "Epoch 8/12\n", + "256/256 [==============================] - 33s 127ms/step - loss: 0.4561 - accuracy: 0.9062 - val_loss: 0.4619 - val_accuracy: 0.9295\n", + "Epoch 9/12\n", + "256/256 [==============================] - 32s 125ms/step - loss: 0.3194 - accuracy: 0.9226 - val_loss: 0.5421 - val_accuracy: 0.9135\n", + "Epoch 10/12\n", + "256/256 [==============================] - 32s 124ms/step - loss: 0.2393 - accuracy: 0.9392 - val_loss: 0.3430 - val_accuracy: 0.9295\n", + "Epoch 11/12\n", + "256/256 [==============================] - 32s 124ms/step - loss: 0.1639 - accuracy: 0.9604 - val_loss: 0.5643 - val_accuracy: 0.9263\n", + "Epoch 12/12\n", + "256/256 [==============================] - 32s 125ms/step - loss: 0.1198 - accuracy: 0.9722 - val_loss: 0.4789 - val_accuracy: 0.9359\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-492-0.9455.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2211\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m206.84 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.81 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m84.04 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [82] END|--------------------------------------->\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-012-0.9359.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9359\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.3359\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9375000000. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.53478003 to 0.33587748. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.64GB, used: 10.35GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m263.35 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m197.98 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m65.38 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;36m<---------------------------------------|Epoch [2] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m83\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 492)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", + "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m3\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 12)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 493/498\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1584 - accuracy: 0.9555 - val_loss: 0.1909 - val_accuracy: 0.9359 - lr: 0.0070\n", - "Epoch 494/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0916 - accuracy: 0.9750 - val_loss: 0.3194 - val_accuracy: 0.9247 - lr: 0.0070\n", - "Epoch 495/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0643 - accuracy: 0.9834 - val_loss: 0.3101 - val_accuracy: 0.9279 - lr: 0.0070\n", - "Epoch 496/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0458 - accuracy: 0.9887 - val_loss: 0.3190 - val_accuracy: 0.9295 - lr: 0.0070\n", - "Epoch 497/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0432 - accuracy: 0.9913 - val_loss: 0.1926 - val_accuracy: 0.9471 - lr: 0.0070\n", - "Epoch 498/498\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0718 - accuracy: 0.9856 - val_loss: 0.2387 - val_accuracy: 0.9295 - lr: 0.0070\n", + "Epoch 13/18\n", + "256/256 [==============================] - 35s 127ms/step - loss: 0.2797 - accuracy: 0.9077 - val_loss: 0.5501 - val_accuracy: 0.9391\n", + "Epoch 14/18\n", + "256/256 [==============================] - 32s 124ms/step - loss: 0.2677 - accuracy: 0.9216 - val_loss: 0.2636 - val_accuracy: 0.9071\n", + "Epoch 15/18\n", + "256/256 [==============================] - 33s 130ms/step - loss: 0.2152 - accuracy: 0.9326 - val_loss: 0.2485 - val_accuracy: 0.9215\n", + "Epoch 16/18\n", + "256/256 [==============================] - 32s 126ms/step - loss: 0.1817 - accuracy: 0.9451 - val_loss: 0.2518 - val_accuracy: 0.9423\n", + "Epoch 17/18\n", + "256/256 [==============================] - 32s 125ms/step - loss: 0.1244 - accuracy: 0.9680 - val_loss: 0.2282 - val_accuracy: 0.9343\n", + "Epoch 18/18\n", + "256/256 [==============================] - 33s 128ms/step - loss: 0.0821 - accuracy: 0.9807 - val_loss: 0.2044 - val_accuracy: 0.9471\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-497-0.9471.h5...\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-018-0.9471.h5...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9471\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1926\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m209.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.68 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m85.40 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [83] END|--------------------------------------->\u001b[0m\n", - "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m84\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 498)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;33mPreparing train data...\u001b[0m\n", - "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", - "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m02_d29-h19_m38_s22\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", - "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 499/504\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1609 - accuracy: 0.9528 - val_loss: 0.1881 - val_accuracy: 0.9295 - lr: 0.0070\n", - "Epoch 500/504\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.1053 - accuracy: 0.9723 - val_loss: 0.1571 - val_accuracy: 0.9503 - lr: 0.0070\n", - "Epoch 501/504\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0755 - accuracy: 0.9817 - val_loss: 0.2829 - val_accuracy: 0.9231 - lr: 0.0070\n", - "Epoch 502/504\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0510 - accuracy: 0.9877 - val_loss: 0.2969 - val_accuracy: 0.9359 - lr: 0.0070\n", - "Epoch 503/504\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0390 - accuracy: 0.9918 - val_loss: 0.2665 - val_accuracy: 0.9439 - lr: 0.0070\n", - "Epoch 504/504\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0344 - accuracy: 0.9913 - val_loss: 0.4348 - val_accuracy: 0.9423 - lr: 0.0070\n", - "\u001b[0;32mSubset training done.\u001b[0m\n", - "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-500-0.9503.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9503\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1571\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m217.02 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.59 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m94.42 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [84] END|--------------------------------------->\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2044\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model accuracy from 0.937500 to 0.947115. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.33587748 to 0.20437574. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.64GB, used: 10.35GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m263.57 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m198.27 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m65.30 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;36m<---------------------------------------|Epoch [3] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m85\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 504)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", + "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m4\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 18)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 505/510\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1417 - accuracy: 0.9577 - val_loss: 0.1738 - val_accuracy: 0.9359 - lr: 0.0070\n", - "Epoch 506/510\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0995 - accuracy: 0.9719 - val_loss: 0.1508 - val_accuracy: 0.9551 - lr: 0.0070\n", - "Epoch 507/510\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0641 - accuracy: 0.9839 - val_loss: 0.1598 - val_accuracy: 0.9551 - lr: 0.0070\n", - "Epoch 508/510\n", - "365/366 [============================>.] - ETA: 0s - loss: 0.0435 - accuracy: 0.9906\n", - "Epoch 508: ReduceLROnPlateau reducing learning rate to 0.006634204206056892.\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0435 - accuracy: 0.9906 - val_loss: 0.2226 - val_accuracy: 0.9439 - lr: 0.0070\n", - "Epoch 509/510\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0413 - accuracy: 0.9902 - val_loss: 0.3162 - val_accuracy: 0.9407 - lr: 0.0066\n", - "Epoch 510/510\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0311 - accuracy: 0.9932 - val_loss: 0.2552 - val_accuracy: 0.9423 - lr: 0.0066\n", + "Epoch 19/24\n", + "256/256 [==============================] - 35s 127ms/step - loss: 0.2523 - accuracy: 0.9226 - val_loss: 0.2504 - val_accuracy: 0.9359\n", + "Epoch 20/24\n", + "256/256 [==============================] - 33s 126ms/step - loss: 0.2400 - accuracy: 0.9260 - val_loss: 0.2293 - val_accuracy: 0.9263\n", + "Epoch 21/24\n", + "256/256 [==============================] - 32s 126ms/step - loss: 0.2108 - accuracy: 0.9397 - val_loss: 0.2221 - val_accuracy: 0.9247\n", + "Epoch 22/24\n", + "256/256 [==============================] - 32s 125ms/step - loss: 0.1697 - accuracy: 0.9500 - val_loss: 0.2918 - val_accuracy: 0.8846\n", + "Epoch 23/24\n", + "256/256 [==============================] - 32s 124ms/step - loss: 0.1035 - accuracy: 0.9724 - val_loss: 0.2666 - val_accuracy: 0.9199\n", + "Epoch 24/24\n", + "256/256 [==============================] - 31s 123ms/step - loss: 0.0699 - accuracy: 0.9841 - val_loss: 0.2255 - val_accuracy: 0.9343\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-506-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1508\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m207.83 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.54 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m85.29 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [85] END|--------------------------------------->\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-019-0.9359.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9359\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2503\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.2043757439. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.64GB, used: 10.35GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m267.61 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m196.37 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m71.24 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;36m<---------------------------------------|Epoch [4] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m86\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 510)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", + "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m5\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 24)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 511/516\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1312 - accuracy: 0.9596 - val_loss: 0.2344 - val_accuracy: 0.9183 - lr: 0.0066\n", - "Epoch 512/516\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0930 - accuracy: 0.9735 - val_loss: 0.2015 - val_accuracy: 0.9407 - lr: 0.0066\n", - "Epoch 513/516\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0602 - accuracy: 0.9855 - val_loss: 0.2459 - val_accuracy: 0.9423 - lr: 0.0066\n", - "Epoch 514/516\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0416 - accuracy: 0.9899 - val_loss: 0.2909 - val_accuracy: 0.9407 - lr: 0.0066\n", - "Epoch 515/516\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0385 - accuracy: 0.9913 - val_loss: 0.2050 - val_accuracy: 0.9551 - lr: 0.0066\n", - "Epoch 516/516\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0319 - accuracy: 0.9938 - val_loss: 0.2285 - val_accuracy: 0.9535 - lr: 0.0066\n", + "Epoch 25/30\n", + "256/256 [==============================] - 35s 129ms/step - loss: 0.2422 - accuracy: 0.9243 - val_loss: 0.1921 - val_accuracy: 0.9455\n", + "Epoch 26/30\n", + "256/256 [==============================] - 32s 124ms/step - loss: 0.2242 - accuracy: 0.9299 - val_loss: 0.2463 - val_accuracy: 0.9327\n", + "Epoch 27/30\n", + "256/256 [==============================] - 31s 122ms/step - loss: 0.2152 - accuracy: 0.9348 - val_loss: 0.2260 - val_accuracy: 0.9327\n", + "Epoch 28/30\n", + "256/256 [==============================] - 32s 123ms/step - loss: 0.1638 - accuracy: 0.9534 - val_loss: 0.8411 - val_accuracy: 0.8157\n", + "Epoch 29/30\n", + "256/256 [==============================] - 31s 122ms/step - loss: 0.1064 - accuracy: 0.9722 - val_loss: 0.2070 - val_accuracy: 0.9455\n", + "Epoch 30/30\n", + "256/256 [==============================] - 32s 125ms/step - loss: 0.0754 - accuracy: 0.9805 - val_loss: 0.2612 - val_accuracy: 0.9295\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-515-0.9551.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9551\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2050\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m209.26 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m123.25 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m86.01 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [86] END|--------------------------------------->\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-025-0.9455.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9455\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1921\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32mImproved model loss from 0.20437574 to 0.19206868. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.64GB, used: 10.35GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m259.95 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m194.76 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m65.19 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;36m<---------------------------------------|Epoch [5] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m87\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 516)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", + "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m6\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 30)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 517/522\n", - "366/366 [==============================] - 22s 57ms/step - loss: 0.1382 - accuracy: 0.9605 - val_loss: 0.3483 - val_accuracy: 0.9103 - lr: 0.0066\n", - "Epoch 518/522\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0831 - accuracy: 0.9805 - val_loss: 0.2605 - val_accuracy: 0.9231 - lr: 0.0066\n", - "Epoch 519/522\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0609 - accuracy: 0.9868 - val_loss: 0.2459 - val_accuracy: 0.9439 - lr: 0.0066\n", - "Epoch 520/522\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0423 - accuracy: 0.9921 - val_loss: 0.2561 - val_accuracy: 0.9375 - lr: 0.0066\n", - "Epoch 521/522\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0405 - accuracy: 0.9899 - val_loss: 0.3116 - val_accuracy: 0.9311 - lr: 0.0066\n", - "Epoch 522/522\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0288 - accuracy: 0.9938 - val_loss: 0.3394 - val_accuracy: 0.9343 - lr: 0.0066\n", + "Epoch 31/36\n", + "256/256 [==============================] - 35s 127ms/step - loss: 0.2281 - accuracy: 0.9238 - val_loss: 0.2007 - val_accuracy: 0.9407\n", + "Epoch 32/36\n", + "256/256 [==============================] - 32s 124ms/step - loss: 0.2463 - accuracy: 0.9241 - val_loss: 0.2387 - val_accuracy: 0.9199\n", + "Epoch 33/36\n", + "256/256 [==============================] - 32s 124ms/step - loss: 0.2008 - accuracy: 0.9373 - val_loss: 0.2884 - val_accuracy: 0.9327\n", + "Epoch 34/36\n", + "256/256 [==============================] - 32s 124ms/step - loss: 0.1800 - accuracy: 0.9373 - val_loss: 0.2013 - val_accuracy: 0.9199\n", + "Epoch 35/36\n", + "256/256 [==============================] - 33s 128ms/step - loss: 0.1328 - accuracy: 0.9614 - val_loss: 0.2943 - val_accuracy: 0.9231\n", + "Epoch 36/36\n", + "256/256 [==============================] - 32s 125ms/step - loss: 0.0811 - accuracy: 0.9788 - val_loss: 0.4145 - val_accuracy: 0.9119\n", "\u001b[0;32mSubset training done.\u001b[0m\n", "\u001b[0;33mLoading the best weights...\u001b[0m\n", - "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-519-0.9439.h5...\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9439\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2459\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9647436142. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1318498403. Not saving model.\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.74GB, used: 10.26GB, total, 24.00GB]\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m207.07 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m122.56 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m84.50 \u001b[0m\u001b[0;36msec\u001b[0m\n", - "\u001b[0;36m<---------------------------------------|Epoch [87] END|--------------------------------------->\u001b[0m\n", + "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-031-0.9407.h5...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9407\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.2006\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9471153617. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1920686811. Not saving model.\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;32m(GPU-MEM)\u001b[0m\u001b[0;36m----[free: 13.64GB, used: 10.35GB, total, 24.00GB]\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m264.22 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m196.93 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m67.28 \u001b[0m\u001b[0;36msec\u001b[0m\n", + "\u001b[0;36m<---------------------------------------|Epoch [6] END|--------------------------------------->\u001b[0m\n", "\u001b[0m\n", - "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m88\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 522)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Fine tuning]\u001b[0m\n", + "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m7\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m489 (TSEC: 36)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;91mWarning: \u001b[0m\u001b[0;33m[TerminateOnHighTemp_M -> False] GPU temperature protection is OFF (⚠️)\u001b[0m\n", - "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|5846|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|4096|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;33mPreparing train data...\u001b[0m\n", "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n", "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n", + "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n", "\u001b[0;32mTraining on subset...\u001b[0m\n", - "Epoch 523/528\n", - "366/366 [==============================] - 22s 56ms/step - loss: 0.1513 - accuracy: 0.9562 - val_loss: 0.2526 - val_accuracy: 0.9199 - lr: 0.0066\n", - "Epoch 524/528\n", - "366/366 [==============================] - 20s 54ms/step - loss: 0.0941 - accuracy: 0.9733 - val_loss: 0.4758 - val_accuracy: 0.9054 - lr: 0.0066\n", - "Epoch 525/528\n", - "366/366 [==============================] - 20s 55ms/step - loss: 0.0640 - accuracy: 0.9856 - val_loss: 0.3418 - val_accuracy: 0.9407 - lr: 0.0066\n", - "Epoch 526/528\n", - "176/366 [=============>................] - ETA: 9s - loss: 0.0483 - accuracy: 0.9890 \n", - "KeyboardInterrupt. (Training stopped)\n", - "Training done.\n", - "\n" + "Epoch 37/42\n", + "256/256 [==============================] - 35s 130ms/step - loss: 0.2224 - accuracy: 0.9282 - val_loss: 0.2012 - val_accuracy: 0.9375\n", + "Epoch 38/42\n", + " 77/256 [========>.....................] - ETA: 19s - loss: 0.1903 - accuracy: 0.9367" ] } ], @@ -11584,26 +10228,26 @@ "subset_epoch = 6 # subset_epoch: Number of epochs to train each subset.\n", "subset_epoch_FT = 6 # subset_epoch_FT: subset_epoch after pre-training epochs.\n", "PL_epoch = 26 # PL_epoch: Number of pre-training epochs. Use >=24 for large models or 0/1 for fine-tuning only.\n", - "subset_size = 5846 # subset_size: Size of each training subset. Common values: 512, 1024, 2048, 3200, 4096, 8192.\n", + "subset_size = 4096 # subset_size: Size of each training subset. Common values: 512, 1024, 2048, 3200, 4096, 5846, 8192.\n", "Conf_batch_size_REV2 = 16 # Conf_batch_size_REV2: Batch size.\n", "RES_Train = False # RES_Train: Resume training if True.\n", - "MAX_LR = 0.01 # MAX_LR: Maximum learning rate.\n", - "DEC_LR = 0.00006 # DEC_LR: Learning rate decay.\n", + "MAX_LR = 0.011 # MAX_LR: Maximum learning rate.\n", + "DEC_LR = 0.00004 # DEC_LR: Learning rate decay.\n", "MIN_LR = 0.0005 # MIN_LR: Minimum learning rate.\n", "RES_LR = 0.006 # RES_LR: Resuming learning rate.\n", - "ReduceLROnPlateau_factor = 0.95 # ReduceLROnPlateau_factor: ReduceLROnPlateau factor. (Lr = Factor * Lr_prev)\n", - "Use_OneCycleLr = False # Use_OneCycleLr: Use OneCycleLr if True. if false, use ReduceLROnPlateau.\n", + "ReduceLROnPlateau_factor = 0.98 # ReduceLROnPlateau_factor: ReduceLROnPlateau factor. (Lr = Factor * Lr_prev)\n", + "Use_OneCycleLr = True # Use_OneCycleLr: Use OneCycleLr if True. if false, use ReduceLROnPlateau.\n", "OneCycleLr_UFTS = False # OneCycleLr_UFTS: Set the OneCycleLr max epochs to the estimated full training SUB epochs. (DEC_LR and MIN_LR dont have any effect if True)\n", "Debug_OUTPUT_DPS = True # Debug_OUTPUT_DPS: Output debug image samples if True.\n", "Debug_OUTPUT_DPS_freq = 42 # Debug_OUTPUT_DPS_freq: Debug image output frequency(epoch).\n", "TerminateOnHighTemp_M = False # TerminateOnHighTemp_M: Terminate training on high GPU temp to prevent damage. (Can make the training slower)\n", "SAVE_FULLM = True # SAVE_FULLM: Save full model if True.\n", "AdvSubsetC = True # AdvSubsetC: Use advanced subset sampling to prevent overfitting if True.\n", - "AdvSubsetC_SHR = 32 # AdvSubsetC_SHR: Parameter for advanced subset sampling (shuffling data after n epochs).\n", + "AdvSubsetC_SHR = 42 # AdvSubsetC_SHR: Parameter for advanced subset sampling (shuffling data after n epochs).\n", "load_SUB_BRW = True # load_SUB_BRW: Load previous subset weights to speed up training if True. May reduce max accuracy.\n", "load_SUB_BRW_MODE = 'val_accuracy' # load_SUB_BRW_MODE: Previous subset weights loading mode - 'val_accuracy' or 'val_loss'.\n", "load_SUB_BRW_LMODE = 0 # load_SUB_BRW_LMODE: Previous subset weights loading mode parameter (1 for only on imp and !1 for normal mode (for subset_epoch > 6 normal mode is better)).\n", - "load_SUB_BRW_LMODE_FN = False # load_SUB_BRW_LMODE_FN: Set load_SUB_BRW_LMODE=1 during fine-tuning if True.\n", + "load_SUB_BRW_LMODE_FN = True # load_SUB_BRW_LMODE_FN: Set load_SUB_BRW_LMODE=1 during fine-tuning if True.\n", "ModelCheckpoint_mode = 'auto' # ModelCheckpoint_mode: 'auto', 'min', or 'max' - how to monitor ModelCheckpoint.\n", "ModelCheckpoint_Reset_TO = 0.6251 # ModelCheckpoint_Reset_TO: Reset ModelCheckpoint monitor to this value, e.g. 0 or float('inf').\n", "Auto_clear_cache = True # Auto_clear_cache: Clear cache during training if True to reduce memory usage.\n", @@ -11655,7 +10299,7 @@ " noisy_image = cv2.add(image, scaled_noise)\n", "\n", " return noisy_image\n", - "# noise_func_TRLRev2 ([REV1 OLD])\n", + "# noise_func_TRLRev2 \n", "def noise_func_TRLRev2(image): \n", " noise_type = np.random.choice(['L1', 'L2', 'L3', 'none'])\n", " new_image = np.copy(image)\n", @@ -11686,7 +10330,7 @@ " new_image[i:i+block_size_L1, j:j+block_size_L1] = block\n", " \n", " if add_img_grain:\n", - " intensity = random.uniform(0, 0.07) # Random intensity \n", + " intensity = random.uniform(0, 0.058) # Random intensity \n", " new_image = add_image_grain_TRLRev2(new_image, intensity=intensity)\n", " return new_image\n", "#CONST\n", @@ -11848,7 +10492,8 @@ " subprocess.run([\"Cache_clear.cmd\"], shell=True)\n", " # Reset TF_Summary_text_Dict\n", " TF_Summary_text_Dict = {\n", - " 'Model progress': []\n", + " 'Model progress': [],\n", + " 'Error': []\n", " }\n", " # TSEC: Total-Subset-Epoch-Count\n", " print_Color(f'\\n~*Epoch: ~*{epoch}~*/~*{max_epoch} (TSEC: {Total_SUB_epoch_C})~* | ~*[{STG}]', ['normal', 'cyan', 'normal', 'green', 'blue', 'green'], advanced_mode=True)\n", @@ -11924,6 +10569,16 @@ " S_dir = 'Samples/TSR_SUB_400_' + datetime.datetime.now().strftime('y%Y_m%m_d%d-h%H_m%M_s%S')\n", " print_Color(f'~*- Debug DP Sample dir: ~*{S_dir}', ['red', 'green'], advanced_mode=True)\n", " save_images_to_dir(np.clip(x_SUB_train[SITD], 0, 1), y_SUB_train[SITD], S_dir)\n", + " with file_writer.as_default():\n", + " # For Pneumonia\n", + " indices = np.where(np.all(y_SUB_train[SITD] == (0, 1), axis=-1))\n", + " tensor = np.clip(x_SUB_train[SITD][indices], 0, 1)\n", + " tf.summary.image('Debug SUB_DP Samples (Pneumonia)', tensor, step=epoch, max_outputs=4)\n", + " # For Normal\n", + " indices = np.where(np.all(y_SUB_train[SITD] == (1, 0), axis=-1))\n", + " tensor = np.clip(x_SUB_train[SITD][indices], 0, 1)\n", + " tf.summary.image('Debug SUB_DP Samples (Normal)', tensor, step=epoch, max_outputs=4)\n", + " del indices, tensor\n", " # learning_rate_schedule_SUB\n", " if PL_epoch == 0:\n", " CU_LR = MIN_LR\n", @@ -11944,22 +10599,28 @@ " # Train\n", " print_Color('Training on subset...', ['green'])\n", " start_SUBO_time = time.time()\n", - " SUB_history = model.fit(x_SUB_train,\n", - " y_SUB_train,\n", - " epochs=C_subset_epoch + Total_SUB_epoch_C, # TO FIX TensorBoard (Total_SUB_epoch_C)\n", - " batch_size=Conf_batch_size_REV2,\n", - " validation_data=(x_test, y_test),\n", - " verbose='auto',\n", - " initial_epoch=Total_SUB_epoch_C, # TO FIX TensorBoard\n", - " callbacks=[\n", - " learning_rate_schedule_SUB,\n", - " TerminateOnHighTemp_CB,\n", - " checkpoint_SUB,\n", - " early_stopping,\n", - " tensorboard_callback,\n", - " confusion_matrix_callback\n", - " ]\n", - " )\n", + " try:\n", + " SUB_history = model.fit(x_SUB_train,\n", + " y_SUB_train,\n", + " epochs=C_subset_epoch + Total_SUB_epoch_C, # TO FIX TensorBoard (Total_SUB_epoch_C)\n", + " batch_size=Conf_batch_size_REV2,\n", + " validation_data=(x_test, y_test),\n", + " verbose='auto',\n", + " initial_epoch=Total_SUB_epoch_C, # TO FIX TensorBoard\n", + " callbacks=[\n", + " learning_rate_schedule_SUB,\n", + " TerminateOnHighTemp_CB,\n", + " checkpoint_SUB,\n", + " early_stopping,\n", + " tensorboard_callback,\n", + " confusion_matrix_callback\n", + " ]\n", + " )\n", + " except Exception as Err:\n", + " print_Color(f'Error occurred during fitting: \\n{Err}', ['red'])\n", + " TF_Summary_text_Dict['Error'].append(f'Error occurred during fitting: \\n{Err}')\n", + " raise Exception(f'Error occurred during fitting: \\n{Err}')\n", + " \n", " end_SUBO_time = time.time()\n", " print_Color('Subset training done.', ['green'])\n", " if load_SUB_BRW_LMODE == 1:\n", @@ -11982,6 +10643,7 @@ " model.load_weights(best_weights_filename)\n", " except Exception as Err:\n", " print_Color(f'ERROR: Failed to load weights. Error: {Err}', ['red'])\n", + " TF_Summary_text_Dict['Error'].append(f'ERROR: Failed to load weights. Error: {Err}')\n", " elif load_SUB_BRW and (not load_weights):\n", " print_Color_V2(f'Not loading weights[BSR:acc{{{max(SUB_history.history[\"val_accuracy\"]):.4f}}}, loss{{{min(SUB_history.history[\"val_loss\"]):.4f}}}|BTR:acc{{{best_acc:.4f}}}, loss{{{best_loss:.4f}}}]')\n", " all_histories.append(SUB_history.history)\n", @@ -12002,7 +10664,7 @@ " tf.summary.scalar('Model loss (Main-Sub_Re)', loss, step=epoch)\n", " # If the accuracy is higher than the best_acc\n", " if acc > best_acc:\n", - " print_Color_V2(f'Improved model accuracy from {best_acc:10f} to {acc:10f}. Saving model.')\n", + " print_Color_V2(f'Improved model accuracy from {best_acc:8f} to {acc:8f}. Saving model.')\n", " TF_Summary_text_Dict['Model progress'].append(f'Improved model accuracy from `{best_acc:10f}` to `{acc:10f}` Saving model.')\n", " # Update the best_acc\n", " best_acc = acc\n", @@ -12020,7 +10682,7 @@ " \n", " # If the loss is higher than the best_loss\n", " if loss < best_loss:\n", - " print_Color_V2(f'Improved model loss from {best_loss:.10f} to {loss:.10f}. Saving model.')\n", + " print_Color_V2(f'Improved model loss from {best_loss:.8f} to {loss:.8f}. Saving model.')\n", " TF_Summary_text_Dict['Model progress'].append(f'Improved model loss from `{best_loss:10f}` to `{loss:10f}` Saving model.')\n", " # Update the best_acc\n", " best_loss = loss\n", @@ -12043,10 +10705,12 @@ " # Update TF summary text\n", " for Key in TF_Summary_text_Dict:\n", " TF_Summary_text_cache = f'# @[{Key}].Data:\\n'\n", - " for ID, Item in enumerate(TF_Summary_text_Dict[Key]):\n", - " TF_Summary_text_cache += f'### Data --> \\n#### ~ {Item}\\n'\n", - " # tf.summary.text\n", - " tf.summary.text(Key, TF_Summary_text_cache, step=epoch)\n", + " if TF_Summary_text_Dict[Key] != []:\n", + " for ID, Item in enumerate(TF_Summary_text_Dict[Key]):\n", + " TF_Summary_text_cache += f'### Data |id: {str(ID)}| --> \\n#### ~ {Item}\\n'\n", + " # tf.summary.text\n", + " with file_writer.as_default():\n", + " tf.summary.text(Key, TF_Summary_text_cache, step=epoch)\n", " # Epoch end\n", " end_time = time.time()\n", " epoch_time = end_time - start_FULL_time\n", @@ -12059,7 +10723,18 @@ " Total_SUB_epoch_C += C_subset_epoch # TO FIX TensorBoard\n", "except KeyboardInterrupt:\n", " print('\\nKeyboardInterrupt. (Training stopped)')\n", + "except Exception as Err:\n", + " print(f'Error while traing model (Training stopped):\\n{Err}')\n", "# End\n", + "# Update TF summary text\n", + "for Key in TF_Summary_text_Dict:\n", + " TF_Summary_text_cache = f'# @[{Key}].Data:\\n'\n", + " if TF_Summary_text_Dict[Key] != []:\n", + " for ID, Item in enumerate(TF_Summary_text_Dict[Key]):\n", + " TF_Summary_text_cache += f'### Data |id: {str(ID)}| --> \\n#### ~ {Item}\\n'\n", + " # tf.summary.text\n", + " with file_writer.as_default():\n", + " tf.summary.text(Key, TF_Summary_text_cache, step=epoch)\n", "try:\n", " history = {}\n", " for key in all_histories[0].keys():\n", diff --git a/Update_Code.cmd b/Update_Code.cmd index 1badd28..a89f288 100644 --- a/Update_Code.cmd +++ b/Update_Code.cmd @@ -1,3 +1,3 @@ @echo off -del "Model_T&T.ipynb" -copy "BETA_E_Model_T&T.ipynb" "Model_T&T.ipynb" \ No newline at end of file +del "Model_T&T.ipynb" >nul 2>&1 +copy "BETA_E_Model_T&T.ipynb" "Model_T&T.ipynb" >nul 2>&1 \ No newline at end of file diff --git a/Utils/Debug.py b/Utils/Debug.py new file mode 100644 index 0000000..4cdafff --- /dev/null +++ b/Utils/Debug.py @@ -0,0 +1,46 @@ +#pylibs +import inspect +import traceback +from datetime import datetime +from Utils.print_color_V2_NEW import print_Color_V2 +from Utils.print_color_V1_OLD import print_Color +#Debug +def P_Debug(ID, DEBUG_IF, SFL: bool = True, Force: bool = False, SFCS: bool = True): + """ + This function is used for debugging purposes. It prints out various information about the data passed to it. + + Args: + ID (Any): The identifier for the data. This could be any type, but is typically a string. + DEBUG_IF (Any): The data that needs to be debugged. This could be any type. + SFL (bool, optional): A flag to determine if the stack frame location should be included in the debug information. Defaults to True. + SFCS (bool, optional): A flag to determine if the function call stack should be included in the debug information. Defaults to True. + + Returns: + None + """ + try: + frame_info = inspect.currentframe() + stack_trace = traceback.format_stack() + stack_trace_formated = '' + for line in stack_trace[:-1]: + stack_trace_formated += '--> [!>>>' + line + location = f'{inspect.stack()[1].filename}:{frame_info.f_back.f_lineno}' if SFL else f'L:{frame_info.f_back.f_lineno}' + Debug_data = \ + f'\n~*--> ~*DEBUG INFO id: ~*[{str(ID)}]~*, ' \ + f'Location: ~*[{location}]~*, ' \ + f'time: ~*[{datetime.now().strftime("%Y/%m/%d | %H:%M:%S")}]\n~*--> ~*' \ + f'Data: ~*{str(DEBUG_IF)}\n~*--> ~*' \ + f'Data Type: ~*{type(DEBUG_IF)}\n~*--> ~*' \ + f'Memory Address: ~*DEC>>>~*{id(DEBUG_IF)}~* | HEX>>>~*{hex(id(DEBUG_IF))}~* | BIN>>>~*{bin(id(DEBUG_IF))}\n' + if SFCS: + Debug_data += f'~*--> ~*Function Call Stack: ~*↓\n~*{stack_trace_formated}\n' + print_Color(Debug_data, + ['red', 'magenta', 'green', 'magenta', 'yellow', 'magenta', 'yellow', + 'red', 'magenta', 'yellow', 'red', 'magenta', 'yellow', 'red', 'magenta', + 'cyan', 'yellow', 'cyan', 'yellow', 'cyan', 'yellow', 'red', 'magenta', 'green', 'yellow'] if SFCS else \ + ['red', 'magenta', 'green', 'magenta', 'yellow', 'magenta', 'yellow', + 'red', 'magenta', 'yellow', 'red', 'magenta', 'yellow', 'red', 'magenta', + 'cyan', 'yellow', 'cyan', 'yellow', 'cyan', 'yellow'], + advanced_mode=True) + except Exception as err: + print_Color(f'~*[`Debug` func] --> ERROR: ~*{err}', ['red', 'yellow'], advanced_mode=True) diff --git a/Utils/Other.py b/Utils/Other.py index 7ad43e8..666681b 100644 --- a/Utils/Other.py +++ b/Utils/Other.py @@ -74,6 +74,14 @@ def P_warning(msg): """ print_Color_V2(f'Warning: {msg} (⚠️)') +def P_verbose(msg): + """Prints a verbose message to the console. + + Args: + msg (str): The verbose message to print. + """ + print_Color_V2(f'Verbose: {msg}') + def evaluate_model_full(y_test, model_pred, model=None, x_test=None): """Evaluates a machine learning model on a test set. diff --git a/Utils/README.md b/Utils/README.md index 2b64807..4a2fbc7 100644 --- a/Utils/README.md +++ b/Utils/README.md @@ -10,12 +10,15 @@ - ### github repo used(Python-color-print): [Python-color-print](https://github.com/Aydinhamedi/Python-color-print) - ### doc link: [3_README.md](docs/3_README.md) +## P_Debug (by Me) +- ### github repo used: [Python-Debug-print](https://github.com/Aydinhamedi/Python-Debug-print) + ## Grad_cam (by GPT-4 😁) ## Other.py (by Me) ## FixedDropout.py (by Me) -For EfficientNet model. Example: +For EfficientNet model Example: ```python from Utils.FixedDropout import FixedDropout from keras.models import load_model