File size: 89,738 Bytes
dc7407d dee4edb dc7407d dee4edb dc7407d dee4edb dc7407d dee4edb dc7407d dee4edb dc7407d dee4edb dc7407d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 |
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "2fdf5e9e",
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"import os\n",
"import numpy as np\n",
"import torch\n",
"from torch import nn\n",
"import torchvision.transforms as transforms\n",
"from tqdm import tqdm\n",
"from utils.loaders_viscosity import create_datasets, Dataset_3DCNN,fetch_data_single_folder\n",
"from models.viscosity_models import CNNLayers, CNN3D\n",
"from utils.helper_fun import conv3D_output_size\n",
"from models.feedforward import LinLayers\n",
"from utils.datastruct import CNNData, LinData, NetData\n",
"from models.inference import get_inference, combine_train_and_val"
]
},
{
"cell_type": "markdown",
"id": "ecf5e266",
"metadata": {},
"source": [
"## Dataloaders"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "0ad0faae",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"length test set 33\n"
]
}
],
"source": [
"base_path = r'C:\\Users\\bdutta\\work\\pys\\AI_algos\\viscosity'\n",
"train_dl, test_dl, val_dl = create_datasets(path = os.path.join(base_path,'new_honey_164'), # absolute path\n",
" validation_split = 0.2,\n",
" test_split = 0.2,\n",
" batch_size = 5,\n",
" transform = transforms.Compose([transforms.Resize([256, 342]),\n",
" transforms.ToTensor(),\n",
" transforms.Normalize(mean=[0.5], std=[0.5])]),\n",
" random_seed = 112, # same seed as training\n",
" shuffle = True,\n",
" selected_frames = np.arange(2,62,2))"
]
},
{
"cell_type": "markdown",
"id": "019f8b58",
"metadata": {},
"source": [
"## Model"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "da587c00",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CNN3D(\n",
" (cnn3d): CNNLayers(\n",
" (layers): Sequential(\n",
" (0): Sequential(\n",
" (0): Conv3d(1, 32, kernel_size=(5, 5, 5), stride=(2, 2, 2))\n",
" (1): BatchNorm3d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
" (2): ReLU()\n",
" )\n",
" (1): Sequential(\n",
" (0): Conv3d(32, 48, kernel_size=(3, 3, 3), stride=(2, 2, 2))\n",
" (1): BatchNorm3d(48, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
" (2): ReLU()\n",
" )\n",
" )\n",
" )\n",
" (lin): LinLayers(\n",
" (layers): Sequential(\n",
" (0): Sequential(\n",
" (0): Linear(in_features=1499904, out_features=256, bias=True)\n",
" (1): ReLU()\n",
" (2): Dropout(p=0.2, inplace=False)\n",
" )\n",
" (1): Sequential(\n",
" (0): Linear(in_features=256, out_features=256, bias=True)\n",
" (1): ReLU()\n",
" )\n",
" (2): Sequential(\n",
" (0): Linear(in_features=256, out_features=1, bias=True)\n",
" )\n",
" )\n",
" )\n",
")\n"
]
}
],
"source": [
"# CNN3D Layer's architecture\n",
"cnndata = CNNData(in_dim = 1,\n",
" n_f =[32,48],\n",
" kernel_size=[(5,5,5), (3,3,3)],\n",
" activations=[nn.ReLU(),nn.ReLU()],\n",
" bns = [True, True],\n",
" dropouts = [0, 0],\n",
" paddings = [(0,0,0),(0,0,0)],\n",
" strides = [(2,2,2),(2,2,2)])\n",
"\n",
"# Feedforward layer's architecture\n",
"lindata = LinData(in_dim = conv3D_output_size(cnndata, [30, 256, 342]),\n",
" hidden_layers= [256,256,1],\n",
" activations=[nn.ReLU(),nn.ReLU(),None],\n",
" bns=[False,False,False],\n",
" dropouts =[0.2, 0, 0])\n",
"\n",
"# combined architecture\n",
"args = NetData(cnndata, lindata)\n",
"\n",
"# weight file\n",
"weight_file = 'cnn3d_epoch_300.pt'\n",
" \n",
"# CNN3D model\n",
"device = 'cuda' if torch.cuda.is_available() else 'cpu'\n",
"cnn3d = CNN3D(args).to(device)\n",
"cnn3d.load_state_dict(torch.load(os.path.join(base_path,'weights',weight_file)))\n",
"cnn3d.eval()\n",
"print(cnn3d)"
]
},
{
"cell_type": "markdown",
"id": "426c39d2",
"metadata": {},
"source": [
"## Inference"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "7647e406",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABjUAAAHqCAYAAABMTMx9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAADtzUlEQVR4nOzde1zUZfr/8fcAingY8oCBjIZpHrLazCzTSCg3rUyTkFbbjQ5qbbuG+k3TX22HLbOzkHayLF03XZFQ20rt8IVETVPXNivKzUAQQUWNwSMyM78//M4sAzMwMwzn17MHj8cw9/25P/fAtn0urvu+L4PNZrMJAAAAAAAAAACgkQto6AkAAAAAAAAAAAB4gqQGAAAAAAAAAABoEkhqAAAAAAAAAACAJoGkBgAAAAAAAAAAaBJIagAAAAAAAAAAgCaBpAYAAAAAAAAAAGgSSGoAAAAAAAAAAIAmgaQGAAAAAAAAAABoEkhqAAAAAAAAAACAJoGkBgAAAAAAAAAAaBJIagAA6pzFYtEXX3yhhx9+WEOHDlXnzp3VqlUrdezYUUOHDtWzzz6rY8eONfQ0fWKz2bR48WJFR0erU6dOCgkJUZ8+fTRjxgwdPHiw1uN/++23uueee9SzZ0+1adNGnTt31rXXXqs33nhDFovF6/Gee+45GQwGx5cnzGaznn/+eQ0dOlRhYWEKDg6WyWRSbGysnnzySf36669ezwMAAACoDjGE72obQ5SWlurJJ5/UpZdeqvbt2ys0NFSDBw/Wyy+/rLKyMo/mUFRUpL/85S8aNGiQ4zNecMEFGjVqlJ577jmdPXu2th8TQAtmsNlstoaeBACgeZs8ebLeeecdx/cBAQEyGo1Ofww///zztWbNGg0ZMqQBZuibM2fOaOzYsdqwYYMkKSgoSG3atNHx48clSZ07d9aGDRs0aNAgn8Z/7bXXlJSU5Ag8QkNDdebMGZ0+fVqSNHToUK1fv14dOnTwaLyffvpJl19+ueN66VxAVZ2MjAxNmDDBEVy1bt1abdu2dfrd7dq1S5dffrkXnwwAAACoHjFEw8QQ+/btU0xMjHJzcyVJbdu2lcVi0ZkzZyRJAwcO1BdffKGOHTu6ncPKlSs1ZcoUmc1mSVKbNm3UunVrx/eSdOzYMZ133nk+fUYAYKcGAKDOnT17Vl27dtXDDz+sLVu26PTp0zp27JhKS0v1zjvvqHPnzjp48KBuueUWHT58uKGn67Hp06drw4YNatWqlRYuXKgTJ06otLRU27dvV79+/XTkyBGNHj3a6eHdU+vXr9fUqVNlsVg0YsQI/fjjj/r11191/Phxffjhh+ratau2bNmixMREj8azWq269957dfr0aV1zzTUeXbN582bdcsstOnjwoOLi4rR9+3bH7+7EiRP6+uuv9eijjyo0NNTrzwcAAABUhxii/mOI8vJy3XrrrcrNzVVERIQ+++wznThxQidPntQ//vEPdejQQbt27dLvf/97t3NYtWqVJk6cKLPZrClTpuj777/XqVOnVFJSIrPZrI0bN2r69Olq1aqV158PABxsAADUsa1bt9pOnjzptn3Lli02STZJtqeffroeZ+a7n376yRYYGGiTZJs3b16V9r1799pCQkJskmyPPfaY1+MPGjTIJskWGRlpO3HiRJX2devWOX5mGzdurHG85ORkmyTbnXfeaXviiScc17pz4sQJ24UXXmiTZJs6darX8wcAAABqgxii/mOId955x9G+ZcuWKu3Lly93tH/++edV2g8cOGDr2LGjTZLt5Zdf9nr+AOApdmoAAHwWExMjg8GgJ598UmfPntXLL7+sK6+8Uuedd54MBoMyMzMlSVdffbVCQkLcjnPNNdfo4osvliRt3769PqZea3//+99lsVjUvn17TZ06tUr7hRdeqDvuuEOStGzZMq/GPnjwoHbu3ClJevDBB9W2bdsqfUaNGqVLL71UkvTee+9VO15OTo4effRRde7cWfPnz/doDsuWLdMvv/yi8PBwvfDCC17NHwAAAHCHGKLxxhBLly6VJMXGxrrc3f273/1OPXv2lCT97W9/q9L+6quv6tixYxo4cKCmT5/u1fwBwBskNQAAtXb69GnFxMTo4Ycf1r///W8FBAR4XITark2bNpLkU/HrhvDZZ59Jkq677jq1a9fOZZ+bbrpJ0rlzaX/66SePx963b5/jtT1Qc6V///6SpE8//bTa8SZPnqwTJ07olVdeUVhYmEdzsAcp48ePd/xuAAAAAH8hhmhcMcTJkye1efNmpzlUZjAYNGrUKJfXS/+NIX7/+997/bsEAG+Q1AAA1Nprr72mb7/9Vu+9957MZrOOHj2qw4cP67LLLvPo+uLiYn333XeS5Fg51Nh9//33kqRLLrnEbZ+Kbfb+3qouQLO3FRQU6NixYy77vP322/riiy80YsQI3XXXXR7d88yZM9qxY4ckadCgQcrLy9OUKVPUvXt3tW7dWueff75uvfVWffzxx15+GgAAAOAcYgjXGiqGyM7OltVq9Xh+RUVFOnr0qOP9nJwcHThwQNK5GGL37t2aOHGiIiIiFBwcLJPJpDvuuMOROAGA2iCpAQCotePHj2v58uW6++67HVvEO3furE6dOnl0/V/+8heVlZUpKChId999t09zMBgMPn95e8/S0lKVlpZKkiIjI932q9hmf8D3RFRUlOO1PVBzpWKQ42r8goICzZw5UyEhIXrrrbc8vn9ubq7KysokSb/88osuueQSvf322zp06JDatWunQ4cO6aOPPtLo0aM1efJk2Ww2j8cGAAAAJGIIdxoqhqj42pf57dmzx/F68+bNuvLKK7VixQqVlJSoTZs2KigoUGpqqqKjo/X000/X/IEAoBokNQAAtTZgwADdeuutPl27cuVKvfnmm5KkmTNnqm/fvj6Nc/755/v8FRoa6tW97MGIJJdn1bpqq3hNTbp27apBgwZJOreCraSkpEqfDz74QD/++KPje7PZXKXP/fffr5KSEj355JO68MILPb5/xRVbzzzzjFq1aqVVq1bp+PHjOnbsmPbt26fx48dLkt555x2P63QAAAAAdsQQrjVUDFHb+VWMIf7yl7+oW7du+uyzz3T8+HGVlJTo+++/V0xMjGw2mx5//HGlp6d7/NkAoLKghp4AAKDpGzZsmE/XZWVl6Z577pEkXX/99frrX//q8xyKiop8vrYxeuqppzR69GgdPnxYI0aM0CuvvKKrrrpKJ06c0OrVqzVjxgy1atVKZ8+elSQFBDivU/j73/+ujz/+WJdffrlmzJjh1b3t287trxcvXqzbbrvN8V6PHj30j3/8Q3v27NG///1vPfvss3rooYcUFMRjBQAAADxDDOF/tY0haqNiDGGz2fTBBx/oiiuucLx38cUX65///KcuuugiFRUV6amnnlJcXJzf7g+gZWGnBgCg1rp27er1NV999ZVuueUWnTp1SsOGDdPatWubzB/FO3To4Hh98uRJt/0qtlW8xhO33HKLkpOTFRgYqB07dui6665TmzZt1LlzZ02aNEkhISF65plnHP07duzoeH3w4EFNmzZNgYGBevvtt73+uVac60UXXeSU0LALCAjQww8/LEk6cuSI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bdNtt92moqIil+0RERFas2aNrrrqqmrHqaw5/v4BAABQtzx9hqRCHgAAAFqswtJCv/ZD83X27FmnhMZll12mJUuW6KuvvtKnn36qxx9/XO3atZMkLViwQM8//7zLcR599FFHQmPgwIFasWKFvv76a61YsUIDBw6UJL3zzjt67LHH3M7FYrFo3LhxjoRGXFyc1q1bp23btunVV19V165ddebMGd1///1at26d23Hy8/N16623qqioSEFBQZo1a5Y2btyojRs3atasWQoKClJhYaFuvfVW7d/vejcTAAAAUN+83qmxbt06LVy4UNu3b5fZbFanTp00ZMgQTZ8+XdHR0XU1TzQgVlkBAIDmip0adacuniEbMhZJS0vT+PHjJUnXXHONsrKyFBjofCTZzp07dc011+js2bM677zzdPjwYQUF/beM4Z49ezRgwACVl5fryiuv1MaNGxUSEuJoP3nypIYPH64dO3YoKChI2dnZ6t27d5W5vPvuu7rvvvskSQ8++KBee+01p/aff/5ZgwYNktlsVu/evZWdne00D7u77rpLy5YtkySlpqY6Pp9damqq7rjjDklSYmKilixZ4umPixgCAAAAXquTnRp//etfNXr0aK1fv17FxcUqKytTUVGR1q5dq9jYWL3xxhu1njgAAABQX6J7RMtkNMmgqscESedqanQ3dld0DxbvNLSGjkW2bNnieD1nzpwqCQ1JGjRokEaPHi1J+vXXX5Wdne3UnpycrPLycknndnNUTGhIUtu2bbVgwQJJ5+plzJ8/3+VcXnrpJUlSp06d9OKLL1Zp7927t+bMmSPpXIJj9erVVfoUFRXp/ffflySNHDmySkJDkhISEjRy5EhJ0rJly9weUQUAAADUJ4+TGtu2bdNTTz0lm82mVq1a6ZprrtH48eM1ePBgGQwGWa1WTZ8+XT///HOdTfbQoUP66KOP9Pjjj+umm25Sly5dZDAYZDAYdPfdd3s93rp16zRu3DiZTCYFBwfLZDJp3Lhx1W7Rrqy8vFxvvvmmoqOjFRYWppCQEPXq1Uv3339/jWftVlRcXKzHH39cl112mYxGo4xGoy677DI9/vjjOnLkiMfjfPfdd7r//vvVq1cvhYSEKCwsTNHR0XrzzTcdARQAAADOCQwIVMqoFEmqktiwf588Kpki4Q2sMcQiZWVljtcXXnih2369evVyeY3NZtPatWslSf369dOQIUNcXj9kyBD17dtXkrR27VpV3li/Z88eR7IkISFBbdu2dTlOxfjIVVLjww8/lNVqlSTdc889bj+PfRyr1aoPP/zQbT8AAACgvnic1HjzzTdls9l00UUXadeuXdq8ebNWrlypbdu2acuWLQoPD9fZs2f1zjvv1Nlkzz//fN166616+umntX79eq/+2F+R1WrVpEmTdPPNN2vNmjUqKChQWVmZCgoKtGbNGt18882aPHmy4yHfneLiYg0dOlR//OMftWnTJhUXF+v06dP65ZdftGjRIg0aNMijn8e2bdt06aWX6umnn9bu3btVWlqq0tJS7d69W08//bQuvfRSff311zWO8/bbb2vQoEFatGiRfvnlF50+fVrFxcXatGmT/vjHP2rYsGEqLi72+OcEAADQEsT1j1NaQpoijZFO75uMJqUlpCmuf1wDzQx2jSEWsScaJOmXX35x22/v3r2SJIPBoIsuusjxfk5Ojg4cOCBJGj58eLX3srcXFBQoNzfXqW3Tpk1V+rkSHh6uPn36SJI2b95cpd3TcSq2uRoHAAAAqG8eJzW2bNkig8Gg119/Xf3793dqu+qqq/T888/LZrM5bcuuSz169NCNN97o07XNsTjfJ598ogceeEBlZWU6//zz9eqrr2rbtm1at26d4uLOBeJff/21xo0bJ4vF4vXPDAAAoDmL6x+n3KRcZSRmaHnccmUkZignKYeERiPRGGKRCRMmOM71ff75510+U+/atUsff/yxJGnixIlO5wD/8MMPjtf9+vWr9l4V2ysfYeXLOPn5+Tpx4oTLcUJDQxUeHu52jIiICMfnqDwXAAAAoCFUrRbnRkFBgQIDA92u4hkxYoQkOVYf1YXHH39cgwcP1uDBg3X++ecrNzdXPXv29GqMPXv2OM6grVycb/DgwRozZoyjON+LL76oe++912VxvqVLlzpWN1UuznfVVVfppptuchTne+ihh9wW53v00Ud1+PBhSdLy5cudzrKNjo7WoEGDdMcdd+jQoUN67LHHXBbnO3v2rKZOnSqr1Sqj0ajNmzc7bXsfNWqU/vSnP+n111/Xpk2btGzZMp+O6wIAAGjOAgMCKQbeSDWGWKRLly5atmyZJkyYoM2bN2vw4MGaNm2a+vTpo+PHj2vz5s16+eWXVVZWpiuuuEIvv/yy0/UVFyiZTKZq79W9e3fH6/z8/FqPY7PZtH//fqfdJvZxahrDPs73339fZS4AAABAQ/B4p8bJkyfVpUsXl3+Yl86t4JGkU6dO+WdmLjz11FMaPXq0zj//fJ/HaI7F+VavXu3YAj9nzhynhIbdiy++qI4dOzpeAwAAAE1FY4hFJGnMmDHauXOnJk2apG+++UaJiYm65ppr9Nvf/lZPPvmk2rZtq+TkZGVlZVWJWUpLSx2v27dvX+192rVr53h9/PjxOh2npjEqjlN5jIrOnDkjs9ns9AUAAADUBY+TGp6qXMiuMWmuxfnWrFnj8p4VtW3bVgkJCZLObTXfs2eP2/sBAAAATVFdxyJlZWX629/+5jJGkKSDBw/q73//uz7//PMqbadPn3a8bt26dbX3CQ4OdryunKjx9zg1jVFxnOqSRvPmzVNoaKjjq+JuEwAAAMCf/J7UaMyaa3E++zh9+/at9jxcivwBAAAAvjlx4oRGjBihefPm6ejRo5o1a5ays7N15swZlZSU6NNPP9W1116rHTt26LbbbtMrr7zidH2bNm0cr8vKyqq915kzZxyvK+8s9/c4NY1RcZzKY1Q0Z84clZSUOL44qgoAAAB1xeOaGpJ09OhRXX/99T73MRgM+uKLL7y5pV/Vpjhfxdod3o6zZ88eR3G+ilvAvS3OZzabqxTnO378uCNgqE3BQQAAAKAxa+hY5Mknn1RWVpYkafHixUpMTHS0tW7dWr/97W8VGxurG2+8URkZGZo5c6ZuuOEG/eY3v5EkdejQwdG/umOcJDkV9a58PFTlcSomObwd5+TJkzXOpeI41R1VFRwc7LQzBAAAAKgrXiU1zp49q8zMzGr7lJWVVeljMBhks9lkMBi8nZ9fNcfifP76TAAAAP5ksVqUlZelwtJCRXSIUHSPaAUGBDb0tNCENWQsYrPZ9O6770qS+vTp45TQqCgoKEhPP/20rr32WlmtVi1ZssRRo6/is3rFZ3hXKj6rVz7GqfI4Xbp0qXEcg8FQJVYwmUw6ePBgjXOpOA5HSgEAAKAx8Dipcd111zV4UqK2mmNxPn/NpaIzZ844bVWnyB8AAPBGena6ktYnab+5wuILo0kpo1IU1z+uAWeGpqqhY5GDBw/q6NGjkqSBAwdW23fQoEGO1z/++KPj9cUXX+zyfVcqtvfv39+prfI4l19+eY3jdO/e3SkWsI+zc+dOlZSUqKioyO3O8cLCQkc8UHkuAAAAQEPwOKlR06qopqA5Fufz11wqmjdvnp566qka5wQAAFBZena64lPjZZNzEeUCc4HiU+OVlpBGYgNea+hYJCjov2FTeXl5tX3Pnj3r8rqePXuqW7duOnDggL788stqx9i4caMkKTIyUlFRUU5t1157reP1l19+qd/97ncuxygqKtKePXskScOGDavSfu2112rZsmWOce644w6X41Scq6txAAAAgPrWogqFN8fifP6aS0UU+QMAAL6wWC1KWp9UJaEhyfHetPXTZLFa6ntqQK106tRJRqNRkvTVV19Vm9iomASoWJfPYDBo7Nixks7toNi6davL67du3erYYTF27NgqO1T69Onj2DGRmpqqkydPuhxnyZIljtfjxo2r0j5mzBgFBJwLB9977z23n8c+TkBAgMaMGeO2HwAAAFBfWlRSo66K89V2nNoU5/PXXCoKDg6W0Wh0+gIAAKhJVl6W05FTldlkU745X1l5WfU4K6D2AgICdMstt0iSDhw4oLlz57rsd+zYMT3yyCOO70ePHu3UPm3aNAUGnqstM3Xq1Cq7p0+dOqWpU6dKOrfLY9q0aS7v8/DDD0s6Vxh91qxZVdr37t2refPmSZJ69+7tMqkRHh6uO++8U5K0YcMGpaWlVemzatUqbdiwQZL0hz/8we0RVQAAAEB98jmpUVZWpm+//bbG82ClcyuRvv32W6et2A2hrorzeTKOu+J8noxRcZzKc4mMjPR6Lq7GAQAAqK3C0kK/9gPcaYhY5PHHH1fbtm0lSU8++aTGjBmjDz74QLt27dJXX32l+fPn6/LLL9cPP/wgSbrhhht04403Oo3Rp08fzZw5U5K0Y8cODRs2TCtXrtSOHTu0cuVKDRs2TDt27JAkzZw5UxdddJHLuSQmJjqOgnrttdcUHx+vDRs26Ouvv9bChQs1dOhQmc1mBQQE6NVXX3U6BquiuXPnKiwsTJI0YcIEzZ49W5s2bdKmTZs0e/ZsTZw4UZIUFhamZ555pjY/PgAAAMBvfE5qrFy5UgMHDlRycnKNfefOnauBAwe6XP1Tn+qqOJ8n47grzifJUZzPneqK83Xo0MGRoKjNZwIAAKitiA4Rfu0HuNMQsUi/fv20du1adenSRZL0z3/+U/Hx8briiis0dOhQzZgxQ3l5eZKk66+/XqtWrXI7n3vvvVeStGvXLv3ud7/T4MGD9bvf/U67du2SJN13333VJhECAwO1Zs0aDR48WJL0wQcfaNSoUbr66qs1depUHTp0SMHBwXrrrbd00003uR2ne/fu+uc//6nw8HCVl5fr+eefV3R0tKKjo/X888+rvLxc4eHh+uc//1llgRYAAADQUHxOanzwwQeSpLvuuqvGvvfdd59sNluDJzXsxfkk+bU4nzueFOfzZJyaivPZx/npp5+qTY5Q5A8AANSl6B7RMhlNMsjgst0gg7obuyu6R3Q9zwzNTUPFIiNGjNCPP/6o559/XjExMQoLC1OrVq0UEhKinj17KiEhQWvWrNHnn3+ujh07uhwjICBAixcv1scff6yxY8eqW7duat26tbp166axY8fqk08+0TvvvOOod+FOly5dtGXLFr3++uu69tpr1blzZ7Vp00YXXnihJk+erJ07d2rSpEk1fqarr75au3fv1mOPPaZLLrlE7du3V/v27XXppZfqscce03fffaerr77ap58XAAAAUBcMNputaiVHD/Tu3Vv5+fk6ceKE2+3MdmfPnlW7du0UFRXl+CO/P+Tm5jqK7yUmJjoVw3PnwQcf1BtvvCHpXJG/IUOGVOmzdetWXXPNNY7+r732WpU+F198sbKzs9WpUyfl5+c7tqJX9Nxzz2nOnDmSzhXxGz9+vFN7UVGRIiMjZbVaNXLkSK1fv97lnEeNGqUNGzYoICBABQUFVc6yTU1N1R133CFJmjdvnmbPnl1ljJMnT8pkMunYsWO6+OKL9f3337u8lytms1mhoaEqKSmhvgYAAKhWena64lPjJcmpYLg90ZGWkKa4/nENMjfUr7p8hmwMsQiqRwwBAAAAb3n6DOnzTo0DBw4oNDS0xiBCklq1aqXQ0FAVFjb8+cnNsTjfuHHjdOGFF0o6l9TYu3dvlT4zZ87UsWPHHK8BAADqQlz/OKUlpCnSGOn0vsloIqEBv2mqsQgAAACA2vN5p8Z5552nM2fOVEkKuGKz2dS2bVu1atXKURvCF5s2bdLPP//s+L64uNjxB/phw4ZV2V599913uxxnzpw5eu655yRJAwcO1COPPKJevXpp7969ev755x1n2c6ZM0fPPvusyzEsFouGDx+uzZs3S5Juv/12TZ48WR07dtTXX3+tp59+WocOHVJAQIA++ugjt2fZ5ufna9CgQTp8+LCCgoL0P//zPxo9erQk6aOPPtLLL7+s8vJyhYWF6V//+pfbs2w/+eQT3XrrrbJarTr//PP12GOP6aqrrtKxY8f09ttvO7boX3vttcrMzHQkdjzBKisAAOAti9WirLwsFZYWKqJDhKJ7RCswwPPnDzR9dfkM2RCxCLxDDAEAQMtFLABfefoM6XNSY+DAgfr222+1adMmx1FN7mzevFnR0dEaMGCAdu/e7cvtJJ1LUixdutTj/u4+mtVq1eTJk/Xuu++6vfa+++7TokWLqj3Ltri4WDfffLO2b9/usj04OFgLFy6s8Szbbdu26bbbbnNbDyM8PFxr1qyp8Szbt99+W3/+859VVlbmsv2qq67Sxx9/7Chu6CkCEgAAAHirLp8hGyIWgXeIIQAAaJnSs9OVtD5J+837He+ZjCaljEph1zZqVOfHT/32t7+VzWbT7NmzVV5e7rZfeXm55syZI4PBoBtvvNHX2/lVcy3OZ7/n5MmTdeGFF6pNmzbq3Lmzrr32Wr3xxhvavHmz1wkNAAAAoLFpyrEIAABAc2Wvr1cxoSFJBeYCxafGKz07vYFmhubG550a+/fvV58+fXTmzBlFR0dr/vz5GjhwoFOff/3rX5o+fbqysrLUpk0b/fjjj+rRo4dfJo76wyorAAAAeKsunyGJRRo/YggAAFoWi9WiqJSoKgkNO4MMMhlNyknK4SgquOXpM2TNlfXcMJlMeuutt3T33XcrKytLV155pcLDw3XBBRdIkvbt26eioiLZbDYZDAYtWrSIIAIAAKCR4txbNCXEIgAAAI1LVl6W24SGJNlkU745X1l5WYqJiqm/iaFZ8jmpIUl/+MMf1KlTJ02dOlW5ubkqLCxUYWGhU58LL7xQCxcu1KhRo2o1UQAAANQNzr1FU0QsAgAA0HgUlhbW3MmLfkB1apXUkKRbbrlFo0aNUkZGhrZs2aKioiIZDAaFh4dr6NChio2NrbE2BQAAABqG/dxbm5xPJLWfe5uWkEZiA40WsQgAAEDjENEhwq/9gOr4XFMDLQfn4QIA0Dxx7i3qEs+QLRu/fwAAWhZ7bFFgLqiyYEoitoBnPH2GZNkSAABAC+XNubcAAAAA4E5gQKBSRqVIOpfAqMj+ffKoZBIa8AuSGgAAAC0U594CAAAA8Je4/nFKS0hTpDHS6X2T0cSxtvArj2pqzJgxQ0ajUU8++aTfblwXYwIAAMBzXdt19agf596iIRGLAAAANB1x/eM0tu9YZeVlqbC0UBEdIhTdI5odGvArj2pqBAQEKDw8XAcOHPDbjetiTNQNzsMFAKD5Sc9O10PrHlJBaYHbPpx7i9rw1zMksUjTRAwBAAAAb3n6DOnRTg0AAAA0H+nZ6YpPjXdZwM+Oc28BAAAAAI2Rx0mNkpIS3XvvvXU5FwAAANQxi9WipPVJ1SY0JCnSGKmUUSmce4tGgVgEAAAAgJ3HSY1Tp05pyZIldTgVAAAA1LWsvCztN++vsd+0q6fpTPkZZeZmcgYuGhyxCAAAAAA7j5IaiYmJdXLz0NDQOhkXAAAArhWWFnrU7+HPHna8NhlN7NpAgyEWAQAAAFCRR0mN9957r67nAQAAgHoQ0SHC62sKzAWKT41XWkIaiQ3UO2IRAAAAABUFNPQEAAAAUH+ie0TLZDQ5CoF7wl5/Y9r6abJYLXU1NQAAAAAAakRSAwAAoAUJDAhUyqgUSfI6sZFvzldWXpZH/S1WizJzM7Vi9wpl5maSDAEAAAAA+IXHhcIBAADQPMT1j1NaQpqS1id5VDS8Ik9qcqRnp1cZm7ocAAAAAAB/IKkBAADQAsX1j9PYvmOVlZelwtJCHTxxUNM3TK/xuppqcqRnpys+Nd5xZJUddTkAAADQVFisFsdzckSHCEX3iFZgQGBDTwvA/yGpAQAA0EIFBgQqJipG0rnA7eWvXlaBuaBKQkI6d1SVyWhSdI9ot+NZrBYlrU9yeb1NNhlk0LT10zS271iCQgAAADRK7DoGGj9qagAAANShplJborpaG/bvk0clV5uMyMrLqvY4K2/rcgAAAAD1yb7ruPIzrX3XcXp2egPNDEBFJDUAAADqSHp2uqJSohS7NFYT0ycqdmmsolKiGm0wZK+1EWmMdHrfZDR5dGyUJ/U2vOkHAAAA1Jeadh1L0rT10xrtIiWgJeH4KQAAgDrQVGtLVK614c0ZwjXV2/C2HwAAAFBfvNl1bD/CFUDDIKkBAADgZ029tkTFWhveiO4RLZPRVKu6HAAAAEBDYNcx0HRw/BQAAICftdTaEv6oywEAAAA0BHYdA00HSQ0AAAA/a8mrvGpblwMAAABoCPZdx5UX59gZZFB3Y3d2HQONgEfHTwUG+mc1ncFgUHl5uV/GAgAAaKxa+iqv2tTlACojFgEAAPXBvus4PjVeBhmcjlNl1zHQuHiU1LDZqp6JDAAAANeoLeF7XQ6gMmIRAABQX+y7jpPWJzkdJ2sympQ8Kpldx0Aj4VFSIyMjw+X7OTk5mjFjhk6cOKH4+Hhdf/31MplMkqSCggL97//+r9LS0tSuXTu98sorioqK8tvEAQAAGitWeQH+QywCAADqE7uOgcbPYPNx6dOhQ4c0cOBABQUF6ZNPPtGAAQNc9vvhhx908803y2Kx6F//+pfCwsJqNWHUP7PZrNDQUJWUlMhoNDb0dAAAaDLSs9OrrPLqbuzOKi+0CHX5DEks0vgRQwAAAMBbnj5D+lwo/JlnnlFRUZHefvttt0GEJF188cVatGiRCgoKNHfuXF9vBwAA0OTE9Y9TblKuMhIztDxuuTISM5STlENCA6glYhEAAACg5fJ5p0avXr1UVFSkEydOeNS/Xbt2Cg8P1969e325HRoQq6wAAKiZxWphizpQQV0+QxKLNH7EEAAAAPCWp8+QHtXUcOXAgQNq3bq1x/2DgoJUWFjo6+0AAAAaLVfHTJmMJqWMSmFXBlAHiEUAAACAlsvn46fOO+88HT9+XDt37qyx786dO1VaWqrQ0FBfbwcAANAopWenKz413imhIUn7zfsVnxqv9Oz0BpoZ0HwRiwAAAAAtl89Jjeuvv142m02TJ0/WkSNH3PY7evSoJk+eLIPBoOuvv97X2wEAADQ6FqtFSeuTZJPr0zxtsmna+mmyWC31PDOgeSMWAQAAAFoun2tq/PTTT7r88stVVlamzp07649//KNiY2MVGRkpSSooKFBGRobefPNNHT58WG3atNG//vUv9evXz68fAHWP83ABAHAtMzdTsUtja+yXkZihmKiYup8Q0IjU5TMksUjjRwwBAAAAb3n6DOlzUkOS1q9fr9/97ncym80yGAwu+9hsNnXo0EErVqzQzTff7Out0IAISAAAcO39b9/X71f/vsZ+fx/3d9152Z31MCOg8ajrZ0hikcaNGAIAAADe8vQZ0ufjpyRp1KhR+v777/XAAw+oY8eOstlsTl8dO3bUAw88oO+++44gAgAANDuHTx72az8AniMWAQAAAFqmoNoOEBkZqddff12vv/66cnJydOjQIUlS165d1bNnz1pPEAAAoLEKaxvm134AvEMsAgAAALQ8tU5qVNSzZ0+CBwAA0CRYrBZl5WWpsLRQER0iFN0jWoEBgV6NEWmM9Gs/AL4jFgEAAABaBr8mNQAAAJqC9Ox0Ja1P0n7zfsd7JqNJKaNSFNc/zuNxontEy2Q0OY1TWXdjd0X3iK7VfAEAAIDa8MeCHgBoLGpVU0OS9u/frxkzZmjAgAFq3769goKc8yTHjh3Ts88+q3nz5qm8vLy2twMAAKiV9Ox0xafGV0lEFJgLFJ8ar/TsdI/HCgwIVMqoFBn+75+K7O8lj0omYATqCLEIAAA1S89OV1RKlGKXxmpi+kTFLo1VVEqUV8+9ANCYGGw2m83Xiz/77DMlJCTIbDbLPozBYJDFYnHqd9VVV2nnzp1avXq1xowZU7sZo955WnUeAIDGzmK1KColyu3OCoMMMhlNyknK8SoR4WrnR3djdyWPSvZq5wfQnNT1MySxSONGDAEAjYN9QY9Nzn/+sy/ISUtI43kVQKPh6TOkzzs18vPzFR8fr5KSEt16661KS0tTx44dXfa99957ZbPZ9PHHH/t6OwAAgFrLysuq9qgom2zKN+crKy/Lq3Hj+scpNylXGYkZWh63XBmJGcpJyiFABOoIsQgAADWzWC1KWp9UJaEhyfHetPXTZLFaqrQDQGPmc02Nl19+WaWlpUpISNA//vEPSdKf/vQnl31HjhwpSdq+fbuvtwMAAKi1wtJCv/arKDAgUDFRMV5fB8B7xCIAANTMmwU9PMcCaEp83qmxYcMGGQwGPf300zX27dmzp4KDg5WTk+Pr7QAAAGotokOEX/sBaBjEIgAA1KwuF/QAQEPyeadGXl6eQkJCdNFFF3nUv3379iopKfH1dgAAAFVYrBZl5WWpsLRQER0iFN0jukotjIp9urbrqsgOkTpQesDlNnx7TY3oHtH19REA+IBYBACAmrGgB0Bz5XNSIyAgoEoRPnfKy8tlNpspEAcAAPzGVXFuk9GklFEpjloWrvp0Duksm2wyyOCU2LAXS0welexVkXAA9Y9YBACAmkX3iJbJaFKBuYAFPQCaFZ+Pn7rgggt05swZ5eXl1dh348aNOnv2rMcrqQAAAKqTnp2u+NT4KmcEF5gLFJ8ar/TsdLd9jpw6Iklq37q90/smo0lpCWkU9waaAGIRAABqFhgQqJRRKZL+u4DHjgU9AJoyn5MaI0aMkCS9+eab1fY7e/asHn30URkMBt10002+3g4AAEDSueOkktYnuVxtZn8vaX2SHlr3kMs+dqVlpeoS0kXTrp6mjMQM5STlkNAAmghiEQAAPBPXP05pCWmKNEY6vc+CHgBNmcFms7mP9quxb98+9evXT1arVa+//rruu+8+RURE6NChQ46t4P/61780ffp0ZWVlyWg06ueff1aXLl38+gFQ98xms0JDQ1VSUsK2fQBAg8vMzVTs0li/jWeQgYAOqAN1+QxJLNL4EUMAQOPiSS06AGhonj5D+pzUkKT3339fiYmJstls6tKli0pKSnT27FldffXV2rdvn4qKimSz2RQUFKS0tDSNGTPG11uhARGQAAAakxW7V2hi+kS/jWc/SzgnKYfADvCjun6GJBZp3IghAAAA4C1PnyF9Pn5Kku68806tW7dOvXr10uHDh1VWViabzaatW7eqsLBQNptNvXv31vr16xtdEFFWVqZ33nlHI0eOVEREhIKDg9W+fXv17dtX99xzj7Zs2eLROOvWrdO4ceNkMpkUHBwsk8mkcePGad26dR7Ppby8XG+++aaio6MVFhamkJAQ9erVS/fff7++//57j8cpLi7W448/rssuu0xGo1FGo1GXXXaZHn/8cR05csTjcQAAaMwiOkT4dTybbMo35ysrL8uv4wKoW005FgEAAADgu1rt1LCz2WzauHGjNm/erAMHDshisSg8PFzDhg1TbGysAgMb16rHffv26ZZbbqkxYTB16lSlpKTIYDBUabNarZoyZYoWL17s9vpJkybprbfeUkCA+9xRcXGxbr75Zm3fvt1le3BwsBYuXKhJkyZVO9dt27bptttuU1FRkcv2iIgIrVmzRldddVW147jCKisAQGNisVoUlRKlAnNBtTUzvLU8brkmXDrBb+MBLV19PUM2tVikpSCGAAAAgLfq5fippujs2bMaOHCgI6Fx2WWXacaMGerbt69KS0u1adMmvfzyyzpx4oQkad68eZo9e3aVcebMmaPnnntOkjRw4EDNmjVLvXr10t69e/XCCy9o165djn7PPvusy7lYLBbFxMRo06ZNkqS4uDhNnjxZnTp10rZt2/TMM8/o0KFDCggI0EcffeS2uGF+fr4GDRqkw4cPKygoSDNmzNDo0aMlSR999JFeeeUVlZeXq2vXrtq5c6dMJpNXPzMCEgBAY2KxWjQ3a66eyHzCr+NmJGYoJirGr2MCLRnPkC0bv38AAAB4q86TGn/7298UEhKi8ePHe9Q/PT1dx48f11133eXL7fwmLS3NMedrrrlGWVlZVVZv7dy5U9dcc43Onj2r8847z5EssNuzZ48GDBig8vJyXXnlldq4caNCQkIc7SdPntTw4cO1Y8cOBQUFKTs7W717964yl3fffVf33XefJOnBBx/Ua6+95tT+888/a9CgQTKbzerdu7eys7Od5mF31113admyZZKk1NTUKr+T1NRU3XHHHZKkxMRELVmyxNMflyQCEgBA45Gena6k9Unab97vtzGpqQHUjbp8hmyqsUhLQgwBAAAAb9V5TY27775b06ZN87j///zP/+jee+/19XZ+U7FWxpw5c1xuRx80aJBjp8Ovv/6q7Oxsp/bk5GSVl5dLkhYsWOCU0JCktm3basGCBZLO1cuYP3++y7m89NJLkqROnTrpxRdfrNLeu3dvzZkzR9K5BMfq1aur9CkqKtL7778vSRo5cqTLwC4hIUEjR46UJC1btsztEVUAADRm6dnpik+Nd5vQuPs3d3s9pkHnjphMHpVMQgNoQppqLAIAAACg9mpVKNzbTR6N4aSrsrIyx+sLL7zQbb9evXq5vMZms2nt2rWSpH79+mnIkCEurx8yZIj69u0rSVq7dm2Vz75nzx5HsiQhIUFt27Z1Oc7dd9/teO0qqfHhhx/KarVKku655x63n8c+jtVq1Ycffui2HwAAjZHFalHS+iS3NTQMMujzXz6XqYPJkahwJdDgnLgwGU1KS0hTXP84v84XQN1rirEIAAAAgNqrVVLDG2azWa1bt66v27llTzRI0i+//OK23969eyVJBoNBF110keP9nJwcHThwQJI0fPjwau9lby8oKFBubq5Tm72ORk3jhIeHq0+fPpKkzZs3V2n3dJyKba7GAQCgMcvKy6r2yCmbbNpful+TB02WpCqJDcP//fOP2/+hjMQMLY9brozEDOUk5ZDQAFqAxhKLAAAAAKi9eklqfPXVVzp27JgiIyPr43bVmjBhguM8rueff14Wi6VKn127dunjjz+WJE2cONHp/K4ffvjB8bpfv37V3qtie+UjrHwZJz8/31HAvPI4oaGhCg8PdztGRESE43NUngsAAI1dYWmhR/0u6nSR0hLSFGl0fuaw78iIHxCvmKgYTbh0gmKiYjhyCmgBGlMsAgAAAKD2qladdmPp0qVaunSp03tHjx7V9ddf7/Yam82mX3/9Vd9//70MBoNuuOEG32fqJ126dNGy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lStXxOuvvy7Cw8NFgwYNRKNGjUS3bt3EokWL9K7Fq8uRI0fEmDFjRGhoqHBzcxP+/v7i2WefFZs3bzY5BjkX5hVUG5jDkDmYK5E1mJeRLsz/jKvr/E8mhBAgIiIiIiIiIiIiIiKyc/K6bgAREREREREREREREZEpOKhBREREREREREREREQOgYMaRERERERERERERETkEDioQUREREREREREREREDoGDGkRERERERERERERE5BA4qEFERERERERERERERA6BgxpEREREREREREREROQQOKhBREREREREREREREQOgYMaRERERERERERERETkEDioQUREREREREREREREDoGDGkRERERERERERERE5BA4qEFERBYLCwuDTCbDxo0b67optWrs2LGQyWQYO3ZsXTdFy8aNGyGTyTR+/vznP9d1swAAiYmJWm2LjIys62YRERERUS1iDjG2rpuihTkEETkaDmoQERHZ0MaNGzFnzhwcPHiwTtshl8vRrFkzNGvWDL6+vjaLO2fOHK2kQiaTwcPDAyEhIRg2bBiSk5MhhNA61svLS2qTl5eXzdpEREREROTImEMwhyAi83BQg4iILNa6dWu0a9cOPj4+dd2UWhUYGIh27dohMDBQq2zjxo2YO3dunSckoaGhKCgoQEFBAb777rsaOYcquWjWrBlkMhny8vKwa9cuvPDCC3juuedQXl6uUX/ChAlSm958880aaRMRERER2TfmEMwhmEMQkbU4qEFERBb7/vvvceHCBQwfPryum1KrFixYgAsXLmDBggV13ZQ6pUouCgoKUFJSgrNnz+LZZ58FAOzduxfvvvtuHbeQiIiIiOwNcwjmEMwhiMhaHNQgIiIiq8nlcjz66KPYuXMn2rRpAwBYtWoVKisr67hlRERERERkj5hDEJGlOKhBRFRP3bx5E4888ghkMhl27txpsO6sWbMgk8mkG00VQ5v8lZWV4cMPP0TPnj3RuHFjPPLII/Dz80PHjh0RHx+PL774Qu/5srKyMGXKFHTs2BENGzaEt7c32rVrh9GjR+OLL75AVVWV1jF//PEHEhMT8eSTT6Jx48bw8PBAixYtEBcXh//+9796z1VZWYnVq1cjMjISvr6+eOSRR9C0aVO0a9cOL7zwAtatW6d1jK5N/lSb66WlpQEA5s6dq7Vm7JUrV7Bv3z7IZDK4urri+vXr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d+5cPP3002jZsiUqKirw4MEDtGjRAi+88AK+//57LFmyROexM2fOxI8//ogJEyagTZs2AICKigq0bdsWsbGxSE1NlaZnqwQHByMzMxNLlizBE088AU9PT5SWliI0NBQvv/wyTp06hddee03rXMuXL8eiRYswePBgtG3bFkIIlJWVISgoCMOGDcMXX3yB7du3mzV1vG3btjhw4ACGDRsGPz8/3L59G7/99ht+++03aU3e6kaOHAmZTAagdp6wUvnLX/6CrKwsLFy4EE888QQaNmyIe/fuwc/PD5GRkViyZAnGjBlTa+0hIiIiIsfDHII5BHMIIqptMiFMXHCQiIiIasQXX3yBkSNHwtPTE9evX7dqLdyNGzfilVdeQYsWLXDlyhWbtdHW5syZg7lz56Jv3744ePBgXTeHiIiIiMihMIc4WNfNIaI6xJkaREREdWz58uUAgNjY2Brd3I+IiIiIiJwDcwgiqs84qEFERFSHVq9ejbS0NMjlcrzxxhs2i/vbb79BJpNBJpPhz3/+s83iWiMxMVFq09y5c+u6OUREREREDok5BBHVd6513QAiIqL65tixYxg9ejSKiopw9+5dAMDkyZPx6KOPWh3b09MTzZo103jP19fX6ri24OXlpdW2Jk2a1FFriIiIiIgcB3OI/2EOQUTcU4OIiKiWHTx4EP369YOLiwtatGiB+Ph4/OMf/4CrK581ICIiIiIibcwhiIj+h4MaRERERERERERERETkELinBhEREREREREREREROQQOahARERERERERERERkUPgoAYRERERERERERERETkEDmoQEREREREREREREZFD4KAGERERERERERERERE5BA5qEBERERERERERERGRQ+CgBhEREREREREREREROQQOahARERERERERERERkUPgoAYRERERERERERERETmE/wcGwaEky6HQ6wAAAABJRU5ErkJggg==\n",
"text/plain": [
"<Figure size 1600x500 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# training results\n",
"(df_train, r2_train) = get_inference(model = cnn3d, data_loader= train_dl, device = device)\n",
"\n",
"# validation results\n",
"(df_val, r2_val) = get_inference(model = cnn3d, data_loader= val_dl, device = device)\n",
"\n",
"# test results\n",
"(df_test, r2_test) = get_inference(model = cnn3d, data_loader= test_dl, device = device)\n",
"\n",
"\n",
"# plotting\n",
"(df_train, r2_train)=combine_train_and_val(df_train,df_val)\n",
"dfs = [df_train,df_test]\n",
"r2s = [r2_train,r2_test]\n",
"\n",
"fig, ax = plt.subplots(1,len(r2s), figsize = (16,5))\n",
"\n",
"for idx, (df,r2) in enumerate(zip(dfs,r2s)):\n",
" ax[idx].plot(df['y'],df['y_h'],'go')\n",
" ax[idx].set_xlabel('viscosity [cP]',fontsize = 18)\n",
" ax[idx].set_ylabel('viscosity predicted [cP]',fontsize = 18)\n",
" ax[idx].set_title('r2 = '+str(round(r2,3)),fontsize = 18)\n",
" ax[idx].xaxis.set_tick_params(labelsize=20)\n",
" ax[idx].yaxis.set_tick_params(labelsize=20)\n",
"\n",
"fig.tight_layout()\n",
"\n",
"plt.savefig('viscosity_pred.png',bbox_inches = 'tight')"
]
},
{
"cell_type": "markdown",
"id": "630ef89a",
"metadata": {},
"source": [
"## Single folder"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "10694f41",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"tensor([[2106.7273]], device='cuda:0', grad_fn=<AddmmBackward0>)"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"X = fetch_data_single_folder(path = r'C:\\Users\\bdutta\\work\\pys\\AI_algos\\viscosity\\new_honey_164\\2350',\n",
" frames = np.arange(2,62,2),\n",
" use_transform =transforms.Compose([transforms.Resize([256, 342]),\n",
" transforms.ToTensor(),\n",
" transforms.Normalize(mean=[0.5], std=[0.5])]))\n",
"\n",
"cnn3d(X.to(device))"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "114ed020",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "2de43aa3",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "d9462c55",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "ec8fb2af",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.13"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
|