update model jupyters
This commit is contained in:
1 parent
2dcbff3004
commit
1bd6a05aec
3 files changed
+530
-1006
No files matched your search
@@ -24,7 +24,7 @@
|
||||
"!pip install tqdm\n",
|
||||
"!pip install pydot\n",
|
||||
"!pip install tensorflow-io\n",
|
||||
"!pip install tensorflow-addons\n"
|
||||
"!pip install tensorflow-addons"
|
||||
],
|
||||
"outputs": [],
|
||||
"execution_count": null
|
||||
@@ -49,6 +49,10 @@
|
||||
"import matplotlib.pyplot as plt\n",
|
||||
"from tensorflow.keras.utils import plot_model\n",
|
||||
"import tensorflow_addons as tfa\n",
|
||||
"import os\n",
|
||||
"import joblib\n",
|
||||
"import seaborn as sns\n",
|
||||
"from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score, confusion_matrix\n",
|
||||
"\n",
|
||||
"folder_name = datetime.now().strftime(\"%Y-%m-%d_%H-%M\")\n",
|
||||
"\n",
|
||||
|
||||
@@ -1,190 +1,10 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 1,
|
||||
"id": "8adcbe0819b88578",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Hit:1 http://archive.ubuntu.com/ubuntu jammy InRelease\n",
|
||||
"Hit:2 http://security.ubuntu.com/ubuntu jammy-security InRelease\n",
|
||||
"Hit:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease\n",
|
||||
"Hit:4 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64 InRelease\n",
|
||||
"Hit:5 http://archive.ubuntu.com/ubuntu jammy-backports InRelease\n",
|
||||
"Reading package lists... Done\n",
|
||||
"Reading package lists... Done\n",
|
||||
"Building dependency tree... Done\n",
|
||||
"Reading state information... Done\n",
|
||||
"graphviz is already the newest version (2.42.2-6ubuntu0.1).\n",
|
||||
"0 upgraded, 0 newly installed, 0 to remove and 121 not upgraded.\n",
|
||||
"Requirement already satisfied: tensorflow in /usr/local/lib/python3.11/dist-packages (2.13.0)\n",
|
||||
"Requirement already satisfied: absl-py>=1.0.0 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (2.0.0)\n",
|
||||
"Requirement already satisfied: astunparse>=1.6.0 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (1.6.3)\n",
|
||||
"Requirement already satisfied: flatbuffers>=23.1.21 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (23.5.26)\n",
|
||||
"Requirement already satisfied: gast<=0.4.0,>=0.2.1 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (0.4.0)\n",
|
||||
"Requirement already satisfied: google-pasta>=0.1.1 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (0.2.0)\n",
|
||||
"Requirement already satisfied: grpcio<2.0,>=1.24.3 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (1.58.0)\n",
|
||||
"Requirement already satisfied: h5py>=2.9.0 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (3.9.0)\n",
|
||||
"Requirement already satisfied: keras<2.14,>=2.13.1 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (2.13.1)\n",
|
||||
"Requirement already satisfied: libclang>=13.0.0 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (16.0.6)\n",
|
||||
"Requirement already satisfied: numpy<=1.24.3,>=1.22 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (1.24.3)\n",
|
||||
"Requirement already satisfied: opt-einsum>=2.3.2 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (3.3.0)\n",
|
||||
"Requirement already satisfied: packaging in /usr/local/lib/python3.11/dist-packages (from tensorflow) (23.1)\n",
|
||||
"Requirement already satisfied: protobuf!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<5.0.0dev,>=3.20.3 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (4.24.3)\n",
|
||||
"Requirement already satisfied: setuptools in /usr/local/lib/python3.11/dist-packages (from tensorflow) (68.2.2)\n",
|
||||
"Requirement already satisfied: six>=1.12.0 in /usr/lib/python3/dist-packages (from tensorflow) (1.16.0)\n",
|
||||
"Requirement already satisfied: tensorboard<2.14,>=2.13 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (2.13.0)\n",
|
||||
"Requirement already satisfied: tensorflow-estimator<2.14,>=2.13.0 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (2.13.0)\n",
|
||||
"Requirement already satisfied: termcolor>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (2.3.0)\n",
|
||||
"Requirement already satisfied: typing-extensions<4.6.0,>=3.6.6 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (4.5.0)\n",
|
||||
"Requirement already satisfied: wrapt>=1.11.0 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (1.14.1)\n",
|
||||
"Requirement already satisfied: tensorflow-io-gcs-filesystem>=0.23.1 in /usr/local/lib/python3.11/dist-packages (from tensorflow) (0.37.1)\n",
|
||||
"Requirement already satisfied: wheel<1.0,>=0.23.0 in /usr/local/lib/python3.11/dist-packages (from astunparse>=1.6.0->tensorflow) (0.41.2)\n",
|
||||
"Requirement already satisfied: google-auth<3,>=1.6.3 in /usr/local/lib/python3.11/dist-packages (from tensorboard<2.14,>=2.13->tensorflow) (2.23.1)\n",
|
||||
"Requirement already satisfied: google-auth-oauthlib<1.1,>=0.5 in /usr/local/lib/python3.11/dist-packages (from tensorboard<2.14,>=2.13->tensorflow) (1.0.0)\n",
|
||||
"Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.11/dist-packages (from tensorboard<2.14,>=2.13->tensorflow) (3.4.4)\n",
|
||||
"Requirement already satisfied: requests<3,>=2.21.0 in /usr/local/lib/python3.11/dist-packages (from tensorboard<2.14,>=2.13->tensorflow) (2.31.0)\n",
|
||||
"Requirement already satisfied: tensorboard-data-server<0.8.0,>=0.7.0 in /usr/local/lib/python3.11/dist-packages (from tensorboard<2.14,>=2.13->tensorflow) (0.7.1)\n",
|
||||
"Requirement already satisfied: werkzeug>=1.0.1 in /usr/local/lib/python3.11/dist-packages (from tensorboard<2.14,>=2.13->tensorflow) (2.3.7)\n",
|
||||
"Requirement already satisfied: cachetools<6.0,>=2.0.0 in /usr/local/lib/python3.11/dist-packages (from google-auth<3,>=1.6.3->tensorboard<2.14,>=2.13->tensorflow) (5.3.1)\n",
|
||||
"Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.11/dist-packages (from google-auth<3,>=1.6.3->tensorboard<2.14,>=2.13->tensorflow) (0.3.0)\n",
|
||||
"Requirement already satisfied: rsa<5,>=3.1.4 in /usr/local/lib/python3.11/dist-packages (from google-auth<3,>=1.6.3->tensorboard<2.14,>=2.13->tensorflow) (4.9)\n",
|
||||
"Requirement already satisfied: urllib3>=2.0.5 in /usr/local/lib/python3.11/dist-packages (from google-auth<3,>=1.6.3->tensorboard<2.14,>=2.13->tensorflow) (2.0.5)\n",
|
||||
"Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.11/dist-packages (from google-auth-oauthlib<1.1,>=0.5->tensorboard<2.14,>=2.13->tensorflow) (1.3.1)\n",
|
||||
"Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.11/dist-packages (from requests<3,>=2.21.0->tensorboard<2.14,>=2.13->tensorflow) (3.2.0)\n",
|
||||
"Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.11/dist-packages (from requests<3,>=2.21.0->tensorboard<2.14,>=2.13->tensorflow) (3.4)\n",
|
||||
"Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.11/dist-packages (from requests<3,>=2.21.0->tensorboard<2.14,>=2.13->tensorflow) (2023.7.22)\n",
|
||||
"Requirement already satisfied: MarkupSafe>=2.1.1 in /usr/local/lib/python3.11/dist-packages (from werkzeug>=1.0.1->tensorboard<2.14,>=2.13->tensorflow) (2.1.3)\n",
|
||||
"Requirement already satisfied: pyasn1<0.6.0,>=0.4.6 in /usr/local/lib/python3.11/dist-packages (from pyasn1-modules>=0.2.1->google-auth<3,>=1.6.3->tensorboard<2.14,>=2.13->tensorflow) (0.5.0)\n",
|
||||
"Requirement already satisfied: oauthlib>=3.0.0 in /usr/lib/python3/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<1.1,>=0.5->tensorboard<2.14,>=2.13->tensorflow) (3.2.0)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: numpy in /usr/local/lib/python3.11/dist-packages (1.24.3)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: pandas in /usr/local/lib/python3.11/dist-packages (2.2.3)\n",
|
||||
"Requirement already satisfied: numpy>=1.23.2 in /usr/local/lib/python3.11/dist-packages (from pandas) (1.24.3)\n",
|
||||
"Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.11/dist-packages (from pandas) (2.8.2)\n",
|
||||
"Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.11/dist-packages (from pandas) (2024.2)\n",
|
||||
"Requirement already satisfied: tzdata>=2022.7 in /usr/local/lib/python3.11/dist-packages (from pandas) (2024.2)\n",
|
||||
"Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.8.2->pandas) (1.16.0)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: keras in /usr/local/lib/python3.11/dist-packages (2.13.1)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: scikit-learn in /usr/local/lib/python3.11/dist-packages (1.5.2)\n",
|
||||
"Requirement already satisfied: numpy>=1.19.5 in /usr/local/lib/python3.11/dist-packages (from scikit-learn) (1.24.3)\n",
|
||||
"Requirement already satisfied: scipy>=1.6.0 in /usr/local/lib/python3.11/dist-packages (from scikit-learn) (1.14.1)\n",
|
||||
"Requirement already satisfied: joblib>=1.2.0 in /usr/local/lib/python3.11/dist-packages (from scikit-learn) (1.4.2)\n",
|
||||
"Requirement already satisfied: threadpoolctl>=3.1.0 in /usr/local/lib/python3.11/dist-packages (from scikit-learn) (3.5.0)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: matplotlib in /usr/local/lib/python3.11/dist-packages (3.8.0)\n",
|
||||
"Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.11/dist-packages (from matplotlib) (1.1.1)\n",
|
||||
"Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.11/dist-packages (from matplotlib) (0.11.0)\n",
|
||||
"Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.11/dist-packages (from matplotlib) (4.42.1)\n",
|
||||
"Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.11/dist-packages (from matplotlib) (1.4.5)\n",
|
||||
"Requirement already satisfied: numpy<2,>=1.21 in /usr/local/lib/python3.11/dist-packages (from matplotlib) (1.24.3)\n",
|
||||
"Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.11/dist-packages (from matplotlib) (23.1)\n",
|
||||
"Requirement already satisfied: pillow>=6.2.0 in /usr/local/lib/python3.11/dist-packages (from matplotlib) (10.0.1)\n",
|
||||
"Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.11/dist-packages (from matplotlib) (3.2.0)\n",
|
||||
"Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.11/dist-packages (from matplotlib) (2.8.2)\n",
|
||||
"Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.7->matplotlib) (1.16.0)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: joblib in /usr/local/lib/python3.11/dist-packages (1.4.2)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: pyarrow in /usr/local/lib/python3.11/dist-packages (18.0.0)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: fastparquet in /usr/local/lib/python3.11/dist-packages (2024.11.0)\n",
|
||||
"Requirement already satisfied: pandas>=1.5.0 in /usr/local/lib/python3.11/dist-packages (from fastparquet) (2.2.3)\n",
|
||||
"Requirement already satisfied: numpy in /usr/local/lib/python3.11/dist-packages (from fastparquet) (1.24.3)\n",
|
||||
"Requirement already satisfied: cramjam>=2.3 in /usr/local/lib/python3.11/dist-packages (from fastparquet) (2.9.0)\n",
|
||||
"Requirement already satisfied: fsspec in /usr/local/lib/python3.11/dist-packages (from fastparquet) (2024.10.0)\n",
|
||||
"Requirement already satisfied: packaging in /usr/local/lib/python3.11/dist-packages (from fastparquet) (23.1)\n",
|
||||
"Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.11/dist-packages (from pandas>=1.5.0->fastparquet) (2.8.2)\n",
|
||||
"Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.11/dist-packages (from pandas>=1.5.0->fastparquet) (2024.2)\n",
|
||||
"Requirement already satisfied: tzdata>=2022.7 in /usr/local/lib/python3.11/dist-packages (from pandas>=1.5.0->fastparquet) (2024.2)\n",
|
||||
"Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.8.2->pandas>=1.5.0->fastparquet) (1.16.0)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: scipy in /usr/local/lib/python3.11/dist-packages (1.14.1)\n",
|
||||
"Requirement already satisfied: numpy<2.3,>=1.23.5 in /usr/local/lib/python3.11/dist-packages (from scipy) (1.24.3)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: seaborn in /usr/local/lib/python3.11/dist-packages (0.13.2)\n",
|
||||
"Requirement already satisfied: numpy!=1.24.0,>=1.20 in /usr/local/lib/python3.11/dist-packages (from seaborn) (1.24.3)\n",
|
||||
"Requirement already satisfied: pandas>=1.2 in /usr/local/lib/python3.11/dist-packages (from seaborn) (2.2.3)\n",
|
||||
"Requirement already satisfied: matplotlib!=3.6.1,>=3.4 in /usr/local/lib/python3.11/dist-packages (from seaborn) (3.8.0)\n",
|
||||
"Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.11/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.1.1)\n",
|
||||
"Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.11/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (0.11.0)\n",
|
||||
"Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.11/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (4.42.1)\n",
|
||||
"Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.11/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.4.5)\n",
|
||||
"Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.11/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (23.1)\n",
|
||||
"Requirement already satisfied: pillow>=6.2.0 in /usr/local/lib/python3.11/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (10.0.1)\n",
|
||||
"Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.11/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (3.2.0)\n",
|
||||
"Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.11/dist-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (2.8.2)\n",
|
||||
"Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.11/dist-packages (from pandas>=1.2->seaborn) (2024.2)\n",
|
||||
"Requirement already satisfied: tzdata>=2022.7 in /usr/local/lib/python3.11/dist-packages (from pandas>=1.2->seaborn) (2024.2)\n",
|
||||
"Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.7->matplotlib!=3.6.1,>=3.4->seaborn) (1.16.0)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: tqdm in /usr/local/lib/python3.11/dist-packages (4.67.0)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: pydot in /usr/local/lib/python3.11/dist-packages (3.0.2)\n",
|
||||
"Requirement already satisfied: pyparsing>=3.0.9 in /usr/local/lib/python3.11/dist-packages (from pydot) (3.2.0)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: tensorflow-io in /usr/local/lib/python3.11/dist-packages (0.37.1)\n",
|
||||
"Requirement already satisfied: tensorflow-io-gcs-filesystem==0.37.1 in /usr/local/lib/python3.11/dist-packages (from tensorflow-io) (0.37.1)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n",
|
||||
"Requirement already satisfied: tensorflow-addons in /usr/local/lib/python3.11/dist-packages (0.23.0)\n",
|
||||
"Requirement already satisfied: packaging in /usr/local/lib/python3.11/dist-packages (from tensorflow-addons) (23.1)\n",
|
||||
"Requirement already satisfied: typeguard<3.0.0,>=2.7 in /usr/local/lib/python3.11/dist-packages (from tensorflow-addons) (2.13.3)\n",
|
||||
"\u001B[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001B[0m\u001B[33m\n",
|
||||
"\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m23.2.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m24.3.1\u001B[0m\n",
|
||||
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpython3 -m pip install --upgrade pip\u001B[0m\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"cell_type": "code",
|
||||
"outputs": [],
|
||||
"execution_count": null,
|
||||
"source": [
|
||||
"from opt_einsum.paths import branch_1\n",
|
||||
"!apt-get update\n",
|
||||
@@ -206,32 +26,14 @@
|
||||
"!pip install pydot\n",
|
||||
"!pip install tensorflow-io\n",
|
||||
"!pip install tensorflow-addons"
|
||||
]
|
||||
],
|
||||
"id": "5e0376433a89bbda"
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 2,
|
||||
"id": "7a813e3cbca057b7",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"2024-11-20 18:26:10.290667: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.\n",
|
||||
"To enable the following instructions: AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.\n",
|
||||
"/usr/local/lib/python3.11/dist-packages/tensorflow_addons/utils/tfa_eol_msg.py:23: UserWarning: \n",
|
||||
"\n",
|
||||
"TensorFlow Addons (TFA) has ended development and introduction of new features.\n",
|
||||
"TFA has entered a minimal maintenance and release mode until a planned end of life in May 2024.\n",
|
||||
"Please modify downstream libraries to take dependencies from other repositories in our TensorFlow community (e.g. Keras, Keras-CV, and Keras-NLP). \n",
|
||||
"\n",
|
||||
"For more information see: https://github.com/tensorflow/addons/issues/2807 \n",
|
||||
"\n",
|
||||
" warnings.warn(\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"cell_type": "code",
|
||||
"outputs": [],
|
||||
"execution_count": null,
|
||||
"source": [
|
||||
"import tensorflow as tf\n",
|
||||
"from tensorflow.keras.layers import Dense, LSTM, MultiHeadAttention, Dropout, BatchNormalization, LayerNormalization, Input, Activation, Lambda, Bidirectional, Add, MaxPooling1D, SpatialDropout1D, GlobalAveragePooling1D, \\\n",
|
||||
@@ -257,14 +59,14 @@
|
||||
"folder_name = datetime.now().strftime(\"%Y-%m-%d_%H-%M\")\n",
|
||||
"\n",
|
||||
"random_state_value = None"
|
||||
]
|
||||
],
|
||||
"id": "4e7cf95955575047"
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 3,
|
||||
"id": "b3f525e19f78a1da",
|
||||
"metadata": {},
|
||||
"cell_type": "code",
|
||||
"outputs": [],
|
||||
"execution_count": null,
|
||||
"source": [
|
||||
"def get_season(date):\n",
|
||||
" month = date.month\n",
|
||||
@@ -635,16 +437,14 @@
|
||||
" X_to_predict_seq = create_sequence_data(X_to_predict_scaled, sequence_length)\n",
|
||||
"\n",
|
||||
" return X_train_seq, X_test_seq, y_train, y_test, feature_scaler, target_scaler, features, X_to_predict_seq"
|
||||
]
|
||||
],
|
||||
"id": "1f7b15beaf12c0eb"
|
||||
},
|
||||
{
|
||||
"metadata": {},
|
||||
"cell_type": "code",
|
||||
"id": "9dff3259-b376-4cfc-89d8-ab2ea18aaa5e",
|
||||
"metadata": {
|
||||
"jupyter": {
|
||||
"is_executing": true
|
||||
}
|
||||
},
|
||||
"outputs": [],
|
||||
"execution_count": null,
|
||||
"source": [
|
||||
"def create_residual_lstm_layer(x, units, dropout_rate, l2_reg=0.01, return_sequences=True, survival_probability=0.8):\n",
|
||||
" \"\"\"\n",
|
||||
@@ -1266,36 +1066,16 @@
|
||||
"\n",
|
||||
" return df"
|
||||
],
|
||||
"outputs": [],
|
||||
"execution_count": null
|
||||
"id": "93bc105a8dad086d"
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 5,
|
||||
"id": "initial_id",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Initializing solar radiation model training...\n",
|
||||
"\n",
|
||||
"1. Preparing data...\n",
|
||||
"\n",
|
||||
"Selected features:\n",
|
||||
"Number of features: 40\n",
|
||||
"Features list: ['uvindex', 'cloudcover', 'visibility', 'temp', 'pressure', 'humidity', 'solar_elevation', 'solar_angle', 'day_length', 'hour_sin', 'hour_cos', 'day_of_year_sin', 'day_of_year_cos', 'month_sin', 'month_cos', 'clear_sky_index', 'atmospheric_attenuation', 'theoretical_radiation', 'expected_radiation', 'cloud_elevation', 'visibility_elevation', 'uv_cloud_interaction', 'temp_radiation_potential', 'cloud_rolling_12h', 'temp_rolling_12h', 'uv_rolling_12h', 'cloudcover_rolling_mean_6h', 'temp_rolling_mean_6h', 'temp_1h_lag', 'cloudcover_1h_lag', 'humidity_1h_lag', 'uv_lag_1h', 'season_Spring', 'season_Summer', 'season_Autumn', 'season_Winter', 'time_period_Morning', 'time_period_Afternoon', 'time_period_Evening', 'time_period_Night']\n",
|
||||
"Training data shape: (103798, 24, 40)\n",
|
||||
"Test data shape: (25933, 24, 40)\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"cell_type": "code",
|
||||
"outputs": [],
|
||||
"execution_count": null,
|
||||
"source": [
|
||||
"df = pd.read_parquet('../../sources/weather_data_uvindex.parquet')\n",
|
||||
"\n",
|
||||
"print(\"Initializing solar radiation model training...\")\n",
|
||||
"\n",
|
||||
"# Data preparation\n",
|
||||
"print(\"\\n1. Preparing data...\")\n",
|
||||
"X_train_seq, X_test_seq, y_train, y_test, feature_scaler, target_scaler, features, X_to_predict_seq = prepare_hybrid_data(df)\n",
|
||||
@@ -1304,8 +1084,8 @@
|
||||
"print(f\"Test data shape: {X_test_seq.shape}\")\n",
|
||||
"\n",
|
||||
"# Save or load scaler and features\n",
|
||||
"feature_scaler_path = f'{folder_name}_scale_X.joblib'\n",
|
||||
"target_scaler_path = f'{folder_name}_scale_y.joblib'\n",
|
||||
"feature_scaler_path = f'{folder_name}_feature_scaler.joblib'\n",
|
||||
"target_scaler_path = f'{folder_name}_target_scaler.joblib'\n",
|
||||
"features_path = f'{folder_name}_features.json'\n",
|
||||
"model_path = f'{folder_name}_best_model.h5'\n",
|
||||
"history_path = f'{folder_name}_training_history.json'\n",
|
||||
@@ -1336,346 +1116,14 @@
|
||||
"# Data quality verification\n",
|
||||
"if np.isnan(X_train_seq).any() or np.isnan(y_train).any():\n",
|
||||
" raise ValueError(\"Found NaN values in training data\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 6,
|
||||
"id": "44749f6a-8941-41e8-8105-c36417245ed5",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"\n",
|
||||
"2. Creating model...\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"2024-11-20 18:26:58.091461: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1639] Created device /job:localhost/replica:0/task:0/device:GPU:0 with 43404 MB memory: -> device: 0, name: NVIDIA L40, pci bus id: 0000:a1:00.0, compute capability: 8.9\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Model: \"SolarRadiationModel\"\n",
|
||||
"__________________________________________________________________________________________________\n",
|
||||
" Layer (type) Output Shape Param # Connected to \n",
|
||||
"==================================================================================================\n",
|
||||
" input_1 (InputLayer) [(None, 24, 40)] 0 [] \n",
|
||||
" \n",
|
||||
" bidirectional (Bidirection (None, 24, 512) 608256 ['input_1[0][0]'] \n",
|
||||
" al) \n",
|
||||
" \n",
|
||||
" layer_normalization (Layer (None, 24, 512) 1024 ['bidirectional[0][0]'] \n",
|
||||
" Normalization) \n",
|
||||
" \n",
|
||||
" dropout (Dropout) (None, 24, 512) 0 ['layer_normalization[0][0]'] \n",
|
||||
" \n",
|
||||
" dense (Dense) (None, 24, 512) 20992 ['input_1[0][0]'] \n",
|
||||
" \n",
|
||||
" stochastic_depth (Stochast (None, 24, 512) 0 ['dropout[0][0]', \n",
|
||||
" icDepth) 'dense[0][0]'] \n",
|
||||
" \n",
|
||||
" multi_head_attention (Mult (None, 24, 512) 1680230 ['stochastic_depth[0][0]', \n",
|
||||
" iHeadAttention) 4 'stochastic_depth[0][0]'] \n",
|
||||
" \n",
|
||||
" stochastic_depth_1 (Stocha (None, 24, 512) 0 ['stochastic_depth[0][0]', \n",
|
||||
" sticDepth) 'multi_head_attention[0][0]']\n",
|
||||
" \n",
|
||||
" layer_normalization_1 (Lay (None, 24, 512) 1024 ['stochastic_depth_1[0][0]'] \n",
|
||||
" erNormalization) \n",
|
||||
" \n",
|
||||
" max_pooling1d (MaxPooling1 (None, 12, 512) 0 ['layer_normalization_1[0][0]'\n",
|
||||
" D) ] \n",
|
||||
" \n",
|
||||
" bidirectional_1 (Bidirecti (None, 12, 256) 656384 ['max_pooling1d[0][0]'] \n",
|
||||
" onal) \n",
|
||||
" \n",
|
||||
" layer_normalization_2 (Lay (None, 12, 256) 512 ['bidirectional_1[0][0]'] \n",
|
||||
" erNormalization) \n",
|
||||
" \n",
|
||||
" dropout_1 (Dropout) (None, 12, 256) 0 ['layer_normalization_2[0][0]'\n",
|
||||
" ] \n",
|
||||
" \n",
|
||||
" dense_1 (Dense) (None, 12, 256) 131328 ['max_pooling1d[0][0]'] \n",
|
||||
" \n",
|
||||
" stochastic_depth_2 (Stocha (None, 12, 256) 0 ['dropout_1[0][0]', \n",
|
||||
" sticDepth) 'dense_1[0][0]'] \n",
|
||||
" \n",
|
||||
" multi_head_attention_1 (Mu (None, 12, 256) 3155200 ['stochastic_depth_2[0][0]', \n",
|
||||
" ltiHeadAttention) 'stochastic_depth_2[0][0]'] \n",
|
||||
" \n",
|
||||
" stochastic_depth_3 (Stocha (None, 12, 256) 0 ['stochastic_depth_2[0][0]', \n",
|
||||
" sticDepth) 'multi_head_attention_1[0][0]\n",
|
||||
" '] \n",
|
||||
" \n",
|
||||
" layer_normalization_3 (Lay (None, 12, 256) 512 ['stochastic_depth_3[0][0]'] \n",
|
||||
" erNormalization) \n",
|
||||
" \n",
|
||||
" max_pooling1d_1 (MaxPoolin (None, 6, 256) 0 ['layer_normalization_3[0][0]'\n",
|
||||
" g1D) ] \n",
|
||||
" \n",
|
||||
" bidirectional_2 (Bidirecti (None, 6, 128) 164352 ['max_pooling1d_1[0][0]'] \n",
|
||||
" onal) \n",
|
||||
" \n",
|
||||
" layer_normalization_4 (Lay (None, 6, 128) 256 ['bidirectional_2[0][0]'] \n",
|
||||
" erNormalization) \n",
|
||||
" \n",
|
||||
" dropout_2 (Dropout) (None, 6, 128) 0 ['layer_normalization_4[0][0]'\n",
|
||||
" ] \n",
|
||||
" \n",
|
||||
" dense_2 (Dense) (None, 6, 128) 32896 ['max_pooling1d_1[0][0]'] \n",
|
||||
" \n",
|
||||
" stochastic_depth_4 (Stocha (None, 6, 128) 0 ['dropout_2[0][0]', \n",
|
||||
" sticDepth) 'dense_2[0][0]'] \n",
|
||||
" \n",
|
||||
" multi_head_attention_2 (Mu (None, 6, 128) 527488 ['stochastic_depth_4[0][0]', \n",
|
||||
" ltiHeadAttention) 'stochastic_depth_4[0][0]'] \n",
|
||||
" \n",
|
||||
" stochastic_depth_5 (Stocha (None, 6, 128) 0 ['stochastic_depth_4[0][0]', \n",
|
||||
" sticDepth) 'multi_head_attention_2[0][0]\n",
|
||||
" '] \n",
|
||||
" \n",
|
||||
" layer_normalization_5 (Lay (None, 6, 128) 256 ['stochastic_depth_5[0][0]'] \n",
|
||||
" erNormalization) \n",
|
||||
" \n",
|
||||
" bidirectional_3 (Bidirecti (None, 64) 41216 ['layer_normalization_5[0][0]'\n",
|
||||
" onal) ] \n",
|
||||
" \n",
|
||||
" layer_normalization_6 (Lay (None, 64) 128 ['bidirectional_3[0][0]'] \n",
|
||||
" erNormalization) \n",
|
||||
" \n",
|
||||
" dropout_3 (Dropout) (None, 64) 0 ['layer_normalization_6[0][0]'\n",
|
||||
" ] \n",
|
||||
" \n",
|
||||
" dense_3 (Dense) (None, 64) 4160 ['dropout_3[0][0]'] \n",
|
||||
" \n",
|
||||
" batch_normalization (Batch (None, 64) 256 ['dense_3[0][0]'] \n",
|
||||
" Normalization) \n",
|
||||
" \n",
|
||||
" activation (Activation) (None, 64) 0 ['batch_normalization[0][0]'] \n",
|
||||
" \n",
|
||||
" dropout_4 (Dropout) (None, 64) 0 ['activation[0][0]'] \n",
|
||||
" \n",
|
||||
" dense_4 (Dense) (None, 32) 2080 ['dropout_4[0][0]'] \n",
|
||||
" \n",
|
||||
" batch_normalization_1 (Bat (None, 32) 128 ['dense_4[0][0]'] \n",
|
||||
" chNormalization) \n",
|
||||
" \n",
|
||||
" activation_1 (Activation) (None, 32) 0 ['batch_normalization_1[0][0]'\n",
|
||||
" ] \n",
|
||||
" \n",
|
||||
" dropout_5 (Dropout) (None, 32) 0 ['activation_1[0][0]'] \n",
|
||||
" \n",
|
||||
" dense_5 (Dense) (None, 1) 33 ['dropout_5[0][0]'] \n",
|
||||
" \n",
|
||||
" lambda (Lambda) (None, 1) 0 ['dense_5[0][0]'] \n",
|
||||
" \n",
|
||||
"==================================================================================================\n",
|
||||
"Total params: 22150785 (84.50 MB)\n",
|
||||
"Trainable params: 22150593 (84.50 MB)\n",
|
||||
"Non-trainable params: 192 (768.00 Byte)\n",
|
||||
"__________________________________________________________________________________________________\n",
|
||||
"\n",
|
||||
"4. Starting training...\n",
|
||||
"Epoch 1/100\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"2024-11-20 18:28:08.462396: I tensorflow/compiler/xla/stream_executor/cuda/cuda_blas.cc:606] TensorFloat-32 will be used for the matrix multiplication. This will only be logged once.\n",
|
||||
"2024-11-20 18:28:08.551588: I tensorflow/compiler/xla/stream_executor/cuda/cuda_dnn.cc:432] Loaded cuDNN version 8905\n",
|
||||
"2024-11-20 18:28:08.771296: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x7494b4d65840 initialized for platform CUDA (this does not guarantee that XLA will be used). Devices:\n",
|
||||
"2024-11-20 18:28:08.771333: I tensorflow/compiler/xla/service/service.cc:176] StreamExecutor device (0): NVIDIA L40, Compute Capability 8.9\n",
|
||||
"2024-11-20 18:28:08.779091: I tensorflow/compiler/mlir/tensorflow/utils/dump_mlir_util.cc:255] disabling MLIR crash reproducer, set env var `MLIR_CRASH_REPRODUCER_DIRECTORY` to enable.\n",
|
||||
"2024-11-20 18:28:08.849938: I tensorflow/tsl/platform/default/subprocess.cc:304] Start cannot spawn child process: No such file or directory\n",
|
||||
"2024-11-20 18:28:08.914097: I ./tensorflow/compiler/jit/device_compiler.h:186] Compiled cluster using XLA! This line is logged at most once for the lifetime of the process.\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 72528.1172 - mse: 106644.4453 - mae: 187.8485 - rmse: 303.3813 - custom_mape: 54.8740"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"/usr/local/lib/python3.11/dist-packages/keras/src/engine/training.py:3000: UserWarning: You are saving your model as an HDF5 file via `model.save()`. This file format is considered legacy. We recommend using instead the native Keras format, e.g. `model.save('my_model.keras')`.\n",
|
||||
" saving_api.save_model(\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"\n",
|
||||
"Epoch 1 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 59s 47ms/step - loss: 72456.4219 - mse: 106540.3906 - mae: 187.7001 - rmse: 303.1588 - custom_mape: 54.8602 - val_loss: 65954.8828 - val_mse: 98078.7031 - val_mae: 177.0511 - val_rmse: 289.9380 - val_custom_mape: 52.7771 - lr: 2.5941e-05\n",
|
||||
"Epoch 2/100\n",
|
||||
"811/811 [==============================] - 35s 43ms/step - loss: 69535.9297 - mse: 104347.7812 - mae: 185.7435 - rmse: 299.4631 - custom_mape: 53.3868 - val_loss: 63015.7383 - val_mse: 95844.1562 - val_mae: 175.0045 - val_rmse: 286.3577 - val_custom_mape: 52.6138 - lr: 2.1071e-04\n",
|
||||
"Epoch 3/100\n",
|
||||
"811/811 [==============================] - 34s 42ms/step - loss: 65040.6328 - mse: 100867.1875 - mae: 182.4250 - rmse: 293.5602 - custom_mape: 52.5410 - val_loss: 56593.6914 - val_mse: 90806.5000 - val_mae: 170.5536 - val_rmse: 278.2007 - val_custom_mape: 51.3653 - lr: 5.0264e-05\n",
|
||||
"Epoch 4/100\n",
|
||||
"811/811 [==============================] - 35s 43ms/step - loss: 63179.4570 - mse: 99390.6328 - mae: 181.0240 - rmse: 291.0518 - custom_mape: 52.2108 - val_loss: 54896.5859 - val_mse: 89427.9453 - val_mae: 169.4865 - val_rmse: 276.2857 - val_custom_mape: 51.1932 - lr: 2.4079e-04\n",
|
||||
"Epoch 5/100\n",
|
||||
"811/811 [==============================] - 36s 44ms/step - loss: 58537.2383 - mse: 95561.4453 - mae: 177.0757 - rmse: 284.3125 - custom_mape: 51.0609 - val_loss: 48058.6758 - val_mse: 83616.4297 - val_mae: 162.7125 - val_rmse: 266.4749 - val_custom_mape: 48.8749 - lr: 2.0369e-04\n",
|
||||
"Epoch 6/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 52993.6406 - mse: 90827.1172 - mae: 172.1619 - rmse: 275.9435 - custom_mape: 49.6688\n",
|
||||
"Epoch 6 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 35s 43ms/step - loss: 52937.2539 - mse: 90734.0391 - mae: 172.0164 - rmse: 275.7198 - custom_mape: 49.6529 - val_loss: 44455.3203 - val_mse: 80384.6250 - val_mae: 160.1475 - val_rmse: 260.5288 - val_custom_mape: 48.5323 - lr: 1.3436e-04\n",
|
||||
"Epoch 7/100\n",
|
||||
"811/811 [==============================] - 34s 42ms/step - loss: 49213.3164 - mse: 87367.3594 - mae: 168.3520 - rmse: 269.5628 - custom_mape: 48.4534 - val_loss: 40941.0117 - val_mse: 77138.5859 - val_mae: 156.7561 - val_rmse: 255.2473 - val_custom_mape: 47.8560 - lr: 5.9983e-05\n",
|
||||
"Epoch 8/100\n",
|
||||
"811/811 [==============================] - 33s 41ms/step - loss: 47519.0391 - mse: 85789.4453 - mae: 166.6271 - rmse: 266.6346 - custom_mape: 48.0879 - val_loss: 41349.0312 - val_mse: 77484.2734 - val_mae: 156.9061 - val_rmse: 255.2714 - val_custom_mape: 47.6252 - lr: 9.7321e-06\n",
|
||||
"Epoch 9/100\n",
|
||||
"811/811 [==============================] - 34s 42ms/step - loss: 46780.1719 - mse: 85090.1484 - mae: 165.8883 - rmse: 265.3610 - custom_mape: 47.9995 - val_loss: 40748.4062 - val_mse: 76847.7734 - val_mae: 156.1971 - val_rmse: 253.6026 - val_custom_mape: 48.0470 - lr: 2.1795e-04\n",
|
||||
"Epoch 10/100\n",
|
||||
"811/811 [==============================] - 34s 42ms/step - loss: 42443.9609 - mse: 80814.5703 - mae: 160.8849 - rmse: 257.1220 - custom_mape: 46.6063 - val_loss: 35794.1914 - val_mse: 71881.1797 - val_mae: 149.8344 - val_rmse: 244.4584 - val_custom_mape: 45.0777 - lr: 2.0849e-04\n",
|
||||
"Epoch 11/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 37364.0820 - mse: 75557.8281 - mae: 154.7132 - rmse: 246.8283 - custom_mape: 45.6366\n",
|
||||
"Epoch 11 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 35s 43ms/step - loss: 37322.7383 - mse: 75477.1875 - mae: 154.5700 - rmse: 246.6078 - custom_mape: 45.6219 - val_loss: 29906.3047 - val_mse: 65430.3633 - val_mae: 141.8013 - val_rmse: 231.2519 - val_custom_mape: 42.4489 - lr: 1.8906e-04\n",
|
||||
"Epoch 12/100\n",
|
||||
"811/811 [==============================] - 35s 43ms/step - loss: 32976.7734 - mse: 70634.2344 - mae: 148.5551 - rmse: 236.7462 - custom_mape: 44.1733 - val_loss: 29356.2773 - val_mse: 64463.9414 - val_mae: 141.1121 - val_rmse: 229.5340 - val_custom_mape: 42.9936 - lr: 1.6162e-04\n",
|
||||
"Epoch 13/100\n",
|
||||
"811/811 [==============================] - 37s 46ms/step - loss: 29592.6035 - mse: 66591.3828 - mae: 143.4485 - rmse: 228.2309 - custom_mape: 43.5998 - val_loss: 22979.4648 - val_mse: 56865.0938 - val_mae: 131.7958 - val_rmse: 214.5151 - val_custom_mape: 39.4901 - lr: 1.2891e-04\n",
|
||||
"Epoch 14/100\n",
|
||||
"811/811 [==============================] - 34s 42ms/step - loss: 26951.7656 - mse: 63337.9648 - mae: 139.0988 - rmse: 221.0572 - custom_mape: 41.7504 - val_loss: 25277.5273 - val_mse: 59844.8008 - val_mae: 134.7617 - val_rmse: 219.8931 - val_custom_mape: 40.0160 - lr: 9.4242e-05\n",
|
||||
"Epoch 15/100\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 25191.9902 - mse: 61055.3008 - mae: 135.9996 - rmse: 215.9450 - custom_mape: 40.7117 - val_loss: 20492.2637 - val_mse: 53286.4492 - val_mae: 126.0936 - val_rmse: 205.3292 - val_custom_mape: 37.5140 - lr: 6.1091e-05\n",
|
||||
"Epoch 16/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 24165.8750 - mse: 59707.5938 - mae: 134.1485 - rmse: 212.9445 - custom_mape: 40.2365\n",
|
||||
"Epoch 16 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 24138.5391 - mse: 59641.1523 - mae: 134.0126 - rmse: 212.7257 - custom_mape: 40.2135 - val_loss: 18706.9590 - val_mse: 51048.4062 - val_mae: 124.1925 - val_rmse: 201.2298 - val_custom_mape: 37.6503 - lr: 3.2793e-05\n",
|
||||
"Epoch 17/100\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 23539.9023 - mse: 58823.9805 - mae: 132.9010 - rmse: 210.9564 - custom_mape: 40.2574 - val_loss: 18301.4316 - val_mse: 49967.2422 - val_mae: 121.6120 - val_rmse: 197.4946 - val_custom_mape: 36.3558 - lr: 1.2196e-05\n",
|
||||
"Epoch 18/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 23317.7012 - mse: 58529.7852 - mae: 132.4304 - rmse: 210.2198 - custom_mape: 39.6456 - val_loss: 18765.3145 - val_mse: 50811.3203 - val_mae: 123.1689 - val_rmse: 199.7548 - val_custom_mape: 37.1078 - lr: 1.3695e-06\n",
|
||||
"Epoch 19/100\n",
|
||||
"811/811 [==============================] - 30s 37ms/step - loss: 22958.7871 - mse: 58021.4062 - mae: 131.7025 - rmse: 209.0721 - custom_mape: 39.5251 - val_loss: 22003.3301 - val_mse: 53933.9766 - val_mae: 125.5596 - val_rmse: 204.8436 - val_custom_mape: 36.6993 - lr: 1.9652e-04\n",
|
||||
"Epoch 20/100\n",
|
||||
"811/811 [==============================] - 31s 39ms/step - loss: 20586.0566 - mse: 54516.5820 - mae: 126.9349 - rmse: 201.2817 - custom_mape: 40.1354 - val_loss: 19601.9219 - val_mse: 51482.2773 - val_mae: 123.8536 - val_rmse: 202.0632 - val_custom_mape: 37.4784 - lr: 1.9403e-04\n",
|
||||
"Epoch 21/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 18059.2461 - mse: 50707.9844 - mae: 121.4836 - rmse: 192.6480 - custom_mape: 37.9434\n",
|
||||
"Epoch 21 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 30s 37ms/step - loss: 18040.1738 - mse: 50651.9258 - mae: 121.3665 - rmse: 192.4565 - custom_mape: 37.9314 - val_loss: 27332.0293 - val_mse: 61814.3359 - val_mae: 138.1345 - val_rmse: 223.8045 - val_custom_mape: 41.7334 - lr: 1.8912e-04\n",
|
||||
"Epoch 22/100\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 15813.7461 - mse: 47093.9961 - mae: 116.1009 - rmse: 183.7298 - custom_mape: 36.6234 - val_loss: 15547.1533 - val_mse: 25035.1250 - val_mae: 83.4982 - val_rmse: 138.2488 - val_custom_mape: 26.6810 - lr: 1.8191e-04\n",
|
||||
"Epoch 23/100\n",
|
||||
"811/811 [==============================] - 30s 37ms/step - loss: 14064.2656 - mse: 44066.1055 - mae: 111.5707 - rmse: 176.2691 - custom_mape: 35.6786 - val_loss: 15586.9551 - val_mse: 33592.5234 - val_mae: 96.0797 - val_rmse: 154.1422 - val_custom_mape: 30.0333 - lr: 1.7260e-04\n",
|
||||
"Epoch 24/100\n",
|
||||
"811/811 [==============================] - 30s 37ms/step - loss: 13045.5820 - mse: 41777.5039 - mae: 108.8138 - rmse: 172.3399 - custom_mape: 35.9103 - val_loss: 21892.5098 - val_mse: 38512.5820 - val_mae: 102.0757 - val_rmse: 169.1723 - val_custom_mape: 30.7781 - lr: 1.6140e-04\n",
|
||||
"Epoch 25/100\n",
|
||||
"811/811 [==============================] - 30s 38ms/step - loss: 11775.0107 - mse: 39650.0430 - mae: 105.5830 - rmse: 166.6329 - custom_mape: 34.5414 - val_loss: 15617.9189 - val_mse: 24887.7910 - val_mae: 81.2674 - val_rmse: 134.0242 - val_custom_mape: 27.7191 - lr: 1.4861e-04\n",
|
||||
"Epoch 26/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 10885.3691 - mse: 37987.7930 - mae: 103.5588 - rmse: 163.0795 - custom_mape: 34.6734\n",
|
||||
"Epoch 26 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 32s 40ms/step - loss: 10874.6182 - mse: 37946.5391 - mae: 103.4657 - rmse: 162.9293 - custom_mape: 34.6890 - val_loss: 11223.3662 - val_mse: 30266.1914 - val_mae: 92.8420 - val_rmse: 151.5255 - val_custom_mape: 29.9186 - lr: 1.3456e-04\n",
|
||||
"Epoch 27/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 10069.0938 - mse: 36349.3711 - mae: 100.6019 - rmse: 158.6973 - custom_mape: 33.1503 - val_loss: 12460.3320 - val_mse: 29399.4160 - val_mae: 91.2526 - val_rmse: 146.5061 - val_custom_mape: 29.6366 - lr: 1.1958e-04\n",
|
||||
"Epoch 28/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 9476.7852 - mse: 35165.4648 - mae: 99.0255 - rmse: 156.0713 - custom_mape: 32.9813 - val_loss: 13038.0391 - val_mse: 25782.1328 - val_mae: 83.4327 - val_rmse: 134.0097 - val_custom_mape: 27.6063 - lr: 1.0408e-04\n",
|
||||
"Epoch 29/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 9004.3877 - mse: 34155.9062 - mae: 97.4144 - rmse: 153.6510 - custom_mape: 32.3526 - val_loss: 14318.9199 - val_mse: 27135.3652 - val_mae: 85.2753 - val_rmse: 138.5686 - val_custom_mape: 27.5048 - lr: 8.8425e-05\n",
|
||||
"Epoch 30/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 8699.8916 - mse: 33452.5859 - mae: 96.3121 - rmse: 152.1849 - custom_mape: 31.9938 - val_loss: 14860.2725 - val_mse: 26410.0449 - val_mae: 84.2833 - val_rmse: 135.7974 - val_custom_mape: 27.4504 - lr: 7.3026e-05\n",
|
||||
"Epoch 31/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 8397.3701 - mse: 32822.3984 - mae: 95.5427 - rmse: 150.7910 - custom_mape: 32.0949\n",
|
||||
"Epoch 31 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 8389.3984 - mse: 32788.4531 - mae: 95.4662 - rmse: 150.6722 - custom_mape: 32.1090 - val_loss: 10881.0303 - val_mse: 21581.2246 - val_mae: 76.6546 - val_rmse: 122.9109 - val_custom_mape: 26.1594 - lr: 5.8271e-05\n",
|
||||
"Epoch 32/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 8211.7285 - mse: 32299.0742 - mae: 94.7628 - rmse: 149.5487 - custom_mape: 31.8022 - val_loss: 10990.5146 - val_mse: 22554.5059 - val_mae: 78.0447 - val_rmse: 125.7095 - val_custom_mape: 26.2527 - lr: 4.4531e-05\n",
|
||||
"Epoch 33/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 8059.6475 - mse: 31937.1406 - mae: 94.2104 - rmse: 148.7915 - custom_mape: 31.6591 - val_loss: 11965.4951 - val_mse: 19633.5859 - val_mae: 71.8940 - val_rmse: 115.6991 - val_custom_mape: 25.1729 - lr: 3.2155e-05\n",
|
||||
"Epoch 34/100\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 7951.0010 - mse: 31709.4746 - mae: 93.8289 - rmse: 148.3072 - custom_mape: 31.4630 - val_loss: 9540.8096 - val_mse: 22911.6699 - val_mae: 78.2621 - val_rmse: 125.1414 - val_custom_mape: 26.4563 - lr: 2.1455e-05\n",
|
||||
"Epoch 35/100\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 7870.2021 - mse: 31553.3457 - mae: 93.6221 - rmse: 147.9300 - custom_mape: 31.4443 - val_loss: 9422.6035 - val_mse: 21434.2637 - val_mae: 75.5224 - val_rmse: 120.7919 - val_custom_mape: 25.9513 - lr: 1.2703e-05\n",
|
||||
"Epoch 36/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 7791.0630 - mse: 31464.9941 - mae: 93.5448 - rmse: 147.9198 - custom_mape: 31.4216\n",
|
||||
"Epoch 36 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 7783.9956 - mse: 31433.4629 - mae: 93.4737 - rmse: 147.8126 - custom_mape: 31.4435 - val_loss: 9728.4277 - val_mse: 23398.5430 - val_mae: 78.7421 - val_rmse: 126.2052 - val_custom_mape: 26.5261 - lr: 6.1193e-06\n",
|
||||
"Epoch 37/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 7782.7549 - mse: 31406.9688 - mae: 93.3864 - rmse: 147.6053 - custom_mape: 31.3862 - val_loss: 9560.6436 - val_mse: 23029.3730 - val_mae: 78.1451 - val_rmse: 125.1727 - val_custom_mape: 26.4319 - lr: 1.8714e-06\n",
|
||||
"Epoch 38/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 7777.0708 - mse: 31382.8203 - mae: 93.4302 - rmse: 147.6423 - custom_mape: 31.4434 - val_loss: 9647.4736 - val_mse: 23123.4121 - val_mae: 78.2223 - val_rmse: 125.4518 - val_custom_mape: 26.4217 - lr: 6.6522e-08\n",
|
||||
"Epoch 39/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 7725.5112 - mse: 31040.5840 - mae: 93.0916 - rmse: 147.1082 - custom_mape: 31.8782 - val_loss: 9582.8750 - val_mse: 20723.7246 - val_mae: 74.9037 - val_rmse: 119.4773 - val_custom_mape: 26.3673 - lr: 1.7698e-04\n",
|
||||
"Epoch 40/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 7263.8110 - mse: 30007.5918 - mae: 91.4642 - rmse: 144.8820 - custom_mape: 31.5126\n",
|
||||
"Epoch 40: ReduceLROnPlateau reducing learning rate to 3.52531613316387e-05.\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 7262.0361 - mse: 29977.5000 - mae: 91.3955 - rmse: 144.7766 - custom_mape: 31.5394 - val_loss: 14648.0088 - val_mse: 20503.3223 - val_mae: 72.9793 - val_rmse: 118.3558 - val_custom_mape: 25.1001 - lr: 1.7627e-04\n",
|
||||
"Epoch 41/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 6973.3042 - mse: 28997.6914 - mae: 89.9694 - rmse: 142.9392 - custom_mape: 30.8228\n",
|
||||
"Epoch 41 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 6969.2603 - mse: 28970.1289 - mae: 89.9065 - rmse: 142.8480 - custom_mape: 30.8349 - val_loss: 11942.8125 - val_mse: 15700.4219 - val_mae: 64.9745 - val_rmse: 107.5340 - val_custom_mape: 24.5915 - lr: 1.7500e-04\n",
|
||||
"Epoch 42/100\n",
|
||||
"811/811 [==============================] - 31s 39ms/step - loss: 6722.7314 - mse: 28121.0098 - mae: 88.7315 - rmse: 141.0947 - custom_mape: 30.9093 - val_loss: 18087.9434 - val_mse: 23490.2754 - val_mae: 77.7477 - val_rmse: 127.0767 - val_custom_mape: 26.3092 - lr: 1.7318e-04\n",
|
||||
"Epoch 43/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 6352.7544 - mse: 27314.2441 - mae: 87.3129 - rmse: 139.6047 - custom_mape: 30.1676 - val_loss: 12681.6553 - val_mse: 17494.8359 - val_mae: 67.6718 - val_rmse: 111.1969 - val_custom_mape: 24.9519 - lr: 1.7083e-04\n",
|
||||
"Epoch 44/100\n",
|
||||
"811/811 [==============================] - 30s 37ms/step - loss: 6174.1055 - mse: 26661.8184 - mae: 86.5631 - rmse: 138.3531 - custom_mape: 30.2715 - val_loss: 9485.2715 - val_mse: 17080.8105 - val_mae: 68.2397 - val_rmse: 109.1803 - val_custom_mape: 24.5443 - lr: 1.6795e-04\n",
|
||||
"Epoch 45/100\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 5928.2930 - mse: 25945.6465 - mae: 85.3553 - rmse: 136.5068 - custom_mape: 30.0199 - val_loss: 10805.3350 - val_mse: 12679.4893 - val_mae: 59.6128 - val_rmse: 95.3850 - val_custom_mape: 23.4863 - lr: 1.6457e-04\n",
|
||||
"Epoch 46/100\n",
|
||||
"810/811 [============================>.] - ETA: 0s - loss: 5771.2266 - mse: 25396.0840 - mae: 84.5208 - rmse: 135.4825 - custom_mape: 29.6018\n",
|
||||
"Epoch 46 Detailed Metrics:\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 5771.6826 - mse: 25375.7852 - mae: 84.4771 - rmse: 135.4225 - custom_mape: 29.6105 - val_loss: 16886.9219 - val_mse: 15556.0742 - val_mae: 64.1053 - val_rmse: 103.2760 - val_custom_mape: 23.5403 - lr: 1.6071e-04\n",
|
||||
"Epoch 47/100\n",
|
||||
"811/811 [==============================] - ETA: 0s - loss: 5708.6367 - mse: 24972.6895 - mae: 83.7521 - rmse: 134.5005 - custom_mape: 29.4252\n",
|
||||
"Epoch 47: ReduceLROnPlateau reducing learning rate to 3.127976669929922e-05.\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 5708.6367 - mse: 24972.6895 - mae: 83.7521 - rmse: 134.5005 - custom_mape: 29.4252 - val_loss: 19152.4121 - val_mse: 20032.2090 - val_mae: 72.7711 - val_rmse: 117.7244 - val_custom_mape: 24.8048 - lr: 1.5640e-04\n",
|
||||
"Epoch 48/100\n",
|
||||
"811/811 [==============================] - 31s 39ms/step - loss: 5571.7061 - mse: 24644.9062 - mae: 83.0004 - rmse: 133.9219 - custom_mape: 29.2346 - val_loss: 17331.9844 - val_mse: 16389.8301 - val_mae: 66.4118 - val_rmse: 105.8761 - val_custom_mape: 23.9444 - lr: 1.5165e-04\n",
|
||||
"Epoch 49/100\n",
|
||||
"811/811 [==============================] - 32s 39ms/step - loss: 5616.5620 - mse: 24360.8047 - mae: 82.9673 - rmse: 133.5276 - custom_mape: 29.4230 - val_loss: 35736.7578 - val_mse: 19179.0918 - val_mae: 70.1682 - val_rmse: 114.7201 - val_custom_mape: 25.1097 - lr: 1.4651e-04\n",
|
||||
"Epoch 50/100\n",
|
||||
"811/811 [==============================] - ETA: 0s - loss: 5390.3022 - mse: 24032.5449 - mae: 82.3451 - rmse: 132.8925 - custom_mape: 29.1358Restoring model weights from the end of the best epoch: 35.\n",
|
||||
"811/811 [==============================] - 31s 38ms/step - loss: 5390.3022 - mse: 24032.5449 - mae: 82.3451 - rmse: 132.8925 - custom_mape: 29.1358 - val_loss: 13423.8428 - val_mse: 18049.5527 - val_mae: 67.9114 - val_rmse: 110.8442 - val_custom_mape: 23.8173 - lr: 1.4100e-04\n",
|
||||
"Epoch 50: early stopping\n",
|
||||
"\n",
|
||||
"Training completed successfully!\n",
|
||||
"\n",
|
||||
"Final Model Performance:\n",
|
||||
"Out of range predictions: 0 (0.00%)\n",
|
||||
"MAPE: 25.97%\n",
|
||||
"Predictions within ±10%: 50.91%\n",
|
||||
"MAE: 75.52\n",
|
||||
"RMSE: 146.40\n",
|
||||
"\n",
|
||||
"Training history plot saved as: 2024-11-20_18-26_training_history.png\n",
|
||||
"Training history data saved as: 2024-11-20_18-26_training_history.csv\n",
|
||||
"Final statistics saved as: 2024-11-20_18-26_training_stats.json\n",
|
||||
"\n",
|
||||
"Final Training Statistics:\n",
|
||||
"Final Loss (train/val): 5390.3022/13423.8428\n",
|
||||
"Final MAE (train/val): 82.3451/67.9114\n",
|
||||
"Best validation loss: 9422.6035\n",
|
||||
"Best validation MAE: 59.6128\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 1200x400 with 2 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"id": "8f346ed2fea89ac5"
|
||||
},
|
||||
{
|
||||
"metadata": {},
|
||||
"cell_type": "code",
|
||||
"outputs": [],
|
||||
"execution_count": null,
|
||||
"source": [
|
||||
"# Model creation\n",
|
||||
"print(\"\\n2. Creating model...\")\n",
|
||||
@@ -1699,59 +1147,14 @@
|
||||
" batch_size=192,\n",
|
||||
" folder_name=folder_name\n",
|
||||
")"
|
||||
]
|
||||
],
|
||||
"id": "38a2ad01e7fd683c"
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 7,
|
||||
"id": "ad6226ea-ab01-47aa-9571-52ea9e654c01",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"\n",
|
||||
"5. Generating predictions...\n",
|
||||
"811/811 [==============================] - 5s 6ms/step\n",
|
||||
"\n",
|
||||
"6. Evaluating model...\n",
|
||||
"\n",
|
||||
"Solar Radiation Prediction Metrics:\n",
|
||||
"\n",
|
||||
"Absolute Metrics:\n",
|
||||
"MAE: 175.39 W/m²\n",
|
||||
"RMSE: 313.03 W/m²\n",
|
||||
"R² Score: -0.413\n",
|
||||
"MAPE: 9983339.55%\n",
|
||||
"\n",
|
||||
"Percentage Accuracy:\n",
|
||||
"Within ±5%: 46.6%\n",
|
||||
"Within ±10%: 46.6%\n",
|
||||
"Within ±20%: 46.6%\n",
|
||||
"\n",
|
||||
"Level Accuracy:\n",
|
||||
"Level Accuracy: 68.7%\n",
|
||||
"\n",
|
||||
"Confusion Matrix for Radiation Levels:\n",
|
||||
" Very Low Low Moderate High Very High Extreme\n",
|
||||
"Very Low 0 0 0 0 0 10\n",
|
||||
"Low 0 0 0 0 0 1827\n",
|
||||
"Moderate 0 0 0 0 0 2861\n",
|
||||
"High 0 0 0 0 0 2296\n",
|
||||
"Very High 0 0 0 0 0 1131\n",
|
||||
"Extreme 0 0 0 0 0 17808\n",
|
||||
"\n",
|
||||
"Plot saved as: 2024-11-20_18-26_radiation_analysis.png\n",
|
||||
"\n",
|
||||
"Error Statistics:\n",
|
||||
"Mean error: -175.370\n",
|
||||
"Error standard deviation: 259.295\n",
|
||||
"Median error: -12.000\n",
|
||||
"95th percentile absolute error: 773.000\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"cell_type": "code",
|
||||
"outputs": [],
|
||||
"execution_count": null,
|
||||
"source": [
|
||||
"print(\"\\n5. Generating predictions...\")\n",
|
||||
"predictions = model.predict(X_test_seq)\n",
|
||||
@@ -1782,30 +1185,14 @@
|
||||
" 'out_of_range_predictions': int(np.sum((predictions < 0) | (predictions > 11)))\n",
|
||||
" }\n",
|
||||
"}"
|
||||
]
|
||||
],
|
||||
"id": "d9d0c8e71043aa2e"
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 9,
|
||||
"id": "2c42461d-b189-4dc0-81da-4eb4879b9135",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"\n",
|
||||
"7. Predicting missing data...\n",
|
||||
"7122/7122 [==============================] - 42s 6ms/step\n",
|
||||
"\n",
|
||||
"8. Integrating predictions into original dataset...\n",
|
||||
"Added 227879 predictions to dataset\n",
|
||||
"Rows with solar radiation after integration: 357615\n",
|
||||
"\n",
|
||||
"Training completed successfully!\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"cell_type": "code",
|
||||
"outputs": [],
|
||||
"execution_count": null,
|
||||
"source": [
|
||||
"print(\"\\n7. Predicting missing data...\")\n",
|
||||
"to_predict_predictions = model.predict(X_to_predict_seq)\n",
|
||||
@@ -1824,53 +1211,15 @@
|
||||
" 'max_predicted_solarradiation': float(to_predict_predictions.max()),\n",
|
||||
"}\n",
|
||||
"\n",
|
||||
"print(\"\\nTraining completed successfully!\")\n",
|
||||
"\n",
|
||||
"tf.keras.backend.clear_session()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 10,
|
||||
"id": "08fd4208-0afb-4bf1-bdef-b10b4065fe55",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"\n",
|
||||
"Plot saved as: 2024-11-20_18-26_error_analysis.png\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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XQvj4bmy7927pwkTJqhGjRpyd3eXi4uL6tevr127dj32cV25ckV2dnZ6++23E207deqUTCaTFixYIOnR49Djevi1UcKUbb/88ou6d++uAgUKqF69eub2n332mWrUqCFnZ2cVLFhQXbt21cWLFxP1u2TJEpUqVUrOzs565pln9N133yVqk9zYd/LkSXXu3FlFihSRs7OzypUrp3Hjxpnre/311yVJ/v7+5t/f+fPnM6XGpCS8Xkk44/xBhw4d0qlTp8xtvvzyS7Vq1Uo+Pj5ydHRUqVKl9M477yg2NjbFfaR2bE9w8uRJdezYUQULFpSTk5Nq1qypTZs2WbTJ6L8dAMgOUnqPldKYFhMTo3feecfcvkSJEnrzzTd19+5di/5LlCih559/Xl999ZVq1qwpZ2dnffTRR5Kk0NBQ1atXTx4eHsqfP7/KlSunN998M8V6K1eurMaNGydaHxcXp2LFipk/6JakVatWqUaNGnJ1dZWbm5uqVKlizgoe5cKFC/ruu+/UtWtXde3a1XwiQlI+++wzPfPMM8qXL58KFCigBg0aaPv27ebjP378uL799lvzmJvweii5ecQT3h8+ODandTxMSrt27eTi4pLkOHz16lXt2LFDHTt2lKOjo7777jt16tRJTzzxhBwdHeXr66vhw4fr33//TXEfKb0/T+p986VLl9SvXz95eXnJ0dFRlSpV0tKlSxPdd/78+apUqZL5sa5Zs2aSx4GcjzPRkeOdPXtWklSoUCHzupiYGAUGBqpevXqaOXOm+etAAwcO1PLly9W3b18NGTJE586d04IFC3TkyBHt2bPH/NXjCRMmaMqUKWrZsqVatmypw4cPq3nz5rp3794j6wkNDdXzzz+vokWLaujQofL29taJEye0efNmDR06VAMHDtTly5cVGhqq//73v4/s7/jx46pfv77c3Nw0evRo2dvb66OPPlKjRo307bffJpo/9rXXXlOBAgU0ceJEnT9/XnPmzNHgwYO1evXqVD2eERERidbZ2dkl+mr1O++8IwcHB40aNUp37941nxGQ1GNvGIZeeOEF7dq1S0FBQapWrZq++uorvf7667p06ZI++OADi7537typL774QoMHD1bhwoXTfBESW1tbdevWTePHj9f333+f7KfWkyZN0tSpU/XSSy/pmWeeUVRUlA4ePKjDhw+rWbNmqfqdLVu2THfu3NGAAQPk6OioggULKi4uLsm2sbGxatGihZ599llNnz5dISEhmjhxomJiYjR58uTHOsbs/vcEAI8SHBys9u3by8HBQd26ddOiRYt04MABcyguSTdv3lT9+vV14sQJ9evXT0899ZT++usvbdq0SX/88YcqVKigyZMna8KECRowYIDq168vSapTp85j1RIVFaWPP/5Y3bp1U//+/fXPP//ok08+UWBgoPbv3/9Y08R4eXmpYcOG+uKLLxKdWb969WrZ2tqqU6dOkh49Dj2upF4bSVKnTp1UpkwZvffee+YPbt99912NHz9enTt31ksvvaRr165p/vz5atCggY4cOWIe/z/55BMNHDhQderU0bBhw/Tbb7/phRdeUMGCBeXr65tiPT/99JPq168ve3t7DRgwQCVKlNDZs2f1v//9T++++67at2+vX3/9VZ9//rk++OAD8zfiihQpkmU1+vv7q06dOvriiy/0wQcfyNbW1rwt4Y1w9+7dJcUHCfnz59eIESOUP39+7dy5UxMmTFBUVJRmzJjxqF9Pqhw/flx169ZVsWLFNGbMGLm4uOiLL75Q27ZttW7dOrVr105Sxv/tAEBWiIyM1F9//WWxzmQyJRq3knqPlSCpMe2ll17SihUr1LFjR40cOVL79u3T1KlTdeLECW3YsMGi71OnTqlbt24aOHCg+vfvr3Llyun48eN6/vnn9eSTT2ry5MlydHTUmTNntGfPnhSPp0uXLpo0aZLCw8Pl7e1tXv/999/r8uXL5jOrQ0ND1a1bNzVt2tT8TekTJ05oz549Gjp06CMft88//1wuLi56/vnn5ezsrFKlSik4ODjR6523335bkyZNUp06dTR58mQ5ODho37592rlzp5o3b645c+botddeU/78+c0faHt5eT1y/w/LyPHQxcVFbdq00dq1axUREWHxu169erViY2PNH2avWbNGt2/f1iuvvKJChQpp//79mj9/vv744w+tWbPmsY8jKVeuXNGzzz5rPsmvSJEi2rZtm4KCghQVFaVhw4ZJkv7zn/9oyJAh6tixo4YOHao7d+7op59+0r59+8yvG5CLGEAOsWzZMkOS8fXXXxvXrl0zLl68aKxatcooVKiQ4ezsbPzxxx+GYRhG7969DUnGmDFjLO7/3XffGZKM4OBgi/UhISEW669evWo4ODgYrVq1MuLi4szt3nzzTUOS0bt3b/O6Xbt2GZKMXbt2GYZhGDExMYa/v7/h5+dnXL9+3WI/D/Y1aNAgI7n/fpKMiRMnmm+3bdvWcHBwMM6ePWted/nyZcPV1dVo0KBBoscnICDAYl/Dhw83bG1tjRs3biS5vwQTJ040JCW5lCtXLtExlyxZ0rh9+7ZFH8k99hs3bjQkGVOLine truncated
|
||||
"text/plain": [
|
||||
"<Figure size 1500x500 with 3 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"\n",
|
||||
"Error Statistics:\n",
|
||||
"MAE: 175.3912\n",
|
||||
"MSE: 97988.2659\n",
|
||||
"RMSE: 313.0308\n",
|
||||
"Mean error: -175.3699\n",
|
||||
"Error std: 259.2946\n",
|
||||
"Predictions within ±0.5: 46.6%\n",
|
||||
"Predictions within ±1.0: 47.0%\n",
|
||||
"Predictions within ±1.5: 47.0%\n",
|
||||
"Predictions within ±2.0: 47.2%\n"
|
||||
]
|
||||
}
|
||||
"print(\"\\nTraining completed successfully!\")"
|
||||
],
|
||||
"id": "de61df609e8053a2"
|
||||
},
|
||||
{
|
||||
"metadata": {},
|
||||
"cell_type": "code",
|
||||
"outputs": [],
|
||||
"execution_count": null,
|
||||
"source": [
|
||||
"def plot_error_analysis(y_true, y_pred, folder_name=None):\n",
|
||||
" \"\"\"\n",
|
||||
@@ -1964,15 +1313,8 @@
|
||||
"\n",
|
||||
"# Example usage\n",
|
||||
"plot_error_analysis(y_test, predictions, folder_name=folder_name)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "f982c92c-ba99-4df6-b3c8-df92426679db",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
],
|
||||
"id": "8a924adc70eb2f30"
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
Reference in new issue
Block a user