diff --git a/notebooks/deepmc/mc_forecast.ipynb b/notebooks/deepmc/mc_forecast.ipynb index d41b43b7..7fbfa798 100755 --- a/notebooks/deepmc/mc_forecast.ipynb +++ b/notebooks/deepmc/mc_forecast.ipynb @@ -15,7 +15,9 @@ "```bash\n", "$ micromamba env create -f ./deepmc_env.yaml\n", "$ micromamba activate deepmc-pytorch\n", - "```\n" + "```\n", + "\n", + "**We currently only support Unix-based systems (Linux and MacOS) for running this notebook.**" ] }, { @@ -55,33 +57,22 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/azureuser/.conda/envs/deepmc-pytorch/lib/python3.8/site-packages/torchvision/io/image.py:11: UserWarning: Failed to load image Python extension: /home/azureuser/.conda/envs/deepmc-pytorch/lib/python3.8/site-packages/torchvision/image.so: undefined symbol: _ZNK3c1010TensorImpl36is_contiguous_nondefault_policy_implENS_12MemoryFormatE\n", - " warn(f\"Failed to load image Python extension: {e}\")\n" - ] - } - ], + "outputs": [], "source": [ - "import pandas as pd\n", - "import numpy as np\n", + "import warnings\n", + "from datetime import datetime\n", "\n", - "from datetime import datetime, timedelta\n", + "import numpy as np\n", + "import pandas as pd\n", "from matplotlib import pyplot as plt\n", - "\n", - "from shapely import geometry\n", - "\n", - "from notebook_lib import utils\n", - "from notebook_lib import prediction\n", "from notebook_lib import train\n", - "from notebook_lib.forecast import Forecast\n", + "from shapely import geometry\n", + "\n", + "from vibe_notebook.deepmc import prediction, utils\n", + "from vibe_notebook.deepmc.forecast import Forecast\n", "\n", - "import warnings\n", "warnings.filterwarnings(\"ignore\")" ] }, @@ -90,7 +81,7 @@ "metadata": {}, "source": [ "### Workflows\n", - "The notebook utilize below workflows available in farmvibes" + "The notebook utilizes the workflow below, which is available in FarmVibes.AI: " ] }, { @@ -107,9 +98,9 @@ "metadata": {}, "source": [ "### Data\n", - "The notebook utilizing two types of datasets\n", + "The notebook utilizes two types of datasets:\n", "\n", - "1. The historical observations recorded by weather stations\n", + "1. The historical observations recorded by weather stations.\n", "2. The forecast observations downloaded using the [herbie package](https://blaylockbk.github.io/Herbie/_build/html/). This package helps to download recent and archived numerical weather prediction (NWP) model output from different cloud archive sources. Its most popular capability is to download HRRR model data.\n" ] }, @@ -118,7 +109,7 @@ "metadata": {}, "source": [ "### AGWeatherNet\n", - "In this notebook, we utilize historical observations downloaded from AGWeatherNet for a station \\\"Palouse\\\". The data used for training range from May 2020 to June 2022. For more information check [AGWeatherNet documentation](http://weather.wsu.edu/?p=92850&desktop)." + "In this notebook, we utilize historical observations downloaded from AGWeatherNet for the station `Palouse`. The data used for training range from May 2020 to June 2022. For more information check [AGWeatherNet documentation](http://weather.wsu.edu/?p=92850&desktop)." ] }, { @@ -146,8 +137,8 @@ "metadata": {}, "outputs": [], "source": [ - "PREDICT=\"%s\"\n", - "RELEVANT=\"%s\"\n", + "PREDICT = \"%s\"\n", + "RELEVANT = \"%s\"\n", "ROOT_PATH = f\"./data/model_{PREDICT}/\"\n", "DATA_EXPORT_PATH = ROOT_PATH + f\"{STATION_NAME}/{RELEVANT}/train_data.pkl\"" ] @@ -166,7 +157,7 @@ "outputs": [], "source": [ "# weather dataset filtered and model training limited to train features.\n", - "HISTORICAL_MODEL_TRAIN_FEATURES = ['humidity', 'wind_speed', 'temperature']\n", + "HISTORICAL_MODEL_TRAIN_FEATURES = [\"humidity\", \"wind_speed\", \"temperature\"]\n", "\n", "# Historical data aligned using INDEX variable\n", "INDEX = \"date\"" @@ -203,7 +194,7 @@ "outputs": [], "source": [ "# Models trained to predict out features\n", - "OUT_FEATURES = ['wind_speed' , 'temperature']" + "OUT_FEATURES = [\"wind_speed\", \"temperature\"]" ] }, { @@ -211,14 +202,16 @@ "metadata": {}, "source": [ "### Relevant vs Not Relevant\n", - "The notebook support performing micro climate predictions with below approaches. \n", + "The scenario is considered relevant when there is a close match between historical data and forecasts, with minimal discrepancies else it's not relevant.\n", + "\n", + "The notebook supports performing micro climate predictions with the following approaches: \n", "\n", "1. Utilizing both Historical & Forecast observations. This approach is suggested to use if both observations are relevant.

\n", "\n", "2. Utilizing only Historical dataset. This approach is suggested to use if both Historical & Forecast observations are not relevant or Forecast dataset doesn't exist.

\n", "\n", "\n", - "In next cells, demonstrated training & prediction process for both relevant and not relevant scenarios. " + "In next cells, we demonstrate the training and prediction processes for both relevant and non-relevant scenarios. " ] }, { @@ -270,7 +263,7 @@ "1. The index variable is converted to datetime\n", "2. The input data is interpolated to fill the missing values using their neighbors\n", "3. The script focuses on training the model with a 60-minute frequency, hence the data is grouped for this frequency.\n", - "4. The data is scaled using the scikit-learn StandardScalar. For more information check [scikit-learn documentaion](https://github.com/scikit-learn/scikit-learn)" + "4. The data is scaled using the scikit-learn StandardScalar. For more information check [scikit-learn documentation](https://github.com/scikit-learn/scikit-learn)" ] }, { @@ -296,7 +289,7 @@ "metadata": {}, "outputs": [], "source": [ - "historical_dataset = utils.get_csv_data(path=file_path)" + "historical_dataset = utils.get_csv_data(path=file_path, interpolate=False, fill_na=False)" ] }, { @@ -319,7 +312,7 @@ "  - humidity - \"RH:2 m\"
\n", "  - wind speed - The forecast observations of wind speed are derived using data downloaded for u & v components. The algebraic expression used to calculate wind speed is
\n", " $$ \n", - " ws = \\sqrt{u^2 + v^2}\n", + " ws(u, v) = \\sqrt{u^2 + v^2}\n", " $$\n", "   i. u component - \"UGRD:10 m\"
\n", "   ii. v component - \"VGRD:10 m\"" @@ -348,24 +341,14 @@ "start_date = datetime(year=2020, month=5, day=31)\n", "end_date = datetime(year=2022, month=8, day=2)\n", "time_range = (start_date, end_date)\n", - "date_column=\"date\"\n", + "date_column = \"date\"\n", "\n", - "parameters = [{\n", - " \"weather_type\": \"temperature\",\n", - " \"search_text\": \"TMP:2 m\"\n", - " },\n", - " {\n", - " \"weather_type\": \"humidity\",\n", - " \"search_text\": \"RH:2 m\"\n", - " },\n", - " {\n", - " \"weather_type\": \"u-component\",\n", - " \"search_text\": \"UGRD:10 m\"\n", - " },\n", - " {\n", - " \"weather_type\": \"v-component\",\n", - " \"search_text\": \"VGRD:10 m\"\n", - " }]" + "parameters = [\n", + " {\"weather_type\": \"temperature\", \"search_text\": \"TMP:2 m\"},\n", + " {\"weather_type\": \"humidity\", \"search_text\": \"RH:2 m\"},\n", + " {\"weather_type\": \"u-component\", \"search_text\": \"UGRD:10 m\"},\n", + " {\"weather_type\": \"v-component\", \"search_text\": \"VGRD:10 m\"},\n", + "]" ] }, { @@ -373,7 +356,7 @@ "metadata": {}, "source": [ "### Submit Request to Worker\n", - "Download forecast observations by submitting request to worker running in background. If more than one worker instance running in background, it process the request in parallel for each parameter. Workflow execution utilize below parameters while processing requests, this can be overwritten using the parameter argument.\n", + "We download forecast observations by submitting a request to the worker running in the background. If more than one worker instance is running in the background, the request is processed in parallel for each parameter. Workflow execution utilizes the parameters below while processing requests, this can be overwritten using the parameter argument.\n", "\n", "- fxx: [1, 25, 1] # start, stop, step\n", "- search_text: \"TMP:2 m\"\n", @@ -388,24 +371,48 @@ "metadata": {}, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "'VibeWorkflowRun'(id='d7c0dc6a-339f-45b9-81d1-2fb93d2938f6', name='forecast_temperature', workflow='data_ingestion/weather/herbie_forecast', status='done')\n", - "'VibeWorkflowRun'(id='61d952d1-b068-4c2c-b522-a680efed450f', name='forecast_humidity', workflow='data_ingestion/weather/herbie_forecast', status='running')\n", - "'VibeWorkflowRun'(id='8c95f7ab-6d6b-40e8-a3bd-c12b854d0a7b', name='forecast_u-component', workflow='data_ingestion/weather/herbie_forecast', status='running')\n", - "'VibeWorkflowRun'(id='7490cd70-9731-4cac-ab36-051d3903776a', name='forecast_v-component', workflow='data_ingestion/weather/herbie_forecast', status='running')\n" - ] + "data": { + "text/html": [ + "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "c00b48cb983f4c2184d411cd346f2bdb",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "Output()"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
     }
    ],
    "source": [
-    "forecast_ = Forecast(\n",
-    "                workflow_name=HERBIE_DOWNLOAD_WORKFLOW,\n",
-    "                geometry=STATION_GEOMETRY,\n",
-    "                time_range=time_range,\n",
-    "                parameters=parameters,\n",
-    "                )\n",
-    "run_list = forecast_.submit_download_request()"
+    "forecast = Forecast(\n",
+    "    workflow_name=HERBIE_DOWNLOAD_WORKFLOW,\n",
+    "    geometry=STATION_GEOMETRY,\n",
+    "    time_range=time_range,\n",
+    "    parameters=parameters,\n",
+    ")\n",
+    "run_list = forecast.submit_download_request()"
    ]
   },
   {
@@ -413,12 +420,14 @@
    "metadata": {},
    "source": [
     "### Monitor download of Forecast observations\n",
-    "Check the download status and fetch the downloaded data from the cluster running in backend. The execution time of download depends on time_range. The downloaded data undergoes below changes.\n",
+    "Check the download status and fetch the downloaded data from FarmVibes.AI. The execution time of the download depends on the time range. \n",
+    "\n",
+    "The downloaded data undergoes the following changes:\n",
     "\n",
-    "1. concatenate the output of all requests submitted.\n",
+    "1. Concatenate the output of all submitted requests.\n",
     "2. Set index on date column.\n",
-    "3. Does interpolate to derive the missing data.\n",
-    "4. The data downloaded follows the utc timezone. It's required to transform the data to the timezone of historical observations. The historical observations used in this notebook follows pst timezone, hence the data offset by -8 hours."
+    "3. Interpolate to derive the missing data.\n",
+    "4. The data downloaded follows the UTC timezone. It's required to transform the data to the timezone of historical observations. The historical observations used in this notebook follows the PST timezone, hence the data is offset by -8 hours."
    ]
   },
   {
@@ -501,14 +510,14 @@
        "2020-05-30 17:00:00             -2.861307              1.178179  "
       ]
      },
-     "execution_count": 15,
+     "execution_count": 16,
      "metadata": {},
      "output_type": "execute_result"
     }
    ],
    "source": [
     "# transform downloaded data from utc to pst timezone\n",
-    "forecast_dataset = forecast_.get_downloaded_data(run_list=run_list, offset_hours=-8)\n",
+    "forecast_dataset = forecast.get_downloaded_data(run_list=run_list, offset_hours=-8)\n",
     "forecast_dataset.to_csv(f\"{STATION_NAME}_forecast.csv\")\n",
     "forecast_dataset.head(2)"
    ]
@@ -517,109 +526,40 @@
    "cell_type": "markdown",
    "metadata": {},
    "source": [
-    "### Preprocess Forecast Observations\n",
-    "Below preprocessing performed on downloaded data before performing model training.\n",
-    "\n",
-    "- Temperature: The downloaded data has units \"kelvin\". It will be converted to Fahrenheit.\n",
-    "- wind_speed: Using the u-component & v-component values downloaded, the wind_speed values derived. The derived values multiplied by 2.23 to convert from m/sec to mph\n",
-    "- drop u-component & v-component"
+    "### Preprocess Forecast Observations"
    ]
   },
   {
-   "cell_type": "code",
-   "execution_count": 16,
+   "cell_type": "markdown",
    "metadata": {},
-   "outputs": [],
    "source": [
-    "# Temperature\n",
-    "# convert kelvin to celsius\n",
-    "forecast_dataset[\"temperature_forecast\"] = forecast_dataset[\"temperature_forecast\"]-273.15\n",
+    "We perform the following preprocessing in the downloaded data before training the model.\n",
     "\n",
-    "# convert celsius to Fahrenheit\n",
-    "forecast_dataset[\"temperature_forecast\"] = forecast_dataset[\"temperature_forecast\"].apply(lambda x: (x * 9/5) + 32)"
+    "- `temperature`: The downloaded data is in Kelvin. It will be converted to Fahrenheit.\n",
+    "- `wind_speed`: Using the u-component & v-component values downloaded, the `wind_speed` values are derived. The derived values are multiplied by 2.23 to convert from m/sec to mph.\n",
+    "- Drop u-component & v-component"
    ]
   },
   {
    "cell_type": "code",
    "execution_count": 17,
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/html": [
-       "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
temperature_forecasthumidity_forecastwind_speed_forecast
date
2020-05-30 16:00:0084.17363349.2999997.025768
2020-05-30 17:00:0082.14973154.5999986.900466
\n", - "
" - ], - "text/plain": [ - " temperature_forecast humidity_forecast \\\n", - "date \n", - "2020-05-30 16:00:00 84.173633 49.299999 \n", - "2020-05-30 17:00:00 82.149731 54.599998 \n", - "\n", - " wind_speed_forecast \n", - "date \n", - "2020-05-30 16:00:00 7.025768 \n", - "2020-05-30 17:00:00 6.900466 " - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ - "# wind_speed\n", - "# multiplying with 2.23 to convert wind speed from m/sec to mph\n", - "forecast_dataset[\"wind_speed_forecast\"] = forecast_dataset.apply(lambda x: np.sqrt(np.square(x[\"u-component_forecast\"]) + \n", - " np.square(x[\"v-component_forecast\"]))*2.23, axis=1)\n", - "\n", - "forecast_dataset.drop(columns=[\"u-component_forecast\", \"v-component_forecast\"], inplace=True)\n", + "forecast_dataset = utils.convert_forecast_data(forecast_dataset)\n", "forecast_dataset.head(2)" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We also clean the input data with the following operations:\n", + "- Exclude input data outside the time_range of interest.\n", + "- Shift forecast data by number of hours\n", + "- Fill missing data with neighboring data points using pandas interpolate techniques." + ] + }, { "cell_type": "code", "execution_count": 18, @@ -698,18 +638,21 @@ "2020-07-06 01:00:00 57.220984 3.85 10.642863 " ] }, - "execution_count": 18, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "input_df = utils.clean_relevant_data(\n", - " actual_df=historical_dataset, \n", - " forecast_df=forecast_dataset, \n", - " out_variables=RELEVANT_FEATURES,\n", - " freq_hours=frequency_hour,\n", - " num_of_indices=number_of_hours)\n", + "input_df = utils.clean_relevant_data_using_hrrr(\n", + " actual_df=historical_dataset,\n", + " forecast_df=forecast_dataset,\n", + " out_variables=RELEVANT_FEATURES,\n", + " freq_hours=frequency_hour,\n", + " num_of_indices=number_of_hours,\n", + " start_date=start_date,\n", + " end_date=end_date,\n", + ")\n", "input_df.head(2)" ] }, @@ -717,12 +660,12 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Verifying the forecast observations are relevant or not relevant" + "### Verifying if the forecast observations are relevant or not relevant" ] }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 20, "metadata": {}, "outputs": [ { @@ -731,7 +674,7 @@ "" ] }, - "execution_count": 19, + "execution_count": 21, "metadata": {}, "output_type": "execute_result" }, @@ -747,7 +690,7 @@ } ], "source": [ - "plot_df = input_df[(input_df.index.month==7) & (input_df.index.year==2020)]\n", + "plot_df = input_df[(input_df.index.month == 7) & (input_df.index.year == 2020)]\n", "\n", "plt.figure(figsize=(20, 4))\n", "plt.plot(plot_df.index.values, plot_df[\"temperature_forecast\"].values, label=\"forecast\")\n", @@ -759,7 +702,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Based on the distribution of observation in above plot, the forecast observations are relevant. In this scenario continue with model training process using relevant dataset." + "Based on the distribution of observation in above plot, the forecast observations are relevant. In this scenario, we will continue with model training using the relevant dataset." ] }, { @@ -768,7 +711,7 @@ "source": [ "### Training\n", "\n", - "The script is configured to train the Micro Climate prediction model for 24 hours and the historical weather station data has points with a 60-minute frequency. Below inputs vary based on number of hours of prediction and frequency of weather station data points.\n", + "The script is configured to train the Micro Climate prediction model for 24 hours and the historical weather station data has points with a 60-minute frequency. Below inputs vary based on the number of hours of prediction and frequency of weather station data points.\n", "\n", "1. `chunk_size` - The value of the chunk size is based on the frequency of the weather station data points. For a frequency of 60 minutes, the minimum required data points are 528. If the data frequency is 15 minutes, the minimum number of data points required is 528*4 = 2112. These are the minimum number of data points need to be provided as input during the inference.\n", "2. `ts_lookahead` - The value used during the data preprocessing. It is the value used to consider weather data points ahead for a given time period while grouping the data.\n", @@ -791,7 +734,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 22, "metadata": { "tags": [] }, @@ -803,7 +746,8 @@ " root_path=ROOT_PATH,\n", " data_export_path=DATA_EXPORT_PATH,\n", " station_name=STATION_NAME,\n", - " relevant=True)\n", + " relevant=True,\n", + ")\n", "\n", "train_weather.train_model(input_df)" ] @@ -820,26 +764,27 @@ "metadata": {}, "source": [ "### Current\n", - "Predict weather for the next 24 hours. To predict weather for next 24 hours it is required to certain hours of historical forecast observations, the default size called chunk size of historical forecast observations is 528. Choosing start time of prediction is important, if historical observations used to train model has the start time of 12:00:00 then the historical observations used for prediction should start at the same time." + "To predict the weather for next 24 hours, we need certain hours of historical forecast observations beforehand. The default size (chunk size) of historical forecast observations is 528. Choosing a start time to predict is important, if historical observations used to train model have a starting time of 12:00:00, then the historical observations used for prediction should start at the same time." ] }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "weather_forecast = prediction.InferenceWeather(\n", - " root_path=ROOT_PATH,\n", - " data_export_path=DATA_EXPORT_PATH,\n", - " station_name=STATION_NAME,\n", - " predicts=OUT_FEATURES,\n", - " relevant=True)" + " root_path=ROOT_PATH,\n", + " data_export_path=DATA_EXPORT_PATH,\n", + " station_name=STATION_NAME,\n", + " predicts=OUT_FEATURES,\n", + " relevant=True,\n", + ")" ] }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 24, "metadata": {}, "outputs": [], "source": [ @@ -848,55 +793,69 @@ "p_end_date = datetime(year=2022, month=6, day=3, hour=0, minute=0, second=0)\n", "\n", "time_range = (p_start_date, p_end_date)\n", - "date_column=\"date\"\n", + "date_column = \"date\"\n", "\n", - "parameters = [{\n", - " \"weather_type\": \"temperature\",\n", - " \"search_text\": \"TMP:2 m\"\n", - " },\n", - " {\n", - " \"weather_type\": \"humidity\",\n", - " \"search_text\": \"RH:2 m\"\n", - " },\n", - " {\n", - " \"weather_type\": \"u-component\",\n", - " \"search_text\": \"UGRD:10 m\"\n", - " },\n", - " {\n", - " \"weather_type\": \"v-component\",\n", - " \"search_text\": \"VGRD:10 m\"\n", - " }]" + "parameters = [\n", + " {\"weather_type\": \"temperature\", \"search_text\": \"TMP:2 m\"},\n", + " {\"weather_type\": \"humidity\", \"search_text\": \"RH:2 m\"},\n", + " {\"weather_type\": \"u-component\", \"search_text\": \"UGRD:10 m\"},\n", + " {\"weather_type\": \"v-component\", \"search_text\": \"VGRD:10 m\"},\n", + "]" ] }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 25, "metadata": {}, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "'VibeWorkflowRun'(id='ea662424-c9c5-4d1f-8d1c-ed907f0176ea', name='forecast_temperature', workflow='data_ingestion/weather/herbie_forecast', status='done')\n", - "'VibeWorkflowRun'(id='e93b52c2-9c20-4bf2-b647-a7dc04ff4947', name='forecast_humidity', workflow='data_ingestion/weather/herbie_forecast', status='done')\n", - "'VibeWorkflowRun'(id='5cbd7199-626c-43dc-aa73-17639c97bc30', name='forecast_u-component', workflow='data_ingestion/weather/herbie_forecast', status='done')\n", - "'VibeWorkflowRun'(id='e9373c58-5730-4b03-aee4-83015ab08848', name='forecast_v-component', workflow='data_ingestion/weather/herbie_forecast', status='done')\n" - ] + "data": { + "text/html": [ + "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "04e890c9992c4710acdbb661b49c1e56",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "Output()"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
     }
    ],
    "source": [
-    "forecast_ = Forecast(\n",
-    "                workflow_name=HERBIE_DOWNLOAD_WORKFLOW,\n",
-    "                geometry=STATION_GEOMETRY,\n",
-    "                time_range=time_range,\n",
-    "                parameters=parameters,\n",
-    "                )\n",
-    "run_list = forecast_.submit_download_request()"
+    "forecast = Forecast(\n",
+    "    workflow_name=HERBIE_DOWNLOAD_WORKFLOW,\n",
+    "    geometry=STATION_GEOMETRY,\n",
+    "    time_range=time_range,\n",
+    "    parameters=parameters,\n",
+    ")\n",
+    "run_list = forecast.submit_download_request()"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 23,
+   "execution_count": 26,
    "metadata": {},
    "outputs": [
     {
@@ -974,21 +933,21 @@
        "2022-03-17 17:00:00              4.563419              1.176411  "
       ]
      },
-     "execution_count": 23,
+     "execution_count": 27,
      "metadata": {},
      "output_type": "execute_result"
     }
    ],
    "source": [
     "# transform downloaded data from utc to pst timezone\n",
-    "p_forecast_dataset = forecast_.get_downloaded_data(run_list=run_list, offset_hours=-8)\n",
+    "p_forecast_dataset = forecast.get_downloaded_data(run_list=run_list, offset_hours=-8)\n",
     "p_forecast_dataset.to_csv(f\"{STATION_NAME}_forecast.csv\")\n",
     "p_forecast_dataset.head(2)"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 24,
+   "execution_count": 28,
    "metadata": {},
    "outputs": [
     {
@@ -1047,14 +1006,14 @@
        "2022-03-18 14:00:00    66.300      16.175       50.075"
       ]
      },
-     "execution_count": 24,
+     "execution_count": 29,
      "metadata": {},
      "output_type": "execute_result"
     }
    ],
    "source": [
     "predict_file_path = f\"./data/{STATION_NAME}/prediction.csv\"\n",
-    "p_historical_dataset = utils.get_csv_data(path=predict_file_path)\n",
+    "p_historical_dataset = utils.get_csv_data(path=predict_file_path, interpolate=False, fill_na=False)\n",
     "p_historical_dataset = p_historical_dataset[HISTORICAL_MODEL_TRAIN_FEATURES]\n",
     "\n",
     "p_historical_dataset.head(2)"
@@ -1062,35 +1021,26 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 25,
+   "execution_count": 30,
    "metadata": {},
    "outputs": [],
    "source": [
-    "# Temperature\n",
-    "# convert kelvin to celsius\n",
-    "p_forecast_dataset[\"temperature_forecast\"] = p_forecast_dataset[\"temperature_forecast\"]-273.15\n",
-    "\n",
-    "# convert celsius to Fahrenheit\n",
-    "p_forecast_dataset[\"temperature_forecast\"] = p_forecast_dataset[\"temperature_forecast\"].apply(lambda x: (x * 9/5) + 32)"
+    "p_forecast_dataset = utils.convert_forecast_data(p_forecast_dataset)"
    ]
   },
   {
-   "cell_type": "code",
-   "execution_count": 26,
+   "cell_type": "markdown",
    "metadata": {},
-   "outputs": [],
    "source": [
-    "# wind_speed\n",
-    "# multiplying with 2.23 to convert wind speed from m/sec to mph\n",
-    "p_forecast_dataset[\"wind_speed_forecast\"] = p_forecast_dataset.apply(lambda x: np.sqrt(np.square(x[\"u-component_forecast\"]) + \n",
-    "                                    np.square(x[\"v-component_forecast\"]))*2.23, axis=1)\n",
-    "\n",
-    "p_forecast_dataset.drop(columns=[\"u-component_forecast\", \"v-component_forecast\"], inplace=True)"
+    "We clean the input data with the following operations:\n",
+    "- Exclude input data outside the time range of interest.\n",
+    "- Shift forecast data by number of hours\n",
+    "- Fill missing data with neighboring data points using pandas interpolate techniques."
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 27,
+   "execution_count": 31,
    "metadata": {},
    "outputs": [
     {
@@ -1166,19 +1116,21 @@
        "2022-03-18 14:00:00             45.456384      16.175            17.855009  "
       ]
      },
-     "execution_count": 27,
+     "execution_count": 32,
      "metadata": {},
      "output_type": "execute_result"
     }
    ],
    "source": [
-    "input_df = utils.clean_relevant_data(\n",
-    "                    actual_df=p_historical_dataset.copy(),\n",
-    "                    forecast_df= p_forecast_dataset.copy(),\n",
-    "                    out_variables= RELEVANT_FEATURES,\n",
-    "                    freq_hours=frequency_hour,\n",
-    "                    num_of_indices=number_of_hours\n",
-    "                )\n",
+    "input_df = utils.clean_relevant_data_using_hrrr(\n",
+    "    actual_df=p_historical_dataset.copy(),\n",
+    "    forecast_df=p_forecast_dataset.copy(),\n",
+    "    out_variables=RELEVANT_FEATURES,\n",
+    "    freq_hours=frequency_hour,\n",
+    "    num_of_indices=number_of_hours,\n",
+    "    start_date=start_date,\n",
+    "    end_date=end_date,\n",
+    ")\n",
     "\n",
     "base_data_df = input_df[RELEVANT_FEATURES]\n",
     "base_data_df.head(2)"
@@ -1186,7 +1138,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 28,
+   "execution_count": 33,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -1197,7 +1149,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 29,
+   "execution_count": 34,
    "metadata": {},
    "outputs": [
     {
@@ -1239,7 +1191,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 30,
+   "execution_count": 35,
    "metadata": {},
    "outputs": [
     {
@@ -1315,45 +1267,45 @@
        "2022-03-16 17:00:00             44.783197      14.325            10.509131  "
       ]
      },
-     "execution_count": 30,
+     "execution_count": 36,
      "metadata": {},
      "output_type": "execute_result"
     }
    ],
    "source": [
     "predict_file_path = f\"./data/{STATION_NAME}/training.csv\"\n",
-    "p_historical_dataset = utils.get_csv_data(path=predict_file_path)\n",
+    "p_historical_dataset = utils.get_csv_data(path=predict_file_path, interpolate=False, fill_na=False)\n",
     "p_historical_dataset = p_historical_dataset[HISTORICAL_MODEL_TRAIN_FEATURES]\n",
     "p_historical_dataset.head(5)\n",
     "\n",
     "input_df = utils.clean_relevant_data(\n",
-    "                    p_historical_dataset.copy(), \n",
-    "                    p_forecast_dataset.copy(), \n",
-    "                    RELEVANT_FEATURES,\n",
-    "                    freq_hours=frequency_hour,\n",
-    "                    num_of_indices=number_of_hours)\n",
+    "    p_historical_dataset.copy(),\n",
+    "    p_forecast_dataset.copy(),\n",
+    "    RELEVANT_FEATURES,\n",
+    "    freq_hours=frequency_hour,\n",
+    "    num_of_indices=number_of_hours,\n",
+    ")\n",
     "base_data_df = input_df[RELEVANT_FEATURES]\n",
     "base_data_df.head(2)"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 31,
+   "execution_count": 37,
    "metadata": {},
    "outputs": [],
    "source": [
     "predict_start_datetime = datetime(year=2022, month=4, day=30, hour=13, minute=0, second=0)\n",
     "predict_end_datetime = datetime(year=2022, month=5, day=21, hour=13, minute=0, second=0)\n",
     "\n",
-    "df_out = weather_forecast.inference_historical(base_data_df.copy(),\n",
-    "            start_datetime=predict_start_datetime,\n",
-    "            end_datetime=predict_end_datetime\n",
-    "            )"
+    "df_out = weather_forecast.inference_historical(\n",
+    "    base_data_df.copy(), start_datetime=predict_start_datetime, end_datetime=predict_end_datetime\n",
+    ")"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 32,
+   "execution_count": 38,
    "metadata": {},
    "outputs": [
     {
@@ -1378,20 +1330,22 @@
     }
    ],
    "source": [
-    "base_data_df = base_data_df[(base_data_df.index >= predict_start_datetime) & (base_data_df.index <= predict_end_datetime)]\n",
+    "base_data_df = base_data_df[\n",
+    "    (base_data_df.index >= predict_start_datetime) & (base_data_df.index <= predict_end_datetime)\n",
+    "]\n",
     "\n",
     "for predict in OUT_FEATURES:\n",
     "    plt.figure(figsize=(18, 6))\n",
-    "    plt.plot(df_out[\"date\"].values, utils.smooth(df_out[predict].values, 2), label=\"Predict\")\n",
+    "    plt.plot(df_out[\"date\"].values, utils.smooth(df_out[predict].values, 2), label=\"Prediction\")\n",
     "    plt.plot(base_data_df.index.values, base_data_df[predict].values, label=\"Ground Truth\")\n",
-    "    # plt.plot(base_data_df.index.values, base_data_df[predict+\"_forecast\"].values, label=\"Forecast\")\n",
+    "\n",
     "    plt.title(f\"24 Models {predict} Ground Truth Vs Predict\")\n",
     "    plt.legend()"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 33,
+   "execution_count": 39,
    "metadata": {},
    "outputs": [
     {
@@ -1411,31 +1365,28 @@
     }
    ],
    "source": [
-    "from sklearn.metrics import mean_squared_error, mean_absolute_error\n",
-    "import math\n",
-    "\n",
-    "def calculate_KPI(y, yhat):\n",
-    "    print(\"RMSE: {}\".format(round(mean_squared_error(y,yhat,squared=False),2)))\n",
-    "    print(\"MAE: {}\".format(round(mean_absolute_error(y,yhat),2)))\n",
-    "    print(\"MAE%: {}%\".format(round(100*sum(abs(y-yhat))/sum(y),2)))\n",
-    "\n",
     "print(\"temperature\")\n",
-    "calculate_KPI(utils.smooth(df_out[\"temperature\"].values, 1),base_data_df[\"temperature\"].values)\n",
+    "utils.calculate_KPI(\n",
+    "    utils.smooth(list(df_out[\"temperature\"].values), 1),\n",
+    "    np.array(base_data_df[\"temperature\"].values),\n",
+    ")\n",
     "\n",
     "print(\"\\n\", \"wind_speed\")\n",
-    "calculate_KPI(utils.smooth(df_out[\"wind_speed\"].values, 1),base_data_df[\"wind_speed\"].values)"
+    "utils.calculate_KPI(\n",
+    "    utils.smooth(list(df_out[\"wind_speed\"].values), 1), np.array(base_data_df[\"wind_speed\"].values)\n",
+    ")"
    ]
   },
   {
    "cell_type": "markdown",
    "metadata": {},
    "source": [
-    "### Training model using not relevant dataset or without forecast observations"
+    "### Training model using non-relevant dataset or without forecast observations"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 12,
+   "execution_count": 40,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -1445,7 +1396,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 41,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -1455,7 +1406,8 @@
     "    root_path=ROOT_PATH,\n",
     "    data_export_path=DATA_EXPORT_PATH,\n",
     "    station_name=STATION_NAME,\n",
-    "    relevant=False)\n",
+    "    relevant=False,\n",
+    ")\n",
     "\n",
     "train_weather.train_model(historical_df, start=0, epochs=1)"
    ]
@@ -1470,15 +1422,16 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 22,
+   "execution_count": 42,
    "metadata": {},
    "outputs": [],
    "source": [
     "weather_forecast = prediction.InferenceWeather(\n",
-    "                        root_path=ROOT_PATH,\n",
-    "                        data_export_path=DATA_EXPORT_PATH,\n",
-    "                        station_name=STATION_NAME,\n",
-    "                        predicts=OUT_FEATURES)"
+    "    root_path=ROOT_PATH,\n",
+    "    data_export_path=DATA_EXPORT_PATH,\n",
+    "    station_name=STATION_NAME,\n",
+    "    predicts=OUT_FEATURES,\n",
+    ")"
    ]
   },
   {
@@ -1491,7 +1444,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 23,
+   "execution_count": 43,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -1501,7 +1454,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 24,
+   "execution_count": 44,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -1511,14 +1464,12 @@
     "\n",
     "df_output_merge = pd.DataFrame(columns=base_data_df.columns)\n",
     "\n",
-    "df_out = weather_forecast.inference(base_data_df,\n",
-    "            start_datetime=predict_start_datetime\n",
-    "            )"
+    "df_out = weather_forecast.inference(base_data_df, start_datetime=predict_start_datetime)"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 25,
+   "execution_count": 45,
    "metadata": {},
    "outputs": [
     {
@@ -1560,7 +1511,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 26,
+   "execution_count": 46,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -1571,15 +1522,14 @@
     "predict_start_datetime = datetime(year=2022, month=4, day=30, hour=13, minute=0, second=0)\n",
     "predict_end_datetime = datetime(year=2022, month=5, day=21, hour=13, minute=0, second=0)\n",
     "\n",
-    "df_out = weather_forecast.inference_historical(base_data_df,\n",
-    "            start_datetime=predict_start_datetime,\n",
-    "            end_datetime=predict_end_datetime\n",
-    "            )"
+    "df_out = weather_forecast.inference_historical(\n",
+    "    base_data_df, start_datetime=predict_start_datetime, end_datetime=predict_end_datetime\n",
+    ")"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 27,
+   "execution_count": 47,
    "metadata": {},
    "outputs": [
     {
@@ -1604,12 +1554,14 @@
     }
    ],
    "source": [
-    "base_data_df = base_data_df[(base_data_df.index >= predict_start_datetime) & (base_data_df.index <= predict_end_datetime)]\n",
+    "base_data_df = base_data_df[\n",
+    "    (base_data_df.index >= predict_start_datetime) & (base_data_df.index <= predict_end_datetime)\n",
+    "]\n",
     "for predict in OUT_FEATURES:\n",
     "    plt.figure(figsize=(20, 5))\n",
     "    plt.plot(df_out[\"date\"].values, df_out[predict].values)\n",
     "    plt.plot(base_data_df.index.values, base_data_df[predict].values)\n",
-    "    plt.title(f\"24 Models {predict} Ground Truth Vs Predict\")\n",
+    "    plt.title(f\"24 Models {predict} Ground Truth Vs Prediction\")\n",
     "    plt.legend([\"Predict\", \"Ground Truth\"])"
    ]
   }
@@ -1632,7 +1584,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.8.16"
+   "version": "3.8.18"
   },
   "name": "Micro climate prediction",
   "running_time": "",
diff --git a/notebooks/deepmc/notebook_lib/forecast.py b/notebooks/deepmc/notebook_lib/forecast.py
index 645b8e8d..993a6617 100644
--- a/notebooks/deepmc/notebook_lib/forecast.py
+++ b/notebooks/deepmc/notebook_lib/forecast.py
@@ -1,4 +1,3 @@
-import time
 from datetime import datetime, timedelta
 from typing import Any, Dict, List, Tuple, cast
 
@@ -8,7 +7,7 @@
 from shapely.geometry import Point
 
 from vibe_core.client import FarmvibesAiClient, get_default_vibe_client
-from vibe_core.datamodel import RunConfig, RunConfigUser, RunDetails, SpatioTemporalJson
+from vibe_core.datamodel import RunConfig, RunConfigUser, SpatioTemporalJson
 
 
 class Forecast:
@@ -31,7 +30,8 @@ def submit_download_request(self):
         """
         Submit request to worker to download forecast data
         """
-        run_list = []
+        run_metadata_list = []
+        runs = []
         for parameter in self.parameters:
             run_name = f"forecast_{parameter['weather_type']}"
             run = self.client.run(
@@ -42,57 +42,40 @@ def submit_download_request(self):
                 parameters=parameter,
             )
 
-            try:
-                run.block_until_complete(5)
-            except RuntimeError:
-                print(run)
-
-            run_list.append(
+            run_metadata_list.append(
                 {
                     "id": run.id,
                     "weather_type": parameter["weather_type"],
                 }
             )
+            runs.append(run)
+
+        self.client.monitor(runs, 5)
 
-        return run_list
+        return run_metadata_list
 
     def get_run_status(self, run_list: List[Dict[str, str]]):
         clear_output(wait=True)
-        all_done = True
-        out_ = []
+        out = []
         for run_item in run_list:
             o = self.client.describe_run(run_item["id"])
             print(f"Execution status for {run_item['weather_type']}: {o.details.status}")
 
             if o.details.status == "done":
-                out_.append(o)
-            elif o.details.status == "failed":
-                print(o.details)
+                out.append(o)
             else:
-                all_done = False
-                cnt_complete = 0
-                for key, value in o.task_details.items():
-                    value = cast(RunDetails, value)
-                    assert value.subtasks is not None, "Subtasks don't exist"
-                    for subtask in value.subtasks:
-                        if subtask.status == "done":
-                            cnt_complete += 1
-                    print(
-                        "\t",
-                        f"Subtask {key}",
-                        cnt_complete,
-                        "/",
-                        len(value.subtasks),
-                    )
-                    cnt_complete = 0
-        return all_done, out_
+                raise Exception(
+                    f"Execution status for {run_item['weather_type']}: {o.details.status}"
+                )
+
+        return out
 
     def get_all_assets(self, details: RunConfigUser):
         asset_files = []
         output = details.output["weather_forecast"]
         record: Dict[str, Any]
         for record in cast(List[Dict[str, Any]], output):
-            for _, value in record["assets"].items():
+            for value in record["assets"].values():
                 asset_files.append(value["href"])
         df_assets = [pd.read_csv(f, index_col=False) for f in asset_files]
         df_out = pd.concat(df_assets)
@@ -104,21 +87,15 @@ def get_downloaded_data(self, run_list: List[Dict[str, str]], offset_hours: int
         check the download status. If status is done, fetch the downloaded data
         """
         forecast_dataset = pd.DataFrame()
-        status = False
-        out_ = []
-        while status is False:
-            status, out_ = self.get_run_status(run_list)
-            time.sleep(10)
-
-        if status:
-            for detail in out_:
-                df = self.get_all_assets(detail)
+        out = self.get_run_status(run_list)
+        for detail in out:
+            df = self.get_all_assets(detail)
 
-                # Offset from UTC to specified timezone
-                df.index = df.index + pd.offsets.Hour(offset_hours)
+            # Offset from UTC to specified timezone
+            df.index = df.index + pd.offsets.Hour(offset_hours)
 
-                if not df.empty:
-                    forecast_dataset = pd.concat([forecast_dataset, df], axis=1)
+            if not df.empty:
+                forecast_dataset = pd.concat([forecast_dataset, df], axis=1)
 
         return forecast_dataset
 
diff --git a/notebooks/deepmc/notebook_lib/modules.py b/notebooks/deepmc/notebook_lib/modules.py
index 5fbfe012..9be52ab4 100644
--- a/notebooks/deepmc/notebook_lib/modules.py
+++ b/notebooks/deepmc/notebook_lib/modules.py
@@ -59,14 +59,14 @@ def training_step(self, train_batch: Tensor, _):
         x, y = train_batch[:6], train_batch[6]
         y_hat = self.deepmc(x)
         loss = self.loss(y_hat, y)
-        self.log("train_loss/total", loss)
+        self.log("train_loss/total", loss, on_epoch=True, prog_bar=True, logger=True, on_step=True)
         return loss
 
     def validation_step(self, validation_batch: Tensor, _):
         x, y = validation_batch[:6], validation_batch[6]
         y_hat = self.deepmc(x)
         loss = self.loss(y_hat, y)
-        self.log("val_loss/total", loss, on_epoch=True)
+        self.log("val_loss/total", loss, on_epoch=True, prog_bar=True, logger=True, on_step=True)
         return loss
 
 
diff --git a/notebooks/deepmc/notebook_lib/post_models.py b/notebooks/deepmc/notebook_lib/post_models.py
deleted file mode 100644
index 224be6fd..00000000
--- a/notebooks/deepmc/notebook_lib/post_models.py
+++ /dev/null
@@ -1,34 +0,0 @@
-from keras.layers import BatchNormalization, Dense, Input
-from keras.models import Sequential
-from keras.utils.vis_utils import plot_model
-
-
-def simple_mixture_model(inshape: int):
-    model = Sequential()
-    model.add(Input(shape=(inshape,)))
-
-    model.add(Dense(inshape * 2, activation="relu"))
-    model.add(BatchNormalization())
-    model.add(Dense(inshape * 4, activation="relu"))
-    model.add(BatchNormalization())
-    model.add(Dense(inshape))
-
-    model.compile(loss="mae", optimizer="adam")
-    return model
-
-
-def fit_model(model, train_X, train_y, test_X, test_y, batch_size: int):
-    batch_size = batch_size
-    validation_data = (test_X, test_y)
-
-    # fit network
-    history = model.fit(
-        train_X,
-        train_y,
-        epochs=20,
-        batch_size=batch_size,
-        validation_data=validation_data,
-        verbose=1,
-    )
-
-    return model, history
diff --git a/notebooks/deepmc/notebook_lib/train.py b/notebooks/deepmc/notebook_lib/train.py
index 6a6f2242..4b9fa8b7 100644
--- a/notebooks/deepmc/notebook_lib/train.py
+++ b/notebooks/deepmc/notebook_lib/train.py
@@ -14,8 +14,8 @@
 from torch import Tensor
 from torch.utils.data import DataLoader, TensorDataset
 
-from . import utils
-from .preprocess import Preprocess
+from vibe_notebook.deepmc import utils
+from vibe_notebook.deepmc.preprocess import Preprocess
 
 MODEL_SUFFIX = "deepmc."
 
@@ -35,7 +35,7 @@ def __init__(
         wavelet: str = "bior3.5",
         mode: str = "periodic",
         level: int = 5,
-        batch_size: int = 256,
+        batch_size: int = 24,
         relevant: bool = False,
     ):
         if relevant:
@@ -67,6 +67,7 @@ def train_model(
         start: int = 0,
         end: int = -1,
         epochs: int = 20,
+        reset_preprocess: bool = False,
     ):
         end = self.total_models if end == -1 else end
 
@@ -80,12 +81,22 @@ def train_model(
             input_order_df[out_feature] = out_feature_df
 
             # data preprocessing
-            (train_scaler, output_scaler, train_df, test_df,) = utils.get_split_scaled_data(
+            (
+                train_scaler,
+                output_scaler,
+                train_df,
+                test_df,
+            ) = utils.get_split_scaled_data(
                 data=input_order_df, out_feature=out_feature, split_ratio=0.92
             )
+            if reset_preprocess and os.path.exists(
+                self.data_export_path % (out_feature, self.relevant_text)
+            ):
+                os.remove(self.data_export_path % (out_feature, self.relevant_text))
 
             if os.path.exists(self.data_export_path % (out_feature, self.relevant_text)):
-                with open(self.data_export_path % (out_feature, self.relevant_text), "rb") as f:
+                exp_path = self.data_export_path.replace("train_data.pkl", "train_data_dates.pkl")
+                with open(exp_path % (out_feature, self.relevant_text), "rb") as f:
                     (
                         train_X,
                         train_y,
@@ -93,6 +104,10 @@ def train_model(
                         test_y,
                         train_scaler,
                         output_scaler,
+                        train_dates_X,
+                        train_dates_y,
+                        test_dates_X,
+                        test_dates_y,
                     ) = pickle.load(f)
 
                 self.preprocess = Preprocess(
@@ -128,6 +143,10 @@ def train_model(
                     train_y,
                     test_X,
                     test_y,
+                    train_dates_X,
+                    train_dates_y,
+                    test_dates_X,
+                    test_dates_y,
                 ) = self.preprocess.wavelet_transform_train(train_df, test_df, out_feature)
 
                 with open(self.data_export_path % (out_feature, self.relevant_text), "wb") as f:
@@ -136,6 +155,25 @@ def train_model(
                         f,
                     )
 
+                exp_path = self.data_export_path.replace("train_data.pkl", "train_data_dates.pkl")
+
+                with open(exp_path % (out_feature, self.relevant_text), "wb") as f:
+                    pickle.dump(
+                        [
+                            train_X,
+                            train_y,
+                            test_X,
+                            test_y,
+                            train_scaler,
+                            output_scaler,
+                            train_dates_X,
+                            train_dates_y,
+                            test_dates_X,
+                            test_dates_y,
+                        ],
+                        f,
+                    )
+
             self.train_models(
                 train_X=train_X,  # type: ignore
                 train_y=train_y,  # type: ignore
@@ -145,6 +183,8 @@ def train_model(
                 out_feature=out_feature,
                 start=start,
                 end=end,
+                train_dates_y=train_dates_y,  # type: ignore
+                test_dates_y=test_dates_y,  # type: ignore
             )
 
     def train_models(
@@ -157,6 +197,8 @@ def train_models(
         out_feature: str,
         start: int,
         end: int,
+        train_dates_y: List[str],
+        test_dates_y: List[str],
     ):
         first_channels = train_X[0].shape[2]
         rest_channels = train_X[1].shape[2]
@@ -209,7 +251,6 @@ def train_models(
                         dirpath=model_path,
                     ),
                 ],
-                num_processes=1,
             )
 
             t_obj.fit(m, train_loader, val_loader)
@@ -225,6 +266,8 @@ def train_models(
                 out_feature=out_feature,
                 model_index=i,
                 epochs=epochs,
+                train_dates_y=train_dates_y,
+                test_dates_y=test_dates_y,
             )
 
     def export_to_onnx(
@@ -249,19 +292,24 @@ def export_to_onnx(
         )
 
     def get_dataloader(
-        self, gt: NDArray[Any], target: NDArray[Any], o_feature: str
+        self,
+        gt: NDArray[Any],
+        target: NDArray[Any],
+        o_feature: str,
+        dates_mapped: NDArray[Any],
     ) -> Tuple[DataLoader[Any], List[Tensor]]:
-        o_x = self.preprocess.dl_preprocess_data(pd.DataFrame(gt), o_feature)[0][:, :, 0].astype(
-            np.float32
-        )
+        dates_mapped = pd.to_datetime(dates_mapped, format="%Y-%m-%d %H:%M:%S").values
+        df = pd.DataFrame(list(zip(gt, dates_mapped)), columns=["data", "date"])
+        df.set_index("date", inplace=True)
+        o_x = self.preprocess.dl_preprocess_data(df, o_feature)[0][:, :, 0].astype(np.float32)
 
-        o_y = self.preprocess.dl_preprocess_data(pd.DataFrame(target), o_feature)[0][
-            :, :, 0
-        ].astype(np.float32)
+        df = pd.DataFrame(list(zip(target, dates_mapped)), columns=["data", "date"])
+        df.set_index("date", inplace=True)
+        o_y = self.preprocess.dl_preprocess_data(df, o_feature)[0][:, :, 0].astype(np.float32)
 
         o_inputs = [torch.from_numpy(x.astype(np.float32)) for x in (o_x, o_y)]
         o_dataset = TensorDataset(*o_inputs)
-        o_loader = DataLoader(o_dataset, batch_size=self.batch_size, shuffle=True)
+        o_loader = DataLoader(o_dataset, batch_size=self.batch_size, shuffle=True, drop_last=True)
         return o_loader, o_inputs
 
     def post_model(
@@ -274,6 +322,8 @@ def post_model(
         out_feature: str,
         model_index: int,
         epochs: int,
+        train_dates_y: List[str],
+        test_dates_y: List[str],
     ):
         m.eval()
 
@@ -288,11 +338,17 @@ def xf(a: List[NDArray[Any]]) -> List[Tensor]:
             os.mkdir(post_model_path)
 
         train_dataloader, _ = self.get_dataloader(
-            gt=train_y[:, model_index, 0], target=train_yhat, o_feature=out_feature  # type: ignore
+            gt=train_y[:, model_index, 0],  # type: ignore
+            target=train_yhat,
+            o_feature=out_feature,
+            dates_mapped=train_dates_y[:, model_index],  # type: ignore
         )
 
-        val_dataloader, val_inputs = self.get_dataloader(
-            gt=test_y[:, model_index, 0], target=test_yhat, o_feature=out_feature  # type: ignore
+        val_dataloader, _ = self.get_dataloader(
+            gt=test_y[:, model_index, 0],  # type: ignore
+            target=test_yhat,
+            o_feature=out_feature,
+            dates_mapped=test_dates_y[:, model_index],  # type: ignore
         )
 
         p_m = DeepMCPostTrain(first_in_features=self.total_models)
@@ -308,9 +364,113 @@ def xf(a: List[NDArray[Any]]) -> List[Tensor]:
                     dirpath=post_model_path,
                 ),
             ],
-            num_processes=1,
         )
 
         t_obj.fit(p_m, train_dataloaders=train_dataloader, val_dataloaders=val_dataloader)
 
         self.export_to_onnx(file_path=post_model_path, model=p_m.deepmc, inputs=torch.rand((1, 24)))
+
+    def preprocess_data(
+        self,
+        input_df: pd.DataFrame,
+        out_path: str,
+        start: int = 0,
+        end: int = -1,
+        epochs: int = 20,
+        reset_preprocess: bool = False,
+    ):
+        end = self.total_models if end == -1 else end
+
+        for out_feature in self.out_features:
+            if not os.path.exists(self.path_to_station % out_feature):
+                os.makedirs(self.path_to_station % out_feature, exist_ok=True)
+
+            input_order_df = input_df[self.train_features].copy()
+            out_feature_df = input_order_df[out_feature]
+            input_order_df.drop(columns=[out_feature], inplace=True)
+            input_order_df[out_feature] = out_feature_df
+
+            # data preprocessing
+            (
+                train_scaler,
+                output_scaler,
+                train_df,
+                test_df,
+            ) = utils.get_split_scaled_data(
+                data=input_order_df, out_feature=out_feature, split_ratio=0.92
+            )
+            if reset_preprocess and os.path.exists(
+                self.data_export_path % (out_feature, self.relevant_text)
+            ):
+                os.remove(self.data_export_path % (out_feature, self.relevant_text))
+
+            if os.path.exists(self.data_export_path % (out_feature, self.relevant_text)):
+                with open(self.data_export_path % (out_feature, self.relevant_text), "rb") as f:
+                    (
+                        train_X,
+                        train_y,
+                        test_X,
+                        test_y,
+                        train_scaler,
+                        output_scaler,
+                    ) = pickle.load(f)
+
+                self.preprocess = Preprocess(
+                    train_scaler=train_scaler,
+                    output_scaler=output_scaler,
+                    is_training=True,
+                    is_validation=self.is_validation,
+                    ts_lookahead=self.ts_lookahead,
+                    ts_lookback=self.ts_lookback,
+                    chunk_size=self.chunk_size,
+                    wavelet=self.wavelet,
+                    mode=self.mode,
+                    level=self.level,
+                    relevant=self.relevant,
+                )
+            else:
+                self.preprocess = Preprocess(
+                    train_scaler=train_scaler,
+                    output_scaler=output_scaler,
+                    is_training=True,
+                    is_validation=self.is_validation,
+                    ts_lookahead=self.ts_lookahead,
+                    ts_lookback=self.ts_lookback,
+                    chunk_size=self.chunk_size,
+                    wavelet=self.wavelet,
+                    mode=self.mode,
+                    level=self.level,
+                    relevant=self.relevant,
+                )
+
+                (
+                    train_X,
+                    train_y,
+                    test_X,
+                    test_y,
+                    train_dates,
+                    test_dates,
+                ) = self.preprocess.wavelet_transform_train(train_df, test_df, out_feature)
+
+                with open(self.data_export_path % (out_feature, self.relevant_text), "wb") as f:
+                    pickle.dump(
+                        [train_X, train_y, test_X, test_y, train_scaler, output_scaler],
+                        f,
+                    )
+
+                exp_path = self.data_export_path.replace("train_data.pkl", "train_data_dates.pkl")
+
+                with open(exp_path % (out_feature, self.relevant_text), "wb") as f:
+                    pickle.dump(
+                        [
+                            train_X,
+                            train_y,
+                            test_X,
+                            test_y,
+                            train_scaler,
+                            output_scaler,
+                            train_dates,
+                            test_dates,
+                        ],
+                        f,
+                    )
diff --git a/notebooks/deepmc/notebook_lib/transformer_models_ts.py b/notebooks/deepmc/notebook_lib/transformer_models_ts.py
deleted file mode 100644
index ba55aaca..00000000
--- a/notebooks/deepmc/notebook_lib/transformer_models_ts.py
+++ /dev/null
@@ -1,367 +0,0 @@
-import numpy as np
-import tensorflow as tf
-
-
-def get_angles(pos, i, d_model):
-    angle_rates = 1 / np.power(10000, (2 * (i // 2)) / np.float32(d_model))
-    return pos * angle_rates
-
-
-def positional_encoding(position, d_model):
-    angle_rads = get_angles(
-        np.arange(position)[:, np.newaxis], np.arange(d_model)[np.newaxis, :], d_model
-    )
-
-    # apply sin to even indices in the array; 2i
-    angle_rads[:, 0::2] = np.sin(angle_rads[:, 0::2])
-
-    # apply cos to odd indices in the array; 2i+1
-    angle_rads[:, 1::2] = np.cos(angle_rads[:, 1::2])
-
-    pos_encoding = angle_rads[np.newaxis, ...]
-
-    return tf.cast(pos_encoding, dtype=tf.float32)
-
-
-# create mask for padding, 0 --> 1 (mask)
-def create_padding_mask(seq):
-    seq = tf.cast(tf.math.equal(seq, 0), tf.float32)
-
-    # add extra dimensions to add the padding
-    # to the attention logits.
-    return seq[:, tf.newaxis, tf.newaxis, :]  # (batch_size, 1, 1, seq_len)
-
-
-def create_look_ahead_mask(size):
-    mask = 1 - tf.linalg.band_part(tf.ones((size, size)), -1, 0)
-    return mask  # (seq_len, seq_len)
-
-
-def scaled_dot_product_attention(q, k, v, mask):
-    """Calculate the attention weights.
-    q, k, v must have matching leading dimensions.
-    k, v must have matching penultimate dimension, i.e.: seq_len_k = seq_len_v.
-    The mask has different shapes depending on its type(padding or look ahead)
-    but it must be broadcastable for addition.
-
-    Args:
-    q: query shape == (..., seq_len_q, depth)
-    k: key shape == (..., seq_len_k, depth)
-    v: value shape == (..., seq_len_v, depth_v)
-    mask: Float tensor with shape broadcastable
-          to (..., seq_len_q, seq_len_k). Defaults to None.
-
-    Returns:
-    output, attention_weights
-    """
-
-    matmul_qk = tf.matmul(q, k, transpose_b=True)  # (..., seq_len_q, seq_len_k)
-
-    # scale matmul_qk
-    dk = tf.cast(tf.shape(k)[-1], tf.float32)
-    scaled_attention_logits = matmul_qk / tf.math.sqrt(dk)
-
-    # add the mask to the scaled tensor.
-    if mask is not None:
-        scaled_attention_logits += mask * -1e9
-
-    # softmax is normalized on the last axis (seq_len_k) so that the scores
-    # add up to 1.
-    attention_weights = tf.nn.softmax(
-        scaled_attention_logits, axis=-1
-    )  # (..., seq_len_q, seq_len_k)
-
-    output = tf.matmul(attention_weights, v)  # (..., seq_len_q, depth_v)
-
-    return output, attention_weights
-
-
-def print_out(q, k, v):
-    temp_out, temp_attn = scaled_dot_product_attention(q, k, v, None)
-    print("Attention weights are:")
-    print(temp_attn)
-    print("Output is:")
-    print(temp_out)
-
-
-"""
-    - Q (query), K (key) and V (value) are split into multiple heads (num_heads)
-    - each tuple (q, k, v) are fed to scaled_dot_product_attention
-    - all attention outputs are concatenated
-"""
-
-
-class MultiHeadAttention(tf.keras.layers.Layer):
-    def __init__(self, d_model, num_heads):
-        super(MultiHeadAttention, self).__init__()
-        self.num_heads = num_heads
-        self.d_model = d_model
-
-        assert d_model % self.num_heads == 0
-
-        self.depth = d_model // self.num_heads
-
-        self.wq = tf.keras.layers.Dense(d_model)
-        self.wk = tf.keras.layers.Dense(d_model)
-        self.wv = tf.keras.layers.Dense(d_model)
-
-        self.dense = tf.keras.layers.Dense(d_model)
-
-    def split_heads(self, x, batch_size):
-        """Split the last dimension into (num_heads, depth).
-        Transpose the result such that the shape is (batch_size, num_heads, seq_len, depth)
-        """
-        x = tf.reshape(x, (batch_size, -1, self.num_heads, self.depth))
-        return tf.transpose(x, perm=[0, 2, 1, 3])
-
-    def call(self, v, k, q, mask):
-        batch_size = tf.shape(q)[0]
-
-        q = self.wq(q)  # (batch_size, seq_len, d_model)
-        k = self.wk(k)  # (batch_size, seq_len, d_model)
-        v = self.wv(v)  # (batch_size, seq_len, d_model)
-
-        q = self.split_heads(q, batch_size)  # (batch_size, num_heads, seq_len_q, depth)
-        k = self.split_heads(k, batch_size)  # (batch_size, num_heads, seq_len_k, depth)
-        v = self.split_heads(v, batch_size)  # (batch_size, num_heads, seq_len_v, depth)
-
-        scaled_attention, attention_weights = scaled_dot_product_attention(q, k, v, mask)
-
-        scaled_attention = tf.transpose(
-            scaled_attention, perm=[0, 2, 1, 3]
-        )  # (batch_size, seq_len_q, num_heads, depth)
-
-        concat_attention = tf.reshape(
-            scaled_attention, (batch_size, -1, self.d_model)
-        )  # (batch_size, seq_len_q, d_model)
-
-        output = self.dense(concat_attention)  # (batch_size, seq_len_q, d_model)
-
-        return output, attention_weights
-
-
-def point_wise_feed_forward_network(d_model, dff):
-    return tf.keras.Sequential(
-        [
-            tf.keras.layers.Dense(dff, activation="relu"),  # (batch_size, seq_len, dff)
-            tf.keras.layers.Dense(d_model),  # (batch_size, seq_len, d_model)
-        ]
-    )
-
-
-class EncoderLayer(tf.keras.layers.Layer):
-    def __init__(self, d_model, num_heads, dff, rate=0.1):
-        super(EncoderLayer, self).__init__()
-
-        self.mha = MultiHeadAttention(d_model, num_heads)
-        self.ffn = point_wise_feed_forward_network(d_model, dff)
-
-        self.layernorm1 = tf.keras.layers.LayerNormalization(epsilon=1e-6)
-        self.layernorm2 = tf.keras.layers.LayerNormalization(epsilon=1e-6)
-
-        self.dropout1 = tf.keras.layers.Dropout(rate)
-        self.dropout2 = tf.keras.layers.Dropout(rate)
-
-    def call(self, x, training, mask):
-
-        attn_output, _ = self.mha(x, x, x, mask)  # (batch_size, input_seq_len, d_model)
-        attn_output = self.dropout1(attn_output, training=training)
-        out1 = self.layernorm1(x + attn_output)  # (batch_size, input_seq_len, d_model)
-
-        ffn_output = self.ffn(out1)  # (batch_size, input_seq_len, d_model)
-        ffn_output = self.dropout2(ffn_output, training=training)
-        out2 = self.layernorm2(out1 + ffn_output)  # (batch_size, input_seq_len, d_model)
-
-        return out2
-
-
-class DecoderLayer(tf.keras.layers.Layer):
-    def __init__(self, d_model, num_heads, dff, rate=0.1):
-        super(DecoderLayer, self).__init__()
-
-        self.mha1 = MultiHeadAttention(d_model, num_heads)
-        self.mha2 = MultiHeadAttention(d_model, num_heads)
-
-        self.ffn = point_wise_feed_forward_network(d_model, dff)
-
-        self.layernorm1 = tf.keras.layers.LayerNormalization(epsilon=1e-6)
-        self.layernorm2 = tf.keras.layers.LayerNormalization(epsilon=1e-6)
-        self.layernorm3 = tf.keras.layers.LayerNormalization(epsilon=1e-6)
-
-        self.dropout1 = tf.keras.layers.Dropout(rate)
-        self.dropout2 = tf.keras.layers.Dropout(rate)
-        self.dropout3 = tf.keras.layers.Dropout(rate)
-
-    def call(self, x, enc_output, training, look_ahead_mask, padding_mask):
-        # enc_output.shape == (batch_size, input_seq_len, d_model)
-
-        attn1, attn_weights_block1 = self.mha1(
-            x, x, x, look_ahead_mask
-        )  # (batch_size, target_seq_len, d_model)
-        attn1 = self.dropout1(attn1, training=training)
-        out1 = self.layernorm1(attn1 + x)
-
-        attn2, attn_weights_block2 = self.mha2(
-            enc_output, enc_output, out1, padding_mask
-        )  # (batch_size, target_seq_len, d_model)
-        attn2 = self.dropout2(attn2, training=training)
-        out2 = self.layernorm2(attn2 + out1)  # (batch_size, target_seq_len, d_model)
-
-        ffn_output = self.ffn(out2)  # (batch_size, target_seq_len, d_model)
-        ffn_output = self.dropout3(ffn_output, training=training)
-        out3 = self.layernorm3(ffn_output + out2)  # (batch_size, target_seq_len, d_model)
-
-        return out3, attn_weights_block1, attn_weights_block2
-
-
-class Encoder(tf.keras.layers.Layer):
-    def __init__(self, num_layers, d_model, num_heads, dff, maximum_position_encoding, rate=0.1):
-        super(Encoder, self).__init__()
-
-        self.d_model = d_model
-        self.num_layers = num_layers
-
-        self.embedding = tf.keras.layers.Dense(d_model, activation="relu")
-        self.pos_encoding = positional_encoding(maximum_position_encoding, self.d_model)
-
-        self.enc_layers = [EncoderLayer(d_model, num_heads, dff, rate) for _ in range(num_layers)]
-
-        self.dropout = tf.keras.layers.Dropout(rate)
-
-    def call(self, x, training, mask):
-
-        seq_len = tf.shape(x)[1]
-
-        # print("Encoder:", x.shape)
-        # adding embedding and position encoding.
-        x = self.embedding(x)  # (batch_size, input_seq_len, d_model)
-        x *= tf.math.sqrt(tf.cast(self.d_model, tf.float32))
-        x += self.pos_encoding[:, :seq_len, :]
-
-        x = self.dropout(x, training=training)
-
-        for i in range(self.num_layers):
-            x = self.enc_layers[i](x, training, mask)
-
-        return x  # (batch_size, input_seq_len, d_model)
-
-
-class Decoder(tf.keras.layers.Layer):
-    def __init__(self, num_layers, d_model, num_heads, dff, maximum_position_encoding, rate=0.1):
-        super(Decoder, self).__init__()
-
-        self.d_model = d_model
-        self.num_layers = num_layers
-
-        self.embedding = tf.keras.layers.Dense(d_model, activation="relu")
-        self.pos_encoding = positional_encoding(maximum_position_encoding, d_model)
-
-        self.dec_layers = [DecoderLayer(d_model, num_heads, dff, rate) for _ in range(num_layers)]
-        self.dropout = tf.keras.layers.Dropout(rate)
-
-    def call(self, x, enc_output, training, look_ahead_mask, padding_mask):
-
-        seq_len = tf.shape(x)[1]
-        attention_weights = {}
-
-        x = self.embedding(x)  # (batch_size, target_seq_len, d_model)
-        x *= tf.math.sqrt(tf.cast(self.d_model, tf.float32))
-        x += self.pos_encoding[:, :seq_len, :]
-
-        x = self.dropout(x, training=training)
-
-        for i in range(self.num_layers):
-            x, block1, block2 = self.dec_layers[i](
-                x, enc_output, training, look_ahead_mask, padding_mask
-            )
-            attention_weights["decoder_layer{}_block1".format(i + 1)] = block1
-            attention_weights["decoder_layer{}_block2".format(i + 1)] = block2
-
-        return x, attention_weights
-
-
-class Transformer(tf.keras.Model):
-    def __init__(
-        self, num_layers, d_model, num_heads, dff, target_vocab_size, pe_input, pe_target, rate=0.1
-    ):
-        super(Transformer, self).__init__()
-
-        self.encoder = Encoder(num_layers, d_model, num_heads, dff, pe_input, rate)
-
-        self.decoder = Decoder(num_layers, d_model, num_heads, dff, pe_target, rate)
-
-        self.final_layer = tf.keras.layers.Dense(target_vocab_size)
-
-    def call(self, inp, tar, training, enc_padding_mask, look_ahead_mask, dec_padding_mask):
-
-        enc_output = self.encoder(
-            inp, training, enc_padding_mask
-        )  # (batch_size, inp_seq_len, d_model)
-
-        # dec_output.shape == (batch_size, tar_seq_len, d_model)
-        dec_output, attention_weights = self.decoder(
-            tar, enc_output, training, look_ahead_mask, dec_padding_mask
-        )
-
-        final_output = self.final_layer(dec_output)  # (batch_size, tar_seq_len, target_vocab_size)
-
-        return final_output, attention_weights
-
-
-class GLU(tf.keras.layers.Layer):
-    def __init__(self, input_channel, output_channel):
-        super(GLU, self).__init__()
-        self.linear_left = tf.keras.layers.Dense(output_channel)
-        self.linear_right = tf.keras.layers.Dense(output_channel)
-
-    def call(self, x):
-        return tf.math.multiply(
-            self.linear_left(x), tf.keras.activations.sigmoid(self.linear_right(x))
-        )
-
-
-class FFT(tf.keras.layers.Layer):
-    def __init__(self, time_step, order, output_channel):
-        super(FFT, self).__init__()
-        self.time_step = time_step
-        self.order = order
-        self.output_channel = output_channel
-        self.GLUs = []  # nn.ModuleList()
-        for i in range(3):
-            if i == 0:
-                self.GLUs.append(
-                    GLU(self.time_step * self.order, self.time_step * self.output_channel)
-                )
-                self.GLUs.append(
-                    GLU(self.time_step * self.order, self.time_step * self.output_channel)
-                )
-            elif i == 1:
-                self.GLUs.append(
-                    GLU(self.time_step * self.output_channel, self.time_step * self.output_channel)
-                )
-                self.GLUs.append(
-                    GLU(self.time_step * self.output_channel, self.time_step * self.output_channel)
-                )
-            else:
-                self.GLUs.append(
-                    GLU(self.time_step * self.output_channel, self.time_step * self.output_channel)
-                )
-                self.GLUs.append(
-                    GLU(self.time_step * self.output_channel, self.time_step * self.output_channel)
-                )
-
-    def call(self, x):
-        # x should be (b, seq_len, units)
-        x = tf.keras.layers.Permute((2, 1))(x)
-        ffted = tf.signal.fft(tf.cast(x, dtype=tf.complex64))  # (b, units, seq_len)
-        real = tf.math.real(ffted)  # [b, units, seq_len]
-        img = tf.math.imag(ffted)
-        for i in range(3):
-            real = self.GLUs[i * 2](real)
-            img = self.GLUs[2 * i + 1](img)
-
-        time_step_as_inner = tf.dtypes.complex(real, img)
-        iffted = tf.signal.ifft(time_step_as_inner)  # [b, k, node_cnt, 48]
-        iffted = tf.cast(iffted, dtype=tf.float32)
-        iffted = tf.keras.layers.Permute((2, 1))(iffted)
-        return iffted
diff --git a/notebooks/deepmc/notebook_lib/utils.py b/notebooks/deepmc/notebook_lib/utils.py
deleted file mode 100644
index eacec1aa..00000000
--- a/notebooks/deepmc/notebook_lib/utils.py
+++ /dev/null
@@ -1,104 +0,0 @@
-from datetime import datetime, timedelta
-from typing import Any, Dict, List
-
-import numpy as np
-import pandas as pd
-from numpy._typing import NDArray
-from pandas.tseries.offsets import DateOffset
-from sklearn.preprocessing import StandardScaler
-
-
-def get_csv_data(
-    path: str,
-    date_attribute: str = "date",
-    columns_rename: Dict[str, str] = {},
-    frequency: str = "60min",
-):
-    """
-    Read data from CSV file using Pandas python package.
-    """
-
-    data_df = pd.read_csv(path)
-    data_df[date_attribute] = pd.to_datetime(data_df[date_attribute])
-
-    if columns_rename:
-        data_df.rename(columns=columns_rename, inplace=True)
-
-    # apply index on date
-    data_df.reset_index(drop=True, inplace=True)
-    data_df.set_index(date_attribute, inplace=True)
-    data_df.sort_index(ascending=True, inplace=True)
-
-    # interpolate to derive missing data
-    data_df = data_df.interpolate(method="from_derivatives")
-    assert data_df is not None, "Interpolate deleted all data"
-    data_df = data_df.dropna()
-
-    # Group rows by frequency, requires date attribute indexed to execute this
-    data_df = data_df.fillna(method="ffill")
-    data_df = data_df.fillna(method="bfill")
-    data_df = data_df.groupby(pd.Grouper(freq=frequency)).mean()
-    data_df = data_df.fillna(method="ffill")
-    data_df = data_df.fillna(method="bfill")
-
-    return data_df
-
-
-def hour_round(t: datetime):
-    # Rounds to nearest hour by adding a timedelta hour if minute >= 30
-    return t.replace(second=0, microsecond=0, minute=0, hour=t.hour) + timedelta(
-        hours=t.minute // 30
-    )
-
-
-def get_split_scaled_data(data: pd.DataFrame, out_feature: str, split_ratio: float = 0.92):
-    split = int(split_ratio * data.shape[0])
-
-    train_data = data.iloc[:split]
-    test_data = data.iloc[split:]
-
-    output_scaler = StandardScaler()
-    output_scaler.fit_transform(np.expand_dims(data[out_feature].values, axis=1))  # type: ignore
-
-    train_scaler = StandardScaler()
-    train_scale_df = pd.DataFrame(
-        train_scaler.fit_transform(train_data), columns=train_data.columns, index=train_data.index
-    )
-    test_scale_df = pd.DataFrame(
-        train_scaler.transform(test_data), columns=test_data.columns, index=test_data.index
-    )
-
-    return train_scaler, output_scaler, train_scale_df, test_scale_df
-
-
-def shift_index(ds_df: pd.DataFrame, freq_minutes: int, num_indices: int, dateColumn: str = "date"):
-    ds_df[dateColumn] = ds_df.index.shift(-num_indices, freq=DateOffset(minutes=freq_minutes))
-    ds_df = ds_df.reset_index(drop=True)
-    ds_df = ds_df.set_index(dateColumn)
-    return ds_df
-
-
-def clean_relevant_data(
-    actual_df: pd.DataFrame,
-    forecast_df: pd.DataFrame,
-    out_variables: List[str],
-    freq_hours: int,
-    num_of_indices: int,
-):
-    base_data_df = actual_df.copy()
-    current_ws_df = forecast_df.add_suffix("Current")
-    base_data_df = base_data_df.join(current_ws_df)
-    shift_forecast_df = shift_index(forecast_df, freq_hours * 60, num_of_indices)
-    base_data_df = base_data_df.join(shift_forecast_df)
-
-    base_data_df = base_data_df[out_variables]
-    base_data_df = base_data_df.interpolate(method="from_derivatives")
-    assert base_data_df is not None, "Interpolate deleted all data"
-    base_data_df = base_data_df.dropna()
-    return base_data_df
-
-
-def smooth(y: NDArray[Any], box_pts: int):
-    box = np.ones(box_pts) / box_pts
-    y_smooth = np.convolve(y, box, mode="same")
-    return y_smooth
diff --git a/notebooks/deepmc_neighbors/deepmc_neighbors_env.yaml b/notebooks/deepmc_neighbors/deepmc_neighbors_env.yaml
new file mode 100644
index 00000000..834e34c9
--- /dev/null
+++ b/notebooks/deepmc_neighbors/deepmc_neighbors_env.yaml
@@ -0,0 +1,19 @@
+name: deepmc-pytorch-neighbors
+channels:
+  - pyg
+  - conda-forge
+  - defaults
+dependencies:
+  - python=3.9.*
+  - pip~=21.2.4
+  - pip:
+    - geopandas~=0.9.0
+    - einops~=0.6.0
+    - geopy~=2.4.1
+    - ipykernel~=6.17.1
+    - unfoldNd~=0.2.0
+    - pyWavelets~=1.3.0
+    - pydantic~=1.10.12
+    - matplotlib~=3.9.0
+    - ../../src/vibe_core
+    - ../../src/vibe_notebook
\ No newline at end of file
diff --git a/notebooks/deepmc_neighbors/gnn_forecast.ipynb b/notebooks/deepmc_neighbors/gnn_forecast.ipynb
new file mode 100644
index 00000000..75834edc
--- /dev/null
+++ b/notebooks/deepmc_neighbors/gnn_forecast.ipynb
@@ -0,0 +1,643 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Micro Climate Predictions with Nearby Weather Stations\n",
+    "\n",
+    "It helps infer weather forecasts for stations that have no data or limited data by utilizing data of neighboring stations. The notebook demonstrates configuring inputs and training a model using neighboring weather stations data.\n",
+    "\n",
+    "This is an extension of the deepmc notebook [notebooks/deepmc/mc_forecast.ipynb](https://github.com/microsoft/farmvibes-ai/blob/main/notebooks/deepmc/mc_forecast.ipynb).\n",
+    "\n",
+    "Before running this notebook, let's build a micromamba environment. If you do not have micromamba installed, please follow the instructions from the [micromamba installation guide](https://mamba.readthedocs.io/en/latest/installation/micromamba-installation.html).\n",
+    "\n",
+    "```bash\n",
+    "$ micromamba env create -f ./deepmc_neighbors_env.yaml\n",
+    "$ micromamba activate deepmc-pytorch-neighbors\n",
+    "```"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "**Install Packages**"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "! pip install torch==1.12.1 --index-url https://download.pytorch.org/whl/cpu\n",
+    "! pip install torch-scatter==2.1.0 torch-sparse==0.6.15 torch-geometric==2.3.0 -f https://data.pyg.org/whl/torch-1.12.1%2Bcpu.html\n",
+    "! pip install torch-geometric-temporal~=0.54.0 onnxruntime~=1.15.0 pytorch-lightning~=1.8.0"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Notebook overview\n",
+    "In this notebook, we describe steps to generate forecast for weather variables at a specific station with no or limited data. We employ [Graphical Neural Network (GNNs)](https://pytorch-geometric.readthedocs.io/) for cross-learning from nearby weather stations by capturing spatial relationships. \n",
+    "\n",
+    "To illustrate this approach, we focus on three locations in Washington state, U.S.A., utilizing data accessible through [AGWeatherNet](https://weather.wsu.edu/). An example is shown the figure below. For instance, assuming that the Warden SW station has missing data, we look to neighboring stations (such as Royal Slope and Ringold) that provide relevant data. We consider the weather variables, temperature, humidity and wind_speed.\n",
+    "\n",
+    "\n",
+    "\n",
+    "Selecting appropriate neighboring stations is crucial for accurate predictions. When choosing neighboring weather stations, consider the following factors:\n",
+    "\n",
+    "- Elevation Similarity: In the current model the neighboring stations should be at a similar elevation to the target station. This ensures that altitude-related effects are consistent. Although, one can build a edge weight model which includes altitude differential to accommodate for the topography (this notebook does not cover that). \n",
+    "\n",
+    "- Spatial Proximity: The distance between neighboring stations should be small. Proximity often implies similar local weather patterns. For example, in the example, we chose stations with distance less than 25 km between them. In our experiments we noticed significant errors with distances greater than 25 Kms.\n",
+    "\n",
+    "**Graph Representation of Weather Stations for GNNs**\n",
+    "\n",
+    "Each weather station corresponds to a node in our graph. To capture the relationships between stations, we connect stations based on the distance between them. This graph does not change with time during inference. If a new station is available which can be helpful to increase accuracy, then the model can be dynamically updated by recomputing & retraining the GNN.\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Following steps are required for training a model and inference.\n",
+    "\n",
+    "**Step 1: Download AgWeatherNet data**\n",
+    "- Download historical weather data for the stations Royal Slope and Ringold from [AGWeatherNet]( https://weather.wsu.edu/) for the time range of interest (minimum 2 years of data).\n",
+    "- Clean downloaded historical data for considered variables temperature, humidity and wind_speed. \n",
+    "\n",
+    "Note: these two steps are not included in the notebook. See [sample data](sample_data.csv) for an example. \n",
+    "\n",
+    "**Step 2: Download forecast data**\n",
+    "- Download HRRR data for the stations Warden SW, Royal Slope and Ringold using herbie_forecast workflow in Farmvibes for the time range of interest (minimum 2 years of data).\n",
+    "- Clean downloaded HRRR data for considered variables temperature, humidity and wind_speed.\n",
+    "\n",
+    "**Step 3: Train DeepMC models**\n",
+    "- For stations Royal Slope and Ringold, train the DeepMC model using the notebook [notebooks/deepmc/mc_forecast.ipynb]( https://github.com/microsoft/farmvibes-ai/blob/main/notebooks/deepmc/mc_forecast.ipynb). You will need to train separately for each station.\n",
+    "- The results received from DeepMC inference results are weather forecasts for next 24 hours for the stations Royal Slope and Ringold.\n",
+    "\n",
+    "**Step 4: Preparation for GNN model training**\n",
+    "- Create embeddings: Concatenate cleaned HRRR weather forecast data of station Warden SW and DeepMC inference results of station Royal Slope & Ringold.\n",
+    "- Create train and test splits from the embeddings.\n",
+    "- Train GNN model.\n",
+    "\n",
+    "**Step 5: Inference**\n",
+    "\n",
+    "Run the inference to infer weather forecasts for the Warden SW station.\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Notebook Setup\n",
+    "\n",
+    "Let's start by importing the required packages and defining some constants.\n",
+    "\n",
+    "### Imports"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "import os\n",
+    "import warnings\n",
+    "from datetime import datetime\n",
+    "\n",
+    "from notebook_lib.post_deepmc_inference import download_forecast_data\n",
+    "from notebook_lib.train import MC_Neighbors\n",
+    "\n",
+    "warnings.filterwarnings(\"ignore\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Constants\n",
+    "- ROOT_DIR - Root directory of DeepMC output.\n",
+    "- WEATHER_TYPE - temperature, humidity, or wind_speed.\n",
+    "- INFERENCE_STATION - Station having missing weather data.\n",
+    "- MODEL_TYPE - relevant or not-relevant"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "ROOT_DIR = \"\"\n",
+    "WEATHER_TYPE = \"temperature\"\n",
+    "INFERENCE_STATION = \"Warden_SW\"\n",
+    "MODEL_TYPE = \"relevant\"\n",
+    "ROOT_PATH = os.path.join(ROOT_DIR, WEATHER_TYPE)\n",
+    "\n",
+    "# Forecast data\n",
+    "infer_forecast_data_path = f\"{ROOT_PATH}/{INFERENCE_STATION}/{MODEL_TYPE}/forecast.csv\""
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Step 1: Download stations data.  \n",
+    "Here, we are taking the stations from [AGWeatherNet](https://weather.wsu.edu/). \n",
+    "\n",
+    "We are assuming that the station Warden_SW does not have the weather station data. We consider the stations Royal Slope and Ringold as neighboring weather stations having similar weather patterns, hence historical data download is required for these two stations. See [sample data](sample_data.csv) for an example."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Neighboring stations\n",
+    "# Coordinates are in (longitude, latitude)\n",
+    "neighbor_stations = [\n",
+    "    {\n",
+    "        \"name\": \"Warden_SW\",\n",
+    "        \"column_name\": \"temperature_forecast\",\n",
+    "        \"coordinates\": (-119.12, 46.93),\n",
+    "    },\n",
+    "    {\n",
+    "        \"name\": \"royal_slope\",\n",
+    "        \"column_name\": \"temperature\",\n",
+    "        \"coordinates\": (-119.32, 46.95),\n",
+    "    },\n",
+    "    {\n",
+    "        \"name\": \"ringold\",\n",
+    "        \"column_name\": \"temperature\",\n",
+    "        \"coordinates\": (-119.18, 46.48),\n",
+    "    },\n",
+    "]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Step 2: Download Forecast data\n",
+    "\n",
+    "For weather station Warden SW, download weather forecast observations by submitting request to worker running in background. Workflow execution utilize below parameters while processing requests, this can be overwritten using the parameter argument.\n",
+    "\n",
+    "- fxx: [1, 25, 1] # start, stop, step\n",
+    "- search_text: \"TMP:2 m\"\n",
+    "- interval: 60 # in minutes\n",
+    "- weather_type: \"temperature\"\n",
+    "- multi_threads: 25"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "start_date = datetime(year=2021, month=7, day=30)\n",
+    "end_date = datetime(year=2023, month=8, day=2)\n",
+    "forecast_data = download_forecast_data([neighbor_stations[0]], start_date, end_date)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "forecast_data[\"Warden_SW\"].to_csv(infer_forecast_data_path)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Step 3: Train DeepMC models\n",
+    "\n",
+    "Complete the DeepMC model training using the notebook [notebooks/deepmc/mc_forecast.ipynb](https://github.com/microsoft/farmvibes-ai/blob/main/notebooks/deepmc/mc_forecast.ipynb) for weather stations Royal Slope and Ringold.\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Step 4: Train [Graphical Neural Network (GNN)](https://pytorch-geometric.readthedocs.io/) model\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Step 4.1 Create embeddings\n",
+    "\n",
+    "The get_embeddings module does the following: \n",
+    "1. Run inference using DeepMC trained model to find weather forecasts of temperature for station Royal Slope and Ringold weather stations.\n",
+    "2. Pre-process inference results to create a lookback by transforming it to a 2D matrix.\n",
+    "3. Pre-process HRRR weather forecast to create a lookback by transforming it to a 2D matrix.\n",
+    "4. Embeddings created by concatenating pre-process results. The embeddings are sorted by timestamp and station name."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "obj_neighbors = MC_Neighbors(root_dir=ROOT_PATH, learning_rate=0.0025, use_edge_weights=False)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "train_embeddings, test_embeddings = obj_neighbors.get_embeddings(\n",
+    "    INFERENCE_STATION,\n",
+    "    neighbor_stations,\n",
+    "    24,\n",
+    "    infer_forecast_data_path,\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Step 4.2 Model training\n",
+    "\n",
+    "The GNN training script does the following:\n",
+    "\n",
+    "1. Creates Dataset that reads the input embeddings, creates a node for each timestamp, and creates edges connecting weather stations.\n",
+    "2. Creates BatchSampler to split data into batches for training and testing dataset.\n",
+    "3. Using PyTorch lightning package, the model training is initiated."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "obj_neighbors.run_train(\n",
+    "    train_embeddings=train_embeddings,\n",
+    "    test_embeddings=test_embeddings,\n",
+    "    neighbor_stations=neighbor_stations,\n",
+    "    infer_station=INFERENCE_STATION,\n",
+    "    epochs=20,\n",
+    "    batch_size=24 * len(neighbor_stations),\n",
+    "    forecast_hours=24,\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Run Inference to validate the trained model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "pred_df = obj_neighbors.run_inference(\n",
+    "    embeddings=test_embeddings.copy(),\n",
+    "    neighbors_station=neighbor_stations,\n",
+    "    infer_station=INFERENCE_STATION,\n",
+    "    batch_size=len(neighbor_stations),\n",
+    "    forecast_hours=24,\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "- historical_data_path: it's a path to historical weather data downloaded and cleaned in Step 1.\n",
+    "- hrrr_data_path: it's a path to hrr weather data downloaded and cleaned in Step 2."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "historical_data_path = \"\"\n",
+    "hrrr_data_path = \"\""
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAABasAAAIQCAYAAACPLTLEAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3xT9frA8U9WmzRddA9KKS2yQdnIFhQEFFwoLlBx49XrVa/60ysquHDh3uBVuW4cqCAyRBSQKXuvQveeaZvk/P44OWnTwbJJGM/79eJV+j0nyZPRJOc5z/f56hRFURBCCCGEEEIIIYQQQggh/Ejv7wCEEEIIIYQQQgghhBBCCElWCyGEEEIIIYQQQgghhPA7SVYLIYQQQgghhBBCCCGE8DtJVgshhBBCCCGEEEIIIYTwO0lWCyGEEEIIIYQQQgghhPA7SVYLIYQQQgghhBBCCCGE8DtJVgshhBBCCCGEEEIIIYTwO0lWCyGEEEIIIYQQQgghhPA7SVYLIYQQQgghhBBCCCGE8DtJVgshhBDijKXT6Zg6daq/wzgjzZ49G51Ox/79+/0dyhHpdDqmTJni7zC8avXq1Zx77rlYrVZ0Oh0bNmzwd0jiCOR9SwghhBCnM0lWCyGEEGewPXv2cOutt9KmTRvMZjOhoaH079+fmTNnUllZ6e/wBPD9999z0UUXERsbS0BAABEREQwaNIgXXniBkpISf4fnNfv370en0x3Tv7+b8P7jjz+YOnUqRUVFzRI7wIsvvohOp+OXX35pcp93330XnU7Hd99997dua8iQIXTu3PmELltTU8MVV1xBQUEBL730Eh999BHJycl/K55TmXYSRftnNBpJTExk0qRJHD582N/hNao5X7/r1q1Dp9PxyCOPNLnPrl270Ol03HvvvX/rtqZOnYpOpyMvL6/R7a1bt2bMmDEeY/X/9kNDQxk8eDA//PBDg8sf73M5ZMgQj/0tFgtdu3bl5Zdfxul0/q37KoQQQohjZ/R3AEIIIYTwjx9++IErrriCwMBArr/+ejp37kx1dTXLly/n/vvvZ8uWLbzzzjv+DtOrKisrMRpPzq9DTqeTm266idmzZ9OlSxfuuOMOkpKSKC0tZcWKFTzyyCP8+OOPLFq0yN+hekV0dDQfffSRx9gLL7zAoUOHeOmllxrs+3f88ccfPP7440yaNInw8PC/dV2aq666ivvvv585c+YwfPjwRveZM2cOkZGRXHjhhc1ymydiz549HDhwgHfffZfJkyf7LY6TzRNPPEFKSgo2m42VK1cye/Zsli9fzubNmzGbzf4Oz0Nzvn67d+9O+/bt+d///se0adMa3WfOnDkAXHvttX/rtk7U+eefz/XXX4+iKBw4cIA333yTiy66iJ9++okRI0Y02P94nsuWLVvy9NNPA5CXl8ecOXP45z//SW5uLtOnT/fJ/RNCCCHOdCfn0ZkQQgghvGrfvn1cddVVJCcns3jxYuLj493b7rzzTnbv3t1opdrpwOl0Ul1djdlsPumSTnU999xzzJ49m3/+85+88MIL6HQ697a7776bzMxM/vvf/x7xOure11ON1WptkAz79NNPKSwsPGKSTFEUbDYbFovF2yEeUUJCAkOHDuXrr7/mzTffJDAw0GP74cOHWbZsGbfccgsmk8lPUUJOTg5AsyXpAcrLy7Farc12ff5w4YUX0rNnTwAmT55MVFQUzz77LN999x3jx4/3c3Tedc011/Doo4+ycuVK+vbt22D7//73P9q3b0/37t39EB2cddZZHu8Bl112GR07dmTmzJmNJquP57kMCwvzuO7bbruN9u3b8+qrr/LEE09gMBi8dK+EEEIIoZE2IEIIIcQZ6LnnnqOsrIz333/fI1GtSUtL4+6773b/brfbefLJJ0lNTSUwMJDWrVvz8MMPU1VV5XE5bdr20qVL6dmzJxaLhS5durB06VIAvv76a7p06YLZbKZHjx6sX7/e4/KTJk0iODiYvXv3MmLECKxWKwkJCTzxxBMoiuKx7/PPP8+5555LZGQkFouFHj168OWXXza4L1rP4U8++YROnToRGBjI/Pnz3dvq9n4tLS3lnnvuoXXr1gQGBhITE8P555/PunXrPK7ziy++oEePHlgsFqKiorj22msbTCvX7svhw4cZN24cwcHBREdHc9999+FwOJp4ZlQVFRU8++yzdOrUiRkzZngkqjXx8fH8+9//Pub7un79ei688EJCQ0MJDg5m2LBhrFy50uPy2rT8+hrrL60918uXL6d3796YzWbatGnTaAJ9y5YtnHfeeVgsFlq2bMm0adOabVq9FseCBQvcr7m3337b3UZk9uzZDS5T93mfOnUq999/PwApKSlNthb55ptv6Ny5M4GBgXTq1Mn9uB7JtddeS3FxcaMnfj799FOcTifXXHONe2zNmjWMGDGCqKgoLBYLKSkp3Hjjjcf+YNS7j1OmTDli3JMmTWLw4MEAXHHFFeh0OoYMGeLevn37di6//HIiIiIwm8307NmzQcsS7bXx66+/cscddxATE0PLli3d23/66ScGDhyI1WolJCSE0aNHs2XLFo/rOJ6/FafTycyZM93vI9HR0YwcOZI1a9Z47Pfxxx+7/0YjIiK46qqrSE9PP6HHEmDgwIGAWole17E8RjU1NTz++OO0bdsWs9lMZGQkAwYMYOHChe59hgwZ4vHY131sWrdu3WRcR3v9Lly4kAEDBhAeHk5wcDDt2rXj4YcfPuJ91V6TWgV1XWvXrmXHjh0er9usrCxuuOEGWrZsSWBgIPHx8YwdO9Zn/eg7dOhAVFRUg+emKU09l40xm8306tWL0tJS94kdIYQQQniXVFYLIYQQZ6Dvv/+eNm3acO655x7T/pMnT+bDDz/k8ssv51//+herVq3i6aefZtu2bcydO9dj3927d3P11Vdz6623cu211/L8889z0UUX8dZbb/Hwww9zxx13APD0008zfvx4duzYgV5fe/7c4XAwcuRI+vbty3PPPcf8+fN57LHHsNvtPPHEE+79Zs6cycUXX8w111xDdXU1n376KVdccQXz5s1j9OjRHjEtXryYzz//nClTphAVFdVk8ue2227jyy+/ZMqUKXTs2JH8/HyWL1/Otm3b3FWEs2fP5oYbbqBXr148/fTTZGdnM3PmTH7//XfWr1/vUaHqcDgYMWIEffr04fnnn+eXX37hhRdeIDU1ldtvv73Jx3v58uUUFRVx3333HXclX2P3dcuWLQwcOJDQ0FAeeOABTCYTb7/9NkOGDOHXX3+lT58+x3Ubmt27d3P55Zdz0003MXHiRD744AMmTZpEjx496NSpE6AmsoYOHYrdbufBBx/EarXyzjvvNGvl844dO5gwYQK33norN998M+3atTvmy1566aXs3LmT//3vf7z00ktERUUBnq1Fli9fztdff80dd9xBSEgIr7zyCpdddhkHDx4kMjLyiNd9++23M2fOHC699FKPbXPmzCE5OZn+/fsDaoXzBRdcQHR0NA8++CDh4eHs37+fr7/++ngeCg9Hi/vWW28lMTGRp556in/84x/06tWL2NhYQD3B0L9/fxITE93P2+eff864ceP46quvuOSSSzxu64477iA6Opr//Oc/lJeXA/DRRx8xceJERowYwbPPPktFRQVvvvkmAwYMYP369R5/h8f6t6K1xrnwwguZPHkydrud3377jZUrV7qrZ6dPn86jjz7K+PHjmTx5Mrm5ubz66qsMGjSowd/osdISry1atHCPHetjNHXqVJ5++mkmT55M7969KSkpYc2aNaxbt47zzz//uGOp60iv3y1btjBmzBi6du3KE088QWBgILt37+b3338/4nWmpKRw7rnn8vnnn/PSSy95vAdpCeyrr77aPXbZZZexZcsW7rrrLlq3bk1OTg4LFy7k4MGDR0y0awoKChodP9YTWsXFxRQWFpKamnpM+zf2XB5tf51O16yzD4QQQghxBIoQQgghzijFxcUKoIwdO/aY9t+wYYMCKJMnT/YYv++++xRAWbx4sXssOTlZAZQ//vjDPbZgwQIFUCwWi3LgwAH3+Ntvv60AypIlS9xjEydOVADlrrvuco85nU5l9OjRSkBAgJKbm+ser6io8Iinurpa6dy5s3Leeed5jAOKXq9XtmzZ0uC+Acpjjz3m/j0sLEy58847m3wsqqurlZiYGKVz585KZWWle3zevHkKoPznP/9pcF+eeOIJj+s455xzlB49ejR5G4qiKDNnzlQA5ZtvvvEYt9vtSm5ursc/p9N51Ps6btw4JSAgQNmzZ497LCMjQwkJCVEGDRrkHnvssceUxr4ezpo1SwGUffv2uce053rZsmXusZycHCUwMFD517/+5R675557FEBZtWqVx35hYWENrvNoRo8erSQnJ3uMaXHMnz/fY3zfvn0KoMyaNavB9dR/3mfMmNFkLIASEBCg7N692z32119/KYDy6quvHjXmK664QjGbzUpxcbF7bPv27QqgPPTQQ+6xuXPnKoCyevXqo15nfYMHD1Y6dep0QnEvWbJEAZQvvvjC4/LDhg1TunTpothsNveY0+lUzj33XKVt27buMe21MWDAAMVut7vHS0tLlfDwcOXmm2/2uN6srCwlLCzMY/xY/1YWL16sAMo//vGPBo+B9newf/9+xWAwKNOnT/fYvmnTJsVoNDYYr0+7P7/88ouSm5urpKenK19++aUSHR2tBAYGKunp6cf9GHXr1k0ZPXr0EW938ODByuDBgxuMT5w4scFr/lhfvy+99JICeLxvHqvXX39dAZQFCxa4xxwOh5KY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nz789NNP/PDDDzz88MPu6eejR4/mxRdfZOTIkVx99dXk5OTw+uuvk5aWdsK9YEtLS2nZsiWXX3453bp1Izg4mF9++YXVq1e7KwRNJhPPPvssN9xwA4MHD2bChAlkZ2czc+ZMWrduzT//+c9mexwefPBBtm3bxowZM/j555+57LLLaNmyJYWFhaxbt44vvviCmJiYY+qlOm3aNBYuXMiAAQO44447MBqNvP3221RVVXm0o7jgggto1aoVN910E/fffz8Gg4EPPviA6OjoE64qfOCBB/joo48YOXIkd999N1arlXfeeYfk5GSv9+2dPHkyzzzzDJMnT6Znz54sW7bMXaVfV48ePQD4v//7P6666ipMJhMXXXSROwn4d+l0Oq6++mqeeuopQO1hXN+HH37IG2+8wSWXXEJqaiqlpaW8++67hIaGuk8Y+dLrr7/OgAED6NKlCzfffDNt2rQhOzubFStWcOjQIf76668jXj40NJQ333yT6667ju7du3PVVVe5X0c//PAD/fv3P6bK1rqGDh3KddddxyuvvMKuXbsYOXIkTqeT3377jaFDhzJlyhRSU1OZNm0aDz30EPv372fcuHGEhISwb98+5s6dyy233MJ99913Qo/J/fffzxVXXMHs2bO57bbbjvkx6tixI0OGDKFHjx5ERESwZs0avvzyS4+FZG+88UZefPFFRowYwU033UROTg5vvfUWnTp1OuoCqE29fp944gmWLVvG6NGjSU5OJicnhzfeeIOWLVsyYMCAY7rP1157Lf/9739ZsGAB11xzTYO/iZ07dzJs2DDGjx9Px44dMRqNzJ07l+zsbK666qrjeXj/lkmTJvGf//yHZ599lnHjxh11//rP5ZF07NiRUaNG8d577/Hoo48SGRnZTFELIYQQolGKEEIIIc5YO3fuVG6++WaldevWSkBAgBISEqL0799fefXVVxWbzeber6amRnn88ceVlJQUxWQyKUlJScpDDz3ksY+iKEpycrIyevToBrcDKHfeeafH2L59+xRAmTFjhnts4sSJitVqVfbs2aNccMEFSlBQkBIbG6s89thjisPh8Lj8+++/r7Rt21YJDAxU2rdvr8yaNUt57LHHlPpfbxq77brbHnvsMUVRFKWqqkq5//77lW7duikhISGK1WpVunXrprzxxhsNLvfZZ58p55xzjhIYGKhEREQo11xz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Hx9//DFOp5P33nvPnRCfNWsW4eHhLF26lAsuuICXX36Zhx56iEsvvRSAt956iwULmn4sdu7cyeeff87ChQsZPnw4AG3atHFv11qGxMTEEB4eftz363R23G1AysvL6datG6+//nqj25977jleeeUV3nrrLVatWoXVamXEiBHYbDb3Ptdccw1btmxh4cKFzJs3j2XLlnHLLbec+L0QQgghhBBCCCGEEEIIYN68eQQHB2M2m7nwwgu58sormTp1KgBdunTx6FP9119/sXv3bkJCQggODiY4OJiIiAhsNht79uyhuLiYzMxM+vTp476M0WikZ8+eTd7+hg0bMBgMDB482Gv38XR13KckLrzwQi688MJGtymKwssvv8wjjzzC2LFjAfjvf/9LbGws33zzDVdddRXbtm1j/vz5rF692v2kvvrqq4waNYrnn3+ehISEv3F3hBBCCCGEEEIIcbpZl72OBfsX8I/u/8Bqsvo7HCHOSBaTga1PjPDbbR+PoUOH8uabbxIQEEBCQgJGY20K1Gr1fA8pKyujR48efPLJJw2uJzo6+sTilbYeJ6xZe1bv27ePrKwsd3k7QFhYGH369GHFihVcddVVrFixgvDwcI+zD8OHD0ev17Nq1SouueSSBtdbVVVFVVWV+/eSkpLmDFsIIYQQQgghhBAnqc15m5k0fxIKCsNaDaN3fG9/hyTEGUmn051QKw5/sFqtpKWlHdO+3bt357PPPiMmJobQ0NBG94mPj2fVqlUMGjQIALvdztq1a+nevXuj+3fp0gWn08mvv/7qkSfVaJXdDod/eoCfzI67DciRZGVlARAbG+sxHhsb696WlZVFTEyMx3aj0UhERIR7n/qefvppwsLC3P+SkpKaM2whhBBCCCGEEEKcpF5e9zIKCr3iehFhjvB3OEKI08w111xDVFQUY8eO5bfffmPfvn0sXbqUf/zjHxw6dAiAu+++m2eeeYZvvvmG7du3c8cdd1BUVNTkdbZu3ZqJEydy44038s0337iv8/PPPwcgOTkZnU7HvHnzyM3NpayszBd39ZTQrMlqb3nooYcoLi52/0tPT/d3SEIIIYQQQgghhPCyFRkrWJW5CpPexJP9nyStxbFVSgohxLEKCgpi2bJltGrViksvvZQOHTpw0003YbPZ3JXW//rXv7juuuuYOHEi/fr1IyQkpNHuEHW9+eabXH75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djeQW2HueIjAYHXGSWywyFA1ERERERERERHtF7sTKJkgvy6oAWwME5L5OAszTGKDRWZWExERERERERHRfiufJm9ZAoQsgsHqDMMGi0RERERERERENCzGHCNvaxeYOw4ijcPsAdC+ScysVhitJiIiIiIiIiKi/TXlDKD2UMBfYvZIiAAwWJ1x9JrVjFMTEREREREREdFXllNq9giIDCwDkmH0KiCMVRMREREREREREVE2YbA6w+jBajZXJCIiIiIiIiIiomzCYHWGUQXLgBAREREREREREVH2YbA6w+j9FdlckYiIiIiIiIiIiLIJg9UZRlW1zGqTx0FEREREREREREQ0nBiszlCsWU1ERERERERERETZhMHqDKM3WGSsmoiIiIiIiIiIiLIJg9UZRm+wyMxqIiIiIiIiIiIiyibDHqz+8Y9/DEVRkv5MmDDBeLyvrw9XXHEFioqKkJOTg8WLF6OpqWm4h5G1jAaLpo6CiIiIiIiIiIiIaHilJLN68uTJaGhoMP68/fbbxmPXXHMNXnjhBTz99NNYtmwZduzYgTPOOCMVw8hKemY1E6uJiIiIiIiIiIgomzhS8qIOB8rLywfc39HRgYcffhiPP/44jj76aADAkiVLMHHiRLz33nuYO3duKoaTVeI1qxmtJiIiIiIiIiIiouyRkszq9evXo7KyEqNGjcJ5552HrVu3AgA++ugjRCIRLFy40HjuhAkTMHLkSCxfvnzI1wuFQujs7Ez6c6ASRs1qkwdCRERERERERERENIyGPVg9Z84cPPLII3jppZfwu9/9Dps2bcJhhx2Grq4uNDY2wuVyIT8/P+nvlJWVobGxccjXvOOOO5CXl2f8qa6uHu5hZwyjZjUzq4mIiIiIiIiIiCiLDHsZkBNOOMH4etq0aZgzZw5qamrw1FNPwev17tdrXn/99bj22muN7zs7Ow/YgLVRs9rkcRARERERERERERENp5SUAUmUn5+PcePG4csvv0R5eTnC4TDa29uTntPU1DRojWud2+1GIBBI+nOgYs1qIiIiIiIiIiIiykYpD1YHg0Fs2LABFRUVmDVrFpxOJ5YuXWo8vnbtWmzduhXz5s1L9VCygpFZzVg1ERERERERERERZZFhLwPy/e9/HyeffDJqamqwY8cO3HzzzbDb7Tj33HORl5eHiy++GNdeey0KCwsRCATw3e9+F/PmzcPcuXOHeyhZSc+sZoNFIiIiIiIiIiIiyibDHqyur6/Hueeei5aWFpSUlODQQw/Fe++9h5KSEgDAPffcA5vNhsWLFyMUCmHRokW4//77h3sYWcsoA8Kq1URERERERERERJRFhj1Y/eSTT+72cY/Hg/vuuw/33XffcP/oA4KAjFYzs5qIiIiIiIiIiIiyScprVtPwUtlgkYiIiIiIiIiIiLIQg9UZRrDBIhEREREREREREWUhBqszjJZYzWA1ERERERERERERZRUGqzOMnlltY7SaiIiIiIiIiIiIsgiD1RlG6DWrzR0GERERERERERER0bBisDrD6A0WmVlNRERERERERERE2YTB6gwjmFpNREREREREREREWYjB6gyjMlZNREREREREREREWYjB6gwjwAaLRERERERERERElH0YrM4wRhUQxqqJiIiIiIiIiIgoizBYnWEEGywSERERERERERFRFmKwOsOoerSaiIiIiIiIiIiIKIswWJ1h9FA1M6uJiIiIiIiIiIgomzBYnWH0zGrGqomIiIiIiIiIiCibMFidaVizmoiIiIiIiIiIiLIQg9UZhpnVRERERERERERElI0YrM4wen9FhdFqIiIiIiIiIiIiyiIMVmcYvcEiQ9VERERERERERESUTRiszjB6GRAbo9VERERERERERESURRiszjAsA0JERERERERERETZiMHqDCP0Bosmj4OIiIiIiIiIiIhoODFYnWH0mtU2ZlYTERERERERERFRFmGwOsOoRh0Qc8dBRERERERERERENJwYrM4weqyaDRaJiIiIiIiIiIgomzBYnWFUo2Y1o9VERERERERERESUPRiszlA2/s8RERERERERERFRFmHIM8Mws5qIiIiIiIiIiIiyEYPVGcbor8hYNREREREREREREWURBqszjGoEqxmtJiIiIiIiIiIiouzBYHWGEVpqtY2xaiIiIiIiIiIiIsoiDFZnGKMMiLnDICIiIiIiIiIiIhpWDFZnGAE9s5rhaiIiIiIiIiIiIsoeDFZnGDZYJCIiIiIiIiIiomzEYHWG0RssshAIERERERERERERZRMGqzNMvAyIyQMhIiIiIiIiIiIiGkYMVmcYlWVAiIiIiIiIiIiIKAsxWJ1pBBssEhERERERERERUfZhsDrDMLOaiIiIiIiIiIiIshGD1RlGaJnVCqPVRERERERERERElEUYrM4wRma1ucMgIiIiIiIiIiIiGlYMVmcYLVbNmtVERERERERERESUVRiszjDxMiAmD4SIiIiIiIiIiIhoGDFYnWG0WDUzq4mIiIiIiIiIiCirMFidYVQ9s9rkcRARERERERERERENJwarM4xes1phZjURERERERERERFlEQarM4zKmtVERERERERERESUhRiszjB6zWrGqomIiIiIiIiIiCibMFidodhgkYiIiIiIiIiIiLIJg9UZRlVZBoSIiIiIiIiIiIiyD4PVGYYNFomIiIiIiIiIiCgbMVidYdhgkYiIiIiIiIiIiLIRg9UZRm+waGOwmoiIiIiIiIiIiLIIg9UZRuiZ1WC0moiIiIiIiIiIiLIHg9UZRq9ZzcxqIiIiIiIiIiIiyiYMVmeYeM1qRquJiIiIiIiIiIgoezBYnWH0mtWMVRMREREREREREVE2YbA6w6h6sJo1q4mIiIiIiIiIiCiLMFidYYRWtZo1q4mIiIiIiIiIiCibMFidYVgGhIiIiIiIiIiIiLJRyoPVP/vZz6AoCq6++mrjvr6+PlxxxRUoKipCTk4OFi9ejKamplQPJSssPqgKD5w/C4tnVZk9FCIiIiIiIiIiIqJhk9Jg9QcffIDf//73mDZtWtL911xzDV544QU8/fTTWLZsGXbs2IEzzjgjlUPJGuPLc3H8lHJMKA+YPRQiIiIiIiIiIiKiYZOyYHUwGMR5552HBx98EAUFBcb9HR0dePjhh3H33Xfj6KOPxqxZs7BkyRK8++67eO+991I1HCIiIiIiIiIiIiKysJQFq6+44gqcdNJJWLhwYdL9H330ESKRSNL9EyZMwMiRI7F8+fJUDYeIiIiIiIiIiIiILMyRihd98sknsWLFCnzwwQcDHmtsbITL5UJ+fn7S/WVlZWhsbBz09UKhEEKhkPF9Z2fnsI6XiIiIiIiIiIiIiMw17JnV27Ztw1VXXYXHHnsMHo9nWF7zjjvuQF5envGnurp6WF6XiIiIiIiIiIiIiKxh2IPVH330EXbu3ImDDjoIDocDDocDy5Ytw69//Ws4HA6UlZUhHA6jvb096e81NTWhvLx80Ne8/vrr0dHRYfzZtm3bcA+biIiIiIiIiIiIiEw07GVAjjnmGHz++edJ91100UWYMGEC/vd//xfV1dVwOp1YunQpFi9eDABYu3Yttm7dinnz5g36mm63G263e7iHSkREREREREREREQWMezB6tzcXEyZMiXpPr/fj6KiIuP+iy++GNdeey0KCwsRCATw3e9+F/PmzcPcuXOHezhERERERERERERElAFS0mBxT+655x7YbDYsXrwYoVAIixYtwv3332/GUIiIiIiIiIiIiIjIAhQhhDB7EPuqs7MTeXl56OjoQCAQMHs4RERERERERERERDSIfYnlDnuDRSIiIiIiIiIiIiKifcVgNRERERERERERERGZjsFqIiIiIiIiIiIiIjIdg9VEREREREREREREZDoGq4mIiIiIiIiIiIjIdAxWExEREREREREREZHpGKwmIiIiIiIiIiIiItMxWE1EREREREREREREpnOYPYD9IYQAAHR2dpo8EiIiIiIiIiIiIiIaih7D1WO6u5ORwequri4AQHV1tckjISIiIiIiIiIiIqI96erqQl5e3m6fo4i9CWlbjKqq2LFjB3Jzc6EoitnDMXR2dqK6uhrbtm1DIBAweziUpTjP9g9/b5QOnGeULpxrlA6cZ5QunGuUDpxnlC6ca5QOmTbPhBDo6upCZWUlbLbdV6XOyMxqm82Gqqoqs4cxpEAgkBEThTIb59n+4e+N0oHzjNKFc43SgfOM0oVzjdKB84zShXON0iGT5tmeMqp1bLBIRERERERERERERKZjsJqIiIiIiIiIiIiITMdg9TByu924+eab4Xa7zR4KZTHOs/3D3xulA+cZpQvnGqUD5xmlC+capQPnGaUL5xqlQzbPs4xssEhERERERERERERE2YWZ1URERERERERERERkOgariYiIiIiIiIiIiMh0DFYTERERERERERERkekYrCYiIiIiIiIiIiIi02VksPqOO+7A7NmzkZubi9LSUpx22mlYu3Zt0nP6+vpwxRVXoKioCDk5OVi8eDGampqMxz/99FOce+65qK6uhtfrxcSJE3Hvvfcmvcbbb7+NBQsWoKioCF6vFxMmTMA999yzx/EJIXDTTTehoqICXq8XCxcuxPr16wc875///CfmzJkDr9eLgoICnHbaabt93TfeeAOnnnoqKioq4Pf7MWPGDDz22GNJz3nkkUegKErSH4/Hs8cx00CcZ0PPs0gkgltvvRWjR4+Gx+PB9OnT8dJLL2XF7+2NN94Y8B7S/3zwwQd7/N0ddNBBcLvdGDNmDB555JGk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NNCBOs8S7UuDxYsuukgcccQR+/wziHNNiD3PtSVLlgi32y2am5v3+bVJOpDn2eOPPy48Ho947rnn9vhcrge+Os61vZtrQnBN8FVwnu39PBuu9UBGBqv/53/+R+Tl5Yk33nhDNDQ0GH96enqM51x22WVi5MiR4rXXXhMffvihmDdvnpg3b57x+Oeffy5KSkrE+eefn/QaO3fuNJ7z29/+Vjz//PNi3bp1Yt26deKhhx4Subm5e+xq+bOf/Uzk5+eLv//97+Kzzz4Tp556qqirqxO9vb3Gc6666ioxYsQI8fLLL4s1a9aIiy++WJSWlorW1tYhX/e1114TPp9PXH/99UljbmlpMZ5zyy23iJdfflls2LBBfPTRR+Kcc84RHo9HrFq1ap9+x8R5trt59t5774m//e1vYsOGDeLNN98URx99tKirqxNtbW1Z8XsTQohXX31VABCrV6/e7evpNm7cKHw+n/jBD34gVq9eLe677z5ht9vFSy+9ZDynq6tLfPzxx+Ljjz8WAMTdd98tPv74Y7Fly5a9+hkUx3k29Dz73ve+J9544w2xadMm8c4774iFCxeK4uLipH8X7T3OtaHn2ksvvST+9a9/iY0bN4pXXnlFTJ8+XcyZM0eEw+G9+hkUd6DOMyGE8bk4a9Ys8Y1vfEN8/PHHSeett99+u3jllVfEhg0bxBdffCHuuusu4XA4xIMPPrjXP4PiONeGnmu6Qw89VJx99tl7/bo00IE6zx577DHhcDjEfffdlzTm9vZ24zlcDwwvzrWh5xrXBMOH82zoeZaq9UBGBqsBDPpnyZIlxnN6e3vF5ZdfLgoKCoTP5xOnn366aGhoMB6/+eabB32NxCsWv/71r8XkyZOFz+cTgUBAzJw5U9x///0iFovtdnyqqoof/ehHoqysTLjdbnHMMceItWvXJj0nHA6L733ve6K0tFTk5uaKhQsXipUrV+72dS+88MJBx5yYWXL11VeLkSNHCpfLJcrKysSJJ54oVqxYsedfKg3AeTb0PHvjjTfExIkThdvtFkVFReKb3/ym2L59e9b83oSQGYTz58/f7Wv19/rrr4sZM2YIl8slRo0alfRv1h8f7N914YUX7tPPIc6z3c2zs88+W1RUVAiXyyVGjBghzj77bPHll1/u08+gOM61oefaX/7yFzFq1CjhcrlEeXm5uOKKK5JOXmnvHcjzbE9jvuGGG8SYMWOEx+MRBQUFYt68eeLJJ5/cp59BcZxrQ49ZiHgm3CuvvLJPr03JDtR5dsQRR+zxXJ/rgeHFuTb0POKaYPhwng09z1K1HlCEEAJERERERERERERERCZiu3YiIiIiIiIiIiIiMh2D1URERERERERERERkOgariYiIiIiIiIiIiMh0DFYTERERERERERERkekYrCYiIiIiIiIiIiIi0zFYTURERERERERERESmY7CaiIiIiIiIiIiIiEzHYDURERERERERERERmY7BaiIiIiIiIiIiIiIyHYPVRERERERERERERGQ6BquJiIiIiIiIiIiIyHQMVhMRERERERERERGR6f4/mn7wz1xafk4AAAAASUVORK5CYII=",
+      "text/plain": [
+       "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "obj_neighbors.view_plot(pred_df, historical_data_path, hrrr_data_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "GNN temperature\n", + "RMSE: 3.98\n", + "MAE: 3.19\n", + "MAE%: 4.22%\n", + "\n", + "Hrrr temperature\n", + "RMSE: 4.64\n", + "MAE: 3.8\n", + "MAE%: 4.91%\n" + ] + } + ], + "source": [ + "obj_neighbors.view_performance(pred_df, historical_data_path, hrrr_data_path)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Step 5: Inference\n", + "For weather stations used in GNN model training, we will perform the steps below to get inference results.\n", + "\n", + "**5.1 Download data**\n", + "- Download historical weather data for the stations Royal Slope and Ringold from [AGWeatherNet]( https://weather.wsu.edu/) for the time range interested in.\n", + "\n", + "Note: To perform the inference for 24 hours with 60 minutes interval, the minimum data required for 528 hours, similarly If the data frequency is 15 minutes, the minimum number of data points required is 528*4 = 2112. These are the minimum number of data points need to be provided as input during the inference.\n", + "\n", + "**5.2 Preprocessing**\n", + "- For each weather station, historical and HRRR data are concatenated by timestamp.\n", + "- Data processing is done using Wavelet Transformation techniques. \n", + "- For each weather station, using the trained DeepMC model, we run the inference to find weather forecasts.\n", + "- Embeddings are created by combining HRRR data and the predicted weather forecasts.\n", + "\n", + "**5.3 Run GNN model inference**\n", + "\n", + "Finally, we plot the results and calculate KPIs." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 5.1 Download data\n", + "\n", + "Download AgWeatherNet data and clean it. See [sample data](sample_data.csv)." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "# weather dataset filtered and model training limited to train features.\n", + "HISTORICAL_MODEL_TRAIN_FEATURES = [\"humidity\", \"wind_speed\", \"temperature\"]\n", + "\n", + "# Historical data aligned using INDEX variable\n", + "INDEX = \"date\"\n", + "\n", + "# weather dataset filtered and model training limited to train features.\n", + "FORECAST_MODEL_TRAIN_FEATURES = [\"humidity_forecast\", \"wind_speed_forecast\", \"temperature_forecast\"]\n", + "\n", + "# Models trained to predict out features\n", + "OUT_FEATURES = [\"temperature\"] # ['wind_speed' , 'temperature']" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "# Get actual observations data for a station, '%s' is a place holder for station name.\n", + "file_path = f\"/%s/prediction.csv\"" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "# time range interested in\n", + "start_date = datetime(year=2022, month=7, day=1, hour=0, minute=0, second=0)\n", + "end_date = datetime(year=2022, month=8, day=15, hour=0, minute=0, second=0)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Execution status for temperature: done\n", + "Execution status for humidity: done\n", + "Execution status for u-component: done\n", + "Execution status for v-component: done\n" + ] + } + ], + "source": [ + "forecast_data = download_forecast_data(neighbor_stations, start_date, end_date)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 5.2 Preprocessing\n", + "\n", + "Steps to derive embeddings:\n", + "\n", + "- We perform wavelet transformation on selected weather variables (historical and forecast data). \n", + "- The preprocessed output is used as input to run the inference using the DeepMC trained model. The inference results are weather forecasts for neighboring stations.\n", + "- The DeepMC inference results are concatenated with HRRR forecast data to create embeddings." + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [], + "source": [ + "obj_neighbors = MC_Neighbors(root_dir=ROOT_PATH, learning_rate=0.0025, use_edge_weights=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "embeddings = obj_neighbors.get_embeddings_inference(\n", + " INFERENCE_STATION,\n", + " neighbor_stations,\n", + " 24,\n", + " infer_forecast_data_path,\n", + " OUT_FEATURES,\n", + " file_path,\n", + " forecast_data,\n", + " start_date,\n", + " end_date,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 5.3 Run inference\n", + "\n", + "The inference results are weather forecast for stations that are missing station data." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "pred_df = obj_neighbors.run_inference(\n", + " embeddings=embeddings.copy(),\n", + " neighbors_station=neighbor_stations,\n", + " infer_station=INFERENCE_STATION,\n", + " batch_size=len(neighbor_stations),\n", + " forecast_hours=24,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 5.4 Plot results and calculate KPIs" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- historical_data_path: it's a path to historical weather data downloaded and cleaned in Step 5.1.\n", + "- hrrr_data_path: it's a path to hrr weather data downloaded and cleaned in Step 5.1." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [], + "source": [ + "historical_data_path = \"\"\n", + "hrrr_data_path = \"\"" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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H063bt34+uuvSUhIYPbs2bRu3ZoTJ05keR/m972SUa6mR48ejB49mrS0NPbs2cPBgwczZ71OnTqVjz76iIEDBzJ69GjCw8P58ccfadu2bbb3aH5lJFXLlSuXuS2/j9GUKVP48ssvGT16NE2bNiU2NpajR49y/PhxunTpUuBY7pfb6/fcuXP07t2bevXq8emnn2JmZsbly5fZt29frn16eXnRsmVLli1bxvfff5/ld1BGcnrIkCGZ2/r378+5c+d49dVX8fT0JCwsjC1btnD16tVck+gZIiMjc9ye35NVMTExREVF4e3tna/2OT2XebXXaDRFetWAEEIIIXKhCCGEEKLMiImJUQClb9+++Wp/8uRJBVBGjx6dZfs777yjAMr27dszt3l4eCiAsn///sxtmzdvVgDFwsJCCQ4Oztw+Z84cBVB27NiRuW348OEKoLz66quZ2wwGg9KrVy/F1NRUCQ8Pz9yekJCQJZ6UlBSlTp06SseOHbNsBxStVqucO3cu27EByuTJkzN/trOzU8aPH//QxyIlJUVxcXFR6tSpoyQmJmZuX7dunQIoH3/8cbZj+fTTT7P00bBhQ6Vx48YPHUNRFGXGjBkKoKxZsybL9rS0NCU8PDzLl8FgyPNY+/Xrp5iamioBAQGZ227cuKHY2Ngobdu2zdw2efJkJad//ebPn68ASmBgYOa2jOd69+7dmdvCwsIUMzMz5e23387c9sYbbyiAcujQoSzt7OzssvWZl169eikeHh5ZtmXEsWnTpizbAwMDFUCZP39+tn4efN6nT5/+0FgAxdTUVLl8+XLmtlOnTimA8uOPP+YZ87PPPquYm5srMTExmdsuXLigAMr777+fuW316tUKoBw5ciTPPh/Url07pXbt2oWKe8eOHQqgLF++PMv+nTp1UurWraskJSVlbjMYDErLli2VatWqZW7LeG20bt1aSUtLy9weFxen2NvbK2PGjMnS782bNxU7O7ss2/P7Xtm+fbsCKK+99lq2xyDjfRAUFKSYmJgoU6dOzXL/mTNnFJ1Ol237gzKOZ+vWrUp4eLhy7do1ZcWKFYqzs7NiZmamXLt2rcCPUf369ZVevXrlOm67du2Udu3aZds+fPjwbK/5/L5+v//+ewXI8nszv2bNmqUAyubNmzO3paenK66urkqLFi0yt0VFRSmAMn369AKPkfH7JrevBx83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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "obj_neighbors.view_plot(pred_df, historical_data_path, hrrr_data_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "GNN temperature\n", + "RMSE: 3.05\n", + "MAE: 2.57\n", + "MAE%: 3.48%\n", + "\n", + "Hrrr temperature\n", + "RMSE: 3.72\n", + "MAE: 3.02\n", + "MAE%: 4.05%\n" + ] + } + ], + "source": [ + "obj_neighbors.view_performance(pred_df, historical_data_path, hrrr_data_path)" + ] + } + ], + "metadata": { + "description": "It helps to find weather forecasts for sensors that have no data by utilizing data of neighboring stations", + "disk_space": "", + "kernelspec": { + "display_name": "dev-vibes3", + "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.9.19" + }, + "name": "Micro Climate Predictions using Neighbor stations", + "running_time": "", + "tags": [ + "Weather", + "Model Training" + ] + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/notebooks/deepmc_neighbors/graph.svg b/notebooks/deepmc_neighbors/graph.svg new file mode 100755 index 00000000..53ae5c23 --- /dev/null +++ b/notebooks/deepmc_neighbors/graph.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/notebooks/deepmc_neighbors/notebook_lib/base_dataset.py b/notebooks/deepmc_neighbors/notebook_lib/base_dataset.py new file mode 100644 index 00000000..82488fd7 --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/base_dataset.py @@ -0,0 +1,318 @@ +from math import cos, sin +from typing import Any, Dict, List, Union + +import geopy.distance +import numpy as np +import pandas as pd +import torch +import torch.utils +import torch.utils.data +from sklearn.preprocessing import StandardScaler +from torch import Tensor +from torch.utils.data import IterableDataset + + +class GNNDataset: + def __init__( + self, + data: pd.DataFrame, + scaler_input: StandardScaler, + scaler_label: StandardScaler, + neighbor_station: Dict[str, Any], + infer_station: str, + forecast_hours: int, + label_column_index: Union[int, None], + forecast_step: int = 0, + device_count: int = torch.cuda.device_count(), + ): + super().__init__() + self.data = data + self.forecast_step = forecast_step + self.device_count = device_count + self.scaler_input = scaler_input + self.scaler_label = scaler_label + self.neighbor_stations = neighbor_station + self.stations_count = len(self.neighbor_stations["stations"]) + self.infer_station = infer_station + self.forecast_hours = forecast_hours + self.label_column_index = label_column_index + self.load_nodes() + self.load_edges() + + def load_node_labels(self, data: pd.DataFrame): + if "labels" not in data.columns: + return data + + node_labels = data["labels"].to_numpy() + node_labels = node_labels.reshape(-1)[ + : int(len(data.index.get_level_values(0)) / self.node_num) * self.node_num * 1 + ] + + self.node_labels = torch.from_numpy( + node_labels.reshape( + int(len(data.index.get_level_values(0)) / self.node_num), + self.node_num, + 1, + ).astype("float32") + ) + data.drop(columns=["labels"], inplace=True) + return data + + def load_nodes(self): + data = self.node_feature_selection(self.data) + data["timestamp"] = [pd.Timestamp(a).replace(tzinfo=None) for a in data["timestamp"]] + data = data.rename(columns={"station": "Node"}) + self.node_names = data["Node"].unique().astype(str) + self.node_num = len(self.node_names) + data.set_index(["timestamp", "Node"], inplace=True) + data = self.load_node_labels(data) + data.drop(columns=["forecast_step"], inplace=True) + + # Set node variables + self.lookback_indices = list(range(self.forecast_hours)) + self.target_idx = self.forecast_step + self.timestamps = data.index.get_level_values(0).unique() + self.infer_station_index = next( + (i for i, a in enumerate(self.node_names) if a == self.infer_station), None + ) + self.node_feas = list(data.columns) + self.node_fea_dim = len(self.node_feas) + node_vals = data.values.reshape(-1)[ + : int(len(data.index.get_level_values(0)) / self.node_num) + * self.node_num + * self.node_fea_dim + ] + + self.node_data = torch.from_numpy( + node_vals.reshape( + int(len(data.index.get_level_values(0)) / self.node_num), + self.node_num, + self.node_fea_dim, + ).astype("float32") + ) + + self.timestamps = self.timestamps[: self.node_data.shape[0]] + + def get_from_to_nodes(self, neighbor_stations: Dict[str, Any]): + from_node = [] + to_node = [] + for s in neighbor_stations["stations"]: + for c in self.neighbor_stations["stations"]: + if s != c and s != self.infer_station: + from_node.append(s) + to_node.append(c) + return from_node, to_node + + def get_edges(self, neighbor_stations: Dict[str, Any]): + from_node, to_node = self.get_from_to_nodes(neighbor_stations) + + coords = neighbor_stations["long_lat"] + edges = zip(from_node, to_node) + distances = [] + turbine_dir_x = [] + turbine_dir_y = [] + + for edge in edges: + coord_1 = coords[edge[0]][::-1] + coord_2 = coords[edge[1]][::-1] + distances.append(geopy.distance.geodesic(coord_1, coord_2).km) + x1, y1 = coord_1 + x2, y2 = coord_2 + turbine_dir_x.append(cos(x1) * sin(y1 - y2)) + turbine_dir_y.append(cos(x2) * sin(x1) - sin(x2) * cos(x1) * cos(y1 - y2)) + + data = { + "from_node": from_node, + "to_node": to_node, + "distance": distances, + "dir_x": turbine_dir_x, + "dir_y": turbine_dir_y, + } + return data + + def load_edges(self): + data = self.get_edges(self.neighbor_stations) + data = pd.DataFrame(data) + data["to_node"] = data["to_node"] + data["from_node"] = data["from_node"] + data["edge"] = data.apply(lambda x: "{}->{}".format(x["from_node"], x["to_node"]), axis=1) + data.loc[:, "distance"] = 1 / data.loc[:, "distance"] + data.drop(columns=["from_node", "to_node"], inplace=True) + edge_names = sorted(data["edge"].unique()) + node2id = dict(zip(self.node_names, range(len(self.node_names)))) + edge_index = [ + [node2id[src_node], node2id[tgt_node]] + for src_node, tgt_node in [edge.split("->") for edge in edge_names] + ] + + edge_df = data[["distance", "edge"]].set_index(["edge"]) + self.edge_names = edge_names + self.edge_feas = list(edge_df.columns) + self.edge_index = torch.LongTensor(edge_index) + self.edge_num = len(self.edge_names) + + self.edge_fea_dim = len(self.edge_feas) + self.edge_data = torch.from_numpy( + edge_df.values.reshape( + self.edge_num, + self.edge_fea_dim, + ).astype("float32") + ) + + def node_feature_selection(self, df_node: pd.DataFrame): + df_node = df_node.sort_values(["timestamp", "forecast_step", "station"]) + scaled_input_array = self.scaler_input.transform( + df_node.to_numpy()[:, 0 : self.forecast_hours] + ) + df_node.iloc[:, 0 : self.forecast_hours] = scaled_input_array # type: ignore + + if self.label_column_index is not None: + scaled_label = self.scaler_label.transform( + np.expand_dims(df_node.to_numpy()[:, self.label_column_index], axis=-1) + ) + df_node.iloc[:, self.label_column_index] = scaled_label # type: ignore + return df_node + + +class BatchSampler(IterableDataset): # type: ignore + def __init__( + self, + dataset: GNNDataset, + batch_size: int, + lookahead_horizon: int, + lookback_horizon: int, + device: Union[str, torch.device], + random: bool = True, + noise_parameters: Dict[str, Any] = {}, + use_edge_weights: bool = False, + ): + self.dataset = dataset + self.batch_size = batch_size + self.device_count = dataset.device_count + self.random = random + self.lookahead_horizon = lookahead_horizon + self.lookback_horizon = lookback_horizon + self.device = device + self.noise_parameters = noise_parameters + self.use_edge_weights = use_edge_weights + self.stations_count = dataset.stations_count + + def get_forecast_indices(self): + forecast_indices = list(range(len(self.dataset.timestamps))) + if self.random: + np.random.seed() + np.random.shuffle(forecast_indices) + + return forecast_indices + + def get_batch_edge_index(self, cur_batch_size: int, num_devices: int): + edge_num = self.dataset.edge_num + if num_devices == 0: + num_devices = 1 + + batch_size_each_device = int(cur_batch_size / num_devices) + + # Reshape edge_index to [batch_size, 2, edge_num] + self.edge_index = torch.cat( + batch_size_each_device * [self.dataset.edge_index] # type: ignore + ).reshape( # type: ignore + batch_size_each_device, 2, edge_num + ) + + # Add offset to edge_index + offset = torch.arange( + 0, batch_size_each_device * self.dataset.node_num, self.dataset.node_num + ).view(-1, 1, 1) + self.edge_index = self.edge_index + offset + self.edge_index = torch.cat(num_devices * [self.edge_index]).reshape( + cur_batch_size, 2, edge_num + ) + + def get_batch_edge_data(self, cur_batch_size: int, num_devices: int): + edge_num = self.dataset.edge_num + if num_devices == 0: + num_devices = 1 + batch_size_each_device = int(cur_batch_size / num_devices) + + # Reshape edge_index to [batch_size, 2, edge_num] + self.edge_data = torch.cat(batch_size_each_device * [self.dataset.edge_data]).reshape( + batch_size_each_device, self.dataset.edge_fea_dim, edge_num + ) # batch_size, edge_in_fea_dim, num_edges + # Add offset to edge_index + offset = torch.arange( + 0, batch_size_each_device * self.dataset.node_num, self.dataset.node_num + ).view(-1, 1, 1) + self.edge_data = self.edge_data + offset # [batch_size, edge_node_dim, num_edges] + + self.edge_data = torch.cat(num_devices * [self.edge_data]).reshape( + cur_batch_size, self.dataset.edge_fea_dim, edge_num + ) + + def generate(self): + total_forecast_indices = self.get_forecast_indices() + num_batches = (len(total_forecast_indices) // (self.batch_size)) + ( + len(total_forecast_indices) % self.batch_size != 0 + ) + + for batch_id in range(num_batches): + lookback_indices = [] + batch_id_s = batch_id * self.batch_size + batch_id_e = batch_id_s + self.batch_size + forecast_indices = total_forecast_indices[batch_id_s:batch_id_e] + cur_batch_size = len(forecast_indices) + lookback_indices = forecast_indices + + # Collect meta data + forecast_timestamps = [self.dataset.timestamps[i] for i in forecast_indices] + + # Collect node-level time series + node_lookback = ( + self.dataset.node_data[lookback_indices] + .reshape(cur_batch_size, 1, self.dataset.node_num, self.dataset.node_fea_dim) + .transpose(1, 2) + .contiguous() + ) + + if self.dataset.label_column_index is not None: + # Collect node-level time series + node_lookback_labels = ( + self.dataset.node_labels[lookback_indices] + .reshape(cur_batch_size, 1, self.dataset.node_num, 1) + .transpose(1, 2) + .contiguous() + ) + else: + node_lookback_labels = None + + self.get_batch_edge_index(cur_batch_size, self.device_count) + self.get_batch_edge_data(cur_batch_size, self.device_count) + + batch = self.get_output(node_lookback, node_lookback_labels, forecast_timestamps) + + yield batch + + def get_output( + self, + node_lookback: Tensor, + node_lookback_labels: Union[Tensor, None], + forecast_timestamps: List[str], + ): + if self.use_edge_weights: + self.edge_data = torch.squeeze(self.edge_data.reshape(-1, 1)) + + self.edge_index = self.edge_index.permute(1, 0, 2).contiguous().view(2, -1) + # node_lookahead not implemented + # when we get it in the future, we will implement it + batch = {} + batch["node_data"] = node_lookback[:, :, :, :] + batch["edge_index"] = self.edge_index + batch["edge_data"] = self.edge_data + batch["forecast_timestamps"] = forecast_timestamps + + if node_lookback_labels is not None: + batch["node_labels"] = node_lookback_labels + + return list(batch.values()) + + def __iter__(self): + return iter(self.generate()) diff --git a/notebooks/deepmc_neighbors/notebook_lib/base_deepmc.py b/notebooks/deepmc_neighbors/notebook_lib/base_deepmc.py new file mode 100644 index 00000000..83129eaa --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/base_deepmc.py @@ -0,0 +1,47 @@ +import os +from typing import Any, List + +import numpy as np +import onnxruntime +from numpy.typing import NDArray + +from vibe_notebook.deepmc.utils import transform_to_array + + +def inference_deepmc(model_path: str, data_x: NDArray[Any], inference_hours: int): + list_data_x = [] + for pred_idx in range(inference_hours): + model_onnx_path = os.path.join(model_path, f"model_{pred_idx}", "export.onnx") + session = onnxruntime.InferenceSession(model_onnx_path, None) + data_in = { + out.name: data_x[i].astype(np.float32) for i, out in enumerate(session.get_inputs()) + } + + result = session.run(None, input_feed=data_in)[0] + result = result.astype(np.float32) + result = transform_to_array(result, inference_hours) + result = result[..., 0] + list_data_x.append(result) + return list_data_x + + +def inference_deepmc_post( + model_path: str, + post_data_x: List[NDArray[Any]], +): + # Train Post-Processing Scaling Models + inshape = len(post_data_x) + mix_data_yhat = np.empty([post_data_x[0].shape[0], inshape, inshape]) + idx = 0 + + for pred_idx, train_yhat in enumerate(post_data_x): + post_model_onnx_path = os.path.join(model_path, f"model_{pred_idx}", "post", "export.onnx") + post_session = onnxruntime.InferenceSession(post_model_onnx_path, None) + data_in = { + out.name: train_yhat.astype(np.float32) + for i, out in enumerate(post_session.get_inputs()) + } + result = post_session.run(None, input_feed=data_in)[0] + mix_data_yhat[:, :, idx] = result + idx = idx + 1 + return mix_data_yhat diff --git a/notebooks/deepmc_neighbors/notebook_lib/base_model.py b/notebooks/deepmc_neighbors/notebook_lib/base_model.py new file mode 100644 index 00000000..78769485 --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/base_model.py @@ -0,0 +1,154 @@ +from typing import Any, Dict, List, Tuple, Union + +import torch +import torch.nn as nn +import torch.nn.functional as F +from torch import Tensor +from torch.nn import Conv1d, Linear +from torch.utils.data import TensorDataset +from torch_geometric_temporal.nn.recurrent import TGCN + +from .schema import BatchTGCNInputs + + +def get_batch(batch: Union[Tensor, List[Tensor], TensorDataset], use_edge_weights: bool): + if isinstance(batch, TensorDataset): + batch = batch[:] + node_data = batch[0] + edge_index = batch[1] + # used for training + # skipped during inference + if len(batch) == 5: + node_labels = batch[4] + else: + node_labels = torch.tensor([]) + + if use_edge_weights: + edge_data = batch[2] + else: + edge_data = torch.tensor([]) + return node_data, edge_index, edge_data, node_labels + + +class BaseModule(nn.Module): + def __init__(self, problem_params: Dict[str, Any]): + super().__init__() + self.batch_size = problem_params["batch_size"] + self.lookback_horizon = problem_params["lookback_horizon"] + self.lookahead_horizon = problem_params["lookahead_horizon"] + + # node + self.num_nodes = problem_params["node_num"] + self.node_in_fea_dim = problem_params["node_in_fea_dim"] + self.node_out_fea_dim = problem_params["node_out_fea_dim"] + self.node_input_dim = self.lookback_horizon * self.node_in_fea_dim + self.node_output_dim = self.lookahead_horizon * self.node_out_fea_dim + self.use_dropout = problem_params["use_dropout"] + + # edge + self.edge_in_fea_dim = problem_params["edge_in_fea_dim"] + self.edge_out_fea_dim = problem_params["edge_out_fea_dim"] + self.edge_input_dim = self.lookback_horizon * self.edge_in_fea_dim + self.edge_output_dim = self.lookahead_horizon * self.edge_out_fea_dim + + # Add day and hour embeddings + self.day_em_dim = problem_params["day_em_dim"] + self.hour_em_dim = problem_params["hour_em_dim"] + # 7 days + self.day_em = nn.Embedding(7, self.day_em_dim) + # 24 hours + self.hour_em = nn.Embedding(24, self.hour_em_dim) + + # GRU hidden him + self.hidden_dim = problem_params["hidden_dim"] + self.dropout = nn.Dropout2d(0.01) + + # linear layer + self.linear1_node = nn.Linear(self.hidden_dim, self.node_output_dim) + self.linear2_node = nn.Linear(self.node_in_fea_dim - 1, self.lookahead_horizon) + self.ar = nn.Linear(self.lookback_horizon, self.lookahead_horizon) + + # Multi-dimensional edge attribute to one dimension + self.edge_num = problem_params["edge_num"] + self.use_edge_weights = problem_params["use_edge_weights"] + self.linear_edge = nn.Linear(self.edge_in_fea_dim, 1) + + def weights_init(self, m: Union[Conv1d, Linear]): + if isinstance(m, Conv1d) or isinstance(m, Linear): + nn.init.xavier_uniform_(m.weight.data) + if m.bias is not None: + nn.init.zeros_(m.bias.data) + + def initialize_weights(self): + pass + + def forward(self, batch: Dict[str, Any]): + pass + + +class BatchTGCN(BaseModule): + def __init__( + self, + inputs: BatchTGCNInputs, + ): + super().__init__(inputs.dict()) + self.inputs = inputs.dict() + self.decoder_in_fea_dim = 2 + self.node_in_fea_dim = self.node_in_fea_dim + + self.tgcn_cell_encoder = TGCN(self.node_in_fea_dim, self.hidden_dim) + self.tgcn_cell_encoder1 = TGCN(self.node_in_fea_dim, self.hidden_dim) + + self.tgcn_cell_decoder = TGCN(self.decoder_in_fea_dim, self.hidden_dim) + self.tgcn_cell_decoder1 = TGCN(self.decoder_in_fea_dim, self.hidden_dim) + # stopping loop reference + self.get_batch = get_batch + self.dropout_encoder1 = nn.Dropout(0.05) + + def forward(self, inputs: Union[Tensor, List[Tensor]]): + node_data, edge_index, edge_data, _ = get_batch(inputs, self.use_edge_weights) + h = torch.empty + self.edge_index = edge_index # 2, num_edges + # Process edge + self.batch_size, self.num_nodes, _, _ = node_data.shape + hh, e = self.process(node_data, edge_data) + h = F.relu_(hh) + h = self.linear1_node(h) + h = h.reshape(self.batch_size, self.num_nodes, self.lookahead_horizon) # type: ignore + hh = hh.reshape(self.batch_size, self.num_nodes, self.hidden_dim) # type: ignore + return h, e, hh + + def get_hidden_embedding( + self, + horizon: int, + x: Tensor, + edge_weights: Union[Tensor, None], + ) -> Tuple[Tensor, Union[Tensor, None]]: + for i in range(horizon): + indices_lookback = torch.tensor(self.inputs["lookback_indices"]).to(x.device) + input = torch.index_select(x[:, :, i, :], 2, indices_lookback) + input = input.reshape(self.batch_size * self.num_nodes, -1) + h = self.tgcn_cell_encoder(input, self.edge_index, edge_weights) + h = F.relu(h) + h = self.dropout_encoder1(h) + return h, edge_weights + + def process( + self, + node_data: Tensor, + edge_data: Tensor, + ) -> Tuple[Tensor, Union[Tensor, None]]: + # Add hour and day embedding + horizon = self.lookback_horizon + x = node_data + + if self.use_dropout: + x = self.dropout(x) + + edge_weights = None + if self.use_edge_weights: + edge_weights = edge_data + + self.prev_input = x[:, :, -1, :horizon] + h, e = self.get_hidden_embedding(horizon, x, edge_weights) + return h, e diff --git a/notebooks/deepmc_neighbors/notebook_lib/base_modules.py b/notebooks/deepmc_neighbors/notebook_lib/base_modules.py new file mode 100644 index 00000000..34896c29 --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/base_modules.py @@ -0,0 +1,50 @@ +from typing import List, Union + +import pytorch_lightning as pl +from notebook_lib.base_model import BatchTGCN +from torch import Tensor, nn +from torch.optim import Adagrad + +from .schema import BatchTGCNInputs + + +class BatchTGCNTrain(pl.LightningModule): + def __init__( + self, + inputs: BatchTGCNInputs, + learning_rate: float = 0.001, + ): + super().__init__() + self.gnn = BatchTGCN(inputs) + self.loss = nn.MSELoss() + self.learning_rate = learning_rate + + def forward(self, batch: Union[Tensor, List[Tensor]]): + y_hat, _, _ = self.gnn(batch) + return y_hat + + def configure_optimizers(self): + optimizer = Adagrad( + self.parameters(), + lr=self.learning_rate, + initial_accumulator_value=1e-6, + eps=1e-6, + weight_decay=1e-6, + ) + return optimizer + + def training_step(self, train_batch: Union[Tensor, List[Tensor]], _): + _, _, _, node_labels = self.gnn.get_batch(train_batch, self.gnn.use_edge_weights) + y = node_labels + y_hat, _, _ = self.gnn(train_batch) + loss = self.loss(y_hat, y.reshape(y_hat.shape)) + self.log("train_loss/total", loss, on_epoch=True, prog_bar=True) + return loss + + def validation_step(self, validation_batch: Union[Tensor, List[Tensor]], _): + _, _, _, node_labels = self.gnn.get_batch(validation_batch, self.gnn.use_edge_weights) + y = node_labels + y_hat, _, _ = self.gnn(validation_batch) + loss = self.loss(y_hat, y.reshape(y_hat.shape)) + self.log("val_loss/total", loss, on_epoch=True, prog_bar=True) + return loss diff --git a/notebooks/deepmc_neighbors/notebook_lib/data_utils.py b/notebooks/deepmc_neighbors/notebook_lib/data_utils.py new file mode 100644 index 00000000..85ce7231 --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/data_utils.py @@ -0,0 +1,241 @@ +import os +import pickle +from typing import Any, Dict, List, Tuple, Union + +import numpy as np +import pandas as pd +import torch +from numpy.typing import NDArray +from sklearn.preprocessing import StandardScaler +from torch import Tensor +from torch.utils.data import DataLoader, TensorDataset + +from vibe_notebook.deepmc.utils import transform_to_array + +from .base_dataset import BatchSampler, GNNDataset +from .base_modules import BatchTGCNTrain + + +def build_scaler(train_embeddings: pd.DataFrame, forecast_hours: int) -> StandardScaler: + train_data_scaler = StandardScaler() + train_data_scaler.fit(train_embeddings.to_numpy()[:, :forecast_hours]) + return train_data_scaler + + +def build_scaler_label( + train_embeddings: pd.DataFrame, labels_column: str +) -> Tuple[StandardScaler, int]: + index = -1 + for i, column in enumerate(train_embeddings.columns): + if column == labels_column: + index = i + + if index == -1: + raise ValueError(f"Labels column '{labels_column}' not found") + + train_label_scaler = StandardScaler() + train_label_scaler.fit(np.expand_dims(train_embeddings.to_numpy()[:, index], axis=-1)) + return train_label_scaler, index + + +def get_batch_sample( + train_dataset: GNNDataset, + test_dataset: GNNDataset, + batch_size: int, + lookahead_horizon: int, + lookback_horizon: int, + device: torch.device, + use_edge_weights: bool, +) -> Tuple[BatchSampler, BatchSampler]: + train_sampler = BatchSampler( + dataset=train_dataset, + batch_size=batch_size, + lookahead_horizon=lookahead_horizon, + lookback_horizon=lookback_horizon, + device=device, + random=False, + use_edge_weights=use_edge_weights, + ) + + test_sampler = BatchSampler( + dataset=test_dataset, + batch_size=batch_size, + lookahead_horizon=lookahead_horizon, + lookback_horizon=lookback_horizon, + device=device, + random=False, + use_edge_weights=use_edge_weights, + ) + + return (train_sampler, test_sampler) + + +def train_test_dataset( + train_data: pd.DataFrame, + test_data: pd.DataFrame, + step: int, + neighbors_station: Dict[str, Any], + scaler_data: StandardScaler, + scaler_label: StandardScaler, + infer_station: str, + labels_column_index: int, +) -> Tuple[GNNDataset, GNNDataset]: + train_dataset = GNNDataset( + train_data, + forecast_step=step, + scaler_input=scaler_data, + scaler_label=scaler_label, + neighbor_station=neighbors_station, + forecast_hours=24, + infer_station=infer_station, + label_column_index=labels_column_index, + ) + + test_dataset = GNNDataset( + test_data, + forecast_step=step, + scaler_input=scaler_data, + scaler_label=scaler_label, + neighbor_station=neighbors_station, + forecast_hours=24, + infer_station=infer_station, + label_column_index=labels_column_index, + ) + + return (train_dataset, test_dataset) + + +def problem_params( + dataset: GNNDataset, + batch_size: int, + lookback_horizon: int, + lookahead_horizon: int, + use_edge_weights: bool, + use_dropout: bool, + hidden_dim: int, + forecast_hours: int, +) -> Dict[str, Any]: + problem_params = { + "lookback_horizon": lookback_horizon, + "lookahead_horizon": lookahead_horizon, + "node_num": dataset.node_num, + "node_in_fea_dim": dataset.node_fea_dim, + "node_out_fea_dim": 1, + "edge_in_fea_dim": dataset.edge_fea_dim, + "edge_out_fea_dim": 1, + "edge_num": dataset.edge_num, + "use_edge_weights": use_edge_weights, + "day_em_dim": 1, + "hour_em_dim": 1, + "period": 5, # for attention model + "batch_size": batch_size, + "use_dropout": use_dropout, + "hidden_dim": hidden_dim, + "device_count": torch.cuda.device_count(), + "lookback_indices": list(range(forecast_hours)), + } + + return problem_params + + +def export_to_onnx( + file_path: str, + model: BatchTGCNTrain, + inputs: DataLoader, # type: ignore + use_edge_weights: bool, + edge_num: int, + number_of_stations: int, +): + data = next(iter(inputs)) + node_data, edge_index, edge_data, _ = get_batch(data, use_edge_weights) + data = { + "node_data": node_data[:number_of_stations], + "edge_index": edge_index[:, : (edge_num * number_of_stations)], + "edge_data": edge_data[: (edge_num * number_of_stations)], + } + keys = list(data.keys()) + batch_axes = {keys[i]: {0: "batch_size"} for i in range(len(keys))} + onnx_output_path = os.path.join(file_path, "model_output.onnx") + if os.path.exists(onnx_output_path): + os.remove(onnx_output_path) + + # Export the model + torch.onnx.export( + model, + list(data.values()), # type: ignore + onnx_output_path, + input_names=list(batch_axes.keys()), + dynamic_axes=batch_axes, + opset_version=16, + ) + + +def write_to_file(output_file: str, data: List[Any]): + with open(output_file, "wb") as f: + pickle.dump(data, f) + + +def get_file(file_path: str) -> List[Any]: + if os.path.exists(file_path): + with open(file_path, "rb") as f: + return pickle.load(f) + else: + raise Exception(f"File {file_path} not found") + + +def get_batch(batch: Union[Tensor, List[Tensor], TensorDataset], use_edge_weights: bool): + if type(batch) == TensorDataset: + batch = batch[:] + node_data = batch[0] + edge_index = batch[1] + # considered for training + # skipped during inference + if len(batch) == 5: + node_labels = batch[4] + else: + node_labels = torch.tensor([]) + + if use_edge_weights: + edge_data = batch[2] + else: + edge_data = torch.tensor([]) + return node_data, edge_index, edge_data, node_labels + + +def smooth(y: List[float], box_pts: int): + box = np.ones(box_pts) / box_pts + y_smooth = np.convolve(y, box, mode="same") + return y_smooth + + +def get_split_data(split_data: NDArray[Any], timestamps: NDArray[Any], split_at_index: int): + split_by_index = [] + for i in range(split_at_index): + data_at_index = split_data[i::split_at_index][:, i] + timestamp_at_index = timestamps[i::split_at_index] + split_by_index.append( + pd.DataFrame(zip(timestamp_at_index, data_at_index), columns=["timestamp", "label"]) + ) + + split_data_df = pd.concat(split_by_index, axis=0, ignore_index=True) + split_data_df["timestamp"] = pd.to_datetime(split_data_df["timestamp"]) + split_data_df = split_data_df.sort_values(by="timestamp") + + return np.array(split_data_df["label"].values) + + +def preprocess_transform( + mix_data_yhat: NDArray[Any], + inference_hours: int, + dates_list: NDArray[Any], +): + init_start = 0 + data_list = [] + end = mix_data_yhat.shape[0] + for i in range(init_start, end, inference_hours): + for j in range(inference_hours): + data_list.append(mix_data_yhat[i, 0, j]) + + mix_data_yhat = transform_to_array(np.array(data_list))[: mix_data_yhat.shape[0]] + dates_list = dates_list[: mix_data_yhat.shape[0]] + return mix_data_yhat, dates_list diff --git a/notebooks/deepmc_neighbors/notebook_lib/embeddings.py b/notebooks/deepmc_neighbors/notebook_lib/embeddings.py new file mode 100644 index 00000000..012f8a4a --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/embeddings.py @@ -0,0 +1,235 @@ +import os +from datetime import datetime +from typing import Any, Dict, List + +import pandas as pd + +from .data_utils import get_file + + +def construct_neighbor_stations(stations: List[Dict[str, Any]]): + neighbors = {"stations": [], "coordinates": {}} + for station in stations: + neighbors["stations"].append(station["name"]) + neighbors["coordinates"][station["name"]] = station["coordinates"] + + return neighbors + + +def get_deepmc_post_results(root_path: str, stations: List[Dict[str, Any]], model_type: str): + predict_out = {} + for station in stations: + deepmc_post_path = os.path.join( + root_path, station["name"], model_type, "embeddings", "post_processed_results.pkl" + ) + ( + intermediate_test, + intermediate_train, + _, + _, + train_labels_station, + test_labels_station, + out_train_dates, + out_test_dates, + ) = get_file(deepmc_post_path) + predict_out[station["name"]] = ( + intermediate_train, + intermediate_test, + train_labels_station, + test_labels_station, + out_train_dates, + out_test_dates, + ) + + return predict_out + + +def get_date(stations: Dict[str, Any], data_index: int = -2, date_type: int = 0): + """Retrieves the start date and end date by comparing data of all stations. + :param stations: Dictionary with station name as key and values + with collection of station information used to generate embeddings. + + :param data_index: It defines position of data in array. + will use -2 for train, -1 for test, 1 for inference. + + :param date_type: 0 for start_date, -1 for end_date. + + return: date. + """ + station_name = next(iter(stations)) + station_values = stations[station_name] + date = datetime.strptime(station_values[data_index][date_type], "%Y-%m-%d %H:%M:%S") + for station_values in stations.values(): + try: + s_date = datetime.strptime(station_values[data_index][date_type], "%Y-%m-%d %H:%M:%S") + # for start date + if date_type == 0 and date < s_date: + date = s_date + # for end date + if date_type == -1 and date > s_date: + date = s_date + except Exception as e: + print(e) + return date + + +def create_embeddings( + stations: List[Dict[str, Any]], + inference_hours: int, + root_path: str, + model_type: str, +): + neighbor_stations = construct_neighbor_stations(stations) + predict_out = get_deepmc_post_results(root_path, stations, model_type) + + # get start date + train_start_date = get_date(predict_out, data_index=-2, date_type=0) + test_start_date = get_date(predict_out, data_index=-1, date_type=0) + + # get end date + train_end_date = get_date(predict_out, data_index=-2, date_type=-1) + test_end_date = get_date(predict_out, data_index=-1, date_type=-1) + + test_start_date = datetime.strptime( + test_start_date.strftime("%Y-%m-%d") + " " + train_start_date.strftime("%H:%M:%S"), + "%Y-%m-%d %H:%M:%S", + ) + + df_train_embeddings = process_embeddings( + predict_out=predict_out, + inference_hours=inference_hours, + neighbor_stations=neighbor_stations, + start_date=train_start_date, + end_date=train_end_date, + data_index=0, + label_index=2, + timestamp_index=4, + ) + + df_test_embeddings = process_embeddings( + predict_out=predict_out, + inference_hours=inference_hours, + neighbor_stations=neighbor_stations, + start_date=test_start_date, + end_date=test_end_date, + data_index=1, + label_index=3, + timestamp_index=5, + ) + + return df_train_embeddings, df_test_embeddings + + +def create_embeddings_inference( + stations: List[Dict[str, Any]], + inference_hours: int, + deepmc_post_results: Dict[str, Any], +): + neighbor_stations = construct_neighbor_stations(stations) + inference_start_date = get_date(deepmc_post_results, data_index=1, date_type=0) + inference_end_date = get_date(deepmc_post_results, data_index=1, date_type=-1) + + df_embeddings = get_inference_embeddings( + predict_out=deepmc_post_results, + inference_hours=inference_hours, + neighbor_stations=neighbor_stations, + start_date=inference_start_date, + end_date=inference_end_date, + ) + + return df_embeddings + + +def get_inference_embeddings( + predict_out: Dict[str, Any], + inference_hours: int, + neighbor_stations: Dict[str, Any], + start_date: datetime, + end_date: datetime, +): + embeddings = [] + for station in neighbor_stations["stations"]: + df = pd.DataFrame( + predict_out[station][0].reshape( + predict_out[station][0].shape[0], predict_out[station][0].shape[2] + ), + columns=list(range(inference_hours)), + ) + timestamps = predict_out[station][1] + + df["station"] = station + df["timestamp"] = timestamps + df["timestamp"] = pd.to_datetime(df["timestamp"], format="%Y-%m-%d %H:%M:%S") + + mask = (df["timestamp"] >= start_date) & (df["timestamp"] <= end_date) + df = df.loc[mask] + + df.reset_index(drop=True, inplace=True) + df["forecast_step"] = df.index + embeddings.append(df) + + df_embeddings = pd.concat(embeddings, axis=0) + df_embeddings.sort_values(by=["forecast_step", "station"], inplace=True) + return df_embeddings + + +def process_embeddings( + predict_out: Dict[str, Any], + inference_hours: int, + neighbor_stations: Dict[str, Any], + start_date: datetime, + end_date: datetime, + data_index: int, + label_index: int, + timestamp_index: int, +): + """ + Process embeddings for train or test data. + + :param predict_out: Dictionary with station name as key and values. It's output of deepmc post processing. + :param inference_hours: Number of hours to predict. + :param neighbor_stations: Dictionary with stations and coordinates. + :param start_date: Start date for embeddings. + :param end_date: End date for embeddings. + :param data_index: Index of train or test data in predict_out. The pickle file + generated by deepmc follows this index train=0, test=1 + :param label_index: Index of train or test labels in predict_out. The pickle file + generated by deepmc follows this index train=2, test=3 + :param timestamp_index: Index of train or test timestamps in predict_out. The pickle file + generated by deepmc follows this index train=4, test=5 + """ + embeddings = [] + for station in neighbor_stations["stations"]: + df = pd.DataFrame( + predict_out[station][data_index].reshape( + predict_out[station][data_index].shape[0], predict_out[station][data_index].shape[2] + ), + columns=list(range(inference_hours)), + ) + + labels = predict_out[station][label_index] + timestamps = predict_out[station][timestamp_index] + + df["station"] = station + if len(timestamps) < len(labels): + labels = labels[: len(timestamps)] + + df["labels"] = labels + + if len(timestamps) > len(labels): + timestamps = timestamps[: len(labels)] + df["timestamp"] = timestamps + + df["timestamp"] = pd.to_datetime(df["timestamp"], format="%Y-%m-%d %H:%M:%S") + + mask = (df["timestamp"] >= start_date) & (df["timestamp"] <= end_date) + df = df.loc[mask] + + df.reset_index(drop=True, inplace=True) + df["forecast_step"] = df.index + + embeddings.append(df) + + df_embeddings = pd.concat(embeddings, axis=0) + df_embeddings.sort_values(by=["forecast_step", "station"], inplace=True) + return df_embeddings diff --git a/notebooks/deepmc_neighbors/notebook_lib/post_deepmc.py b/notebooks/deepmc_neighbors/notebook_lib/post_deepmc.py new file mode 100644 index 00000000..77191ab3 --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/post_deepmc.py @@ -0,0 +1,271 @@ +import os +import pickle +from typing import Any, Dict, List + +import numpy as np +import pandas as pd +from notebook_lib.base_deepmc import inference_deepmc, inference_deepmc_post +from notebook_lib.data_utils import get_file, preprocess_transform +from numpy.typing import NDArray +from sklearn.preprocessing import StandardScaler + +from vibe_notebook.deepmc.utils import get_csv_data, transform_to_array_3D + + +def write_embeddings_input( + embeddings_input_path: str, + data_scaler: StandardScaler, + mix_yhat: NDArray[Any], + mix_train_yhat: NDArray[Any], + mix_yc: NDArray[Any], + mix_train_yc: NDArray[Any], + train_y: NDArray[Any], + test_y: NDArray[Any], + train_dates_list: NDArray[Any], + test_dates_list: NDArray[Any], +): + if os.path.exists(embeddings_input_path): + os.remove(embeddings_input_path) + + p_path_dir = os.path.dirname(embeddings_input_path) + if not os.path.exists(p_path_dir): + os.makedirs(p_path_dir) + + # Inverse transform outputs, save results + with open( + embeddings_input_path, + "wb", + ) as f: + mix_yhat = np.expand_dims(np.array(data_scaler.inverse_transform(mix_yhat[:, :])), axis=1) + mix_yc = np.expand_dims(np.array(data_scaler.inverse_transform(mix_yc[:, 0, :])), axis=1) + mix_train_yhat = np.expand_dims( + np.array(data_scaler.inverse_transform(mix_train_yhat[:, :])), axis=1 + ) + mix_train_yc = np.expand_dims( + np.array(data_scaler.inverse_transform(mix_train_yc[:, 0, :])), axis=1 + ) + train_dates_list = train_dates_list[:, 0] + test_dates_list = test_dates_list[:, 0] + train_labels = np.array(data_scaler.inverse_transform(np.rollaxis(train_y, 2, 1)[:, 0, :])) + test_labels = np.array(data_scaler.inverse_transform(np.rollaxis(test_y, 2, 1)[:, 0, :])) + train_labels = train_labels[:, 0] + test_labels = test_labels[:, 0] + pickle.dump( + [ + mix_yhat, + mix_train_yhat, + mix_yc, + mix_train_yc, + train_labels, + test_labels, + train_dates_list, + test_dates_list, + ], + f, + ) + + return mix_yhat, mix_train_yhat, mix_yc, mix_train_yc, train_labels, test_labels + + +def get_date_range( + stations: List[Dict[str, Any]], infer_station_name: str, root_path: str, model_type: str +): + for station in stations: + if station["name"] != infer_station_name: + model_path = os.path.join(root_path, station["name"], model_type) + train_data_path = os.path.join(model_path, "train_data_dates.pkl") + ( + _, + _, + _, + _, + _, + _, + _, + train_dates_list, + _, + test_dates_list, + ) = get_file(train_data_path) + + return (train_dates_list, test_dates_list) + raise Exception("No station found to get date range") + + +def get_station_object(stations: List[Dict[str, Any]], infer_station_name: str): + station, column_name = None, None + for stations_dict in stations: + if stations_dict["name"] == infer_station_name: + station = stations_dict["name"] + column_name = stations_dict["column_name"] + return station, column_name + + raise Exception(f"No station found with name {infer_station_name}") + + +def dump_forecast_output( + train_df: pd.DataFrame, + test_df: pd.DataFrame, + model_path: str, + column_name: str, + train_dates_list: List[str], + test_dates_list: List[str], + inference_hours: int, +): + train_data = np.array(train_df[column_name].values) + test_data = np.array(test_df[column_name].values) + mix_train_yhat = transform_to_array_3D(train_data[:-inference_hours], inference_hours) + mix_train_y = transform_to_array_3D(train_data[inference_hours:], inference_hours) + mix_test_yhat = transform_to_array_3D(test_data[:-inference_hours], inference_hours) + mix_test_y = transform_to_array_3D(test_data[inference_hours:], inference_hours) + out_dir = os.path.join(model_path, "embeddings") + if not os.path.exists(out_dir): + os.makedirs(out_dir) + + out_path = os.path.join(out_dir, "post_processed_results.pkl") + + # Inverse transform outputs, save results + with open(out_path, "wb") as f: + train_labels = mix_train_y.squeeze() + test_labels = mix_test_y.squeeze() + train_labels = train_labels[:, 0] + test_labels = test_labels[:, 0] + + pickle.dump( + [ + mix_test_yhat, + mix_train_yhat, + mix_test_y, + mix_train_y, + train_labels, + test_labels, + train_dates_list, + test_dates_list, + ], + f, + ) + + +def embeddings_preprocess_forecast( + stations: List[Dict[str, Any]], + infer_station_name: str, + root_path: str, + input_data_path: str, + forecast_interval: int, + model_type: str, + column_name: str, +): + model_path = os.path.join(root_path, infer_station_name, model_type) + forecast_df = get_csv_data(input_data_path) + train_dates_list, test_dates_list = get_date_range( + stations, infer_station_name, root_path, model_type + ) + train_df = forecast_df[forecast_df.index.isin(train_dates_list[:, 0])] + test_df = forecast_df[forecast_df.index.isin(test_dates_list[:, 0])] + + train_dates_list = ( + train_df[forecast_interval:].index.strftime("%Y-%m-%d %H:%M:%S").tolist() # type: ignore + ) + test_dates_list = ( + test_df[forecast_interval:].index.strftime("%Y-%m-%d %H:%M:%S").tolist() # type: ignore + ) + + dump_forecast_output( + train_df, + test_df, + model_path, + column_name, + train_dates_list, + test_dates_list, + forecast_interval, + ) + + +def embeddings_preprocess_deepmc( + model_path: str, + inference_hours: int, +): + train_data_path = os.path.join(model_path, "train_data_dates.pkl") + ( + train_X, + train_y, + test_X, + test_y, + _, + output_scaler1, + _, + train_dates_list, + _, + test_dates_list, + ) = get_file(train_data_path) + + list_train_X = inference_deepmc(model_path, train_X, inference_hours) + list_test_X = inference_deepmc(model_path, test_X, inference_hours) + + # Train data deepmc inference Post-Processing + mix_train_yc = preprocess_post_deepmc_gt(list_train_X, train_y, inference_hours) + mix_train_yhat = inference_deepmc_post(model_path, list_train_X) + + # Test data deepmc inference Post-Processing + mix_yc = preprocess_post_deepmc_gt(list_test_X, test_y, inference_hours) + mix_yhat = inference_deepmc_post(model_path, list_test_X) + + mix_train_yhat, train_dates_list = preprocess_transform( + mix_train_yhat, inference_hours, train_dates_list + ) + mix_yhat, test_dates_list = preprocess_transform(mix_yhat, inference_hours, test_dates_list) + embeddings_input_path = os.path.join(model_path, "embeddings", "post_processed_results.pkl") + + # Inverse transform outputs, save results + write_embeddings_input( + embeddings_input_path, + output_scaler1, + mix_yhat, + mix_train_yhat, + mix_yc, + mix_train_yc, + train_y, + test_y, + train_dates_list, + test_dates_list, + ) + + +def preprocess_post_deepmc_gt( + post_data_x: List[NDArray[Any]], data_y: NDArray[Any], inference_hours: int +): + data_y = data_y[: data_y.shape[0] - inference_hours] + mix_data_gt = np.empty([data_y.shape[0], data_y.shape[1], len(post_data_x)]) + + idx = 0 + for _, _ in enumerate(post_data_x): + mix_data_gt[:, :, idx] = mix_data_gt[:, idx, :] + idx = idx + 1 + + return mix_data_gt + + +def initialize_embeddings_preprocessing( + infer_station_name: str, + stations: List[Dict[str, Any]], + root_path: str, + infer_forecast_data_path: str, + infer_interval: int, + model_type: str, +): + for station in stations: + model_path = os.path.join(root_path, station["name"], model_type) + if station["name"] == infer_station_name: + embeddings_preprocess_forecast( + stations, + infer_station_name, + root_path, + infer_forecast_data_path, + infer_interval, + model_type, + station["column_name"], + ) + else: + embeddings_preprocess_deepmc( + model_path, + inference_hours=24, + ) diff --git a/notebooks/deepmc_neighbors/notebook_lib/post_deepmc_inference.py b/notebooks/deepmc_neighbors/notebook_lib/post_deepmc_inference.py new file mode 100644 index 00000000..eb6065ef --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/post_deepmc_inference.py @@ -0,0 +1,268 @@ +import os +from datetime import datetime +from typing import Any, Dict, List, Tuple + +import numpy as np +import pandas as pd +from notebook_lib.base_deepmc import inference_deepmc, inference_deepmc_post +from notebook_lib.data_utils import preprocess_transform +from numpy.typing import NDArray +from shapely import geometry +from sklearn.preprocessing import StandardScaler + +from vibe_notebook.deepmc import prediction, utils +from vibe_notebook.deepmc.forecast import Forecast +from vibe_notebook.deepmc.utils import get_csv_data, transform_to_array_3D + +HRRR_PARAMETERS = [ + {"weather_type": "temperature", "search_text": "TMP:2 m"}, + {"weather_type": "humidity", "search_text": "RH:2 m"}, + {"weather_type": "u-component", "search_text": "UGRD:10 m"}, + {"weather_type": "v-component", "search_text": "VGRD:10 m"}, +] + + +def get_date_range( + stations: List[Dict[str, Any]], + infer_station_name: str, + deepmc_inference_results: Dict[str, Any], +): + for station in stations: + if station["name"] != infer_station_name: + (_, dates_list, _, _) = deepmc_inference_results[station["name"]] + dates_list = np.squeeze(np.array(dates_list)[:, 0]) + dates_list = dates_list[:, 0] + return dates_list + + raise Exception("No station found to get date range") + + +def get_station_object(stations: List[Dict[str, Any]], infer_station_name: str): + station, column_name = None, None + for stations_dict in stations: + if stations_dict["name"] == infer_station_name: + station = stations_dict["name"] + column_name = stations_dict["column_name"] + return station, column_name + + if station is None: + raise Exception(f"No station found with name {infer_station_name}") + + +def embeddings_preprocess_forecast( + stations: List[Dict[str, Any]], + infer_station_name: str, + input_data_path: str, + forecast_interval: int, + deepmc_inference_results: Dict[str, Any], + column_name: str, +): + forecast_df = get_csv_data(input_data_path) + dates_list = get_date_range(stations, infer_station_name, deepmc_inference_results) + data_df = forecast_df[forecast_df.index.isin(dates_list)] + + dates_list = ( + data_df[forecast_interval:].index.strftime("%Y-%m-%d %H:%M:%S").tolist() # type: ignore + ) + + data_forecast = np.array(data_df[column_name].values) + data_forecast = transform_to_array_3D(data_forecast[:], forecast_interval) + + return data_forecast, dates_list + + +def embeddings_preprocess_deepmc( + model_path: str, + inference_hours: int, + deepmc_inference_results: Tuple[NDArray[Any], NDArray[Any], StandardScaler, StandardScaler], +): + (data_x, dates_list, _, output_scaler) = deepmc_inference_results + + deepmc_out = inference_deepmc(model_path, data_x, inference_hours) + + # Train Post-Processing Scaling Models + mix_yhat = inference_deepmc_post(model_path, deepmc_out) + mix_yhat, dates_list = preprocess_transform(mix_yhat, inference_hours, dates_list) + dates_list = np.squeeze(np.array(dates_list)[:, 0]) + dates_list = dates_list[:, 0] + dates_list = pd.to_datetime(dates_list).strftime("%Y-%m-%d %H:%M:%S") + mix_yhat = np.expand_dims(np.array(output_scaler.inverse_transform(mix_yhat[:, :])), axis=1) + return mix_yhat, dates_list + + +def inference_embeddings_preprocessing( + infer_station_name: str, + stations: List[Dict[str, Any]], + root_path: str, + infer_forecast_data_path: str, + infer_interval: int, + model_type: str, + deepmc_inference_results: Dict[str, Any], +): + process_out = {} + for station in stations: + model_path = os.path.join(root_path, station["name"], model_type) + if station["name"] == infer_station_name: + process_out[station["name"]] = embeddings_preprocess_forecast( + stations, + infer_station_name, + infer_forecast_data_path, + infer_interval, + deepmc_inference_results, + station["column_name"], + ) + else: + process_out[station["name"]] = embeddings_preprocess_deepmc( + model_path, + infer_interval, + deepmc_inference_results[station["name"]], + ) + return process_out + + +def download_forecast_data( + stations: List[Dict[str, Any]], + start_date: datetime, + end_date: datetime, +): + parameters = HRRR_PARAMETERS + hrrr_data_workflow = "data_ingestion/weather/herbie_forecast" + time_range = (start_date, end_date) + forecast_dataset = {} + + for station in stations: + # AGWeatherNet station + station_name = station["name"] + station_location = station["coordinates"] + station_geometry = geometry.Point(station_location) + + forecast_ = Forecast( + workflow_name=hrrr_data_workflow, + geometry=station_geometry, + time_range=time_range, + parameters=parameters, + ) + run_list = forecast_.submit_download_request() + + p_forecast_dataset = forecast_.get_downloaded_data(run_list=run_list, offset_hours=-8) + p_forecast_dataset = utils.convert_forecast_data(p_forecast_dataset) + forecast_dataset[station_name] = p_forecast_dataset + return forecast_dataset + + +def get_historical_data( + stations: List[Dict[str, Any]], + historical_data_path: str, + historical_dataset_features: List[str], + inference_station: str, +): + historical_datasets = {} + for station in stations: + if station["name"] != inference_station: + p = historical_data_path % station["name"] + historical_df = utils.get_csv_data(path=p, interpolate=False, fill_na=False) + historical_df = historical_df[historical_dataset_features] + + historical_datasets[station["name"]] = historical_df + + return historical_datasets + + +def concat_historical_forecast( + stations: List[Dict[str, Any]], + historical_data_path: str, + hrrr_datasets: Dict[str, pd.DataFrame], + start_date: datetime, + end_date: datetime, + inference_station: str, + historical_dataset_features: List[str] = ["humidity", "wind_speed", "temperature"], + forecast_dataset_features: List[str] = [ + "humidity_forecast", + "wind_speed_forecast", + "temperature_forecast", + ], + frequency_hour: int = 1, + number_of_hours: int = 24, + weather_inference_type: str = "temperature", +): + historical_datasets = get_historical_data( + stations, historical_data_path, historical_dataset_features, inference_station + ) + + dataset_variables = historical_dataset_features.copy() + dataset_variables.extend(forecast_dataset_features) + dataset_variables.sort() + + out_dataset = {} + for station, historical_df in historical_datasets.items(): + forecast_df = hrrr_datasets[station] + + input_df = utils.clean_relevant_data_using_hrrr( + actual_df=historical_df.copy(), + forecast_df=forecast_df.copy(), + out_variables=dataset_variables, + freq_hours=frequency_hour, + num_of_indices=number_of_hours, + start_date=start_date, + end_date=end_date, + ) + + input_df = input_df[dataset_variables] + input_df = input_df[input_df.columns] + out_feature_df = input_df[weather_inference_type] + input_df.drop(columns=[weather_inference_type], inplace=True) + input_df[weather_inference_type] = out_feature_df + out_dataset[station] = input_df + + return out_dataset + + +def run_deepmc_inference( + root_path: str, + model_type: str, + out_features: List[str], + stations: List[Dict[str, Any]], + historical_data_path: str, + hrrr_datasets: Dict[str, pd.DataFrame], + start_date: datetime, + end_date: datetime, + inference_station: str, + historical_dataset_features: List[str] = ["humidity", "wind_speed", "temperature"], + forecast_dataset_features: List[str] = [ + "humidity_forecast", + "wind_speed_forecast", + "temperature_forecast", + ], + frequency_hour: int = 1, + number_of_hours: int = 24, + weather_inference_type: str = "temperature", +): + historical_clean_dataset = concat_historical_forecast( + stations, + historical_data_path, + hrrr_datasets, + start_date, + end_date, + inference_station, + historical_dataset_features, + forecast_dataset_features, + frequency_hour, + number_of_hours, + weather_inference_type, + ) + + inference_output = {} + for station, clean_dataset in historical_clean_dataset.items(): + train_data_export_path = os.path.join(root_path, station, model_type, "train_data.pkl") + + weather_forecast = prediction.InferenceWeather( + root_path=root_path, + data_export_path=train_data_export_path, + station_name=station, + predicts=out_features, + relevant=True, + ) + + inference_output[station] = weather_forecast.deepmc_preprocess(clean_dataset, "temperature") + + return inference_output diff --git a/notebooks/deepmc_neighbors/notebook_lib/schema.py b/notebooks/deepmc_neighbors/notebook_lib/schema.py new file mode 100644 index 00000000..a9868007 --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/schema.py @@ -0,0 +1,23 @@ +from typing import List + +from pydantic import BaseModel + + +class BatchTGCNInputs(BaseModel): + lookback_horizon: int + lookahead_horizon: int + node_num: int + node_in_fea_dim: int + node_out_fea_dim: int + edge_in_fea_dim: int + edge_out_fea_dim: int + edge_num: int + use_edge_weights: bool + day_em_dim: int + hour_em_dim: int + period: int + batch_size: int + use_dropout: bool + hidden_dim: int + device_count: int + lookback_indices: List[int] diff --git a/notebooks/deepmc_neighbors/notebook_lib/train.py b/notebooks/deepmc_neighbors/notebook_lib/train.py new file mode 100644 index 00000000..84b84c9a --- /dev/null +++ b/notebooks/deepmc_neighbors/notebook_lib/train.py @@ -0,0 +1,516 @@ +import os +import shutil +import warnings +from datetime import datetime +from typing import Any, Dict, List, Union + +import numpy as np +import onnxruntime +import pandas as pd +import pytorch_lightning as pl +import torch +from matplotlib import pyplot as plt +from notebook_lib.embeddings import create_embeddings, create_embeddings_inference +from notebook_lib.post_deepmc import initialize_embeddings_preprocessing +from notebook_lib.post_deepmc_inference import ( + inference_embeddings_preprocessing, + run_deepmc_inference, +) +from pytorch_lightning.callbacks import LearningRateMonitor, ModelCheckpoint +from sklearn.preprocessing import StandardScaler +from torch.utils.data import DataLoader + +from vibe_notebook.deepmc.utils import calculate_KPI, get_csv_data + +from .base_dataset import BatchSampler, GNNDataset +from .base_modules import BatchTGCNInputs, BatchTGCNTrain +from .data_utils import ( + build_scaler, + build_scaler_label, + export_to_onnx, + get_batch, + get_batch_sample, + get_file, + get_split_data, + problem_params, + smooth, + train_test_dataset, + write_to_file, +) + + +class MC_Neighbors: + def __init__( + self, + root_dir: str, + hidden_dim: int = 528, + lookahead_horizon: int = 1, + lookback_horizon: int = 1, + learning_rate: float = 0.001, + use_dropout: bool = False, + use_edge_weights: bool = False, + device_type: str = "cpu", # cuda, cpu + labels_column: str = "labels", + weather_type: str = "temperature", + model_type: str = "relevant", + ): + """ + Initialize the MC_Neighbors. + + :param root_dir: Path to trained model and preprocessed files. + :param hidden_dim: Input dimension transforms it to linear layer. + :param lookahead_horizon: Number of hours to lookahead. + :param lookback_horizon: Number of hours to lookback. + :param learning_rate: The learning rate of the model. + :param use_dropout: True or False to use dropout layer for model training. + :param use_edge_weights: True or False. If True consider spatial distance + between stations for model training. + :param device_type: The device type of the model. + :param labels_column: The labels column of the dataset. + :param weather_type: Purpose of trained model. It can be temperature or wind_speed etc.,. + :param model_type: relevant or not-relevant. + """ + self.weather_type = weather_type + self.root_dir = root_dir + self.lookahead_horizon = lookahead_horizon + self.lookback_horizon = lookback_horizon + self.hidden_dim = hidden_dim + self.learning_rate = learning_rate + self.use_dropout = use_dropout + self.use_edge_weights = use_edge_weights + self.labels_column = labels_column + self.device = torch.device( + device_type if device_type == "cuda" and torch.cuda.is_available() else "cpu" + ) + self.model_type = model_type + + def gnn_output_dir(self, infer_station: str): + if self.use_edge_weights: + edge_weights = "edge_weights" + else: + edge_weights = "no_edge_weights" + return os.path.join( + self.root_dir, + infer_station, + self.model_type, + "gnn_models", + edge_weights, + ) + + def gnn_preprocess_file(self, infer_station: str): + output_dir = self.gnn_output_dir(infer_station) + return os.path.join(output_dir, "pre_process_data_export.json") + + def run_train( + self, + train_embeddings: pd.DataFrame, + test_embeddings: pd.DataFrame, + neighbor_stations: List[Dict[str, Any]], + infer_station: str, + epochs: int, + batch_size: int, + forecast_hours: int, + ) -> None: + self.output_dir = self.gnn_output_dir(infer_station) + stations = self.get_neighbor_stations(neighbor_stations) + scaler_data = build_scaler(train_embeddings.copy(), forecast_hours) + scaler_label, labels_column_index = build_scaler_label( + train_embeddings.copy(), self.labels_column + ) + data_export_path = self.gnn_preprocess_file(infer_station) + if not os.path.exists(data_export_path): + os.makedirs(os.path.dirname(data_export_path), exist_ok=True) + write_to_file(data_export_path, data=[scaler_data, scaler_label, labels_column_index]) + + self.initialize_train( + train_embeddings, + test_embeddings, + stations, + infer_station, + epochs, + batch_size, + forecast_hours, + scaler_data, + scaler_label, + labels_column_index, + ) + + def initialize_train( + self, + train_embeddings: pd.DataFrame, + test_embeddings: pd.DataFrame, + neighbors_station: Dict[str, Any], + infer_station: str, + epochs: int, + batch_size: int, + forecast_hours: int, + scaler_data: StandardScaler, + scaler_label: StandardScaler, + labels_column_index: int, + ): + for step in range(forecast_hours): + train_dataset, test_dataset = train_test_dataset( + train_data=train_embeddings, + test_data=test_embeddings, + step=step, + neighbors_station=neighbors_station, + scaler_data=scaler_data, + scaler_label=scaler_label, + infer_station=infer_station, + labels_column_index=labels_column_index, + ) + + train_sampler, test_sampler = get_batch_sample( + train_dataset=train_dataset, + test_dataset=test_dataset, + batch_size=batch_size, + lookahead_horizon=self.lookahead_horizon, + lookback_horizon=self.lookback_horizon, + device=self.device, + use_edge_weights=self.use_edge_weights, + ) + + inputs = BatchTGCNInputs( + **problem_params( + train_dataset, + batch_size, + self.lookback_horizon, + self.lookahead_horizon, + self.use_edge_weights, + self.use_dropout, + self.hidden_dim, + forecast_hours, + ) + ) + model = BatchTGCNTrain(inputs, self.learning_rate) + model.to(self.device) + self.train_model(model, epochs, train_sampler, test_sampler, step) + + def train_model( + self, + model: BatchTGCNTrain, + epochs: int, + train_sampler: BatchSampler, + test_sampler: BatchSampler, + forecast_step: int, + ): + if not os.path.exists(self.output_dir): + os.makedirs(self.output_dir) + + model_path = "{}/model_{}".format(self.output_dir, forecast_step) + + if os.path.exists(model_path): + shutil.rmtree(model_path, ignore_errors=True) + + os.makedirs(model_path, exist_ok=True) + + # batch_size is set to None to avoid batch size in dataloader + # batch_size is set when creating the sampler + train_loader = DataLoader(train_sampler, batch_size=None, collate_fn=lambda x: x) + val_loader = DataLoader(test_sampler, batch_size=None, collate_fn=lambda x: x) + + t_obj = pl.Trainer( + logger=True, + max_epochs=epochs, + callbacks=[ + LearningRateMonitor(), + ModelCheckpoint( + monitor="val_loss/total", + save_last=True, + dirpath=model_path, + ), + ], + ) + t_obj.fit(model, train_dataloaders=train_loader, val_dataloaders=val_loader) + export_to_onnx( + model_path, + model, + train_loader, + self.use_edge_weights, + train_sampler.dataset.edge_num, + train_sampler.dataset.stations_count, + ) + + def run_inference( + self, + embeddings: pd.DataFrame, + neighbors_station: List[Dict[str, Any]], + infer_station: str, + batch_size: int, + forecast_hours: int, + ): + self.output_dir = self.gnn_output_dir(infer_station) + stations = self.get_neighbor_stations(neighbors_station) + scaler_data, scaler_label, labels_column_index = get_file( + self.gnn_preprocess_file(infer_station) + ) + + pred_data = [] + for step in range(forecast_hours): + dataset, sampler = self.get_infer_inputs( + embeddings, + stations, + infer_station, + batch_size, + forecast_hours, + step, + None, + scaler_data, + scaler_label, + ) + loader = DataLoader(sampler, batch_size=None, collate_fn=lambda x: x) + for index, data in enumerate(loader): + onnx_file_path = "{}/model_{}/model_output.onnx".format(self.output_dir, step) + if data[0].shape[0] != batch_size: + warnings.warn( + f"""Data at step {step} batch index {index} is less than batch size. + It will be skipped from running inference.""" + ) + continue + if step == 0: + results = np.zeros((batch_size, forecast_hours)) + results[:, step] = self.inference(onnx_file_path, data)[ + :, dataset.infer_station_index + ].squeeze() + pred_data.append(results) + else: + pred_data[index][:, step] = self.inference(onnx_file_path, data)[ + :, dataset.infer_station_index + ].squeeze() + pred_data = np.concatenate(pred_data, axis=0) + pred_data = scaler_data.inverse_transform(pred_data) + timestamps = dataset.timestamps[: pred_data.shape[0]] + pred_data = get_split_data(pred_data, timestamps, forecast_hours) # type: ignore + pred_data_df = pd.DataFrame( + zip(pred_data, timestamps), columns=[self.weather_type, "timestamp"] + ) + return pred_data_df + + def get_historical_data(self, data_path: str): + historical_data_df = get_csv_data(data_path) + historical_data_df.reset_index(inplace=True) + historical_data_df.rename(columns={"date": "timestamp"}, inplace=True) + return historical_data_df + + def get_hrrr_data( + self, + data_path: str, + ): + df_node = pd.read_csv(data_path, parse_dates=["date"]) + df_node.rename(columns={"date": "timestamp"}, inplace=True) + return df_node + + def get_infer_inputs( + self, + embeddings: pd.DataFrame, + neighbors_station: Dict[str, Any], + infer_station: str, + batch_size: int, + forecast_hours: int, + step: int, + labels_column_index: Union[int, None], + scaler_data: StandardScaler, + scaler_label: StandardScaler, + ): + dataset = GNNDataset( + embeddings, + forecast_step=step, + scaler_input=scaler_data, + scaler_label=scaler_label, + neighbor_station=neighbors_station, + forecast_hours=forecast_hours, + infer_station=infer_station, + label_column_index=labels_column_index, + ) + + sampler = BatchSampler( + dataset=dataset, + batch_size=batch_size, + lookahead_horizon=self.lookahead_horizon, + lookback_horizon=self.lookback_horizon, + device=self.device, + random=False, + use_edge_weights=self.use_edge_weights, + ) + + return dataset, sampler + + def inference(self, onnx_file_path: str, data: torch.Tensor): + session = onnxruntime.InferenceSession(onnx_file_path, None) + node_data, edge_index, edge_data, _ = get_batch(data, self.use_edge_weights) + + inputs = { + "node_data": node_data.numpy(), + "edge_index": edge_index.numpy(), + "edge_data": edge_data.numpy(), + } + + inputs = {out.name: inputs[out.name] for i, out in enumerate(session.get_inputs())} + results = session.run(None, input_feed=inputs)[0] + return results + + def get_embeddings( + self, + inference_station: str, + neighbor_stations: List[Dict[str, Any]], + inference_hours: int, + infer_forecast_data_path: str, + ): + initialize_embeddings_preprocessing( + infer_station_name=inference_station, + stations=neighbor_stations, + root_path=self.root_dir, + infer_forecast_data_path=infer_forecast_data_path, + infer_interval=inference_hours, + model_type=self.model_type, + ) + + df_train_embeddings, df_test_embeddings = create_embeddings( + stations=neighbor_stations, + inference_hours=inference_hours, + root_path=self.root_dir, + model_type=self.model_type, + ) + + return df_train_embeddings, df_test_embeddings + + def get_neighbor_stations( + self, + neighbor_stations: List[Dict[str, Any]], + ): + stations_connection = {} + stations = [] + station_long_lat = {} + for station in neighbor_stations: + stations.append(station["name"]) + station_long_lat[station["name"]] = station["coordinates"] + + stations_connection["stations"] = stations + stations_connection["long_lat"] = station_long_lat + + return stations_connection + + def filter_data( + self, + df_inference: pd.DataFrame, + df_historical: pd.DataFrame, + df_forecast: pd.DataFrame, + ): + start_date = df_inference["timestamp"].min() + end_date = df_inference["timestamp"].max() + + df_historical = df_historical[df_historical.timestamp.between(start_date, end_date)] + df_historical = df_historical[["timestamp", self.weather_type]] + + df_inference = df_inference[df_inference.timestamp.between(start_date, end_date)] + df_inference = df_inference[["timestamp", self.weather_type]] + + df_forecast = df_forecast[df_forecast.timestamp.between(start_date, end_date)] + df_forecast.rename(columns={"temperature_forecast": self.weather_type}, inplace=True) + df_forecast = df_forecast[["timestamp", self.weather_type]] + + return df_inference, df_historical, df_forecast + + def view_plot( + self, + df_inference: pd.DataFrame, + historical_data_path: str, + hrrr_data_path: str, + ): + df_historical = self.get_historical_data(historical_data_path) + df_forecast = self.get_hrrr_data(hrrr_data_path) + + df_inference, df_historical, df_forecast = self.filter_data( + df_inference, df_historical, df_forecast + ) + + timestamps = df_inference["timestamp"] + y_hat = list(df_inference[self.weather_type].values) + y = list(df_historical[self.weather_type].values) + hrrr_data_y = list(df_forecast[self.weather_type].values) + + plt.figure(figsize=(18, 6)) + plt.plot(timestamps, smooth(y_hat, 2), label="Predict") + plt.plot(timestamps, y, label="Ground Truth") + plt.plot(timestamps, hrrr_data_y, label="HRRR", linestyle="--") + plt.title("Comparison Ground Truth Vs Inference Results Vs HRRR") + plt.legend() + + def view_performance( + self, + df_inference: pd.DataFrame, + historical_data_path: str, + hrrr_data_path: str, + ): + df_historical = self.get_historical_data(historical_data_path) + df_forecast = self.get_hrrr_data(hrrr_data_path) + + df_inference, df_historical, df_forecast = self.filter_data( + df_inference, df_historical, df_forecast + ) + + y_hat = list(df_inference[self.weather_type].values) + y = np.array(df_historical[self.weather_type].values) + hrrr_data_y = list(df_forecast[self.weather_type].values) + + print("GNN ", self.weather_type) + calculate_KPI(smooth(y_hat, 1), y) + print("") + print("Hrrr", self.weather_type) + calculate_KPI(smooth(hrrr_data_y, 1), y) + + def get_embeddings_inference( + self, + inference_station: str, + neighbor_stations: List[Dict[str, Any]], + inference_hours: int, + infer_forecast_data_path: str, + out_features: List[str], + historical_data_path: str, + hrrr_datasets: Dict[str, pd.DataFrame], + start_date: datetime, + end_date: datetime, + historical_dataset_featues: List[str] = ["humidity", "wind_speed", "temperature"], + forecast_dataset_features: List[str] = [ + "humidity_forecast", + "wind_speed_forecast", + "temperature_forecast", + ], + frequency_hour: int = 1, + number_of_hours: int = 24, + weather_inference_type: str = "temperature", + ): + deepmc_results = run_deepmc_inference( + self.root_dir, + self.model_type, + out_features, + neighbor_stations, + historical_data_path, + hrrr_datasets, + start_date, + end_date, + inference_station, + historical_dataset_featues, + forecast_dataset_features, + frequency_hour, + number_of_hours, + weather_inference_type, + ) + + deepmc_post_results = inference_embeddings_preprocessing( + infer_station_name=inference_station, + stations=neighbor_stations, + root_path=self.root_dir, + infer_forecast_data_path=infer_forecast_data_path, + infer_interval=inference_hours, + model_type=self.model_type, + deepmc_inference_results=deepmc_results, + ) + + df_embeddings = create_embeddings_inference( + stations=neighbor_stations, + inference_hours=inference_hours, + deepmc_post_results=deepmc_post_results, + ) + + return df_embeddings diff --git a/notebooks/deepmc_neighbors/sample_data.csv b/notebooks/deepmc_neighbors/sample_data.csv new file mode 100644 index 00000000..b4646fd3 --- /dev/null +++ b/notebooks/deepmc_neighbors/sample_data.csv @@ -0,0 +1,92 @@ +date,temperature,humidity,wind_speed +2021-07-25 00:15:00,79.4,33.3,8.5 +2021-07-25 00:30:00,78.4,35.3,9.4 +2021-07-25 00:45:00,78.1,34.9,9.2 +2021-07-25 01:00:00,78.0,35.0,8.9 +2021-07-25 01:15:00,77.7,35.6,9.0 +2021-07-25 01:30:00,77.8,35.8,8.9 +2021-07-25 01:45:00,77.6,35.9,8.8 +2021-07-25 02:00:00,76.8,37.5,9.1 +2021-07-25 02:15:00,75.4,39.8,9.4 +2021-07-25 02:30:00,74.5,41.6,8.0 +2021-07-25 02:45:00,74.4,41.9,7.3 +2021-07-25 03:00:00,74.6,41.5,6.0 +2021-07-25 03:15:00,73.8,43.1,5.0 +2021-07-25 03:30:00,73.4,43.7,5.9 +2021-07-25 03:45:00,73.4,42.8,6.3 +2021-07-25 04:00:00,73.5,42.2,4.9 +2021-07-25 04:15:00,72.4,44.5,5.2 +2021-07-25 04:30:00,73.9,40.8,7.1 +2021-07-25 04:45:00,74.1,40.7,7.2 +2021-07-25 05:00:00,73.9,41.6,7.2 +2021-07-25 05:15:00,73.6,42.5,7.2 +2021-07-25 05:30:00,73.7,42.6,6.9 +2021-07-25 05:45:00,74.0,42.3,6.9 +2021-07-25 06:00:00,74.2,42.5,6.3 +2021-07-25 06:15:00,74.4,42.5,7.1 +2021-07-25 06:30:00,75.1,41.1,6.9 +2021-07-25 06:45:00,76.1,39.9,5.7 +2021-07-25 07:00:00,76.9,40.2,4.6 +2021-07-25 07:15:00,76.7,44.9,3.9 +2021-07-25 07:30:00,76.8,46.7,3.1 +2021-07-25 07:45:00,77.0,45.6,3.5 +2021-07-25 08:00:00,77.7,44.3,3.4 +2021-07-25 08:15:00,78.5,44.1,3.9 +2021-07-25 08:30:00,79.0,44.0,3.9 +2021-07-25 08:45:00,79.9,42.2,3.4 +2021-07-25 09:00:00,81.0,43.7,3.8 +2021-07-25 09:15:00,81.5,44.2,5.0 +2021-07-25 09:30:00,81.8,42.4,6.3 +2021-07-25 09:45:00,82.5,42.7,6.9 +2021-07-25 10:00:00,82.8,40.9,7.3 +2021-07-25 10:15:00,83.2,38.5,7.0 +2021-07-25 10:30:00,83.7,36.1,5.8 +2021-07-25 10:45:00,84.4,35.2,5.2 +2021-07-25 11:00:00,86.0,31.6,4.8 +2021-07-25 11:15:00,86.5,29.0,5.2 +2021-07-25 11:30:00,87.6,26.1,6.2 +2021-07-25 11:45:00,87.9,26.2,6.5 +2021-07-25 12:00:00,88.0,25.9,6.0 +2021-07-25 12:15:00,88.5,27.0,5.7 +2021-07-25 12:30:00,89.2,25.6,5.0 +2021-07-25 12:45:00,89.7,24.0,4.6 +2021-07-25 13:00:00,90.4,23.0,4.7 +2021-07-25 13:15:00,91.6,21.7,5.2 +2021-07-25 13:30:00,91.5,20.5,5.8 +2021-07-25 13:45:00,91.7,21.1,5.5 +2021-07-25 14:00:00,93.4,20.4,4.9 +2021-07-25 14:15:00,94.3,18.2,4.4 +2021-07-25 14:30:00,93.4,18.4,4.7 +2021-07-25 14:45:00,94.4,17.4,4.0 +2021-07-25 15:00:00,94.6,17.8,4.3 +2021-07-25 15:15:00,93.9,19.1,5.4 +2021-07-25 15:30:00,93.4,18.9,6.5 +2021-07-25 15:45:00,93.6,18.1,5.2 +2021-07-25 16:00:00,93.8,18.3,4.7 +2021-07-25 16:15:00,93.9,17.9,4.5 +2021-07-25 16:30:00,94.0,16.4,4.7 +2021-07-25 16:45:00,94.0,16.7,4.3 +2021-07-25 17:00:00,94.0,16.9,4.2 +2021-07-25 17:15:00,94.2,16.7,3.2 +2021-07-25 17:30:00,94.3,16.8,3.7 +2021-07-25 17:45:00,93.7,18.9,3.8 +2021-07-25 18:00:00,93.7,18.3,3.2 +2021-07-25 18:15:00,93.3,20.6,3.0 +2021-07-25 18:30:00,91.7,26.2,3.5 +2021-07-25 18:45:00,90.5,26.8,2.6 +2021-07-25 19:00:00,88.4,28.1,3.0 +2021-07-25 19:15:00,85.3,30.7,4.3 +2021-07-25 19:30:00,83.4,31.0,4.7 +2021-07-25 19:45:00,82.0,33.8,4.6 +2021-07-25 20:00:00,80.7,36.4,3.6 +2021-07-25 20:15:00,78.6,39.3,4.4 +2021-07-25 20:30:00,80.6,31.3,4.7 +2021-07-25 20:45:00,79.1,37.6,4.8 +2021-07-25 21:00:00,80.4,30.2,5.7 +2021-07-25 21:15:00,82.8,24.7,6.5 +2021-07-25 21:30:00,82.2,24.7,6.8 +2021-07-25 21:45:00,81.6,25.2,6.7 +2021-07-25 22:00:00,80.8,26.2,6.9 +2021-07-25 22:15:00,80.2,27.3,6.9 +2021-07-25 22:30:00,79.8,28.0,6.9 +2021-07-25 22:45:00,79.3,28.5,6.8 \ No newline at end of file diff --git a/src/vibe_notebook/vibe_notebook/deepmc/__init__.py b/src/vibe_notebook/vibe_notebook/deepmc/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/src/vibe_notebook/vibe_notebook/deepmc/forecast.py b/src/vibe_notebook/vibe_notebook/deepmc/forecast.py new file mode 100644 index 00000000..993a6617 --- /dev/null +++ b/src/vibe_notebook/vibe_notebook/deepmc/forecast.py @@ -0,0 +1,164 @@ +from datetime import datetime, timedelta +from typing import Any, Dict, List, Tuple, cast + +import numpy as np +import pandas as pd +from IPython.display import clear_output +from shapely.geometry import Point + +from vibe_core.client import FarmvibesAiClient, get_default_vibe_client +from vibe_core.datamodel import RunConfig, RunConfigUser, SpatioTemporalJson + + +class Forecast: + def __init__( + self, + workflow_name: str, + geometry: Point, + time_range: Tuple[datetime, datetime], + parameters: List[Dict[str, str]], + date_column: str = "date", + ): + self.client: FarmvibesAiClient = get_default_vibe_client() + self.workflow_name = workflow_name + self.geometry = geometry + self.parameters = parameters + self.time_range = time_range + self.date_column = date_column + + def submit_download_request(self): + """ + Submit request to worker to download forecast data + """ + run_metadata_list = [] + runs = [] + for parameter in self.parameters: + run_name = f"forecast_{parameter['weather_type']}" + run = self.client.run( + workflow=self.workflow_name, + name=run_name, + geometry=self.geometry, + time_range=self.time_range, + parameters=parameter, + ) + + run_metadata_list.append( + { + "id": run.id, + "weather_type": parameter["weather_type"], + } + ) + runs.append(run) + + self.client.monitor(runs, 5) + + return run_metadata_list + + def get_run_status(self, run_list: List[Dict[str, str]]): + clear_output(wait=True) + out = [] + for run_item in run_list: + o = self.client.describe_run(run_item["id"]) + print(f"Execution status for {run_item['weather_type']}: {o.details.status}") + + if o.details.status == "done": + out.append(o) + else: + raise Exception( + f"Execution status for {run_item['weather_type']}: {o.details.status}" + ) + + return out + + def get_all_assets(self, details: RunConfigUser): + asset_files = [] + output = details.output["weather_forecast"] + record: Dict[str, Any] + for record in cast(List[Dict[str, Any]], output): + for value in record["assets"].values(): + asset_files.append(value["href"]) + df_assets = [pd.read_csv(f, index_col=False) for f in asset_files] + df_out = pd.concat(df_assets) + df_out = self.clean_forecast_data(forecast_df=df_out, run_details=details) + return df_out + + def get_downloaded_data(self, run_list: List[Dict[str, str]], offset_hours: int = 0): + """ + check the download status. If status is done, fetch the downloaded data + """ + forecast_dataset = pd.DataFrame() + out = self.get_run_status(run_list) + for detail in out: + df = self.get_all_assets(detail) + + # Offset from UTC to specified timezone + df.index = df.index + pd.offsets.Hour(offset_hours) + + if not df.empty: + forecast_dataset = pd.concat([forecast_dataset, df], axis=1) + + return forecast_dataset + + def clean_forecast_data( + self, + forecast_df: pd.DataFrame, + run_details: RunConfig, + ): + df = forecast_df[self.date_column] + assert isinstance(run_details.user_input, SpatioTemporalJson) + start_date: datetime = run_details.user_input.start_date + end_date: datetime = run_details.user_input.end_date + + # derive forecast data + forecast_df.drop(columns=[self.date_column], inplace=True) + a = forecast_df.values.tolist() + o = pd.DataFrame([a]) + o = o.T + + df_date = pd.DataFrame( + data=pd.date_range(start_date, end_date + timedelta(days=1), freq="h"), + columns=[self.date_column], + ) + + # derive hours + hours = [f"{str(i)}:00:00" for i in range(24)] + list_hours = [hours for _ in range(forecast_df.shape[0])] + + assert run_details.parameters is not None, "Parameters are not defined" + # transform forecast data with date and time + df = pd.DataFrame( + data={ + self.date_column: df.values, + "time": list_hours, + run_details.parameters["weather_type"]: o[0], + } + ) + df = df.explode(column=["time", run_details.parameters["weather_type"]]) + df[self.date_column] = df[self.date_column].astype(str) + " " + df["time"] + df[self.date_column] = pd.to_datetime(df[self.date_column].values) + + df.drop(columns=["time"], inplace=True) + df = pd.merge(df_date, df, how="left", left_on=self.date_column, right_on=self.date_column) + + df.reset_index() + df.set_index(self.date_column, inplace=True) + df.sort_index(ascending=True, inplace=True) + df[run_details.parameters["weather_type"]] = df[ + run_details.parameters["weather_type"] + ].values.astype(np.float32) + + # rename columns with suffix forecast + df.rename( + columns={ + run_details.parameters[ + "weather_type" + ]: f"{run_details.parameters['weather_type']}_forecast" + }, + inplace=True, + ) + + # interpolate to derive missing data + df = df.interpolate(method="from_derivatives") + assert df is not None, "Interpolation deleted all data" + df = df.dropna() + return df diff --git a/notebooks/deepmc/notebook_lib/prediction.py b/src/vibe_notebook/vibe_notebook/deepmc/prediction.py similarity index 90% rename from notebooks/deepmc/notebook_lib/prediction.py rename to src/vibe_notebook/vibe_notebook/deepmc/prediction.py index fad17778..eb72cd4a 100644 --- a/notebooks/deepmc/notebook_lib/prediction.py +++ b/src/vibe_notebook/vibe_notebook/deepmc/prediction.py @@ -6,9 +6,9 @@ import numpy as np import onnxruntime import pandas as pd -from numpy._typing import NDArray +from numpy.typing import NDArray -from .preprocess import Preprocess +from vibe_notebook.deepmc.preprocess import Preprocess MODEL_SUFFIX = "deepmc." @@ -167,7 +167,7 @@ def run_individual_predict( relevant=self.relevant, ) - test_X = preprocess.wavelet_transform_predict(df_in=df_in, predict=predict) + test_X, _, _ = preprocess.wavelet_transform_predict(df_in=df_in, predict=predict) time_arr = [] post_yhat = np.empty([1, self.ts_lookahead, self.ts_lookahead]) for idx in range(0, self.total_models): @@ -251,7 +251,7 @@ def run_individual_predict_historical( ) inshape = self.total_models - test_X = preprocess.wavelet_transform_predict(df_in=df_in, predict=predict) + test_X, _, _ = preprocess.wavelet_transform_predict(df_in=df_in, predict=predict) post_yhat = np.empty([test_X[0].shape[0] + 1 - inshape, inshape, self.total_models]) for idx in range(0, self.total_models): out_x = self.predict(path=self.onnx_file, predict=predict, model_idx=idx, inputs=test_X) @@ -279,3 +279,24 @@ def run_individual_predict_historical( yhat_final = output_scaler.inverse_transform(np.expand_dims(yhat_final, axis=1))[:, 0] df_predict = pd.DataFrame(data=list(zip(df_out, yhat_final)), columns=["date", predict]) return df_predict + + def deepmc_preprocess(self, df_in: pd.DataFrame, predict: str): + with open(self.data_export_path, "rb") as f: + train_scaler, output_scaler = pickle.load(f)[4:6] + + preprocess = Preprocess( + train_scaler=train_scaler, + output_scaler=output_scaler, + is_training=False, + ts_lookahead=self.ts_lookahead, + ts_lookback=self.ts_lookback, + chunk_size=self.chunk_size, + wavelet=self.wavelet, + mode=self.mode, + level=self.level, + relevant=self.relevant, + ) + + test_x, test_x_dates, _ = preprocess.wavelet_transform_predict(df_in=df_in, predict=predict) + + return test_x, test_x_dates, train_scaler, output_scaler diff --git a/notebooks/deepmc/notebook_lib/preprocess.py b/src/vibe_notebook/vibe_notebook/deepmc/preprocess.py similarity index 64% rename from notebooks/deepmc/notebook_lib/preprocess.py rename to src/vibe_notebook/vibe_notebook/deepmc/preprocess.py index c8d81b93..a6a28113 100644 --- a/notebooks/deepmc/notebook_lib/preprocess.py +++ b/src/vibe_notebook/vibe_notebook/deepmc/preprocess.py @@ -1,10 +1,11 @@ +from datetime import timedelta from math import ceil -from typing import Any, Optional, Tuple +from typing import Any, List, Optional, Tuple -from numpy._typing import NDArray import numpy as np import pandas as pd import pywt +from numpy.typing import NDArray from sklearn.preprocessing import StandardScaler @@ -35,11 +36,15 @@ def __init__( self.is_validation = is_validation self.relevant = relevant - def wavelet_transform_predict(self, df_in: pd.DataFrame, predict: str) -> NDArray[Any]: + def wavelet_transform_predict( + self, df_in: pd.DataFrame, predict: str + ) -> Tuple[NDArray[Any], List[Any], List[Any]]: i = 1 start = i end = start t_test_X = [] + t_x_dates = [] + t_y_dates = [] test_df = pd.DataFrame( self.train_scaler.transform(df_in), columns=df_in.columns, index=df_in.index @@ -52,9 +57,13 @@ def wavelet_transform_predict(self, df_in: pd.DataFrame, predict: str) -> NDArra i = i + 1 chunkdataDF = test_df.iloc[start:end] - test_uX, _ = self.convert_df_wavelet_input(data_df=chunkdataDF, predict=predict) + test_uX, _, test_x_dates, test_y_dates = self.convert_df_wavelet_input( + data_df=chunkdataDF, predict=predict + ) t_test_X.append(test_uX) + t_x_dates.append(test_x_dates) + t_y_dates.append(test_y_dates) test_X = t_test_X[0].copy() @@ -62,30 +71,51 @@ def wavelet_transform_predict(self, df_in: pd.DataFrame, predict: str) -> NDArra for j in range(len(t_test_X[i])): test_X[j] = np.append(test_X[j], t_test_X[i][j], axis=0) - return test_X + return test_X, t_x_dates, t_y_dates def wavelet_transform_train( self, train_df: pd.DataFrame, test_df: pd.DataFrame, out_feature: str ) -> Tuple[NDArray[Any], ...]: - t_train_X, t_train_y = self.prepare_wavelet_data(train_df, out_feature=out_feature) + t_train_X, t_train_y, t_train_X_dates, t_train_y_dates = self.prepare_wavelet_data( + train_df, out_feature=out_feature + ) - t_test_X, t_test_y = self.prepare_wavelet_data(test_df, out_feature=out_feature) + t_test_X, t_test_y, t_test_X_dates, t_test_y_dates = self.prepare_wavelet_data( + test_df, out_feature=out_feature + ) train_X = t_train_X[0].copy() train_y = t_train_y[0].copy() - for i in range(1, len(t_train_X)): + train_dates_X = t_train_X_dates[0][0].copy() + train_dates_y = t_train_y_dates[0].copy() + for i in range(len(t_train_X)): train_y = np.append(train_y, t_train_y[i], axis=0) + train_dates_X = np.append(train_dates_X, t_train_X_dates[i][0], axis=0) + train_dates_y = np.append(train_dates_y, t_train_y_dates[i], axis=0) for j in range(len(t_train_X[i])): train_X[j] = np.append(train_X[j], t_train_X[i][j], axis=0) test_X = t_test_X[0].copy() test_y = t_test_y[0].copy() + test_dates_X = t_test_X_dates[0][0].copy() + test_dates_y = t_test_y_dates[0].copy() for i in range(1, len(t_test_X)): test_y = np.append(test_y, t_test_y[i], axis=0) + test_dates_X = np.append(test_dates_X, t_test_X_dates[i][0], axis=0) + test_dates_y = np.append(test_dates_y, t_test_y_dates[i], axis=0) for j in range(len(t_test_X[i])): test_X[j] = np.append(test_X[j], t_test_X[i][j], axis=0) - return train_X, train_y, test_X, test_y + return ( + train_X, + train_y, + test_X, + test_y, + train_dates_X, + train_dates_y, + test_dates_X, + test_dates_y, + ) def prepare_wavelet_data(self, data_df: pd.DataFrame, out_feature: str): i = 0 @@ -93,6 +123,8 @@ def prepare_wavelet_data(self, data_df: pd.DataFrame, out_feature: str): end = start t_data_x = [] t_data_y = [] + t_dates_x = [] + t_dates_y = [] while end < data_df.shape[0]: start = i @@ -100,14 +132,16 @@ def prepare_wavelet_data(self, data_df: pd.DataFrame, out_feature: str): i = i + 1 o_data_df = data_df.iloc[start:end] - data_ux, data_uy = self.convert_df_wavelet_input( + data_ux, data_uy, data_ux_dates, data_uy_dates = self.convert_df_wavelet_input( o_data_df, predict=out_feature, ) t_data_x.append(data_ux) t_data_y.append(data_uy) + t_dates_x.append(data_ux_dates) + t_dates_y.append(data_uy_dates) - return t_data_x, t_data_y + return t_data_x, t_data_y, t_dates_x, t_dates_y def dl_preprocess_data( self, @@ -115,7 +149,7 @@ def dl_preprocess_data( predict: str, per_split: float = 0.8, training: bool = False, - ) -> Tuple[NDArray, Optional[NDArray], Optional[NDArray], Optional[NDArray]]: # type: ignore + ) -> Tuple[NDArray, Optional[NDArray], Optional[NDArray], Optional[NDArray], Optional[NDArray]]: # type: ignore """ merge chunk of data as single entity Args: @@ -140,7 +174,7 @@ def dl_preprocess_data( label_data = label_df.values # label_data = label_df.values - X, y = list(), list() + X, y, dates = list(), list(), list() in_start = 0 # step over the entire history one time step at a time @@ -153,30 +187,37 @@ def dl_preprocess_data( if out_end <= len(data): X.append(data[in_start:in_end, :]) y.append(label_data[in_end:out_end, :]) + dates.append(df.index[in_end:out_end].strftime("%Y-%m-%d %H:%M:%S").values) # move along one time step in_start += 1 X = np.array(X) y = np.array(y) + dates = np.array(dates) if self.is_validation is True: n_train_split = ceil(len(data) * per_split) train_X, train_y = X[:n_train_split, :, :], y[:n_train_split, :, :] test_X, test_y = X[n_train_split:, :], y[n_train_split:, :] - return train_X, train_y, test_X, test_y + return train_X, train_y, test_X, test_y, dates else: - return X, y, None, None + return X, y, None, None, dates else: - X = list() + X, dates = list(), list() in_start = 0 for _ in range(len(data) - n_in + 1): in_end = in_start + n_in if in_end <= len(data): X.append(data[in_start:in_end, :]) + # shift dates by lookahead to match it with the y + dates.append( + [t + timedelta(hours=self.ts_lookback) for t in df.index[in_start:in_end]] + ) in_start += 1 X = np.array(X) - return X, None, None, None + dates = np.array(dates) + return X, None, None, None, dates def convert_df_wavelet_input(self, data_df: pd.DataFrame, predict: str): if self.relevant: @@ -188,59 +229,66 @@ def convert_df_wavelet_input_not_relevant(self, data_df: pd.DataFrame, predict: level = self.level rd = list() N = data_df.shape[0] - test_X = list() + test_X, test_X_dates, test_y_dates, test_y = list(), list(), list(), list() if self.is_training: - test_y = self.dl_preprocess_data( + (_, test_y, _, _, test_y_dates) = self.dl_preprocess_data( data_df.iloc[-self.ts_lookback - self.ts_lookahead :], predict=predict, training=self.is_training, - )[1] + ) assert test_y is not None test_y = test_y[[-1], :, :] + dates = test_y_dates[[-1], :] data_df = data_df.iloc[: -self.ts_lookahead] - else: - test_y = [] wp5 = pywt.wavedec(data=data_df[predict], wavelet=self.wavelet, mode=self.mode, level=level) N = data_df.shape[0] for i in range(1, level + 1): rd.append(pywt.waverec(wp5[:-i] + [None] * i, wavelet=self.wavelet, mode=self.mode)[:N]) - t_test_X = self.dl_preprocess_data(data_df.iloc[-self.ts_lookback :], predict=predict)[0] + (t_test_X, _, _, _, t_test_X_dates) = self.dl_preprocess_data( + data_df.iloc[-self.ts_lookback :], predict=predict + ) test_X.append(t_test_X[[-1], :, :]) + test_X_dates.append(t_test_X_dates[[-1], :]) wpt_df = data_df[[]].copy() for i in range(0, level): wpt_df[predict] = rd[i][:] - t_test_X = self.dl_preprocess_data(wpt_df.iloc[-self.ts_lookback :], predict=predict)[0] + (t_test_X, _, _, _, t_test_X_dates) = self.dl_preprocess_data( + wpt_df.iloc[-self.ts_lookback :], predict=predict + ) test_X.append(t_test_X[[-1], :, :]) + test_X_dates.append(t_test_X_dates) - return test_X, test_y + return test_X, test_y, test_X_dates, test_y_dates def convert_df_wavelet_input_relevant(self, data_df: pd.DataFrame, predict: str): rd = list() test_X = list() + test_X, test_X_dates, test_y_dates, test_y = list(), list(), list(), list() if self.is_training: - test_y = self.dl_preprocess_data( + (_, test_y, _, _, test_y_dates) = self.dl_preprocess_data( data_df.iloc[-self.ts_lookback - self.ts_lookahead :], predict=predict, training=self.is_training, - )[1] + ) assert test_y is not None test_y = test_y[[-1], :, :] - else: - test_y = [] + test_y_dates = test_y_dates[[-1], :] data_df = data_df.iloc[: -self.ts_lookahead] - t_test_X = self.dl_preprocess_data(data_df.iloc[-self.ts_lookback :], predict=predict)[0] + (t_test_X, _, _, _, t_test_X_dates) = self.dl_preprocess_data( + data_df.iloc[-self.ts_lookback :], predict=predict + ) data = data_df[predict] data = data.append(data_df[predict + "_forecast"].iloc[-self.ts_lookback :]).values @@ -253,13 +301,17 @@ def convert_df_wavelet_input_relevant(self, data_df: pd.DataFrame, predict: str) ) test_X.append(t_test_X[[-1], :, :]) + test_X_dates.append(t_test_X_dates[[-1], :]) wpt_df = data_df[[]].copy() for i in range(0, self.level): wpt_df[predict] = rd[i] - t_test_X = self.dl_preprocess_data(wpt_df.iloc[-self.ts_lookback :], predict=predict)[0] + (t_test_X, _, _, _, t_test_X_dates) = self.dl_preprocess_data( + wpt_df.iloc[-self.ts_lookback :], predict=predict + ) test_X.append(t_test_X[[-1], :, :]) + test_X_dates.append(t_test_X_dates) - return test_X, test_y + return test_X, test_y, test_X_dates, test_y_dates diff --git a/src/vibe_notebook/vibe_notebook/deepmc/utils.py b/src/vibe_notebook/vibe_notebook/deepmc/utils.py new file mode 100644 index 00000000..ffc2a2e2 --- /dev/null +++ b/src/vibe_notebook/vibe_notebook/deepmc/utils.py @@ -0,0 +1,200 @@ +from datetime import datetime, timedelta +from typing import Any, Dict, List + +import numpy as np +import pandas as pd +from numpy._typing import NDArray +from pandas.tseries.offsets import DateOffset +from sklearn.metrics import mean_absolute_error, mean_squared_error +from sklearn.preprocessing import StandardScaler + + +def get_csv_data( + path: str, + date_attribute: str = "date", + columns_rename: Dict[str, str] = {}, + frequency: str = "60min", + interpolate: bool = True, + fill_na: bool = True, +): + """ + Read data from CSV file using Pandas python package. + """ + + data_df = pd.read_csv(path) + data_df[date_attribute] = pd.to_datetime(data_df[date_attribute]) + + if columns_rename: + data_df.rename(columns=columns_rename, inplace=True) + + # apply index on date + data_df.reset_index(drop=True, inplace=True) + data_df.set_index(date_attribute, inplace=True) + data_df.sort_index(ascending=True, inplace=True) + + if interpolate: + # interpolate to derive missing data + data_df = data_df.interpolate(method="from_derivatives") + assert data_df is not None, "Interpolate deleted all data" + data_df = data_df.dropna() + + if fill_na: + # Group rows by frequency, requires date attribute indexed to execute this + data_df = data_df.fillna(method="ffill") # type: ignore + data_df = data_df.fillna(method="bfill") + data_df = data_df.groupby(pd.Grouper(freq=frequency)).mean() + data_df = data_df.fillna(method="ffill") + data_df = data_df.fillna(method="bfill") + else: + data_df = data_df.groupby(pd.Grouper(freq=frequency)).mean() + + return data_df + + +def hour_round(t: datetime): + # Rounds to nearest hour by adding a timedelta hour if minute >= 30 + return t.replace(second=0, microsecond=0, minute=0, hour=t.hour) + timedelta( + hours=t.minute // 30 + ) + + +def get_split_scaled_data(data: pd.DataFrame, out_feature: str, split_ratio: float = 0.92): + split = int(split_ratio * data.shape[0]) + + train_data = data.iloc[:split] + test_data = data.iloc[split:] + + output_scaler = StandardScaler() + output_scaler.fit_transform(np.expand_dims(data[out_feature].values, axis=1)) # type: ignore + + train_scaler = StandardScaler() + train_scale_df = pd.DataFrame( + train_scaler.fit_transform(train_data), + columns=train_data.columns, + index=train_data.index, + ) + test_scale_df = pd.DataFrame( + train_scaler.transform(test_data), + columns=test_data.columns, + index=test_data.index, + ) + + return train_scaler, output_scaler, train_scale_df, test_scale_df + + +def shift_index(ds_df: pd.DataFrame, freq_minutes: int, num_indices: int, dateColumn: str = "date"): + ds_df[dateColumn] = ds_df.index.shift(-num_indices, freq=DateOffset(minutes=freq_minutes)) + ds_df = ds_df.reset_index(drop=True) + ds_df = ds_df.set_index(dateColumn) + return ds_df + + +def clean_relevant_data( + actual_df: pd.DataFrame, + forecast_df: pd.DataFrame, + out_variables: List[str], + freq_hours: int, + num_of_indices: int, +): + base_data_df = actual_df.copy() + current_ws_df = forecast_df.add_suffix("Current") + base_data_df = base_data_df.join(current_ws_df) + shift_forecast_df = shift_index(forecast_df, freq_hours * 60, num_of_indices) + base_data_df = base_data_df.join(shift_forecast_df) + + base_data_df = base_data_df[out_variables] + base_data_df = base_data_df.interpolate(method="from_derivatives") + assert base_data_df is not None, "Interpolate deleted all data" + base_data_df = base_data_df.dropna() + return base_data_df + + +def smooth(y: List[float], box_pts: int): + box = np.ones(box_pts) / box_pts + y_smooth = np.convolve(y, box, mode="same") + return y_smooth + + +def clean_relevant_data_using_hrrr( + actual_df: pd.DataFrame, + forecast_df: pd.DataFrame, + out_variables: List[str], + freq_hours: int, + num_of_indices: int, + start_date: datetime, + end_date: datetime, +): + forecast_df = forecast_df.loc[ + (forecast_df.index >= start_date) & (forecast_df.index <= end_date) + ] + actual_df = actual_df.loc[(actual_df.index >= start_date) & (actual_df.index <= end_date)] + + for col in actual_df.columns: + sub_df = actual_df[actual_df[col].isna()] + if col + "_forecast" in forecast_df.columns: + actual_df.loc[actual_df.index.isin(sub_df.index.values), col] = forecast_df[ + forecast_df.index.isin(sub_df.index.values) + ][col + "_forecast"] + + base_data_df = actual_df.copy() + current_ws_df = forecast_df.add_suffix("Current") + base_data_df = base_data_df.join(current_ws_df) + shift_forecast_df = shift_index(forecast_df, freq_hours * 60, num_of_indices) + base_data_df = base_data_df.join(shift_forecast_df) + + base_data_df = base_data_df[out_variables] + base_data_df = base_data_df.interpolate(method="from_derivatives") + assert base_data_df is not None, "Interpolate deleted all data" + base_data_df = base_data_df.dropna() + return base_data_df + + +def calculate_KPI(y: NDArray[Any], yhat: NDArray[Any]): + mae = float(mean_absolute_error(y, yhat)) + rmse = float(mean_squared_error(y, yhat, squared=False)) + print(f"RMSE: {round(rmse, 2)}") + print(f"MAE: {round(mae, 2)}") + print(f"MAE%: {round(100*sum(abs(y-yhat))/sum(y),2)}%") + + +def convert_forecast_data(data: pd.DataFrame): + # Temperature + # convert kelvin to celsius + # convert celsius to Fahrenheit + data["temperature_forecast"] = data["temperature_forecast"].apply( + lambda x: ((x - 273.15) * 9 / 5) + 32 + ) + + # wind_speed + # multiplying with 2.23 to convert wind speed from m/sec to mph + data["wind_speed_forecast"] = data.apply( + lambda x: np.sqrt( + np.square(x["u-component_forecast"]) + np.square(x["v-component_forecast"]) + ) + * 2.23, + axis=1, + ) + data.drop(columns=["u-component_forecast", "v-component_forecast"], inplace=True) + return data + + +def transform_to_array_3D(data: NDArray[Any], inference_hours: int = 24) -> NDArray[Any]: + X = transform_to_array(data, inference_hours) + X = X.reshape(X.shape[0], 1, X.shape[1]) + return X + + +def transform_to_array(data: NDArray[Any], inference_hours: int = 24) -> NDArray[Any]: + data = np.array(data) + X = [] + for in_start in range(len(data)): + in_end = in_start + inference_hours + if in_end <= (len(data)): + X.append(data[in_start:in_end]) + else: + break + + X = np.array(X) + # skip rows not in loop + X = X[: data.shape[0] - inference_hours] + return X