{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "wvG1SXDeRKaM"
},
"source": [
"# Workshop License\n",
"\n",
"MIT License\n",
"\n",
"Copyright (c) 2024 Sina Jahangir$^{1}$, and John Quilty$^{2}$\n",
"\n",
"1 Department of Bioresource Engineering, McGill University\n",
"\n",
"2 Department of Civil and Environmental Engineering, University of Waterloo\n",
"\n",
"Contact\n",
"\n",
"(SJ):sina.jahangir@yahoo.com\n",
"\n",
"\n",
"(JQ):john.quilty@uwaterloo.ca\n",
"\n",
"Permission is hereby granted, free of charge, to any person obtaining a copy\n",
"of this software and associated documentation files (the \"Software\"), to deal\n",
"in the Software without restriction, including without limitation the rights\n",
"to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n",
"copies of the Software, and to permit persons to whom the Software is\n",
"furnished to do so, subject to the following conditions:\n",
"\n",
"The above copyright notice and this permission notice shall be included in all\n",
"copies or substantial portions of the Software.\n",
"\n",
"THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n",
"IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n",
"FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n",
"AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n",
"LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n",
"OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n",
"SOFTWARE."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "hozNRehX6mAV"
},
"source": [
"\n",
"\n",
"```\n",
"# This is formatted as code\n",
"```\n",
"\n",
"# Machine Learning Workshop\n",
"\n",
"Welcome to the Machine Learning Workshop! This material is intended for the CSHS Workshop, Machine Learning For Streamflow Forecasting: A Primer for the Practitioner.\n",
"\n",
"The intent of this workshop is to enable everyone to construct and understand machine learning models for hydrological forecasting with a hands-on exercise. Due to its growing interest in hydrology, there will be a special focus on Long Short-Term Memory networks (LSTMs) in this workshop. LSTM is a popular deep learning (DL) model for time series, such as those routinely used in hydrological forecasting.\n",
"\n",
"This exercise and workshop has been prepared by Mohammad Sina Jahangir and reviewed and modified by John Quilty."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "XszHkSdVNJ-A"
},
"source": [
"It is highly suggested that you create a copy of this file before editing it.\n",
"\n",
"To do so: File->Save a copy in Drive."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "NPScf_56ZbQE"
},
"source": [
"# **Importing the Essential Libraries**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "CYsDETlNixJz"
},
"source": [
"Install the required python libraries for developing the models.\n",
"We need these libraries to run the scripts."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"collapsed": true,
"id": "ZZP-q-UEGEJz",
"outputId": "45da1efb-6eb6-4eba-a512-a1b815560581"
},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Collecting neuralforecast\n",
" Downloading neuralforecast-1.7.5-py3-none-any.whl.metadata (14 kB)\n",
"Collecting coreforecast>=0.0.6 (from neuralforecast)\n",
" Downloading coreforecast-0.0.14-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.8 kB)\n",
"Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from neuralforecast) (2024.10.0)\n",
"Requirement already satisfied: numpy>=1.21.6 in /usr/local/lib/python3.10/dist-packages (from neuralforecast) (1.26.4)\n",
"Requirement already satisfied: pandas>=1.3.5 in /usr/local/lib/python3.10/dist-packages (from neuralforecast) (2.2.2)\n",
"Requirement already satisfied: torch>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from neuralforecast) (2.5.0+cu121)\n",
"Collecting pytorch-lightning>=2.0.0 (from neuralforecast)\n",
" Downloading pytorch_lightning-2.4.0-py3-none-any.whl.metadata (21 kB)\n",
"Collecting ray>=2.2.0 (from ray[tune]>=2.2.0->neuralforecast)\n",
" Downloading ray-2.39.0-cp310-cp310-manylinux2014_x86_64.whl.metadata (17 kB)\n",
"Collecting optuna (from neuralforecast)\n",
" Downloading optuna-4.1.0-py3-none-any.whl.metadata (16 kB)\n",
"Collecting utilsforecast>=0.0.25 (from neuralforecast)\n",
" Downloading utilsforecast-0.2.8-py3-none-any.whl.metadata (7.4 kB)\n",
"Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.3.5->neuralforecast) (2.8.2)\n",
"Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.3.5->neuralforecast) (2024.2)\n",
"Requirement already satisfied: tzdata>=2022.7 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.3.5->neuralforecast) (2024.2)\n",
"Requirement already satisfied: tqdm>=4.57.0 in /usr/local/lib/python3.10/dist-packages (from pytorch-lightning>=2.0.0->neuralforecast) (4.66.6)\n",
"Requirement already satisfied: PyYAML>=5.4 in /usr/local/lib/python3.10/dist-packages (from pytorch-lightning>=2.0.0->neuralforecast) (6.0.2)\n",
"Collecting torchmetrics>=0.7.0 (from pytorch-lightning>=2.0.0->neuralforecast)\n",
" Downloading torchmetrics-1.6.0-py3-none-any.whl.metadata (20 kB)\n",
"Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from pytorch-lightning>=2.0.0->neuralforecast) (24.2)\n",
"Requirement already satisfied: typing-extensions>=4.4.0 in /usr/local/lib/python3.10/dist-packages (from pytorch-lightning>=2.0.0->neuralforecast) (4.12.2)\n",
"Collecting lightning-utilities>=0.10.0 (from pytorch-lightning>=2.0.0->neuralforecast)\n",
" Downloading lightning_utilities-0.11.8-py3-none-any.whl.metadata (5.2 kB)\n",
"Requirement already satisfied: click>=7.0 in /usr/local/lib/python3.10/dist-packages (from ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (8.1.7)\n",
"Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (3.16.1)\n",
"Requirement already satisfied: jsonschema in /usr/local/lib/python3.10/dist-packages (from ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (4.23.0)\n",
"Requirement already satisfied: msgpack<2.0.0,>=1.0.0 in /usr/local/lib/python3.10/dist-packages (from ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (1.1.0)\n",
"Requirement already satisfied: protobuf!=3.19.5,>=3.15.3 in /usr/local/lib/python3.10/dist-packages (from ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (4.25.5)\n",
"Requirement already satisfied: aiosignal in /usr/local/lib/python3.10/dist-packages (from ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (1.3.1)\n",
"Requirement already satisfied: frozenlist in /usr/local/lib/python3.10/dist-packages (from ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (1.5.0)\n",
"Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (2.32.3)\n",
"Collecting tensorboardX>=1.9 (from ray[tune]>=2.2.0->neuralforecast)\n",
" Downloading tensorboardX-2.6.2.2-py2.py3-none-any.whl.metadata (5.8 kB)\n",
"Requirement already satisfied: pyarrow>=6.0.1 in /usr/local/lib/python3.10/dist-packages (from ray[tune]>=2.2.0->neuralforecast) (17.0.0)\n",
"Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=2.0.0->neuralforecast) (3.4.2)\n",
"Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=2.0.0->neuralforecast) (3.1.4)\n",
"Requirement already satisfied: sympy==1.13.1 in /usr/local/lib/python3.10/dist-packages (from torch>=2.0.0->neuralforecast) (1.13.1)\n",
"Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy==1.13.1->torch>=2.0.0->neuralforecast) (1.3.0)\n",
"Collecting alembic>=1.5.0 (from optuna->neuralforecast)\n",
" Downloading alembic-1.14.0-py3-none-any.whl.metadata (7.4 kB)\n",
"Collecting colorlog (from optuna->neuralforecast)\n",
" Downloading colorlog-6.9.0-py3-none-any.whl.metadata (10 kB)\n",
"Requirement already satisfied: sqlalchemy>=1.4.2 in /usr/local/lib/python3.10/dist-packages (from optuna->neuralforecast) (2.0.36)\n",
"Collecting Mako (from alembic>=1.5.0->optuna->neuralforecast)\n",
" Downloading Mako-1.3.6-py3-none-any.whl.metadata (2.9 kB)\n",
"Requirement already satisfied: aiohttp!=4.0.0a0,!=4.0.0a1 in /usr/local/lib/python3.10/dist-packages (from fsspec[http]>=2022.5.0->pytorch-lightning>=2.0.0->neuralforecast) (3.10.10)\n",
"Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from lightning-utilities>=0.10.0->pytorch-lightning>=2.0.0->neuralforecast) (75.1.0)\n",
"Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.8.2->pandas>=1.3.5->neuralforecast) (1.16.0)\n",
"Requirement already satisfied: greenlet!=0.4.17 in /usr/local/lib/python3.10/dist-packages (from sqlalchemy>=1.4.2->optuna->neuralforecast) (3.1.1)\n",
"Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=2.0.0->neuralforecast) (3.0.2)\n",
"Requirement already satisfied: attrs>=22.2.0 in /usr/local/lib/python3.10/dist-packages (from jsonschema->ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (24.2.0)\n",
"Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/local/lib/python3.10/dist-packages (from jsonschema->ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (2024.10.1)\n",
"Requirement already satisfied: referencing>=0.28.4 in /usr/local/lib/python3.10/dist-packages (from jsonschema->ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (0.35.1)\n",
"Requirement already satisfied: rpds-py>=0.7.1 in /usr/local/lib/python3.10/dist-packages (from jsonschema->ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (0.21.0)\n",
"Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (3.4.0)\n",
"Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (3.10)\n",
"Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (2.2.3)\n",
"Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->ray>=2.2.0->ray[tune]>=2.2.0->neuralforecast) (2024.8.30)\n",
"Requirement already satisfied: aiohappyeyeballs>=2.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]>=2022.5.0->pytorch-lightning>=2.0.0->neuralforecast) (2.4.3)\n",
"Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]>=2022.5.0->pytorch-lightning>=2.0.0->neuralforecast) (6.1.0)\n",
"Requirement already satisfied: yarl<2.0,>=1.12.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]>=2022.5.0->pytorch-lightning>=2.0.0->neuralforecast) (1.17.1)\n",
"Requirement already satisfied: async-timeout<5.0,>=4.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]>=2022.5.0->pytorch-lightning>=2.0.0->neuralforecast) (4.0.3)\n",
"Requirement already satisfied: propcache>=0.2.0 in /usr/local/lib/python3.10/dist-packages (from yarl<2.0,>=1.12.0->aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]>=2022.5.0->pytorch-lightning>=2.0.0->neuralforecast) (0.2.0)\n",
"Downloading neuralforecast-1.7.5-py3-none-any.whl (254 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m254.8/254.8 kB\u001b[0m \u001b[31m5.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading coreforecast-0.0.14-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (273 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m273.5/273.5 kB\u001b[0m \u001b[31m12.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading pytorch_lightning-2.4.0-py3-none-any.whl (815 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m815.2/815.2 kB\u001b[0m \u001b[31m24.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading ray-2.39.0-cp310-cp310-manylinux2014_x86_64.whl (66.3 MB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m66.3/66.3 MB\u001b[0m \u001b[31m10.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading utilsforecast-0.2.8-py3-none-any.whl (41 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m41.4/41.4 kB\u001b[0m \u001b[31m1.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading optuna-4.1.0-py3-none-any.whl (364 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m364.4/364.4 kB\u001b[0m \u001b[31m17.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading alembic-1.14.0-py3-none-any.whl (233 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m233.5/233.5 kB\u001b[0m \u001b[31m13.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading lightning_utilities-0.11.8-py3-none-any.whl (26 kB)\n",
"Downloading tensorboardX-2.6.2.2-py2.py3-none-any.whl (101 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m101.7/101.7 kB\u001b[0m \u001b[31m6.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading torchmetrics-1.6.0-py3-none-any.whl (926 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m926.4/926.4 kB\u001b[0m \u001b[31m29.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading colorlog-6.9.0-py3-none-any.whl (11 kB)\n",
"Downloading Mako-1.3.6-py3-none-any.whl (78 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m78.6/78.6 kB\u001b[0m \u001b[31m5.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hInstalling collected packages: tensorboardX, Mako, lightning-utilities, coreforecast, colorlog, alembic, utilsforecast, torchmetrics, optuna, ray, pytorch-lightning, neuralforecast\n",
"Successfully installed Mako-1.3.6 alembic-1.14.0 colorlog-6.9.0 coreforecast-0.0.14 lightning-utilities-0.11.8 neuralforecast-1.7.5 optuna-4.1.0 pytorch-lightning-2.4.0 ray-2.39.0 tensorboardX-2.6.2.2 torchmetrics-1.6.0 utilsforecast-0.2.8\n"
]
}
],
"source": [
"#importing necessary libs\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import pandas as pd\n",
"from os import chdir\n",
"#NeuralForecast is not pre-installed on the cloud, so we have to pip install it\n",
"!pip install neuralforecast"
]
},
{
"cell_type": "code",
"source": [
"#import the NeuralForecast library, which we will use to build our LSTM models\n",
"from neuralforecast import NeuralForecast\n",
"#from the NF library, import the LSTM model\n",
"from neuralforecast.models import LSTM\n",
"#import the MSE loss function\n",
"from neuralforecast.losses.pytorch import MSE"
],
"metadata": {
"id": "cBTxC4V-hrga",
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "7bf4b52f-20d2-406f-fee3-a6c239081890"
},
"execution_count": 2,
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/dask/dataframe/__init__.py:42: FutureWarning: \n",
"Dask dataframe query planning is disabled because dask-expr is not installed.\n",
"\n",
"You can install it with `pip install dask[dataframe]` or `conda install dask`.\n",
"This will raise in a future version.\n",
"\n",
" warnings.warn(msg, FutureWarning)\n"
]
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "g12H_gB57GE1"
},
"source": [
"In this exercise, we will keep all data within the temporary session within Google Colab. You can download the data/results or mount your own Google Drive if you wish to store results."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "HOZ9p6V-cI7J"
},
"source": [
"##Mount Google Drive (optional)\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "KVGMXvp-dApi"
},
"source": [
"Mount the Google Drive to be able to access the uploaded files."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"id": "2Zt795iPcUYd",
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "dad8a211-f472-45c2-999a-6f7f7e211070"
},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Mounted at /content/drive\n"
]
}
],
"source": [
"#uncomment below\n",
"from google.colab import drive\n",
"drive.mount('/content/drive')"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "sBgklR4QaVhk"
},
"source": [
"# Reading the Data"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "l4TKXsKnBkmC"
},
"source": [
"In this exercise, we will be forecasting streamflow at USGS gauge ID 01022500, Narraguagus River at Cherryfield, Maine.\n",
"\n",
"The gauge data may be accessed in real-time from the [USGS gauge site](https://waterdata.usgs.gov/monitoring-location/01022500/#parameterCode=00060&period=P7D&showMedian=false).\n",
"\n",
"Here, we will download daily data for both streamflow and meteorological inputs (precipitation, solar radiation, daily maximum temperature, daily minimum temperature, and ERA5 precipitation). ERA5 precipitation reanalysis is adopted as an alternative to meterological forecasts. We store this data in a dataframe (df_total) that has 9 columns (variables) and 10,085 rows (observations).\n",
"\n",
"[DeepLearningWorkshop_CWRA2024_Data](https://drive.google.com/file/d/1Y-GbDI_GLEEMh9Pw0zUbCfTKiTFSLGki/view?usp=sharing)\n",
"\n",
"This data is retrieved by running the code below, and is downloaded and unzipped.\n",
"\n",
"Note: on the left hand side, click on the folder icon and then click Refresh after running the blocks below to see the downloaded and unzipped files."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"id": "0QtC9SKtMgM3",
"colab": {
"base_uri": "https://localhost:8080/"
},
"outputId": "3cc0db6b-6afc-4ee9-9ff6-6b6217175642"
},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"/usr/local/lib/python3.10/dist-packages/gdown/__main__.py:140: FutureWarning: Option `--id` was deprecated in version 4.3.1 and will be removed in 5.0. You don't need to pass it anymore to use a file ID.\n",
" warnings.warn(\n",
"Downloading...\n",
"From: https://drive.google.com/uc?id=1yhvghpdfADMj2Kw5Zk5YFzwR2mAbRaYx\n",
"To: /content/CAMELS_Basin_1022500.zip\n",
"100% 189k/189k [00:00<00:00, 94.6MB/s]\n",
"Archive: CAMELS_Basin_1022500.zip\n",
" inflating: CAMELS_Basin_1022500.csv \n"
]
}
],
"source": [
"#dont change this\n",
"!gdown --id 1yhvghpdfADMj2Kw5Zk5YFzwR2mAbRaYx\n",
"#unzip the file\n",
"!unzip CAMELS_Basin_1022500.zip"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"id": "dgIK6M56fupx"
},
"outputs": [],
"source": [
"#either read the file from your drive folder (you should have mounted the drive), or read it from the temp folder\n",
"#df_total=pd.read_csv('/content/drive/MyDrive/[your drive folder]/CAMELS_Basin_1022500.csv')\n",
"df_total=pd.read_csv('/content/CAMELS_Basin_1022500.csv')"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "1YOeG0qUgAPY"
},
"source": [
"We install statsforecast library to do some plotting of data (optional)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"collapsed": true,
"id": "jAUOCMwzf7ka",
"outputId": "4bb2779f-a09f-4c00-dab0-d5bc9cfe23b2"
},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Collecting statsforecast\n",
" Downloading statsforecast-1.7.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (28 kB)\n",
"Requirement already satisfied: cloudpickle in /usr/local/lib/python3.10/dist-packages (from statsforecast) (3.1.0)\n",
"Requirement already satisfied: coreforecast>=0.0.12 in /usr/local/lib/python3.10/dist-packages (from statsforecast) (0.0.14)\n",
"Requirement already satisfied: numba>=0.55.0 in /usr/local/lib/python3.10/dist-packages (from statsforecast) (0.60.0)\n",
"Requirement already satisfied: numpy>=1.21.6 in /usr/local/lib/python3.10/dist-packages (from statsforecast) (1.26.4)\n",
"Requirement already satisfied: pandas>=1.3.5 in /usr/local/lib/python3.10/dist-packages (from statsforecast) (2.2.2)\n",
"Requirement already satisfied: scipy>=1.7.3 in /usr/local/lib/python3.10/dist-packages (from statsforecast) (1.13.1)\n",
"Requirement already satisfied: statsmodels>=0.13.2 in /usr/local/lib/python3.10/dist-packages (from statsforecast) (0.14.4)\n",
"Requirement already satisfied: tqdm in /usr/local/lib/python3.10/dist-packages (from statsforecast) (4.66.6)\n",
"Collecting fugue>=0.8.1 (from statsforecast)\n",
" Downloading fugue-0.9.1-py3-none-any.whl.metadata (18 kB)\n",
"Requirement already satisfied: utilsforecast>=0.1.4 in /usr/local/lib/python3.10/dist-packages (from statsforecast) (0.2.8)\n",
"Requirement already satisfied: threadpoolctl>=3 in /usr/local/lib/python3.10/dist-packages (from statsforecast) (3.5.0)\n",
"Collecting triad>=0.9.7 (from fugue>=0.8.1->statsforecast)\n",
" Downloading triad-0.9.8-py3-none-any.whl.metadata (6.3 kB)\n",
"Collecting adagio>=0.2.4 (from fugue>=0.8.1->statsforecast)\n",
" Downloading adagio-0.2.6-py3-none-any.whl.metadata (1.8 kB)\n",
"Requirement already satisfied: llvmlite<0.44,>=0.43.0dev0 in /usr/local/lib/python3.10/dist-packages (from numba>=0.55.0->statsforecast) (0.43.0)\n",
"Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.3.5->statsforecast) (2.8.2)\n",
"Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.3.5->statsforecast) (2024.2)\n",
"Requirement already satisfied: tzdata>=2022.7 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.3.5->statsforecast) (2024.2)\n",
"Requirement already satisfied: patsy>=0.5.6 in /usr/local/lib/python3.10/dist-packages (from statsmodels>=0.13.2->statsforecast) (0.5.6)\n",
"Requirement already satisfied: packaging>=21.3 in /usr/local/lib/python3.10/dist-packages (from statsmodels>=0.13.2->statsforecast) (24.2)\n",
"Requirement already satisfied: six in /usr/local/lib/python3.10/dist-packages (from patsy>=0.5.6->statsmodels>=0.13.2->statsforecast) (1.16.0)\n",
"Requirement already satisfied: pyarrow>=6.0.1 in /usr/local/lib/python3.10/dist-packages (from triad>=0.9.7->fugue>=0.8.1->statsforecast) (17.0.0)\n",
"Requirement already satisfied: fsspec>=2022.5.0 in /usr/local/lib/python3.10/dist-packages (from triad>=0.9.7->fugue>=0.8.1->statsforecast) (2024.10.0)\n",
"Collecting fs (from triad>=0.9.7->fugue>=0.8.1->statsforecast)\n",
" Downloading fs-2.4.16-py2.py3-none-any.whl.metadata (6.3 kB)\n",
"Collecting appdirs~=1.4.3 (from fs->triad>=0.9.7->fugue>=0.8.1->statsforecast)\n",
" Downloading appdirs-1.4.4-py2.py3-none-any.whl.metadata (9.0 kB)\n",
"Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from fs->triad>=0.9.7->fugue>=0.8.1->statsforecast) (75.1.0)\n",
"Downloading statsforecast-1.7.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (314 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m314.7/314.7 kB\u001b[0m \u001b[31m12.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading fugue-0.9.1-py3-none-any.whl (278 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m278.2/278.2 kB\u001b[0m \u001b[31m25.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading adagio-0.2.6-py3-none-any.whl (19 kB)\n",
"Downloading triad-0.9.8-py3-none-any.whl (62 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m62.3/62.3 kB\u001b[0m \u001b[31m6.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading fs-2.4.16-py2.py3-none-any.whl (135 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m135.3/135.3 kB\u001b[0m \u001b[31m13.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25hDownloading appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)\n",
"Installing collected packages: appdirs, fs, triad, adagio, fugue, statsforecast\n",
"Successfully installed adagio-0.2.6 appdirs-1.4.4 fs-2.4.16 fugue-0.9.1 statsforecast-1.7.8 triad-0.9.8\n"
]
}
],
"source": [
"!pip install statsforecast\n",
"from statsforecast import StatsForecast"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "xb16nM_qgiTT"
},
"source": [
"##Data preparation"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "bxDZdEuLgm94"
},
"source": [
"Before continuing, we should make the dataframe consistent with the library's API\n",
"\n",
"To use NeuralForecast, we have to include the unique_id column and rename the target (streamflow) and time (date) columns (why?)."
]
},
{
"cell_type": "markdown",
"source": [
"Remember that checking the data before model development, is a must, and not a luxury!"
],
"metadata": {
"id": "EuQRvxwAikhP"
}
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 206
},
"id": "YdhqR1E0jgjY",
"outputId": "abc27eb1-149c-4273-9740-8a9c76d9f844"
},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" date pr srad swe tmax tmin vp q ERA5_pr\n",
"0 1984-06-06 0.0 529.90 0 21.12 5.95 921.05 5.25 0.29\n",
"1 1984-06-07 0.0 473.11 0 22.08 9.72 1217.61 4.00 0.41\n",
"2 1984-06-08 0.0 479.10 0 24.58 11.35 1347.79 3.27 4.76\n",
"3 1984-06-09 0.0 502.39 0 30.14 13.90 1591.79 2.74 0.01\n",
"4 1984-06-10 0.0 480.55 0 31.70 16.24 1838.96 2.31 0.00"
],
"text/html": [
"\n",
"
\n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" date | \n",
" pr | \n",
" srad | \n",
" swe | \n",
" tmax | \n",
" tmin | \n",
" vp | \n",
" q | \n",
" ERA5_pr | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 1984-06-06 | \n",
" 0.0 | \n",
" 529.90 | \n",
" 0 | \n",
" 21.12 | \n",
" 5.95 | \n",
" 921.05 | \n",
" 5.25 | \n",
" 0.29 | \n",
"
\n",
" \n",
" 1 | \n",
" 1984-06-07 | \n",
" 0.0 | \n",
" 473.11 | \n",
" 0 | \n",
" 22.08 | \n",
" 9.72 | \n",
" 1217.61 | \n",
" 4.00 | \n",
" 0.41 | \n",
"
\n",
" \n",
" 2 | \n",
" 1984-06-08 | \n",
" 0.0 | \n",
" 479.10 | \n",
" 0 | \n",
" 24.58 | \n",
" 11.35 | \n",
" 1347.79 | \n",
" 3.27 | \n",
" 4.76 | \n",
"
\n",
" \n",
" 3 | \n",
" 1984-06-09 | \n",
" 0.0 | \n",
" 502.39 | \n",
" 0 | \n",
" 30.14 | \n",
" 13.90 | \n",
" 1591.79 | \n",
" 2.74 | \n",
" 0.01 | \n",
"
\n",
" \n",
" 4 | \n",
" 1984-06-10 | \n",
" 0.0 | \n",
" 480.55 | \n",
" 0 | \n",
" 31.70 | \n",
" 16.24 | \n",
" 1838.96 | \n",
" 2.31 | \n",
" 0.00 | \n",
"
\n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "df_total",
"summary": "{\n \"name\": \"df_total\",\n \"rows\": 10085,\n \"fields\": [\n {\n \"column\": \"date\",\n \"properties\": {\n \"dtype\": \"object\",\n \"num_unique_values\": 10085,\n \"samples\": [\n \"1990-05-14\",\n \"2005-09-12\",\n \"1992-09-25\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"pr\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 7.455063972319897,\n \"min\": 0.0,\n \"max\": 93.16,\n \"num_unique_values\": 1812,\n \"samples\": [\n 6.02,\n 2.02,\n 9.52\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"srad\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 132.8994803701706,\n \"min\": 39.73,\n \"max\": 675.64,\n \"num_unique_values\": 9071,\n \"samples\": [\n 421.83,\n 214.83,\n 357.36\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"swe\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 0,\n \"num_unique_values\": 1,\n \"samples\": [\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tmax\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 10.479424611720791,\n \"min\": -19.83,\n \"max\": 34.18,\n \"num_unique_values\": 3645,\n \"samples\": [\n 24.3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tmin\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 10.060391241598648,\n \"min\": -28.98,\n \"max\": 19.84,\n \"num_unique_values\": 3539,\n \"samples\": [\n 11.25\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"vp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 492.386689409983,\n \"min\": 49.14,\n \"max\": 2306.94,\n \"num_unique_values\": 9392,\n \"samples\": [\n 2162.68\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"q\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 2.455804283646605,\n \"min\": 0.05,\n \"max\": 28.27,\n \"num_unique_values\": 665,\n \"samples\": [\n 0.84\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ERA5_pr\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 6.857150253359693,\n \"min\": 0.0,\n \"max\": 107.8,\n \"num_unique_values\": 1677,\n \"samples\": [\n 27.18\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 7
}
],
"source": [
"df_total.head()"
]
},
{
"cell_type": "code",
"source": [
"#check the last entries. Also, let's check 10 entries instead of five\n",
"#your code below"
],
"metadata": {
"id": "7oPXk3yAi0DP"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 607
},
"id": "VHvGdxCmqWSp",
"outputId": "e808f7aa-51f9-4de0-b959-12e083ed98b0"
},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "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evTq1Stf3zz33HOm4ezKIRInOmPjxo3o1KkTUlNTUbRoUdSqVQujRo3CqVOnHMmeR+AMpmPHjqFZs2aYOnVqgXuGYeCKK67An3/+iU8//RSrV69G9erV0blzZxw7diw/XL9+/bBx40b873//w9q1a3HVVVehd+/eWL16dYE4hw8fjrS0NEeybdu2DT169ECnTp2wZs0a3Hvvvbjtttswf/78/DD//vsv2rVrhyJFiuCrr77Chg0b8Mwzz6B06dKWcQ8dOhSfffYZ3n//fSxduhR79uzBVVddFRZm8uTJePjhh/Hggw9i/fr1WLhwIbp27epI9khk5POePXvQuXNn1KlTBytWrMC8efOwfv169O/f31K27OxsJCUlYciQIejcubNpmMzMTJQvXx6jRo1Cs2bNHL/30qVLMXjwYPz4449YsGABTp06hS5duuS/V9WqVbF3796wv7Fjx6J48eLo3r2743QA9jw+duwYunTpgri4OCxevBjLli1DVlYWevbsiZycnLD4xo0bFybz3XffbSmbk7oMAGeddVZYvN9//71lvH/88QdycnIwbdo0rF+/Hs8++yxeeeUVPPTQQ/lhMjIy0KVLF1SvXh2rVq3C008/jUcffRSvvvqqZdxm2JUnYN+2srOz0aNHD2RlZeGHH37A7NmzMWvWLIwePdp1fkVy7NgxnH/++Zg4cWLUMMePH0e3bt3C8sgOJzK//PLLGDlyJB599FGsX78eY8eOxeDBg/HZZ585TicPWfkMAL1798aiRYvw+uuvY+PGjXj33XdRv359S/nmzp2LYcOGYcyYMfjll1/QrFkzdO3aFfv37w8Ld/vtt4fVZztD3Uld/eabb3DddddhyZIlWL58OapWrYouXbpg9+7dtvkaCo88zuOWW25Bnz59TNNxol/NOH78OGrVqoUnn3wSFStWNA3jtBxCcaIzihQpgn79+uHrr7/Gxo0b8dxzz2H69OkYM2aMY/kBAEaAAWB8/PHH+b83btxoADDWrVuXfy07O9soX768MX369PxrxYoVM954442wuMqUKRMWxjAM48svvzQaNGhgrF+/3gBgrF692lKe4cOHG2eddVbYtT59+hhdu3bN/z1ixAjj/PPPd/qKhmEYxqFDh4wiRYoY77//fv6133//3QBgLF++3DAMwzh48KCRlJRkLFy40FXcThCVz9OmTTMqVKhgZGdn59//7bffDADG5s2bHcl20003GZdffrllmA4dOhj33HOPo/gi2b9/vwHAWLp0adQwzZs3N2655RZP8efhJY/nz59vxMfHG4cPH84Pc+jQISMuLs5YsGBB/rXq1asbzz77rCt5nNTlMWPGGM2aNXMVrxlPPfWUUbNmzfzfL730klG6dGkjMzMz/9qIESOM+vXrM6cVWZ5O2taXX35pxMfHG+np6flhXn75ZSMlJSVfRif5ZcW2bdtsdcySJUsMAMa///5rG58Tmdu0aWPcf//9Yc8NGzbMaNeunSOZrRCVz1999ZVRsmRJ459//nElz7nnnmsMHjw4/3d2draRlpZmTJgwIf+aFz3hpa6ePn3aKFGihDF79mxXaUXiJY9DcdJ+nehXM6LpHCfl4IRInWHG0KFDXfe1gRthsiIzMxMAULRo0fxr8fHxSExMDPvybdu2LebOnYuDBw8iJycHc+bMwcmTJ9GxY8f8MPv27cPtt9+ON998E8nJyY7SX758eQGLvGvXrli+fHn+7//97384++yzcc0116BChQpo0aIFpk+fbhnvqlWrcOrUqbC4GzRogGrVquXHvWDBAuTk5GD37t1o2LAhqlSpgt69e2Pnzp2OZHcDr3zOzMxEQkJC2JlASUlJAGA7UiGLw4cPAwDKlCljen/VqlVYs2YNbr31Vq7pOsnjzMxMxMXFhfk/KVq0KOLj4wvk35NPPomyZcuiRYsWePrppwtMc0TipC4DwObNm5GWloZatWrh+uuvx44dO1y/6+HDh8Pyd/ny5bjggguQkJAQlvbGjRvx77//uo4/Mi3gTHk6aVvLly9HkyZNkJqaGiZPRkYG1q9fnx/GSX7JwonMmZmZYfULyG1/K1eudD2VEYmofM7Tn0899RQqV66MevXq4f7778eJEyeiypKVlYVVq1aFpR0fH4/OnTsXKJ+3334b5cqVQ+PGjTFy5EgcP37c8j291NXjx4/j1KlTUXWKU7zksUrclIMdkTojki1btmDevHno0KGDq3hjymDKqxwjR47Ev//+i6ysLEycOBG7du3C3r1788O99957OHXqFMqWLYvExETccccd+Pjjj1GnTh0AudMh/fv3x8CBA3H22Wc7Tj89PT2ssQNAamoqMjIy8hv0n3/+iZdffhl169bF/PnzMWjQIAwZMgSzZ8+2jDchIQGlSpUqEHd6enp+vDk5ORg/fjyee+45fPDBBzh48CAuvvjiAutDWOGVzxdeeCHS09Px9NNPIysrC//++y8efPBBAAiLRxU5OTm499570a5dOzRu3Ng0zOuvv46GDRuibdu2XNN2ksfnnXceihUrhhEjRuD48eM4duwY7r//fmRnZ4fl35AhQzBnzhwsWbIEd9xxB8aPH4/hw4dbpu+kLrdu3RqzZs3CvHnz8PLLL2Pbtm1o3749jhw54vg9t2zZgilTpuCOO+6wTTvvnlfMytNJ23Iij5P8kokTmbt27YrXXnsNq1atgmEY+Pnnn/Haa6/h1KlT+Pvvvz2nLTKf//zzT3z//fdYt24dPv7443xdd+edd0aV5++//0Z2drZp3KH1qW/fvnjrrbewZMkSjBw5Em+++SZuuOEGy3f1UldHjBiBtLQ0V9NdkXjNY5U4LQc7zHRGHm3btkXRokVRt25dtG/fHuPGjXMlY0wZTEWKFMFHH32ETZs2oUyZMkhOTsaSJUvQvXv3sFGMRx55BIcOHcLChQvx888/Y9iwYejduzfWrl0LAJgyZQqOHDmCkSNHRk2rePHi+X9OFgbmkZOTg5YtW2L8+PFo0aIFBgwYgNtvvx2vvPIKAGD8+PFhcTv9Ys/JycGpU6fwwgsvoGvXrjjvvPPw7rvvYvPmzViyZIlj+ZzAK5/POusszJ49G8888wySk5NRsWJF1KxZE6mpqfnxnHXWWfl54XaNkBXfffddWD6//fbbBcIMHjwY69atw5w5c0zjOHHiBN555x3uo0uAszwuX7483n//fXz22WcoXrw4SpYsiUOHDqFly5Zh5TBs2DB07NgRTZs2xcCBA/HMM89gypQp+aNYXuty9+7dcc0116Bp06bo2rUrvvzySxw6dAjvvfceAGDgwIFhcUeye/dudOvWDddccw1uv/12luxyhF15iuTtt98Oy4vvvvuOW9zdu3fPj/ess85y/NwjjzyC7t2747zzzkORIkVw+eWX46abbgIAppPgReZzTk4O4uLi8Pbbb+Pcc8/FJZdcgsmTJ2P27Nk4ceKEo3YdjQEDBqBr165o0qQJrr/+erzxxhv4+OOPsXXrVgB8dNGTTz6JOXPm4OOPPy4wuucGlXV5x44dYXk8fvx4bnGz6oy5c+fil19+wTvvvIMvvvgCkyZNcpV+Yc+S+5RWrVphzZo1OHz4MLKyslC+fHm0bt06f6Ro69atePHFF7Fu3bp85dKsWTN89913mDp1Kl555RUsXrwYy5cvL+Dq/eyzz8b111+P2bNnh+1myTuhuWLFigV2JOzbtw8pKSn5U02VKlVCo0aNwsI0bNgwf/fYwIED0bt37/x7aWlpqFixIrKysnDo0KGwr4d9+/blL66rVKkSAITFXb58eZQrV87TNIkdPPIZyP2q69u3L/bt24dixYohLi4OkydPRq1atQAAX375Zf70QF4e8uDss88OK8PIr5677roLn3/+Ob799ltUqVLFNI4PPvgAx48fR79+/bjJFYpdHgNAly5dsHXrVvz9998oXLgwSpUqhYoVK+bnnxmtW7fG6dOnsX37dtSvX99zXY6kVKlSqFevHrZs2QIgd6H5/fffbxp2z5496NSpE9q2bVtgMXe0tPPueSFaeTppWxUrViywkydSHrv8uuyyy9C6dev8e5UrV/b0Hma89tpr+aNYRYoUcSxzUlISZsyYgWnTpmHfvn2oVKkSXn31VZQoUQLly5f3JIvofK5UqRIqV64cdmJ9w4YNYRgGdu3aZdquExMTUahQIdPysapPeeW1ZcsW1K5d21QXuamrkyZNwpNPPomFCxeiadOmUdO1gyWPeZCWlhaWx06nFsuVK2dbDl51Rh5Vq1YFkNsPZmdnY8CAAbjvvvtQqFAhRzLG1KJvMzZt2mTEx8cb8+fPNwzjzKLiDRs2hIXr0qWLcfvttxuGYRh//fWXsXbt2vy/+fPnGwCMDz74wNi5c2fUtIYPH240btw47Np1110XtvDzuuuuK7AQ7d577zXatGkTNd68xXwffPBB/rU//vgjbDFf3iLh0EXf//zzT9i7e0VUPpvx+uuvG8nJyY4WthoG/0XfOTk5xuDBg420tDRj06ZNtvH26tXLUbx2eMljMxYtWmTExcUZf/zxR9Qwb731lhEfH28cPHgwahgndTmSI0eOGKVLlzaef/55i7cwjF27dhl169Y1rr32WuP06dMF7uctpM3Kysq/NnLkSE+Lvu3K00nbyluMvG/fvvww06ZNM1JSUoyTJ08ahuEtv0IRtejbSmYzLrjgAuO6665zJHMosvJ52rRpRlJSknHkyJH8MJ988okRHx9vHD9+PKp85557rnHXXXfl/87OzjYqV65sudj4+++/NwAYv/76a9QwTuvqxIkTjZSUFNPF107hkcehqFr07bYcDMNeZ5gxe/Zso3DhwmFlY0fgDKYjR44Yq1evNlavXm0AMCZPnmysXr3a+OuvvwzDMIz33nvPWLJkibF161bjk08+MapXr25cddVV+c9nZWUZderUMdq3b2+sWLHC2LJlizFp0iQjLi7O+OKLL0zTdKLMDMMw/vzzTyM5Odl44IEHjN9//92YOnWqUahQIWPevHn5YVauXGkULlzYeOKJJ4zNmzcbb7/9tpGcnGy89dZblnEPHDjQqFatmrF48WLj559/Ntq0aVPAyLr88suNs846y1i2bJmxdu1a49JLLzUaNWrkqsLkISufp0yZYqxatcrYuHGj8eKLLxpJSUm2Ha5hGMb69euN1atXGz179jQ6duyYL2soeddatWpl9O3b11i9erWxfv16y3gHDRpklCxZ0vjmm2+MvXv35v9FKuPNmzcbcXFxxldffWUrazRY89gwDGPGjBnG8uXLjS1bthhvvvmmUaZMGWPYsGH593/44Qfj2WefNdasWWNs3brVeOutt4zy5csb/fr1s5TNSV2+7777jG+++cbYtm2bsWzZMqNz585GuXLljP3790eNd9euXUadOnWMiy66yNi1a1dYHudx6NAhIzU11bjxxhuNdevWGXPmzDGSk5ONadOmucpfw3BWnnZt6/Tp00bjxo2NLl26GGvWrDHmzZtnlC9f3hg5cqSr/DLjn3/+MVavXm188cUXBgBjzpw5xurVq8PyY+/evcbq1auN6dOnGwCMb7/91li9erXlTjEnMm/cuNF48803jU2bNhkrVqww+vTpY5QpU8bYtm2bmyw2DENePh85csSoUqWKcfXVVxvr1683li5datStW9e47bbbLOWbM2eOkZiYaMyaNcvYsGGDMWDAAKNUqVL5O/K2bNlijBs3zvj555+Nbdu2GZ9++qlRq1Yt44ILLrCM10ldffLJJ42EhATjgw8+CMubUKNPVh4bRq7uWr16tXHHHXcY9erVy9dBoTv9nOjXSDIzM/PDVapUybj//vuN1atXh+14tisHM5zojLfeesuYO3eusWHDBmPr1q3G3LlzjbS0NOP66693mr2GYQTQYMr7yor8u+mmmwzDMIznn3/eqFKlilGkSBGjWrVqxqhRo8IqgmHkfqlfddVVRoUKFYzk5GSjadOmBba/h+LUYMqTr3nz5kZCQoJRq1YtY+bMmQXCfPbZZ0bjxo2NxMREo0GDBsarr75qG++JEyeMO++80yhdurSRnJxsXHnllWEVxjAM4/Dhw8Ytt9xilCpVyihTpoxx5ZVXGjt27LCNO9p7yMjnG2+80ShTpoyRkJBgWw6hVK9e3VS+UMzuV69e3TJes2cAFCjHkSNHGlWrVg1zieAWHnk8YsQIIzU11ShSpIhRt25d45lnnjFycnLy769atcpo3bq1UbJkSaNo0aJGw4YNjfHjx1uOMoTKZ1WX+/TpY1SqVMlISEgwKleubPTp08fYsmWLZZwzZ86Mmseh/Prrr8b5559vJCYmGpUrVzaefPJJW3nNcFKeTtrW9u3bje7duxtJSUlGuXLljPvuu884depUWBgnbd9pfowZMyY/zJgxYxzVyUjsZN6wYYPRvHlzIykpyUhJSTEuv/xyy5FJK2Tm8++//2507tzZSEpKMqpUqWIMGzbMcnQpjylTphjVqlUzEhISjHPPPdf48ccf8+/t2LHDuOCCC4wyZcoYiYmJRp06dYwHHnggzGVHNOzqajRdFVrGTuCVxx06dDCNJ9RQdqJfI8nrJyP/OnToEBbOqhzMcKIz5syZY7Rs2dIoXry4UaxYMaNRo0bG+PHjjRMnTlhnagRxhmEYBSfqCIIgCIIgiDxiapccQRAEQRCEF8hgIgiCIAiCsIEMJoIgCIIgCBvIYCIIgiAIgrCBDCaCIAiCIAgbyGAiCIIgCIKwgQwmgiAIgiAIG8hgIgiCIAiCsIEMJoIgCIIgCBvIYCIIwlf0798fcXFxiIuLQ5EiRZCamoqLL74YM2bMQE5OjuN4Zs2aFXZqO0EQhBVkMBEE4Tu6deuGvXv3Yvv27fjqq6/QqVMn3HPPPbj00ktx+vRp1eIRBBFAyGAiCMJ3JCYmomLFiqhcuTJatmyJhx56CJ9++im++uorzJo1CwAwefJkNGnSBMWKFUPVqlVx55134ujRowCAb775BjfffDMOHz6cP1r16KOPAgAyMzNx//33o3LlyihWrBhat26Nb775Rs2LEgShDWQwEQQRCC688EI0a9YMH330EQAgPj4eL7zwAtavX4/Zs2dj8eLFGD58OACgbdu2eO6555CSkoK9e/di7969uP/++wEAd911F5YvX445c+bgt99+wzXXXINu3bph8+bNyt6NIAj1xBmGYagWgiAIwin9+/fHoUOH8MknnxS4d+211+K3337Dhg0bCtz74IMPMHDgQPz9998Actcw3XvvvTh06FB+mB07dqBWrVrYsWMH0tLS8q937twZ5557LsaPH8/9fQiC8AeFVQtAEATBC8MwEBcXBwBYuHAhJkyYgD/++AMZGRk4ffo0Tp48iePHjyM5Odn0+bVr1yI7Oxv16tULu56ZmYmyZcsKl58gCH0hg4kgiMDw+++/o2bNmti+fTsuvfRSDBo0CE888QTKlCmD77//HrfeeiuysrKiGkxHjx5FoUKFsGrVKhQqVCjsXvHixWW8AkEQmkIGE0EQgWDx4sVYu3Ythg4dilWrViEnJwfPPPMM4uNzl2q+9957YeETEhKQnZ0ddq1FixbIzs7G/v370b59e2myEwShP2QwEQThOzIzM5Geno7s7Gzs27cP8+bNw4QJE3DppZeiX79+WLduHU6dOoUpU6agZ8+eWLZsGV555ZWwOGrUqIGjR49i0aJFaNasGZKTk1GvXj1cf/316NevH5555hm0aNECBw4cwKJFi9C0aVP06NFD0RsTBKEa2iVHEITvmDdvHipVqoQaNWqgW7duWLJkCV544QV8+umnKFSoEJo1a4bJkydj4sSJaNy4Md5++21MmDAhLI62bdti4MCB6NOnD8qXL4+nnnoKADBz5kz069cP9913H+rXr48rrrgCP/30E6pVq6biVQmC0ATaJUcQBEEQBGEDjTARBEEQBEHYQAYTQRAEQRCEDWQwEQRBEARB2EAGE0EQBEEQhA1kMBEEQRAEQdhABhNBEARBEIQNZDARBEEQBEHYQAYTQRAEQRCEDWQwEQRBEARB2EAGE0EQBEEQhA1kMBEEQRAEQdhABhNBEARBEIQN/weDlubcZ4vJ+QAAAABJRU5ErkJggg==\n"
},
"metadata": {}
}
],
"source": [
"#plot one of the columns (feel free to change the variable)\n",
"df_total.plot(x='date', y='tmax', figsize=(6, 6),c='red')\n",
"plt.xlabel('Date')\n",
"plt.ylabel('Max temp.')\n",
"plt.tight_layout()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"source": [
"For using NeuralForecast models, the data needs to be in a format supported by the library"
],
"metadata": {
"id": "WxcsO3GcjOhA"
}
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"id": "qx-DI4nXgtbB"
},
"outputs": [],
"source": [
"#changing the date, and streamflow column names, adding the identifier\n",
" ##library specific\n",
"df_total['unique_id'] = 1. # We can add an integer as identifier\n",
"df_total =df_total.rename(columns={'date': 'ds', 'q': 'y'})"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"id": "3mFRkND47AVV"
},
"outputs": [],
"source": [
"#convert ds date to timestamp\n",
"#this is because dates are usually in string format, not recognized by all Python classes\n",
"df_total['ds'] = pd.to_datetime(df_total['ds'])"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "6TC7LKnHjP7Q"
},
"source": [
"Plot target (Q mm/day)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 257
},
"id": "aQC1JefngL-R",
"outputId": "1d3685b8-0573-414a-a532-097fc6640034"
},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
""
],
"image/png": "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ombYsGGhHP/II49EZWUlHn/8cRx11FHZyJ1HH31U2RYA+PTTT3HCCScAAGpqavDiiy+a9jv66KPRsWNH3HPPPTj88MNRWVlp+n716tXYeuutA7W3R48e+L//+z+8+OKLprpQY8eOxQ8//JA1UhlEXRNqw4YNWL58OXr06JFty4knnogrrrgCTz31FJ544gkATdFoAwcOxLbbbos//vGPgc5FCCGEEEIIIVFBIxQhhBBCCCElyKmnnorrrrsOf/vb33DZZZehtrYWAwYMwG677WapfxSErbfeGldffTX69euHv/zlLzjuuOMwdepUjBo1CltttZVp36OOOgq/+MUvcO655+Kaa65BeXk5XnjhBWy99dZYtGhRdr+OHTtiwIABOOOMM/Cb3/wGp556anaf999/HwceeGDWOBOEfv364fjjj8dBBx2Ec845B+vWrcPjjz+OPffcE5s2bTLtG7Qm1MiRIzF9+nQAQGNjI2bMmIG77roLAHDCCSdkDYLDhg3D2WefjUGDBuGss84CAGy33Xa4/PLL8cADD6CxsRH77bcfhg8fjs8++wyvvPKKbdpEQgghhBBCSH7RdR3pdNpTCu9Co7y8HBUVFbZp1WVohCKEEEIIIaQE2XLLLTFs2DBceeWVuPbaa7HjjjuiX79+mDt3bihGKAC466670KZNGwwcOBCffPIJ9t9/f4wZMwbHH3+8ab/KykoMGzYMl1xyCW6++WZ0794dl19+Obp06YKzzz7btO9pp52Gnj174t5778UDDzyA+vp6bLvttjj44IMt+/rlmGOOwZtvvombbroJffv2xc4774xBgwZhxIgRGD9+fE7HNnj77bdNEV5Tp07F1KlTATQZmQwjlB333nsvunTpgqeffhqDBw/GrrvuipdffhmnnXZaKO0jhBBCCCGE5EZDQwOWL1+O2trauJsSGe3atUOPHj3QqlUr131TeljVhAkhhBBCCCHEAzvssAMOO+wwDB48OO6mEEIIIYQQQkhoaJqGuXPnory8HFtvvTVatWrlOWKoENB1HQ0NDVi9ejUymQx23XVXlJWVOf6GkVCEEEIIIYQQQgghhBBCCCE50tDQAE3T0KtXL7Rr1y7u5kRC27ZtUVlZiZ9//hkNDQ1o06aN4/40QhFCCCGEEEKKhoaGBqxbt85xn06dOqFt27Z5ahEhhBBCCCGk1HCLDip0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e/fGnDlzTPscdthhSKVSpn8XXXRRTC0mhJDChDWhCFHDaAlCihON7zYhhBBCCHFA0ygvEpIvYjVCTZgwAX369MGXX36JsWPHorGxEUcddRRqampM+51//vlYvnx59t/9998fU4sJIYQQQgghSUcXlAp0xCCEEEJ8QmcOUgLQIZGQ/BFrTajRo0eb/h48eDC6deuGyZMn45BDDslub9euHbp3757v5hFCSNFA2YoQQkgpYfJs5RxICCGEEEIkGAlFSP5IVE2oDRs2AAC6du1q2v7KK69gq622wl577YW+ffuitrbW9hj19fWorq42/SOEkFJEZ0EMQgghJQo9WwkhhJDgMIqYlAKUFwnJH7FGQolomobLL78cBx54IPbaa6/s9tNOOw3bb789evbsiRkzZuC6667DnDlz8M477yiP069fP9x+++35ajYhhBQElK0IUcN3g5DiRFQqUMFACCGE+INTJykFKCMSkj8SY4Tq06cPvvvuO0ycONG0/YILLsh+/vWvf40ePXrgiCOOwLx587DzzjtbjtO3b19ceeWV2b+rq6vRq1ev6BpOCCEFAIUrQgghhBBCCCGEkCaYjo+Q/JEII9Sll16K9957D59++im22247x333339/AMBPP/2kNEK1bt0arVu3jqSdhBBSqFC0IoQQUqrQD4MQQgjxB50YSUnAbk5I3ojVCKXrOv773/9i2LBhGD9+PHbccUfX30ybNg0A0KNHj4hbRwghhY1p3cBFBCFKmO+ekOKH7zkhhBBCCJHRqCchJG/EaoTq06cPhg4dihEjRqBDhw5YsWIFAKBTp05o27Yt5s2bh6FDh+K4447DlltuiRkzZuCKK67AIYccgr333jvOphNCSEFB2YoQQkgpwXmPEEIIyQHOo6QEYDo+QvJHrEaoAQMGAAAOO+ww0/ZBgwbhrLPOQqtWrfDRRx/h0UcfRU1NDXr16oWTTz4ZN910UwytJYSQwoXpFAghhJQqnAMJIYQQQogMZURC8kfs6fic6NWrFyZMmJCn1hBCSPHCVESEEEJKFk6BhBBCiC+onCelAPs5IfmjLO4GEEIIiQbR8ETZihA1fDcIIYQQQggxQxGZlAI0QhGSP2iEIoSQUoDCFSGEkBLC7IjBOZAQQgghhJhhTShC8geNUIQQUgJQ/0YIIYQQQgghxAt04CClAPs5IfmDRihCCCkB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\n"
},
"metadata": {},
"execution_count": 13
}
],
"source": [
"StatsForecast.plot(df_total, engine='matplotlib')"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "c3MXkUHNrtO_"
},
"source": [
"Use the code template provided above to plot q (y) using pandas available classes"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"id": "RQn7gQCFr9TI"
},
"outputs": [],
"source": [
"#your code below"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "bBm1DSUTpiOW"
},
"source": [
"# **Splitting the Data**"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "T9h0bwi3qpRT"
},
"source": [
"Here, data up to 2008 is used for training/optimization + validation, and the rest is used for testing (out-of-sample evaluation).\n",
"We will discuss validation in the next sections in more detail.\n",
"\n",
"Note: For hydrologic modelers: training + validation is similar to the calibration set, while the test set is similar to the validation set"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"id": "AhmIzdf5kZTY"
},
"outputs": [],
"source": [
"Y_train_df = df_total[df_total.ds<='2008-12-31']\n",
"Y_test_df =df_total[df_total.ds>'2008-12-31']"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "7_YB9dgVRTwI"
},
"source": [
"We can visualize our flow data by assigned period, i.e. training, validation, and testing."
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 257
},
"id": "rBsMbJWgi2fU",
"outputId": "8f9627cc-3778-4631-c7da-c57a2d38edc9"
},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
""
],
"image/png": "iVBORw0KGgoAAAANSUhEUgAABqEAAAFpCAYAAAAcKIKYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAD5vklEQVR4nOzdd3hUZdoG8PtMzaQXCIHQkSpFVKwoFgR7XV3Fhq7uqtjrupZV1xXrt64N1wb2Lih2REBRUUQQEaS3QEKA9Db9++Oc950zNTPJTGaSuX/X5SWZTCaHkJk5533e534Ur9frBREREREREREREREREVEcGZJ9AERERERERERERERERNT1sAhFREREREREREREREREccciFBEREREREREREREREcUdi1BEREREREREREREREQUdyxCERERERERERERERERUdyxCEVERERERERERERERERxxyIUERERERERERERERERxR2LUERERERERERERERERBR3LEIRERERERERERERERFR3LEIRURERERE7TZr1iwoioItW7Yk+1CismXLFiiKglmzZrV636lTp6J///4JPyYiIiIiIqKuhkUoIiIiIiKiDjJjxgycffbZ6Nu3LxRFwdSpU2P6eo/Hg4cffhgDBgxARkYGRo8ejTfffDMxB0tERERERNROpmQfABERERERdX4XXnghzj33XFit1mQfSlT69euH5uZmmM3mDv2+Dz30EOrr63HQQQehvLw85q+/44478OCDD+Lyyy/HuHHj8OGHH2LKlClQFAXnnntuAo6YiIiIiIio7ViEIiIiIiKidjMajTAajck+jKgpioKMjIwO/76LFi2SXVDZ2dkxfe2OHTvw2GOPYdq0aXjqqacAAJdddhkmTJiAW265BWeffXan+jcgIiIiIqKuj3F8RERERERpKNyco3vuuQeKosiPFUXB1VdfjTlz5mDkyJGwWq3Yd9998fnnn/t9XaiZUF6vF/fffz969+6NzMxMHH300fj999/Rv39/vxi6wO8Z6TEB4LPPPsMRRxyBrKws5OTk4KSTTsLvv/8e098/3Ewo8ffMyMjAyJEjMXv27JgetzX9+vUL+XeNxocffgin04mrrrpK3qYoCq688kqUlZXhhx9+iNdhEhERERERxQU7oYiIiIiIKKLFixfjgw8+wFVXXYWcnBw88cQTOOuss7Bt2zYUFRWF/bq7774b999/P0488USceOKJ+OWXXzBp0iQ4HI42H8urr76Kiy++GJMnT8ZDDz2EpqYmzJgxA+PHj8fy5ctDFtai9eWXX+Kss87CiBEjMH36dOzduxeXXHIJevfuHXTf6upquN3uVh8zMzMTmZmZbT4mveXLlyMrKwvDhw/3u/2ggw6Snx8/fnxcvhcREREREVE8sAhFREREREQRrVmzBqtXr8agQYMAAEcffTTGjBmDN998E1dffXXIr9m9ezcefvhhnHTSSZg7d67s/rnjjjvwwAMPtOk4GhoacO211+Kyyy7Dc889J2+/+OKLMXToUDzwwAN+t8fqtttuQ48ePbB48WLk5eUBACZMmIBJkyahX79+fvcdO3Ystm7d2upj/vOf/8Q999zT5mPSKy8vR48ePYI6qXr27AkA2LlzZ1y+DxERERERUbywCEVERERERBFNnDhRFqAAYPTo0cjNzcWmTZvCfs1XX30Fh8OBa665xq9ocv3117e5CDVv3jzU1NTgvPPOw549e+TtRqMRBx98MBYsWNCmxwXUAs+KFSvw97//XRagAOC4447DiBEj0NjY6Hf/119/Hc3Nza0+7sCBA9t8TIGam5thtVqDbhezraI5HiIiIiIioo7EIhQREREREUXUt2/foNsKCgpQXV0d9mtEl9DgwYP9bu/evTsKCgradBzr168HABxzzDEhP5+bm9umxwXCHy8ADB06FL/88ovfbYcffnibv1db2Ww22O32oNtbWlrk54mIiIiIiFIJi1BERERERGkoMNJNCDXnyGg0hryv1+vt0GPxeDwA1LlQJSUlQfc3mTru8mb37t1RzYTKzs5GdnZ2XL5nz549sWDBAni9Xr+fWXl5OQCgV69ecfk+RERERERE8cIiFBERERFRGiooKEBNTU3Q7dHMOYqGmKG0fv16v0i63bt3B3VQic6ompoa5Ofnhz0WEQlYXFyMiRMnxuU4Qx1voLVr1wbdNm7cuA6fCbXffvvhhRdewJo1azBixAh5+48//ig/T0RERERElEpYhCIiIiIiSkODBg1CbW0tVq5cidGjRwNQO2pmz54dl8efOHEizGYznnzySUyaNEl27jz++OMhjwUAvvnmG5x66qkAgMbGRrz88st+95s8eTJyc3PxwAMP4Oijj4bZbPb7/O7du9G9e/c2HW/Pnj2x33774eWXX/abCzVv3jysXr1aFqmERM+Eqq2tRXl5OXr27CmP5bTTTsMNN9yAZ555Bk899RQAtRvt2WefRWlpKQ477LA2fS8iIiIiIqJEYRGKiIiIiCgNnXvuubjttttwxhln4Nprr0VTUxNmzJiBIUOGBM0/aovu3bvj5ptvxvTp03HyySfjxBNPxPLly/HZZ5+hW7dufvedNGkS+vbti7/85S+45ZZbYDQa8dJLL6F79+7Ytm2bvF9ubi5mzJiBCy+8EPvvvz/OPfdceZ9PPvkEhx9+uCzOtMX06dNx0kknYfz48bj00ktRVVWFJ598Evvuuy8aGhr87tvWmVBz587Fr7/+CgBwOp1YuXIl7r//fgDAqaeeKguCs2fPxiWXXIKZM2di6tSpAIDevXvj+uuvxyOPPAKn04lx48Zhzpw5+Pbbb/H666+HjU0kIiIiIqKO5fV64XK5oorw7myMRiNMJlPYWPVALEIREREREaWhoqIizJ49GzfeeCNuvfVWDBgwANOnT8f69evjUoQCgPvvvx8ZGRl49tlnsWDBAhx88MH48ssvcdJJJ/ndz2w2Y/bs2bjqqqtw1113oaSkBNdffz0KCgpwySWX+N13ypQp6NWrFx588EE88sgjsNvtKC0txRFHHBF031gdf/zxePfdd3HnnXfi9ttvx6BBgzBz5kx8+OGHWLhwYbseW3j//ff9OryWL1+O5cuXA1CLTKIIFc6DDz6IgoIC/O9//8OsWbMwePBgvPbaa5gyZUpcjo+IiIiIiNrH4XCgvLwcTU1NyT6UhMnMzETPnj1hsVhava/ijdc0YSIiIiIioij0798fRx11FGbNmpXsQyEiIiIiIoobj8eD9evXw2g0onv37rBYLFF3DHUGXq8XDocDu3fvhtvtxuDBg2EwGCJ+DTuhiIiIiIiIiIiIiIiI2snhcMDj8aBPnz7IzMxM9uEkhM1mg9lsxtatW+FwOJCRkRHx/ixCERERERFRl+FwOFBVVRXxPnl5ebDZbB10RERERERElG5a6w7q7GL5+7EIRUREREREXcb333+Po48+OuJ9Zs6cialTp3bMAREREREREaUxFqGIiIiIiKhDbdmyJWGPPWbMGMybNy/iffbdd9+EfX8iIiIiIiLyYRGKiIiIiIi6jIKCAkycODHZh0FEREREREQAunYwIRERERERERERERERESVFl++E8ng82LlzJ3JycqAoSrIPh4iIiIiIiIiIiIiIOojX60V9fT169eoFg4F9OR2tyxehdu7ciT59+iT7MIiIiIiIiIiIiIiIKEm2b9+O3r17d+j39Hq9aGlxduj3FDIyzFE35rzyyiu44YYbsHPnTlitVnn76aefjpycHLz66qttPo4uX4TKyckBoP6C5ebmJvloiIiIiIiIiIiIiIioo9TV1aFPnz6yVtCRWlqcOPa4ezr8+wLA/Hn3wGazRHXfs88+G9deey0++ugjnH322QCAyspKfPLJJ/jyyy/bdRxdvgglKn25ubksQhERERERERERERERpSGO6wnPZrNhypQpmDlzpixCvfbaa+jbty+OOuqodj12ly9CERERERERERERERERdbSMDDPmz7snad87FpdffjnGjRuHHTt2oLS0FLNmzcLUqVPbXbxjEYqIiIiIiIiIiIiIiCjOFEWJOhIv2caOHYsxY8bglVdewaRJk/D777/jk08+affjsghFRERERERERERERESU5i677DI8/vjj2LFjByZOnIg+ffq0+zENcTguIiIiIiIiIiIiIiIi6sSmTJmCsrIyPP/887j00kvj8pgsQhEREREREREREREREaW5vLw8nHXWWcjOzsbpp58el8dkEYqIiIiIiIiIiIiIiIiwY8cOnH/++bBarXF5PM6EIiIiIiIiIkpDHo8HBgP3phIRERERUF1djYULF2LhwoV45pln4va4PNskIiIiIiIiSjM7d1bhxJP/jWf/92WyD4WIiIiIUsDYsWMxdepUPPTQQxg6dGjcHpedUERERERERERp5rXXv0FdXTNeeXUhrvjbpGQfDhEREREl2ZYtWxLyuOyEIiIiIiIiIkoz1gxzsg+BiIiIiNJAUotQ06dPx7hx45CTk4Pi4mKcfvrpWLt2rd99jjrqKCiK4vffFVdckaQjJiIiIiIiIur8srMykn0IRERERF2W1+tN9iEkVCx/v6QWoRYtWoRp06ZhyZIlmDdvHpxOJyZNmoTGxka/+11++eUoLy+X/z388MNJOmIiIiIiIiKizi8ryyr/7HZ7kngkRERERF2H2ax2mzc1NSX5SBJL/P3E3zeSpM6E+vzzz/0+njVrFoqLi7Fs2TIceeSR8vbMzEyUlJR09OERERERERERdUn6TqjGRjtyc21JPBoiIiKirsFoNCI/Px+VlZUA1NqGoihJPqr48Xq9aGpqQmVlJfLz82E0Glv9mqQWoQLV1tYCAAoLC/1uf/311/Haa6+hpKQEp5xyCu666y5kZmaGfAy73Q673S4/rqurS9wBExEREREREXVCBqMvGKW+vplFKCIiIqI4EQ01ohDVFeXn50fdOJQyRSiPx4Prr78ehx9+OEaOHClvnzJlCvr164devXph5cqVuO2227B27Vp88MEHIR9n+vTpuPfeezvqsImIiIiIiIg6HY/Hl+NfX9+cxCMhIiIi6loURUHPnj1RXFwMp9OZ7MOJO7PZHFUHlJAyRahp06Zh1apVWLx4sd/tf/3rX+WfR40ahZ49e+LYY4/Fxo0bMWjQoKDHuf3223HjjTfKj+vq6tCnT5/EHTgRERERERFRJ6MfJs0iFBEREVH8GY3GmIo1XVVKFKGuvvpqfPzxx/jmm2/Qu3fviPc9+OCDAQAbNmwIWYSyWq2wWq1BtxMRERERERGRyu32yD+zCEVEREREiZLUIpTX68U111yD2bNnY+HChRgwYECrX7NixQoAQM+ePRN8dERERERERERdk74Tqo5FKCIiIiJKkKQWoaZNm4Y33ngDH374IXJyclBRUQEAyMvLg81mw8aNG/HGG2/gxBNPRFFREVauXIkbbrgBRx55JEaPHp3MQyciIiIiIiLqtDgTioiIiIg6QlKLUDNmzAAAHHXUUX63z5w5E1OnToXFYsFXX32Fxx9/HI2NjejTpw/OOuss3HnnnUk4WiIiIiIiIqKuweNhHB8RERERJV7S4/gi6dOnDxYtWtRBR0NERERERESUHtgJRUREREQdwZDsAyAiIiIiIiKijqXfFMoiFBERERElCotQRERERERERGnG49YXoVqSeCRERERE1JWxCEVERERERESUZjzshCIiIiKiDsAiFBEREREREVGa8ZsJ1cAiFBERERElBotQRERERERERGnG4/HIP7MTioiIiIgShUUoIiIiIiIiojTj1cXxNTS0+BWliIiIiIjihUUoIiIiIiIiojSjj+PzeLyw211JPBoiIiIi6qpYhCIiIiIiIiJKM4GdT243O6GIiIiIKP5YhCIiIiIiIiJKM/pOKIBFKCIiIiJKDBahiIiIiIiIiNKMfiYUALhc7iQdCRERERF1ZSxCEREREREREaUZt5udUERERESUeCxCEREREREREaUZdkIRERERUUdgEYqIiIiIiIgozXAmFBERERF1BBahiIiIiIiIiNKMx+NfdGInFBERERElAotQRERERERERGnG42UnFBERERElHotQRERERERERGnG6wmcCcUiFBERERHFH4tQRERERERERGkmMI6PnVBERERElAgsQhERERERERGlGU9QJxRnQhERERFR/LEIRURERERERJRmAotQ7IQiIiIiokRgEYqIiIiIiIgozbAIRUREREQdgUUoIiIiIiIiojTj9TKOj4iIiIgSj0UoIiIiIiIiojTj9vh3PrETioiIiIgSgUUoIiIiIiIiojTjDYjjc7nZCUVERERE8cciFBEREREREVGaCZoJ5WInFBERERHFH4tQRERERERERGnGExDH52IcHxERERElAItQRERERERERGnG4w3ohGIRioiIiIgSgEUoIiIiIiIiojQTNBPKxZlQRERERBR/LEIRERERERERpRl34EwodkIRERERUQKwCEVERERERESUZtgJRUREREQdgUUoIiIiIiIiojTDmVBERERE1BFYhCIiIiIiIiJKM56AopPLxSIUEREREcUfi1BEREREREREaUZ0QlksJgDshCIiIiKixGARioiIiIiIiCjNiJlQZrMRAGdCEREREVFiJLUINX36dIwbNw45OTkoLi7G6aefjrVr1/rdp6WlBdOmTUNRURGys7Nx1llnYdeuXUk6YiIiIiIiIqLOz+NRO5/MZnZCEREREVHiJLUItWjRIkybNg1LlizBvHnz4HQ6MWnSJDQ2Nsr73HDDDZg7dy7effddLFq0CDt37sSZZ56ZxKMmIiIiIiIi6twC4/jYCUVEREREiWBK5jf//PPP/T6eNWsWiouLsWzZMhx55JGora3Fiy++iDfeeAPHHHMMAGDmzJkYPnw4lixZgkMOOSQZh01ERERERETUqYk4PpNJjeNjJxQRERERJUJKzYSqra0FABQWFgIAli1bBqfTiYkTJ8r7DBs2DH379sUPP/wQ8jHsdjvq6ur8/iMiIiIiIiIiH7dHdEKxCEVEREREiZMyRSiPx4Prr78ehx9+OEaOHAkAqKiogMViQX5+vt99e/TogYqKipCPM336dOTl5cn/+vTpk+hDJyIiIiIiIupURCeUmAnFOD4iIiIiSoSUKUJNmzYNq1atwltvvdWux7n99ttRW1sr/9u+fXucjpCoc3A4XKiubkj2YRARERERUQqTM6G0IhQ7oYiIiIgoEZI6E0q4+uqr8fHHH+Obb75B79695e0lJSVwOByoqanx64batWsXSkpKQj6W1WqF1WpN9CETpaT168tx082zUFffjNnv34qCguxkHxIREREREaUgj1Z0MmtxfC4Xi1BEREREFH9J7YTyer24+uqrMXv2bHz99dcYMGCA3+cPOOAAmM1mzJ8/X962du1abNu2DYceemhHHy5RSmtqsuPa61/Enr31cDhc2LGjKtmHREREREREKUp0QpnZCUVERERECZTUTqhp06bhjTfewIcffoicnBw55ykvLw82mw15eXn4y1/+ghtvvBGFhYXIzc3FNddcg0MPPRSHHHJIMg+dKOVUVNSgtrZJftxidybxaIiIiIiIKJX5ZkKJTijOhCIiIiKi+EtqEWrGjBkAgKOOOsrv9pkzZ2Lq1KkAgP/85z8wGAw466yzYLfbMXnyZDzzzDMdfKREqc/j8d+5aG9hEYqIiIiIiEJza9cPnAlFRERERImU1CKUV2v/jyQjIwNPP/00nn766Q44IqLOK/CisaXFkaQjISIiIiKiVOf1BnRCudkJRURERETxl9SZUEQUP26Pf1G3WeuE2rKlkvOhiIiIiIjIj8fDmVBERERElHhJ7YQiovjxuAPj+ByoqqrHlAseBwB8v/iBJBwVERERERGlIk/QTCgWoYiIiIgo/tgJRdRFeAI6oVrsTvz880b5MQcNExFROnO53HwvJCLSkUUoi+iE4mskEREREcUfi1BEXUTgRWNLixMbNlbIj+12Z0cfEhERUUrwer24eOqTOOvsR1iIIiLSiJlQFi2Oj51QRERERJQILEIRdRGBM6FaWpzYsEFXhHK4OvqQiIiIUoLd7sTmLZXYvbsOZTv2JvtwiIhSgojzFnF8nAlFRERERInAIhRRF+Hx+F80trQ4sOaPMvkxO6GIiChd6Xf3NzXak3gkRESpwyM6oSyiE4qdokREREQUfyxCEXUR7oD4jI2bKlBb2yQ/drATioiI0pR+YbWRRSgiIgCAV0tSMJnYCUVEREREicMiFFEX4QmI41u5cqvfx+yEIiKidKUvQtXXNyfxSIiIUodbS1IQnVAsQhERERFRIrAIRdRFuAPi+AKLUg47O6GIiCg9OXVFqNq6pgj3JCJKH14tjk/M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9GBjY4Nvv/32o/5+iIiIiIiIiismoYiIiIiIqFDatGkTLCwscP36dYwbNw6jRo1Cjx490LhxY3h5eaFdu3YYMGAAkpKSAACxsbFo1aoV6tSpg5s3b+L48eOIjIxEz5498/y7Bw8ejPDwcJw7dw67d+/G8uXLERUVJb2/Z88eLFy4EKtWrUJAQAD279+PGjVq5Nu5ExERERERFQcsx0dERERERIVSrVq18PPPPwMApk6dijlz5sDCwgLDhg0DAEybNg0rVqyAr68vGjZsiKVLl6JOnTqYNWuWdIz169fDzs4ODx8+ROXKlT/o9z58+BDHjh3D9evX0aBBAwDAunXrULVqVekzYWFhsLa2Rps2baCjowN7e3vu/0RERERERPQWroQiIiIiIqJCqWbNmtKf5XI5zM3Ns6w2srKyAgBphdLt27dx7tw5aY8pY2NjVKlSBQAQFBT0wb/3/v370NbWRr169aTXqlSpghIlSkg/9+jRA8nJyShfvjyGDRuGffv2QaFQfNR5EhERERERFVdcCUVERERERIWSjo5Olp9lMlmW12QyGQBApVIBABISEtClSxfMnTs327HKlCmTr22zs7ODv78/Tp8+jVOnTmH06NGYP38+Lly4kK3dRERERERE/1VMQhERERERUbFQt25d7NmzBw4ODtDW/vhHnSpVqkChUODWrVtSOT5/f3/ExsZm+ZyBgQG6dOmCLl26YMyYMahSpQr8/PxQt27dTzkNIiIiIiKiYoPl+IiIiIiIqFgYM2YMXrx4gT59+uDGjRsICgrCiRMnMGTIECiVyg8+jpOTE9q3b48RI0bg2rVruHXrFoYOHQoDAwPpMxs3bsS6detw584dBAcHY8uWLTAwMEC5cuUK4tSIiIiIiIiKJCahiIiIiIioWLCxscGVK1egVCrRrl071KhRAxMmTECJEiWgpZW3R58NGzbAxsYGzZs3R/fu3TF8+HBYWlpK75coUQJr1qxBkyZNULNmTZw+fRqHDh2Cubl5fp8WERERERFRkSUTQghNN4KIiIiIiEgTNm7ciAkTJmQrtZcfQkND4ejoCG9vb9SuXTvfj09ERERERFTYcSUUERERERH9p7169QrGxsaYMmVKvh2zQ4cOcHZ2zrfjERERERERFUVcCUVERERERP9Z8fHxiIyMBJBRYs/CwiJfjhsREYHk5GQAgL29PXR1dfPluEREREREREUJk1BERERERERERERERESU71iOj4iIiIiIiIiIiIiIiPIdk1BERERERERERERERESU75iEIiIiIiIiIiIiIiIionzHJBQRERERERERERERERHlOyahiIiIiIiIiIiIiIiIKN8xCUVERERERERERERERET5jkkoIiIiIiIiIiIiIiIiyndMQhEREREREREREREREVG++z+UoGm94nAvhgAAAABJRU5ErkJggg==\n"
},
"metadata": {},
"execution_count": 15
}
],
"source": [
"#illustrating all the periods\n",
"StatsForecast.plot(Y_test_df, engine='matplotlib')"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "p087UhFeLftk"
},
"source": [
"# Performance Metric"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "RdXjLtdKFa1X"
},
"source": [
"We can define some common metrics that are used for evaluating model performance results, such as Nash-Sutcliffe Efficiency (NSE).\n",
"A NSE=0 indicates that the predictions/forecasts are as accurate as reporting the mean of the target (streamflow)"
]
},
{
"cell_type": "markdown",
"source": [
""
],
"metadata": {
"id": "ba1nDTZs-6fk"
}
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"id": "5sZbKH06KuQM"
},
"outputs": [],
"source": [
"#defining some error functions\n",
"def NSE(Pr,Y):\n",
" Pr=np.reshape(Pr,(-1,1))\n",
" Y=np.reshape(Y,(-1,1))\n",
" error=Y-Pr\n",
" nse=1-(np.nansum((error)**2))/np.nansum((Y-np.nanmean(Y))**2)\n",
" return nse"
]
},
{
"cell_type": "markdown",
"source": [
"As a rule of thumb, a NSE>0.5 is considered satisfactory"
],
"metadata": {
"id": "R0CY_4vCkDxe"
}
},
{
"cell_type": "markdown",
"metadata": {
"id": "oAcOFJNZL0jf"
},
"source": [
"# Plot Settings (optional)"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"id": "TpkhTpJTMD1y"
},
"outputs": [],
"source": [
"#general plot settings\n",
"import matplotlib.pylab as pylab\n",
"params = {'legend.fontsize': 'large',\n",
" 'axes.labelsize': 'x-large',\n",
" 'axes.titlesize':'x-large',\n",
" 'xtick.labelsize':'x-large',\n",
" 'ytick.labelsize':'x-large'}\n",
"pylab.rcParams.update(params)\n",
"#%%\n",
"from matplotlib import rcParams\n",
"rcParams['axes.labelweight'] = 'bold'\n",
"rcParams['font.weight'] = 'bold'"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "JC4TT2kydsql"
},
"source": [
"# Building Deep Learning (DL) models"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "7xJjxTglO5U9"
},
"source": [
"## LSTM"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "ljZI2loAln7-"
},
"source": [
"Let's start with a simple LSTM. This model will be trained without any hyperparameter optimization. Hyperparameters are model settings that influence the training/optimization of the model parameters (weights and biases in the LSTM).\n",
"\n",
"Recall that this model is using only meteorological data and streamflow as input.\n",
"\n",
"First, we select a lag/lookback period of 14 (two weeks). This means that all selected meterological forcings and streamflow values are lagged 14 days and considered as input to the model to forecast streamflow at a particular horizon.\n",
"\n",
"The target is streamflow for the next three days (i.e., a forecast horizon of three days).\n",
"\n",
"We only use pr, tmax, and tmin for this experiment as meterological forcings.\n",
"\n",
"ERA5-pr is used as an \"ideal\" precipitation forecast."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Lwweqo7qFo7d"
},
"source": [
"Let's now focus on the layers in our DL model.\n",
"- Input layer and LSTM layer shapes:\n",
" - Input layer: (None,timesteps=14,features=9)\n",
" - LSTM layer: (None,output=3)\n",
" - None is a placeholder for samples in each batch.\n",
"\n",
"- Batch is number of samples processed in each epoch (a run through all training data)\n"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "HdCTIvJm33xV",
"outputId": "3dab36c5-c7f2-4fb1-c580-2e11634a2c32"
},
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"INFO:lightning_fabric.utilities.seed:Seed set to 1\n"
]
}
],
"source": [
"nf = NeuralForecast(\n",
" models=[LSTM(h=3, #h is forecast horizon set to three days\n",
" input_size=14, #lag\n",
" loss=MSE(), #loss function\n",
" scaler_type='standard', #normalization method (z-normalization)\n",
" encoder_n_layers=1, #number of LSTM layers\n",
" encoder_hidden_size=256, #hidden size of LSTM cells\n",
" decoder_hidden_size=256, #hidden size of MLP\n",
" decoder_layers=1, #number of MLP layers\n",
" context_size=10, #encoded size for each forecast step\n",
" max_steps=10000, #maximum number of optimization steps\n",
" futr_exog_list=['ERA5_pr'], #future exogenous variables\n",
" hist_exog_list=['pr','tmax','tmin'], #historical exogenous variables\n",
" val_check_steps=50, #validation check steps\n",
" early_stop_patience_steps=10, #early stopping patience steps\n",
" learning_rate=1e-3 #learning rate\n",
" )\n",
" ],\n",
" freq='D' #forecast frequency\n",
")"
]
},
{
"cell_type": "markdown",
"source": [
"Question: What is the purpose of early stopping?\n",
"Question: Should we check validation or training for early stopping?"
],
"metadata": {
"id": "m4N8ta9ipo8Z"
}
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 396,
"referenced_widgets": [
"a6144b5946b145f2ba253b229f4080bb",
"23302d8f8d5445c8a6aa2175af8a7e64",
"a0f4589cf17841ac8e7fa055de2977c3",
"cf0c56a746a943e7aa099f172563a6d2",
"482ee5da1ff34973b5936e4eb81e0712",
"9970f071523442b39d7be9120e3283f6",
"39bdb56fe2af45f1adcfe481593d0462",
"9a4bb44ca0754ad193569b2f9ea07e4d",
"91db89b2dccd44d98b4f4d08c8393d51",
"5135cf5b6b0d4077ac96f66bfc19028f",
"781d861b76f84574b6b6ab4ff1c933fe",
"5e5316d09275457a9736b7916b56e110",
"f15decae6a034237bbfa5c0651404606",
"a29c10313866455dad36fd8fd247935d",
"8e21507d250b4cb1b35a4b25627ad632",
"8e545596c2674093b7af488e94ab0c42",
"008a8dfab077459ebb673939a93f10ae",
"024c726d906c4ec88b6b101f43ff81c7",
"77fcc60bad3546ba9691bd0bb08a93c7",
"67510b9fbd244a09b10d7fb75f23d796",
"60fa39506c894087bf45ec58f2b5d54c",
"50a1ba9a664f4634bb541de7949f4160",
"b77f2d281a184c0f8c2ba593119bf262",
"5dcd9796fb9b45319a423f975bf9eb36",
"feb2cda9ad274b17b0e4aa975e61eece",
"27535bc9d9ab49de91f4be63843b9db5",
"6158a9dcb62f4dab8f4503cc1e462aef",
"65154026e31d4433ac552bfaf8263b10",
"87ba1d3d82234fa68bfbe5f807a0b6f6",
"74a059d73d4744b7bac3199dbc4d1c62",
"603e73bfcf5648478cbbc72dde85ea85",
"ce044d080ee7488d9fca75ea2c60c346",
"650cc2f5b4b94a749db1983f60f3dbe4",
"3bfd70211a2f41709966f7f82d528e64",
"84aa81da89e940598226c28a98673f06",
"8f881865387947468a19173bf59b4f41",
"0c5b5f7ddf8040f09ef01895ba624772",
"04f6e2c7591943df9b217f6126407185",
"07c8d466cc1142189ec34d889a7eb7a5",
"70509fabb4544d4ea550aa3503ab13ab",
"41eaff1fd8e0484d9a2324be8e5cdffb",
"92e978511965462d845eba9826644b59",
"bd89715ada55467abfeebbc918fb4b0f",
"153fef7b10e34bbfbae8faa91dae6236",
"ade0bbdd8056488e9349b937bf4140c0",
"00f017e75261474ab394dd121614c258",
"81b6573240354cd5babe3233ae035725",
"f28bc7aba5d64025b57d4a7ffa34e444",
"4915a2865b984251a3591ae2ae208423",
"b2c1cd2311ce48e18a2e93679c2e3092",
"42dc33c1497f4617b62e9d1441fc8d60",
"bc3c83dc8fb14d4188600722cd8e1ab4",
"6b30338afd0e436984bac16fa5961460",
"eddf00b4caf644b4920cc3fca9198856",
"af3f9ac631c341bea00375227822ddc1",
"08f9209a673243f8b1a0c2c8e92c37d9",
"796cabbaaee54bf998d94fadac9521c4",
"788621e00f03441ca4f08ae8d97e588b",
"70129d594803401e9334f551191913c9",
"ce0998e683254e59946fabd5bdf4b34e",
"f6b39e28c2bb4b9a9690009635dee834",
"e58b2e524385440182d0a9af43438abe",
"38de84eb6d0e4f988844bdd44bddccbc",
"577da4c54ace4b0e83fdc2e2e5b81aaf",
"e6a3d7d6646d40198eb505d6d09e04ef",
"5c2cae5520ae42a58fdf39b779def56b",
"8d44dc656cfc4fd98b38093b6ae23b48",
"71c98fc491ce4c0f828a48ca5f7dd618",
"06939316ee3d499aa41ae3a5b0a99b4d",
"b01848c142e346158332b4bac2d8416b",
"3a42b42d0a054d76a93bc4adbb2cc061",
"aa9b0a057c4d40abb54d40674a270077",
"66a92d0dfcaa44e0abe1323c85802246",
"f13a1773c2a243e791a5f720295661a5",
"6d7659c40fce4ab395d6f15b0989e030",
"a0974b81e3b34f09a5a27a19c08f64cb",
"b6a8314087064296a063b5352984b1dd",
"5073ead9cb5c486ebc63c8a3a2403dd6",
"0fbf5e888f8c4334a4f43822a369bc83",
"92711298c4f14287a4326c7e4e9816ba",
"608bf6f7a5414eacb1f6decfa7f37ba1",
"0a60571dc8cf4055949ffc45de90f059",
"a94fde3738364b4b944564e10d2545b3",
"3a0ee657d3d4419dabee38d359be97ad",
"680ae336cf7248a8b4304ff8e9279539",
"32370b34e82846f4bebf2106bb316fc9",
"f0e9e8a6d4fb490883815ca6f861dfc7",
"9db00395cd0a4f3c8fa7f00ca10d4f37",
"e25f35bdd82c4f2aac237ac7d3493669",
"8b33ba1010da4afdbb5f0d668dcae783",
"1a768a348fdb444790f9fdb51906379a",
"0286b3f26fd142e09892f48f7a7fd898",
"cbc840d023304a4c968d7f93c983eb72",
"11ee53d1f8fc40a8a564b85df367d270",
"c55c92c1fdfa459ab5217153e7dc1a43",
"b8b7ac2d2a1d45f1aaecb9641bae07fd",
"fa6cf877c00746ca8df7b7d814caeb69",
"037ff02adee144f0ae05ba20677bde19",
"47306e26dd3543538974d73c25c3cca9",
"fa59849f465446a4bf4757cf025a636a",
"c7a2a5a1e26048ea9ef6966148f60aed",
"a96ce62086b445c79a8c7e65d857936a",
"4d2d3380960a42e4b6704922981b4d90",
"08f0fc5e281b4c0b8a5a9282cb4b69ef",
"64a4683e2f7548cea3f5c3e7228bc6fc",
"6f35acb512d4435e8c2fb79d118ae150",
"68322e9bbeb541219edad6daf46e0fef",
"5b30859ef79f4dda94743a5c64ccc11f",
"e9eab938510a435398ef5ccccbeb44c6",
"a5545209eef4445ba32c434084b1939c",
"fde95f44f91145349e2576d67d57b9d0",
"548761e2cae4408bb502bbb4ad6f7d69",
"dee9a1da5c31411d8f3869efa6f4880b",
"b3382b6a55114811bd42ac932793c966",
"bf4e0b2bfda848cf8cae14180cf4f391",
"6bac143493ca48d58dfb1fe3a78fc5d8",
"4aadd13be6c54b19a3cc0e8e88526806",
"5e47f7a1782e408fb6670d5db73b514a",
"fc52af82954c46a6934cca91ab69d1f6",
"3b8310021eeb488f93483fcf53287180",
"2a61cba460f641dd96f1ec6503f08ea2",
"3cc6fa5582d84dd1859dc744147c6745",
"ceb786a4d1564004841681b4480959f2",
"be781e4a108a46aea6882011dabbb7b8",
"7c2864ab1bef4db0accf0843b60a9161",
"44c59c96e0504484a0d26328bb741c77",
"bed27b0d107b4441ab7c802ebd501ee6",
"53c5488a855d48d1a1cf676711ce8721",
"ef029e97a9ea4d86a993d600c5cb2b35",
"64849e5e2a7f4bbab84a8fe0ce58706a",
"a82f4d57a29a4f268c7cce21440ef6c2",
"9c2ea47383f0442ea69fdff63d034721",
"ba5084708a8e4995962edaa9f1737efe",
"cecc9910f6284660983a8a435929767c",
"6a077f7a6d99475cb0054f56284041f3",
"72766f5540b44ca8b0decc6587805df3",
"af6b6d3c5ecc445b951d960b80bbf85b",
"1d77900d5b16401091d970de375bbb14",
"c2fbb468408e42359ff1a8076437425c",
"b343f22a799843ff81b580b05bfc0c7f",
"a97f1de6c5634ad4a301ba167c7c06ab",
"7869e60efa994e2291cbb183e4567a27",
"b3ced31d1d7946e49d1f6a1863b05e7c",
"5744b8541d50408d85b2ae1d48d14e4d",
"1d8e4f58c8334dceb327cef6f02b7455",
"4a20fd7d3c2f4e4c8b488ece891831a7",
"4052098a90424c778e3b098544051fcc",
"9a1e3fe2d2f3458782f846fd969199e6",
"c3ad9265436c49728f514db5f6d463db",
"b5b57beca966438bb596f0c7194feb7b",
"7c3ceb9a62c646318b6daa425a5908e5",
"b72d4f531cbb4ab0aa09fe31d0b9f03a",
"840b7b5e74484b07b5ad799f717f0a31",
"f4c3b07e07804c489e317ae2306eef07",
"031c6635bed14ac7b148586f774a1595",
"b63bab07351745e6a55138bab168d4ff",
"9f4829d7926c4996bd55035a13396226",
"e980e3829a774e8f94b92d5d639002fd",
"b5877ebd5e7d4da185df3bfe004b00eb",
"5a95c0410cda46e98ff81d0429a49c7d",
"3a8db81bb6144fb8b343943a49461bed",
"1fb566c7bd4947a6bb775a15dd151989",
"2586b1e39ec6437c838c77c65ee63894",
"79bb3d61c86047ba95798f2e1a2193e1",
"d7aa134c8de140729df1860b5e8013ac"
]
},
"collapsed": true,
"id": "8moEtqZ91yfV",
"outputId": "825f7542-3dad-4382-abec-32e40e685b55"
},
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
"INFO:pytorch_lightning.callbacks.model_summary:\n",
" | Name | Type | Params | Mode \n",
"----------------------------------------------------------\n",
"0 | loss | MSE | 0 | train\n",
"1 | padder | ConstantPad1d | 0 | train\n",
"2 | scaler | TemporalNorm | 0 | train\n",
"3 | hist_encoder | LSTM | 268 K | train\n",
"4 | context_adapter | Linear | 7.8 K | train\n",
"5 | mlp_decoder | MLP | 3.3 K | train\n",
"----------------------------------------------------------\n",
"279 K Trainable params\n",
"0 Non-trainable params\n",
"279 K Total params\n",
"1.118 Total estimated model params size (MB)\n",
"11 Modules in train mode\n",
"0 Modules in eval mode\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Sanity Checking: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a6144b5946b145f2ba253b229f4080bb"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Training: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5e5316d09275457a9736b7916b56e110"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b77f2d281a184c0f8c2ba593119bf262"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "3bfd70211a2f41709966f7f82d528e64"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ade0bbdd8056488e9349b937bf4140c0"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "08f9209a673243f8b1a0c2c8e92c37d9"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8d44dc656cfc4fd98b38093b6ae23b48"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5073ead9cb5c486ebc63c8a3a2403dd6"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e25f35bdd82c4f2aac237ac7d3493669"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "fa59849f465446a4bf4757cf025a636a"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "fde95f44f91145349e2576d67d57b9d0"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "3cc6fa5582d84dd1859dc744147c6745"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ba5084708a8e4995962edaa9f1737efe"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5744b8541d50408d85b2ae1d48d14e4d"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "031c6635bed14ac7b148586f774a1595"
}
},
"metadata": {}
}
],
"source": [
"#we have to specify the validation set. In neural forecast, this is done by setting val_size\n",
"nf.fit(df=Y_train_df,val_size=1500)"
]
},
{
"cell_type": "markdown",
"source": [
"Unfortunately, NeuralForecast models can do one forecast at a time. Hence, we need to iterate over the test set to get forecasts for all the samples\n",
"\n",
"This is time consuming!"
],
"metadata": {
"id": "0YmMoDcqri6H"
}
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000,
"referenced_widgets": [
"2eb57bba18a64fe8a026a303ee4272f6",
"3f3eb15812fe49fc9ce48a1987991a01",
"97a7461335cf4781a8b72d213122c508",
"8939b7d285ed42c696b093b0343fd93c",
"582b1f2c8f654e0380278f36fd87eb91",
"756ed90a33ff41c997a78af3cc0a1dfd",
"7dc7a67c7ae04e26ac463285f0b8e426",
"f28b9b91044b404781d1b314bdd54c27",
"9d0b2ab8c0184004af49cb8556021091",
"a7a0f6425444426eabcb62ca0b070ac5",
"2e87f98e20fa48829947059fea48afe2",
"97495e805eae467fb2a86342f6f5170d",
"ea083c4c9deb40d0ad093c4f4589c29a",
"ff6869f9327c4e46968e95617bbbfe30",
"9e8fb386ad2d4a8494ef71c8ed546620",
"db3b520db35d432b81b0a5878d73e466",
"4094b1e0a3e1444a98e8a54bef4dff8a",
"a4eb56a804114cffa9de0b965ce7ce09",
"89e796a76fcb49cb9f0abb6365652b02",
"152949d5e3bc4a50b5ba55f5029ae908",
"800d22c2e5c74d2db674bbcdd0dcde13",
"3dc878d4e0fb47c48c1b84fb0de0438a",
"68417c49d16c4c88a58329eefc6ed451",
"c5d901eab5424aa1ae45019068e99755",
"1527824fa5fb4bb5aa4465e4b4849b04",
"82786120add14180a10e509c9cbfe549",
"4d80f27c4d0a41e29c57a3ed74de492c",
"8f277c399743408f8ab888277bb6db9e",
"4f40e4e33b87445e999b784c412001db",
"d57945b009c544efb73cccc60ead8419",
"8136a7e5fabf426584ef2afa13eae4c1",
"436b1cb0aba24b1c9adfd2f60286ba3e",
"fc9f54bf9fe14bcca27690849dcacc7a",
"4291bb96bdae4b64a466d67cd9412b91",
"bbe4dc0248cf4fc1b39139e4a8c506ba",
"b63c0916e47f4157a24482bcf836df4f",
"5bb9f2c06c5b4e79b9e30a215c293c78",
"9696f0d4ddc1480194b1076f35f2bc20",
"0cee2012146f4ce68d1bb4f354a538d0",
"03ced734fcd640c8af307b4464ab01fe",
"32c0b1a27c14428fac5d4030aea9f662",
"a6280497b696430bae013efba149c6fc",
"e8c6c43ec0b74c01b216ecd4e672dc73",
"fe2c752a326f4e2ba68de434fea68db6",
"1550523c4b304dcf8756e4399bb20965",
"7bf4ad01f9c54024b4c10e6e95e0bf05",
"d815cdb0281a427eb35f0f4bacc67e0e",
"fa6fa0fdf0654a15acabb4aef11ea249",
"600089a9fd294ebe9efcc09d6d2d3762",
"6be65090992e4d6187f9b6c5b9223597",
"8590b272b65f4ee3989c715152921819",
"a0d1a0ae8e934860bc5666a155fa32d4",
"684ba922a5c9485fa2025aea2cc98ee2",
"136f178b394d4c74bd9baf427d6dec64",
"c2f44b1e180243bdaec9d453fd5f58d7",
"e84cd0d929424c80b9a478465228b4a3",
"08b9807a2e9041478bc97649d552eec0",
"10fb68c8aa264b59bb5b32338837941b",
"e370787a794b42e5ab8c85d33539e61b",
"964f2b0023cc429ea60e741dfd2f5f2b",
"7dea1046663d4dc19407976d7e582c62",
"1bfce79009e84f3ea2212cb86fa6a0d2",
"1a105474ad9343f1a31465a5757dfb40",
"d4e49e8132164791b27c6199807e067a",
"380ab96a0ecf40dbb00a06739464af9d",
"b1e5cb99eb2c44ccac82c6855a3465b8",
"15818eba16b348fab21487861b9522ef",
"aef53684823d445388aad08df9f4a65b",
"339cac9cf2a144df8fd88f9549652ed4",
"3cc0f1d240404b589d13e5bba59338fc",
"257320bfa57e42889842609d3801a4ea",
"a8358d442134410996808c041fba3cf1",
"1f1db23caea34336983b4f5cd2499995",
"81409bf05b9141fda8a3f26add74907d",
"90c2317176914b7dbade7cca68285b2f",
"c3464d7bc4744d39ae40f9f6b27f0b92",
"6fee8efe36934be29f706bc0f30b256a",
"bb814e21595f42b1b1b569a9353ca076",
"8f84db7aa1fc4adeac365554c61c21b3",
"96820a2e73bd4c55803b25eb1ee1b29c",
"c31f91b7b4984ca59b981cbfa5bcac94",
"b722eda5cee84c85901fe63cbf088e56",
"65bba67ca84e4eefb39befe660d1dd6b",
"68d53e691840403cb2a442a045033eeb",
"e17338bc410645f7beb27c1727cc1460",
"1484e28f335142c59028bcb2b221f435",
"f7342afdda9748efabecdf2babb333f7",
"6b5d518372bc40289d85148546da793c",
"a6b032c1b7b7483f94557813287c8c80",
"d62b97c69f184374a488b301cd516eed",
"2ca01467e00f4ec2b4313867925c78ac",
"89cfa86d36bb46b18153fccef896ae7a",
"4ea7240188c241abaac430baad187d89",
"b9371aa91b834c2196893aa8cedcfb2a",
"6a63459c5be44d4d804f156d404297b4",
"f12a56d34de74c0fb0f64acc0c277d4b",
"2ba9ba8ef0c44912a6a44fb1bef915d2",
"f0f443b790a148f0955ea1a97d7dd593",
"bcd73bba11c240c582320dde5c89953c",
"7d24da4d7101453e9cc41ded7151695e",
"5acf589e5a1b4286920fa696fcfe739c",
"ef08e753ccf744b384757bef9dcb56e7",
"75b82abb398a43959081bbee27f0df13",
"b41b044da97e40b089b532a48160621b",
"8beedf3af39b48858430bb87b53fa893",
"26f56cfc5e264c42a87ebd4a8296798b",
"4e99a5a3ee9c47b8a40d026f060a168a",
"9c48047df5ad46c380e9e2341e12d4da",
"1e1955c4bb7943fa9d88aff934f3ad8b",
"b3887b02cf524f5fafcc304536a050e4",
"6ed96819fd634dbbb57d27108a11c137",
"4ad78c3dba7a468c8907d10bf92fd43c",
"f44f3c202416438d93d563b635834697",
"78ec86dee8d9474088f2691bc327705d",
"d5b2156ac029423b9b2672e5dba9607c",
"58a4d9578897456dbdc8e1f1257322d9",
"8d6320d04b214a0e8c2bc87a7ab784f4",
"6572d158749545f280b69a2e0fc1b058",
"cadab854e9e141cda4a5bb14f77fd34f",
"f2a09de8fd37418bb7be0891b97ee733",
"6ad5cd1f4981405b8071e0cda0dd792d",
"108841158c65443092c436b4cc478832",
"f81fc81ea6de45f6bff8bcb4921af841",
"fdc9d5f5f7a3453a829c55fdf6ee25bf",
"34dd20234791479784a11044bce3151a",
"b0daf94859f0410780c8baa57055ce0d",
"9453cc191535499791a58f113c5403b1",
"114f87ed450b4cfd9fea4a58101e81f4",
"39e7fabe4b224b02af580fbdc573bd75",
"ba2a6d3cc8444a67a454d9fd99ad0ef0",
"4272dab9697e469aab6eeb4bc45e5236",
"7635cac80cf24787b91df6f53071d462",
"2dc1e8dc4a054c9db338a5c6e3268bfa",
"9c61b7c6c0eb41429857f79b599756c1",
"e5b8107283194e9b8a83b5f68753d060",
"b35c68a54969453f9d0de1b3e5da2b39",
"52ec824681de4122bb5dbaf51cda6b50",
"418c67a6502f40c785e69c398d90ee4f",
"232cda21716e44cc8fd91e3370875249",
"c5def7359b174cf9a025c3700caf273c",
"3cd0ed07b69c46cdbc12e485723a1a44",
"eed528fe3a0a4e17b8adbcb0971e3c0f",
"4794565db78d413086511b2b30d5400d",
"155a07ac60834fbfa163eba7196a876e",
"c0c873b83b34430c8d42f8528100ba33",
"0855f9d0f9cd4101b5a343398e0684e2",
"6a49216c8e014e2c9ad326cdd3a90191",
"51348f81a9554300969d36a21ab4c4ba",
"049fd9852e144a218c81696671a992d5",
"ce80bfb80b214ec69d01e638ae3eb9fc",
"5501265950314cd781945a5e9c729a8b",
"a774a581daad4724ac6fc7f58a9c058d",
"7d04ce4114594043990e33cb77172463",
"21124c1b891b493ba93fd11e917e97bb",
"685e93e5fa1f4f6d86fe6f7e0a24c7df",
"c274d67b28ac4312bf9e69b6ee9dafd4",
"199c9e5abfb2463abdce6bd557da03bf",
"729726a62f9a4f599e1a36ac53596068",
"63f5f0d7a5c1466d83d5d56f845e1512",
"b007e1cc6fc3447f9fc992f2f1373997",
"618a3a26bb3e438cae493e8c1820231e",
"9fd3b94369284de89e4157287123373c",
"76dfd7c30cd74ef28249df11dca437d8",
"e3e50aed766444539c08989a2335e298",
"862b3f5f72ab4401a98bf2717a0e695f",
"b02644750bc14773bd552e356e728c51",
"947a7890b4dd4e5fa7eb40318660e82d",
"77ba9bae1d70447cb693135408f08c8c",
"7d77539bc5aa41b98a2708764d3662b2",
"c18453d9aa85484ab17a129db7a97724",
"ec9681a21cc649cda555577318d20e00",
"62f66fae5c67435592a08e159a209c62",
"6c3dcda23c504458b49437907bff22ba",
"db7acd019dd54effaadf2d330d6e7f0b",
"5c8b98dd58454e05b737466f411e50e6",
"ed51c9522ccf4f07bbfd544ba6fc9e74",
"cf40535e37c44a91aea3a8d59ae5cfb3",
"d4d2212fc01e42d5a8b302ac313f786c",
"19cb3661a241489d994d3e758c7df359",
"9c0e1280f92c421db1bb14246da2258d",
"e2979932eec0493887aabdc691f30fe9",
"1278908ae53a4de0b4b05208ed495e1c",
"98e2e771ee554ab6928a307f97460ac4",
"567996f647d54a53ac899148afddefdd",
"b5ed662981a94840876651332d511f2e",
"71d8da289d424557b47c3b15a1eb55be",
"066e55611b1f47a59731a6878e9e7521",
"1ac330823a2e4db5a206c7782479a636",
"f37ad45f73e14cedae22133932078076",
"56b0478a1cb44d89905b8b20a2f97cc4",
"9aa83116389d41fe8b9a91df683bc463",
"e9dca4f072974ec6b859665ffcd05fab",
"7a9592585ed644518395ed4a043c2713",
"a85c976e87764faf88b9b244ca6a52fe",
"04658d5bff284c9190d88dab8ef9140b",
"5bdea05104ce4304a4e1cc18ef9ed999",
"9c60728429684d17affa33f1d45486eb",
"fbc171f28a7649cfb27de8dea8445cd3",
"aa97cdafc9514d839c3b6922b5ca817b",
"e252dee940cf4d82a060d1587d16c44c",
"74d84f7cb05c452cb3302f9a9776b83b",
"1130663fcdfb43dba8dcf701a0042ac6",
"81a27b4098624ed0aa1f1b41eea5281f",
"0227af560d6f444db730670f3e2985f9",
"11a84d63125f44509af376a6c0049f5e",
"2ba39289820f4e0da179d33c422d9fac",
"ab1db778fd5e4a709ff6605ad906bfaf",
"93d97f2761ee4fc1964296b66ab78578",
"e526cdfcbaaf473c8e7912ec4a0dcf2a",
"cc6ae560e83142f48f0b93e625a597fa",
"84aa3e56119f4257976bcfd0911d0c33",
"e0f10a0d24214d9499a192361346dc65",
"ea870ac6a1df4f758743074b6161c3c4",
"4ed1078875b1429c85bc76efbc2f002c",
"6f7d3bc445f543319809941fdc15dbf2",
"24234ed31be24e0ca6c768599b038cfd",
"8c37c9bbc51147fea49cb8fdc4e15c0b",
"77d538c7b9e949a3abf3fb03f2858483",
"2ce1865aca8948238853b24a893c4d90",
"3a9dc6ad44fc4d78856cca8ef9c7e0a3",
"dff566a5b58b4173b3136cca50434873",
"ff0b7dd83cae4e81914d4f053ed8ce5a",
"875b5bf93e93455ab29e337b7c83a534",
"15a88b28a87945478f6780ebb851fcbe",
"8aedff81648f4f67b0a8da363cc70581",
"63c8af2aa2a042b092351fafff2f9f1c",
"6b52a426080a4eada22aab5a6185d6e1",
"dafffb54de664a9182fbf9906e4e6ed4",
"6ca74444ad314e15af9def550fef081b",
"4623a327cdbb434eb8f4eebd5af58694",
"7e1abb56047749f3833289254d2bab02",
"3c0a7bb3815e4afeb616a4a7540ba434",
"4e84e86a4def4d3f8ebcd392d68a7ec7",
"7631da531d3b485c94445e49c5b4e1ea",
"22baa888752d45038e8cff52cb8a691c",
"ca86b5d98bc84c30b9baa8e94db53361",
"b1d8ebcb10e34bc49f1e78dc01a1fc89",
"adcc0e902bca4cefa71c6810c156cc25",
"3d7cab93dc154734b259d5f87d6e1c5d",
"529a49c05c6c4104b8a78f4d0eb7e193",
"26d0583d6f72404ebde70c5ded1e4603",
"0236b324dae74cad9bc8fff3c626def4",
"1df6419f868f4883bfddb91c2507b363",
"43823cbb1b1245e3b0c68b3d6a86152c",
"0835759c487a4b7b84e50c82b9d64735",
"e4861cbf72f14ab883f814470dfc2008",
"69de0529963742a4b9ae84f155d9ce03",
"a04abb4a5b484ba0bc646cdd4478e702",
"0a9a6084e4c045d28098bbeddd548e85",
"1010217c36c9471cb3a8883a40e2f84e",
"de2d7be44d8849a3b41b96a8cfe631ad",
"9ef118e0b9ac4c92a26037dabd33bd23",
"76e45a676c464f0bb91c7423c60c737b",
"17b32acb55ba42e48080a7128a9444d6",
"f60ebbc172b94ccb9f343dc88154ff76",
"06473927aa744ff7a2ae82d2edb1a227",
"f87ebde7e3ae45fe8b10c25fcd51b515",
"30ae392eb0f14e03830b3652f45679d9",
"d92491eded7c465b80b95d10eda4b368",
"0d3eda3ea96e4303afcc8c7e5608932b",
"2d73d8fd5d234264baf29899cc71b069",
"7e67cd57a6924591b174cc66cb362149",
"74f4145178a04290af8675a9e45950e8",
"e856ea6fc64a48bcbc3c117c44c589ad",
"6947bd655403498581271d06fcac6f90",
"d20e6ba9c5aa4927af0cba594b839f61",
"e78b6c9bb5864df2a2da527550f3de65",
"58ee382d9dea426e89325a34de5be68d",
"12812e640f8f487ea3adb0bfface90d6",
"138eb44d8b9a4f789270de92fcdb740f",
"f87d6705cf2748d087bc904ba27301dc",
"9f729ad703ea4757afa84ecb5a7c5c7e",
"f3d612f5279b41d684893a1f89d67dc4",
"bc424aae1adc4fe5bf542da437ed0e83",
"5fe9a957b97b4565b511f83b46591787",
"7d550058fef7419d880b0a964fce60c0",
"c73a8b3977be437a83ac62772436a5a8",
"1b44e8b2012542bd88f894702d5e89d6",
"0c3f5f5518cb4c28bbf3cd0824753370",
"40468ff28b9a4349af025d2907a68cf7",
"c081f17058514b9c84677e3102bef7a0",
"f15905ee0460468fadcb30b8c26fec6b",
"2f84998c2c6c4e36b74e162a7ed303bf",
"fc2c2af32a7546378659890633795fe0",
"86ebb2ec34dd4fddb89c38d4ce2dfdf4",
"86a6f309623f4b98b6b074e8f8798ab3",
"14c69906204d44c9b9221db9d2c38772",
"3021b6cb89784f149eb3283eb801152d",
"2dd208256a9d4fe88b1fb6ed1b0fb5a9",
"6bc024f81523447ca671059b7709e2c6",
"cd9b4d6f29ef4de09782c6a44878c774",
"13e96a4de1f0401a88ec08f4785ac511",
"c74d7daaac264a6093564b6c1d08ad52",
"839b82351ca7472d9b76e1100f91e76d",
"bc0f06c1dcbe46e796cbc4bab63a53ed",
"e8a62c7d67294494936cf70fbafe7054",
"81c8e3d7d2c54289a1cb0d6462e5506e",
"a91358e047df4cec90ee780553c99462",
"03393443c30e4a76a1e95d4b3b213786",
"6c42812156a9457fbab75d2a4b8cd38d",
"0f4892f985e2488faf9d28117fd115ed",
"0fda73035f1b41eaaa80ecf18cfc2fd1",
"516bd774883c4b55808a81be78ed72d5",
"b63f2f30bedf4f6f9c2d61c43e287fc6",
"883b0fff726e4a4abd3ca995b44deb0a",
"5906997fee7c40bb9d86fc695a43269b",
"c00059f3cd20472483d92dbe53844ead",
"68980b774d1745db88567e25a7f408a2",
"244bf9c5f49547c1b6310e73f2b0112d",
"e5fc9e1f86c8473e97eb871568822238",
"0725a15f2c3749ac94839922ba93a39e",
"8c470704ef774037a7d977f06f79b75f",
"fb4404f326384df993368794f346fc3d",
"11a688cb806a46daabd11f302aa154ec",
"ace56e6c792c4e66900025318e92f265",
"315d6758926445bbadedacb8aef7e9ad",
"c4e917d6220a4117aea7d63887ee5eb4",
"08bdef2fea444778b0505cf21aae3b1e",
"82988958176b465fbde0aa2991659118",
"16cb0ad61e7d449091f091404ae7d125",
"60ba448f96534b608568bd1203286958",
"d3e1e39be7694196a7c25c25b0985e70",
"0b6d1c3c1629401a8832eb497d1038cd",
"fd5cb31ead7246df847c2a0dcc1d5924",
"6eb06bce83a94b86b72dc5c9b6c82f7c",
"88ee946029054544b69d07027c003a5a",
"91ddd3f7e41d494f961e154ed260b74b",
"0f8c77ffe6ca4ef8a416b6c89406a4d3",
"36b728ec44c34fe49c79c1597518232e",
"a09d9ec95b4949b98b7c7cc90691bd62",
"6e4821604c58425e9786f1e6f9a1b854",
"e6745e2563724efa81a5d080af75560f",
"f9458aa9aa8940e6b4025acbc4430bc7",
"4d5eb4c27a0c4904ab95c0ba1ba7f3a1",
"b597cc31568e431caf6f598ff8657d54",
"e140449006b74599885db5fe6b0ac6dc",
"88c9070fff8940da9a620278d1634edc",
"c069e4a499354c3c937d3e86d3d13a24",
"a93c1721d5934b8e95b4999a9114a9e7",
"4ee9d00d86cd415db2fb57286e40de0c",
"3e87443872474851969f05bdb3ea6c80",
"b16762a5b9674c61a8ee5c5f4e62457c",
"5a59717c60b74835ac4d7bffed1c46be",
"223f4df568424f9980ec404c03309842",
"4a00f8615dbd40a9901003853fc44e1b",
"08a8410bb11f45479880c050e03610c3",
"ba3d1bd7ff6f44db98cb2aace27f6d3b",
"4d1b28356a2448b78df49bda3a5cb432",
"9f4cba0cdfff4c2e95b0713b4113cf44",
"b82f50ca1c16477bb78b18d5ba15ff56",
"5371da23b7d043bfbe1d6cafe0d20a00",
"52ccfa4d70b34a03aad685a04c5b1fe8",
"ec83fdc24ce8422e88ffc747308fbb22",
"6baf665605c34d54a286acd335127812",
"389b447edff34deca15368a8ffafd4e6",
"d12d9c3f3bcc4aad95435177a180eb75",
"9f5f034e29f349368f0441a403f3ae6f",
"75701a6a96234f67863fd6e72752796a",
"76f609ef2edc4cdbadae794953560797",
"8cbae155671249d5a874482101d20f03",
"c4d568e84b674507a24ede615e5f2052",
"55d5e65c5b57497ba96907efa08afd4b",
"8510bedf50c24f4295db85ef09950881",
"befc5949b7ce418483e8f574528fbd52",
"c41b3052b76146819a198b45e15cd24c",
"8a487506e249413dbe597d253bf93912",
"7bc5720c83ba4695a4f9da9de6cba859",
"5f53c5da69d34764ad80f1aa970cc8d4",
"610aa1ca02814fd285d84d19c1398767",
"c31691fc12a94704a0c0b5ec74c05751",
"dff0ea0bb3f84a419038ee64885eee61",
"488503f4bdfc434e9eec0977cabdc278",
"b8f65f4c9c7b4a99b8690f8838ebe5ad",
"4360ed88b6d74aad97d2151d548b4b73",
"dc444293de204c699c8247832cb4e64b",
"ab4af41c3ed545969fb9036786958a8e",
"1037ede9750b4052825299d53d710a3b",
"cec72ce57e79413e8849e6a183b97b67",
"7dafb6d0dcb041c7b558e6a1b25d4668",
"c21e2013e0fd4538a63980104d8f4506",
"c8a31d2100544b0cb5a6eca04b8208b3",
"a70fb1e91dc4404c9d6bc9bb1445e6b1",
"7a2fe0c261764eec8301dfab9bec9fd2",
"e614fea9a36e4a688166e5520eba8c4a",
"94b866e2372d40d9a8090672260dda00",
"721cce6a414548aa831fd4bfd67f0c8a",
"c68e915dad3645e58aa04887d76ad4f5",
"44b2a0055b8340f19801385c61f286fc",
"e828740939ac40e0bc1b5ecd523c39e0",
"432d4582fae042c182c2685e22401db5",
"700d8a6741404e6d8ac65de8bb7b37f0",
"06e49fd74ec04f94ba2a589b8cb8ba38",
"61af6d073fd84d639d4c708252e6276d",
"da18d3d324c64c4da46bd79549c39946",
"f1926c6e751c463eafbcb5866a5ecc24",
"9f182b63c8f54f2da5600975ef2d5cac",
"1c1eeb97f4d24ba3b1aef23cf8e0da7c",
"5f51512732ab4eddab23a41f1fcb0c4e",
"798cae536c98449aacce9c15af619297",
"8ee0f35355c84665b9e009d85f4a40ec",
"27d33c31b689453fb967599f1e3e1ca7",
"e992501e09784fd8913542ef44b6bb6e",
"ea98724015e544728200878526abcda6",
"c6324badd12446b3b4864182602dc055",
"51e53b1483084b299c20e9f01e31ce10",
"9e6cf2e60c49491e948d08cce4a569b2",
"4131cd74222f48bca44b3935606d9c9f",
"e1cc735b1b1e4e1eb93914ccaaf2fd2b",
"d728ab9aee61425c8dff27883d7dfe1c",
"182c852850de44549bf009e8fad54ae1",
"8d0b0a11e0934d4ba530ccbdda4dea5c",
"3055f9f02eaa4110a6ebb2ae4adbc381",
"90f46a089cbd4399b92b5a8800c52a29",
"13918a9cff4d4af3aa9c235c85b4dfdd",
"ba3e8024c8394e799a9724c473ab0124",
"e1fa3798899249f186b9e18209cce40f",
"50c09641dbb0482cbf7ce719ec67b0a4",
"fd8bf7ffdda8449593ef7ece676ef175",
"60c7b0c10cc8436b9607f294cabbb09e",
"a4cd46dcac2f4c08ad4e8e1ded7816cb",
"2a03c1501ce54263bf732ad8346cb5e6",
"c3d19719ab1241b3b410d0567831fe22",
"1848b4268c9e4d86b5a1f2a0a397a44e",
"964a91991d714688a498709aeef18484",
"16e5d08f2a0a441fa0e9e4c3408d3426",
"589aa771949d42ab854b32b92575920f",
"d32f371560de40aba3327063ab3b0eb2",
"d0b2ca20887e402686785ae0c9245574",
"bde3888df1da4024a09bf5d7102524c9",
"2bcef5de95d346cb8954a02a014ea9a3",
"5a4443d561dc455d8cb8479e4941ac91",
"c46a59e26c374f50b1d251f349db73aa",
"bcb58e21ab8848bd8aa862035605961c",
"2e9e376fd19547bcaa787fa9017c9827",
"34aad8bf1a7647a4b9806b7f34a4ec88",
"92cc6ced54a34e78b75c0a0d9d6766f5",
"6e674995bab646b68787113065d2ca5e",
"437bd98085234c118c613c73e70063b5",
"4488899e8eb545df950856294da399ce",
"140d52d0152b47a0ae712c2a74ebb6df",
"8b0188313dc74eb5939d2f7c3b9e40ce",
"bdc126705f954d8eba6e95d67741e02e",
"13a01d333e684195a1bbfe238f70d8c7",
"715c9a0a766d49708b0268c5a81dd55c",
"fc45ceca14f0423db2dd779261592d3e",
"10bae1495599410db4fbfed072bc17c2",
"710738d9da9141b1ad00ae648239c25c",
"50dd4137346c4efe97a045fd28cd6596",
"28e6338aaff44a0083f7760a4729d7bf",
"73442d2f5c044bef888df4b34583c24d",
"0ff8d92480c641c2a037fd276f866656",
"9d8749e9da134a81927c93daee98de2a",
"26ea8d0cbec54225b2fdbaf1a95650f8",
"ffe6c62bab044030a142114b3dc640e5",
"d7a495c80d914a39ac3103b648c6fc95",
"0c230c0b41a74309afe02ae3b7c14d1b",
"f7e427f248084a888dc392fca4fd8458",
"09ad9ef4997a46a5b9bc9fd752c8d44a",
"2b4d4658a92e4c0ea5ecffe4acb1d8c0",
"4b04184262df40259ee7a40461b5f091",
"ce437eba24464e4b8eef65623cd2d900",
"a2c791453b114d189c0540a8c4d33dc3",
"b721591998614555a4223d6f0da3ead6",
"312c90ff7d4541e698040c9dee1a3e1e",
"02c3d2b91d5f4993ad1c1b61482dbd9d",
"1374c559b1404685be2a5c3287ed8f51",
"95cad2fa05874f56851e0eb4cf0e4399",
"625e7e0a52cc479098d215b6d510737f",
"28a17020a8cd4e68ae6c224b19bbfc34",
"d2d4db81dd7541a3b58ddf510f35a13d",
"0216fb7b34a04bfba1e713edf584326c",
"d24a25a12f634ea798474eb7bd2cfc66",
"55a25d11fb9a49fab97f7ad7c63f09bd",
"39f7fd830ca740289df4d97a44e5ec19",
"880b6bb5788d41b092eb4789f1fb78b8",
"7b5547f063784f6882c812398342eea7",
"9e83f27ede2b46cda63f00fcc80929ec",
"5f885d90ea9d453db086d02080992170",
"bef97b7d3cf542efb7cf74e03853e489",
"e4e13625b2234bd1be617180ec33a835",
"7e2c4cf51df84e84ae39ac7978d55312",
"99d31012d6de42eba5f9e572813ccd71",
"5a26a290daab41c5a51748f9e919a811",
"de1e522aaa5b40de8c7e5c945a959e53",
"e82587758eac4aba9f711508d77b996f",
"99aa72fa1d234af7aae4df194de06cdd",
"099147bf47174d1ba847b001d1ca4017",
"38da39ba0d0240fca1a8f18f40c108fa",
"304356f085a740ae96ba7e15799bc5a7",
"4871b971e7f04dafbeef9f4793749250",
"4b9f304c229a4477a0e29a00e20a6319",
"d43136f3568c4a9d88387f3f5b376420",
"ac04a16ad62b46ea8aa2219ae96d4364",
"e2cceb9e302b4f06b0f09b71c2be1212",
"2cd0e23cda9b45f6a506fd74990fa0d7",
"8e942201e50d49cb9e6d1ad2291af505",
"5619043d0c45437db441d0d1eb353cc6",
"ecab98202fbb4b4190f668e17766ff65",
"fa48f940745a44919035be7c05234201",
"1fd3d87c2ed740178d3f3b990c7bcde8",
"7dfe20b547134f838705c1bc38e4d5c6",
"9eed756c68574692ade9eeae5ce7d8f7",
"23ba48aa8c884809bfd12b0cee702fb4",
"8451a6db6a1d49be93d93c729fd8770b",
"2534e100a8d84afd8183c0fd77ee9fdd",
"16c405cc9ba2498ca92e7afbfe672de8",
"949a6272d3ed4ee888d570245dce9de7",
"066a3050ba6f4bfbbfa8142c1200f011",
"0fdc4626d851495480e93ce91f31b687",
"5f7bc5995c3841998c0d83c2f33de5c7",
"b493ca2cdd0a4fc7b56c5f917c566af1",
"6b683a8e7d86459fb6f9fd504220e464",
"bdb7964296c341af91ccbba74ed66717",
"77af41d23359418e9504e56047e4f91f",
"2c328584ee9a4b39b7f9e93177e8e936",
"543d6c77ba6b4a7b8241e4e41a3745b7",
"7deda52b19e74d9ca7701ee76f2421cc",
"8eeb1e30e2a54e309cf392627d2d5f61",
"be9ee170bb054ba68ddc3c198c0f3cf4",
"bd5cf191e1aa47c0acaf6e7a48104a82",
"223cb39c5ea849f6bd7955e0ed34041e",
"c443d2046dd84fea8fdeaabbdfe93e00",
"fd26417c25f74dca8e1809d2b5c13afd",
"c59598aa296f4d0a9c890b90d06f3d98",
"02ee72a8cae94fe8801e01c40780ebda",
"9802ea18c4ff4955b6a1f546354b54fd",
"7148b05bacd84debbd66a7286740f8d7",
"7b476f1a1ad0440f878ba994be7d4890",
"5e5fe5140ef24ee49fbcef105b46409e",
"396fdc9ab2904a7f85ec94a58f1c3800",
"db3e29a938d5400eae243dcbe8991fe1",
"929b99890fd14abab38a2e21c8efe7e7",
"772a9c953f3a4125916c204362aa20f5",
"5ff1ac04fce74a71addeae101eae024b",
"f577bacec17343f28567381f0b9d9cc7",
"f26ed6f46d0a480d9b9c44f9f8f12667",
"2e525a47c8a0454ba2c822a8aaad67b2",
"6fba2456a858477eb424b41c3915a3e4",
"cd3c6a3c136a48f08e19c79a6fe9ee3f",
"dd2851bd4cf747da8b41e2104586a4cb",
"cb3229c99ff2495a871a08605eebadc4",
"7d534886f5e24c018e19669fb8d24320",
"8e24135684c941e6935eb5f49a8bb8c3",
"3d4ceabeba9e4997bd0ad6636760ef3a",
"82b5436d0e654c6eb861062dd2ede1f5",
"846f94eadf8541bcbe33064c54588783",
"37d15af1cffd4960bec1a1d7ce858d25",
"15edef25c9c343e8875027d15be90c8b",
"0a52cd303293423cb8df2654a7c8bd8f",
"e85fd15f066a449c8a9c2202dae3c296",
"275c63fc2cf1423fb977d93aa9bda53b",
"e69cd756176a4ff882d91c0a584f5138",
"8e3dedeeaef246229960aff8237e4685",
"acc8c855f9a54a75bc107961f0ac122e",
"825ef318f686421f994b5bd88303886b",
"0bb6c14c6179491e9b9c4a5af51c2178",
"bc0aec0a07d44f74b6a7438c6d32c100",
"2c4056e8656440f5a794fc32eb522e43",
"a80a21e3eeaa42fc952ae15b455c9d68",
"20c4107527a44488a347d48134800d6c",
"791d09e5154c4421b110bf4e3f7f5e57",
"8cd6aa9da2db4cba9f5dba4e02ed47ea",
"9633886a32244a64bf764b1af549f956",
"968177a68deb40e083f7213a8348eeee",
"a3189f0000e046fdb1209ef61e57c274",
"cda42328d9a94fc28f6722ccf7726e24",
"3f8635c1067f44bc810c49140ca6b604",
"021afc2f425a4875b4dc247bb8a1f7f2",
"a6b9fcab2ef54c31bea7d82cd0cbcef8",
"68db054c7d544cffbd6b40782c9d18e0",
"3e3323115488488daa558e58ab2854f9",
"af259dd43bb342d09886559fbdbbd04e",
"d594a8e2ad9e429bb2e8d3bf61a914a0",
"4c630a2b8f7241cea4ad3ae91f11faf3",
"b65ec14111c141d889f24980abfa7ca9",
"cfce4d6f37a747ec8a9f27f7b115eca1",
"e3258a3d34314c3f86dfec23bfb0fa7e",
"8804129ef3304854b17695874719e176",
"f0423b6d79f54b34b6381eb0bba93794",
"906ae883e14a4db299348534c11b3b79",
"d567b58faf724b79a8614d916689e7e8",
"4ffcfe0ee07942ef9640f6938aacd24a",
"dbd91f8481c4499ab47269b5badd38c8",
"c8d455b081d844fc9cdbbff931defb73",
"2914db412a684ea997131b4111444e3e",
"da8584be0ff24529954f8ad9e3995d50",
"95c54da6f1f44bd08a0d41a0425fdccb",
"e1b195d4bfb2478589c845cbc3f6d0c4",
"8ce238dfa5e8403ebfa5ad22e675b6be",
"bd1779797eaa4cc797e2924a22f27baa",
"ccea45633dc7446ca3528e99c04b661e",
"6e7b86caa1604239ab2ddce5571bbbe9",
"88fddc9e58e94941ac893690eff08b32",
"267475dbecda4ea884dfec141f012501",
"8aede7fb1fd84c4cbc14ea1f6400e46d",
"2a714b74f8874460ac68c0adbb88fdf6",
"05071c0395c748ca89bad359793854a6",
"5e454c266db945cfb255c31c5446c0e3",
"e0002cf902a14dd7ac097742ea92eddd",
"9308542ee8b840c3ad80178f26d485ef",
"dcf814170977490e8300feea1a83d63c",
"ddec8a6ca9f14be3a2400913e8b03f03",
"53cd3d9fffaa4015b8b8fb7de89270f1",
"ef45a0059ed648f5ae7b4ed33b0a975a",
"88d47f14d1524f4fb04296e7faa5c3bf",
"b40da767fe614a8a967379c7682193e4",
"41a8cb0e9d934ab498361d9f1a9fb79f",
"8140b3c20a1b439bb520835bf3bb1792",
"a96e77ae5b5040c69481999c278e6b19",
"d42ed500396f414dbddb7c31cf084f74",
"8119447d9b404b8e9d0598edbfc8c5b1",
"edbf25e00b564d44b14260dabaf27eac",
"f6ae8197698c4157a3c657c9eaa2dc2a",
"bad0598894bd493cab30d24b0a7182dc",
"5a4badadbd5944e4a6015bff98eafcaf",
"1ad993810f3149ddbd702ceccedb5aff",
"10be2e450bcf4755b1d0723d9149b1c1",
"4a63434e27fd4181929fadc9d717d1c3",
"1e048b868b514cf2af633f937fe651a7",
"7446555dc0a943cb9e2493bc50812093",
"22edd54155a34b91b9a5f5ee63ac28f8",
"a8da2c037e0b4b84959de0c00e3d3375",
"5fe31a59b1c84f768e71c8d47dcb9380",
"f2bc84adaff142278e7608c07ab9d92b",
"164be77c72a8412a92b24e59ed53251c",
"f8f76afbbf5f4a1dba3c143c7bfa20f5",
"83bd98e22dad43b3ba7dac08e47526ce",
"6dfe80a1abf9465ba6c7e2e1a9312322",
"cf99b2d838a34f5c9701777769768036",
"84fe47ee59064c6ca44091d10bc0686d",
"8f32a603b77740b19a960d63aa1fa230",
"8a553a8341254e47b8aba64bfa989d8a",
"ae870262e19145e1b2bcee418824af91",
"37b9da5de8084e6f8c72ac14a32175c4",
"3e9f3257167a4b348e716aa5fd2dc798",
"d903f44e0cca4dc0a9455002a83ec9a6",
"c88503acffe24621993b23b6ca7cb39b",
"9258db226c7f4960a783fa17a4a29510",
"f35dbe8a8ace497d98123470eb3480d4",
"70a3fef5587f4465afb36104b3eb0252",
"54fdf8c149c64c159a6e48a62cf24216",
"19a2c9a87a1f4a4485c143168cfbae58",
"ee4292cf76024fa4b13379780618b816",
"7b817d089e4143a0a5e8f8659c863eac",
"bac882f904f948da9aa90a38ac3677e4",
"d2e628aa93974a69808fab7279759478",
"c6532368d5dd488888310b55a5e17de6",
"3af1b3f158b74ba3b77bd1fecef86cc1",
"cb64f3ca26ae4ba19f5dcb9c6ac8f73e",
"f7c39e8b65b24e56baf1442c43c0d6bd",
"666f43fdbbd4497b827242bf436b7685",
"901a9f7134a84ccba658fd39e1a9e541",
"8b07cfa4b18c43458d6f957893897bea",
"55124577a3534e90bc7f33f07b05f0c0",
"3cc99b47e36241848dc70cf5dae31c02",
"0b1a661178b14786ac7bf85c1979e7ae",
"24037f32facd44f4a36e445d5982f59b",
"793e678b3f8c454ba5fd3e15ee71aab2",
"25da2ae583f74c9bbd283d3c9ed3f187",
"2bed94edcf854fcea47f5d0f758ede29",
"647280e4fe074c3abdb5e3a5522fcb12",
"7a4fda4601fb46bb890e3d6a8cfa6d22",
"f41b4efe0c3547c98fb55b99ca663b0a",
"fc46d5a816d54132ab3364cfc68c8b7b",
"82726b9b6aff4a12afacdeac1852c43a",
"e18a3f4264034be2aac6743681fb73d1",
"5f7a2bef553c44988116edc4c57909a9",
"049de899551649599fd360ae4a79619d",
"8e30b46aad144f55a66528a86b0bb750",
"753586fb4f7046428777e5bd8c8a18fd",
"dc33c7d708dd4c9caa1c4c563d8e14fe",
"06d1e1ea1f274443a227eeb0e45d28a6",
"028c35a11842412f8be64cba5be717a7",
"bc0f4c1a56a643be89b888550dd8424d",
"fa29a2b65e69477b9d195027f8b7a8d5",
"05ce65a6b4c54bc69269208545647b35",
"9242f2a12a2c4268bf77f3db002d2fa8",
"c3057e15e126499d8cc4e06db885d779",
"e66e610517c14ff5829e00c65a1e2f93",
"e412478df9134d8297473d1ee50a47e5",
"9cddabae26e3490eb58b4a03aa1b985f",
"c2cf42bbc6d945c89279a90e25e27af2",
"7f41c4e98e8540918191d0907542e0d1",
"3fe8f5a79db543d58190cba015ede19a",
"392f99c3a897437abfcb1978ac251777",
"d9fe3b786c5e4bba9541c15b430407b5",
"649613c327334ba5a8d39a2400a0c49a",
"b666a0dd49f046b6a230a1451b490b86",
"24dfa32968cb463482ab67f724f316c7",
"ba49bab08cf14752a8f5951ddc95c399",
"0b157b14745c473781c06fe1174d3235",
"4a50ac77c8ab48edb7c4009ae08a4b48",
"fc609fbca7644a2abc8e1585423f605d",
"5e815e97a86644db9c195affae4231da",
"1367155d8d8a44099a7ecea1b00b8fc9",
"3c87f2118f99483ea8563df28634129c",
"9c1b3f52bf0049998fb8d811f9471206",
"2939240a327841dab0118b2f8def341b",
"78c84f1668d24e65b32922ea3f2a3b48",
"85d5dbe3013246e4bfe1f758c967ecf0",
"e8a1199f4af247439d77c3a1104528d4",
"3b3be9f30ac6425783f58461d3e2df67",
"43e8a246294c4d56ab5d24620b6b050d",
"fef9fffc22824050bad38f5fcf0af367",
"cc8b3638b99d4ec29cf65e0f54dc0b55",
"91ba82de861c4dfca5f3043b2a2e6350",
"a51a88f5dc3448cfa41b72440f3f1407",
"fc6d46e72ab64a139862c2abce11a28d",
"a7521dd03ee2478991dc22e0f3e0b12d",
"f4d5348aadcf4b5caed91cd7f5f5f85a",
"16276f7aa93a4300a90bf0a4422a4d78",
"3037c5335f1748afb5a38f9f71723977",
"4ece628eed6746d4911ade64722300c5",
"89477f677fb14a7b81dfcb27ea8e7011",
"354483aaa0354f3fa0f00913ca6aa071",
"89a850da15214d8cafcf09729eeafb11",
"7ff71e06ca52490bb24fc67673d8f545",
"96855b83643941a8b62b6b342bc89d49",
"0c65cfbb0a5c42318593167568b1da74",
"88784ac319834efdb0766b1eceeefa59",
"69ae3f823382428698e5cf18b197e82a",
"ffb3447b85604595a05f226ed4ac2f66",
"a15ba46365454e5f8b84f0c8fe476257",
"8edc73e6d9d342dd8c88a53511d72695",
"b5d75f9b22284d9fb7c98fed8d573087",
"07741a28062e450fa74563e4cb7a30ce",
"b805735866e7488c829ce0a6c3af0787",
"917c09aeddd04be6a7be8a2eaa4792e1",
"e820727f966f4e479b9faa3d742307bb",
"31a5da74d5024762b82c82bafc2dd88b",
"c532882bca144dff806215ecbf960d13",
"16f7885cc76f40c9aaf03a1ab0197c57",
"cb1f9dc1906640bf92ba0946ff135edb",
"ecc7b09a22c14b2abdfbc5fa36b478b4",
"a7b75cfbdea04cdea669eee3b0154516",
"9282c502041e4b989eebb754b4aad61f",
"2eab23428ef445a5b2aedc1f64afdc55",
"cc4eb2bcd302455eb565f57348127099",
"b0a62b6c219a4c2aa77f6875b61f7004",
"142e1d166d0f45dcb084779356306cda",
"82f04c183811459598ce703c660416c8",
"55d200d476db4c5fa95d99a2209038cc",
"f9d9c8440d6b4f42a8d1b1783e9e8f4d",
"73fa288f9c0f49d1b2dca3a76066be1f",
"4188384fead84672b78f635d283a130f",
"b2277fc000a64d63a78decd3e62b0eba",
"3496779c40254d2288fb109c854fa4fa",
"1c6c7dae84ea47df9d0a293f06b53742",
"d395e09f7bea445aad9462885d1da2fb",
"f772e96583ac4654a9637e38e20b975a",
"268bf077e80f400ba4f55fe890d1841c",
"2951c17ae7624dd297c946b78e7424b2",
"0910e45560144f19a082f67519af33fe",
"71d0f52f7575453a90f56601884ce0d3",
"3cda9abed8ae409bb1478949ab7d4dfc",
"2b4a4dda54064a9dbb8a6ab72f161777",
"db8385e1503e498db74a0e2fb3e8f562",
"ab29629d6d51495a890d7bd069bb27cb",
"75fe4e7ed2f64345b44c23f319b1059c",
"a57d74d276994b94bceed49d79bb66b5",
"0c1849653600492ebcb019a549aea670",
"2424da57d99542efa3233172ab2fb35b",
"f3f2fad0bb904c63ab90f064ad437325",
"8c7c8e82cd83485f9d65f3f642460705",
"fe33f77a9b354194ac2c0f1d76dcaa38",
"978635b871704121b672b79a88df8cef",
"b76d91cc49074ab3880cf9d3bc32b589",
"89d78e68f01a4c6fb3beaa84207db352",
"20d02b2bca014052b9e1ee7c0111fad1",
"4b0b00d8a0494b8fb8380a7cda996be3",
"d5e9356401cd4ce8802277667b55dce7",
"03be7a23247f416d8bd33f29c42dc5ed",
"a128a10d22824e52be4e93dbd95c7b99",
"3f826c10f3dd43639c34bd7c782084a3",
"90d78f5295204a47af2fcc8d7c12c1dd",
"f90b715a87834ab0be797013095cf520",
"accfaec2898a4fac9d6a83daa23b8ecc",
"2cb01243d3fa4871840b273b6dc5e432",
"b035b5705ba443ff828d475a26eb348e",
"f1232395f2e1472b80adf3b6b15c0419",
"5202806ba28746f1b43017b9a375e3c3",
"ce588cf1a3984dfcb9bd14f91109cddd",
"1d33844b673b4e0489af43533b9e6161",
"aab9d06cac51464da6ade2c28f7d405f",
"76b13991c68a4e079cae19171e22e080",
"19385fc23b5d4c3fa8053feb9e789192",
"8ab0ee77aaa24425ad4e025de704ddcf",
"4cfe4ee721444d62ab1e9ddebbeb22f6",
"85de7f95c4e14f1aafc31efcb9767c63",
"d402bc0fa4b0434d82cdbbb1b1c7fab1",
"43d65fbf1c584f1e85829e820320a6e0",
"4e231ba3d8514c2eb3646b5309266668",
"80b2227ec5e2428e8d716398cde8851b",
"3dc47aa1901a49b9b2dce9041232db07",
"90684b81de444b74a3654fdc27a8257f",
"d181f738e7324f5a8f24525371e1571b",
"21139c1e7fda41aaba26e597493aec1c",
"45c171eb70584796932dd495a47182a9",
"0b21d20fef6844c1b702250b67ae9d81",
"e18a227883b74c20a7c9f326bd351ab1",
"22bb77b642e94ed9862180d6ff28ec3b",
"b6ce6bd9bfc64b8b94d8133598383a85",
"2ac1acce92264bd09ebb85da7a3ef2ae",
"edb76575d3864ef8888b02126444d78f",
"4000a3c83c1d452f8d06772ef703ef48",
"4b9d0ecd18e34e07bcb757b9c7942b99",
"236adb70df31408a853efd6f4171182c",
"0c5b1f1559ea46fc870081f9e67b96b9",
"cff1dd198d684769b3d54ae786cfa20a",
"6ee1212f12894d02b1c646284ede36ca",
"3b128e8452ce4281b1ae20c36ea0f58f",
"fa06c5b540bb4653a78527d2da639140",
"9d7020d97b3943caa0b6a71e1faed9cd",
"3cbc55ed35e54412a9c738d2abda3bac",
"8636309d01434f1ca4176e2431f32a8c",
"79586ea159f7445fbfbde37172d1c56c",
"f263ac67a0d04f34bb038e8a19da9b05",
"adaafd7a4bea4449bc2ff9c96887b2c7",
"c07c64ba0df1488088542f139b62a775",
"9dc3b60c3e5a486592ed0b75bba2627b",
"0c74aa62ced84eee92acf4b6a6e09b42",
"3661ed7254f04c8491a31b2d16df89a0",
"a5780de477084da0a6e12926a2355b06",
"fccc432a0d794a3c9e78c0ab2a9fbb27",
"c222281e8e714df6b08deeffc51dd14f",
"33acc821fcc943e1ba739b1705e677e7",
"56f548d292c544b79c5bdb644c99dc4f",
"1e82f01331554f669356a8a96cc73f0e",
"8a61c1fd8bd0487cad0de6c3039b0e81",
"e1274a09daf748e7a67b43927bea6f27",
"1dbaa4799bb841d99182061d5245c957",
"d8be93782c1b4f4fad77ee74541528de",
"7f89025ac10c4d0682efb1c485f3a8e5",
"c2f9b2d688d044ce83716c9e6c92b148",
"d70ff2ca39d94aad97644c61d6d0f80d",
"cf67715e4ded45c0816399b2b5f044d9",
"41bc2c3432174a6b8d57a6364c92cc13",
"59298252e93d4402bf31d22a096584df",
"54ead8193b2b444dbfd5ea353bbdb8e8",
"1ad75dd9ccb94d579a78eb356ec1448e",
"e53eaead76604ecc8117fbe581d5702d",
"68bcd13647f34955979fc70bb36e9716",
"13cc8b9e99d84136be48af620d028675",
"3e1e563aaf9b466cb2ed8bdc590a292a",
"d599e09e57ed4f8b9eb2d4114168e200",
"0a302d0e4e4c48889301d3bc60b92f60",
"69b168bcdfb147ae8d54c680faa06059",
"9eff9026286944ee89e29e34aec50cf7",
"2a8836c30b914053a1afd752fc38ca61",
"30556d02d5f146f1a4d88bb761ffefde",
"306a3014d26d423ebc973898312a102c",
"32827a31598e4878bf502617299583b3",
"0b7d0a4b96b9418a9b8903bcc8502a87",
"aba4654e09d74c5fa6517ab0758826ba",
"af924154ba7d49d49ffd0d9d5a103e71",
"66bdca712cbc4a50b12f5b0d9aefa713",
"22833a05fc874783b1f1ed86b1deec02",
"4f994e8066f94b3f9cb9ef5a37bf334e",
"c887d48e6a8349c1aead57467ea8bcb0",
"d53625ed70a24ccd86c59766f8e51fac",
"fc75e63141494999ad5defb1531ba968",
"5909690060ee4cd8ba3101769326f083",
"6f82a3940ce0488b927c8c3f3d9e5797",
"4f451880b6ab46f199b9085902efb8a0",
"59f2aecfc95f4a77811352269a457f2a",
"596754366043406880f9e04d7652e654",
"0e1a7c7552224792b5edda532f25e452",
"a3ff9e7102734740b38e0feb96d16192",
"f184b8f3961c4f9e83bfe6dd7c04eb0a",
"8c1504e10f4d4649a06cac51dfb30cc1",
"77f6ee88695b4b618981a01ff38ba9fc",
"61d067d2fde244a787197a7724035e26",
"ae993cf0da7a44fa8ec282f8ccc02e85",
"37237f50f5754c8bb986c1e8419c7f72",
"684fe89a62ca4ec69ce9ab35639aab74",
"5d42d09af6bb4b3d9bdfc566e70004c1",
"827dfd5cc6e44a3a93d36906c732fccc",
"d8f3af21ad7c4f889972b1f2fc1856d5",
"7a01c79f1f0942c09a4c7312d1cedcae",
"14bf2c5a46204f19810a1a0120c15f93",
"3674376d1c9b497084d12f43a85c2763",
"a8c1c6f42ef548a68438ea498eb562d1",
"d5a0d5e15ae644868398319764c4958a",
"1200ebab5ada43509706b7a0bffe2d38",
"4d3ce2ad32b24d2c9139f4c72753f2d9",
"7d68d6ca11a643469abb6153ff26c82e",
"facf3374a31349ef8c8ec7e447bb9b1a",
"667b13d94a6d441b9ca87067b29ddee2",
"c1109e295160421fb99b3f0795666bad",
"7218284af6cb4e86a4faa3df182b131b",
"c5d7915cd3d54975844dba5cad047fe2",
"79819fd3e04d4fe9b8666fc442b6c7d3",
"ba2d9aeaa5de4a8fb52c95a881601bb1",
"31db3704ff944f209e3ad2c6eba0dffd",
"c19d970372104ee79a2f0dca9fc8e404",
"2af2bcc228dd454683feda3ce105af71",
"c37e6e44736c4c7a80cc5654638fc119",
"21daf1bbc016416aa461178369fa39d2",
"dbc17fe7a11c420f8a8cee5ab19dd8f1",
"63962960a14140eaa961d4b95650bd4a",
"4beef8f57745443ca7c00292288d9bce",
"5efca48d5bdd433c9ed3f172e9df3666",
"a1932808637f44a6b3a017fc3f9840fb",
"cc0347c0fa604fb9a4484a128a031ad9",
"8c248f15ccb54c56b50a190c81e039a0",
"1db6a0d1ff5e4697b99b7648e1e61cbb",
"97eeeb59e2094199b886c0160c712679",
"678710769dfb48ed935b3367b79e6e80",
"362dae9710c947a3ba32a23aee7c2251",
"56d12c759f1e42c4b78266a2dfdbe4b3",
"b2dbee6d098d4e3f86cc96d3b72e19e7",
"492b7213122641ba93fdf4b2cbdadac3",
"41e1414f718a466e84d85e984e2dca1a",
"99a25ae4dfd14ed2a2e6bb180a41492f",
"3a0cda4e82a94675a57fb66dbcc14256",
"b6a73dba3ecc4e4687e1b360e46bb456",
"7be42de41df84e1e85b3add6f640de09",
"9f3aa63443544b9ba47b08344716fc7b",
"fe089720083f4d8b8a8daf5014315ebd",
"b4670697fe5b4f878fca59c5487fa86d",
"ca3de342c64c4913b7ef9400190164ad",
"47fa175da5b441e18a16777bd82d34c4",
"bfa9041076904ee99d6363f83f0a6ae9",
"39a390cf9a924213aa296ae0eba9dcb1",
"af3a0e3438a74fa5ba49a659711cf941",
"1f74df71f1c143399b8e9eda59828c49",
"9833c08ce0344787b8abd83e513dabec",
"426461fb5f7b4572b44b91aa17390a74",
"1bea92de53b0408cbdea52a662e58841",
"981de7ac46564e64ac6e6d9d421d47de",
"98e9ed6a2c9b4110bdf51c71835dd010",
"fd35c01cdbf443ec8b13c3f620f0d9c3",
"0b6a5c628f7d417b8c7317298328b7ad",
"b820fc8ef1644ab2a446b4976befd059",
"361e7ac00fa3405b8cbb17bfd421f2fd",
"964137ed0f5e4c53af5c420d34a9aaf9",
"901f60fc7d034e959c61701e0949ddcd",
"b2d71b9a17204328910bed3e322f6de1",
"b5d8152df5ef40c387ff5434f7b86087",
"a769e71f4d454afb881d3f6fea59244a",
"b9c25ce89344445293f15e3ef1c77588",
"d1c987ee3ce044a182d0338e496e2e0f",
"669cd5e7086d47048087e9ab72f40506",
"91814ae886d54c37a533ea834b20c363",
"2d1342b8b5424f2eab7eaae8cb8ea370",
"a0af4fce755c41c2b1df6c4b1f0c33b1",
"5deba7ef066849358a864f91b8a48aed",
"d79f6c3ca3a640749ea747786a9faf7a",
"f930ea6f8d0b43fcbf06e68e1d57bbf5",
"0e65dd4ce9a2443e837e1b010639fe02",
"bf0139615ca243f186c86af967d8a513",
"3bfed2e8b93e4dbc830ef3b59555907c",
"35bc56a2504746f89dc5ec1a02c79c2b",
"8ca1aadd7c6a494f8c4aab691215b2c3",
"3507d55c6cbf476798efd57dca45aa8c",
"24b8cf98ac3345b0b97402eab679fe38",
"493d71650e364ae2bcb5886bdc23da99",
"832ad8809cc24e3ea442dac26aec46fe",
"e7dd4cc6edd748fca203e4ac8e261418",
"fa6728ba481b4bb5b72fd56b00123e19",
"959205a762574391bdde24b62d851108",
"23f251fa75e54fe3b9905679e920db4b",
"ef650fee88174813a6d4e2cc0cdf1489",
"b9d7bcb0ec2d44319c264ec18d43b024",
"1f9013c2c2064fd8b52e1093f3efe6ff",
"460845dc26be4610a5421ecad4625388",
"3c4d7f94104240b18f1132304d747b21",
"76291df748cc4d77b872aa97cbfaef86",
"899f1b83db974d2d9c269c98b2a934eb",
"a084634812144f38b43c679de8a53dd9",
"b91d8f6aa7714d24811b7bdc4e7b8a83",
"1d2e46f896e3449581673418107ef420",
"19266d2dbbc64dc2ab7db4e6beada906",
"2e6dfaac94bc41f9a59008da650039fa",
"8eb354fd2f5a4e15a4eb4ecff0e1beca",
"c94b0da8fe664978871b4eac6c7a6f52",
"ee3b230d66bc40bf90ea744ec3baf507",
"edbbb678d8bf441d8ba3ef1567776555",
"b49a9987cb854d06a4d34383101d6a97",
"58ad0611ffa24f7280b9cac2877517dd",
"55a12daddda044d7a97ce68fb7e33416",
"b550ad16a33045798ad45ba9020834c2",
"3510512ddd7f4715b2bb9124b4bb22fa",
"1f89fb2a0fa14060b50f87ff98b266af",
"00c1ecbdfe034e64a22c04c1f1009299",
"e3831558737f43f897aefc6bc87b3973",
"d607f33d5a324272a093b391d0cf000b",
"64d049555bb54c419dccb509466c2a4f",
"f7ee9f0e972f4a2995cba35f13e9b0c8",
"6cc11a3f5e61421e9999eb5f76bf721a",
"edccd3fc8ea640f58640492636978709",
"681598e403ef4b0b9c76d6cd67832bb4",
"1de361ebf51b4ecdb589428c07b7d37d",
"cf94385b72fb4de99f49f489b2545d7d",
"46611b021d5348d2bea9beca3d104294",
"e30cc2cf233542e88d0fc6b3972262bc",
"4fdcc905c2cf4037a4f7d1016014960f",
"a9d38a9306a344e4ac4eceae2d1a13cf",
"0cf32d317b3e4304a011c8a87be96be6",
"28726bf0600b4b3b9339fda8b5c685e3",
"b70071d7fc334922ac65e246f509d420",
"2cfe2f8333224ddbb079298ce915c60a",
"ba01c727c7b04f11bdb8ad883abc9953",
"ee94b3b302fd402ab56954cdd0fb6b3d",
"20534f74ff9948039780bc0c77434335",
"455a9a81ce4f402490a96f20bbb47d53",
"26f3a3b36056444c9698bb8164ff0d73",
"fbb67fc16abe4c43ba5f3ccb227f084f",
"88ed1a37f98747da938838c738d90750",
"6f2c2fd98dee46738bac3f0b544420ba",
"8d36a26cbcb84c63af922f5a3e2db001",
"fba90f98ced74fba8a29551e1e928543",
"a78c75a4f8664c188203597817e1fdc9",
"0d87539855384572a1b373dd1a9e6c75",
"3cbaa19a608449b3910ad2daba453647",
"684f7d40cdda4d62870586be478e409a",
"dc8ad259b14845bdb014b1cd36027b46",
"9b4d183d94fb46fd9b78696f0fbf87e3",
"fb2fd0dfeecc4a98a27ef2af6661ad33",
"dfe591be2a054e64917b2fe57f1ebae4",
"21e8c35aaa1842c7bb5db145522fcb57",
"438a3cc802cc4fdf85925ad73a31ef55",
"c23aa828f2e742f48ff32df8a2977bea",
"58ce5dafc0594cc49fcdc170b2a34d36",
"a84bb59245934bbaa00c2fac46170a9a",
"84f0eff6c985498e85ec0d08912bc8be",
"31ff8865e58e4cc8b6ac5bb6bc1ec034",
"bb0c715c1b504004821378f8dee1b686",
"234c0f045eb740f2bda80baf10a30ea3",
"7feffdd65c72473f826bb7e870bf2ed4",
"821d08be5bcb4ef5a5475393eef8daee",
"63fd14b112b7430f87f178ea2e1d5282",
"57f9c9536c19448a842d83695395b23d",
"0e227d65f4994224be5cf7ade1be1e83",
"3f5b045fde1d42b2856e89e3991a989a",
"cb6f25962620486699a418d39632fddb",
"ccbbf53f9985403c8376df2971c3a80d",
"11e9cd1df78442368e07568afa29bc37",
"3b00eab1b7c24201a2e965327f85b720",
"262f8284883a4582ae703d5df9252b10",
"b4681661c58045feb377fe7d35a9ca19",
"f6e54be6a2ae4a25934fab81b03f6fca",
"adf0f1ee9286464b80def195aa0d5683",
"582329b6088c40cfb2a3712b4c11d29b",
"95c71485efe94c5f84fa407f8d547e84",
"06328b0984b343ce96e6029b8b9f6258",
"26fa50ca2c814a8096594ab9da117e9b",
"cdb2be0c38844d8183cd7928ec75771b",
"a9d82217c4af408ea9a494ceaaeaf1f1",
"fcf002747d934fdfb448df9103079ec3",
"b0385f2cc519499682d7287db2d69748",
"d97e367996ab41cfaa8fcaec87e9073b",
"b68f9caef44c401c81eb3d08235fe5b5",
"d6706b3f3e2d4479819d2324eaea7012",
"4cc36b26435d45f4bbc167eb24af0377",
"370877d5ac94447782be4e28d428df64",
"7ff9e48d6c274dd19b92d9e622c1ec2f",
"212eca63f8bc4e4c9728601b419bc378",
"7efdd6afcf8447b2afe55bc0997761ad",
"3285dffeeb034ee7b7a7fc9ef0139df9",
"8ee488ccc4d940c49101fa4416c60ca7",
"82866cf8514241de8d4067bdf9b8a990",
"5765bbf44cd344849d501e00a6a85ab7",
"60a2fa6825fd436b9f1a400bbdaa57c1",
"c8321203fe8449b186ce2916e4f23f5d",
"778a703d3e9845c283ecf63d1773b06c",
"40678f3f3f4941abb523c17dfcaac765",
"0aea68539fc146429173510e92cb5bd7",
"4b3866e083bb46859c73c76cf9bed814",
"579fd7fb4ba54222bcf4fed9e91976c7",
"c1b11c2b1d05455ca897da2c9b12c378",
"6c1150e3720c4cc0b17ebf9edf1b7779",
"81bc539cf63743de8b0f79033cc687fb",
"404c575af5b144508c72252eccea46d6",
"ce7f9d83e7394e5bb0beeeb742bc6abe",
"ba158dc3646046268d9b94eea21aa5f0",
"4532ea4301c84bafa47a83f85bfd6c99",
"1edb84b343ca4b849405f15d68c0c665",
"4685a38ab4c446e99cdfe2bdd57d6d2f",
"926b6409ad754e6083924ed87d7e0934",
"61b5c7e024534847a129c3a2468c94fd",
"0c4ca70962d949899d9fda7b876f12ee",
"2f23b8217c3e49f795c9920312cda169",
"5df040f709a048e0a84092ea6e39bbe0",
"e2e4f0de23824e28962241c2d3ef5c09",
"bbbcf9a6f1734d178e34ee0d541b76bb",
"aac8514b78ad4723962508958b97fe45",
"d78c2cff851f4df6a7743f129f29d2da",
"fbe471bbaf2f4b9296b44185988d2977",
"db394f2358ea4a26a22b02c6f0dd8050",
"847bb9c9299b4124b7dd19aa2f9b9239",
"8999d48dd38b46c69d0f00ef4283722b",
"e34786f108384d33b6224492516c3444",
"7ab1c7d5dbef41338731d2d464299336",
"3911d24dfe2d439a846b45cd03cb8b31",
"306594aba7c243cab7122d479656f082",
"4c6a7a7a3f854f9088461f9e617bccea",
"2661753f5d91415abf7b9105ac74ae95",
"305eb4ee410c465bb15154d3d852cd3d",
"14a853d4a78e47f5b6a93b03c4641ef7",
"ebe4c1c25ff64263a715ac84320ee556",
"d2d44f1038fe4d72a5bdaf0e9fedf73d",
"0432f1122cfb4b10af6b6de437670484",
"dc355ce9a2da4af4a4b398aa0ad7d5ad",
"f9683834df144e2b9d61993705d62f15",
"0dc5bd8cfaef45099398374505d318b4",
"f6857a642527462287ac40a0a68f3fa7",
"c549187da9c54b6b9422f5db620475c2",
"c5a7e91ffb58437d8b06d48d1a3e636c",
"d22f9e9e2f01444c9f762304fd50b527",
"648467714cf8453b91945482d39d23cc",
"3d9cf692bce74262935e01ea42e5af29",
"85d38e87d1db44819c01b4ebceb57de3",
"a8107f055d264adaac6b2962b5aec889",
"a07502514e3b49288343349269016483",
"d74f6da330a54a1dba170038a9c9dd63",
"cde5d4a791e342f5b2df4e8d449060fe",
"a6964a2b7fc04ca8a812b4636162a790",
"24830977b9e54c8eb57467fdd8433785",
"cc322fa4857742648899fdb2816a4d0c",
"908414d95f934c08a022da2542ab9b07",
"82e53a37beae4387b2cdde79263a32b0",
"ef5ac1f889d34cf8b1993f5dfa78ab49",
"c13b734bf1ee43ada6399bf82aaa37c9",
"b4e0e8a90d094855a132b97fb90f2b1e",
"20a5eee72978419d938f1e2163af54ad",
"071d0e4f7f2b43e194fdc10306a7f749",
"310c866901044a619506fbf3155c0455",
"7295ed6a1c674167a79877b343ab86b7",
"06b1ea71179b46b9b8061d25e1d4792c",
"aa4fff31b31148b3a82244817940966f",
"85be4f9eca3147f7bc34a126ae089a4c",
"445afeecee50432195e1114bdc889853",
"bb09efc4ea8548ccbbf88a6d4600fc52",
"3f570d4b0f034c6bbd77a2a5638427f1",
"34ae370b74574099a756cb495f42db09",
"8c9eedf1ed714f29b3afc6d41a97c5c4",
"73f3b09dbaae4dcc8adbe307fa302810",
"73152cde8a244cc78a93e62107b8b5a2",
"2d75b1753249466d9897713ba230a26b",
"624efa1b24ec4ea2b9e15cd0d5a62eeb",
"43e9befeb52640c6a0e98c235a0327fe",
"8d922f86230e454382ba54817c286072",
"325c79ff382246dc84ee0c1b01da2bed",
"c1d02246eee54b6dac9c8105443cde78",
"302628bbe3314ebf9563dc3d97ad204e",
"495ee24132a14617a76d94706712c715",
"4027b87324a0450bb9d4bb5b0e2a9c63",
"fe28f6cd5c4248fa8c3c01160caa8d77",
"1832970fc61147d9a97cc884090330c2",
"f3a8da47e48b4f83bd7d5daee09e747e",
"b4d2690d7972406991cfbb86f8e34e2c",
"21597e590bdd4c9fa9d726056f5d7571",
"727fcbddf6a34e3385ce584b76f3e39b",
"b842e9ece7d747dab4cdb2f9f8869888",
"03d7bdd82a004919a8b3ca8a37ccc736",
"5dda1032009a499f9d92c79007b74378",
"c2cec0bc9e824bb18ecfe67dfb41ec4e",
"bc7a9cddf31448c9bd0d1de25f9e9c0d",
"197ac10c1fcf4be08d3c2d16dd00c61e",
"73f8c7a81b594b6dbe6cf0274441dfef",
"3c9b461ddc9a4a869174490b659cae97",
"57db861295444fec8aec5dd756afeeeb",
"d3323dca4ec44c08aa9801939467ea52",
"4f1df6a6058540ceaa828b1519f3815d",
"76d0d04a7271497ea455eec1bb3ec92b",
"fb84ff8c01a341408f885dbe209e2c9b",
"ab1406bae4dc4461b76bfe70342153ca",
"de261a4f8e904c30bdfe18c2a9b90cf6",
"bd290261546e4cfbb108beb5b8720f2e",
"acd31a02eed84e5aa57a4427f7bfc8e4",
"e5d6a2fa24e545b297926f2354a2ab47",
"00d20f2e30444f938565c4e9f501e3e4",
"b59360646d624dba93850f98fa606faa",
"3a3ff9c4b0ed48d3ab3df582f2e4b8ce",
"c416d54c00db496cbc2dca252ab5f3df",
"951dc03231dd4720a423272db7e5125f",
"827b0ad5ff1546ba8ee4d848d4a8fd8d",
"09a0dd4e3dca4b999434f29e3a09e92a",
"2cea7c7d7cda4f8c9aaf8c3119f57b79",
"9c6aae05f7eb49b586bb414501d73c26",
"fe9c18e915fd40c0b6a1eb646be99152",
"f0cea3115ba54a5eb361271ecb30c3f2",
"f9c772a4f17146d9a4aa86b29691c8d6",
"92ad28911b7849faa1fb565f361e8de1",
"a48dfa7ed968418e9fed656fd09ce1a6",
"06a3661712da463c8299847837427e2f",
"85081fbe4c8b4d41ab71d7e59b90d905",
"35eccff70c154db8848f08d16323c1d0",
"c6bbac2ec86a4b30ac89212599f2c834",
"69a4c183c1b04c8380bff3d8785ea821",
"f81f406f60fd4d8a8fd876545bd0f6cf",
"3766efa48e01487a8a3ad8ceb2a00c0d",
"4b1c17cb5e8c4cac97c6375240b74dc2",
"de70926a46d6425aa450b5bbe1db2ace",
"486109647f2446e5a844acd511f9e879",
"ae2b96d246f4463dbbf98bcff9d1b2e5",
"faf8d19b42d8421995f8f90faaa28cc0",
"88a6add0b14844fbb6326d07fd5d32f8",
"86f95cf7140c4a6c8e6a9b573c4ef31c",
"16ee20f53a3d47778c2b922afa7a7e60",
"d5de040287164343a43d6e0d9268d494",
"90423262f7994beab3a97fff3312e2e6",
"206fbb9293994f4b8dd8bb7d609ce106",
"fca4e79b574f41b8b51fdf5f19ba7af5",
"59b0dd76bf1f4f0194679cd4159368c0",
"ff72016b6f6c4368b6cf01ff026aaad3",
"79615ea89fcb4cc1a40ca760d958921f",
"72eb194f678b4e3abc01d707f7cee6dd",
"cfd46d20dd254289be4c0d53129141db",
"85975ef1153a4595ba26c9b1daba6625",
"37b7f5abf82441b7a34f8667054eaf3a",
"d85ff7032c3e43229d107e80fc3a603e",
"c05b4eb642854e1b8692af0e050f68bb",
"f4fcff4eeb9d4b358b76d3c9b0082346",
"ac248237e0e147ae8b15bd8256b33cc6",
"a165ae3af8354c8eac53a4c984d71de8",
"98212c84c414451eb1d1629146b9ef4c",
"0212100025f2497a862d01cab18298d9",
"b77344a83f1346389f0d163d2cdf5162",
"64ead0fc8bac4d40979bf2e683a926ad",
"81e4a112e37844919ef56e67a9113e6d",
"43ab52ac83c04688863d2a061b0dae9e",
"bdd46c8a250c47ea833a9d9740c8ad88",
"46ed9c9104b04c84ab55bbb365db7b68",
"d63e24823ed84cecbc3e14b276175a8d",
"f738b140b2d3455ead80654891748622",
"80322e5b6748497ca04ace9346e6bfc2",
"74745e83f7db4e26826426fc74f19bfc",
"8096da2ba48940c6a2e602f6538362e2",
"ab5650b283864257a77837eba7ea01bd",
"28768e41a8ff4d90a28b65032c4379bc",
"1ed564c4b54c4c2a9402415277d5f5ef",
"ce1fddeca4d44dbbb8e64802bc3c20b3",
"643a7ba25101414aaf97085716028c4b",
"4454a3a88c184d5f91114d6932fb5937",
"79f02461893c4b8ba07e6328c7fe7f04",
"f539183bf65d4adbaca78873be2eeec3",
"f8570fd788fa4623a90100d04cd0eb9a",
"b6e864f7abd4415eaa538b8579cd005c",
"4e6be6ac80c94e2482136d468bc376ee",
"f4954b7019c646bd854766ceea2b3311",
"6242cd2198e04480a20d1a073580e811",
"220ebe25a2cb40309af3e2db6271a0a8",
"d2070d8375394490b617b42370cd21f0",
"f968a2ffe7714d9fbc14c8e3bbbcac79",
"88926a4b09ad4c0eb19c5eab1b7400cf",
"9536c872521c49eea586b476a56a9fb2",
"551e1ffb6fcf4c57bc4037a73f6a9880",
"797e79483d494c80b793e66fdab2bfad",
"92e98243ba794ef198b7aac2dbf52c26",
"038f2a03023b4010b0136f4a86a726ae",
"82f427ae49aa4767a65fb8896cb65a71",
"8d78e26bb3584ab1b682616de4a66e70",
"8ab55756a8ce4359b04920c5655c1b64",
"8db2cf48a91340adad238cc35ff9c7d7",
"04b9e24ddda94169a01c2256f005287e",
"0b43283dfdae40abb5268a4e53034753",
"1cff04f620a64883b46da57af0dd07b3",
"d732b1cb5a7f4e259d169e0067c789a8",
"7c86178fe5af49b1888b1f9212b52011",
"249aa2cee13b4414b23b17482b1be39a",
"4dc910e49f9545ba8213809e9400fb93",
"51aa1a70214240129fe5cffd72b999ad",
"ceb49a765bca4cc0b64625e58454bdb7",
"018f22c41e7146269a1ce3e0f6ca5e62",
"1d2f8e0ace70439c87c35d844d16496c",
"bf9b0bfb533c4dc99e4cd5bf42b13bee",
"b6bf3a3a64aa4fb4bbedbf8971bbdde9",
"8aa8cf6207cb4348b5ed95f58040b51c",
"4a122709e5374db6b3b178224e78fcd0",
"87d41c18bac74896b775eb153511be05",
"fa162c851f654beaacfe7ce04d90459c",
"bfa63025e20b4a0da0355296f051becc",
"02643e56f31b4457b1a7510b3af212f0",
"5132d826ab4944218c83f444842ab462",
"db4f20171c254514b433b699f36418fe",
"7170fbe5739241738bde4ef01b7306a3",
"831da727a5e243fa8f55aa041e059cea",
"915dfe15ecc6435b9bfb44d02efdd633",
"585eaf67bdc9455db9f666d9be3224f7",
"280332cb8dac4c8183b3d48d7bb7899f",
"f9c1835b5a8b40109e943f3e4b4254a9",
"e9b08fea0bc8491f99c4abc62cea5e9a",
"0ccf50d2b05c4f05872ae768c76c3a75",
"6b852608f7ba486bbb84de46f95474bb",
"81fd1a801fc84b1786ef8b354de0f774",
"8a2e7343af2141678bec769a2812ccd6",
"b5acd829cca44ffd876bee0a7d0b9769",
"1807ad181f76401187e573f488f490cb",
"9f49bcdc27ea4a1ab02f27ce6bfffeb6",
"351389035e204ced97049ebe7479f367",
"46abc817204e463bb9f8b002dcde9ca2",
"df5d9b66abb74e4abdbcd36dd8376a80",
"47de8ff23bb141d3ba90fcb9d30abeb8",
"dd7a1f6d897a4e5bac19190bccf64a62",
"3a424e9ecd4b4825b59879e204fa8238",
"4e6e8c5557d44e2ea69f662d228129de",
"15dbef819bfb4af59bc75ff5c15956da",
"63beb311042f40338ae17039920f46e6",
"dced58b973ab49f9ae40464d900b66fb",
"5696b450a7c84b6a851adcae6a8f1442",
"6872a3618ffc4669b049910f1ebfe9d2",
"2350d8a1aa5247be9aa5eaf39a8ac090",
"fd8bf49762a043c5b3029404dd3276d3",
"676dc245150f447f8ed7aeec00b76b44",
"99681410246b4dba8aaa6c045f239c1a",
"176052f5abf844d9b01bad9e3e697407",
"1fe2ae943a0147549594fc17e9e226c0",
"abdc6225c8c84ae8b0f0ecb1a8a761b9",
"b9fc22adc0054193a949769a2c9bb767",
"e037b4beddb74e44bca4c7f1afa24c55",
"9891dd7426574458ad7589cf15a7c203",
"639c6653d99f40459d9d1a6db97b0b47",
"ff4a2a5c89d7424bac6bf36382ea65fc",
"128fb3a0366649a4a44a7fe1475a0c46",
"148e78dc549d449dbbc6790d16993533",
"63f7ca82bcf240e282ccfdddc6d1293a",
"4c6ad43c2fba43cbb1ba007a7ea2bc1e",
"a6ad367c934243078a393a440f8929cc",
"8dd92d7cc2b74cc3bd87a9054b5b2181",
"253912e3dcb341da9e56ced3ca0d9c0c",
"cd19711a6d3f43bf9d41d8a988703d6a",
"a096a940a2ed4b5a96659bae9342e059",
"4e212b8d72e4476586b96dbee956ce77",
"21213fefa83c49b5bbf4a17a610b54f8",
"4a46cab2a8754693a2a8039aea75776e",
"fe20cffede4944899d7d2904a5386e7b",
"df4b34583ec34af293d57652347c9946",
"409b46299d6446a8b559270855a0f8b7",
"b8e04606fea946f7bd33dd854477a401",
"4552c92a33bd4792a05e3312b7877ce0",
"5c7ada1ebc694f7494103dec23d7335b",
"a27c276b1b114b76b829ff207622ff4c",
"cfc2d514188b45baa92e6fae46540c88",
"66bc93b74aed44c498da71054707b1a6",
"8898e52ab0384a9eacaf843cd5be568c",
"cb0ab93712a141fdb5d966f1eb415176",
"b7d0c567e9354f0384bc87c684a71579",
"26a0b7235635475ba8b22b2a978d6d21",
"777508a1625540599f4f715f33305e55",
"e4d8ac8210234cf2adc82ece543a976e",
"e9ad58b5053c46088645b60c3c22858f",
"f804a4235d8b43998fffa87f7d41db76",
"ec93499a7a934add87655af59a018c97",
"2b215b92e8924b85a250c81f8e804fa8",
"868e9934534e4a51991506029d01cabf",
"bc42168d41144e478ababbce47cef12e",
"dba69997802245838c8f040c70543ae9",
"024269892bca4f74afe92e0fcac64683",
"3e511d2367434d4f896a55e2b726f7ef",
"d4dd6356b2c64ed4a2e2956d94f4e043",
"b877d89b4fae431d87626ee1168e56ad",
"4fe4f05d88c4454283684dd2e118a21e",
"f12db65628924fe98a041b2895a0243a",
"5c1fe4d95c464cfc86f69d15b00c8627",
"39c584cd6f684cd1847c2a32ad9aa181",
"d3d2b7aae5c8493cbaa1e8d45f06a4a4",
"1c85dd57125d40c89f73d9f5f4e01f26",
"7f724d48d5d744c38fe6a069b2863aba",
"0bea45a7a1164436b06ba826df098ede",
"ed507f8c5e6847bf890ef26ac1dcee59",
"780c4c44f1ec48cbabeb9e0adb97ce4b",
"343e7182dcb542ee8cacebe2a25ecc80",
"b1391ce2a1d44318a35866095d79c0db",
"ba144c51a6634f89b374585b6085b0c1",
"571071722b5c45219507acb397ba1bae",
"5962b9b6ea3b4ddba54850116d5e9ea5",
"5e7f74eb1553407e89bfc4b7d81f1401",
"c95dbfc547ca4236a8a75e8afec592b8",
"3887e2d34698475b8d485c76cf4ddf08",
"63b1472b82d9438fb1f95ee205b8fa1e",
"3640bd43145a488b838ff8e2a5ff7b18",
"c92d847e8b6743678ee82812e06c1c86",
"6203d5d2a5fa4015957a6d81fbcda7b8",
"5f0a22d944c04626bc9ffbbdcb1d50a9",
"b2449bab5e9345d3ab380fbab7717a56",
"26e5e924f98d4715957ca0156b0f7b5b",
"a77aec18ba9447b49ab364b8fdb54794",
"985e89d78f1d41468b3492c38dd8f5b8",
"96f220f20d7f460183c87997a65a9e1b",
"9ac27ba0b5f74e4181da1a7178bb2b03",
"79ac0d9179ca46388864feceb9b6db93",
"c980448afb604f25950cead7bae8eda1",
"4f01895411f84c7a8766ec34daa2c887",
"de322fb9c97b49cdb6d47343fadf94f2",
"83495388551d4a63bf1d3bae4fabf727",
"3e74616eb39f46deaaa4f66e0e7882e9",
"b5ce234d382743c19cdc85b5dd204817",
"1473c3368ba942078eeae8bbe8a453ef",
"3411bfaa0647492a8a7c35bcaa0cbc3d",
"5a4d7af01b1643b5ad78875d73316c8a",
"6d4e2faee0fe454a8dfdb0df2605980d",
"90eedd334e0c4b43972b04c97768070a",
"85f8d665f6474321867342577b6b6de4",
"79473f63518844c99ad0f50c5602c8aa",
"7365f1cab0f2458382265c4aa1cc082c",
"4e3614e78dc74b4099082d4b9fc9bc29",
"3ae8c1184efe425f98c864471bf6668a",
"0f5a0b3d662347aeaf4b7fab33b17f4b",
"c54eb2e3283b40a78a0f61039eca555e",
"0c709f60551c4bf19a3b8cd35ee479ab",
"e70a3bbef7094d39a1ecef639c098c10",
"39fe05c253fe48b6a79ed80264eba1e8",
"930c94f5ba89425f9cc6925858495178",
"67caa0b1df844e558b71321a17676b01",
"0f6711f10e874cdeae6725abd6812e30",
"da0b9c8fd84847afac4f2fce0b0ff116",
"b069c31b8a084663aca811c17af7a3f1",
"e060f522795a4d69bd3006a457bc0eef",
"79b72f5e3bf546ffb072ad0a9ad1ac21",
"69ce3e8e93e44f75bb6d374381191bf1",
"288c8b38afb741ceb0d05b47669f061b",
"0866fd8764f34208a2cfee8b9092d4ea",
"765c47067c194b26b18850578bb01f64",
"3f1e4cb4e9714e9385dd684cc2d9de0c",
"979fb1c0b406491cb2061381aa0a990c",
"ac320e8525934e9cb309698d4164d3e4",
"55a638775069405a8cc9377aa9eab852",
"23dbda506d9249e0b51b85aac138be9d",
"e2ffa1f2e12943229627af2b4b5df912",
"e4273d381efc49d799431fccce198786",
"5d5c275a590c4b81bca6b3f326afea5d",
"c8484b2826d04b32b9e1405764852983",
"f34cec6b0d914007b1dae1502fdffbd8",
"474702dfe76e485c91c2035ef88251ad",
"bdc52a369abe43999a7505a353f1725f",
"562bd03bfefd40ffb3e9eef7abf951cf",
"cc09ce45089346aa8de078ded62d3181",
"2d6104b1a94e4b388ef9ab2b800f127f",
"dc3047f468c4413c99b0fdf0180f6a19",
"c19c8c3644e546acb62a83366d5eeb4c",
"1c0013bb438349db849eb0086050eb2f",
"ea7d673375c24aca87656e6ad90852e3",
"4eaddc5433654ceda9253533f16c4e40",
"1c7d5b269e914466b591505ceafb28e0",
"cdaa9b5b0c3a43c4b47209c814c81abb",
"3b787c114db84ccb9b7f23bf9d26e875",
"b4d7ec76c2e045fdb8242398892bdb2d",
"f65f8187189a415fa067aacdd0ebdbf7",
"ae9f42b813c34ab9b8c234aaa379772f",
"7c12404f5fa64dd7834b3b325234c33b",
"53e4e0581c5f4502bb4202ff3285128c",
"80a6dc582e18481e82a41c5ce29f322d",
"ee599167c02e460ab50f7243e3667e02",
"03ad9201600143c9a87ca7d213f21625",
"8a1add4df20c4be08c6f600ec7e1f1db",
"08e1757eb68b4cc0968779324955cdd5",
"82f1a726dd074acea625fab13b119783",
"ec7b5d9a7ec14f07b4e926bea8cdd731",
"e7ab718fec684240a42507ac72d3cb6b",
"8a7d7b2e7b774590aca4ca9c3d3d37ec",
"a27c4a92f2b74fbd81b3ddda2afae3e6",
"e55162882f5a4ce4814ec85f0201ae98",
"19173b68e5ea4e5f969f1dfe376603d1",
"b2d243f33b98498d949ae481c8b7a3fd",
"88d52e5bd6f44840b44055dc76e6e1a0",
"008135c9397b49ff807d51babee39890",
"b405980d31054038bc06115265a03c18",
"4b535ef880c14bdeb7ff7f3fe3098bce",
"737ecae576ee4e66912440c3fa7bff7a",
"3f873228b54f496c900fe975d1033449",
"6756f24250c74c7e9d18933fb7ca8af8",
"e46e5b863e84432491276d7fcadba90b",
"4fade3b72c8d4dc6829de9bb44aa944c",
"f4b4303324a048cbb9f7e5718f0b8373",
"419de6e63bc540d1a72e9253df0ed1a8",
"d5b68cbe600b435681508d821caf8ab3",
"4a6bd5df7166401b94083af68d6aa512",
"15b63c09c4d146309f6007bc8d0f874e",
"0a0f60199b9b48ec9ed40b06b464aa5d",
"4d6e05b9a1714e67b861f1a609711d6b",
"0d4290c743b74a4aad86050c48db63e3",
"2c59b68a231542b7ba8cf473a6172638",
"7cd3aa89f5ab46d8b7712d4cb744b3ce",
"3d51f7bdb98e417ca4a9780f319d87d8",
"833f7c9cba84485e9a99c1889ec3c36a",
"1cda83fcc44a4d4497e8c37712a0fa47",
"08c931f79f4f481ba75d54cf03b8a72d",
"720dc5cf1ef14415b9c253699432ff9f",
"a79d03673e984e4586a73fc9432af47f",
"7b0c78041a4844b68cce5dbb5c402678",
"5a56716697db4e5a8a67cfe567bbd0d0",
"911c83006241444fb4e7cae18482dd3a",
"5d9c2c7327e7484dae96d903a7f8a275",
"0e38ab3cfa06402783e6fe22face2491",
"b2dd913bd37c4c18af187852cc3a54e4",
"2c2b32aabbe4483eaa314e2535cb4501",
"f141219eb683458592d68de0110ff53f",
"2b306da93b4e4b74a40ad88f91926493",
"40fc7d13461e451c899e6fb8d84749e7",
"70145725302f47e08c439751cd05a338",
"d88d10203fec485198f999f434ebf9b1",
"13986171acb74dcdb602fd7a3cbe767f",
"cca94f9c659d40f2930085c24cc7f891",
"310dc0f2d76747c18f30b0e980a56424",
"df93c6561a464746a59194f9d21395a1",
"af005c4c99034d9d99ce1587412b3795",
"46dadbf7dd9c4aaf8d3fa6b03ff0064b",
"243f15a8189a4a2faf3068f2ccd91ced",
"8add0472b29d4a63b4b02151f35e937c",
"eee4c48d76f34556ad4491b695e027dc",
"b0751dd313ed4580954a0748334e4db3",
"b20f328017884ccca161251ae7302618",
"eff9675d23af48cb8eec3dd33833096b",
"4fbaa56e3d4049dcb003570b5a6449ab",
"be85c7e97adc4ac79417cd065c2b752b",
"a11a0a95cb674109b612004444e20f39",
"30eea05990084055a331b9bf92f9c3d4",
"464fa4b61a4a4cab90c0f3a158be5c1f",
"8cc2420f514944059fdcc7699ad8c697",
"0e1967164e364e44ae5ee1b1ac0e4e36",
"7e71ad3bfd634933a796e76c51430bdf",
"e19f9867f9c047d489e3a98d52ae20cf",
"0e22cb90f2184c578dc9a791d65c7f0f",
"9bb8f9ba85b543128cede2f9ae83e6c7",
"28181e2a9b44475791c0fbd8794d3495",
"5eced81e0d8b413ca971bf6ca68293a5",
"40338a1dd4774c4e846b873b92417cf0",
"35b2b2191bc84b49b1da153692d4f3ab",
"6d8d32d336fd4af78c80ebfc5bc8aa74",
"868330f0b3914ef89be2b8c8874ad4dc",
"775b2139e2e04f41896b9686f70287c2",
"6147730f1f5d4c438adddc53b286acfd",
"ee29385c09874dac9359cb22ae1fd978",
"e014d20978b44b36b18aa004c328c06b",
"5f6cdd19a28d4004ad6e1bb265d7735d",
"235d065b43af42e5bb5c0594ade7a7f8",
"679142758c544341a8e32efd80e163dc",
"f44fdbf479334f319145d4a755cc698c",
"9aef251f84384d9ba63fd1314559c161",
"e78a4d51b70f41ea9b9599eda1c6995d",
"12f3ec81f3e94495b6a26669ca7f38ef",
"9e6936723c004bc797ef0d4cb18f4d10",
"69bc50c0f4604502b58948db154831a7",
"ac6cad4ac9814d11bc9882b18e230ef3",
"f35170ecbe444c5c9bcd7ee22bd5ca2a",
"b331f6672b884d9eaca209e70dc929f5",
"693c088f7e02431d853e882b5c2a8200",
"6879881e1ed94e8c99b376fa8bc01c81",
"6a0ef9b8edf84b5290ec2b9ab12698a3",
"df3359bbaf264a71b17365599e536eb9",
"6db8e817a10142e286d9ecb9dcc8e25e",
"3393058c3fba426e9dd3633372586401",
"fed709ce402943a6b484a91ca34f027d",
"2323a328ff4b4ecdb9fb0df457f7e0cb",
"adf2040853cf45b49ad9dfe15ed187c6",
"4a8f1fba38374c90b2adacf9187617e7",
"55280fac924a440b8fb1993020da4ffc",
"405db2ec2b5a4df5ae563adf49c691e8",
"cb4f522bc3b647629167feb272a0153c",
"d90a43f200d140e999ba9ccaac4e8b4f",
"1d52e489ad304560b2625fd92b57bd12",
"ab369ea36660468a82d30938e52d22b4",
"5a010f0b8960456f921e8d3b2fc698b3",
"399d159b6fa846d6bda29a5bce53ad28",
"19262ecdb0584fc093d11f062aacaecd",
"609d216049ad48f9ba32f4bc7774031f",
"2c4bf79017a147b8903b4d71cf1ba459",
"72a9cae66c7f4c73a776e26e8064453f",
"4ebb6b644f804b538fa667b3f10787ae",
"0b2d0541c5ec42a1bc228547043a3c5a",
"e8e2395e6f5f402382ec29193988c0a0",
"ea1d0840c7fb4ac79a6c4ce09ebbe743",
"cfc8c3ca18674c66a42ec17710137b25",
"43af63a2bceb40eb908400b62e2ecfa8",
"584928cc58964b77a374429c74b8d28f",
"60e84e83a5bc4a568fdfd43b7936517b",
"38fb056082ac433f9c4e7c61dc6258c7",
"313f0451582b4ff4b8b4022f4a8ae977",
"9264c657f92d46a9b82e577afdadfda6",
"67d98137b5c74ec5a41a1af747e7158a",
"e1b64ff173b64591b706cfec83309c85",
"61095225f1e647649975b320dfeece96",
"3456956ddcba42698ab04debb62a4b46",
"7a2da32cba194d74a41f4e89960b2485",
"12fc01fcdd10499f868e84e7c712968c",
"be6f249b0d1241bf8c505556ee4265b7",
"1caa1a6328bc4c9a9daaff435190abcd",
"09b6e08eabde4f3ea25cede5b27efe97",
"a2d2dd51b2cf42b183ce20aed210f4f5",
"3438a1b84db9497da2948ef8b72f6981",
"63b124e1d90947b78d9a332e9c8b211a",
"48c28a0c769d4d8bbbcf590ac602a1f7",
"c5b019108c6f43c99d8c7a537478b964",
"f52630aa2fc542118cd1d725d4745077",
"883097122d4a4aa79da1ff9f562fe957",
"588e878bb0474621995c5d6f37c299e8",
"2a157d69037a4459b9799bc0a8797c67",
"bbc98a7c1f4e42708f22e2a11ff6dc6d",
"d3f3e1f0b034495f9b7357dba4ad8740",
"e4c468dbcea34fd99dded8081b1e3bf9",
"419551f5c8574fc6861634473fabb191",
"1fa02d86d7aa412fb25e56bdbd88a492",
"925bbb3da0064482b4c8f189051ce740",
"83fae4bcdf31443d84635e173cad9ffc",
"1ebf40aaf7a04fb5875c9daf050e62ba",
"942e793c3e674155a7410d41057a1b80",
"92379feeeedb4822816fac1756995c32",
"37b56bbf1294419885c429d523caa9a1",
"4614a8f2658f44d68969b370322dd545",
"4d7a6a376d2746dd9491327cdef884e6",
"a60df66592184d7f92302a413670af01",
"cfeca08b1d7f4f7bb0357f0542b51292",
"55789c06484f42eb86a725ecaf2835d0",
"90058543969745d991c273638352a05d",
"09277269e75747eaa9217fcb1a85434b",
"20cb97a53ae54714b0138d173aa21b01",
"4b5555b6f07e4fe7abed6f2733541c92",
"247a071761e649149bf828f07ed89204",
"f31775953dc1417b98b2c9b1b04d1099",
"c71168bff3684e579849fad7710ca898",
"cadd871023a44664a30a7d5d2e7c22d0",
"1789275a7ddb490baf18ee27ec34451e",
"eda7f17c0b0243ffa6d4c8a66896000b",
"f00ba052bd314ee885860d10c5176339",
"95047f54792d4857aa68da38713e848f",
"565812883ee24ea6b8226e52544ccebf",
"ca152abc83024a2eaf0a085a9f50eab6",
"b04754b694524bf9923c64a737200c99",
"c22f2f32d50b464aaf27055d2bf7ee24",
"dfb5f8169a2f469f9430f5305dccc7d5",
"5f67216a7e18433ab72f08db97465e33",
"367108e967f44c1f9348e868e98eed77",
"3a39f803f4384843b57e1ca0dd0075f9",
"cbbd6a9febf644cbac605ba78a58963e",
"c736211e5cf248e39142efbb2ed91d34",
"718e448fec664d20a34457d0b93e1f95",
"e168cc6ca52a46869fb1ed26c6f34425",
"e8ab52f1873d473faa500e143cc39e90",
"28801d9e4b154fc5a5ca6b39de340a89",
"d9b4747daff04a989f785687e84930c9",
"f5444e0003d44a7699ccc6514917b074",
"0b834c11d2644762990569794b057672",
"35d65c1de96747fa9b0915551c48c003",
"d704285e34054fb7af0b6f11bead5c6f",
"0844811e29b84bae96d3fda65725bdf3",
"ece1fb6799004e508d5a91539c340e10",
"f9aa0862baab403fa12f78a4d16cacd3",
"4f4fa9a61fb14bbb96fac7388a0e2cdb",
"2615b635c56e4141825ae33514c3baba",
"78922b59c9f046cd94b31a1cd4337183",
"d4f6fc49115849c2a68e35c1faae7406",
"f4262517a37d4063aadd2e62e0033954",
"4b92267c29a840bfa2685bf469365ce1",
"821b1514246a4e28b727e2c1a6fec051",
"b000275c0b6641cf9b38ab2003a5d7b9",
"40c5f82b21be4b3c977ecc9cb5255a25",
"fb6572d6b8344f8e9aff441c52ae5e71",
"d17508c3e2884d499a1a1f3a3aba0a18",
"f84c5959e1674629b0dec974eaf39082",
"c0a540eaf58c40a6b81aa62f05ecbb5c",
"fca68425ae9347fb8b4b544e854dae69",
"afdf8bb14227427aa91629866e4a2502",
"ca1bf13a42a7446cb3fcc17eb476c3bd",
"6b16692570b94f83935b30dcf345eec7",
"0fda93c3066342159e7c30f6bfce8288",
"c612472c80db4ff08166be681647eb67",
"1e0c148b55b54aa4b08949c36be44773",
"9e995bc8a7e448acb6a0487078b86be0",
"661191d742d3488b9deb6a61082b0962",
"e8914a219f274f60920968af07dc01e4",
"5cc63ac21a9546f0bc17d071ccdab49a",
"361a706f34644367bb899a89198409bd",
"3b406e730c554d92bddc67f1be5a0852",
"422f5177965149acbf0e6bcb585109ad",
"aff54aff15134950b021f4b17309a673",
"766b749d66a7461a920fa7083ceca199",
"b1d1470c9ba448ac9feb691db2769f6c",
"ce910d9b59394d6991b897555b53499f",
"b568bd0bb6064327b46f469d3ac8e7ce",
"bb4ea436c975406c96b9c2fe88c0a9da",
"b40fe73800224ddbb32bdb4c89bb0ce2",
"76f54502ed2f4ae3b43090cfa5c8a84d",
"baedcc4dd8894bfca389618dfd05b229",
"5d0ee5d773ac406782e62bc3d4cb543b",
"8e1f0c11e94c46f5bfeaa5b4e5d29dd3",
"e045b81967264f839a048570f7cd5ec8",
"55f574c24f374feba098af264ae4a7d6",
"75491c44e02649708d1befaca94fd621",
"94fd8bb230394d2a8088488d02fe5638",
"610903116e5d442981ac2a51b79692c2",
"6361720c11014e53b45eed2dd4b311f4",
"8c65c94fba5f4b21b34002795a961a38",
"1cba36cf01674cb998620c7624458e7c",
"a542664b9ee84bb5bf569bbe476d4c08",
"4ce929cbca8348b59e896bfd0e11ae0b",
"c9d08fe356a345c2b4237554143b7476",
"18987efee9f840f4bace60e156840565",
"07ba186723a74ef7b82263241b32f740",
"3e4fa0f97495461da2c8b6796934207c",
"983d45a81fe54c1a9d766ee9480e333a",
"0d584f5e4d0f4f558ad0325450b3f2ea",
"01b260ee867d446c833736a88a47bec5",
"9be5e26848404a33aa1a9c35f29798c7",
"9ff2cc6be6644699a528f86809bd6ce9",
"1d425016193c473b810fd19f76a55d2d",
"a768731233a148a5a69b8dbb6a6ba530",
"6f8ea08bb0434a5b8fd286ee0269c8b5",
"dc0a0e2e595f4921bf83f229764cb611",
"3830cc405dc849b38dfe87df0eecb702",
"fb59bf2d2bd64404a5419b595d89f020",
"6aaaa51bf0bb443596226ebf8e09c278",
"af8813b5f6b347bcab6ce49194de7ebb",
"d5c7e87ffc004f909347298bd198cb4d",
"372e3ee9f64d49c0a1c9599cc2211167",
"dd9fa4dd337c47c6a99ba3a80a0f4200",
"3c83b01213c94dea9b2897b35d7fd77d",
"3bb9ddd553734f3fbfa2b75cafe1eabe",
"01bb19277ce4404b99479f924c7c6eaa",
"c9ecc8bfba8b45099a51a728ac1c1c97",
"a4618301521c4d66965fc69adcf11638",
"3ebbee4d8d7c4aa8a394451de72c86c2",
"81ad534fec7e4b919e15a975617678a3",
"47f229d8bcbd4ad7b247dab99641e93a",
"0a502e1f58554658a96374465e2f0ed6",
"73176d43b57441ddb874ef1fc02966cc",
"7d78d1d4603e4954949d7b086ecf41b8",
"5af0799fef2e4d3794f01e6774570a8c",
"78eedb342deb4367ac85909d6796976d",
"0f1baaedc45e4ccaa258b00958ccc35e",
"072404f81ba245ce80c47b92d6cbff2e",
"ffffe8450865459fa2040cfe97c587ff",
"bac22ad0041246e8b6d8caf8f3161e02",
"3d9a2c7b7c3b4d13b6fac6bbd92a4ba1",
"2dc3212095ea421dad27b3b60f4d36a1",
"ebaa10d1d9744615a3d86b2fe9ad6bff",
"bee7d2edba5946b48c56518c7984ce56",
"f57018867f1f4aac8df6a3a7b91c878e",
"54cc2aca19d845fb8417b96529283982",
"08d9eb42aa2d4f4ab47387e79dae0d2b",
"98e8b3f361984bd88a270a5d221067b4",
"4a9c1732aad64840b9daad540a63ddd4",
"4cb16561d3af4ed49cee15c5298ae97c",
"0a1defd0e1e24ec28b5ac0d8ee83f15f",
"3c113175aa594c179c00dc5165f2bc85",
"4e97d50873724d65896b4625bc69dca8",
"83624a35779140b29cf96fc56d2ee104",
"ae4a763905664858b5010fdfa4d6e93e",
"1dd4d251b7c448dd83f16657bfca8a8a",
"32f71689e39a46e3934e6510b125fae8",
"76a118b2a16f45678036d38e9ab04dff",
"eed707931b66482cbb8835ec804a64e7",
"4f4cb8bf1c124225a5f067712e415129",
"33038bc0451b48b8a5b7c9e53cde9ca9",
"043ee7651cd64a37847555080ac9b5bf",
"656d008a4071461689b004205674e7d2",
"f786598d8a834335be238b2ba9a60bbf",
"06762d9e6512405b83b4c33bac37c2c6",
"e750e560843a415f9b987c9af2934bbc",
"66cf9a0060904df1bc5b62dadddb7377",
"999108c5b9794365a0680cf02fcddd7c",
"cb96d71ee40f492dae977d7980fe2da1",
"9560379b658c4b1aa7f05cb9c73f2e21",
"cc4b3a690c404a83afd64f1a0d09bec2",
"104ba7786e6a43a3b61aa0c17b164302",
"5b9f3e129a424e7491d2ceb39a29fce1",
"8a5a051ebfeb4e42aacab0cda017fe13",
"cf6f2d67355a498086bbc68bbab95ebd",
"72936ae74f814a1fb7b905e48c2f1300",
"e7f9153d113c48ea988cc362034c3970",
"32c1ccd0bd7741ab9519d46dcec8d71a",
"7ad04402f86c425eb891e60642c74190",
"32afa9ce51634dde8ae68da81122603e",
"cc44f64ca8e24f8caf72bbb7f2d23cd6",
"a28bc0e90c1f4d83a97b7c8bee955145",
"d1a011eb6d0146c5bc46303e3a550e74",
"32549c74b69f44e3bab5d62825802283",
"573aebcabf40456fa55fca128c88cd17",
"68c51ddeb8554f8c8b8c57533db5c189",
"d71a7d5ab0c4499e8982cd19106f861a",
"339537284e084cc28b5ccc0243ab607c",
"3a45427466be461da2b326c7a21cee40",
"c419695e23f04deeab8c527dbbcafebd",
"a431a97486834b12871a946a1b9e9033",
"b2d90347c8c44fd89c3c43241eccb5bd",
"884c6275049044bca49b1aba848bec2b",
"e09137ab9b6f46e299de2cb8951dc2bb",
"7130478bfd6f43dabf26c11924ea3fe1",
"5f8c1545b1e94595bfa1dc9c3f2a27ec",
"0a2aea9987d242109d7d22d375b2a150",
"99d5cac35d7546ac975c3218de52807a",
"83b6181420914f53a2983a8a4e688bbe",
"68638ef6fdbf43269e3ed28b218b1ff0",
"369b166881e142d782afa21f5e32e1d0",
"1adef042c5524ade94bbf1a8ece7990e",
"97fbcc9394904c1b8bd07f4f282b4d05",
"2d27d228bf184a70b0373ed05891ea0f",
"bcc2a87f54754976873db5c20068bc9d",
"bc31cfb2872040b5845397f78dfdb849",
"4cf040910872476e8562ce5e589d0c94",
"6cac6af4794f42c6bc4b97ede201fb58",
"3cf66f0264354e4b809a6ce4d3ba1091",
"0f6dc68d8f1847bbad7752d9e39356aa",
"2a61bf5078ef4fadb64b7aeb80fb9028",
"b2b78b7343684fa1980e84121669ab19",
"13d0a193ff24466a90d6284611462eb9",
"fc69c88473fc4d0887a575fa7e3cc620",
"b94478b069ff4f83ba7b276f2847fc41",
"1bee2677a37f48889f7bc4f7195df55c",
"f4f2ef9d12e94161b52b8d7138744710",
"5857efb0bc9e4ce19b62f1b7e24650a8",
"ba5e6a6cfce747b387f131da6ed322d6",
"ca74ab40a8d745e98095ee91d03c7b48",
"ce8f0c2505924fee8bf54b7b77825bc1",
"c2cb63003c304b00b4af81e470a7ca65",
"091c81b92e064a3e97739564f06bc369",
"5258acd7f0f6460b8cf10e3549c2db7c",
"92843b757558430fa5ad69784524d400",
"648f37292eee4cb2a6336ca21bc40d5a",
"e20418c1088f454abc5f9d3b2fb2e6b8",
"ff237298cdf546da8a295120eec30706",
"4f5c25966e704fb9b7d8ce7b9da61548",
"63e4a08c213f41139feddae75f501e22",
"38abeb2daa85487a8ce67b693294eb0c",
"9e0fa9674b8c406a86b117a983e8605e",
"1c92de1b5be441808ae3cb3ea4179ffe",
"2dc1b5f45d654b5a9565fe5259ce35e7",
"4a192eebf1f749ba807dc35467d3b48e",
"a6f032dee4094e1fb5db6ef32b344b28",
"4ef67c75690c4c99af148e5d2cd5f559",
"76cb8d7dc86b423285de99cec37adc70",
"d122ccefb8974db78ad81db8c57b151f",
"50c252aba47a45978e4219931d73cde8",
"c9509fd12c224fdc9110b80ed0c091f8",
"f52a9e175fa947098d0d4874a2c01c81",
"6ce477b85d2d4081a8b60dfcc498fcfc",
"369744d7bfaf4396b0836ff3da6c6364",
"c668a2f5c3284907ade9a06bd6e2f261",
"10bd939136474c16bac7bce674145486",
"4ceafd7ec0614de4893a4ac372691a49",
"b11de72f7fca42a4a2aef0d7914e3aa6",
"e8c9452c47e142eeb63ac82bb2fc98d4",
"7476ae46623a473097c56421d24b10fa",
"75c0bc6ca28948cea6cdb7b4ea2b75ec",
"efefed2606664979b1bf2ef5812e988e",
"4f418928bcb340279195d57e4e1646f5",
"7227d4afd6bd47948cda19d6dc557029",
"021e1c81487a49c08d44796228a19716",
"19fba04725164517a8bd33ca192660fd",
"ef5f9b506466476a96456878988d34d9",
"ffd39cee1ee743b09bdd4b790f3c65bc",
"625e3c005a1f4e6fa66afb7a3a86c2ec",
"fb981970cf9a4d32a485945e82a83532",
"d16be34c0bdb4d4dbfe1dd971624346c",
"9803ecb62bd94173983eaf9a688fc046",
"8a96a23826b949518449af5b3621c7a8",
"7f7e90b50ead450fa416710ca6431614",
"1ba4c62705a349759a76183eb5166651",
"e080bbe1585d43608a5c7bafabd6f7f2",
"e73dc5911d4e4cb3b45a6fc6de50fd6a",
"3669143c4d2b44c99f1cf8de16509269",
"464b7a40ba9b43aba484d0a61e73cd9b",
"3185c44d52304646ba856af6286df1ac",
"c9926ce3398649069942378f06e82f65",
"272e3cb475464bd289b1acd0ef2e86f6",
"f3dcc143cc7d40f1bd55eb433fe7ef0c",
"b015a67b2f9e4fac86eb2a5a5dfd49d9",
"c6e096166c834287b2bba868e250f59e",
"4a58422ea65749839926ec67e580a114",
"9b26e57c901c4316bb9ca484033e31a4",
"04937954143c48e091f98f2fc26073e8",
"9a957670f1db490495eae673c5b61aa2",
"2bfa64d3b0b640ea96fd3754932b0761",
"a9c6d83de9354b9ea0d0f0e77e0bd79e",
"52d39fbc442d4581b88dbfa1336ce386",
"3f595e9e3c034a919d585d4ed9ace021",
"9ca605cbdf3b47c2a0242926d00dcff1",
"1b234633af19483cb8f66ebc820c3abe",
"b7d1e1436bc74f168250861f25d69add",
"8ed6cf1ef3e34d8ea2b56bf69057a7eb",
"d9778f64f8dc43a8a4fc0b934c18730a",
"fd2464b3b13c4b248a68563279c58ebc",
"be555a82049347b7971557c922e7e73a",
"8155ce3885f449048f3a66d72b26b193",
"c8a1ebfa187a49508cb948cd3d1ed166",
"61e12f9ff20c46a1a13b4ea6c3d1a6fa",
"11421fa1796140579cbb0b25cb8146ea",
"6f584bdc097340a88dac96db1d8cf2cb",
"053d67e1dc094f4db0966a4cbdd5a7b8",
"aee072b8b8e04579b92c68af7dd05efe",
"6eee764254ee4eaab252cec7201f57e4",
"f433e31547f24772be68363d51d42e04",
"aac13caa9a0b45a1915e591db975fc03",
"85d2c8272d8d4a199618131b4a40bf00",
"4e858b6e9fca4c3094b1b0ef6c0bce79",
"8a4a220ee03e4cba9146ecadba541fc9",
"adac80644b0d4d8aaa155e0095fc8959",
"267c439918e0434c8a4d7691d01c8df3",
"7dba256b8d3644df9646945ba016333a",
"6ff8b4e807e4472a81c32352b39f3ccb",
"8454650b59b440998279d707b902e50b",
"0b30205b55b24ae3b8cfd2414db2ac26",
"e36da872615442af89f1a3d1ad5d90c8",
"f3bdb0eb3d3643ad8c5a11f72bfdd276",
"122772e77b644f679b953309c7d73c20",
"c27b445f25e8441ebba856c0f5ae71cb",
"43c2889f0980434fbedd8c67579ceb58",
"bae50dc415064087aa54c589e9b22ce0",
"f72d4c8dfd984056b4b877314bbdd9dc",
"6005d06f097247e18250d3a4f330ade9",
"3b2d8d2d26484d4d84601c6dddebe9bd",
"42c621efd7934728b8f16953d2d480dd",
"2291e772f5954f4287d4622b1ef7a746",
"be3e9e0e266e446789355ae31878b41b",
"c3fcc1852fe6462e88a4c96f8452d210",
"55a3a06cc61f4978a4a338110aa548d8",
"00d9b37170d24725951872b221c61df1",
"be735b594b794227a641ccdfa32adefa",
"684a26732a194cffb79cbef4e42e2b50",
"f4fd1577d7c4453c8a3ea590a2e8aaaa",
"962918b53af9408da4d528c22a494d3d",
"8377e5134caf41c0a230e27980c265a4",
"26560a7bc0a0442f8951aad7ac79b364",
"93109fbd526b42188238b8bed36739d2",
"ee4bb3704080476da6e60e6eac87fc11",
"95801fd00fff43bf94304ac2586c62d5",
"0560d86abb0e4ee0ab6ca092efebac79",
"e65a4b8a45da457895b66a03f5440899",
"49571beb6c8745eb81c3d11717a146ab",
"df69fe9a01024a388062cd7287f7b976",
"650e97b1209b42538a4993f04eda4478",
"d497c00a1906425ca7156005286f333f",
"b53c294d995c4fe9ac27250f3bf8910b",
"4d65f8b1af074d04b39c66f8b9460088",
"ef4a1eafd927477c8797ff59c560391d",
"17895edc62bb46dea62599c5714fe35d",
"a65b78d759cc4bb9bdac72663461ab6d",
"d03433facdb14b1292377d4627ae6246",
"2845da0e723a427995a80cda1d5420ae",
"e332a2fc8ccd482592cf64ce9e8ad027",
"e3cfa797eb8e4f0b954b131e04cf6672",
"4fd02516c51f4773b86733b4a9454a3e",
"3abbafe868334290b4fd11a28b16d7b9",
"0104b8a3b71d46a3a07af04fa451cd23",
"2288f001477b411bae3fbd4fcea159e5",
"bdec714042254ac09098a2af721e88c2",
"add0f62b450844f085cb9a57bfa3c26b",
"4f2bd294b2404bbab97393f8b181d6c2",
"4ebcc8544c244a5bab85758533f472a1",
"d12e3420c7e340ad8504bb3282275131",
"971b0985cf16499a88f04b94d2951e00",
"471b67174c924f189d4cf5cfcc7b5fc1",
"d702dcd2bd4d42248493bb278a385d67",
"47647a10ca134482bd04bd4700483cb4",
"d94700c34e6a462b8c70874445a756be",
"8d19179bcbc441cfa4c8ef7689d55434",
"c3b1dbf41677446ab45f44d3b74e5d35",
"4c186216061649979e7df18f2bf1353b",
"69ca68feb9e244a69a718c08fc301151",
"ba25f66332504faabc5268d31841381f",
"5fb6e5907d4c4b87a400b304633bd82c",
"e16087bf8bb940f990ec4f6023a0f04f",
"8ac4989ac5fa46ca99d5da6b11bce431",
"699d56f85f1a41d897f9c6ded38a397e",
"9605b67dd9744e6abb59bf1fe3f4c2d9",
"e1037a0e5b37475dacca794e8349b135",
"ff3098c252754017b35efe0c8b2c43b4",
"1f0cc34678704b58b21ab4522c75a9c3",
"d935e31d1ace417a9aa58a63902b2687",
"07c00ba9c38e480fb1a2bc37c2162beb",
"3ee8dbb7d8144c9284918d1403733c86",
"0b96d5df37fd498c824af8d206f88e03",
"eba43f40f1134547a8d020144cd71dbe",
"247d3cffacb04e75b139642dba318ee3",
"6b5d14deb77c4707b459ff88db200805",
"d18902514e8348dc888c568a3e03e880",
"9f2764e774c34a7cbe5019bb632047cd",
"f6dc7361ad214976a56ce38a5c039d50",
"00c75489c8824f3b874b492190d092be",
"429c17ed83c44c01ad60c6b78225446d",
"09cc5bd14e184b5b85f110a35fcd4306",
"91812c3aed5e4d04af54cded2dd5e702",
"19be2e3955f44206b866725c88f20ed1",
"9707a53a78e345908c05eca1ca1681da",
"e50dbd7426d74838bb8828162f392d64",
"cb4e9c7b65334d9ca8da0593a9702200",
"929c995dd2084ce99cf166e0cf870329",
"6cc133bd50484c79bf51809e3c11473b",
"b72d62d0db284ba5afb959a6030ba420"
]
},
"collapsed": true,
"id": "BYQZEvOV88Kc",
"outputId": "5bc5ebdd-c21e-4dac-a815-4613d6a9307a"
},
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2eb57bba18a64fe8a026a303ee4272f6"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "97495e805eae467fb2a86342f6f5170d"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "68417c49d16c4c88a58329eefc6ed451"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "4291bb96bdae4b64a466d67cd9412b91"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "1550523c4b304dcf8756e4399bb20965"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e84cd0d929424c80b9a478465228b4a3"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "15818eba16b348fab21487861b9522ef"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "bb814e21595f42b1b1b569a9353ca076"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a6b032c1b7b7483f94557813287c8c80"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "7d24da4d7101453e9cc41ded7151695e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6ed96819fd634dbbb57d27108a11c137"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "108841158c65443092c436b4cc478832"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2dc1e8dc4a054c9db338a5c6e3268bfa"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "155a07ac60834fbfa163eba7196a876e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "685e93e5fa1f4f6d86fe6f7e0a24c7df"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b02644750bc14773bd552e356e728c51"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "cf40535e37c44a91aea3a8d59ae5cfb3"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "1ac330823a2e4db5a206c7782479a636"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "aa97cdafc9514d839c3b6922b5ca817b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "cc6ae560e83142f48f0b93e625a597fa"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "dff566a5b58b4173b3136cca50434873"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "3c0a7bb3815e4afeb616a4a7540ba434"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "1df6419f868f4883bfddb91c2507b363"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "17b32acb55ba42e48080a7128a9444d6"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6947bd655403498581271d06fcac6f90"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "7d550058fef7419d880b0a964fce60c0"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "14c69906204d44c9b9221db9d2c38772"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a91358e047df4cec90ee780553c99462"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "244bf9c5f49547c1b6310e73f2b0112d"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "16cb0ad61e7d449091f091404ae7d125"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6e4821604c58425e9786f1e6f9a1b854"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b16762a5b9674c61a8ee5c5f4e62457c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ec83fdc24ce8422e88ffc747308fbb22"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "befc5949b7ce418483e8f574528fbd52"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "dc444293de204c699c8247832cb4e64b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "721cce6a414548aa831fd4bfd67f0c8a"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "1c1eeb97f4d24ba3b1aef23cf8e0da7c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e1cc735b1b1e4e1eb93914ccaaf2fd2b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "60c7b0c10cc8436b9607f294cabbb09e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2bcef5de95d346cb8954a02a014ea9a3"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8b0188313dc74eb5939d2f7c3b9e40ce"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "9d8749e9da134a81927c93daee98de2a"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b721591998614555a4223d6f0da3ead6"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "39f7fd830ca740289df4d97a44e5ec19"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e82587758eac4aba9f711508d77b996f"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8e942201e50d49cb9e6d1ad2291af505"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "949a6272d3ed4ee888d570245dce9de7"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8eeb1e30e2a54e309cf392627d2d5f61"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5e5fe5140ef24ee49fbcef105b46409e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "dd2851bd4cf747da8b41e2104586a4cb"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "275c63fc2cf1423fb977d93aa9bda53b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8cd6aa9da2db4cba9f5dba4e02ed47ea"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "d594a8e2ad9e429bb2e8d3bf61a914a0"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "c8d455b081d844fc9cdbbff931defb73"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8aede7fb1fd84c4cbc14ea1f6400e46d"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b40da767fe614a8a967379c7682193e4"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "10be2e450bcf4755b1d0723d9149b1c1"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6dfe80a1abf9465ba6c7e2e1a9312322"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f35dbe8a8ace497d98123470eb3480d4"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f7c39e8b65b24e56baf1442c43c0d6bd"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "647280e4fe074c3abdb5e3a5522fcb12"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "06d1e1ea1f274443a227eeb0e45d28a6"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "7f41c4e98e8540918191d0907542e0d1"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5e815e97a86644db9c195affae4231da"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "cc8b3638b99d4ec29cf65e0f54dc0b55"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "89a850da15214d8cafcf09729eeafb11"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b805735866e7488c829ce0a6c3af0787"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "cc4eb2bcd302455eb565f57348127099"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "d395e09f7bea445aad9462885d1da2fb"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a57d74d276994b94bceed49d79bb66b5"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "d5e9356401cd4ce8802277667b55dce7"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ce588cf1a3984dfcb9bd14f91109cddd"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "80b2227ec5e2428e8d716398cde8851b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "edb76575d3864ef8888b02126444d78f"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8636309d01434f1ca4176e2431f32a8c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "33acc821fcc943e1ba739b1705e677e7"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "41bc2c3432174a6b8d57a6364c92cc13"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "9eff9026286944ee89e29e34aec50cf7"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "c887d48e6a8349c1aead57467ea8bcb0"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8c1504e10f4d4649a06cac51dfb30cc1"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "3674376d1c9b497084d12f43a85c2763"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "79819fd3e04d4fe9b8666fc442b6c7d3"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a1932808637f44a6b3a017fc3f9840fb"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "99a25ae4dfd14ed2a2e6bb180a41492f"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "af3a0e3438a74fa5ba49a659711cf941"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "964137ed0f5e4c53af5c420d34a9aaf9"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5deba7ef066849358a864f91b8a48aed"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "832ad8809cc24e3ea442dac26aec46fe"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "899f1b83db974d2d9c269c98b2a934eb"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "58ad0611ffa24f7280b9cac2877517dd"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "edccd3fc8ea640f58640492636978709"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2cfe2f8333224ddbb079298ce915c60a"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a78c75a4f8664c188203597817e1fdc9"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "58ce5dafc0594cc49fcdc170b2a34d36"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "3f5b045fde1d42b2856e89e3991a989a"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "06328b0984b343ce96e6029b8b9f6258"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "7ff9e48d6c274dd19b92d9e622c1ec2f"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "0aea68539fc146429173510e92cb5bd7"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "4685a38ab4c446e99cdfe2bdd57d6d2f"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "db394f2358ea4a26a22b02c6f0dd8050"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ebe4c1c25ff64263a715ac84320ee556"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "3d9cf692bce74262935e01ea42e5af29"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ef5ac1f889d34cf8b1993f5dfa78ab49"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "bb09efc4ea8548ccbbf88a6d4600fc52"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "c1d02246eee54b6dac9c8105443cde78"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "03d7bdd82a004919a8b3ca8a37ccc736"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "fb84ff8c01a341408f885dbe209e2c9b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "827b0ad5ff1546ba8ee4d848d4a8fd8d"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "35eccff70c154db8848f08d16323c1d0"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "86f95cf7140c4a6c8e6a9b573c4ef31c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "85975ef1153a4595ba26c9b1daba6625"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "81e4a112e37844919ef56e67a9113e6d"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "1ed564c4b54c4c2a9402415277d5f5ef"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "220ebe25a2cb40309af3e2db6271a0a8"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8ab55756a8ce4359b04920c5655c1b64"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "018f22c41e7146269a1ce3e0f6ca5e62"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "db4f20171c254514b433b699f36418fe"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8a2e7343af2141678bec769a2812ccd6"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "15dbef819bfb4af59bc75ff5c15956da"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "abdc6225c8c84ae8b0f0ecb1a8a761b9"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8dd92d7cc2b74cc3bd87a9054b5b2181"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "4552c92a33bd4792a05e3312b7877ce0"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e9ad58b5053c46088645b60c3c22858f"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "4fe4f05d88c4454283684dd2e118a21e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b1391ce2a1d44318a35866095d79c0db"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5f0a22d944c04626bc9ffbbdcb1d50a9"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "83495388551d4a63bf1d3bae4fabf727"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "4e3614e78dc74b4099082d4b9fc9bc29"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b069c31b8a084663aca811c17af7a3f1"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "23dbda506d9249e0b51b85aac138be9d"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "dc3047f468c4413c99b0fdf0180f6a19"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "7c12404f5fa64dd7834b3b325234c33b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a27c4a92f2b74fbd81b3ddda2afae3e6"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e46e5b863e84432491276d7fcadba90b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "7cd3aa89f5ab46d8b7712d4cb744b3ce"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "0e38ab3cfa06402783e6fe22face2491"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "df93c6561a464746a59194f9d21395a1"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a11a0a95cb674109b612004444e20f39"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "40338a1dd4774c4e846b873b92417cf0"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f44fdbf479334f319145d4a755cc698c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6a0ef9b8edf84b5290ec2b9ab12698a3"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "d90a43f200d140e999ba9ccaac4e8b4f"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e8e2395e6f5f402382ec29193988c0a0"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "61095225f1e647649975b320dfeece96"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "c5b019108c6f43c99d8c7a537478b964"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "83fae4bcdf31443d84635e173cad9ffc"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "09277269e75747eaa9217fcb1a85434b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "565812883ee24ea6b8226e52544ccebf"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e168cc6ca52a46869fb1ed26c6f34425"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "4f4fa9a61fb14bbb96fac7388a0e2cdb"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f84c5959e1674629b0dec974eaf39082"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e8914a219f274f60920968af07dc01e4"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b40fe73800224ddbb32bdb4c89bb0ce2"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8c65c94fba5f4b21b34002795a961a38"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "9be5e26848404a33aa1a9c35f29798c7"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "372e3ee9f64d49c0a1c9599cc2211167"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "73176d43b57441ddb874ef1fc02966cc"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "bee7d2edba5946b48c56518c7984ce56"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ae4a763905664858b5010fdfa4d6e93e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e750e560843a415f9b987c9af2934bbc"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e7f9153d113c48ea988cc362034c3970"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "339537284e084cc28b5ccc0243ab607c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "83b6181420914f53a2983a8a4e688bbe"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "0f6dc68d8f1847bbad7752d9e39356aa"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ce8f0c2505924fee8bf54b7b77825bc1"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "9e0fa9674b8c406a86b117a983e8605e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6ce477b85d2d4081a8b60dfcc498fcfc"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "7227d4afd6bd47948cda19d6dc557029"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "1ba4c62705a349759a76183eb5166651"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "4a58422ea65749839926ec67e580a114"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8ed6cf1ef3e34d8ea2b56bf69057a7eb"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6eee764254ee4eaab252cec7201f57e4"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "0b30205b55b24ae3b8cfd2414db2ac26"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2291e772f5954f4287d4622b1ef7a746"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "93109fbd526b42188238b8bed36739d2"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ef4a1eafd927477c8797ff59c560391d"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "bdec714042254ac09098a2af721e88c2"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "c3b1dbf41677446ab45f44d3b74e5d35"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "1f0cc34678704b58b21ab4522c75a9c3"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "00c75489c8824f3b874b492190d092be"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n"
]
}
],
"source": [
"forecasts_=[]\n",
"#neuralforecast models can retrieve the future data themselves without data leakage, however, its always better to be sure!\n",
"future_met=Y_test_df[['ds','ERA5_pr','unique_id']]\n",
"id_test=len(Y_train_df)\n",
"#for efficiency we can forecast for a subset of the test set. e.g., 180 days\n",
"for ii in range(0,180):\n",
" #see the inputs to the models\n",
" forecasts_.append(nf.predict(df_total.iloc[id_test-15+ii:id_test+ii],futr_df=future_met))"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 175
},
"id": "veAFQCoaEHdF",
"outputId": "9eb203d8-1d58-46f9-a875-99e24ac55e62"
},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" ds LSTM\n",
"unique_id \n",
"1.0 2009-01-01 5.103837\n",
"1.0 2009-01-02 4.669140\n",
"1.0 2009-01-03 4.323388"
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" ds | \n",
" LSTM | \n",
"
\n",
" \n",
" unique_id | \n",
" | \n",
" | \n",
"
\n",
" \n",
" \n",
" \n",
" 1.0 | \n",
" 2009-01-01 | \n",
" 5.103837 | \n",
"
\n",
" \n",
" 1.0 | \n",
" 2009-01-02 | \n",
" 4.669140 | \n",
"
\n",
" \n",
" 1.0 | \n",
" 2009-01-03 | \n",
" 4.323388 | \n",
"
\n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"summary": "{\n \"name\": \"forecasts_[0]\",\n \"rows\": 3,\n \"fields\": [\n {\n \"column\": \"unique_id\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.0,\n \"min\": 1.0,\n \"max\": 1.0,\n \"num_unique_values\": 1,\n \"samples\": [\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ds\",\n \"properties\": {\n \"dtype\": \"date\",\n \"min\": \"2009-01-01 00:00:00\",\n \"max\": \"2009-01-03 00:00:00\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"2009-01-01 00:00:00\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"LSTM\",\n \"properties\": {\n \"dtype\": \"float32\",\n \"num_unique_values\": 3,\n \"samples\": [\n 5.103837013244629\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 22
}
],
"source": [
"#lets check the first forecast instance\n",
"forecasts_[0]"
]
},
{
"cell_type": "code",
"source": [
"#lets check the target\n",
"Y_test_df.iloc[0:3,:]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 143
},
"id": "sEjnworBwVyJ",
"outputId": "283cc0e7-1c6e-4fe2-f879-96e5c32145cd"
},
"execution_count": 23,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" ds pr srad swe tmax tmin vp y ERA5_pr \\\n",
"8975 2009-01-01 0.0 129.34 0 -10.50 -18.34 153.10 3.85 0.24 \n",
"8976 2009-01-02 0.0 150.88 0 -7.61 -17.04 159.29 2.86 0.00 \n",
"8977 2009-01-03 0.0 169.54 0 -2.98 -14.01 200.00 2.47 0.02 \n",
"\n",
" unique_id \n",
"8975 1.0 \n",
"8976 1.0 \n",
"8977 1.0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" ds | \n",
" pr | \n",
" srad | \n",
" swe | \n",
" tmax | \n",
" tmin | \n",
" vp | \n",
" y | \n",
" ERA5_pr | \n",
" unique_id | \n",
"
\n",
" \n",
" \n",
" \n",
" 8975 | \n",
" 2009-01-01 | \n",
" 0.0 | \n",
" 129.34 | \n",
" 0 | \n",
" -10.50 | \n",
" -18.34 | \n",
" 153.10 | \n",
" 3.85 | \n",
" 0.24 | \n",
" 1.0 | \n",
"
\n",
" \n",
" 8976 | \n",
" 2009-01-02 | \n",
" 0.0 | \n",
" 150.88 | \n",
" 0 | \n",
" -7.61 | \n",
" -17.04 | \n",
" 159.29 | \n",
" 2.86 | \n",
" 0.00 | \n",
" 1.0 | \n",
"
\n",
" \n",
" 8977 | \n",
" 2009-01-03 | \n",
" 0.0 | \n",
" 169.54 | \n",
" 0 | \n",
" -2.98 | \n",
" -14.01 | \n",
" 200.00 | \n",
" 2.47 | \n",
" 0.02 | \n",
" 1.0 | \n",
"
\n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"summary": "{\n \"name\": \"Y_test_df\",\n \"rows\": 3,\n \"fields\": [\n {\n \"column\": \"ds\",\n \"properties\": {\n \"dtype\": \"date\",\n \"min\": \"2009-01-01 00:00:00\",\n \"max\": \"2009-01-03 00:00:00\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"2009-01-01 00:00:00\",\n \"2009-01-02 00:00:00\",\n \"2009-01-03 00:00:00\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"pr\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.0,\n \"min\": 0.0,\n \"max\": 0.0,\n \"num_unique_values\": 1,\n \"samples\": [\n 0.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"srad\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 20.117186682038813,\n \"min\": 129.34,\n \"max\": 169.54,\n \"num_unique_values\": 3,\n \"samples\": [\n 129.34\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"swe\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 0,\n \"num_unique_values\": 1,\n \"samples\": [\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tmax\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 3.7934021669208766,\n \"min\": -10.5,\n \"max\": -2.98,\n \"num_unique_values\": 3,\n \"samples\": [\n -10.5\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tmin\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 2.2218535805343547,\n \"min\": -18.34,\n \"max\": -14.01,\n \"num_unique_values\": 3,\n \"samples\": [\n -18.34\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"vp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 25.479502219104155,\n \"min\": 153.1,\n \"max\": 200.0,\n \"num_unique_values\": 3,\n \"samples\": [\n 153.1\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"y\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.7114070564732965,\n \"min\": 2.47,\n \"max\": 3.85,\n \"num_unique_values\": 3,\n \"samples\": [\n 3.85\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ERA5_pr\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.13316656236958785,\n \"min\": 0.0,\n \"max\": 0.24,\n \"num_unique_values\": 3,\n \"samples\": [\n 0.24\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"unique_id\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.0,\n \"min\": 1.0,\n \"max\": 1.0,\n \"num_unique_values\": 1,\n \"samples\": [\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 23
}
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 175
},
"id": "rzXU0j_K2zMx",
"outputId": "25790c9f-b5cd-48cf-d332-ffb7f352ad12"
},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" ds LSTM\n",
"unique_id \n",
"1.0 2009-06-29 2.856258\n",
"1.0 2009-06-30 2.750363\n",
"1.0 2009-07-01 2.650226"
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" ds | \n",
" LSTM | \n",
"
\n",
" \n",
" unique_id | \n",
" | \n",
" | \n",
"
\n",
" \n",
" \n",
" \n",
" 1.0 | \n",
" 2009-06-29 | \n",
" 2.856258 | \n",
"
\n",
" \n",
" 1.0 | \n",
" 2009-06-30 | \n",
" 2.750363 | \n",
"
\n",
" \n",
" 1.0 | \n",
" 2009-07-01 | \n",
" 2.650226 | \n",
"
\n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"summary": "{\n \"name\": \"forecasts_[-1]\",\n \"rows\": 3,\n \"fields\": [\n {\n \"column\": \"unique_id\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.0,\n \"min\": 1.0,\n \"max\": 1.0,\n \"num_unique_values\": 1,\n \"samples\": [\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ds\",\n \"properties\": {\n \"dtype\": \"date\",\n \"min\": \"2009-06-29 00:00:00\",\n \"max\": \"2009-07-01 00:00:00\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"2009-06-29 00:00:00\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"LSTM\",\n \"properties\": {\n \"dtype\": \"float32\",\n \"num_unique_values\": 3,\n \"samples\": [\n 2.8562583923339844\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 24
}
],
"source": [
"#last forecast instance\n",
"forecasts_[-1]"
]
},
{
"cell_type": "code",
"source": [
"#lets check the target\n",
"Y_test_df.iloc[179:179+3,:]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 143
},
"id": "UAJq4qsHw1gR",
"outputId": "1da64a9d-eb1c-4e89-92dc-c0895025bb35"
},
"execution_count": 25,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" ds pr srad swe tmax tmin vp y ERA5_pr \\\n",
"9154 2009-06-29 13.40 204.06 0 20.02 14.19 1619.27 2.75 3.95 \n",
"9155 2009-06-30 0.17 341.47 0 20.92 13.40 1540.75 2.98 1.25 \n",
"9156 2009-07-01 6.19 316.39 0 23.72 14.93 1707.73 2.74 0.77 \n",
"\n",
" unique_id \n",
"9154 1.0 \n",
"9155 1.0 \n",
"9156 1.0 "
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" ds | \n",
" pr | \n",
" srad | \n",
" swe | \n",
" tmax | \n",
" tmin | \n",
" vp | \n",
" y | \n",
" ERA5_pr | \n",
" unique_id | \n",
"
\n",
" \n",
" \n",
" \n",
" 9154 | \n",
" 2009-06-29 | \n",
" 13.40 | \n",
" 204.06 | \n",
" 0 | \n",
" 20.02 | \n",
" 14.19 | \n",
" 1619.27 | \n",
" 2.75 | \n",
" 3.95 | \n",
" 1.0 | \n",
"
\n",
" \n",
" 9155 | \n",
" 2009-06-30 | \n",
" 0.17 | \n",
" 341.47 | \n",
" 0 | \n",
" 20.92 | \n",
" 13.40 | \n",
" 1540.75 | \n",
" 2.98 | \n",
" 1.25 | \n",
" 1.0 | \n",
"
\n",
" \n",
" 9156 | \n",
" 2009-07-01 | \n",
" 6.19 | \n",
" 316.39 | \n",
" 0 | \n",
" 23.72 | \n",
" 14.93 | \n",
" 1707.73 | \n",
" 2.74 | \n",
" 0.77 | \n",
" 1.0 | \n",
"
\n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"summary": "{\n \"name\": \"Y_test_df\",\n \"rows\": 3,\n \"fields\": [\n {\n \"column\": \"ds\",\n \"properties\": {\n \"dtype\": \"date\",\n \"min\": \"2009-06-29 00:00:00\",\n \"max\": \"2009-07-01 00:00:00\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"2009-06-29 00:00:00\",\n \"2009-06-30 00:00:00\",\n \"2009-07-01 00:00:00\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"pr\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 6.623913747425561,\n \"min\": 0.17,\n \"max\": 13.4,\n \"num_unique_values\": 3,\n \"samples\": [\n 13.4,\n 0.17,\n 6.19\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"srad\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 73.17620674326686,\n \"min\": 204.06,\n \"max\": 341.47,\n \"num_unique_values\": 3,\n \"samples\": [\n 204.06,\n 341.47,\n 316.39\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"swe\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 0,\n \"num_unique_values\": 1,\n \"samples\": [\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tmax\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.9295940851208397,\n \"min\": 20.02,\n \"max\": 23.72,\n \"num_unique_values\": 3,\n \"samples\": [\n 20.02\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tmin\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.7651361534611555,\n \"min\": 13.4,\n \"max\": 14.93,\n \"num_unique_values\": 3,\n \"samples\": [\n 14.19\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"vp\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 83.5392945465386,\n \"min\": 1540.75,\n \"max\": 1707.73,\n \"num_unique_values\": 3,\n \"samples\": [\n 1619.27\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"y\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.1357694123627753,\n \"min\": 2.74,\n \"max\": 2.98,\n \"num_unique_values\": 3,\n \"samples\": [\n 2.75\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ERA5_pr\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.7142928571279763,\n \"min\": 0.77,\n \"max\": 3.95,\n \"num_unique_values\": 3,\n \"samples\": [\n 3.95\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"unique_id\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.0,\n \"min\": 1.0,\n \"max\": 1.0,\n \"num_unique_values\": 1,\n \"samples\": [\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 25
}
]
},
{
"cell_type": "markdown",
"source": [
"Let's convert the forecast dataframes into an array then save it in another list"
],
"metadata": {
"id": "-ZLjt9c9skxe"
}
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"id": "tEX49IFO257K"
},
"outputs": [],
"source": [
"forecasts_all=[]\n",
"target_all=[]\n",
"for ii in range(0,len(forecasts_)):\n",
" forecasts_all.append(np.asarray(forecasts_[ii]['LSTM']))\n",
" target_all.append(np.asarray(Y_test_df['y'][ii:ii+3]))"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"id": "EuP7y1uD3wK0"
},
"outputs": [],
"source": [
"forecasts_all_array=np.array(forecasts_all)\n",
"target_all_array=np.array(target_all)"
]
},
{
"cell_type": "code",
"source": [
"target_all[0]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "htsP_ziP0dsk",
"outputId": "129c6731-7b77-47bc-c455-793b3f55ba88"
},
"execution_count": 28,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array([3.85, 2.86, 2.47])"
]
},
"metadata": {},
"execution_count": 28
}
]
},
{
"cell_type": "code",
"source": [
"target_all_array[0]"
],
"metadata": {
"id": "RUG9HUNn1TW2",
"outputId": "7ede1bd1-750d-48f1-8024-71c28a5820e8",
"colab": {
"base_uri": "https://localhost:8080/"
}
},
"execution_count": 29,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array([3.85, 2.86, 2.47])"
]
},
"metadata": {},
"execution_count": 29
}
]
},
{
"cell_type": "markdown",
"source": [
"Let's check the performance for the first timestep (h=1) of the forecasts"
],
"metadata": {
"id": "kiJw8jDKC94K"
}
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "D9cTm0De35Jb",
"outputId": "48a5b942-9cee-4c10-837e-3e87395fae2f"
},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"0.8182377228500998"
]
},
"metadata": {},
"execution_count": 30
}
],
"source": [
"NSE(forecasts_all_array[:,0],target_all_array[:,0])"
]
},
{
"cell_type": "markdown",
"source": [
"What about the second and third timesteps?"
],
"metadata": {
"id": "43bqaeSZ-cji"
}
},
{
"cell_type": "code",
"source": [
"#your code below"
],
"metadata": {
"id": "bK6aWRxh-mvp"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "markdown",
"source": [
"Let's plot the forecasts for the first timestep against the target for across the entire test set"
],
"metadata": {
"id": "qnXQhRxEDEDy"
}
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 559
},
"id": "GdQl-tpw4L-d",
"outputId": "8be1fada-a387-49f4-8b1d-21317061a0fe",
"collapsed": true
},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
""
]
},
"metadata": {},
"execution_count": 31
},
{
"output_type": "display_data",
"data": {
"text/plain": [
""
],
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAINCAYAAADiJQGYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAADBvElEQVR4nOzdd3hUZfbA8e+dll6AJPTeEezYAAEr9sIqdrGXteuusuuuZXWtq66uFQuu5WdbwN4FRLGACIKIdAiBQEivU+/vj/fem5lkksxMJv18nicPIdPehDBz5pzznlfTdV1HCCGEEELEja2tFyCEEEII0dlIgCWEEEIIEWcSYAkhhBBCxJkEWEIIIYQQcSYBlhBCCCFEnEmAJYQQQggRZxJgCSGEEELEmQRYQgghhBBxJgGWEEIIIUScSYAlhGhRjz/+OGPGjCEpKQlN03jsscfaekmdSmFhId27d+fqq68O+frMmTPRNI0tW7a0zcIi9Mgjj+B0Olm7dm1bL0WIuJIAS4hWpGkamqZFfP23336badOmkZOTg9PppEePHowZM4bzzjuPl19+GYAtW7ZY9xvpx8KFCwGYMmWK9bUXX3yxwXXcdddd1vVmzpwZ8frfeOMNrr/+ehITE7nhhhu44447OOSQQyK+fVdg/hvE6o477qC6uprbb789jquK3TvvvMO1117LpEmTSE9PR9M0zjvvvAavf9VVV5Gdnc0tt9zSiqsUouU52noBQojwLr/8cmbPnk1SUhInnHACgwcPRtd11q5dy/vvv8/ChQu58MILyczM5I477qh3+7vuugsg7GWDBg0K+bvD4eD555/n4osvrnfdQCDAiy++iMPhwOfzRfU9fPDBB9afffr0ieq2omnbtm3j2Wef5aKLLmo3P9977rmHlStXkpqaSr9+/ZrMTCUlJXHDDTdw6623smTJEg477LBWWqkQLUsCLCHaoW+++YbZs2fTr18/vvvuO/r16xdyudfrtbJQmZmZ3HnnnfXuwwywwl1W14knnsj8+fP59ddf2WuvvUIu+/TTT9m2bRunnXYa8+bNi+r72LFjB0C7efHvbJ599ll8Pl9UWcWW9uijj9KvXz+GDRvGokWLmDp1apO3Oe+885g1axZPPfWUBFii05ASoRDt0JIlSwCYPn16veAKwOl0cvTRR8ft8S699FIAZs+eXe+y2bNnk5yczLnnnhvx/d15551omsaCBQsAQsqTwb788kumTZtG9+7dSUhIYMSIEdx2222UlpbWu0+zlObxeLj77rsZOXIkCQkJIcHF9u3bueaaaxgyZAgJCQn06NGDk08+maVLl4Zdp9/v55lnnmHChAlkZGSQlJTEsGHDuPTSS1m/fr11vR07dnD33XczYcIEevXqhcvlok+fPpxzzjmsWbMm7H2/9957HHnkkfTu3ZuEhAT69OnD5MmTeeqpp4Da0u6iRYvq/YymTJnS5M9Y13Veeukl+vfv32RQ8uyzzzJu3DgSExPp2bMnl19+edifcTxMnTqV4cOHR1X27NOnD4cffjjvvPMOZWVlLbIuIVqbZLCEaId69OgBEPIi35JGjhzJ4YcfzquvvsoDDzxAQkICAPn5+bz//vuce+65ZGRkRHx/ZoAwZ84ctm7dGrZM+eyzz3LVVVeRkpLCGWecQU5ODgsXLuSBBx7g/fff59tvvyUzM7Pe7aZPn87SpUs57rjjOPXUU8nJyQFg+fLlHHPMMRQVFXHsscdy+umns2fPHubPn8/EiROZN28exx9/vHU/Ho+HE088kc8//5z+/ftzzjnnkJ6ezpYtW5g3bx4TJ05k+PDhAHz99dfcf//9TJ06lenTp5Oamsr69et55513eO+99/j222/ZZ599rPt+7rnnuOKKK+jVqxcnnXQSWVlZ7N69m19++YWXXnqJq6++2irthvsZ1S3hhvPrr7+yc+dOzjrrrEav9+c//5lPP/2Uk046iWOOOYYFCxYwe/ZsNmzYwFdffdXk47SWCRMmsHDhQr7++mtOPPHEtl6OEM0mAZYQ7dC0adPIyMjgo48+4uSTT+ass85i/PjxDBs2rFkN0Y257LLLOP/885k7dy5nn302oAIkn8/HZZddRnV1dcT3NWXKFKZMmcLChQvZunVrvTLl1q1bue6660hNTeXHH39k1KhR1mVXX301Tz/9NH/+85957rnn6t331q1bWb16NVlZWdbXfD4fZ555JhUVFSxYsIDJkydbl+3YsYPx48dzySWXsGXLFit4vPPOO/n888856aSTePvtt62vA7jd7pBMyhFHHMGuXbtIS0sLWcvKlSuZMGECt912Gx9//LH19WeffRaXy8XKlSutANC0Z88eoLa029DPqCnffPMNAAceeGCj1/v+++9ZtWoVAwYMANTP6ogjjmDBggX8+OOPHHTQQdZ158+fz4oVKyJeQ2ZmJjfccENU627I+PHjASTAEp2HLoRoNYAe6X+7r776Sh86dKh1G0BPS0vTjz32WP2VV17RfT5fsx9r8uTJOqCvX79er66u1rt166ZPnTpV13VdDwQC+tChQ/XRo0fruq7rn3/+uQ7oF154YUTrD77/uu655x4d0GfNmlXvsqKiIj0tLU1PTEzUa2pq6t3X/Pnz691m/vz5OqDfcsstYdfx2GOP6YD+4Ycf6rqu6z6fT8/IyNCTkpL0vLy8iL+fcE466SQ9ISFB93g81tf2339/PTk5WS8qKmry9g39jJoya9YsHdBfe+21sJdfeOGFOqDPnj273mUvvviiDuhPPPFE2NtE+jFw4MBG17hgwQId0M8999wmv5/vv/9eB/QZM2Y0eV0hOgLJYAnRTk2dOpV169bx7bffsmjRIn7++We+/fZbPv30Uz799FNefvllPvjgg5DMS3MkJiZy3nnn8Z///IcNGzawdetWNm7cyCOPPBKX+w+2fPlyQGWG6urWrRv77bcfX3/9NWvXrg0pvQEhGRfTd999B9BgJsgstf72228cf/zxrF27ltLSUg4++OCIG/A//PBDnnnmGZYtW8aePXvq7ajcs2cPvXv3BuDcc8/l5ptvZsyYMZx11llMnjyZCRMmkJ2dHdFjRaKwsBBQP6/GhMtw9e/fH4Di4uKQr8+ZM4c5c+bEZ4FR6t69O1Cb4ROio5MAS4h2zGazMWnSJCZNmgSoxubPP/+cCy+8kC+++IKnn346biUaUGXCJ554ghdeeIHNmzeTkJDABRdcELf7N5kN1mZAUpf59ZKSknqX9erVq97XzGDj7bffbvRxKyoqQu63b9++Ea333//+NzfccAPdunXj6KOPZsCAASQnJ6NpGvPnz2flypW43W7r+jfddBNZWVk89dRTPP744zz22GNomsbkyZN56KGHmizrRSIpKQmAmpqaRq8Xro/N4VBP/X6/v9nriBezBG1+X0J0dBJgCdGBaJrGMcccwz333MOll17KV199FdcAa9y4cRxyyCG88MILlJaWMn36dKvhPp7Mhvn8/Px6YyEAdu7cGXK9YOF60Mzrvfvuu5x88slNPr4ZdOTl5TV5XZ/Px5133kmvXr1Yvnx5vaDQzJ7VdcEFF3DBBRdQUlLCkiVLmDdvHi+++CLHHnssa9eubXY2y+ztMoPLeGjLHizz+6jbsyZERyUBlhAdkNlsret63O/7sssu45JLLrE+bwn77bcfc+fOZeHChRx55JEhl5WUlLBixQoSExMZPXp0RPdnTodfvHhxRAHWqFGjyMzM5JdffmHHjh2Nlgn37NlDSUkJp59+er3gqqKiwip3NiQzM5Pjjz+e448/3hra+vXXXzN9+nQA7HY7oLJJ5ueR2HvvvQHiesTM/PnzrRMCIjFw4MC4BVjm97HvvvvG5f6EaGsyB0uIduiTTz5h7ty5eL3eepdVVFRY5/kdfvjhcX/ss846i3nz5vHuu+9GNI8pFueddx5Op5MnnniCDRs2hFz2t7/9jbKyMs4777yI+8tOOeUUhg4dypNPPslHH30U9jrfffcdVVVVgApqrr76aqqrq7nyyitDynugRjgUFBQAKqOSnJzMTz/9ZJUYQQ17vf7668P2DC1YsCBs8Lt7924AkpOTra+ZGcJt27ZF9L2aJk2ahN1u5/vvv4/qdo2ZM2cOuq5H/BHPcw7N7yOSwaRCdASSwRKiDTQ2efupp55i7dq13HjjjXTr1o1JkyYxfPhwHA4H27dv58MPP6SkpISDDz6Ya665Ju5rS05O5tRTT437/QYbNGgQjz32GH/84x/Zf//9OfPMM8nOzmbRokV89913jBo1igceeCDi+3M6ncydO5djjz2WE044gcMOO4x9992X5ORkcnNzWbp0KZs2bWLnzp1WcHPHHXfwww8/8P777zNixAhOPPFE0tLSyM3N5bPPPuOhhx5i5syZ2Gw2rrvuOu6//37GjRvHKaecgsfjYcGCBRQVFTF16lRroKrptNNOIzU1lUMOOYRBgwah6zqLFy9m6dKlHHDAARx11FHWdY888kjefvttTj/9dI4//niSkpIYOHAg559/fqPfc0ZGBkceeSQLFy6kuLi4yWb31jJ//nzmz58PqBIwqODW/J3Pysri4YcfDrlNIBDgiy++YOTIkYwdO7Y1lytEy2mDnYtCdFlEsPW9uLhYLygo0F944QX9rLPO0kePHq1nZmbqDodDz8rK0qdMmaI/+eSTutvtjuixGhM8pqEp8RzTYPr000/1o48+Ws/MzNRdLpc+dOhQ/U9/+pNeXFwc9X3puq7v2rVLv/XWW/W99tpLT0pK0lNSUvRhw4bp06dP11955RXd6/WGXN/r9epPPPGEPn78eD0lJUVPTk7Whw0bpl922WUhPxOv16v/61//0kePHq0nJibqPXv21M877zx9y5Yt1miDzZs3W9d/+umn9VNPPVUfPHiwnpSUpHfr1k3fd9999QceeEAvKysLWYPP59NnzZqlDx48WHc4HDqgT548udHv02SOp3jqqafqXRZuXSZzfMIdd9wR0eNE44477oh6tMOnn36qA/qjjz4a9/UI0VY0XW+BJg4hhBAtzu/3M27cOFwuFz///HOLDaFtadOnT2fRokVs3LgxqhMDhGjPpAdLCCE6KLvdzsMPP8zKlSuZO3duWy8nJj///DPz5s3jzjvvlOBKdCoSYAkhRAd2/PHH8+9//7vJeVjtVX5+Pv/4xz+48sor23opQsSVlAiFEEIIIeJMMlhCCCGEEHEmAZYQQgghRJzJHKxGBAIBduzYQVpaWofdnSOEEEJ0NbquU15eTp8+fbDZ2iaXJAFWI3bs2GGdOi+EEEKIjiU3N5d+/fq1yWNLgNUI87y33Nxc0tPT23g1QgghhIhEWVkZ/fv3t17H24IEWI0wy4Lp6ekSYAkhhBAdTFu290iTuxBCCCFEnEmAJYQQQggRZxJgCSGEEELEmQRYQgghhBBxJgGWEEIIIUScyS5CIYQQnZrf78fr9bb1MkScOJ1O7HZ7Wy+jSRJgCSGE6JR0XSc/P5+SkpK2XoqIs8zMTHr16tWuT1mRAEsIIUSnZAZXOTk5JCcnt+sXYxEZXdepqqpi9+7dAPTu3buNV9QwCbCEEEJ0On6/3wquevTo0dbLEXGUlJQEwO7du8nJyWm35UJpchdCCNHpmD1XycnJbbwS0RLMf9f23FsnAZYQQohOS8qCnVNH+HeVAEsIIYQQIs4kwBJCCCGEiDMJsIQQogk7Sqq54pVl/LCpsK2XIoToICTAEkKIJny+Zhef/rqLV77f2tZLEQKAO++8E03T0DSNmTNnNnrdjz76iKOPPpru3bvjcrnIyclhn332YebMmXzyyScALFy40Lq/pj4GDRpUbw2apnHMMcfUe+yffvqp3u1ramri/eNol2RMgxBCNMHjCwBQ6fa18UqEiM7LL79cLwArKCigoKCAX375BYfDwbRp0+LyWF9++SVbt25l4MCB1tdmz54dl/vuiCTAEkKIJvh1HYAqj7+NVyJEdP76178CYLPZ+Otf/8qkSZOorKxkw4YNfPrpp9hsqpC13377sXjxYut2P//8M9dddx0AvXr14u2337YuS0xMDPtYgUCAF154gbvvvhuAyspKXn/99Rb5vjoCCbCEEKIJ/oAKsKq9EmCJjmPXrl3k5eUBsO+++1qBj+mWW26hqqoKgIyMDCZOnGhd5vPVZmsTEhJCLgsnLS2N8vJyXnrpJe68805sNhtvvvkm5eXl1mVdjfRgCSFEEwJmgCUZLNGBpKamWvOifvnlFx566CE2bNgQcp14DWKdPn06TqeT7du3W31dzz33HABnn312XB6jo5EASwghmiAlws5D13WqPL5286Ebv1stISUlhUMOOQRQGak///nPDB8+nJycHGbMmGEFQvHQs2dPTjzxRACef/55Vq1axQ8//ADApZdeGrfH6UikRCiEEE0ISImw06j2+hnz90/behmWNXcfS7Kr5V6KZ8+ezSmnnMLGjRutrxUUFPDWW2/x1ltvcdNNN/Gvf/0rLo916aWXMm/ePD744AOcTicAe++9N+PHj4/L/Xc0ksESQogm1GawZBeh6Fj22msvfvnlF15//XVmzJhB7969Qy5/9NFHWbt2bVwea9q0afTv3x+v18tbb70FwGWXXRaX++6IJIMlhBBN8KspDdR4AwQCOjZb+z8HTYSX5LSz5u5j23oZliSnvcUfIzk5mbPPPtvqhVqyZAmnn346u3btQtd1VqxYwahRo5r9ODabjYsuushqpk9MTOS8885r9v12VJLBEkKIJgSC+mSkTNixaZpGssvRbj5a8tDiQCAQts/qsMMO47DDDrP+7vfH73f64osvtkY/TJ8+nczMzLjdd0cjGSwhhGiCzx8aYKUkyFOnaD9++uknbrvttnpfv/nmmznuuOMYO3YsZ5xxBvvttx8pKSksW7aMjz76yLpePHukBg4cyJNPPkl+fj5/+MMf4na/HZE8SwghRBNCMliyk1C0M6tXr2b16tX1vm7u3mvocoCZM2cyYsSIuK7nyiuvjOv9dVQSYAkhRBPMQaMgoxpEx+FwOPjoo4/49NNP+fbbb8nLy2PPnj0kJiYyZswYzj//fAmGWpCmt+QQjg6urKyMjIwMSktLSU9Pb+vlCCHayF/mreL1H7YBMO/qw9hvQLc2XpFoSk1NDZs3b2bw4MENHu0iOq6m/n3bw+u3NLkLIUQTAgEpEQohoiMBlhBCNEFKhEKIaEmAJYQQTfDLmAYhRJQkwBJCiCZIiVAIES0JsIQQoglBY7DkuBwhREQkwBJCiCYEZ7CqpEQohIiABFhCCNEEv5QIhRBRkgBLCCGaENzkLrsIhRCRkABLCCGaIGMahBDRkgBLCCGaEBxg1UgPlhAiAhJgCSFEEwIhJULZRSiEaJoEWEII0QQpEQohoiUBlhBCNEF2EQohouVo6wUIIUR7F5BdhKIdGTRoEFu3bo3ougsWLGDKlCktu6BmWrFiBfPnzwdgypQp7X69kZIASwghmhCSwZImdyHiasWKFdx1113W3yXAEkKILiL4qBwpEYq29s4771BTU2P9/YwzziA/Px+Axx9/nP3228+6bNy4cc16rMrKSlJSUpp1H12V9GAJIUQTQo7KkV2Eoo0deOCBTJw40fpISEiwLhs3bhwTJ05k8ODBvPjiixx++OFkZWXhdDrp3r07RxxxhFWOMy1cuBBN09A0jZkzZzJ37lz23XdfEhISeOihhwAIBALcfffd9OvXj+TkZKZOncqKFSuYMmWKddstW7aE3O+7777LUUcdRbdu3UhISGDkyJHcddddVFdXW9cZNGgQF110kfX3u+66y7q/O++8M+4/u9bU7jJYxcXFvPfee3z99df8/PPP5Ofns2fPHhITExk+fDgnnHACN9xwA927d69328LCQv71r3/x/vvvs3nzZgAGDx7MSSedxC233BL2NkII0RQpEXYiug7eqrZeRS1nMmha3O82NzeXl156KeRrxcXFLFiwgAULFvDyyy9zwQUX1Lvd119/zX//+1/0oL5DgBtvvJHHH3/c+vvChQuZMmUK3bp1C/v4f//73/nHP/4R8rV169Zx55138uWXX/LFF1/gcrli/fY6hHYXYH355ZfMnDmz3te9Xi/Lly9n+fLlPP/883z11VeMGjXKunz16tUcc8wx7Ny5M+R2q1evZvXq1cyZM4fPPvuMsWPHtvS3IIToZIKb3L1+Ha8/gNMuBYAOyVsF/+zT1quo9Zcd4Ip/Ca5Xr17cf//9DB8+nIyMDOx2O9u2beOWW26hoKCAe+65J2yAtXnzZsaPH8+f//xnnE4nqamp/P777zzxxBMA2Gw2br/9dsaPH8/jjz/O559/Xu8+li5dagVXvXv35p577qFv37488cQTfPjhhyxevJhHH32UW2+9lXfeeYd58+bxz3/+E4CLLrqIiy++GIABAwbE/efSmtpdgGXKyMhg2rRp7LXXXpSWlvL6669bwdPOnTu54oorWLRoEQDV1dWcfvrp1uWZmZlcdtllaJrGc889R0lJCTt37mT69OmsXLmSxMTENvu+hBAdT3AGC9ROwowkCbBE+zVo0CB69erFY489xqpVqygtLQ3JSq1fv56ysjLS09NDbpeamsonn3wSUvF58MEHrduedtppVkP6hAkT6Nu3b0jJD+C1116zPr/ooosYMWIEAFdeeSUffvghAK+++iq33norBx54IKtXr7auP2DAACZOnBiPH0Gba3cBVvfu3Xnssce47LLLSE5Otr5+6623MnbsWHbv3g3A4sWLKS8vJy0tjddee43169db13399dc57rjjAJg8eTInnHACoNKTr732GpdcckkrfkdCiI7OX6dcUu3xk5HkbKPViGZxJqusUXvhTG76OjF49NFHuemmmxq9TklJSb0Aa8KECfXaaTZt2mR9fvDBB1ufd+vWjVGjRvHzzz+HXH/dunXW5//85z+t7FSwtWvXNv1NdHDt7i3YEUccwfXXXx8SXAFkZ2czadIk6++6ruPxeACYN2+e9fX09HSmTZtm/X3atGmkpaVZf587d25LLV0I0UnVzWBJH1YHpmmqJNdePlqg/wqwSnoAf/7zn/nyyy9ZvHhxyK7CQCBQ73Y9e/Zs9H61OK3X5/Phdrvjcl/tVbsLsBqi63pIxDt06FB69OgBqBkapsGDB4f8AthsNgYPHmz9feXKlQ0+htvtpqysLORDCCHqlwhlJ6Fo3/Ly8gDo0aMHDzzwAEcccQT77bef9fWGhAughg4dan2+dOlS6/Pi4uKwmSizJAjw0ksvoet6vY/Kykpr96PNVhuKhAv6OqoOE2Ddfffd/PrrryF/NxUWFlqf10131v3anj17GnyM++67j4yMDOujf//+zV22EKITCNTNYMksLNHODRw4EFCvj/fffz8fffQRp59+OkVFRVHf1ymnnGIFXv/73//4xz/+wYcffsiMGTPq9V8BnHPOOdbnN954I4888ghffPEF77zzDg888ABHHnkk11xzjXWd4J2In3zyCV988QXffPMNpaWlUa+1PWn3AVYgEOCmm24KmYdxxx13hPwDBqu7tbShr4Uza9YsSktLrY/c3NyY1iyE6Fzq9mDJcTmivbv88sutz2fN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\n"
},
"metadata": {}
}
],
"source": [
"x_data = pd.date_range('2009-01-01', periods=len(forecasts_all_array[:,0]), freq='D')\n",
"plt.plot(x_data,forecasts_all_array[:,0],label='LSTM')\n",
"plt.plot(x_data,target_all_array[:,0],label='Target')\n",
"plt.xticks(rotation=45)\n",
"plt.xlabel('Time')\n",
"plt.ylabel('Q (mm/day)')\n",
"plt.title('LSTM forecast (h=1)')\n",
"plt.legend()"
]
},
{
"cell_type": "code",
"source": [
"#Plot for the second forecast step\n",
"#Your code below"
],
"metadata": {
"id": "975d3M7tEQYo"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "markdown",
"source": [
"Question:\n",
"Is our comparison between different forecast steps fair?"
],
"metadata": {
"id": "Ake9RsNdDLmJ"
}
},
{
"cell_type": "code",
"source": [
"target_all_array[:,0]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "v8a3NyKVDQgJ",
"outputId": "9d2e5bb6-fb08-4948-ca9f-1edd4c3bfd58"
},
"execution_count": 36,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array([ 3.85, 2.86, 2.47, 2.17, 2.02, 1.91, 1.75, 1.65, 1.57,\n",
" 1.49, 1.44, 1.39, 1.37, 1.35, 1.31, 1.27, 1.24, 1.22,\n",
" 1.31, 1.38, 1.34, 1.26, 1.19, 1.14, 1.1 , 1.07, 1.05,\n",
" 1.04, 1.05, 1.05, 1.03, 1.02, 1. , 1. , 0.96, 0.94,\n",
" 0.92, 0.9 , 0.97, 1.06, 1.01, 0.95, 1.22, 2.1 , 2.09,\n",
" 1.86, 1.61, 1.39, 1.27, 1.24, 1.29, 1.24, 1.22, 1.24,\n",
" 1.34, 1.28, 1.24, 1.2 , 2.76, 4.54, 4.2 , 3.43, 2.87,\n",
" 2.39, 2.16, 2.26, 2.64, 3.27, 2.97, 2.7 , 3.49, 3.16,\n",
" 2.74, 2.42, 2.22, 2.09, 2.04, 2.39, 2.82, 2.63, 2.41,\n",
" 2.21, 2.03, 1.87, 1.98, 2.26, 2.77, 3.71, 8.28, 10.12,\n",
" 9.66, 8.12, 8.58, 19.57, 19.69, 16.11, 18.36, 19.03, 14.7 ,\n",
" 10.53, 7.83, 6.2 , 5.16, 4.45, 3.89, 3.48, 3.15, 2.87,\n",
" 2.64, 2.42, 3.15, 11.66, 13.78, 11.03, 7.79, 5.58, 4.25,\n",
" 3.51, 2.98, 2.56, 2.48, 2.6 , 2.44, 2.21, 2.01, 2.23,\n",
" 2.48, 3.09, 3.15, 3.13, 2.71, 2.36, 2.05, 1.81, 1.75,\n",
" 1.64, 2.23, 2.91, 2.45, 2.05, 1.74, 1.49, 1.29, 1.17,\n",
" 1.12, 1. , 0.94, 1.14, 1.21, 1.8 , 2.39, 2.26, 1.93,\n",
" 1.6 , 1.34, 1.14, 1.01, 0.91, 0.82, 0.73, 0.69, 0.71,\n",
" 2.47, 5.04, 3.8 , 2.93, 2.26, 1.76, 1.4 , 1.22, 8.16,\n",
" 12.78, 10.32, 8.08, 6.33, 4.95, 3.88, 3.08, 2.61, 2.75])"
]
},
"metadata": {},
"execution_count": 36
}
]
},
{
"cell_type": "code",
"source": [
"target_all_array[:,1]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "Kb_-omRIDTQY",
"outputId": "2af6bf78-e965-4333-c401-8d3c82649db6"
},
"execution_count": 37,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array([ 2.86, 2.47, 2.17, 2.02, 1.91, 1.75, 1.65, 1.57, 1.49,\n",
" 1.44, 1.39, 1.37, 1.35, 1.31, 1.27, 1.24, 1.22, 1.31,\n",
" 1.38, 1.34, 1.26, 1.19, 1.14, 1.1 , 1.07, 1.05, 1.04,\n",
" 1.05, 1.05, 1.03, 1.02, 1. , 1. , 0.96, 0.94, 0.92,\n",
" 0.9 , 0.97, 1.06, 1.01, 0.95, 1.22, 2.1 , 2.09, 1.86,\n",
" 1.61, 1.39, 1.27, 1.24, 1.29, 1.24, 1.22, 1.24, 1.34,\n",
" 1.28, 1.24, 1.2 , 2.76, 4.54, 4.2 , 3.43, 2.87, 2.39,\n",
" 2.16, 2.26, 2.64, 3.27, 2.97, 2.7 , 3.49, 3.16, 2.74,\n",
" 2.42, 2.22, 2.09, 2.04, 2.39, 2.82, 2.63, 2.41, 2.21,\n",
" 2.03, 1.87, 1.98, 2.26, 2.77, 3.71, 8.28, 10.12, 9.66,\n",
" 8.12, 8.58, 19.57, 19.69, 16.11, 18.36, 19.03, 14.7 , 10.53,\n",
" 7.83, 6.2 , 5.16, 4.45, 3.89, 3.48, 3.15, 2.87, 2.64,\n",
" 2.42, 3.15, 11.66, 13.78, 11.03, 7.79, 5.58, 4.25, 3.51,\n",
" 2.98, 2.56, 2.48, 2.6 , 2.44, 2.21, 2.01, 2.23, 2.48,\n",
" 3.09, 3.15, 3.13, 2.71, 2.36, 2.05, 1.81, 1.75, 1.64,\n",
" 2.23, 2.91, 2.45, 2.05, 1.74, 1.49, 1.29, 1.17, 1.12,\n",
" 1. , 0.94, 1.14, 1.21, 1.8 , 2.39, 2.26, 1.93, 1.6 ,\n",
" 1.34, 1.14, 1.01, 0.91, 0.82, 0.73, 0.69, 0.71, 2.47,\n",
" 5.04, 3.8 , 2.93, 2.26, 1.76, 1.4 , 1.22, 8.16, 12.78,\n",
" 10.32, 8.08, 6.33, 4.95, 3.88, 3.08, 2.61, 2.75, 2.98])"
]
},
"metadata": {},
"execution_count": 37
}
]
},
{
"cell_type": "code",
"source": [
"target_all_array[:,2]"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "h_caAI_wDZ36",
"outputId": "78ce7499-2685-49f9-8274-3dcec15d7f54"
},
"execution_count": 38,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array([ 2.47, 2.17, 2.02, 1.91, 1.75, 1.65, 1.57, 1.49, 1.44,\n",
" 1.39, 1.37, 1.35, 1.31, 1.27, 1.24, 1.22, 1.31, 1.38,\n",
" 1.34, 1.26, 1.19, 1.14, 1.1 , 1.07, 1.05, 1.04, 1.05,\n",
" 1.05, 1.03, 1.02, 1. , 1. , 0.96, 0.94, 0.92, 0.9 ,\n",
" 0.97, 1.06, 1.01, 0.95, 1.22, 2.1 , 2.09, 1.86, 1.61,\n",
" 1.39, 1.27, 1.24, 1.29, 1.24, 1.22, 1.24, 1.34, 1.28,\n",
" 1.24, 1.2 , 2.76, 4.54, 4.2 , 3.43, 2.87, 2.39, 2.16,\n",
" 2.26, 2.64, 3.27, 2.97, 2.7 , 3.49, 3.16, 2.74, 2.42,\n",
" 2.22, 2.09, 2.04, 2.39, 2.82, 2.63, 2.41, 2.21, 2.03,\n",
" 1.87, 1.98, 2.26, 2.77, 3.71, 8.28, 10.12, 9.66, 8.12,\n",
" 8.58, 19.57, 19.69, 16.11, 18.36, 19.03, 14.7 , 10.53, 7.83,\n",
" 6.2 , 5.16, 4.45, 3.89, 3.48, 3.15, 2.87, 2.64, 2.42,\n",
" 3.15, 11.66, 13.78, 11.03, 7.79, 5.58, 4.25, 3.51, 2.98,\n",
" 2.56, 2.48, 2.6 , 2.44, 2.21, 2.01, 2.23, 2.48, 3.09,\n",
" 3.15, 3.13, 2.71, 2.36, 2.05, 1.81, 1.75, 1.64, 2.23,\n",
" 2.91, 2.45, 2.05, 1.74, 1.49, 1.29, 1.17, 1.12, 1. ,\n",
" 0.94, 1.14, 1.21, 1.8 , 2.39, 2.26, 1.93, 1.6 , 1.34,\n",
" 1.14, 1.01, 0.91, 0.82, 0.73, 0.69, 0.71, 2.47, 5.04,\n",
" 3.8 , 2.93, 2.26, 1.76, 1.4 , 1.22, 8.16, 12.78, 10.32,\n",
" 8.08, 6.33, 4.95, 3.88, 3.08, 2.61, 2.75, 2.98, 2.74])"
]
},
"metadata": {},
"execution_count": 38
}
]
},
{
"cell_type": "markdown",
"source": [
"We should not assume that \"default\" hyperparamters will work well for our specific case (why?). In the next section, we will provide details on how we can carry out the selection of hyperparameters efficiently"
],
"metadata": {
"id": "n6V9GVOxDViR"
}
},
{
"cell_type": "markdown",
"source": [
"###Saving and loading your model\n",
"\n",
"\n",
"\n"
],
"metadata": {
"id": "QLiNODK1G4qc"
}
},
{
"cell_type": "markdown",
"source": [
"You can save your model using the save method"
],
"metadata": {
"id": "6Ge5bR4KHEDl"
}
},
{
"cell_type": "code",
"source": [
"nf.save(path='./checkpoints/test_run/',\n",
" model_index=None, #for multiple models\n",
" overwrite=True, #overwrite existing model\n",
" save_dataset=False #save dataset\n",
" )"
],
"metadata": {
"id": "EDdaft-4HRCl"
},
"execution_count": 39,
"outputs": []
},
{
"cell_type": "markdown",
"source": [
"We can load the model using the load method"
],
"metadata": {
"id": "WmAofvW8Hi7c"
}
},
{
"cell_type": "code",
"source": [
"nf2 = NeuralForecast.load(path='./checkpoints/test_run/')\n",
"ii=0\n",
"Y_hat_df = nf2.predict(df_total.iloc[id_test-15+ii:id_test+ii],futr_df=future_met)\n",
"Y_hat_df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 418,
"referenced_widgets": [
"b2800cc613554c7da43ba897df63c3b8",
"6cebb9e9f3194a449f7caaf5a79462c7",
"74678edbf6e7494b9525e6f4813d58a5",
"3b84f0becc22426da78c79ee0c0d97ea",
"0c77495411b54416b2860b3a3abb1741",
"f5c7421d8f7246c89619463e850e373f",
"80951e5117d14674a6eb02378478dd3c",
"e9698715f958492aba97bd25018a9ad4",
"9093d39cbcaa43eeb8d27ad3ada2f39c",
"4336ccac9a9f4e658e14bea7d2b50a74",
"0c94c069c91a412eb8acf7591f4bdf01"
]
},
"id": "NBfc195PHmUM",
"outputId": "4ed181d8-8bec-4174-9c09-7e494f7a6dba"
},
"execution_count": 40,
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/common/_base_model.py:444: FutureWarning: You are using `torch.load` with `weights_only=False` (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pickle data which will execute arbitrary code during unpickling (See https://github.com/pytorch/pytorch/blob/main/SECURITY.md#untrusted-models for more details). In a future release, the default value for `weights_only` will be flipped to `True`. This limits the functions that could be executed during unpickling. Arbitrary objects will no longer be allowed to be loaded via this mode unless they are explicitly allowlisted by the user via `torch.serialization.add_safe_globals`. We recommend you start setting `weights_only=True` for any use case where you don't have full control of the loaded file. Please open an issue on GitHub for any issues related to this experimental feature.\n",
" content = torch.load(f, **kwargs)\n",
"INFO:lightning_fabric.utilities.seed:Seed set to 1\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b2800cc613554c7da43ba897df63c3b8"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" ds LSTM\n",
"unique_id \n",
"1.0 2009-01-01 5.103837\n",
"1.0 2009-01-02 4.669140\n",
"1.0 2009-01-03 4.323388"
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" ds | \n",
" LSTM | \n",
"
\n",
" \n",
" unique_id | \n",
" | \n",
" | \n",
"
\n",
" \n",
" \n",
" \n",
" 1.0 | \n",
" 2009-01-01 | \n",
" 5.103837 | \n",
"
\n",
" \n",
" 1.0 | \n",
" 2009-01-02 | \n",
" 4.669140 | \n",
"
\n",
" \n",
" 1.0 | \n",
" 2009-01-03 | \n",
" 4.323388 | \n",
"
\n",
" \n",
"
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "Y_hat_df",
"summary": "{\n \"name\": \"Y_hat_df\",\n \"rows\": 3,\n \"fields\": [\n {\n \"column\": \"unique_id\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.0,\n \"min\": 1.0,\n \"max\": 1.0,\n \"num_unique_values\": 1,\n \"samples\": [\n 1.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ds\",\n \"properties\": {\n \"dtype\": \"date\",\n \"min\": \"2009-01-01 00:00:00\",\n \"max\": \"2009-01-03 00:00:00\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"2009-01-01 00:00:00\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"LSTM\",\n \"properties\": {\n \"dtype\": \"float32\",\n \"num_unique_values\": 3,\n \"samples\": [\n 5.103837013244629\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 40
}
]
},
{
"cell_type": "markdown",
"source": [
"##Hyperparamter tuning"
],
"metadata": {
"id": "KaXR2o1-_VHH"
}
},
{
"cell_type": "code",
"source": [
"#This library is used for hyperparamter tuning\n",
"#neuralforecast also supports optuna as an alternative\n",
"from ray import tune"
],
"metadata": {
"id": "8sE9fFYB_X8n"
},
"execution_count": 41,
"outputs": []
},
{
"cell_type": "code",
"source": [
"#We need another (type) model\n",
"#the family of \"Auto\" enables automatic hyperpramter selection\n",
"from neuralforecast.auto import AutoLSTM"
],
"metadata": {
"id": "eaFPOiecA8VU"
},
"execution_count": 42,
"outputs": []
},
{
"cell_type": "code",
"source": [
"config_lstm = {\n",
" \"encoder_hidden_size\": tune.choice([64, 128,256]), # Hidden size of LSTM cells\n",
" \"decoder_hidden_size\": tune.choice([64, 128,256]), # Hidden size of MLP\n",
" \"encoder_n_layers\": tune.choice([1,2,3]), # LSTM layers\n",
" \"decoder_layers\": tune.choice([1,2,3]), # MLP layers\n",
" \"context_size\": tune.choice([10,20,30]), # Context size\n",
" \"learning_rate\": tune.loguniform(1e-3, 1e-2), # Learning rate\n",
" \"scaler_type\":'standard', # Normalization method\n",
" \"max_steps\":5000, # Maximum number of steps\n",
" \"futr_exog_list\":['ERA5_pr'], # Future exogenous variables\n",
" \"hist_exog_list\":['pr','tmax','tmin'], # Historical exogenous variables\n",
" \"val_check_steps\":50, # Validation check steps\n",
" \"early_stop_patience_steps\": 2 # Early stopping patience steps\n",
"}\n"
],
"metadata": {
"id": "mKxC6aVcBsww"
},
"execution_count": 44,
"outputs": []
},
{
"cell_type": "code",
"source": [
"#Defining the model\n",
"#backend='ray' as we use this optimizer\n",
"#refit_with_val=True for early stopping\n",
"#let's set number of samples to lower than 5 for efficiency\n",
"model_hp = AutoLSTM(h=3, loss=MSE(),valid_loss=MSE(),config=config_lstm,num_samples=5,backend='ray',refit_with_val=True)"
],
"metadata": {
"id": "HS7h9ab8HCGs"
},
"execution_count": 45,
"outputs": []
},
{
"cell_type": "code",
"source": [
"nf_hp = NeuralForecast(models=[model_hp], freq='D')"
],
"metadata": {
"id": "R2o7So5bKSI8"
},
"execution_count": 46,
"outputs": []
},
{
"cell_type": "code",
"source": [
"#remember, neuralforecast uses val_size to specify the validation set\n",
"nf_hp.fit(df=Y_train_df,val_size=1500)"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000,
"referenced_widgets": [
"ebc5a5f3252e412aa219eb6719c95d4d",
"d602ecffbdb745fca71c916e8e802d81",
"4dcaf611f502487ebfd5309d0aebfe37",
"f4151cb6a13e4d3e9b4731e87d3e11e4",
"2aa0c1ff5b5a40e2a20b982558a770ed",
"a1c922b55edd4dbab520b317c04a5223",
"5c9d5a7c59a2410caa8b1dbfc7437d25",
"3d6b998dfb35431591f98eeca53c269e",
"f7ef40d3b1144d7690d475a83e7e5bd3",
"e04b1e56b3f149f383a749e8b9686f29",
"92e8ad6a65d24a26b42dae4f4e5bcbe4",
"0fd7bb522d4041a9adb22d2767bb3b62",
"6a3d192f639246a5ac8cf79db2bf9fee",
"21ff1c2d9c7b420ca196cdbda1384cc4",
"6320641909eb45f6b161bc267cb3e752",
"80c9285436bb46c9b06f8c0399278499",
"b3ab896c213a4efe8d1b0901ed93fe58",
"f1813594e74541a9841a3935826104e2",
"484c3aa94e0441b38f1027e418e1db09",
"1e5ca8d81b2848809c5c377c932c98d1",
"3c9ce75b6adb4f70830c8cc8c1c81bb0",
"cd6b271a11724dfc92a888a5f844a8b0",
"0216c3666df54c998f754fc130fd4804",
"9c6732347b38487f8d780081c7a1bb1a",
"12bea0409c6f4e7c881a5fdcefce3746",
"6903c6ff6f0c4634ae474d5d119d76c2",
"b5fa21e925c248e6a351b4f3dfbec745",
"e8ecc4ae9b484598a204afcfada18d4e",
"b99d44a6e510455ba4661081fda30f7c",
"5673965bc44d4872bc397496a6792f42",
"4c127a496292494a9a2159602d062d77",
"965d785c05e84d25a9356f00ced9bdce",
"7969638825e8428893681410cfe12e4b",
"cfe84ba304514fbb88e078c847f576ee",
"492ade6d5b7e4cf186bef2d8439aa81a",
"d493ccee6b2d487cb2ecf012ad8f497f",
"728ed8142bb2466c92a5e5d6d3c8507d",
"7f811e9234ca406889646ae6566eb101",
"e63b24634b43484193549a438d55ab25",
"f277d26ae8b0407e9708f807a7d04f91",
"512f8c49d7dc4448a443d0d856c9ec40",
"38bd93a3d5da4ecfa31001f66c1115b8",
"a244ab1c2af2458f982d90aa757329e1",
"79428ce45dc949e8b6a98eb94687bff8",
"43aa99d2c99c48ff9e2ed34ad388f9bd",
"25e6ed54857b450aa68762bfca78eaac",
"d0c8bdadc9d9465196e3a599de9dc584",
"9b3377c85ea5421b848f2f4905d25fcc",
"d5168cb40b254db89cd40576bb9a1a4b",
"267acf82e90d44458750e66812699ac4",
"19b3295a36f248f786eec73c2ae299ed",
"4dc81eaa57384ee485a84a9cffb5aa19",
"741ae385e1c047769be7a259420db706",
"262bc6fed5c642e8bbbee09a700c52d1",
"52028fbe85fb4b55807273a42ff46225",
"95f3dff3257845b1a51d854bb09cd233",
"d8885c9e58f14326876b46cf4c5d22b4",
"07596f1fae6c42e2ac9f9d0c1e34ac70",
"7fe69799540343d29f701b7799b41c3c",
"2e2aaa6ab10348da8f2b979dcea6a027",
"41f8542323a64a6882182cf5038e4ef1",
"37744e4e8894467284339c34fe70cc54",
"2f58241363004d0ebfbfffbce41e21f0",
"8ff41c5311df44579e7033615aa7f194",
"8192ca280b724073b1143115f63f1fbd",
"25655406b82c4231a3effe158d6e9197",
"f804feea69bd40f9b65b08642ad46400",
"4d93a7fd57f14cab816055f258547507",
"562af95ec0e94c59a1e3e9ac49e9c664",
"b4b7ddb363004067adba48a2e2cfa1ec",
"2d8b4262a29c41a69ef196053de28936",
"1fd54559892a483299929169009caa82",
"7014ece540e34480b76d01f0cef0db0a",
"11c6adb26f2c4c538a8d0c564f4a9c11",
"33996dae525c490295fdc960a0cf307e",
"9526f8afee584d2b893a8c2ac025c3f3",
"f5b8a86cb6c64214ba9161b82a672178"
]
},
"collapsed": true,
"id": "INcDOPI5K1Lu",
"outputId": "0d09a81e-ea34-45dc-f387-e0ff1336edbe"
},
"execution_count": 47,
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"2024-11-14 06:30:42,274\tINFO worker.py:1819 -- Started a local Ray instance.\n",
"2024-11-14 06:30:44,615\tINFO tune.py:253 -- Initializing Ray automatically. For cluster usage or custom Ray initialization, call `ray.init(...)` before `Tuner(...)`.\n"
]
},
{
"output_type": "stream",
"name": "stdout",
"text": [
"+--------------------------------------------------------------------+\n",
"| Configuration for experiment _train_tune_2024-11-14_06-30-38 |\n",
"+--------------------------------------------------------------------+\n",
"| Search algorithm BasicVariantGenerator |\n",
"| Scheduler FIFOScheduler |\n",
"| Number of trials 5 |\n",
"+--------------------------------------------------------------------+\n",
"\n",
"View detailed results here: /root/ray_results/_train_tune_2024-11-14_06-30-38\n",
"To visualize your results with TensorBoard, run: `tensorboard --logdir /tmp/ray/session_2024-11-14_06-30-38_672003_1890/artifacts/2024-11-14_06-30-44/_train_tune_2024-11-14_06-30-38/driver_artifacts`\n"
]
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"\u001b[36m(pid=15788)\u001b[0m /usr/local/lib/python3.10/dist-packages/dask/dataframe/__init__.py:42: FutureWarning: \n",
"\u001b[36m(pid=15788)\u001b[0m Dask dataframe query planning is disabled because dask-expr is not installed.\n",
"\u001b[36m(pid=15788)\u001b[0m \n",
"\u001b[36m(pid=15788)\u001b[0m You can install it with `pip install dask[dataframe]` or `conda install dask`.\n",
"\u001b[36m(pid=15788)\u001b[0m This will raise in a future version.\n",
"\u001b[36m(pid=15788)\u001b[0m \n",
"\u001b[36m(pid=15788)\u001b[0m warnings.warn(msg, FutureWarning)\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m /usr/local/lib/python3.10/dist-packages/ray/tune/integration/pytorch_lightning.py:198: `ray.tune.integration.pytorch_lightning.TuneReportCallback` is deprecated. Use `ray.tune.integration.pytorch_lightning.TuneReportCheckpointCallback` instead.\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m Seed set to 1\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m GPU available: True (cuda), used: True\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m TPU available: False, using: 0 TPU cores\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m HPU available: False, using: 0 HPUs\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 2024-11-14 06:30:52.814175: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:485] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 2024-11-14 06:30:52.840696: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:8454] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 2024-11-14 06:30:52.848874: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1452] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 2024-11-14 06:30:53.995578: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m \n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m | Name | Type | Params | Mode \n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 0 | loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 1 | valid_loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 2 | padder | ConstantPad1d | 0 | train\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 3 | scaler | TemporalNorm | 0 | train\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 4 | hist_encoder | LSTM | 68.6 K | train\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 5 | context_adapter | Linear | 7.9 K | train\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 6 | mlp_decoder | MLP | 1.5 K | train\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 78.0 K Trainable params\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 0 Non-trainable params\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 78.0 K Total params\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 0.312 Total estimated model params size (MB)\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 12 Modules in train mode\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m 0 Modules in eval mode\n"
]
},
{
"output_type": "stream",
"name": "stdout",
"text": [
"Sanity Checking DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\n",
"Epoch 0: 0%| | 0/1 [00:00, ?it/s] \n",
"Epoch 1: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=1.020, train_loss_epoch=1.020]\n",
"Epoch 2: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=1.000, train_loss_epoch=1.000]\n",
"Epoch 3: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.991, train_loss_epoch=0.991]\n",
"Epoch 4: 100%|██████████| 1/1 [00:00<00:00, 22.75it/s, v_num=0, train_loss_step=0.977, train_loss_epoch=0.977]\n",
"Epoch 6: 100%|██████████| 1/1 [00:00<00:00, 29.21it/s, v_num=0, train_loss_step=0.944, train_loss_epoch=0.944]\n",
"Epoch 8: 100%|██████████| 1/1 [00:00<00:00, 30.33it/s, v_num=0, train_loss_step=0.897, train_loss_epoch=0.897]\n",
"Epoch 10: 100%|██████████| 1/1 [00:00<00:00, 30.20it/s, v_num=0, train_loss_step=0.828, train_loss_epoch=0.828]\n",
"Epoch 12: 100%|██████████| 1/1 [00:00<00:00, 29.45it/s, v_num=0, train_loss_step=0.736, train_loss_epoch=0.736]\n",
"Epoch 14: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.700, train_loss_epoch=0.700]\n",
"Epoch 16: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.662, train_loss_epoch=0.662]\n",
"Epoch 18: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.586, train_loss_epoch=0.586]\n",
"Epoch 20: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.551, train_loss_epoch=0.551]\n",
"Epoch 22: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.514, train_loss_epoch=0.514]\n",
"Epoch 24: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.473, train_loss_epoch=0.473]\n",
"Epoch 25: 100%|██████████| 1/1 [00:00<00:00, 27.49it/s, v_num=0, train_loss_step=0.457, train_loss_epoch=0.457]\n",
"Epoch 27: 100%|██████████| 1/1 [00:00<00:00, 28.99it/s, v_num=0, train_loss_step=0.434, train_loss_epoch=0.434]\n",
"Epoch 29: 100%|██████████| 1/1 [00:00<00:00, 30.04it/s, v_num=0, train_loss_step=0.409, train_loss_epoch=0.409]\n",
"Epoch 31: 100%|██████████| 1/1 [00:00<00:00, 29.89it/s, v_num=0, train_loss_step=0.384, train_loss_epoch=0.384]\n",
"Epoch 33: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.363, train_loss_epoch=0.363]\n",
"Epoch 35: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.348, train_loss_epoch=0.348]\n",
"Epoch 37: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.332, train_loss_epoch=0.332]\n",
"Epoch 39: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.316, train_loss_epoch=0.316]\n",
"Epoch 41: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.302, train_loss_epoch=0.302]\n",
"Epoch 41: 100%|██████████| 1/1 [00:00<00:00, 33.77it/s, v_num=0, train_loss_step=0.302, train_loss_epoch=0.302]\n",
"Epoch 43: 100%|██████████| 1/1 [00:00<00:00, 32.62it/s, v_num=0, train_loss_step=0.287, train_loss_epoch=0.287]\n",
"Epoch 45: 100%|██████████| 1/1 [00:00<00:00, 34.38it/s, v_num=0, train_loss_step=0.274, train_loss_epoch=0.274]\n",
"Epoch 47: 100%|██████████| 1/1 [00:00<00:00, 33.61it/s, v_num=0, train_loss_step=0.264, train_loss_epoch=0.264]\n",
"Epoch 47: 100%|██████████| 1/1 [00:00<00:00, 21.02it/s, v_num=0, train_loss_step=0.259, train_loss_epoch=0.264]\n",
"Epoch 48: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.259, train_loss_epoch=0.259]\n",
"Epoch 49: 100%|██████████| 1/1 [00:00<00:00, 21.29it/s, v_num=0, train_loss_step=0.250, train_loss_epoch=0.254]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m \n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 34.85it/s]\u001b[A\n",
"Epoch 51: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.247, train_loss_epoch=0.247, valid_loss=2.560]\n",
"Epoch 53: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.243, train_loss_epoch=0.243, valid_loss=2.560]\n",
"Epoch 55: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.240, train_loss_epoch=0.240, valid_loss=2.560]\n",
"Epoch 57: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.238, train_loss_epoch=0.238, valid_loss=2.560]\n",
"Epoch 59: 100%|██████████| 1/1 [00:00<00:00, 34.26it/s, v_num=0, train_loss_step=0.235, train_loss_epoch=0.235, valid_loss=2.560]\n",
"Epoch 61: 100%|██████████| 1/1 [00:00<00:00, 33.83it/s, v_num=0, train_loss_step=0.233, train_loss_epoch=0.233, valid_loss=2.560]\n",
"Epoch 63: 100%|██████████| 1/1 [00:00<00:00, 31.36it/s, v_num=0, train_loss_step=0.230, train_loss_epoch=0.230, valid_loss=2.560]\n",
"Epoch 65: 100%|██████████| 1/1 [00:00<00:00, 20.79it/s, v_num=0, train_loss_step=0.226, train_loss_epoch=0.226, valid_loss=2.560]\n",
"Epoch 66: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.226, train_loss_epoch=0.226, valid_loss=2.560]\n",
"Epoch 68: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.223, train_loss_epoch=0.223, valid_loss=2.560]\n",
"Epoch 70: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.221, train_loss_epoch=0.221, valid_loss=2.560]\n",
"Epoch 72: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.219, train_loss_epoch=0.219, valid_loss=2.560]\n",
"Epoch 74: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.218, train_loss_epoch=0.218, valid_loss=2.560]\n",
"Epoch 76: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.216, train_loss_epoch=0.216, valid_loss=2.560]\n",
"Epoch 78: 100%|██████████| 1/1 [00:00<00:00, 34.03it/s, v_num=0, train_loss_step=0.214, train_loss_epoch=0.214, valid_loss=2.560]\n",
"Epoch 80: 100%|██████████| 1/1 [00:00<00:00, 33.61it/s, v_num=0, train_loss_step=0.213, train_loss_epoch=0.213, valid_loss=2.560]\n",
"Epoch 82: 100%|██████████| 1/1 [00:00<00:00, 33.68it/s, v_num=0, train_loss_step=0.211, train_loss_epoch=0.211, valid_loss=2.560]\n",
"Epoch 82: 100%|██████████| 1/1 [00:00<00:00, 20.79it/s, v_num=0, train_loss_step=0.211, train_loss_epoch=0.211, valid_loss=2.560]\n",
"Epoch 82: 100%|██████████| 1/1 [00:00<00:00, 20.47it/s, v_num=0, train_loss_step=0.211, train_loss_epoch=0.211, valid_loss=2.560]\n",
"Epoch 84: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.209, train_loss_epoch=0.209, valid_loss=2.560] \n",
"Epoch 87: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.208, train_loss_epoch=0.208, valid_loss=2.560]\n",
"Epoch 89: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.207, train_loss_epoch=0.207, valid_loss=2.560]\n",
"Epoch 91: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.205, train_loss_epoch=0.205, valid_loss=2.560]\n",
"Epoch 93: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.204, train_loss_epoch=0.204, valid_loss=2.560]\n",
"Epoch 95: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.203, train_loss_epoch=0.203, valid_loss=2.560]\n",
"Epoch 97: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.202, train_loss_epoch=0.202, valid_loss=2.560]\n",
"Epoch 99: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.201, train_loss_epoch=0.201, valid_loss=2.560]\n",
"Epoch 99: 100%|██████████| 1/1 [00:00<00:00, 20.60it/s, v_num=0, train_loss_step=0.200, train_loss_epoch=0.201, valid_loss=2.560]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 34.79it/s]\u001b[A\n",
"Epoch 100: 100%|██████████| 1/1 [00:00<00:00, 32.89it/s, v_num=0, train_loss_step=0.200, train_loss_epoch=0.200, valid_loss=2.120]\n",
"Epoch 102: 100%|██████████| 1/1 [00:00<00:00, 21.02it/s, v_num=0, train_loss_step=0.198, train_loss_epoch=0.199, valid_loss=2.120]\n",
"Epoch 102: 100%|██████████| 1/1 [00:00<00:00, 20.74it/s, v_num=0, train_loss_step=0.198, train_loss_epoch=0.198, valid_loss=2.120]\n",
"Epoch 102: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.198, train_loss_epoch=0.198, valid_loss=2.120] \n",
"Epoch 103: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.198, train_loss_epoch=0.198, valid_loss=2.120]\n",
"Epoch 105: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.197, train_loss_epoch=0.197, valid_loss=2.120]\n",
"Epoch 107: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.197, train_loss_epoch=0.197, valid_loss=2.120]\n",
"Epoch 109: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.195, train_loss_epoch=0.195, valid_loss=2.120]\n",
"Epoch 111: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.196, train_loss_epoch=0.196, valid_loss=2.120]\n",
"Epoch 113: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.196, train_loss_epoch=0.196, valid_loss=2.120]\n",
"Epoch 115: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.194, train_loss_epoch=0.194, valid_loss=2.120]\n",
"Epoch 117: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.193, train_loss_epoch=0.193, valid_loss=2.120]\n",
"Epoch 119: 100%|██████████| 1/1 [00:00<00:00, 32.95it/s, v_num=0, train_loss_step=0.192, train_loss_epoch=0.192, valid_loss=2.120]\n",
"Epoch 121: 100%|██████████| 1/1 [00:00<00:00, 33.50it/s, v_num=0, train_loss_step=0.190, train_loss_epoch=0.190, valid_loss=2.120]\n",
"Epoch 123: 100%|██████████| 1/1 [00:00<00:00, 34.11it/s, v_num=0, train_loss_step=0.189, train_loss_epoch=0.189, valid_loss=2.120]\n",
"Epoch 125: 100%|██████████| 1/1 [00:00<00:00, 33.66it/s, v_num=0, train_loss_step=0.189, train_loss_epoch=0.189, valid_loss=2.120]\n",
"Epoch 127: 100%|██████████| 1/1 [00:00<00:00, 20.66it/s, v_num=0, train_loss_step=0.187, train_loss_epoch=0.188, valid_loss=2.120]\n",
"Epoch 127: 100%|██████████| 1/1 [00:00<00:00, 20.32it/s, v_num=0, train_loss_step=0.187, train_loss_epoch=0.187, valid_loss=2.120]\n",
"Epoch 128: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.187, train_loss_epoch=0.187, valid_loss=2.120]\n",
"Epoch 130: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.187, train_loss_epoch=0.187, valid_loss=2.120]\n",
"Epoch 132: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.186, train_loss_epoch=0.186, valid_loss=2.120]\n",
"Epoch 134: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.185, train_loss_epoch=0.185, valid_loss=2.120]\n",
"Epoch 136: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.184, train_loss_epoch=0.184, valid_loss=2.120]\n",
"Epoch 138: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.183, train_loss_epoch=0.183, valid_loss=2.120]\n",
"Epoch 140: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.183, train_loss_epoch=0.183, valid_loss=2.120]\n",
"Epoch 142: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.182, train_loss_epoch=0.182, valid_loss=2.120]\n",
"Epoch 144: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.181, train_loss_epoch=0.181, valid_loss=2.120]\n",
"Epoch 144: 100%|██████████| 1/1 [00:00<00:00, 30.34it/s, v_num=0, train_loss_step=0.181, train_loss_epoch=0.181, valid_loss=2.120]\n",
"Epoch 146: 100%|██████████| 1/1 [00:00<00:00, 33.67it/s, v_num=0, train_loss_step=0.181, train_loss_epoch=0.181, valid_loss=2.120]\n",
"Epoch 148: 100%|██████████| 1/1 [00:00<00:00, 33.82it/s, v_num=0, train_loss_step=0.181, train_loss_epoch=0.181, valid_loss=2.120]\n",
"Epoch 149: 100%|██████████| 1/1 [00:00<00:00, 20.90it/s, v_num=0, train_loss_step=0.180, train_loss_epoch=0.182, valid_loss=2.120]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 35.02it/s]\u001b[A\n",
"Epoch 150: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.180, train_loss_epoch=0.180, valid_loss=2.100]\n",
"Epoch 152: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.179, train_loss_epoch=0.179, valid_loss=2.100]\n",
"Epoch 154: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.180, train_loss_epoch=0.180, valid_loss=2.100]\n",
"Epoch 156: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.177, train_loss_epoch=0.177, valid_loss=2.100]\n",
"Epoch 158: 100%|██████████| 1/1 [00:00<00:00, 34.00it/s, v_num=0, train_loss_step=0.178, train_loss_epoch=0.178, valid_loss=2.100]\n",
"Epoch 160: 100%|██████████| 1/1 [00:00<00:00, 33.75it/s, v_num=0, train_loss_step=0.176, train_loss_epoch=0.176, valid_loss=2.100]\n",
"Epoch 162: 100%|██████████| 1/1 [00:00<00:00, 33.49it/s, v_num=0, train_loss_step=0.177, train_loss_epoch=0.177, valid_loss=2.100]\n",
"Epoch 162: 100%|██████████| 1/1 [00:00<00:00, 20.97it/s, v_num=0, train_loss_step=0.175, train_loss_epoch=0.177, valid_loss=2.100]\n",
"Epoch 163: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.175, train_loss_epoch=0.175, valid_loss=2.100]\n",
"Epoch 165: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.176, train_loss_epoch=0.176, valid_loss=2.100]\n",
"Epoch 167: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.173, train_loss_epoch=0.173, valid_loss=2.100]\n",
"Epoch 169: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.173, train_loss_epoch=0.173, valid_loss=2.100]\n",
"Epoch 171: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.172, train_loss_epoch=0.172, valid_loss=2.100]\n",
"Epoch 173: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.100]\n",
"Epoch 175: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.174, train_loss_epoch=0.174, valid_loss=2.100]\n",
"Epoch 177: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.169, train_loss_epoch=0.169, valid_loss=2.100]\n",
"Epoch 179: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.170, train_loss_epoch=0.170, valid_loss=2.100]\n",
"Epoch 179: 100%|██████████| 1/1 [00:00<00:00, 29.95it/s, v_num=0, train_loss_step=0.170, train_loss_epoch=0.170, valid_loss=2.100]\n",
"Epoch 181: 100%|██████████| 1/1 [00:00<00:00, 33.57it/s, v_num=0, train_loss_step=0.168, train_loss_epoch=0.168, valid_loss=2.100]\n",
"Epoch 183: 100%|██████████| 1/1 [00:00<00:00, 32.97it/s, v_num=0, train_loss_step=0.175, train_loss_epoch=0.175, valid_loss=2.100]\n",
"Epoch 185: 100%|██████████| 1/1 [00:00<00:00, 30.65it/s, v_num=0, train_loss_step=0.179, train_loss_epoch=0.179, valid_loss=2.100]\n",
"Epoch 187: 100%|██████████| 1/1 [00:00<00:00, 21.04it/s, v_num=0, train_loss_step=0.176, train_loss_epoch=0.182, valid_loss=2.100]\n",
"Epoch 187: 100%|██████████| 1/1 [00:00<00:00, 20.11it/s, v_num=0, train_loss_step=0.176, train_loss_epoch=0.176, valid_loss=2.100]\n",
"Epoch 188: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.176, train_loss_epoch=0.176, valid_loss=2.100]\n",
"Epoch 190: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.178, train_loss_epoch=0.178, valid_loss=2.100]\n",
"Epoch 192: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.173, train_loss_epoch=0.173, valid_loss=2.100]\n",
"Epoch 194: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.169, train_loss_epoch=0.169, valid_loss=2.100]\n",
"Epoch 196: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.168, train_loss_epoch=0.168, valid_loss=2.100]\n",
"Epoch 198: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.100]\n",
"Epoch 199: 100%|██████████| 1/1 [00:00<00:00, 20.22it/s, v_num=0, train_loss_step=0.166, train_loss_epoch=0.164, valid_loss=2.100]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 33.38it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m \n",
"Epoch 201: 100%|██████████| 1/1 [00:00<00:00, 33.86it/s, v_num=0, train_loss_step=0.164, train_loss_epoch=0.164, valid_loss=2.140]\n",
"Epoch 203: 100%|██████████| 1/1 [00:00<00:00, 34.18it/s, v_num=0, train_loss_step=0.163, train_loss_epoch=0.163, valid_loss=2.140]\n",
"Epoch 204: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.161, train_loss_epoch=0.161, valid_loss=2.140]\n",
"Epoch 206: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.159, train_loss_epoch=0.159, valid_loss=2.140]\n",
"Epoch 208: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.158, train_loss_epoch=0.158, valid_loss=2.140]\n",
"Epoch 210: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.156, train_loss_epoch=0.156, valid_loss=2.140]\n",
"Epoch 212: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.155, train_loss_epoch=0.155, valid_loss=2.140]\n",
"Epoch 214: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.153, train_loss_epoch=0.153, valid_loss=2.140]\n",
"Epoch 216: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.151, train_loss_epoch=0.151, valid_loss=2.140]\n",
"Epoch 218: 100%|██████████| 1/1 [00:00<00:00, 34.23it/s, v_num=0, train_loss_step=0.149, train_loss_epoch=0.149, valid_loss=2.140]\n",
"Epoch 220: 100%|██████████| 1/1 [00:00<00:00, 33.71it/s, v_num=0, train_loss_step=0.148, train_loss_epoch=0.148, valid_loss=2.140]\n",
"Epoch 222: 100%|██████████| 1/1 [00:00<00:00, 34.04it/s, v_num=0, train_loss_step=0.148, train_loss_epoch=0.148, valid_loss=2.140]\n",
"Epoch 224: 100%|██████████| 1/1 [00:00<00:00, 33.33it/s, v_num=0, train_loss_step=0.146, train_loss_epoch=0.146, valid_loss=2.140]\n",
"Epoch 226: 100%|██████████| 1/1 [00:00<00:00, 33.35it/s, v_num=0, train_loss_step=0.146, train_loss_epoch=0.146, valid_loss=2.140]\n",
"Epoch 226: 100%|██████████| 1/1 [00:00<00:00, 20.65it/s, v_num=0, train_loss_step=0.144, train_loss_epoch=0.146, valid_loss=2.140]\n",
"Epoch 226: 100%|██████████| 1/1 [00:00<00:00, 20.16it/s, v_num=0, train_loss_step=0.144, train_loss_epoch=0.144, valid_loss=2.140]\n",
"Epoch 227: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.144, train_loss_epoch=0.144, valid_loss=2.140]\n",
"Epoch 229: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.142, train_loss_epoch=0.142, valid_loss=2.140]\n",
"Epoch 231: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.142, train_loss_epoch=0.142, valid_loss=2.140]\n",
"Epoch 233: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.144, train_loss_epoch=0.144, valid_loss=2.140]\n",
"Epoch 235: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.145, train_loss_epoch=0.145, valid_loss=2.140]\n",
"Epoch 237: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.140, train_loss_epoch=0.140, valid_loss=2.140]\n",
"Epoch 239: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.139, train_loss_epoch=0.139, valid_loss=2.140]\n",
"Epoch 241: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.137, train_loss_epoch=0.137, valid_loss=2.140]\n",
"Epoch 242: 100%|██████████| 1/1 [00:00<00:00, 29.76it/s, v_num=0, train_loss_step=0.136, train_loss_epoch=0.136, valid_loss=2.140]\n",
"Epoch 244: 100%|██████████| 1/1 [00:00<00:00, 24.27it/s, v_num=0, train_loss_step=0.137, train_loss_epoch=0.137, valid_loss=2.140]\n",
"Epoch 246: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.134, train_loss_epoch=0.134, valid_loss=2.140]\n",
"Epoch 248: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.131, train_loss_epoch=0.131, valid_loss=2.140]\n",
"Epoch 249: 100%|██████████| 1/1 [00:00<00:00, 19.11it/s, v_num=0, train_loss_step=0.130, train_loss_epoch=0.131, valid_loss=2.140]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=15788)\u001b[0m \n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 23.99it/s]\u001b[A\n",
"Epoch 249: 100%|██████████| 1/1 [00:00<00:00, 8.48it/s, v_num=0, train_loss_step=0.130, train_loss_epoch=0.130, valid_loss=2.660]\n"
]
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"\u001b[36m(pid=15949)\u001b[0m \n",
"\u001b[36m(pid=15949)\u001b[0m \n",
"\u001b[36m(pid=15949)\u001b[0m /usr/local/lib/python3.10/dist-packages/dask/dataframe/__init__.py:42: FutureWarning: \n",
"\u001b[36m(pid=15949)\u001b[0m Dask dataframe query planning is disabled because dask-expr is not installed.\n",
"\u001b[36m(pid=15949)\u001b[0m You can install it with `pip install dask[dataframe]` or `conda install dask`.\n",
"\u001b[36m(pid=15949)\u001b[0m This will raise in a future version.\n",
"\u001b[36m(pid=15949)\u001b[0m warnings.warn(msg, FutureWarning)\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m /usr/local/lib/python3.10/dist-packages/ray/tune/integration/pytorch_lightning.py:198: `ray.tune.integration.pytorch_lightning.TuneReportCallback` is deprecated. Use `ray.tune.integration.pytorch_lightning.TuneReportCheckpointCallback` instead.\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m Seed set to 1\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m GPU available: True (cuda), used: True\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m TPU available: False, using: 0 TPU cores\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m HPU available: False, using: 0 HPUs\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 2024-11-14 06:31:18.688965: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:485] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 2024-11-14 06:31:18.712269: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:8454] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 2024-11-14 06:31:18.719459: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1452] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 2024-11-14 06:31:19.853256: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m \n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m | Name | Type | Params | Mode \n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 0 | loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 1 | valid_loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 2 | padder | ConstantPad1d | 0 | train\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 3 | scaler | TemporalNorm | 0 | train\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 4 | hist_encoder | LSTM | 17.9 K | train\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 5 | context_adapter | Linear | 2.0 K | train\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 6 | mlp_decoder | MLP | 1.7 K | train\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 21.6 K Trainable params\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 0 Non-trainable params\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 21.6 K Total params\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 0.086 Total estimated model params size (MB)\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 12 Modules in train mode\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m 0 Modules in eval mode\n"
]
},
{
"output_type": "stream",
"name": "stdout",
"text": [
"\u001b[36m(_train_tune pid=15949)\u001b[0m \rSanity Checking: | | 0/? [00:00, ?it/s]\n",
"Sanity Checking DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\n",
" \n",
"Epoch 0: 0%| | 0/1 [00:00, ?it/s] \n",
"Epoch 2: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.981, train_loss_epoch=0.981]\n",
"Epoch 4: 100%|██████████| 1/1 [00:00<00:00, 44.39it/s, v_num=0, train_loss_step=0.951, train_loss_epoch=0.951]\n",
"Epoch 8: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.811, train_loss_epoch=0.811]\n",
"Epoch 11: 100%|██████████| 1/1 [00:00<00:00, 54.67it/s, v_num=0, train_loss_step=0.625, train_loss_epoch=0.625]\n",
"Epoch 16: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.475, train_loss_epoch=0.475]\n",
"Epoch 16: 100%|██████████| 1/1 [00:00<00:00, 53.14it/s, v_num=0, train_loss_step=0.445, train_loss_epoch=0.475]\n",
"Epoch 16: 100%|██████████| 1/1 [00:00<00:00, 49.48it/s, v_num=0, train_loss_step=0.445, train_loss_epoch=0.445]\n",
"Epoch 22: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.371, train_loss_epoch=0.371]\n",
"Epoch 27: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.317, train_loss_epoch=0.317]\n",
"Epoch 31: 100%|██████████| 1/1 [00:00<00:00, 51.94it/s, v_num=0, train_loss_step=0.286, train_loss_epoch=0.291]\n",
"Epoch 31: 100%|██████████| 1/1 [00:00<00:00, 49.76it/s, v_num=0, train_loss_step=0.286, train_loss_epoch=0.286]\n",
"Epoch 36: 100%|██████████| 1/1 [00:00<00:00, 61.29it/s, v_num=0, train_loss_step=0.266, train_loss_epoch=0.266]\n",
"Epoch 41: 100%|██████████| 1/1 [00:00<00:00, 74.70it/s, v_num=0, train_loss_step=0.248, train_loss_epoch=0.248]\n",
"Epoch 42: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.245, train_loss_epoch=0.245]\n",
"Epoch 46: 100%|██████████| 1/1 [00:00<00:00, 54.27it/s, v_num=0, train_loss_step=0.236, train_loss_epoch=0.238]\n",
"Epoch 47: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.236, train_loss_epoch=0.236]\n",
"Epoch 49: 100%|██████████| 1/1 [00:00<00:00, 52.94it/s, v_num=0, train_loss_step=0.231, train_loss_epoch=0.232]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 92.99it/s]\u001b[A\n",
"Epoch 50: 100%|██████████| 1/1 [00:00<00:00, 68.46it/s, v_num=0, train_loss_step=0.231, train_loss_epoch=0.231, valid_loss=2.350]\n",
"Epoch 56: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.221, train_loss_epoch=0.221, valid_loss=2.350]\n",
"Epoch 61: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.215, train_loss_epoch=0.215, valid_loss=2.350]\n",
"Epoch 66: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.210, train_loss_epoch=0.210, valid_loss=2.350]\n",
"Epoch 71: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.206, train_loss_epoch=0.206, valid_loss=2.350]\n",
"Epoch 76: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.202, train_loss_epoch=0.202, valid_loss=2.350]\n",
"Epoch 81: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.199, train_loss_epoch=0.199, valid_loss=2.350]\n",
"Epoch 81: 100%|██████████| 1/1 [00:00<00:00, 69.06it/s, v_num=0, train_loss_step=0.199, train_loss_epoch=0.199, valid_loss=2.350]\n",
"Epoch 86: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.197, train_loss_epoch=0.197, valid_loss=2.350]\n",
"Epoch 91: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.194, train_loss_epoch=0.194, valid_loss=2.350]\n",
"Epoch 96: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.191, train_loss_epoch=0.191, valid_loss=2.350]\n",
"Epoch 99: 100%|██████████| 1/1 [00:00<00:00, 54.90it/s, v_num=0, train_loss_step=0.189, train_loss_epoch=0.190, valid_loss=2.350]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 92.87it/s]\u001b[A\n",
"Epoch 100: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.189, train_loss_epoch=0.189, valid_loss=2.160]\n",
"Epoch 105: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.187, train_loss_epoch=0.187, valid_loss=2.160]\n",
"Epoch 109: 100%|██████████| 1/1 [00:00<00:00, 40.21it/s, v_num=0, train_loss_step=0.184, train_loss_epoch=0.184, valid_loss=2.160]\n",
"Epoch 113: 100%|██████████| 1/1 [00:00<00:00, 51.95it/s, v_num=0, train_loss_step=0.183, train_loss_epoch=0.183, valid_loss=2.160]\n",
"Epoch 117: 100%|██████████| 1/1 [00:00<00:00, 50.86it/s, v_num=0, train_loss_step=0.181, train_loss_epoch=0.181, valid_loss=2.160]\n",
"Epoch 122: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.179, train_loss_epoch=0.179, valid_loss=2.160]\n",
"Epoch 126: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.177, train_loss_epoch=0.177, valid_loss=2.160]\n",
"Epoch 130: 100%|██████████| 1/1 [00:00<00:00, 56.60it/s, v_num=0, train_loss_step=0.176, train_loss_epoch=0.176, valid_loss=2.160]\n",
"Epoch 135: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.174, train_loss_epoch=0.174, valid_loss=2.160]\n",
"Epoch 139: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.172, train_loss_epoch=0.172, valid_loss=2.160]\n",
"Epoch 143: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.170, train_loss_epoch=0.170, valid_loss=2.160]\n",
"Epoch 147: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.169, train_loss_epoch=0.169, valid_loss=2.160]\n",
"Epoch 149: 100%|██████████| 1/1 [00:00<00:00, 44.54it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.168, valid_loss=2.160]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 76.02it/s]\u001b[A\n",
"Epoch 150: 100%|██████████| 1/1 [00:00<00:00, 52.27it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.080]\n",
"Epoch 150: 100%|██████████| 1/1 [00:00<00:00, 42.07it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.080]\n",
"Epoch 151: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.080]\n",
"Epoch 154: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.166, train_loss_epoch=0.166, valid_loss=2.080]\n",
"Epoch 158: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.165, train_loss_epoch=0.165, valid_loss=2.080]\n",
"Epoch 162: 100%|██████████| 1/1 [00:00<00:00, 59.96it/s, v_num=0, train_loss_step=0.163, train_loss_epoch=0.163, valid_loss=2.080]\n",
"Epoch 167: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.160, train_loss_epoch=0.160, valid_loss=2.080]\n",
"Epoch 171: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.159, train_loss_epoch=0.159, valid_loss=2.080]\n",
"Epoch 175: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.157, train_loss_epoch=0.157, valid_loss=2.080]\n",
"Epoch 179: 100%|██████████| 1/1 [00:00<00:00, 61.86it/s, v_num=0, train_loss_step=0.153, train_loss_epoch=0.153, valid_loss=2.080]\n",
"Epoch 184: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.151, train_loss_epoch=0.151, valid_loss=2.080]\n",
"Epoch 188: 100%|██████████| 1/1 [00:00<00:00, 56.13it/s, v_num=0, train_loss_step=0.149, train_loss_epoch=0.149, valid_loss=2.080]\n",
"Epoch 193: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.146, train_loss_epoch=0.146, valid_loss=2.080]\n",
"Epoch 197: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.143, train_loss_epoch=0.143, valid_loss=2.080]\n",
"Epoch 199: 100%|██████████| 1/1 [00:00<00:00, 47.75it/s, v_num=0, train_loss_step=0.142, train_loss_epoch=0.141, valid_loss=2.080]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 85.30it/s]\u001b[A\n",
"Epoch 200: 100%|██████████| 1/1 [00:00<00:00, 58.77it/s, v_num=0, train_loss_step=0.142, train_loss_epoch=0.142, valid_loss=2.210]\n",
"Epoch 205: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.141, train_loss_epoch=0.141, valid_loss=2.210]\n",
"Epoch 208: 100%|██████████| 1/1 [00:00<00:00, 59.43it/s, v_num=0, train_loss_step=0.138, train_loss_epoch=0.138, valid_loss=2.210]\n",
"Epoch 213: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.138, train_loss_epoch=0.138, valid_loss=2.210]\n",
"Epoch 217: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.132, train_loss_epoch=0.132, valid_loss=2.210]\n",
"Epoch 221: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.130, train_loss_epoch=0.130, valid_loss=2.210]\n",
"Epoch 225: 100%|██████████| 1/1 [00:00<00:00, 61.53it/s, v_num=0, train_loss_step=0.149, train_loss_epoch=0.149, valid_loss=2.210]\n",
"Epoch 229: 100%|██████████| 1/1 [00:00<00:00, 53.11it/s, v_num=0, train_loss_step=0.141, train_loss_epoch=0.141, valid_loss=2.210]\n",
"Epoch 233: 100%|██████████| 1/1 [00:00<00:00, 60.58it/s, v_num=0, train_loss_step=0.137, train_loss_epoch=0.137, valid_loss=2.210]\n",
"Epoch 237: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.133, train_loss_epoch=0.133, valid_loss=2.210]\n",
"Epoch 241: 100%|██████████| 1/1 [00:00<00:00, 61.39it/s, v_num=0, train_loss_step=0.130, train_loss_epoch=0.130, valid_loss=2.210]\n",
"Epoch 245: 100%|██████████| 1/1 [00:00<00:00, 44.46it/s, v_num=0, train_loss_step=0.125, train_loss_epoch=0.127, valid_loss=2.210]\n",
"Epoch 249: 100%|██████████| 1/1 [00:00<00:00, 47.69it/s, v_num=0, train_loss_step=0.123, train_loss_epoch=0.124, valid_loss=2.210]\n",
"\u001b[36m(_train_tune pid=15949)\u001b[0m \n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 78.49it/s]\u001b[A\n",
"Epoch 249: 100%|██████████| 1/1 [00:00<00:00, 17.00it/s, v_num=0, train_loss_step=0.123, train_loss_epoch=0.123, valid_loss=2.510]\n"
]
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"\u001b[36m(pid=16068)\u001b[0m /usr/local/lib/python3.10/dist-packages/dask/dataframe/__init__.py:42: FutureWarning: \n",
"\u001b[36m(pid=16068)\u001b[0m Dask dataframe query planning is disabled because dask-expr is not installed.\n",
"\u001b[36m(pid=16068)\u001b[0m \n",
"\u001b[36m(pid=16068)\u001b[0m You can install it with `pip install dask[dataframe]` or `conda install dask`.\n",
"\u001b[36m(pid=16068)\u001b[0m This will raise in a future version.\n",
"\u001b[36m(pid=16068)\u001b[0m \n",
"\u001b[36m(pid=16068)\u001b[0m warnings.warn(msg, FutureWarning)\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m /usr/local/lib/python3.10/dist-packages/ray/tune/integration/pytorch_lightning.py:198: `ray.tune.integration.pytorch_lightning.TuneReportCallback` is deprecated. Use `ray.tune.integration.pytorch_lightning.TuneReportCheckpointCallback` instead.\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m Seed set to 1\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m GPU available: True (cuda), used: True\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m TPU available: False, using: 0 TPU cores\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m HPU available: False, using: 0 HPUs\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 2024-11-14 06:31:36.279588: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:485] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 2024-11-14 06:31:36.303499: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:8454] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 2024-11-14 06:31:36.310753: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1452] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 2024-11-14 06:31:37.455338: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m \n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m | Name | Type | Params | Mode \n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 0 | loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 1 | valid_loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 2 | padder | ConstantPad1d | 0 | train\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 3 | scaler | TemporalNorm | 0 | train\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 4 | hist_encoder | LSTM | 1.3 M | train\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 5 | context_adapter | Linear | 23.4 K | train\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 6 | mlp_decoder | MLP | 2.1 K | train\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 1.3 M Trainable params\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 0 Non-trainable params\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 1.3 M Total params\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 5.386 Total estimated model params size (MB)\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 12 Modules in train mode\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m 0 Modules in eval mode\n"
]
},
{
"output_type": "stream",
"name": "stdout",
"text": [
"Sanity Checking DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\n",
"Epoch 0: 0%| | 0/1 [00:00, ?it/s] \n",
"Epoch 1: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=1.000, train_loss_epoch=1.000]\n",
"Epoch 2: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.987, train_loss_epoch=0.987]\n",
"Epoch 3: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.918, train_loss_epoch=0.918]\n",
"Epoch 4: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.835, train_loss_epoch=0.835]\n",
"Epoch 5: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=1.050, train_loss_epoch=1.050]\n",
"Epoch 6: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.776, train_loss_epoch=0.776]\n",
"Epoch 6: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.789, train_loss_epoch=0.789] \n",
"Epoch 7: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.789, train_loss_epoch=0.789]\n",
"Epoch 8: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.793, train_loss_epoch=0.793]\n",
"Epoch 9: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.778, train_loss_epoch=0.778]\n",
"Epoch 10: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.752, train_loss_epoch=0.752]\n",
"Epoch 11: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.712, train_loss_epoch=0.712]\n",
"Epoch 12: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.679, train_loss_epoch=0.679]\n",
"Epoch 13: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.649, train_loss_epoch=0.649]\n",
"Epoch 14: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.634, train_loss_epoch=0.634]\n",
"Epoch 15: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.592, train_loss_epoch=0.592]\n",
"Epoch 16: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.542, train_loss_epoch=0.542]\n",
"Epoch 17: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.505, train_loss_epoch=0.505]\n",
"Epoch 18: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.479, train_loss_epoch=0.479]\n",
"Epoch 19: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.442, train_loss_epoch=0.442]\n",
"Epoch 20: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.410, train_loss_epoch=0.410]\n",
"Epoch 21: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.381, train_loss_epoch=0.381]\n",
"Epoch 22: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.340, train_loss_epoch=0.340]\n",
"Epoch 23: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.320, train_loss_epoch=0.320]\n",
"Epoch 24: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.301, train_loss_epoch=0.301]\n",
"Epoch 24: 100%|██████████| 1/1 [00:00<00:00, 2.45it/s, v_num=0, train_loss_step=0.306, train_loss_epoch=0.306]\n",
"Epoch 25: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.306, train_loss_epoch=0.306]\n",
"Epoch 26: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.292, train_loss_epoch=0.292]\n",
"Epoch 27: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.285, train_loss_epoch=0.285]\n",
"Epoch 28: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.271, train_loss_epoch=0.271]\n",
"Epoch 29: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.259, train_loss_epoch=0.259]\n",
"Epoch 30: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.257, train_loss_epoch=0.257]\n",
"Epoch 31: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.254, train_loss_epoch=0.254]\n",
"Epoch 32: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.250, train_loss_epoch=0.250]\n",
"Epoch 33: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.247, train_loss_epoch=0.247]\n",
"Epoch 34: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.239, train_loss_epoch=0.239]\n",
"Epoch 35: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.237, train_loss_epoch=0.237]\n",
"Epoch 36: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.231, train_loss_epoch=0.231]\n",
"Epoch 37: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.227, train_loss_epoch=0.227]\n",
"Epoch 38: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.227, train_loss_epoch=0.227]\n",
"Epoch 39: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.228, train_loss_epoch=0.228]\n",
"Epoch 40: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.221, train_loss_epoch=0.221]\n",
"Epoch 41: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.220, train_loss_epoch=0.220]\n",
"Epoch 42: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.215, train_loss_epoch=0.215]\n",
"Epoch 43: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.212, train_loss_epoch=0.212]\n",
"Epoch 44: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.210, train_loss_epoch=0.210]\n",
"Epoch 45: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.208, train_loss_epoch=0.208]\n",
"Epoch 46: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.208, train_loss_epoch=0.208]\n",
"Epoch 47: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.203, train_loss_epoch=0.203]\n",
"Epoch 48: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.202, train_loss_epoch=0.202]\n",
"Epoch 49: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.199, train_loss_epoch=0.199]\n",
"Epoch 49: 100%|██████████| 1/1 [00:00<00:00, 2.40it/s, v_num=0, train_loss_step=0.197, train_loss_epoch=0.199]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m \n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 4.76it/s]\u001b[A\n",
"Epoch 50: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.197, train_loss_epoch=0.197, valid_loss=2.270]\n",
"Epoch 51: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.197, train_loss_epoch=0.197, valid_loss=2.270]\n",
"Epoch 52: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.195, train_loss_epoch=0.195, valid_loss=2.270]\n",
"Epoch 53: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.193, train_loss_epoch=0.193, valid_loss=2.270]\n",
"Epoch 54: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.192, train_loss_epoch=0.192, valid_loss=2.270]\n",
"Epoch 55: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.191, train_loss_epoch=0.191, valid_loss=2.270]\n",
"Epoch 56: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.190, train_loss_epoch=0.190, valid_loss=2.270]\n",
"Epoch 57: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.189, train_loss_epoch=0.189, valid_loss=2.270]\n",
"Epoch 58: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.188, train_loss_epoch=0.188, valid_loss=2.270]\n",
"Epoch 59: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.187, train_loss_epoch=0.187, valid_loss=2.270]\n",
"Epoch 60: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.186, train_loss_epoch=0.186, valid_loss=2.270]\n",
"Epoch 60: 100%|██████████| 1/1 [00:00<00:00, 2.50it/s, v_num=0, train_loss_step=0.185, train_loss_epoch=0.186, valid_loss=2.270]\n",
"Epoch 61: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.185, train_loss_epoch=0.185, valid_loss=2.270]\n",
"Epoch 62: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.184, train_loss_epoch=0.184, valid_loss=2.270]\n",
"Epoch 63: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.183, train_loss_epoch=0.183, valid_loss=2.270]\n",
"Epoch 64: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.182, train_loss_epoch=0.182, valid_loss=2.270]\n",
"Epoch 65: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.181, train_loss_epoch=0.181, valid_loss=2.270]\n",
"Epoch 66: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.180, train_loss_epoch=0.180, valid_loss=2.270]\n",
"Epoch 67: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.179, train_loss_epoch=0.179, valid_loss=2.270]\n",
"Epoch 68: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.178, train_loss_epoch=0.178, valid_loss=2.270]\n",
"Epoch 69: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.177, train_loss_epoch=0.177, valid_loss=2.270]\n",
"Epoch 70: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.177, train_loss_epoch=0.177, valid_loss=2.270]\n",
"Epoch 71: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.179, train_loss_epoch=0.179, valid_loss=2.270]\n",
"Epoch 72: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.178, train_loss_epoch=0.178, valid_loss=2.270]\n",
"Epoch 73: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.178, train_loss_epoch=0.178, valid_loss=2.270]\n",
"Epoch 74: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.173, train_loss_epoch=0.173, valid_loss=2.270]\n",
"Epoch 75: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.174, train_loss_epoch=0.174, valid_loss=2.270]\n",
"Epoch 76: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.175, train_loss_epoch=0.175, valid_loss=2.270]\n",
"Epoch 77: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.270]\n",
"Epoch 78: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.270]\n",
"Epoch 79: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.173, train_loss_epoch=0.173, valid_loss=2.270]\n",
"Epoch 80: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.270]\n",
"Epoch 81: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.169, train_loss_epoch=0.169, valid_loss=2.270]\n",
"Epoch 82: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.270]\n",
"Epoch 83: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.164, train_loss_epoch=0.164, valid_loss=2.270]\n",
"Epoch 84: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.270]\n",
"Epoch 85: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.178, train_loss_epoch=0.178, valid_loss=2.270]\n",
"Epoch 86: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.173, train_loss_epoch=0.173, valid_loss=2.270]\n",
"Epoch 87: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.172, train_loss_epoch=0.172, valid_loss=2.270]\n",
"Epoch 88: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.169, train_loss_epoch=0.169, valid_loss=2.270]\n",
"Epoch 89: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.270]\n",
"Epoch 90: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.166, train_loss_epoch=0.166, valid_loss=2.270]\n",
"Epoch 91: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.164, train_loss_epoch=0.164, valid_loss=2.270]\n",
"Epoch 92: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.164, train_loss_epoch=0.164, valid_loss=2.270]\n",
"Epoch 93: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.160, train_loss_epoch=0.160, valid_loss=2.270]\n",
"Epoch 94: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.163, train_loss_epoch=0.163, valid_loss=2.270]\n",
"Epoch 95: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.157, train_loss_epoch=0.157, valid_loss=2.270]\n",
"Epoch 96: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.158, train_loss_epoch=0.158, valid_loss=2.270]\n",
"Epoch 97: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.155, train_loss_epoch=0.155, valid_loss=2.270]\n",
"Epoch 98: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.153, train_loss_epoch=0.153, valid_loss=2.270]\n",
"Epoch 99: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.151, train_loss_epoch=0.151, valid_loss=2.270]\n",
"Epoch 99: 100%|██████████| 1/1 [00:00<00:00, 1.77it/s, v_num=0, train_loss_step=0.149, train_loss_epoch=0.151, valid_loss=2.270]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m \n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 3.37it/s]\u001b[A\n",
"Epoch 100: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.149, train_loss_epoch=0.149, valid_loss=2.150]\n",
"Epoch 101: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.147, train_loss_epoch=0.147, valid_loss=2.150]\n",
"Epoch 102: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.149, train_loss_epoch=0.149, valid_loss=2.150]\n",
"Epoch 103: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.155, train_loss_epoch=0.155, valid_loss=2.150]\n",
"Epoch 104: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.148, train_loss_epoch=0.148, valid_loss=2.150]\n",
"Epoch 105: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.153, train_loss_epoch=0.153, valid_loss=2.150]\n",
"Epoch 106: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.150, train_loss_epoch=0.150, valid_loss=2.150]\n",
"Epoch 107: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.146, train_loss_epoch=0.146, valid_loss=2.150]\n",
"Epoch 108: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.141, train_loss_epoch=0.141, valid_loss=2.150]\n",
"Epoch 109: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.143, train_loss_epoch=0.143, valid_loss=2.150]\n",
"Epoch 110: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.138, train_loss_epoch=0.138, valid_loss=2.150]\n",
"Epoch 111: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.136, train_loss_epoch=0.136, valid_loss=2.150]\n",
"Epoch 112: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.133, train_loss_epoch=0.133, valid_loss=2.150]\n",
"Epoch 113: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.137, train_loss_epoch=0.137, valid_loss=2.150]\n",
"Epoch 114: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.136, train_loss_epoch=0.136, valid_loss=2.150]\n",
"Epoch 115: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.144, train_loss_epoch=0.144, valid_loss=2.150]\n",
"Epoch 116: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.140, train_loss_epoch=0.140, valid_loss=2.150]\n",
"Epoch 117: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.137, train_loss_epoch=0.137, valid_loss=2.150]\n",
"Epoch 118: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.134, train_loss_epoch=0.134, valid_loss=2.150]\n",
"Epoch 119: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.129, train_loss_epoch=0.129, valid_loss=2.150]\n",
"Epoch 120: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.128, train_loss_epoch=0.128, valid_loss=2.150]\n",
"Epoch 121: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.129, train_loss_epoch=0.129, valid_loss=2.150]\n",
"Epoch 122: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.127, train_loss_epoch=0.127, valid_loss=2.150]\n",
"Epoch 123: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.124, train_loss_epoch=0.124, valid_loss=2.150]\n",
"Epoch 124: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.120, train_loss_epoch=0.120, valid_loss=2.150]\n",
"Epoch 125: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.120, train_loss_epoch=0.120, valid_loss=2.150]\n",
"Epoch 126: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.118, train_loss_epoch=0.118, valid_loss=2.150]\n",
"Epoch 127: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.117, train_loss_epoch=0.117, valid_loss=2.150]\n",
"Epoch 128: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.115, train_loss_epoch=0.115, valid_loss=2.150]\n",
"Epoch 129: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.114, train_loss_epoch=0.114, valid_loss=2.150]\n",
"Epoch 130: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.113, train_loss_epoch=0.113, valid_loss=2.150]\n",
"Epoch 131: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.111, train_loss_epoch=0.111, valid_loss=2.150]\n",
"Epoch 132: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.111, train_loss_epoch=0.111, valid_loss=2.150]\n",
"Epoch 133: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.112, train_loss_epoch=0.112, valid_loss=2.150]\n",
"Epoch 133: 100%|██████████| 1/1 [00:00<00:00, 1.75it/s, v_num=0, train_loss_step=0.112, train_loss_epoch=0.112, valid_loss=2.150]\n",
"Epoch 134: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.114, train_loss_epoch=0.114, valid_loss=2.150]\n",
"Epoch 135: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.109, train_loss_epoch=0.109, valid_loss=2.150]\n",
"Epoch 135: 100%|██████████| 1/1 [00:00<00:00, 1.67it/s, v_num=0, train_loss_step=0.109, train_loss_epoch=0.109, valid_loss=2.150]\n",
"Epoch 136: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.109, train_loss_epoch=0.109, valid_loss=2.150]\n",
"Epoch 137: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.112, train_loss_epoch=0.112, valid_loss=2.150]\n",
"Epoch 138: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.112, train_loss_epoch=0.112, valid_loss=2.150]\n",
"Epoch 139: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.110, train_loss_epoch=0.110, valid_loss=2.150]\n",
"Epoch 140: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.108, train_loss_epoch=0.108, valid_loss=2.150]\n",
"Epoch 141: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.107, train_loss_epoch=0.107, valid_loss=2.150]\n",
"Epoch 142: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.104, train_loss_epoch=0.104, valid_loss=2.150]\n",
"Epoch 143: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.103, train_loss_epoch=0.103, valid_loss=2.150]\n",
"Epoch 144: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.105, train_loss_epoch=0.105, valid_loss=2.150]\n",
"Epoch 145: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.101, train_loss_epoch=0.101, valid_loss=2.150]\n",
"Epoch 146: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0974, train_loss_epoch=0.0974, valid_loss=2.150]\n",
"Epoch 147: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0989, train_loss_epoch=0.0989, valid_loss=2.150]\n",
"Epoch 148: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0959, train_loss_epoch=0.0959, valid_loss=2.150]\n",
"Epoch 149: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0934, train_loss_epoch=0.0934, valid_loss=2.150]\n",
"Epoch 149: 100%|██████████| 1/1 [00:00<00:00, 2.43it/s, v_num=0, train_loss_step=0.0925, train_loss_epoch=0.0934, valid_loss=2.150]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m \n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 4.88it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m \n",
"Epoch 150: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0925, train_loss_epoch=0.0925, valid_loss=2.430]\n",
"Epoch 151: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0908, train_loss_epoch=0.0908, valid_loss=2.430]\n",
"Epoch 152: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0898, train_loss_epoch=0.0898, valid_loss=2.430]\n",
"Epoch 153: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0874, train_loss_epoch=0.0874, valid_loss=2.430]\n",
"Epoch 154: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0861, train_loss_epoch=0.0861, valid_loss=2.430]\n",
"Epoch 155: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0861, train_loss_epoch=0.0861, valid_loss=2.430]\n",
"Epoch 156: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0863, train_loss_epoch=0.0863, valid_loss=2.430]\n",
"Epoch 157: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0848, train_loss_epoch=0.0848, valid_loss=2.430]\n",
"Epoch 158: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0809, train_loss_epoch=0.0809, valid_loss=2.430]\n",
"Epoch 159: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0813, train_loss_epoch=0.0813, valid_loss=2.430]\n",
"Epoch 160: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0788, train_loss_epoch=0.0788, valid_loss=2.430]\n",
"Epoch 161: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0781, train_loss_epoch=0.0781, valid_loss=2.430]\n",
"Epoch 162: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0759, train_loss_epoch=0.0759, valid_loss=2.430]\n",
"Epoch 163: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0749, train_loss_epoch=0.0749, valid_loss=2.430]\n",
"Epoch 164: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0736, train_loss_epoch=0.0736, valid_loss=2.430]\n",
"Epoch 165: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0718, train_loss_epoch=0.0718, valid_loss=2.430]\n",
"Epoch 166: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0712, train_loss_epoch=0.0712, valid_loss=2.430]\n",
"Epoch 167: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0721, train_loss_epoch=0.0721, valid_loss=2.430]\n",
"Epoch 168: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0747, train_loss_epoch=0.0747, valid_loss=2.430]\n",
"Epoch 169: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0942, train_loss_epoch=0.0942, valid_loss=2.430]\n",
"Epoch 170: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0971, train_loss_epoch=0.0971, valid_loss=2.430]\n",
"Epoch 171: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.117, train_loss_epoch=0.117, valid_loss=2.430]\n",
"Epoch 172: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.101, train_loss_epoch=0.101, valid_loss=2.430]\n",
"Epoch 173: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.106, train_loss_epoch=0.106, valid_loss=2.430]\n",
"Epoch 174: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0988, train_loss_epoch=0.0988, valid_loss=2.430]\n",
"Epoch 175: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0921, train_loss_epoch=0.0921, valid_loss=2.430]\n",
"Epoch 176: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0933, train_loss_epoch=0.0933, valid_loss=2.430]\n",
"Epoch 177: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0836, train_loss_epoch=0.0836, valid_loss=2.430]\n",
"Epoch 178: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0867, train_loss_epoch=0.0867, valid_loss=2.430]\n",
"Epoch 179: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0831, train_loss_epoch=0.0831, valid_loss=2.430]\n",
"Epoch 180: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0821, train_loss_epoch=0.0821, valid_loss=2.430]\n",
"Epoch 181: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0759, train_loss_epoch=0.0759, valid_loss=2.430]\n",
"Epoch 182: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0776, train_loss_epoch=0.0776, valid_loss=2.430]\n",
"Epoch 183: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0725, train_loss_epoch=0.0725, valid_loss=2.430]\n",
"Epoch 184: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0733, train_loss_epoch=0.0733, valid_loss=2.430]\n",
"Epoch 185: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0704, train_loss_epoch=0.0704, valid_loss=2.430]\n",
"Epoch 186: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0679, train_loss_epoch=0.0679, valid_loss=2.430]\n",
"Epoch 187: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0669, train_loss_epoch=0.0669, valid_loss=2.430]\n",
"Epoch 188: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0651, train_loss_epoch=0.0651, valid_loss=2.430]\n",
"Epoch 189: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0634, train_loss_epoch=0.0634, valid_loss=2.430]\n",
"Epoch 190: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0626, train_loss_epoch=0.0626, valid_loss=2.430]\n",
"Epoch 191: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0604, train_loss_epoch=0.0604, valid_loss=2.430]\n",
"Epoch 192: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0602, train_loss_epoch=0.0602, valid_loss=2.430]\n",
"Epoch 193: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.058, train_loss_epoch=0.058, valid_loss=2.430]\n",
"Epoch 194: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0578, train_loss_epoch=0.0578, valid_loss=2.430]\n",
"Epoch 195: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0558, train_loss_epoch=0.0558, valid_loss=2.430]\n",
"Epoch 196: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0555, train_loss_epoch=0.0555, valid_loss=2.430]\n",
"Epoch 197: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0542, train_loss_epoch=0.0542, valid_loss=2.430]\n",
"Epoch 198: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0536, train_loss_epoch=0.0536, valid_loss=2.430]\n",
"Epoch 199: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0526, train_loss_epoch=0.0526, valid_loss=2.430]\n",
"Epoch 199: 100%|██████████| 1/1 [00:00<00:00, 1.64it/s, v_num=0, train_loss_step=0.0513, train_loss_epoch=0.0526, valid_loss=2.430]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16068)\u001b[0m \n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 3.08it/s]\u001b[A\n",
"Epoch 199: 100%|██████████| 1/1 [00:00<00:00, 1.05it/s, v_num=0, train_loss_step=0.0513, train_loss_epoch=0.0513, valid_loss=2.620]\n"
]
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"\u001b[36m(pid=16559)\u001b[0m \n",
"\u001b[36m(pid=16559)\u001b[0m \n",
"\u001b[36m(pid=16559)\u001b[0m /usr/local/lib/python3.10/dist-packages/dask/dataframe/__init__.py:42: FutureWarning: \n",
"\u001b[36m(pid=16559)\u001b[0m Dask dataframe query planning is disabled because dask-expr is not installed.\n",
"\u001b[36m(pid=16559)\u001b[0m You can install it with `pip install dask[dataframe]` or `conda install dask`.\n",
"\u001b[36m(pid=16559)\u001b[0m This will raise in a future version.\n",
"\u001b[36m(pid=16559)\u001b[0m warnings.warn(msg, FutureWarning)\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m /usr/local/lib/python3.10/dist-packages/ray/tune/integration/pytorch_lightning.py:198: `ray.tune.integration.pytorch_lightning.TuneReportCallback` is deprecated. Use `ray.tune.integration.pytorch_lightning.TuneReportCheckpointCallback` instead.\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m Seed set to 1\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m GPU available: True (cuda), used: True\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m TPU available: False, using: 0 TPU cores\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m HPU available: False, using: 0 HPUs\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 2024-11-14 06:33:20.459119: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:485] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 2024-11-14 06:33:20.483179: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:8454] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 2024-11-14 06:33:20.490476: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1452] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 2024-11-14 06:33:21.628086: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m \n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m | Name | Type | Params | Mode \n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 0 | loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 1 | valid_loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 2 | padder | ConstantPad1d | 0 | train\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 3 | scaler | TemporalNorm | 0 | train\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 4 | hist_encoder | LSTM | 17.9 K | train\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 5 | context_adapter | Linear | 6.1 K | train\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 6 | mlp_decoder | MLP | 8.4 K | train\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 32.5 K Trainable params\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 0 Non-trainable params\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 32.5 K Total params\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 0.130 Total estimated model params size (MB)\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 12 Modules in train mode\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m 0 Modules in eval mode\n"
]
},
{
"output_type": "stream",
"name": "stdout",
"text": [
"\u001b[36m(_train_tune pid=16559)\u001b[0m \rSanity Checking: | | 0/? [00:00, ?it/s]\n",
"Sanity Checking DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\n",
"Epoch 0: 0%| | 0/1 [00:00, ?it/s] \n",
"Epoch 1: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=1.010, train_loss_epoch=1.010]\n",
"Epoch 1: 100%|██████████| 1/1 [00:00<00:00, 40.22it/s, v_num=0, train_loss_step=1.010, train_loss_epoch=1.010]\n",
"Epoch 4: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.844, train_loss_epoch=0.844]\n",
"Epoch 7: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.520, train_loss_epoch=0.520]\n",
"Epoch 10: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.375, train_loss_epoch=0.375]\n",
"Epoch 14: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.349, train_loss_epoch=0.349]\n",
"Epoch 18: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.289, train_loss_epoch=0.289]\n",
"Epoch 23: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.265, train_loss_epoch=0.265]\n",
"Epoch 27: 100%|██████████| 1/1 [00:00<00:00, 61.78it/s, v_num=0, train_loss_step=0.244, train_loss_epoch=0.244]\n",
"Epoch 32: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.233, train_loss_epoch=0.233]\n",
"Epoch 36: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.223, train_loss_epoch=0.223]\n",
"Epoch 41: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.212, train_loss_epoch=0.212]\n",
"Epoch 45: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.207, train_loss_epoch=0.207]\n",
"Epoch 49: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.202, train_loss_epoch=0.202]\n",
"Epoch 49: 100%|██████████| 1/1 [00:00<00:00, 47.27it/s, v_num=0, train_loss_step=0.201, train_loss_epoch=0.202]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 77.01it/s]\u001b[A\n",
"Epoch 52: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.199, train_loss_epoch=0.199, valid_loss=2.190]\n",
"Epoch 56: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.195, train_loss_epoch=0.195, valid_loss=2.190]\n",
"Epoch 60: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.191, train_loss_epoch=0.191, valid_loss=2.190]\n",
"Epoch 60: 100%|██████████| 1/1 [00:00<00:00, 45.42it/s, v_num=0, train_loss_step=0.190, train_loss_epoch=0.190, valid_loss=2.190]\n",
"Epoch 65: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.187, train_loss_epoch=0.187, valid_loss=2.190]\n",
"Epoch 69: 100%|██████████| 1/1 [00:00<00:00, 56.14it/s, v_num=0, train_loss_step=0.184, train_loss_epoch=0.184, valid_loss=2.190]\n",
"Epoch 69: 100%|██████████| 1/1 [00:00<00:00, 43.50it/s, v_num=0, train_loss_step=0.183, train_loss_epoch=0.184, valid_loss=2.190]\n",
"Epoch 74: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.180, train_loss_epoch=0.180, valid_loss=2.190]\n",
"Epoch 78: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.177, train_loss_epoch=0.177, valid_loss=2.190]\n",
"Epoch 83: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.174, train_loss_epoch=0.174, valid_loss=2.190]\n",
"Epoch 87: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.190]\n",
"Epoch 91: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.169, train_loss_epoch=0.169, valid_loss=2.190]\n",
"Epoch 95: 100%|██████████| 1/1 [00:00<00:00, 59.20it/s, v_num=0, train_loss_step=0.166, train_loss_epoch=0.166, valid_loss=2.190]\n",
"Epoch 95: 100%|██████████| 1/1 [00:00<00:00, 48.03it/s, v_num=0, train_loss_step=0.166, train_loss_epoch=0.166, valid_loss=2.190]\n",
"Epoch 99: 100%|██████████| 1/1 [00:00<00:00, 36.70it/s, v_num=0, train_loss_step=0.163, train_loss_epoch=0.164, valid_loss=2.190]\n",
"\u001b[36m(_train_tune pid=16559)\u001b[0m \n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 81.45it/s]\u001b[A\n",
"Epoch 103: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.175, train_loss_epoch=0.175, valid_loss=2.150]\n",
"Epoch 107: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.168, train_loss_epoch=0.168, valid_loss=2.150]\n",
"Epoch 111: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.164, train_loss_epoch=0.164, valid_loss=2.150]\n",
"Epoch 115: 100%|██████████| 1/1 [00:00<00:00, 46.23it/s, v_num=0, train_loss_step=0.157, train_loss_epoch=0.159, valid_loss=2.150]\n",
"Epoch 120: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.155, train_loss_epoch=0.155, valid_loss=2.150]\n",
"Epoch 124: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.152, train_loss_epoch=0.152, valid_loss=2.150]\n",
"Epoch 128: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.149, train_loss_epoch=0.149, valid_loss=2.150]\n",
"Epoch 132: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.147, train_loss_epoch=0.147, valid_loss=2.150]\n",
"Epoch 136: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.145, train_loss_epoch=0.145, valid_loss=2.150]\n",
"Epoch 140: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.142, train_loss_epoch=0.142, valid_loss=2.150]\n",
"Epoch 144: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.142, train_loss_epoch=0.142, valid_loss=2.150]\n",
"Epoch 148: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.144, train_loss_epoch=0.144, valid_loss=2.150]\n",
"Epoch 149: 100%|██████████| 1/1 [00:00<00:00, 45.92it/s, v_num=0, train_loss_step=0.145, train_loss_epoch=0.157, valid_loss=2.150]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 79.82it/s]\u001b[A\n",
"Epoch 151: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.154, train_loss_epoch=0.154, valid_loss=2.140]\n",
"Epoch 155: 100%|██████████| 1/1 [00:00<00:00, 42.23it/s, v_num=0, train_loss_step=0.141, train_loss_epoch=0.138, valid_loss=2.140]\n",
"Epoch 160: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.135, train_loss_epoch=0.135, valid_loss=2.140]\n",
"Epoch 164: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.130, train_loss_epoch=0.130, valid_loss=2.140]\n",
"Epoch 168: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.127, train_loss_epoch=0.127, valid_loss=2.140]\n",
"Epoch 172: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.124, train_loss_epoch=0.124, valid_loss=2.140]\n",
"Epoch 176: 100%|██████████| 1/1 [00:00<00:00, 46.29it/s, v_num=0, train_loss_step=0.120, train_loss_epoch=0.121, valid_loss=2.140]\n",
"Epoch 181: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.118, train_loss_epoch=0.118, valid_loss=2.140]\n",
"Epoch 185: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.115, train_loss_epoch=0.115, valid_loss=2.140]\n",
"Epoch 189: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.113, train_loss_epoch=0.113, valid_loss=2.140]\n",
"Epoch 193: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.112, train_loss_epoch=0.112, valid_loss=2.140]\n",
"Epoch 197: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.109, train_loss_epoch=0.109, valid_loss=2.140]\n",
"Epoch 199: 100%|██████████| 1/1 [00:00<00:00, 52.69it/s, v_num=0, train_loss_step=0.112, train_loss_epoch=0.112, valid_loss=2.140]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 88.12it/s]\u001b[A\n",
"Epoch 201: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.108, train_loss_epoch=0.108, valid_loss=2.350]\n",
"Epoch 206: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.113, train_loss_epoch=0.113, valid_loss=2.350]\n",
"Epoch 211: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.108, train_loss_epoch=0.108, valid_loss=2.350]\n",
"Epoch 216: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.102, train_loss_epoch=0.102, valid_loss=2.350]\n",
"Epoch 221: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0985, train_loss_epoch=0.0985, valid_loss=2.350]\n",
"Epoch 226: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0942, train_loss_epoch=0.0942, valid_loss=2.350]\n",
"Epoch 231: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0902, train_loss_epoch=0.0902, valid_loss=2.350]\n",
"Epoch 236: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0865, train_loss_epoch=0.0865, valid_loss=2.350]\n",
"Epoch 241: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0915, train_loss_epoch=0.0915, valid_loss=2.350]\n",
"Epoch 246: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0819, train_loss_epoch=0.0819, valid_loss=2.350]\n",
"Epoch 249: 100%|██████████| 1/1 [00:00<00:00, 52.40it/s, v_num=0, train_loss_step=0.080, train_loss_epoch=0.0817, valid_loss=2.350] \n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 92.51it/s]\u001b[A\n",
"Epoch 249: 100%|██████████| 1/1 [00:00<00:00, 23.98it/s, v_num=0, train_loss_step=0.080, train_loss_epoch=0.080, valid_loss=2.580]\n"
]
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"\u001b[36m(pid=16674)\u001b[0m /usr/local/lib/python3.10/dist-packages/dask/dataframe/__init__.py:42: FutureWarning: \n",
"\u001b[36m(pid=16674)\u001b[0m Dask dataframe query planning is disabled because dask-expr is not installed.\n",
"\u001b[36m(pid=16674)\u001b[0m \n",
"\u001b[36m(pid=16674)\u001b[0m You can install it with `pip install dask[dataframe]` or `conda install dask`.\n",
"\u001b[36m(pid=16674)\u001b[0m This will raise in a future version.\n",
"\u001b[36m(pid=16674)\u001b[0m \n",
"\u001b[36m(pid=16674)\u001b[0m warnings.warn(msg, FutureWarning)\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m /usr/local/lib/python3.10/dist-packages/ray/tune/integration/pytorch_lightning.py:198: `ray.tune.integration.pytorch_lightning.TuneReportCallback` is deprecated. Use `ray.tune.integration.pytorch_lightning.TuneReportCheckpointCallback` instead.\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m Seed set to 1\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m GPU available: True (cuda), used: True\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m TPU available: False, using: 0 TPU cores\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m HPU available: False, using: 0 HPUs\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 2024-11-14 06:33:37.398260: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:485] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 2024-11-14 06:33:37.421210: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:8454] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 2024-11-14 06:33:37.429397: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1452] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 2024-11-14 06:33:38.588293: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m \n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m | Name | Type | Params | Mode \n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 0 | loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 1 | valid_loss | MSE | 0 | train\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 2 | padder | ConstantPad1d | 0 | train\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 3 | scaler | TemporalNorm | 0 | train\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 4 | hist_encoder | LSTM | 332 K | train\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 5 | context_adapter | Linear | 11.9 K | train\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 6 | mlp_decoder | MLP | 4.2 K | train\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m ----------------------------------------------------------\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 348 K Trainable params\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 0 Non-trainable params\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 348 K Total params\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 1.396 Total estimated model params size (MB)\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 12 Modules in train mode\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m 0 Modules in eval mode\n"
]
},
{
"output_type": "stream",
"name": "stdout",
"text": [
"\u001b[36m(_train_tune pid=16674)\u001b[0m \rSanity Checking: | | 0/? [00:00, ?it/s]\n",
"Sanity Checking DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\n",
"Epoch 0: 0%| | 0/1 [00:00, ?it/s] \n",
"Epoch 1: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.998, train_loss_epoch=0.998]\n",
"Epoch 1: 100%|██████████| 1/1 [00:00<00:00, 10.24it/s, v_num=0, train_loss_step=0.998, train_loss_epoch=0.998]\n",
"Epoch 2: 100%|██████████| 1/1 [00:00<00:00, 12.80it/s, v_num=0, train_loss_step=0.971, train_loss_epoch=0.971]\n",
"Epoch 3: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.860, train_loss_epoch=0.860]\n",
"Epoch 4: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.880, train_loss_epoch=0.880]\n",
"Epoch 4: 100%|██████████| 1/1 [00:00<00:00, 12.76it/s, v_num=0, train_loss_step=0.880, train_loss_epoch=0.880]\n",
"Epoch 5: 100%|██████████| 1/1 [00:00<00:00, 12.75it/s, v_num=0, train_loss_step=0.710, train_loss_epoch=0.710]\n",
"Epoch 6: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.710, train_loss_epoch=0.710]\n",
"Epoch 7: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.635, train_loss_epoch=0.635]\n",
"Epoch 8: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.671, train_loss_epoch=0.671]\n",
"Epoch 8: 100%|██████████| 1/1 [00:00<00:00, 13.08it/s, v_num=0, train_loss_step=0.671, train_loss_epoch=0.671]\n",
"Epoch 9: 100%|██████████| 1/1 [00:00<00:00, 13.10it/s, v_num=0, train_loss_step=0.566, train_loss_epoch=0.566]\n",
"Epoch 10: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.554, train_loss_epoch=0.554]\n",
"Epoch 11: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.484, train_loss_epoch=0.484]\n",
"Epoch 11: 100%|██████████| 1/1 [00:00<00:00, 12.93it/s, v_num=0, train_loss_step=0.484, train_loss_epoch=0.484]\n",
"Epoch 12: 100%|██████████| 1/1 [00:00<00:00, 12.81it/s, v_num=0, train_loss_step=0.452, train_loss_epoch=0.452]\n",
"Epoch 13: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.451, train_loss_epoch=0.451]\n",
"Epoch 14: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.382, train_loss_epoch=0.382]\n",
"Epoch 15: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.356, train_loss_epoch=0.356]\n",
"Epoch 15: 100%|██████████| 1/1 [00:00<00:00, 13.81it/s, v_num=0, train_loss_step=0.356, train_loss_epoch=0.356]\n",
"Epoch 16: 100%|██████████| 1/1 [00:00<00:00, 13.90it/s, v_num=0, train_loss_step=0.338, train_loss_epoch=0.338]\n",
"Epoch 17: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.312, train_loss_epoch=0.312]\n",
"Epoch 18: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.296, train_loss_epoch=0.296]\n",
"Epoch 19: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.284, train_loss_epoch=0.284]\n",
"Epoch 19: 100%|██████████| 1/1 [00:00<00:00, 14.08it/s, v_num=0, train_loss_step=0.284, train_loss_epoch=0.284]\n",
"Epoch 20: 100%|██████████| 1/1 [00:00<00:00, 14.10it/s, v_num=0, train_loss_step=0.274, train_loss_epoch=0.274]\n",
"Epoch 21: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.273, train_loss_epoch=0.273]\n",
"Epoch 22: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.273, train_loss_epoch=0.273]\n",
"Epoch 23: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.269, train_loss_epoch=0.269]\n",
"Epoch 23: 100%|██████████| 1/1 [00:00<00:00, 13.94it/s, v_num=0, train_loss_step=0.269, train_loss_epoch=0.269]\n",
"Epoch 24: 100%|██████████| 1/1 [00:00<00:00, 13.87it/s, v_num=0, train_loss_step=0.264, train_loss_epoch=0.264]\n",
"Epoch 25: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.258, train_loss_epoch=0.258]\n",
"Epoch 26: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.248, train_loss_epoch=0.248]\n",
"Epoch 27: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.240, train_loss_epoch=0.240]\n",
"Epoch 27: 100%|██████████| 1/1 [00:00<00:00, 13.94it/s, v_num=0, train_loss_step=0.240, train_loss_epoch=0.240]\n",
"Epoch 28: 100%|██████████| 1/1 [00:00<00:00, 14.06it/s, v_num=0, train_loss_step=0.235, train_loss_epoch=0.235]\n",
"Epoch 29: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.230, train_loss_epoch=0.230]\n",
"Epoch 30: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.227, train_loss_epoch=0.227]\n",
"Epoch 31: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.224, train_loss_epoch=0.224]\n",
"Epoch 31: 100%|██████████| 1/1 [00:00<00:00, 14.00it/s, v_num=0, train_loss_step=0.224, train_loss_epoch=0.224]\n",
"Epoch 32: 100%|██████████| 1/1 [00:00<00:00, 13.98it/s, v_num=0, train_loss_step=0.222, train_loss_epoch=0.222]\n",
"Epoch 33: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.221, train_loss_epoch=0.221]\n",
"Epoch 34: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.219, train_loss_epoch=0.219]\n",
"Epoch 35: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.217, train_loss_epoch=0.217]\n",
"Epoch 35: 100%|██████████| 1/1 [00:00<00:00, 14.07it/s, v_num=0, train_loss_step=0.217, train_loss_epoch=0.217]\n",
"Epoch 36: 100%|██████████| 1/1 [00:00<00:00, 13.98it/s, v_num=0, train_loss_step=0.215, train_loss_epoch=0.215]\n",
"Epoch 37: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.212, train_loss_epoch=0.212]\n",
"Epoch 38: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.209, train_loss_epoch=0.209]\n",
"Epoch 39: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.208, train_loss_epoch=0.208]\n",
"Epoch 39: 100%|██████████| 1/1 [00:00<00:00, 13.77it/s, v_num=0, train_loss_step=0.208, train_loss_epoch=0.208]\n",
"Epoch 39: 100%|██████████| 1/1 [00:00<00:00, 7.81it/s, v_num=0, train_loss_step=0.206, train_loss_epoch=0.208]\n",
"Epoch 40: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.206, train_loss_epoch=0.206]\n",
"Epoch 40: 100%|██████████| 1/1 [00:00<00:00, 13.27it/s, v_num=0, train_loss_step=0.206, train_loss_epoch=0.206]\n",
"Epoch 41: 100%|██████████| 1/1 [00:00<00:00, 13.49it/s, v_num=0, train_loss_step=0.205, train_loss_epoch=0.205]\n",
"Epoch 42: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.204, train_loss_epoch=0.204]\n",
"Epoch 43: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.202, train_loss_epoch=0.202]\n",
"Epoch 43: 100%|██████████| 1/1 [00:00<00:00, 7.89it/s, v_num=0, train_loss_step=0.201, train_loss_epoch=0.202]\n",
"Epoch 43: 100%|██████████| 1/1 [00:00<00:00, 7.76it/s, v_num=0, train_loss_step=0.201, train_loss_epoch=0.201]\n",
"Epoch 44: 100%|██████████| 1/1 [00:00<00:00, 13.90it/s, v_num=0, train_loss_step=0.201, train_loss_epoch=0.201]\n",
"Epoch 45: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.199, train_loss_epoch=0.199]\n",
"Epoch 46: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.198, train_loss_epoch=0.198]\n",
"Epoch 47: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.196, train_loss_epoch=0.196]\n",
"Epoch 47: 100%|██████████| 1/1 [00:00<00:00, 13.87it/s, v_num=0, train_loss_step=0.196, train_loss_epoch=0.196]\n",
"Epoch 48: 100%|██████████| 1/1 [00:00<00:00, 13.73it/s, v_num=0, train_loss_step=0.195, train_loss_epoch=0.195]\n",
"Epoch 49: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.194, train_loss_epoch=0.194]\n",
"Epoch 49: 100%|██████████| 1/1 [00:00<00:00, 7.80it/s, v_num=0, train_loss_step=0.192, train_loss_epoch=0.194]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m \n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 12.97it/s]\u001b[A\n",
"Epoch 50: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.192, train_loss_epoch=0.192, valid_loss=2.140]\n",
"Epoch 51: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.191, train_loss_epoch=0.191, valid_loss=2.140]\n",
"Epoch 52: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.190, train_loss_epoch=0.190, valid_loss=2.140]\n",
"Epoch 52: 100%|██████████| 1/1 [00:00<00:00, 13.49it/s, v_num=0, train_loss_step=0.190, train_loss_epoch=0.190, valid_loss=2.140]\n",
"Epoch 53: 100%|██████████| 1/1 [00:00<00:00, 13.66it/s, v_num=0, train_loss_step=0.189, train_loss_epoch=0.189, valid_loss=2.140]\n",
"Epoch 54: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.188, train_loss_epoch=0.188, valid_loss=2.140]\n",
"Epoch 55: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.187, train_loss_epoch=0.187, valid_loss=2.140]\n",
"Epoch 56: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.186, train_loss_epoch=0.186, valid_loss=2.140]\n",
"Epoch 56: 100%|██████████| 1/1 [00:00<00:00, 13.21it/s, v_num=0, train_loss_step=0.186, train_loss_epoch=0.186, valid_loss=2.140]\n",
"Epoch 57: 100%|██████████| 1/1 [00:00<00:00, 13.70it/s, v_num=0, train_loss_step=0.185, train_loss_epoch=0.185, valid_loss=2.140]\n",
"Epoch 58: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.183, train_loss_epoch=0.183, valid_loss=2.140]\n",
"Epoch 59: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.184, train_loss_epoch=0.184, valid_loss=2.140]\n",
"Epoch 60: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.189, train_loss_epoch=0.189, valid_loss=2.140]\n",
"Epoch 60: 100%|██████████| 1/1 [00:00<00:00, 12.62it/s, v_num=0, train_loss_step=0.189, train_loss_epoch=0.189, valid_loss=2.140]\n",
"Epoch 61: 100%|██████████| 1/1 [00:00<00:00, 13.68it/s, v_num=0, train_loss_step=0.182, train_loss_epoch=0.182, valid_loss=2.140]\n",
"Epoch 62: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.180, train_loss_epoch=0.180, valid_loss=2.140]\n",
"Epoch 63: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.181, train_loss_epoch=0.181, valid_loss=2.140]\n",
"Epoch 64: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.179, train_loss_epoch=0.179, valid_loss=2.140]\n",
"Epoch 64: 100%|██████████| 1/1 [00:00<00:00, 12.77it/s, v_num=0, train_loss_step=0.179, train_loss_epoch=0.179, valid_loss=2.140]\n",
"Epoch 65: 100%|██████████| 1/1 [00:00<00:00, 13.20it/s, v_num=0, train_loss_step=0.179, train_loss_epoch=0.179, valid_loss=2.140]\n",
"Epoch 66: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.178, train_loss_epoch=0.178, valid_loss=2.140]\n",
"Epoch 67: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.177, train_loss_epoch=0.177, valid_loss=2.140]\n",
"Epoch 67: 100%|██████████| 1/1 [00:00<00:00, 13.64it/s, v_num=0, train_loss_step=0.177, train_loss_epoch=0.177, valid_loss=2.140]\n",
"Epoch 68: 100%|██████████| 1/1 [00:00<00:00, 13.75it/s, v_num=0, train_loss_step=0.176, train_loss_epoch=0.176, valid_loss=2.140]\n",
"Epoch 69: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.174, train_loss_epoch=0.174, valid_loss=2.140]\n",
"Epoch 70: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.175, train_loss_epoch=0.175, valid_loss=2.140]\n",
"Epoch 71: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.175, train_loss_epoch=0.175, valid_loss=2.140]\n",
"Epoch 71: 100%|██████████| 1/1 [00:00<00:00, 7.67it/s, v_num=0, train_loss_step=0.172, train_loss_epoch=0.172, valid_loss=2.140]\n",
"Epoch 72: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.172, train_loss_epoch=0.172, valid_loss=2.140]\n",
"Epoch 72: 100%|██████████| 1/1 [00:00<00:00, 13.37it/s, v_num=0, train_loss_step=0.172, train_loss_epoch=0.172, valid_loss=2.140]\n",
"Epoch 73: 100%|██████████| 1/1 [00:00<00:00, 13.20it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.140]\n",
"Epoch 74: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.140]\n",
"Epoch 75: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.172, train_loss_epoch=0.172, valid_loss=2.140]\n",
"Epoch 75: 100%|██████████| 1/1 [00:00<00:00, 12.97it/s, v_num=0, train_loss_step=0.172, train_loss_epoch=0.172, valid_loss=2.140]\n",
"Epoch 76: 100%|██████████| 1/1 [00:00<00:00, 13.59it/s, v_num=0, train_loss_step=0.176, train_loss_epoch=0.176, valid_loss=2.140]\n",
"Epoch 77: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.140]\n",
"Epoch 77: 100%|██████████| 1/1 [00:00<00:00, 13.54it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.140]\n",
"Epoch 78: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.172, train_loss_epoch=0.172, valid_loss=2.140]\n",
"Epoch 79: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.140]\n",
"Epoch 79: 100%|██████████| 1/1 [00:00<00:00, 13.56it/s, v_num=0, train_loss_step=0.171, train_loss_epoch=0.171, valid_loss=2.140]\n",
"Epoch 80: 100%|██████████| 1/1 [00:00<00:00, 13.66it/s, v_num=0, train_loss_step=0.168, train_loss_epoch=0.168, valid_loss=2.140]\n",
"Epoch 81: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.169, train_loss_epoch=0.169, valid_loss=2.140]\n",
"Epoch 81: 100%|██████████| 1/1 [00:00<00:00, 13.24it/s, v_num=0, train_loss_step=0.169, train_loss_epoch=0.169, valid_loss=2.140]\n",
"Epoch 82: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.140]\n",
"Epoch 83: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.166, train_loss_epoch=0.166, valid_loss=2.140]\n",
"Epoch 83: 100%|██████████| 1/1 [00:00<00:00, 13.29it/s, v_num=0, train_loss_step=0.166, train_loss_epoch=0.166, valid_loss=2.140]\n",
"Epoch 84: 100%|██████████| 1/1 [00:00<00:00, 13.63it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.140]\n",
"Epoch 85: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.168, train_loss_epoch=0.168, valid_loss=2.140]\n",
"Epoch 86: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.168, train_loss_epoch=0.168, valid_loss=2.140]\n",
"Epoch 87: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.166, train_loss_epoch=0.166, valid_loss=2.140]\n",
"Epoch 87: 100%|██████████| 1/1 [00:00<00:00, 13.58it/s, v_num=0, train_loss_step=0.166, train_loss_epoch=0.166, valid_loss=2.140]\n",
"Epoch 88: 100%|██████████| 1/1 [00:00<00:00, 13.65it/s, v_num=0, train_loss_step=0.168, train_loss_epoch=0.168, valid_loss=2.140]\n",
"Epoch 89: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.163, train_loss_epoch=0.163, valid_loss=2.140]\n",
"Epoch 90: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.164, train_loss_epoch=0.164, valid_loss=2.140]\n",
"Epoch 90: 100%|██████████| 1/1 [00:00<00:00, 7.36it/s, v_num=0, train_loss_step=0.161, train_loss_epoch=0.161, valid_loss=2.140]\n",
"Epoch 91: 100%|██████████| 1/1 [00:00<00:00, 12.57it/s, v_num=0, train_loss_step=0.161, train_loss_epoch=0.161, valid_loss=2.140]\n",
"Epoch 92: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.159, train_loss_epoch=0.159, valid_loss=2.140]\n",
"Epoch 93: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.140]\n",
"Epoch 93: 100%|██████████| 1/1 [00:00<00:00, 7.48it/s, v_num=0, train_loss_step=0.163, train_loss_epoch=0.163, valid_loss=2.140]\n",
"Epoch 94: 100%|██████████| 1/1 [00:00<00:00, 12.13it/s, v_num=0, train_loss_step=0.163, train_loss_epoch=0.163, valid_loss=2.140]\n",
"Epoch 95: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.164, train_loss_epoch=0.164, valid_loss=2.140]\n",
"Epoch 96: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.167, train_loss_epoch=0.167, valid_loss=2.140]\n",
"Epoch 97: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.162, train_loss_epoch=0.162, valid_loss=2.140]\n",
"Epoch 97: 100%|██████████| 1/1 [00:00<00:00, 11.86it/s, v_num=0, train_loss_step=0.162, train_loss_epoch=0.162, valid_loss=2.140]\n",
"Epoch 98: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.164, train_loss_epoch=0.164, valid_loss=2.140]\n",
"Epoch 99: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.155, train_loss_epoch=0.155, valid_loss=2.140]\n",
"Epoch 99: 100%|██████████| 1/1 [00:00<00:00, 7.60it/s, v_num=0, train_loss_step=0.160, train_loss_epoch=0.155, valid_loss=2.140]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m \n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 12.60it/s]\u001b[A\n",
"Epoch 100: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.160, train_loss_epoch=0.160, valid_loss=2.050]\n",
"Epoch 100: 100%|██████████| 1/1 [00:00<00:00, 13.27it/s, v_num=0, train_loss_step=0.160, train_loss_epoch=0.160, valid_loss=2.050]\n",
"Epoch 101: 100%|██████████| 1/1 [00:00<00:00, 13.14it/s, v_num=0, train_loss_step=0.158, train_loss_epoch=0.158, valid_loss=2.050]\n",
"Epoch 102: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.152, train_loss_epoch=0.152, valid_loss=2.050]\n",
"Epoch 103: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.148, train_loss_epoch=0.148, valid_loss=2.050]\n",
"Epoch 103: 100%|██████████| 1/1 [00:00<00:00, 13.20it/s, v_num=0, train_loss_step=0.148, train_loss_epoch=0.148, valid_loss=2.050]\n",
"Epoch 104: 100%|██████████| 1/1 [00:00<00:00, 13.05it/s, v_num=0, train_loss_step=0.153, train_loss_epoch=0.153, valid_loss=2.050]\n",
"Epoch 105: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.149, train_loss_epoch=0.149, valid_loss=2.050]\n",
"Epoch 106: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.158, train_loss_epoch=0.158, valid_loss=2.050]\n",
"Epoch 106: 100%|██████████| 1/1 [00:00<00:00, 11.78it/s, v_num=0, train_loss_step=0.158, train_loss_epoch=0.158, valid_loss=2.050]\n",
"Epoch 107: 100%|██████████| 1/1 [00:00<00:00, 12.61it/s, v_num=0, train_loss_step=0.157, train_loss_epoch=0.157, valid_loss=2.050]\n",
"Epoch 108: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.156, train_loss_epoch=0.156, valid_loss=2.050]\n",
"Epoch 109: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.154, train_loss_epoch=0.154, valid_loss=2.050]\n",
"Epoch 109: 100%|██████████| 1/1 [00:00<00:00, 13.07it/s, v_num=0, train_loss_step=0.154, train_loss_epoch=0.154, valid_loss=2.050]\n",
"Epoch 110: 100%|██████████| 1/1 [00:00<00:00, 12.15it/s, v_num=0, train_loss_step=0.153, train_loss_epoch=0.153, valid_loss=2.050]\n",
"Epoch 111: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.151, train_loss_epoch=0.151, valid_loss=2.050]\n",
"Epoch 112: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.148, train_loss_epoch=0.148, valid_loss=2.050]\n",
"Epoch 112: 100%|██████████| 1/1 [00:00<00:00, 13.06it/s, v_num=0, train_loss_step=0.148, train_loss_epoch=0.148, valid_loss=2.050]\n",
"Epoch 113: 100%|██████████| 1/1 [00:00<00:00, 12.31it/s, v_num=0, train_loss_step=0.149, train_loss_epoch=0.149, valid_loss=2.050]\n",
"Epoch 114: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.147, train_loss_epoch=0.147, valid_loss=2.050]\n",
"Epoch 115: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.144, train_loss_epoch=0.144, valid_loss=2.050]\n",
"Epoch 115: 100%|██████████| 1/1 [00:00<00:00, 12.96it/s, v_num=0, train_loss_step=0.144, train_loss_epoch=0.144, valid_loss=2.050]\n",
"Epoch 116: 100%|██████████| 1/1 [00:00<00:00, 12.65it/s, v_num=0, train_loss_step=0.145, train_loss_epoch=0.145, valid_loss=2.050]\n",
"Epoch 117: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.141, train_loss_epoch=0.141, valid_loss=2.050]\n",
"Epoch 118: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.140, train_loss_epoch=0.140, valid_loss=2.050]\n",
"Epoch 118: 100%|██████████| 1/1 [00:00<00:00, 7.57it/s, v_num=0, train_loss_step=0.138, train_loss_epoch=0.140, valid_loss=2.050]\n",
"Epoch 118: 100%|██████████| 1/1 [00:00<00:00, 7.40it/s, v_num=0, train_loss_step=0.138, train_loss_epoch=0.138, valid_loss=2.050]\n",
"Epoch 119: 100%|██████████| 1/1 [00:00<00:00, 12.74it/s, v_num=0, train_loss_step=0.138, train_loss_epoch=0.138, valid_loss=2.050]\n",
"Epoch 120: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.136, train_loss_epoch=0.136, valid_loss=2.050]\n",
"Epoch 121: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.133, train_loss_epoch=0.133, valid_loss=2.050]\n",
"Epoch 122: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.130, train_loss_epoch=0.130, valid_loss=2.050]\n",
"Epoch 122: 100%|██████████| 1/1 [00:00<00:00, 13.15it/s, v_num=0, train_loss_step=0.130, train_loss_epoch=0.130, valid_loss=2.050]\n",
"Epoch 123: 100%|██████████| 1/1 [00:00<00:00, 13.39it/s, v_num=0, train_loss_step=0.130, train_loss_epoch=0.130, valid_loss=2.050]\n",
"Epoch 124: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.126, train_loss_epoch=0.126, valid_loss=2.050]\n",
"Epoch 125: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.124, train_loss_epoch=0.124, valid_loss=2.050]\n",
"Epoch 125: 100%|██████████| 1/1 [00:00<00:00, 13.67it/s, v_num=0, train_loss_step=0.124, train_loss_epoch=0.124, valid_loss=2.050]\n",
"Epoch 125: 100%|██████████| 1/1 [00:00<00:00, 7.66it/s, v_num=0, train_loss_step=0.123, train_loss_epoch=0.123, valid_loss=2.050]\n",
"Epoch 126: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.123, train_loss_epoch=0.123, valid_loss=2.050]\n",
"Epoch 126: 100%|██████████| 1/1 [00:00<00:00, 13.48it/s, v_num=0, train_loss_step=0.123, train_loss_epoch=0.123, valid_loss=2.050]\n",
"Epoch 127: 100%|██████████| 1/1 [00:00<00:00, 13.42it/s, v_num=0, train_loss_step=0.120, train_loss_epoch=0.120, valid_loss=2.050]\n",
"Epoch 128: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.117, train_loss_epoch=0.117, valid_loss=2.050]\n",
"Epoch 129: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.114, train_loss_epoch=0.114, valid_loss=2.050]\n",
"Epoch 129: 100%|██████████| 1/1 [00:00<00:00, 13.29it/s, v_num=0, train_loss_step=0.114, train_loss_epoch=0.114, valid_loss=2.050]\n",
"Epoch 129: 100%|██████████| 1/1 [00:00<00:00, 7.58it/s, v_num=0, train_loss_step=0.117, train_loss_epoch=0.114, valid_loss=2.050]\n",
"Epoch 129: 100%|██████████| 1/1 [00:00<00:00, 7.37it/s, v_num=0, train_loss_step=0.117, train_loss_epoch=0.117, valid_loss=2.050]\n",
"Epoch 130: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.117, train_loss_epoch=0.117, valid_loss=2.050]\n",
"Epoch 130: 100%|██████████| 1/1 [00:00<00:00, 13.37it/s, v_num=0, train_loss_step=0.117, train_loss_epoch=0.117, valid_loss=2.050]\n",
"Epoch 131: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.129, train_loss_epoch=0.129, valid_loss=2.050]\n",
"Epoch 132: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.153, train_loss_epoch=0.153, valid_loss=2.050]\n",
"Epoch 133: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.153, train_loss_epoch=0.153, valid_loss=2.050]\n",
"Epoch 133: 100%|██████████| 1/1 [00:00<00:00, 13.72it/s, v_num=0, train_loss_step=0.153, train_loss_epoch=0.153, valid_loss=2.050]\n",
"Epoch 134: 100%|██████████| 1/1 [00:00<00:00, 13.73it/s, v_num=0, train_loss_step=0.142, train_loss_epoch=0.142, valid_loss=2.050]\n",
"Epoch 135: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.136, train_loss_epoch=0.136, valid_loss=2.050]\n",
"Epoch 136: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.140, train_loss_epoch=0.140, valid_loss=2.050]\n",
"Epoch 137: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.133, train_loss_epoch=0.133, valid_loss=2.050]\n",
"Epoch 137: 100%|██████████| 1/1 [00:00<00:00, 12.94it/s, v_num=0, train_loss_step=0.133, train_loss_epoch=0.133, valid_loss=2.050]\n",
"Epoch 138: 100%|██████████| 1/1 [00:00<00:00, 13.84it/s, v_num=0, train_loss_step=0.123, train_loss_epoch=0.123, valid_loss=2.050]\n",
"Epoch 139: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.128, train_loss_epoch=0.128, valid_loss=2.050]\n",
"Epoch 140: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.123, train_loss_epoch=0.123, valid_loss=2.050]\n",
"Epoch 141: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.124, train_loss_epoch=0.124, valid_loss=2.050]\n",
"Epoch 141: 100%|██████████| 1/1 [00:00<00:00, 13.87it/s, v_num=0, train_loss_step=0.124, train_loss_epoch=0.124, valid_loss=2.050]\n",
"Epoch 142: 100%|██████████| 1/1 [00:00<00:00, 13.70it/s, v_num=0, train_loss_step=0.118, train_loss_epoch=0.118, valid_loss=2.050]\n",
"Epoch 143: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.115, train_loss_epoch=0.115, valid_loss=2.050]\n",
"Epoch 144: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.114, train_loss_epoch=0.114, valid_loss=2.050]\n",
"Epoch 145: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.110, train_loss_epoch=0.110, valid_loss=2.050]\n",
"Epoch 145: 100%|██████████| 1/1 [00:00<00:00, 13.57it/s, v_num=0, train_loss_step=0.110, train_loss_epoch=0.110, valid_loss=2.050]\n",
"Epoch 146: 100%|██████████| 1/1 [00:00<00:00, 13.78it/s, v_num=0, train_loss_step=0.111, train_loss_epoch=0.111, valid_loss=2.050]\n",
"Epoch 147: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.108, train_loss_epoch=0.108, valid_loss=2.050]\n",
"Epoch 148: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.105, train_loss_epoch=0.105, valid_loss=2.050]\n",
"Epoch 149: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.105, train_loss_epoch=0.105, valid_loss=2.050]\n",
"Epoch 149: 100%|██████████| 1/1 [00:00<00:00, 13.76it/s, v_num=0, train_loss_step=0.105, train_loss_epoch=0.105, valid_loss=2.050]\n",
"Epoch 149: 100%|██████████| 1/1 [00:00<00:00, 7.73it/s, v_num=0, train_loss_step=0.105, train_loss_epoch=0.105, valid_loss=2.050]\n",
"Validation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"Validation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"Validation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 12.84it/s]\u001b[A\n",
"Epoch 149: 100%|██████████| 1/1 [00:00<00:00, 4.58it/s, v_num=0, train_loss_step=0.105, train_loss_epoch=0.105, valid_loss=2.130]\n",
"Epoch 150: 100%|██████████| 1/1 [00:00<00:00, 12.75it/s, v_num=0, train_loss_step=0.105, train_loss_epoch=0.105, valid_loss=2.130]\n",
"Epoch 151: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.102, train_loss_epoch=0.102, valid_loss=2.130]\n",
"Epoch 152: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.102, train_loss_epoch=0.102, valid_loss=2.130]\n",
"Epoch 153: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.098, train_loss_epoch=0.098, valid_loss=2.130]\n",
"Epoch 153: 100%|██████████| 1/1 [00:00<00:00, 13.75it/s, v_num=0, train_loss_step=0.098, train_loss_epoch=0.098, valid_loss=2.130]\n",
"Epoch 154: 100%|██████████| 1/1 [00:00<00:00, 13.47it/s, v_num=0, train_loss_step=0.0963, train_loss_epoch=0.0963, valid_loss=2.130]\n",
"Epoch 155: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0958, train_loss_epoch=0.0958, valid_loss=2.130]\n",
"Epoch 156: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0937, train_loss_epoch=0.0937, valid_loss=2.130]\n",
"Epoch 157: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0927, train_loss_epoch=0.0927, valid_loss=2.130]\n",
"Epoch 157: 100%|██████████| 1/1 [00:00<00:00, 13.39it/s, v_num=0, train_loss_step=0.0927, train_loss_epoch=0.0927, valid_loss=2.130]\n",
"Epoch 158: 100%|██████████| 1/1 [00:00<00:00, 13.67it/s, v_num=0, train_loss_step=0.0924, train_loss_epoch=0.0924, valid_loss=2.130]\n",
"Epoch 159: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0914, train_loss_epoch=0.0914, valid_loss=2.130]\n",
"Epoch 160: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0893, train_loss_epoch=0.0893, valid_loss=2.130]\n",
"Epoch 161: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0885, train_loss_epoch=0.0885, valid_loss=2.130]\n",
"Epoch 161: 100%|██████████| 1/1 [00:00<00:00, 12.99it/s, v_num=0, train_loss_step=0.0885, train_loss_epoch=0.0885, valid_loss=2.130]\n",
"Epoch 162: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0868, train_loss_epoch=0.0868, valid_loss=2.130]\n",
"Epoch 162: 100%|██████████| 1/1 [00:00<00:00, 12.66it/s, v_num=0, train_loss_step=0.0868, train_loss_epoch=0.0868, valid_loss=2.130]\n",
"Epoch 163: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0869, train_loss_epoch=0.0869, valid_loss=2.130]\n",
"Epoch 164: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0854, train_loss_epoch=0.0854, valid_loss=2.130]\n",
"Epoch 164: 100%|██████████| 1/1 [00:00<00:00, 13.64it/s, v_num=0, train_loss_step=0.0854, train_loss_epoch=0.0854, valid_loss=2.130]\n",
"Epoch 165: 100%|██████████| 1/1 [00:00<00:00, 13.28it/s, v_num=0, train_loss_step=0.0843, train_loss_epoch=0.0843, valid_loss=2.130]\n",
"Epoch 166: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0826, train_loss_epoch=0.0826, valid_loss=2.130]\n",
"Epoch 167: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0824, train_loss_epoch=0.0824, valid_loss=2.130]\n",
"Epoch 168: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0812, train_loss_epoch=0.0812, valid_loss=2.130]\n",
"Epoch 168: 100%|██████████| 1/1 [00:00<00:00, 13.56it/s, v_num=0, train_loss_step=0.0812, train_loss_epoch=0.0812, valid_loss=2.130]\n",
"Epoch 169: 100%|██████████| 1/1 [00:00<00:00, 13.65it/s, v_num=0, train_loss_step=0.0808, train_loss_epoch=0.0808, valid_loss=2.130]\n",
"Epoch 170: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0792, train_loss_epoch=0.0792, valid_loss=2.130]\n",
"Epoch 171: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0783, train_loss_epoch=0.0783, valid_loss=2.130]\n",
"Epoch 172: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0768, train_loss_epoch=0.0768, valid_loss=2.130]\n",
"Epoch 172: 100%|██████████| 1/1 [00:00<00:00, 13.49it/s, v_num=0, train_loss_step=0.0768, train_loss_epoch=0.0768, valid_loss=2.130]\n",
"Epoch 173: 100%|██████████| 1/1 [00:00<00:00, 13.43it/s, v_num=0, train_loss_step=0.076, train_loss_epoch=0.076, valid_loss=2.130]\n",
"Epoch 174: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0747, train_loss_epoch=0.0747, valid_loss=2.130]\n",
"Epoch 175: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0745, train_loss_epoch=0.0745, valid_loss=2.130]\n",
"Epoch 175: 100%|██████████| 1/1 [00:00<00:00, 13.02it/s, v_num=0, train_loss_step=0.0745, train_loss_epoch=0.0745, valid_loss=2.130]\n",
"Epoch 175: 100%|██████████| 1/1 [00:00<00:00, 7.52it/s, v_num=0, train_loss_step=0.0737, train_loss_epoch=0.0745, valid_loss=2.130]\n",
"Epoch 175: 100%|██████████| 1/1 [00:00<00:00, 7.42it/s, v_num=0, train_loss_step=0.0737, train_loss_epoch=0.0737, valid_loss=2.130]\n",
"Epoch 176: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0737, train_loss_epoch=0.0737, valid_loss=2.130]\n",
"Epoch 176: 100%|██████████| 1/1 [00:00<00:00, 13.09it/s, v_num=0, train_loss_step=0.0737, train_loss_epoch=0.0737, valid_loss=2.130]\n",
"Epoch 177: 100%|██████████| 1/1 [00:00<00:00, 13.73it/s, v_num=0, train_loss_step=0.0748, train_loss_epoch=0.0748, valid_loss=2.130]\n",
"Epoch 178: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0771, train_loss_epoch=0.0771, valid_loss=2.130]\n",
"Epoch 179: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0829, train_loss_epoch=0.0829, valid_loss=2.130]\n",
"Epoch 180: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0799, train_loss_epoch=0.0799, valid_loss=2.130]\n",
"Epoch 180: 100%|██████████| 1/1 [00:00<00:00, 13.10it/s, v_num=0, train_loss_step=0.0799, train_loss_epoch=0.0799, valid_loss=2.130]\n",
"Epoch 181: 100%|██████████| 1/1 [00:00<00:00, 13.58it/s, v_num=0, train_loss_step=0.0855, train_loss_epoch=0.0855, valid_loss=2.130]\n",
"Epoch 182: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0806, train_loss_epoch=0.0806, valid_loss=2.130]\n",
"Epoch 183: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0844, train_loss_epoch=0.0844, valid_loss=2.130]\n",
"Epoch 183: 100%|██████████| 1/1 [00:00<00:00, 13.75it/s, v_num=0, train_loss_step=0.0844, train_loss_epoch=0.0844, valid_loss=2.130]\n",
"Epoch 184: 100%|██████████| 1/1 [00:00<00:00, 13.86it/s, v_num=0, train_loss_step=0.0836, train_loss_epoch=0.0836, valid_loss=2.130]\n",
"Epoch 185: 100%|██████████| 1/1 [00:00<00:00, 13.76it/s, v_num=0, train_loss_step=0.0814, train_loss_epoch=0.0814, valid_loss=2.130]\n",
"Epoch 186: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0778, train_loss_epoch=0.0778, valid_loss=2.130]\n",
"Epoch 187: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.077, train_loss_epoch=0.077, valid_loss=2.130]\n",
"Epoch 187: 100%|██████████| 1/1 [00:00<00:00, 13.53it/s, v_num=0, train_loss_step=0.077, train_loss_epoch=0.077, valid_loss=2.130]\n",
"Epoch 188: 100%|██████████| 1/1 [00:00<00:00, 13.57it/s, v_num=0, train_loss_step=0.0761, train_loss_epoch=0.0761, valid_loss=2.130]\n",
"Epoch 189: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0732, train_loss_epoch=0.0732, valid_loss=2.130]\n",
"Epoch 190: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0714, train_loss_epoch=0.0714, valid_loss=2.130]\n",
"Epoch 191: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0705, train_loss_epoch=0.0705, valid_loss=2.130]\n",
"Epoch 191: 100%|██████████| 1/1 [00:00<00:00, 13.74it/s, v_num=0, train_loss_step=0.0705, train_loss_epoch=0.0705, valid_loss=2.130]\n",
"Epoch 192: 100%|██████████| 1/1 [00:00<00:00, 13.72it/s, v_num=0, train_loss_step=0.0689, train_loss_epoch=0.0689, valid_loss=2.130]\n",
"Epoch 193: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0665, train_loss_epoch=0.0665, valid_loss=2.130]\n",
"Epoch 194: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0663, train_loss_epoch=0.0663, valid_loss=2.130]\n",
"Epoch 195: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0655, train_loss_epoch=0.0655, valid_loss=2.130]\n",
"Epoch 195: 100%|██████████| 1/1 [00:00<00:00, 13.67it/s, v_num=0, train_loss_step=0.0655, train_loss_epoch=0.0655, valid_loss=2.130]\n",
"Epoch 196: 100%|██████████| 1/1 [00:00<00:00, 13.56it/s, v_num=0, train_loss_step=0.0637, train_loss_epoch=0.0637, valid_loss=2.130]\n",
"Epoch 197: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.062, train_loss_epoch=0.062, valid_loss=2.130]\n",
"Epoch 198: 0%| | 0/1 [00:00, ?it/s, v_num=0, train_loss_step=0.0614, train_loss_epoch=0.0614, valid_loss=2.130]\n",
"Epoch 198: 100%|██████████| 1/1 [00:00<00:00, 11.02it/s, v_num=0, train_loss_step=0.0614, train_loss_epoch=0.0614, valid_loss=2.130]\n",
"Epoch 199: 100%|██████████| 1/1 [00:00<00:00, 12.67it/s, v_num=0, train_loss_step=0.0604, train_loss_epoch=0.0604, valid_loss=2.130]\n"
]
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"2024-11-14 06:34:08,962\tINFO tune.py:1009 -- Wrote the latest version of all result files and experiment state to '/root/ray_results/_train_tune_2024-11-14_06-30-38' in 0.0093s.\n",
"INFO:lightning_fabric.utilities.seed:Seed set to 1\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
"INFO:pytorch_lightning.callbacks.model_summary:\n",
" | Name | Type | Params | Mode \n",
"----------------------------------------------------------\n",
"0 | loss | MSE | 0 | eval \n",
"1 | valid_loss | MSE | 0 | eval \n",
"2 | padder | ConstantPad1d | 0 | train\n",
"3 | scaler | TemporalNorm | 0 | train\n",
"4 | hist_encoder | LSTM | 17.9 K | train\n",
"5 | context_adapter | Linear | 2.0 K | train\n",
"6 | mlp_decoder | MLP | 1.7 K | train\n",
"----------------------------------------------------------\n",
"21.6 K Trainable params\n",
"0 Non-trainable params\n",
"21.6 K Total params\n",
"0.086 Total estimated model params size (MB)\n",
"10 Modules in train mode\n",
"2 Modules in eval mode\n"
]
},
{
"output_type": "stream",
"name": "stdout",
"text": [
"\u001b[36m(_train_tune pid=16674)\u001b[0m \rEpoch 199: 100%|██████████| 1/1 [00:00<00:00, 7.45it/s, v_num=0, train_loss_step=0.0595, train_loss_epoch=0.0604, valid_loss=2.130]\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m \rValidation: | | 0/? [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m \rValidation: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m \rValidation DataLoader 0: 0%| | 0/1 [00:00, ?it/s]\u001b[A\n",
"\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m \n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m \rValidation DataLoader 0: 100%|██████████| 1/1 [00:00<00:00, 12.52it/s]\u001b[A\n",
"\u001b[36m(_train_tune pid=16674)\u001b[0m \r \u001b[A\rEpoch 199: 100%|██████████| 1/1 [00:00<00:00, 4.37it/s, v_num=0, train_loss_step=0.0595, train_loss_epoch=0.0604, valid_loss=2.640]\rEpoch 199: 100%|██████████| 1/1 [00:00<00:00, 4.35it/s, v_num=0, train_loss_step=0.0595, train_loss_epoch=0.0595, valid_loss=2.640]\rEpoch 199: 100%|██████████| 1/1 [00:00<00:00, 4.33it/s, v_num=0, train_loss_step=0.0595, train_loss_epoch=0.0595, valid_loss=2.640]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Sanity Checking: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ebc5a5f3252e412aa219eb6719c95d4d"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Training: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "0fd7bb522d4041a9adb22d2767bb3b62"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "0216c3666df54c998f754fc130fd4804"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "cfe84ba304514fbb88e078c847f576ee"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "43aa99d2c99c48ff9e2ed34ad388f9bd"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "95f3dff3257845b1a51d854bb09cd233"
}
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Validation: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f804feea69bd40f9b65b08642ad46400"
}
},
"metadata": {}
}
]
},
{
"cell_type": "markdown",
"source": [
"We want to find out which model (combination) gave us the best results"
],
"metadata": {
"id": "wD-NlSvtBpGs"
}
},
{
"cell_type": "code",
"source": [
"results = nf_hp.models[0].results.get_dataframe()"
],
"metadata": {
"id": "khF4pAcaD5lQ"
},
"execution_count": 49,
"outputs": []
},
{
"cell_type": "code",
"source": [
"#show results\n",
"results"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 516
},
"id": "-LSgDzkyEAgQ",
"outputId": "9ad35f1c-2fa7-4cb5-a747-cf1f3d9860fd",
"collapsed": true
},
"execution_count": 50,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" loss train_loss timestamp checkpoint_dir_name done \\\n",
"0 2.655129 0.129968 1731565870 None False \n",
"1 2.514066 0.123124 1731565888 None False \n",
"2 2.617082 0.051310 1731565993 None False \n",
"3 2.575068 0.079982 1731566010 None False \n",
"4 2.638890 0.059527 1731566048 None False \n",
"\n",
" training_iteration trial_id date time_this_iter_s \\\n",
"0 5 e7fa3_00000 2024-11-14_06-31-10 2.655979 \n",
"1 5 e7fa3_00001 2024-11-14_06-31-28 1.286452 \n",
"2 4 e7fa3_00002 2024-11-14_06-33-13 23.295276 \n",
"3 5 e7fa3_00003 2024-11-14_06-33-30 1.073913 \n",
"4 4 e7fa3_00004 2024-11-14_06-34-08 6.733236 \n",
"\n",
" time_total_s ... config/scaler_type config/max_steps \\\n",
"0 17.945425 ... standard 5000 \n",
"1 9.728590 ... standard 5000 \n",
"2 97.134210 ... standard 5000 \n",
"3 9.956450 ... standard 5000 \n",
"4 31.846443 ... standard 5000 \n",
"\n",
" config/futr_exog_list config/hist_exog_list config/val_check_steps \\\n",
"0 [ERA5_pr] [pr, tmax, tmin] 50 \n",
"1 [ERA5_pr] [pr, tmax, tmin] 50 \n",
"2 [ERA5_pr] [pr, tmax, tmin] 50 \n",
"3 [ERA5_pr] [pr, tmax, tmin] 50 \n",
"4 [ERA5_pr] [pr, tmax, tmin] 50 \n",
"\n",
" config/early_stop_patience_steps config/h config/loss config/valid_loss \\\n",
"0 2 3 MSE() MSE() \n",
"1 2 3 MSE() MSE() \n",
"2 2 3 MSE() MSE() \n",
"3 2 3 MSE() MSE() \n",
"4 2 3 MSE() MSE() \n",
"\n",
" logdir \n",
"0 e7fa3_00000 \n",
"1 e7fa3_00001 \n",
"2 e7fa3_00002 \n",
"3 e7fa3_00003 \n",
"4 e7fa3_00004 \n",
"\n",
"[5 rows x 31 columns]"
],
"text/html": [
"\n",
" \n",
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" loss | \n",
" train_loss | \n",
" timestamp | \n",
" checkpoint_dir_name | \n",
" done | \n",
" training_iteration | \n",
" trial_id | \n",
" date | \n",
" time_this_iter_s | \n",
" time_total_s | \n",
" ... | \n",
" config/scaler_type | \n",
" config/max_steps | \n",
" config/futr_exog_list | \n",
" config/hist_exog_list | \n",
" config/val_check_steps | \n",
" config/early_stop_patience_steps | \n",
" config/h | \n",
" config/loss | \n",
" config/valid_loss | \n",
" logdir | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 2.655129 | \n",
" 0.129968 | \n",
" 1731565870 | \n",
" None | \n",
" False | \n",
" 5 | \n",
" e7fa3_00000 | \n",
" 2024-11-14_06-31-10 | \n",
" 2.655979 | \n",
" 17.945425 | \n",
" ... | \n",
" standard | \n",
" 5000 | \n",
" [ERA5_pr] | \n",
" [pr, tmax, tmin] | \n",
" 50 | \n",
" 2 | \n",
" 3 | \n",
" MSE() | \n",
" MSE() | \n",
" e7fa3_00000 | \n",
"
\n",
" \n",
" 1 | \n",
" 2.514066 | \n",
" 0.123124 | \n",
" 1731565888 | \n",
" None | \n",
" False | \n",
" 5 | \n",
" e7fa3_00001 | \n",
" 2024-11-14_06-31-28 | \n",
" 1.286452 | \n",
" 9.728590 | \n",
" ... | \n",
" standard | \n",
" 5000 | \n",
" [ERA5_pr] | \n",
" [pr, tmax, tmin] | \n",
" 50 | \n",
" 2 | \n",
" 3 | \n",
" MSE() | \n",
" MSE() | \n",
" e7fa3_00001 | \n",
"
\n",
" \n",
" 2 | \n",
" 2.617082 | \n",
" 0.051310 | \n",
" 1731565993 | \n",
" None | \n",
" False | \n",
" 4 | \n",
" e7fa3_00002 | \n",
" 2024-11-14_06-33-13 | \n",
" 23.295276 | \n",
" 97.134210 | \n",
" ... | \n",
" standard | \n",
" 5000 | \n",
" [ERA5_pr] | \n",
" [pr, tmax, tmin] | \n",
" 50 | \n",
" 2 | \n",
" 3 | \n",
" MSE() | \n",
" MSE() | \n",
" e7fa3_00002 | \n",
"
\n",
" \n",
" 3 | \n",
" 2.575068 | \n",
" 0.079982 | \n",
" 1731566010 | \n",
" None | \n",
" False | \n",
" 5 | \n",
" e7fa3_00003 | \n",
" 2024-11-14_06-33-30 | \n",
" 1.073913 | \n",
" 9.956450 | \n",
" ... | \n",
" standard | \n",
" 5000 | \n",
" [ERA5_pr] | \n",
" [pr, tmax, tmin] | \n",
" 50 | \n",
" 2 | \n",
" 3 | \n",
" MSE() | \n",
" MSE() | \n",
" e7fa3_00003 | \n",
"
\n",
" \n",
" 4 | \n",
" 2.638890 | \n",
" 0.059527 | \n",
" 1731566048 | \n",
" None | \n",
" False | \n",
" 4 | \n",
" e7fa3_00004 | \n",
" 2024-11-14_06-34-08 | \n",
" 6.733236 | \n",
" 31.846443 | \n",
" ... | \n",
" standard | \n",
" 5000 | \n",
" [ERA5_pr] | \n",
" [pr, tmax, tmin] | \n",
" 50 | \n",
" 2 | \n",
" 3 | \n",
" MSE() | \n",
" MSE() | \n",
" e7fa3_00004 | \n",
"
\n",
" \n",
"
\n",
"
5 rows × 31 columns
\n",
"
\n",
"
\n",
"
\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "results"
}
},
"metadata": {},
"execution_count": 50
}
]
},
{
"cell_type": "code",
"source": [
"forecasts_hp=[]\n",
"future_met=Y_test_df[['ds','ERA5_pr','unique_id']]\n",
"id_test=len(Y_train_df)\n",
"#for efficiency lets just forecast 180 times\n",
"for ii in range(0,180):\n",
" #see the inputs to the models\n",
" forecasts_hp.append(nf_hp.predict(df_total.iloc[id_test-15+ii:id_test+ii],futr_df=future_met))"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000,
"referenced_widgets": [
"2de0df277f9c4e13bd090350fd693f1b",
"c1948c2c11344bb1be61f11e961dac32",
"bfaaf4f1c43144be982b2bf84508d1e1",
"d7e134d6558545c184cdaae1fa194227",
"adf53b167f364491adb82750bd004e74",
"7d4883f82171444a8e074aca4d536552",
"b0f7b7f2a9824dc99566103f8a742ab7",
"f26845ea10d640998210d2b0d8dc8897",
"fca9874924434b90ac0aab89628a895d",
"d3958ae0a3b64d32a89fa5234c9e5a3f",
"36a23be2151e4373a8d5b2e89006b992",
"61d09777a8fd492a839e13f418e05e03",
"842bc1234ea94189bb9a9710af85e224",
"311a7462ff7c46d586b6999fe730fadf",
"bc4e7b806bdb4e5c9b09b2942e4cebe8",
"d8f9ef58cbb844ff9dcf2ddbebcb8287",
"604b290dcb6e4ddfb05eec65eb3c26f9",
"ea3f50fafdda49b5a09772c872f7ad57",
"fc7aa106b73c46c0b9feeb3fc62f8517",
"98a4807bed5143978bdf0cb58fa18dde",
"261b1c32ba7c4960b294c2e6722e4391",
"df6ee0caecd74234912ca187692af613",
"89d59d20091a4274a9b20932eca93c0e",
"0501443dee11407795ac05b13843d57e",
"52bcdaa7d65d48129538e36f8cc43b78",
"dda09b7de8c64390a4e6a5561c347be2",
"da0d46c9b8e74aa19f8a8b3131d8c1c4",
"f0d7d8a1facb4d5dbd873a8ce8d1a0b6",
"eb5bb0a773ed42e8b619ca19cb97896b",
"2e589d9566eb47cfa5bfda5edf3e1c3b",
"b1b48d3c9455499196e0e28017078fa3",
"5fd8277732a84ce9a15313aa53e49bb8",
"e93300f60ea84f3a9eee4a03c1287675",
"aaad63d251eb4db2a3742050f9bae01c",
"f254d9b75293409b8d16bf8735321627",
"141acb65ffe44a2bb19bdabad2cafde3",
"5dbdfb47983d4ee889dbebe5b9b68631",
"c288ebe35ab04d69b7c2595f5d9f6ff4",
"4ef461ee14ed4ebf8fe2682e483b2446",
"72ebe6c8927641fb89668620b28a3edd",
"f0f4cf717f75440cbd7c73e3a5e59d52",
"b50c8991d3154d02b12fbd807c46d6f8",
"d687fcf0717048a2a926bbdeacf600f7",
"cd948da670bb4f8fb48aad4adc370dd1",
"07e8a81964ae4edc80240cc0200d6bfe",
"fa8f9df4e2d5472187d181fde0bd29c0",
"64c63460083e40cc8df384961bbf792d",
"69eb63e3b93e44f6bb1ef1a9fbbaf15b",
"2b32ae6515154b648615303c9677669d",
"fc4da0ae732d40d38bfa596f67c77652",
"156bac2206d64b1c95f1000bf5d5d803",
"07bba262fd114066b24eeca930810e84",
"3bafac19cb264dfe8746765360a7db72",
"9fa5bfb6f1e4463083a766ceaadce76c",
"feb82e7e2b604a0eb2d1077693b7e8bb",
"1afaa499508346a598cc57664e56a10b",
"df469b4be8724866b71bd4695db2b13e",
"960fe8a404804c7a9eca089e333cd8be",
"453c08e0a79344f484049d8acadd6c46",
"acf465b87e6f424e900d8c475aa39293",
"b1b6c93748a94fb2913e555f5cf669dd",
"595f9892159949de995f6881ac401ec8",
"a72c493988ef4a169cff5080118f2b0c",
"8656be74db224dcc902d990cb2002a66",
"bcc16486ae59493ea3919b42715f2e34",
"94ccf3a46ae9413b9416f6a71c8db6f7",
"d65bdc8c1bb944638e4ab92a31d43c49",
"5a06a3703bbb4fe38b7de03e9b794515",
"20c92ed0b134450197a0d532fa2cdc2a",
"8b758fbecdbe48bfae4cff9a99acc5d2",
"c342cdd463a64db0b5f8fd3759935d23",
"721f56c494b04cffa3281eb832a6d5d8",
"fc6847e1eadc4f2384f998908f1f4887",
"02bcfa17f2e9491782bbe0cdd69bb286",
"5a28b86ad6d94e5faa885c66245fd614",
"8b3d2da14c7c45c596f42bc3d972cf1c",
"8500c5f568384a6a9cd7dd6791a4b123",
"614265052f494d5393a42fcb00857878",
"827c7ab80eb642d6aefad90274d906be",
"5817ad6a054e406ba64f4dbb3ee4b418",
"7278444a843441d9902cb3121f7d1989",
"67676abd3852484da916abd2bbca5dd8",
"8460cd258ec240bca82dcb67a6041f2f",
"95b69b5fee514668a6b370d71efc9653",
"d1c417b9b1be41abb6d6b4f3d56cf7d0",
"031c67039d68496984001ba6a323359d",
"64072af318e74ecdbc400acd4284f441",
"5c5369c26e594b90a98666ee2dcf6c7d",
"a7b75c8ee2b548419fef546a428899c1",
"faec30e17056473e946239159b353d7a",
"a9ce58cf21c6417fbb02215e22be9c02",
"9b75fbe2fc0c4d198c9e22a06e752f08",
"d9c27e9021974ad99eb193cb0c890c81",
"8bdcad6a40e34a769da7aed993d03919",
"cd9a598c08eb46bd9066efcfac2e9c76",
"817a042e15c8479d80a03a1c2989f7b8",
"e5d0c31c3cdd49f9b0f92b99fa21ca13",
"50ddb22024bd4a01a68719dda8d6fc66",
"1ff575989094400781361670a86cd51c",
"2ac1739193e4411184e08aea5e851485",
"f48e8133a19548dc8da49c66e7663c7c",
"7202c206beae415db15e9c7db6e8d143",
"2d34a83830d544c7825f6fb159c2fe3b",
"01e4b8f4e5684398b35b968f72ddbef8",
"ba1245f167c1487ab7300a8846b4d8bc",
"335ae1d186c44c13afcaec97e3722ae1",
"c05d1df365eb45a6b68d3f78ff8a6646",
"ffa8816555a94d768c0d49c2f869bf84",
"73cc48d318324bb795fcb16123b30065",
"8ccadafdeeed422688c675b30d4d9036",
"47e553b000ca42c89ad05b5b6fe091c2",
"5fad241a363a43a193fe838bb655f464",
"bcddf2fcc9fa4c33a20aab9e16f862aa",
"be6b5b13f1d74566bfca13523b9494c0",
"bd25c8fa8a8f48688ffcb1aa02067d05",
"14a3fb6c19cb47ebbbc3d726dd773688",
"e26ccfa0249844e0b6ef669ba59f6c2c",
"64a6a55553e24e31871f9dbfbcb6e23c",
"eaf5b4702aaa4b369255e453fee84fbe",
"208f058534164ddfa1398eb25c96ade4",
"851e8f00f39e456fbd8623f5e8b28e3c",
"49a8f34a4cbe4dffbaa8aed1035486ef",
"1348404032724af48ead99f111a8a3d1",
"77220aa4c7e34b4d91da63b2020f73cd",
"32a76fca90b14adaa93f2d4c91d9b044",
"d9c5b35d7356496393d2f98b32f80bd8",
"6643bbaf5a3a4ee1bc3ed876ae657d7a",
"bcc78fb70d44494a86626ab36f745e65",
"09b04bf61b0b40ab8be892192f4d7df4",
"4a211883546d4aaf9a3ba922135e953f",
"2a4cd546010243dc8cc7980624666989",
"db4f6dfb7aa64ad495da56dbbd25b345",
"bcb54abd6ab645ca8d7c457bd3de8fca",
"e0b1b90c859745649ba278d052f665fa",
"5037d6ef00ce404c8107786e8e968fbf",
"c08cf0d842814e349df5500cbf6bbc49",
"010c2cfb894548f7b5c89a8a1bf08733",
"a7b89e32f57d42daa345ec824b8392e5",
"d40a6414ddee48e9acf2ea9b6c960412",
"ae56c53e5b674f2eb251a4033e31ff9d",
"e90adf55b1ec483cbebc7537b885c820",
"ad45d7233e014cf28ad75cbbe7ca8470",
"bee9fa5dbf6e4de29a491ed7c4d1d239",
"37c7688384d745d8bee684ce19563213",
"74cad331f2364e939e45087a10418fbf",
"b9e8b25dae3145ca873579cce4a67650",
"16fb3774176d43df8af8c7f73509a40d",
"13510e30303d476192af45c95a9b9378",
"ee0125d5d75549108a79b03f2888a04a",
"2662e3e5f48b4098b1ddb91f2f3d4d74",
"8f66a4755ace48e09b36c41e3dc040dd",
"c012623bcd904606b4122cc4ad7a1fb1",
"f31ed4db10874846ae80f5585ab4a052",
"9d886e8584f541d29cc7c0f3baff670f",
"f0c52da6bdda432d9b2d090cf773d971",
"8421f560543d448da9d02ff9d960033c",
"ab37ccdf4772409bb1591509b12ae6b8",
"7f1774018081402c87f7eef50c57fe58",
"473b55db8f474600a8c18298699a2b58",
"8b3246113b234276b237cc11396ed5a3",
"13f916ef5cc7472898078558bb7cf4ec",
"11dbc16f82004fdca92231bc192cb698",
"d8cc1a144b4b4237b3f803fa1669d10b",
"ea5a4d03581c42c3896285e18aa9c807",
"9aecb394b78e4bdc8359e78f36abc23b",
"c03099c03e7a4e45b5d263cffa8a563b",
"de170fa42b494690ab3b79ff802f3873",
"b6f1be5a971440abae7c65cba729043a",
"a95798c0c4134e4abb0473d5222bcc1e",
"1d44386a4df74f469ad6ab126cc1359f",
"80a01bb4b94a45ee927fe10475f3ee82",
"d7230e73bb0b46189224d4dc302c9479",
"2eeeb8c9f00949f6a65debe9ddd688b0",
"35bf3028ab624b95b1c45e5d1f1fb10b",
"fc5c5242e4994e6999d6a921ac31dcc9",
"ce71bb5c60424fd29ed5928a12a5044a",
"8aaa194b03214b2999ab1e7c5336589e",
"ebd22c5039f847838b709a3c8a24c510",
"76d621ed1fb24f0eaa59e125e11d4e6a",
"00118ff23db44f0fbe817cc9ffa55f96",
"a20c6f365b514a33b2916ea0f0fadabe",
"e4a690490c5e4e65ae3df63a060bb4e5",
"3c88b64213e34a889c14da7be6f4f674",
"dd47eaf05bc04d07a830edddaa0fee42",
"bf3c03b301164ba68b8b5efcb42f3866",
"f72f8eabfffd4d86885cf89df72e46fe",
"eb6ab8d1a4a64cdea0b98b76d76ed236",
"8835db01b250450cb9424668e5b02d58",
"472c46a0b0024d3f98c412038fa1b8bc",
"4a6894e7d4aa40eeae6652d1ff684b74",
"1c880eae91aa448b9b4edeeea2bac94c",
"9a44fd180ce541ef87799c58f7df2980",
"c01abac090144e80a862121539d2bff5",
"fd917ffe4ebf405f912663a501f2f1be",
"2b7ed353010d45b296801a9eba251531",
"c2f44f95c77c4cce8076af89266585ba",
"96c1269fe27645dc9f8f78b128c2c58f",
"d0836ba016d74d718d840bfcc29e40bc",
"f8ae01bfeabf41ae92712e8cdd363cf9",
"a7d4d1d688c743a5ac120ec0db39478d",
"46b31aaf4f914ca68ee39e8f37fe2e84",
"116ae02fecaa41e3805bb6a9c3d5f5eb",
"4dd2051722ef42e489fb810ceb138b20",
"49ce9d3c061847feb342e0d124cf4596",
"fb6a0a06d31640ad87bb4a4e652dbf0f",
"f6f202e2a653418780123e560c348b7d",
"0ee2a752b0b44429aa12d532366f1ab0",
"b1db05870fd24cce9de188e265bd11c8",
"18c092f872504d86908aa6362d4d5611",
"6aa2c7086b534d66b5a3270cd31ee0b6",
"041482b6bc1d4042b52503e32f1c5cc4",
"851fbd12872c4b87ba9d085311caa48e",
"55c3c04ac72c4aadbe8b55a73b95bc55",
"4401f6c21c394ba8a9072d8676fcebf5",
"76b075c29d314ff4ab13d33c433a6f8a",
"7206fc08dc6e452ea04917615d3dfc2e",
"ca882c51c7894a3980b3ba41c11db96d",
"e395e0f112ed4bfba93085551805d8b2",
"8eea5c99fb734e0fbb80a85b59e30136",
"7b982e5f921e469d8db82319b8820be6",
"eeeac16cb7b447029abf57fd0921bca6",
"404a0f1cf61d4fb7995d5b0e48e0f174",
"6598dc20fb314f7cb56f4d1e3912a078",
"ef34ad9a4bbb410fb98ea6958810d4f8",
"c04b29f4f306446db4c8170aa5e08c2a",
"deeb42eeed76493ca0b920f4041c801c",
"f3b07f61f9a84af28797ee64c0301e38",
"8b89e990ca5b4ea7ba49767a147e7c1d",
"78495646f0164aeeb9093bf5c1e6a5d3",
"1b5b4e1526b94a688fa1806f42f5bff1",
"f96ce49ebe0f4f48a9fb3aa4632f2a4d",
"43b390fa0fb443168ed8d2bf2f19b62b",
"7c23697bfed04fa491c1cf907f7d18ae",
"c74789c4e7ce4cb6a2b35b23978f674c",
"39406616e5214d6eac57a8e4dacd710b",
"d007fe2ab0f34badb37bc01cb29ae1ff",
"0aa5cb154bc64db09eb31576e1cb5a58",
"300476cf0c3c4f669d3bdfd5fb41b6bc",
"f2d6012167e64e82bdaf50a816d86657",
"320a7bfd6a1b4ce1879212c489ba62e7",
"ff75b70f6bce4053bf2575cf2523255d",
"f51149a8f31a493797725b8cf9af10c7",
"966e5a6344ac47c09607afacc99cd48c",
"a2d5e3dbe8de4d5587bb8818449fe35d",
"5d80b15f40a04f6bbda4d88c3030cd38",
"7f5ce382ef634dad91fa737994bdb0ef",
"c94b24b264a949c088823ec0529b8881",
"e715d96c796d4b14ba21c0920f5ffcaf",
"e80325665aeb4342a8eefd385c400ac5",
"166d08282aa4475780fb5c565787291f",
"da166d8e565145369d48c072f05769be",
"a81adabf59014e5293985c5e7b3e37c0",
"660fd538deb144e6a28ab3332fba0ee8",
"ab073172e1cb4914a6fd1df08851fda7",
"d040f2c8f1794783b783f06db77bfeb0",
"a0b401bf17cf49429cccd4813f6dd9ff",
"5a1372af7aee4ea9a687d204c91930d6",
"57949abd44f647c9a548ac9d43611fbc",
"1af511d2afc249bba534e09ac859b44e",
"7a866c7fd7774a16911d2d8fefd0c666",
"52203832c7be459ba6495db75c41d4fb",
"1354ec4e0b4847aea4fab1a053bcad28",
"ba69abdac7aa41de915ec4ebb3bfea42",
"593d861e4cab4ed889d4df1c5f1f7e45",
"e2975d86102b41f08491d6bf903949a3",
"cc514b25f41c4e46bf33c6d30b7bcba1",
"631602a174ed4bb398a8df9ea9b1d887",
"5b203995c876412fa97871548df507bb",
"9edd6e743aac4adca12a7a4e1a561e87",
"f80f4a089eed4d2e9910b1739f5c06c9",
"ce78e7b87652401faee68aedd2fb296e",
"f3e7d678e079420b8c5040f061a1efd3",
"b1144418cee746b9b24ac5bb0361ae2f",
"b9c484c5fe4344f5aa41dd6731b656bd",
"b4ce80d178bf4969980ee7d42dfc028b",
"d89868cdb8224e75a1e739013bf4055c",
"eb21025ef326416ba410f52284aa81b5",
"37bbde6161e14395921400b886aa74b8",
"fe53c0b071c341488f6a435539b9cab1",
"e1271427e5204bec8ef17afc5bcbe4ca",
"f132b54d312741bebd689a7c8a0796b9",
"8d6bd3bbcd024881be82edb89629efe2",
"9e8ec402d3014962964ae79182b2a804",
"132c2f6521cd4d1481628f4da75735d1",
"1f8ff36ddfe841699378b09b65fb2f19",
"7f96c884271d48168fe28ba970834e29",
"ae0bf3021f9e4a969b0c907af3882dad",
"8decff30ec4143e982cf42b7aede0c63",
"4b4fed30f8574196a150d91643fa50e6",
"b8723cefbc5045a5ad7fdbdacc48bbd0",
"54e84343bf0f45eb88958fa0491e7e6c",
"dced0b89872f4673acf679ece3381856",
"b5a9d9f21a894350aa7200ce0471bd27",
"068fcb58b21a4639b8c760ee7cbc75c7",
"9a66623738e545a3bdaa0f0d7cdb9d71",
"5269975926324f76bd6b2b4c85907ed5",
"81c39c85cae941a6aa9e961e8e56719c",
"f2cfb6f8f43546e48ce027e4b605d2de",
"538ab89726134c16adb02168fef88133",
"79877f3f1b144c209a7177385b9b9fed",
"a7cef3209a0f4ea898259523b428de24",
"16ba914142db4565882e26fe056568b4",
"1d5ecc3b073b441bbeb594ebce59f7ee",
"e0a2cc19860149239b7f2d125ae04ae2",
"7abad4dc5d9249feb1c759ab26b1ae43",
"88bd023e735e4505ba8d2b2f6bf823f1",
"306f3e6a4b7144628ed762c0ad6f7572",
"d53bf04768d04c9096abadbfc0901fc1",
"52b8bdc3c59344b8b229b54d2053a9d2",
"08af8e4edcb24157b7287b6241996fb0",
"446fdc4c98814eada0b68fbe8e9b6d93",
"6f87d81964664017829156f36f7775ab",
"a2b9f1cf2c344dae98944882154c2ec5",
"c6abf661341d4f70a2ed8854f936055c",
"38ba7de7f7c64ef5ad258ea57712a8a4",
"cca7f539bc6b4f9ea828e7f5b04f0243",
"4cbb47ab726d4f5085771e1bbabcf666",
"5ebf869b0c9744fcbf993f7942c4c2f1",
"9f9305c3c25e40e180c04eef34711ec8",
"b5e965b8807b43f2919e2f46c63e8d0e",
"2cb9db0e9f39404088a73e97c78e31ca",
"439576b2bfa240b7be01694ed90eee6f",
"05b43651f79d48df853ff45a9b3619d0",
"a51475ff74f140a8b9164667da23ca89",
"bc2898fd188944c0a828dbf8acf57a0c",
"91b2a14ab34d42a9aa0e48e7fd1f68ba",
"0c14b6ef3dfc4f3c9e7af05547714a5b",
"662e17bc55f344f5aebd331133fe1e9f",
"8542b13a61824ce2bc3f6305439a1fe2",
"c21fa9a0220e4c3aac05c95253c9c9c7",
"2c1d471ba00d4ccc9225542df7c3384f",
"18fa6a25c1dc40e6a4c50f8938a22d83",
"f0249c3609124e9ab6cc79b4cbeacc74",
"80ec810bf01745b0b480029ce484b698",
"524fe06649af48e5b0387bb44ebe6e13",
"07b1e3b19942478082c95806db1928b3",
"9a9800de091d47b5beee300d3a46e766",
"850aa340e00344f6bd28c88b67b5124e",
"63f8e4f928e143c08ff4aee7d7b381a1",
"378b310a5c6c4b57a5a399f47dbf792c",
"e3999db5c8004f41b360f0e36b23491b",
"3a032238bf944bc483ac6b00ab34ec9c",
"10bc453ff04b421e8b5ae6eacff26796",
"1eed8588862e4a8dafeea23bb96ea38b",
"17a845241ebf4610a5019ed1e6bb283c",
"37f89c34f69446088153c2c4db85d7a5",
"21d624f1e5d149268402cb8ec5113c6b",
"93075c82760846949d850e9f7de1c181",
"046d33b7b2ac4b179c604481afdb3508",
"3cc280ccbd5b4fc89e4ffd082d045d97",
"0c1b1f40fbd340e1b4d61ff0c726f180",
"f8a69706fc8144b98ce2ed08e9604adc",
"4a902308df304d1e890fd49acacb9038",
"bc42567715ad4cabb98d9cce7cf4de90",
"fc3029ba2e6b4c8e9ef744fdb5335921",
"289f4dab1f58485991eda8be16b7614c",
"2a65a3116a2346978551adfac9a497d8",
"1c2e1939324c427f9347d193993551b1",
"245a9ad5dd84486588aa529bb6baa6a2",
"425e406cf0084c61b4e58c9c0ea71510",
"d0ef79a12ee2498c95669730477842c9",
"4cd6b6ad1a6d4439a50fc0a8ff454f99",
"a1d0a63bb9204c249619b8504e5893c9",
"c3aa64edb7cf44148b3ece528eb00c31",
"fd5fc1ac05e147b8b91f7872b1573a70",
"0131b393847f44e98e11e41cf52ad101",
"578beca11ad84dafbdc0e279ca7d5dab",
"a16cbe2079094bc58b6a8f7e3b6337e0",
"51a1fbddbd4b439293fc67d6ce3b21fb",
"df0184ceeaa64df088915a326c8ed313",
"847df5c68eee41b1abfca6883bd77d3a",
"24285f73691b4139bb77086e35009e4e",
"e8787d7ec4db424b86cbeae3fdfdab92",
"b2e527d5555a4d4ab7a72cf930088cab",
"372a099557d64ba284068d91171cb035",
"f03c1edd6a6943e19f7d48d6cd5b3640",
"e2c34cf5620d436db7620a600c218441",
"2da06a8d8d0749e6b9a99e2cfcae2b7b",
"b4e2f4ba0eeb4d29bcb4e60fd1868f11",
"c039b6e7e3074a9ca8191f92b9c77547",
"6a299f5c6efe4ebc8fb010d08d6d096f",
"4ba9248f0e384ac489bac9c49ee84bb8",
"3fb417b5f5a64cb5936cb706ab7b4c18",
"055263cc384745bc9623d21d2e8abdeb",
"fa23aba75e7e40078a61a6ae65b7579f",
"da9c9e73ec6f440bb6d06493c6fad98b",
"1af25657bc694ef7a05ee85b7a678a56",
"7323737f2bc74ad7bba69a614069a721",
"57e7aa61dcbe41119fcc597cb641e43c",
"554df21c0b314fa1b46d1d8e697ce83c",
"a813ad1140a041f9885b899e6c0ff8f8",
"e20a3d9926a74641a36395ac86a73ea2",
"17cb3bada74d49cc8db4eecab18b356a",
"965dc21ae966480795b42c495ea687c4",
"90a291d0928b40bab422e27cc7b22c5b",
"04511c89150a4f95b0c13bb92011ec36",
"bd7b615d96544a3e8e9a710db4305c53",
"430ffaec098e4e8cb7112811a1e0c327",
"86b2a2ce75ef4aaea3a17038f5311018",
"5d49467abebd4aa88037e26d91a05a96",
"e52b2669a8594db69a8c665c8fc449d8",
"4589fa58b20a48879590c889199f6eac",
"4514db05950a4902bc252643194df6a9",
"4ed93855012348479e3ab0f824da2f2c",
"c384229b5f3c4e5eba2120dda63fcba5",
"bcf43b16923140f2917c03e2c96184f3",
"7533cf059a2648b682fde07351b75ae1",
"5ec2f3a8413440be8d3dcb17d6e7a361",
"f2c7de62bb3d4310ae07930b2f6e33cb",
"cdc81b76c5854f58a7385c0ca8d77b6d",
"dea2d892dcd048f8a6392d2e5e3d2407",
"d6a04444134944bbbf324ffd4caede0d",
"4878aa8876544f679fb288fd26215a15",
"5611ce7404334ac8b52c1dfa80bf5370",
"575e27007ecc495c8a144aef5d2e7b2d",
"1ed1581d93744f94b2e27e3adb36d84e",
"d32c4f777c0747fbb75000527288fb1b",
"2e9440a497394644b3d60ab13574a323",
"e71b1fd553614438bec946379e161e41",
"e1735f98ed1a4a9a9448b7da3420f4f4",
"455d7c6b38444e14845508fa7d5f3d10",
"fc6b96423b554c739da18968658d139b",
"822ccdb4c42744e1b700b7c3eb7c2ea0",
"9b57836b660b4a2d8b675875f3ca6b40",
"8d58514fadc24062a5f66147529d784b",
"aa507adc6a434b62a997be88030e0a38",
"4cf5535e6b64405595a365e1a46ad615",
"306178ebf88a4b569b8568f5d734febe",
"17270296f2be408686ecd5fd27732339",
"122422eb961d437fa929c77f0b5fea36",
"799a0a42f9004dd98d659fc600bcb102",
"bfb6f61182294c4ca5fffa64ac108e96",
"1c9caf72ee424042b364fa309ba3c8e1",
"ef647aab07cd478f80f5dcbcca16c1e9",
"f18f65e92b6d42f5b7af03296f7b59c1",
"3d102394a7b04cada00cfb636a076e16",
"a520f6fa723942b79fffb06ff9be2baa",
"db4eb85114554cf89fa4ed362768b95d",
"9c05c5b6915a4b4391de15c874ac6a23",
"4f084f7cca294ddd91e012397724d45f",
"6ee726b6631b47b5900998589199c1a5",
"b33d16914944458d82b97ed122d026f1",
"61adc18b374548b7a45bdb549926e167",
"d2cb1797178d4d99b89f52a060abd9e9",
"5997bb0450f34da4a3a7ccb12445bec5",
"6cff61aef13843ed8a2093b7255b7ac9",
"b86e4f131eb247b3a916a727d1299695",
"a6926c757ea6485fb7695be61a6c9535",
"34a25ab4a8f84472a2c1f4c911d5dca4",
"432563f2b902429cb50224d1ff02b90b",
"cff82f655fc043bf9d69bbad65e4203f",
"00269fddeb7e4baf8d4fe7e7fb0d1c29",
"72ff4941099d40e88e3d18b4d1a27110",
"b3841791f24f49778fb2ef2ec6920f79",
"78fda0c89797476eba9c39a78870557b",
"11114a56ec544592ba0ebd26ce4544be",
"356df1d43b404dbca68ddc7944e8ebf9",
"9c7a6332ece94bca991c1fe3fb3cc6bf",
"eba96f53e3de472f9f7835f9a576861b",
"6fcda17183f547a0a0e4e5e209a774cc",
"6886825442aa4966b516b0906f6adb1a",
"32895cdcc7fc4d238328297ca06cdf0e",
"48f5fa4ee17a42428a2e4c5a07a047b8",
"6a5e884564294e96ba03b87af4c4d422",
"93b9d8fd82a145d88f3f513867f2b452",
"b390e282014648af907a89e1d8c94b93",
"6198ae7d419b47f8894579620add12c9",
"4e90d7affe9c45248a53ab049b90697e",
"bd33b94ee5a84d7891b89882bf984e7f",
"a25ffec785684df1bc4627d609a3bd9f",
"10baf87004404bdbb906a17b51827ac7",
"089c719f95c946c6ada4bdc28a21ae7d",
"d7b33f338cdd429191ba9b5d2e2b7469",
"ba93dc25e573408abfcc5e8d1b89afa0",
"0f4ce7e169a842fd8fc6dc0002fae07b",
"2d51575c7f7c4178bfc5f0e107a29150",
"53f950c843084ec6aaf71541f84e9f4e",
"cfa7ec6d21d24dd8a6b350dd3e715ffd",
"ac08ad4339384e798db7a059d81c3969",
"829420b9aa354c3998de29e67c0eced3",
"e037521a122c42719e25fc0db051154f",
"e12f59db082d464e8aa6cb332bbb3f08",
"c938cf7e474649b7b9869c21732344de",
"85cb983ba4b84b9bb92ef585f35103c2",
"65ba9ddbf04c4dc8bd21e26f994144c1",
"94affa05bb534c109163319fe2835fc1",
"4441f599ee52496999dc8428276633eb",
"14c47aad82f9446180031e0b33383baf",
"130ffbf83b5845609efc2f5f58ea2dcf",
"c9fd0a4903a3411bb8e8f2cf1cb2dbd8",
"c201f63c46a7471889ab6eeca99aafea",
"89d3707cc4c749fda38b8e0a5689dbfb",
"af18d886da70459dbdba1a8bbe7d6490",
"8b5975faf0bb4a6399f761d9d649bd2a",
"62500e7e404049c78d5479a387ba6967",
"5676b7bab7e546feac699ed797944fd8",
"aadbefc100b947439c04330db34a3bc5",
"f7802394807441599c6b94f1ee30d725",
"0a2e599037214753a246194652c1f8b2",
"5011e0e1c36842e8b26b76616d1c3f8a",
"c285c07c55f040ca977a6c07d118e837",
"ff54c494ec9b4c87b6446cea6ed9b24e",
"e763f373a45d42aca2e441488d39f77c",
"4f36ce95caa348b2abc2db0619261046",
"5f7e098e022d4b6eb9f0d224674111ec",
"fe16ea6e34434b8f837d4e966aa178ed",
"2b82c24fbd0c4cd3858073262e41e692",
"6cd34c92eef646189acf6a3ebb22defe",
"cc04a0d8c1154e4688d0d4fc42593717",
"e781cdf9e3514b28b15acff5e7715d17",
"3378e046c65842d9ae4cfd7e4408a6b2",
"aa020393ffa84a509d7696abdd1f9407",
"7677992b8aa64a57b9f7f9945cbf2776",
"9771dda05e9d49c99c8c1f3494d93c0f",
"31c220717c5644c7a9310ec23387c1dd",
"5ac3bf8ad023497297001ec96e236bce",
"419a0b66c4f64b79877254e63253a9a6",
"eb93023cf40d454099c089d027d8805c",
"51fbf5f98bf848b0b0d3cc4502557dc1",
"4299f4e81e3b4030be8df161a4a8c51e",
"f10abbbab8534a51a86e67af292164ca",
"174d75ffdeb84c7daff15001c15451eb",
"81cde18dfba9470887871868e69065c7",
"9ca2076b67c94882ac75b6740033c02a",
"28e91bfc381d4f728439437aba2fbaf1",
"6e706e56985f433e987c45591fa3cdf1",
"24049fb3e8334424b4b41de5e5ddb3c9",
"74c6260998de4269b6f62403f6095b9c",
"c06ff6b697e44619a85428d4dd2eb2ea",
"34a35d7476a84d46a61e2a94c726bc29",
"bc7a47f73a0f4265867ed0b115696a4e",
"484ebe4ad90f43f38840a5915faae7eb",
"b1aa4c8e8488417cb8febac5b6c7e6c5",
"0d1873fe44ef49bfab66b2dc958d24d8",
"e8ed56d115984756ab803d735637e9e5",
"f9a5f5d175794b49bd476dd9c395020f",
"599c882572764e029c288333b8b6def4",
"95dfdf451de844be9886618ae24ed022",
"5cba5bcc52644db990808bf9cebd447c",
"9d71a0aef329493480143a366595271c",
"2fd7c8a3a7e84183b43ef1803ffb0397",
"5b87b2dc07e9473c8d1053478c00c693",
"f9092b1b77514fab917717546f9d5a8f",
"24e5e9a0728d4adbb49335134e5b91cb",
"999bb2e1394048ed877a6804f1d0843f",
"e097eb23fa65477f8fe0952cc9efc508",
"145e4d4abbeb402ea77cb1cfbed1f112",
"149ae84201f64eec9d251309955bab47",
"e980f524e9454dbdbade05526e3d011b",
"024d0278b48a4fd9aef594d3c08509ea",
"7a264b392cbe45e38d3cc3293fc91dd7",
"73a8c622a1d34d0daf2f40026eff4bd7",
"4c10732a90e649cab0ae57f9313ba6f6",
"3e1851b46d914400ac3ddbe1051e251c",
"8af2b634073d4099beee85f8adbfcb78",
"70e556fa340a4ab190aba50e94da02a5",
"efd7460709ed4953a61ba1cf24851d14",
"7fe70d39ef764c2881926dca24d1a677",
"15b9cde916a24d2d8c1129a0ca404db8",
"b15b8266f5764656bf5bd605d2ac9659",
"db6c6877107b48a7aefe9a00e3fb0cac",
"377660c0cbee4ffcba0297648044e3a1",
"ace50a8c5f64419ab05ab0f6608c1002",
"932cf61ade6c4594af421e39e91cad24",
"3014c5bb34284502887dbdef7909fa36",
"940513a3298544e480feace5a0940987",
"db8c144d50f04b72abd48fb7a652f5e7",
"343a928e306f49d6b41d11ba2c850506",
"a8974ae4eb1744c4a7237a633f6f44dd",
"230f00f5c5bc461d8a3e826839dcf487",
"dac9c2ce2cd7453484d71bade68a8b42",
"53518689e70948818eaed09eb8a20567",
"6253e8f246c740aaa2983c04321895d8",
"2e98b77860524b3db6f5b80dbdb3b30d",
"011a32c2a3f9416f913b91d900254fd5",
"6bc10b4ecd0d48b3bd362898003b2ed6",
"1496cf2505f54ecabe30874b19c96966",
"2bb2e33c61e64c088f2abb1f178cb266",
"e134d5925f3045dc8e2acbc4d83a2402",
"ea04123d66f04d7b9222158881ac6cc5",
"e2439aa2738d4237aa0c43abaaed7785",
"330f8cff080e48248c889a59cd2d9cb8",
"a8704c15c521444fa897816bbcfc81eb",
"d38bd3b982b74052b57dea5697964fc3",
"af30d8e470a843398d5c3db845e56fa0",
"3f7b259bdab34c3dbf9cf4e9737b57d2",
"3ba35f2e0b1e49258bd089b28677a47e",
"0954743be36b4298804336220f5d1467",
"910edb3c616a4792932c75c7f1882e89",
"e5c583a491ad482b906a0a6bb63aa03c",
"117d005f87a346aeb38e8f6d6b78074c",
"74b3859bd4e647a09be421a428a6ec4d",
"67b0c88a458649fb8b4f0c7b9fad72a7",
"615b0567a96a46eaa58a9feceb51f32b",
"5a0749be289e4e1481680b8e66ce311c",
"b544cd949a3a4ade918a674e68926b3d",
"e30d3da0145a4b51962c3f03a74f8625",
"6721dbde726a4b84a999150efad5d044",
"bdb9ce756ed241258338c5e4ea5a068b",
"c74b5dab3f8b4c4c8b50486e3cfae0de",
"5be32c7fc0414d03becb1462fa610041",
"8e2a2f61a05440d68819b706504e06cf",
"83fec091d0ed4897be008c852b16fbaa",
"e097361193504c18a87a30a54b7bceca",
"101c6784f39d4e97be9b94c8fba9c44e",
"2d1cadfbb33842b19b294211f25c3647",
"0d5ff014100e413c9c7b5595a6eebef1",
"1d62015382d0423e950e30376809c6ed",
"5a48cc9c99634c74adc071a5e7fa2203",
"d337f09b36044ff7b18ad1c439b373a9",
"857dd747f53744b7b5e78b2fa63e92ed",
"3f4eaca1503d4744b55e049e09ea4bd4",
"aecb0fbfa998435fb035c09bd8944f1c",
"1e7492c3e09049c9a6fcd1d60919f9eb",
"13c589ea5c3e4fbf820e073e97be4514",
"60e30e13769c45b78965004492b8fc37",
"439236cd825b465483e291e7e2892fd5",
"05daaa3b3f8744e28a6a0329ac1ceb66",
"9cb0bf9fe0d043c09e85f676d371981b",
"52cc6d4f4a754053b118cd6024c712a9",
"5f4ace8391194ac0a0c5fbee2882c344",
"93880c41776046b5880688dcc6d882bd",
"b72036e5f3c948009713277481aaa371",
"437d6ca7ad6648ac971ae62e5b4d3dfb",
"1b9f46d72046496cacf81f59a8835c21",
"9d9d658ed82b4d9a9fd24641e479e0db",
"48721babe17440658cc0a8f6cd9062dc",
"a1ea5f82894e4013a39e20c4f301b50b",
"c97eb4c36978447f801aeab50324b75e",
"721b7718b1704254be1e5382de217dcc",
"3135ee6db0a24b2f957bb2a2fb6e4622",
"fd78b01f73624a27924c57f6a054eddc",
"8b1ed504a95a433eb32b588e94ae9968",
"5882c23fe20c43908f889b083c972a32",
"2004d520cac84da8ad9b53d6b9e950dd",
"c6ccd488103847b387a5e77fe64678be",
"1ddaf5a2ee7249dfb23a5ba1bdd1c706",
"53875fa74ece4706a6c4aed9f69f110a",
"f1458ff9d5784118ac5451b008a576ec",
"c3777073a37444df9c1b6363563c05ff",
"ab991d733f0c42a7b243584ce4ea4e74",
"b74ff0b80f0242d68f82838c03180e7f",
"b007086eab244b9cab8ed61116033956",
"b16830e1e2dd448ea90c9110aa9e47fb",
"48a64a289a444550bff349716220ca97",
"9350e87aea9144fdb73516d1a4951ef4",
"72593a5ea69b4104a2277aa2da1fe745",
"da8deb6ece8a45aa91afbd2b65c318cb",
"5c55c5b9600d47ef94215fa318c3bba3",
"a937c90cbc7b412c9fd5a4008b33bf6b",
"0acc986d246a4cb5ad69cb826ee0a82d",
"c7da483f3d534a2d975d3aa8224cfb22",
"754e538967b34852a37878d706719996",
"378779718ad2496ba07080a6e7e6a589",
"22dacc1f93864d6184a1040ecfabb7f0",
"9cd07e5387d341818f6580390350e5a6",
"6ed832b396374bc2839f64ec2a8bedda",
"eaa825cbf40d42cd88b7923b69195048",
"e9afa89076b04f60aad37bc732b50a81",
"f61b88cf2b614ec6ad59ba72083bb1af",
"fcbf22de9d434a5eabd1aad02d1ac878",
"d4d39bb115a748179531420ff33b6ce2",
"5117e47fcd1049fdb7bbfe19dd318d90",
"788348219d734fd896818c8e54908075",
"ba49f5240a4e4d53a91c4b2a149f6526",
"dda0d72e0b894ddd8def16902f6e9329",
"78bcf12e0b3a492197d8eca3e81f1134",
"672d3094af44435a8876351b81460803",
"100259262fd446ef8d34d4b541af684b",
"1a5aff2fb2a34e689c5b2cdbb113d6b5",
"c11580e552314b729b01e13136ab6428",
"0ab3e72940474b38a4dd009b600ba1f2",
"d58bf2e0d2e2472fbb960f83c0ad33b3",
"c2db3d5cce3c4982bc1d52b41548891f",
"a5e4feae4ef54e26a668386bf325f79a",
"57f74a75dbe44bd9a142e36f0c3c7172",
"d9655de6e30c4995a54f49f472ae6eff",
"3533c75648704446af072fd97107b283",
"c42aaf00017f45dc8892c4bb2d8b1328",
"5ab2e9704ada4a9f9b0e425416b55ab4",
"ccca662a7d5d4722b2f4b99591c67431",
"8846eb69b14b4e159b4c8e4f2937858d",
"bf7cb739acc34e8f82a8bcdb7db65997",
"9f20fa91109c450388e2ba46bfd8394d",
"945d5a26909642749533ac9bc95d2795",
"ce86398646f140b0859156e42a7a4ac7",
"548843bb95c346e1bd0f5e05ec837b2f",
"3688ffe3c3f2494ba32461a29ebff802",
"1676e9ac5cf04465bfc12ef6f21f0b88",
"552430b0f0ad431f98fb4a37a813aed2",
"f51b70891877461099ae0fd0036203a2",
"095cb920b7d24d429b0a88fbd6cc320a",
"b9d38bcffcd14dc1911104d39ed10cfe",
"d166b258f9044f93939b0fc1ab76a285",
"ce3a31e125dd42ba9c268b249fcd866e",
"a434042060354a37ac6cbcffb4803339",
"22714fc76b8241778d5cf324a6d9e3ad",
"22b4d225870c4cfabedb1cdd053dca91",
"a88f406a855a4d4a8b6b90bb75c5245a",
"537a953f92114d0eb6db53975292e149",
"17357b5b26e3408caa190244a09b8f3e",
"3abe86a59b334d7ca65a215fa0724726",
"661e5ea78a834aa7ab92dc656097e138",
"78389db24cc446ccb48dc899e04d3fb7",
"1dbcfefb5b3f447888b2a4d7896fc284",
"940066e3b86942ffa5960d9b91308501",
"34da69a67bb8402ea4a38be3899643e1",
"86bf449bff50483fa73f3467017bc4ce",
"ae949e7a2fd34ff7a2aa2571ea57ebf5",
"4e4fda8b3e024a75835fea0ac5a37a3e",
"f2f2dd78a8b3490ca6fbe5dcf9324c6e",
"8b09be0c9af7482c9c3938d1c30b96a4",
"a5ae67dc6d874a55a1c798358148d337",
"4793be4a821945cfb75cce618712b614",
"65024b16897f4eed90917deb4bbd3d3d",
"f25fe9c8148043eca3a04fd17c81174a",
"20cd19e699194aa1949308cd8f3f818a",
"a32c6ac32d09426f941a3c64be49701b",
"a2286b74f1fe46c9871e9ce620c6c73b",
"9bdcbaa5dc2744a3927a7a833ea4cb3b",
"b8ef272402a149b6922b8f90376ab72a",
"dc4d3fd5e362427d8f1f7f20219b36e3",
"41cb357aa74d43c9b7885f449a1b9b24",
"1aa3fbb663b944fb971c47cca98734ad",
"510c72ac0fda4bb8a55b85ef3acd9af6",
"19235eb89b6349f59996d30239817484",
"b3627cca92ec415685583902406cb4ed",
"fe685eb546eb4908b423ffe251d86b64",
"23786da2ee704b0d8d701ec97c7eddd0",
"d70e9246608f4d73b60fd8bcc3ff1008",
"fbfff70b3c5347e0a3d1eccfa7b9365a",
"ece5ec9264ef4edca6649f3acd376d11",
"756ba2d690ed446fba1e94e150fdb8c4",
"2c1012f6ff63473289308d2f3dc1a75d",
"e496cf00ba324825a43a64f1b7c35d4d",
"c11a1a2b41e845e0a5540692c24781fc",
"421aa3e193414d0ebc67adbda07c838e",
"efa56dcde31f461a835778d3ff5bc1ad",
"a94b5cdf90e94454aae6fb80391db6b3",
"da42966fd77f47b99e386e6cc218dbd7",
"8834a440b7334a88865354bde5638497",
"6445975f4951478697b7ee292ac06872",
"0bd7d3442b4e4c028cc6f21f4fc0d764",
"8984b1b3473e420cb7dbb9356a4ab19d",
"20dd2cc1bf244c4ab4bcb245bc6e7ae1",
"4f906d063944400aa7498867ab74f813",
"99c5e44852fc4c1b92d0fd65fd251b35",
"554dabb56568495089c09f784884817a",
"c0d73dbdae1b44a182507bc2b84aae2a",
"ec5a5cd838f64ae19f184d69f2a9454b",
"aa3db2c265e04c65af3e3ea7fe6ee414",
"81a1a1a90a624110b8089ae2b9cdc1ea",
"f1a5516574a143fa80d1e575868aa842",
"33418986f4c9439f9abeebd527bf7c3e",
"cf55b4310f784b2ab38b8aa98ac07691",
"daabe3b9a4984520a9bfcace1a5ee352",
"a7dc915724e14c3d8b6a9f2a6fe6f2cb",
"18027301531044a2ac0d544ff85f1146",
"09b795f9dee44c46ab6569f12f87287e",
"bcf51bc5a42b417bbd53bf33c98d8a42",
"eec0bf2fd9e24b9c97e9b8216980487c",
"382bff41d6f8425caab33cf76d64804e",
"cfa6338d27174a92b49ae9322e5b3cab",
"bfabb88f9f5a4e1ab7c6447fee357089",
"91986e07cb324514b0387a2cf27d34e4",
"695573bdc93646d5bcdd4e42022ed8fb",
"8d1d1c3ccb2b4b179d0c20cd119ea975",
"1b59e7faf63a43a891e5e59569b73ddf",
"e7496320bfc04de1ae7f0ee5deb70099",
"c8d812f02c684e898ad447f66537dc97",
"a269ceed75fa4bf2b1ef9cd97d078fdd",
"4d4572c7f5e249f4acab037e71955b3a",
"f01b441652244b6380f9b9aef1842fca",
"cc94ad737fee40dbbfd9e3858355e76b",
"8660083dca8545b7a4f0cc6b1713f974",
"a57a9169ea3a49df9631010d5f1a8713",
"3ef136abd8314ab8822c2613f0d0928f",
"95ba630ef5614873a6c6fcba7f6077fb",
"ee44dbb0b5e542f79b71eaa161030ab1",
"55b0f099704341e9a36286b3ca54cf86",
"0ef0954d3cca4fc19cb7314c19f326af",
"9b41af8364554587b42a13f3a92d7f70",
"25ed034aea27402c9c5c2a8c9564d62d",
"d457b115a1f44bd89e34f291e6ea60d4",
"f0f997f40ca4457bbbf141dd8d2280b9",
"daef95a38f9b4ba58ccf3a76e922092d",
"b9d7b3a5e7d64c0f92975085b43302b3",
"4de8fe30de1e4b918e51266fc50447a8",
"f54a44064b1b4197b705404f01a31605",
"686412f31e6b425dbde6b19f10443dbc",
"3ecbe729929d41719c92e94f3170930c",
"232127450664481399cc55d5c033de88",
"5725e87b4c684ae0aac06892d934743a",
"79b3cd10281a4ae388e3427827cf0a1f",
"f7c2f421f49d4bb9a7e6bdbb138b2da8",
"f020d77382514459ae1dfa8d8fd20d32",
"6b0146067b9242f1979970c2e3c8e579",
"974bbd41aec24ced8f3487fcd9a3214e",
"e03dec26854643efa7b0b461fa9eecc5",
"9500aeaf8939402d8be5fc6896c7ce39",
"cefb7c607e6e4604ae4ec20280f35d55",
"9afef750196d4094b837ffeb891eb94d",
"af1fa8ea69e84564beca8d0456253243",
"3b9762670c9d49ffb5d569ce191b6d9b",
"327d9104c29142e4b8692cb08cb21ad5",
"9dcd9b58db3b43d097088f29de486717",
"287d8c13f02a48a48ec937fb3f2aae56",
"73033ec52c64464eb91008bc644711c1",
"da0645e6fc344118bee1bd7316d9f7ba",
"300696f547ca4583bf98e84658f34a3e",
"3a14757940d24948a0dc2112a32986d8",
"2d7d2aa6e0e741f5b93f1cc191469a62",
"8ffca3ad41c348389cde0ec929f168fd",
"dcac000941214fbb9c35e50ea71cee3c",
"0ffd71623b1546a297065d50169d1657",
"a7414e4222254ea3b4c10f8f2373de11",
"fc8fdf94c3194d0b8a7bba3d25de3f34",
"6fd2c125f6f6434e9c40c70f58de8061",
"8f7ba7977efa4ed2a918a937d4374152",
"115bc6df67a54675ad01e3814e1273a5",
"9cdc6162d26b4400803689606dfbc73d",
"93d7e7f989684a9687ac7c769f059995",
"940150f88e93479c8e4d8902ff541ffa",
"7fc689a7d9444509a500764ff92520a7",
"7075960c22fa44879efd9d777e666c1f",
"132d8ad58d3c4b60b6a814dbc406cd6c",
"ba4e80942f664208a6381326a1937636",
"f33d95c8e4524c3d9f1c7b623ff8e8f7",
"4e8c903fa57d4304b36ab1d13726ce63",
"0f87e2fff07f40449f04f6d4f0f144e4",
"efc22c5d959f49159769525e14c4e218",
"b91feb49c22a412fbcb3d023be48e549",
"761e1faceec24b89a945b760acc4a236",
"ce8c3d5f32d34bfb9d48973c3cf78bfa",
"bba2677198644c4b8cbe4c204e0467c0",
"fefc37746e824576b1553d8bffdb9ca8",
"4c378f8dfe5744039ca4e66d5bf25a30",
"af7861b3cc384a0fbf62bcbdb78fb52d",
"5498dcb504bf4b69abb059a0d48ba149",
"d93ec4ee116a40468e55b32ac347582e",
"0d82474683374d4baee5802e50c028c3",
"ddcc358c13cc43418c1b593d31a37547",
"419e3c3b3e6447f78e0e1d85df5d8e92",
"252d37ed6fa04064bb23075548fee1a8",
"6267aa923cb743488caca5886a735f12",
"fb0e1eec557e4a56afb5dc3b2610b49d",
"b7430ba461a748b9804f8d101d25e5f3",
"bb731003fdc24272934bc1b75cabf968",
"c7995de7791d48af9bbf6875ff368f87",
"3a44235441204955991c555a61f6b793",
"35a6223f21be44e4bcdc71e8013c17b2",
"7edb075a19f341afbb9a8d735a1c2fd8",
"86bcba309392456289f7712de00b119d",
"9a46bb7ec93f418285628090a6b7a3c5",
"866589bc9dbe4d42927eec371ce0a4b9",
"00b3a3cb25554ea3b2463e2153bc8ad5",
"057e65c378254165b488e2564e12e3f7",
"3c053de2538140218033ed8541996379",
"049eb552409c4b32afe3d2f76de2fc6d",
"d11cf369ca75485393a51c9d09f1f9dc",
"62c621b360c2489387e739df3ce96152",
"b5dbfec46bf249f986c56fa0ac36d3f6",
"f5247b3ea423495d84b0dad26b48c01b",
"edaebfd578524509a81f24faca372d45",
"c1d71370a0c548a0a13cc641635cc869",
"c2c8d56be94c45ffa15f153c743cf76d",
"c20c632edec64d18a713364d2e874447",
"6e1cc2e70c6346639ffb710aed37ab19",
"35bd52c487e44353b7facca3a30ddc22",
"ce7e107cf2744fe1b60a53329bfaa49c",
"47d3711026dd4f74933503478dd67ffd",
"985df754b0a84918be93d5b5e712ac98",
"9e554fc14b4a482fb7760390394bfcbc",
"8f40c497a51f43459efd9140ac4a3647",
"8cb89aa7624e4487839e90ebf670fc38",
"9dcc72d167064afc86f2764e3ec68cb6",
"fbb12d2fcd434097ae6bb11e445a169f",
"479fecd7ad3b4aa38e499fefa14266ee",
"45e855295a104beeb2dd4d73bc788064",
"7a937953b9ad4002bf4828682fa259ef",
"c37774f9f97541ddb71c9aa5ef64549c",
"c933079dfcda4b11b973f3d2b1bd2627",
"3cd4f2ae79a5402bb20fca987fbc6fa8",
"5b193728336946ce9f725a7213fdcedf",
"b1a2d2c545f540238bb24e2ced0ef4e9",
"c19ee8eeb964445e8ccebadf371cad6d",
"3aac1c84c48344dbb6b8100598da8722",
"8512ae3b0b2f4d89b63fb1f76863d971",
"b733297cb1b0486f96720740c774227d",
"2c9c122ec58248499d50373471e93f1a",
"159092b455a74dc48552b2accb17c2f3",
"3b8a2cbe0cfa4adab1e056a189241307",
"0656e5820b0f40af99f7b2c231edc18f",
"1271ef6e64f34467babe77cea5d4666c",
"e503f4937b4f40bb94b801e558af3166",
"fd98a2d302c94676b0200d3f18705dd8",
"6d26d93fccfd4ef4a0b99d85e1d31871",
"54f9518dc550407da972c13faf6a7ef1",
"d5e7016009fa409781e0e4622b9429b8",
"79a15cfae241419f9d100034b9e1a98c",
"a7306cce08ee48e3813871d46f768ba6",
"75c8590acc3a441a8319cf104f60dd4c",
"2ef85e7d0835413aaf11d97c610eec60",
"d67642d998b441d587eb5a61f979eca6",
"b89e0219b5bd4289a0070b6c401a4d77",
"f776d1db1c41484392cbb6c63598ff52",
"1b057ec8e47a44c1b94f8e76654d63d3",
"083537acd71443018cb4e4dc33d90935",
"e5ef8e86a11c49c1bc87183353d1e4f6",
"eff8a321308f49dca9382516cff6b21b",
"764f58ccb5774f6fb6d795942e9e2216",
"bd9a0b64b3824ea2aa54bbe98386644f",
"92dc6859f8544739812b2a00b70326d3",
"49f6fc9f91f840adba6508df5e3093c4",
"b73060500a9f4ade88c857025f1cc1b9",
"853b5258e9f54e2eb27f3be9b870fb89",
"a777335010d84e37bd4d3566434972ca",
"1ec59d0290e644b6a00ed0d26394b41d",
"25996d6c0e3f4da68dead5e67985dc01",
"dcaa0e7a119a4f0e9123f26d95eaf487",
"e1653e21afed4841913a6a88a0f5b26d",
"74383aca5a3c4f7e88047e317cd57452",
"6041ceedd4634cd1bc5494ed1447df01",
"afb030b917d2425ba202b927a2db223f",
"4888287cf41e42d2b4005e19c67cb0bf",
"d26dee2783a841cc9160a4003d7c61e6",
"62bde68bb21e4dc1bd83eca04a0b7f0c",
"23ca66f99d6749e989dfeabf63d53184",
"754773a5b1064db5a8311d3ab5dd10f2",
"59ae98844740424c9a90afb32f364dc5",
"26d9fafe8cce4810ae8074e29fadffb0",
"2d07e107e6bf421d9b49e08e84d66dc0",
"adf88c5f465c4f17a6decbf9b5e68ecf",
"4aa8583d106e41dc97d9cf56151ba62f",
"6fb2930c758242299053f1b60625131e",
"0f2f107b653e4d4aa990058939505137",
"a85fdcdb7ae64843bf2f5056c4eda3fe",
"f74886d0649b4105b753b7d76156f0a5",
"3c0fa4aed51740899d2da71916d89346",
"01410788bee24165be8b7a41c6b22714",
"d01df3db38334eb9acc4e82847213ca7",
"00b0459694dc4d10ac051456086ef4e6",
"67999e4146b446518336db675e702551",
"3decfeab2d174573bd12efe2c3712a86",
"370f4dbf4b6c4b12b68c20b97c71af26",
"9034f53f8dae413d803e5e1c2abe5fb5",
"9e1beeb096bf477eb5af706f8929a143",
"8d17a96c878642e2920739a2579fef34",
"72bea4a1644a4047aabbf6ca46678985",
"4b8d837d311941eeb93646964018eba1",
"8eb5477dc5344de0ae5735f0d1ac3fd8",
"a0af33264c164990ab52ce62b2e2673f",
"d7c7a0f6fdad4f6c88ee5e359a21913e",
"0ca116a0786244b2873b692a5619bd30",
"41d36dfa07804ccba6768b88cbdf9e0c",
"6f367390364e4cf1a513d4cba5fa3b5c",
"27503785744644069d0d4ee73b60c6ac",
"0767df5f50a6407487929b60d9a11628",
"18b166b905d04f93aa036155069614d6",
"64d689479c224dda8d935a9f44c3a4bc",
"ac0590dbb4e542f6b933914f34a2f782",
"f6d0946cc20c478796d9e163f63b22f7",
"8866950c1a26499fbca29b040c642354",
"1ad1045b2c7042c28182673868d58e5a",
"6490d37432114168a9b88eba1614e726",
"01ba6e1388b147b69ba561b2d70a3f9d",
"625ac00446514686a9dfadc2b107cd70",
"e7e915e3f78c4a2a93e2aa7e11d2daa3",
"c5a2b7727cb147e4bfd81e49d342dc1f",
"ee0a17d101254254ac79e9d086792fb8",
"e9d8cb64e4d340c4a41f1c85505c599a",
"be38f8f7a17b472a901e1ad7cf5e5450",
"5611c8347877449ab6f74ba66f4160c9",
"c7ee2477117246dca310703d17e8eb0a",
"046a8f5451f94470a04f901dacc80df4",
"a422b0c7a06a4352984dcea761b2691b",
"54b4b79d84d44a23b821d474b348419d",
"9fbc501b9bd443de962f950897bc919a",
"ccd75c9722f3431c95612d8f4db6f5b7",
"a8cd34ee9c9f457ba4d034f2e9d52224",
"eff3caa5a51443f0a03a460652fbbdb9",
"886874c1fde74ea1886241c1b9052898",
"1dc9548a51854c68ab978fe06affc13c",
"c5abbf2c965d447fa6bbc3142cd9c5bc",
"7b7665f39d334144a10a5650b2ecd545",
"80d3a04f0a314ad58e24412a77e6586f",
"6685b353f17a4a38aa2303010e280720",
"8d4aad8904304721985566822da1a9eb",
"66fccd0fd38f4472b66bf60d948c3c28",
"265370be1e7249379439b7d99224c778",
"26fb01c2b6d04c818f554a28265e2d4b",
"d4fcca98c69a4650bbfb7264a1d79a39",
"a99cf46d499e4b28ac954f8b9a46862c",
"16cb55ad9bad4b5eab017b6fb1b9bcea",
"ea8b6baad0464c2a848ca2677ed08265",
"1bdbe080c3fd413c8abaa7cab7fc2644",
"d06494c93ed54d1aaebb2f04ac7e17e8",
"da043a26efff4cc4b2502344fa391ec7",
"8b58f10ea06441dea9a04be9a1f05f8d",
"b1fdb82046274ba9b4dd0ff302a87734",
"290337f9cef4403e83fe14d3ce5455da",
"cfc4c5e137cd4ec4906cdbfd9bc7dfbf",
"f29c043724cf4cdeaea28e10d043250e",
"6eab247a02e843e9bb7647bd03b60165",
"ace37fba93cc41e09f8960320bc880a4",
"b33e06fc34364480b5bab466f7c0f36e",
"4a96b913b5fa401081e5364540611c29",
"427318b84e2f42eeba5bf4b67a256dc7",
"c335f20de1534f6898cd7d173439be6a",
"8a220b07a10845cfac45560d91f6547a",
"3cb3c9dc762b4c058b4072210bf6a570",
"a2291b6e2e384c9182a2878722658e9f",
"56d5e7469d1341a98504f1db2f9b5a38",
"63caa55bcf0e473ea814a495e6cd629c",
"343636ac6a664818a641564038fb18f0",
"f7693e23515f4bae8042b92581cafdfb",
"396c22f1e0f548dba7ac51e1340e4e43",
"61f2b75771ec457d8678806edd60ce4e",
"4a2a2b2828834c23a044488affd95fe2",
"3b4bc0cbb9d24924a8150bc3070ace9f",
"0e365e83a72d4c46a13335f0fe866428",
"273b5f707b42414d89cfe7020a04f917",
"85fd934d0a334f92b9b8dd9566030abb",
"a3924ced066d49a685388adeabb98c1c",
"5dc06bd3a3624da3ae2e7124655ca15d",
"7eb3085338e348fa8a97dc3766370686",
"42059201cfd5463cb2f9f0d619f75d1e",
"4f73879e03ac4f839e355ff89afde53b",
"75b06b2235a24e919b2f1e2e7449ddb6",
"15ac4723bec24c8a97b000329b614e69",
"76224a41daad4b13848b48b00dad3d72",
"35205632c4234a8881cf9d381b6165a7",
"08f8f5c5354c426cbf57e7e326d6b3e2",
"b7e61b6b7ba448039a5e3e403d5e88e8",
"74c7b4083d6842c593a97f18e8edf9e1",
"efc8e10075a444fda72f3ce3e92b367c",
"543f8f78b3534f68b1b96e63b07cb92c",
"2ec4ee71678e47a3bb6e27d33c202e66",
"a34b5df5d6064d1f91d0c0026a21b8b5",
"733857132f7c4ee89883bc7ae37cf8b5",
"32c369a7732f4c2da27eb80b043b3a3e",
"0ec649a527394d30a44eda37a4586c0d",
"17c75128a9bc451f9a780f845bdffb35",
"36db5c27d7d54105a0de6027f5da6bce",
"156a93e078ae419b917e6953a6087aaf",
"90c4b3094b874349868c64e7f7e6ea4d",
"a6b1d5743b084df0808d1aa2a96b80f6",
"f0bc05367da74f138ffd904ed9dd8493",
"e9281c4b72f24b85a74ffac3c49244f3",
"36c24bfd70bd4e11b02de5e3df03e6e8",
"0b3be2e5432b47c7a72b68bc1536dae2",
"566a0843540e45c88cc4a8b1c347424c",
"56abeb7a0dc848bbabaab1dd159714fb",
"64074ac52df64fd9bedb176d03876a9a",
"9347564937e54c6aa57624358345e03c",
"54c025f58d9b44858c24bb7daed74489",
"20d82b8a2378400fbe7cd8384bfdc378",
"25a9e3764efa4aaeb0189b594e491657",
"bdd18c52078142829e0b178871abfd3a",
"4250776e50194454a27b1662fca9e6d3",
"424f01125af94c3698a08f3b55fedce7",
"ac66e423c358424b930a37d542fe2685",
"7690c239c1364edab887e1f152e22190",
"558e2a40d1334f95a00a72a0cb76a065",
"6eaf0232e5b344afb3ca6a359dbc2e1c",
"0a1c94b6b81543c894b5380f9f900ddc",
"a629583d4f4b4375b94ee1a15e472fb8",
"623a3d0a61b9466d9ff41e9c74668684",
"983c3d10e42a4100b40d4663847b110d",
"585f402c7beb4dc28f5c726b997bf840",
"721aa87696a74be8b0adb6e2503e4472",
"4a0b0a2dfdb94d16a42e4553bcedc0ca",
"ff0cae2ec8504856b1e7756164109cc2",
"f900cc968d8d4e88828ba8cc1d636828",
"fb718f9057674bc0b8b1ca369b790fae",
"9ec725e2a47e40f2ab6ca73148355912",
"cbb8390965b94a65b8595de0b510a795",
"37f6fc3fb4664ea7ae802a97fa944dc0",
"998b543e1bf347d3a9e02281f874734f",
"951eb2554d734ec8b41a573dfbbfdfd7",
"5db66b309a63401589e62a7a648d3e53",
"17bbab8117484ffc948bc2631a68d978",
"5251a28e51f541db94690fa297cc5383",
"08bccb40c18c4642a22bb5ea76842c4d",
"302bd07d160c476eb242d3dfc3ee3144",
"625094cfb7b649e08e826c09683cb102",
"bea2ff2e4c93460ba0eab71b63eff7ca",
"83051841734846c5acb73fd50c7d71fa",
"ad54da842f334ae29f2404e9d4b25d3f",
"9b9bd9b76ee14f76ad95bc6f9a786eca",
"2c10deb981c04eb989d3ec5dfef44576",
"13cee92496e2401c85194e3b5cdf99f9",
"eac4962a6de942a995a76526b8fb2510",
"c26ba25105ef435898cb69126db78d09",
"86ada0c5315747bd8e217dd9cd6bbf58",
"a0c5f72539504415a83e01df95cb5263",
"4ff985bcf29c4731a7cee2c87cb8814d",
"6b1a737316a843ea81f46b2b0825dea9",
"397733151afd482f90ea481204135805",
"0d659a5463b94b5c84c02266eb816526",
"a61d1a8085da4e87b683698746bd6cf2",
"8787fb3ac2c74d30b7daafe8e38de694",
"6d07f121e5654cb6a4063e87e5849982",
"6e2f1f093e4543d6932fb135b002e442",
"560fff2a393a4b9eb552160b77edc9e0",
"66c0bfb491224ea6b90ff390d4c3407c",
"25fe04e6ab12426783bbb935f3ede5cb",
"52379c06918f4a229ce942befc57b354",
"021e93cb005f4dbabebfbbe38922f9d1",
"8e8419ef485d43149e77d8363fe5c23e",
"a2c8ba2c968e457c81105655501561a4",
"bcf45169a59c46c5bc975382da22d750",
"4fb2abef5b224b4a9828891691641c80",
"6b1574011c7647cf8560c6608451655c",
"2b0bf1ee91b3489e86d5487b9eec9ab8",
"716fcb46ea4e4e42a83214c054027eda",
"25428e29cb79460c9bc740586c04c8df",
"5ed12acf1d9542ac87dc7539dfe7f7ac",
"64b511ef0937499b83b307890532dd1e",
"79a5d20d6c2b40b5a3e5c5dd956cf782",
"1abc339ee7a641d6999a1cca19426553",
"8f91fdaf26d34ff4b8c3fadb8ac72528",
"6d0ac5b748d444818e1eaefbdf5b935f",
"435e4357fbf04047983c1ff32327a0ef",
"0e945a5cf66c4dd5894fefa3c2649ba9",
"1b2795f3aaff4976bb800e4954759caf",
"6bccbd04dc1a438ab38a73fa89614b73",
"fa8be1dc99e6407ebac60f795a693b3c",
"6b75656c153e4305b8e24bde9fafa64d",
"78c7ba4a17724085b1e337972de848a0",
"f6e294984c5148cf8f036a787f2cc6e7",
"fdf7d7af63e54cdd824923e031324ac9",
"65787861aa2e452bb19ce8768541e215",
"e4aaf40881b54c05aecd875595246243",
"2e0e99546e7e4bff89e55f460272436d",
"95b6d4bba892403e9e8178f83de5d909",
"468ce8937288436dab5e8612572ad939",
"a695592a28ed4a7e927e7abbfe6a5b77",
"803c475bffbb4e29b5742958026cbf49",
"6e8e258c45674926abb29db55e18cdff",
"db426b8c19784ce0ba105d93a12dfb6c",
"04d04f4cc7da45869625dffdde12b4e8",
"06d9412d533a4638a1f9dab746486ccb",
"cf3f0d9a291e4a87983a18fa862aba2f",
"6552e2a3e8c14d0093ab14da24d26dda",
"32f0bee112d04f10a8ddcc0d63065264",
"f1d2c13e56e4494bb3c363e947c5b859",
"2acd1b57f1c3426585cf20c941234346",
"7e195495947b43839549736f7e394ca9",
"5b19f5ea04034944ac5f27c3fc2e5cb3",
"b7f5a6370fad4c55a658a768313fc7a9",
"8a06fa1e6f434bc589c6a63f9558ed07",
"8a4f1d1ba82845be92f7129c69138142",
"2d50a3b597764091a769ea199fea026f",
"ff7c980e56144f1396f225a464bc677b",
"a8558a9974a340a99f109c3a3e2659a2",
"7e23f686aea14205b57e41dd9583da89",
"7177878024cb4c36b4389407a8007b33",
"58e8cc4c3854451fa9ce7298344878fa",
"a8ae75d85b924f04af67f1bfad42d50b",
"effc2ad69081467ab8b31bb36c22d38a",
"158c7f5f34264705a0c0fd1275c7ee0d",
"5a0cc563eca3486dbc127f1a4a6ef8a4",
"9cbbf292008d442788340b6b568a3f0b",
"406d304772004be4bcbebfef94771088",
"51e7ea3b518649cca501b8be4b8b691c",
"716ae0742c61447893e2737175a8d603",
"39dbe7d5c96842d1a298245b58e0a191",
"b75e029f21cb415ab7be5c48b4719b87",
"fbf13da3a311446a93d964143716c18f",
"870a5a1b83ff473eb8dc40f48423e36c",
"f7097ac5d80e4da891395ee34489bc89",
"a0f75f02a23c4475afe1850b289cef88",
"9d1dc640d56a49d4bb129533765945f5",
"c6b71b006f6341b9a095fc55dfc6c597",
"81764f51de3c451bbcb1622d3d801073",
"d4b351e866a34aab9cfcbd183a8c6c0a",
"6cfb3c758f494f0a801a87b5ae852373",
"40ccff11d7624deba4298ecf374880c3",
"0671d7a3184147cd91d74508b0d5d1fd",
"0009077a997a4fb8bd7022264c531ac9",
"13789ac8b13e44e4876b386a9bd42725",
"e6e6ffa8322a4cd2b4146e457f7183bf",
"b91d7cc4119248119b7b9e46b720436f",
"daaac6a6b74342f9bf1f095107836bd0",
"2ffce2395da64cca9578a215466157f3",
"85289ff223334b44bac1892dc209d5c8",
"97ea81d9ae164eeeb826acb9678f97b3",
"4a199deb2877421c92830739338ad958",
"ec3fe411afdf4bce84da1629a90835f5",
"689595bf5b734500add2fb74f4eb5377",
"e1255ba895264652adaa88f84297d8d4",
"46c07ab74f5d475e8f9cf2b93db0c8bf",
"d42691e306d7403ca6f9fa47b601e808",
"5b31d48be9954335a94a022473ce1af8",
"6413a0d2b83546a1a1f6e25609566bfe",
"a24f2cd058d040a58f32bf44ad6aad3e",
"cf22a22e3f5547a3a58a1ef1759a87a8",
"07732b4e4164420183cdc17021402656",
"9fae8b2ded2e4dc4ab6ec7dbd49e1a19",
"ff6f10db8fd44294bb529d29fa82b69c",
"f255af33d8ff48ffbe97107ed1feef13",
"8136284023b34f62b668c8f8a84759c4",
"745af32b3e6d4516bf34515cf962dbb4",
"b72804f595424072aae47ad3679083c5",
"eeae84958d7648ae94996cfd722cefef",
"5099af346d2d48c191420e562794345d",
"8d582f8405f84768b483623ec76b3a16",
"31503aa34b3f482a8bf2e6d7c43ea9a8",
"a9003e5561f244b2882795009a7386ac",
"8a5b9f17e7894316bbed72b6fdee58d1",
"b59d95733a754b2da666d885a3ba98fc",
"3d1fcb8d55ca4e3296eebb4d0f5e05f3",
"be60fdd58a4948d0950035ab79469831",
"4960345b32a24225aed34261913b41a6",
"b819e96198324491af0f37fb910798c3",
"66d9f99587be47fbac325e55e6551a83",
"51f29265b2574610a04fa2e4e7fe34aa",
"7d47fb657bd943ab967c6aee35e32676",
"82535cf58ac042afaddba2f8aab7f91e",
"a2866f4488004036b4742251c7c4e514",
"73f8b467d25244ce804013e8f63e6ec3",
"b35346a1925048a28ea091e57906cb32",
"49ca475483fe4d82bbf6a6b00c64cc8d",
"e972c516fc604bbfa328707e9b99ad78",
"70456f02306943b6b7856f162bf4fda2",
"2c4efba3da544bca88e46a7c76626626",
"bc9e7a092ece472eaa1c1b99870a428a",
"550cdc1ab46b4421b50bec3afacb72e6",
"0837f100dab3452ab3a7645b729f1dd4",
"0f2a5fabe4674c1a9e6cbc408e7aeb6d",
"08b07416768f4d629a362f1c691c2af0",
"08ab25d77d0f4bd7838f22602395f054",
"51407197053e42128a0d1bb6774ac381",
"0b669d30548a4e06ac83ffddf3818581",
"127bb4122cb0406cb34a5e64d5727af9",
"84e0258742024874a67ac215808af72a",
"a250bc9c55874f3db22796f6fe6539a6",
"33cc84daa837492689e546b413bb4173",
"3e01c02e1d9e4b6da61c3e3dfec70d2e",
"54ca4b425a444bc198baaf41911ac362",
"3f9dc137257748d7a69ff6dff3315e41",
"ae976351846e4831a6ed5a9195facbdd",
"d34f8fc3683c40b6980103808d1ea148",
"86e20c748f8040b88bf6acea29b119b2",
"d446e224eba24e8aaa451f57f9338ebd",
"4027f42567bb4bcc8a5988c78996b5fc",
"793c66a903434c9494e03aebadba971d",
"37aab38e8584475f86526dd9945e6516",
"d18d54586d40499da8e909bd9d026f0d",
"ad86c7770f40437f91a26dc7ce18c111",
"537dbf419ed2401ab783751f596da54a",
"524fa63a4aa848c18744347dcfcecbcf",
"8e84b91d29354e3093c6e52b7609df5c",
"ef0ab879a61d49b8b22b326f909e22ee",
"4ce53913d0544207b0f93cbca03883da",
"4596a90dec8f4b2195a3ec6a40f2064f",
"71d5b817051745d492452ae679eefb3b",
"d44cf2ea9ca14c37a5d48d3e9dd26c20",
"7c4977078ad54968a4cdddb7e607e769",
"64fa8b524b444738838e976642081a4c",
"656463598e7f4c9480fd107d07fc6d83",
"7c7a5fa984224ab9b5ecb488c24ba707",
"7fd36b0bcacf4ed29062040883979325",
"7617a8b441024a69a69a0c3499ad2cf7",
"e6bd19f58e3342768343fe9ac923cfe6",
"4fb7d5efefe14ebb9ee07724801afb20",
"6bd3af1d3dc14b0d9f30d90b2a187da8",
"fbd09af8b3a14156ba16c8cb5e4b1715",
"db7355fd8223454b9a908bf96fdd2851",
"7651c0d5f1db4bf39f2526cfc3618169",
"5caf4136db374c5e869c9cedf76ed2af",
"507161e7fbfd405dba4bddcc70582224",
"c6e1cbc2d3944066b4670920cf88b706",
"538372290e1d4b64a2969610645c477d",
"8ba4e6cd02ec48c0945d7500c1fa3eee",
"648ddb5c765349a9b217af58c07cff25",
"3aa5f60226264b51931aae67c9753f33",
"f0fc5d738dfd43d09ec2fc04a8c078bd",
"0cd26ddba03f4cb78b704d499088d7d3",
"b9394e918de6481e95f5ccc11ca0f634",
"ede8fd9751eb4291a792b36b517b4154",
"d492dd4691114ade8a5980d0cbf6033e",
"f752b2f2e5894451b44c3f2cc4ced8ea",
"f06446d4f8644a18a0e03a09c4de9346",
"14aa8629fbdc4669b7e5dc5d1fcda17e",
"ef46b3f44ef14eb9938a3baaceb69417",
"13906a7bb6a8490b9ed15f8ec8f3178b",
"c5cefc17c0e240278cd98d186c6dc3c6",
"841380c217f14eabb0471f8c01a0730e",
"37db08b8281a44259813f9caddf8abd6",
"2ae0f98d807d4b3fba25c09644f86adc",
"13368d46c5a94dd99ab85084d2b13af7",
"96b3eeaf6629412691aaf956d5e289dc",
"1ed1a7a61076478785ca4d2a5e65e090",
"fb2fd024329b41f080da06cbb013defe",
"0785d4c71fe2411191d71ce0fd52a1e0",
"15292c0bae0843158e8d3bdc49daaef0",
"8b7604e1fa4744a4858d366a0d73402e",
"d0b4ba59a21b4465a1f06debee0c095a",
"ca177282e20741caaf074c1a681d0863",
"5b46bbdcc6bd41b4a8b230344c804bf4",
"5f9154da1aff4c1fb6e0ef224c5a1053",
"2f75297a614d44a0b97828d9ca2c1d02",
"88f1b3c61f6e4a5d96cac319aa6150cd",
"3a090c07461f440394dd228952dbbf21",
"7e4931de5e564c5996f8361c0f28aac3",
"16625ce79c7a4d0fb1c28d845f38707d",
"6f7be4284f2f41d18f108fed0bc65a8b",
"939e8decec1f461abb51e32cdf60518c",
"acd34b40216d48fb915d26428438eb2a",
"66f4149e6e04422c9be5b07f2abea953",
"7666007b6d0641f69a0289eca4eb554e",
"15dc328d3b224ff1a1e795900eaa7abc",
"cbd676b8ffc6430fbe586490ced3995f",
"f249bc84c4944fb3a63cb1313ec961d2",
"6e47384a750a489db69d9ea944167e82",
"91a08171001441ce87d66c8c2bdadbff",
"dd01359525c341afbae8cb17cec21e1d",
"5896350b08a444689daba468235019f2",
"304dd0f594414754baed540bfb717dcd",
"f43d00048bfc4813b99dda303c76cd52",
"5b2ed060d87f430abc482579bcd81c59",
"6ed3cf158c724b308280c3039a281101",
"62b64143c06948bca74e253dde2aa4fd",
"0fa1e71f98664ca7b7d767801798fe38",
"b6f0bd84af424033927345b14c799fba",
"1e096d726fd344d1839b7a304cd11279",
"2281229275f84819951493b5cf80947e",
"41e208190398488dada083cb08e8b444",
"ded381b3801b4eb99a4405d73cfa4e9c",
"780f112dfb6f4cedb9eca1e10606e6f6",
"46e0e231058d4a6091285711a158e777",
"e1669ff79d134cff92d3ac7f963a973b",
"7b5f75ca4d254b89b1d860bc83eb9d17",
"dd3f9f275ef6435d89ea6d28e6aa6229",
"e07a2663be3845108b7ab88f7868761e",
"30102eb73cf749289a98798a7053fbed",
"a9c577722fe74c6f9929513268fc0ee9",
"b8bf4d903aa04b08825159c586ce0c6d",
"0ee292a3fc5048fdaf7e7f7f5f7dbc96",
"d6e5e1baa90542f1926fa0cf1cc84a5f",
"12cc025226284750acb71ec6ac26dec5",
"33530c92006c4d188f51647c2716ed4d",
"3f5568fa2915450d959b746b2c4d120d",
"2ccbc200046047208a815bbb3d373a18",
"b1759f377ba84e81acc7eaa57b5bf01e",
"64bea2b2848c4730bec9a0b38e5bbb22",
"80067f8cc7d84933a69806cbd7484e4e",
"7425cb2efc0c4f29a1992d58f0e01bac",
"f790e472157d47ebb297c716bd533498",
"aab98f4d3f424638989da9804d41b498",
"314e794fcf4e488c8b0cdcfcd5e25f87",
"eef1902ad7fc4811a0c9108467e8299a",
"71d1ddf2c7b54de2aa35c7000bf0504e",
"63fa6b9518e743608cb938c401755adc",
"d13a1bb1aea744938f0033c39b585800",
"95b31a87a0074afb905a988d662fb111",
"3e03b0b94a4e4362881899d60f5e1998",
"445ef7a3da564787bd0a2b62096af50d",
"c6c011dcdb4c45f2a2c67c427b9e162d",
"b7f81b92eaa446c18ad6309467f94d3b",
"4569983acd0547e3bf78aece7412b27c",
"2819629b6869487faaf30c91acfe01e7",
"061aa28934b3400694256e0051fd4493",
"53d481f7ee5846e59fe318fd881ab614",
"84eb27472ae04a2ca862bd1c77752f3b",
"9f78238edb8f4e46abc6959b83b48c8f",
"772354c57747429cb0dbe76e00c1829a",
"4c46829791c84792afa1a55cb896ec5f",
"47af8d58122f4ebbae109cbab21509ee",
"b94c1bb3cf36493995d489398d2122ad",
"62da18d5ef07414a84b8729a63e13a3f",
"d458e7cd0ea84fa5916dd7deef07db0b",
"2a32fd0fc2244a58bb66146db8a4748a",
"af432e9551004f75b8b25bec7829a5ec",
"5907af30fc124846924b114f2b3c04a7",
"ac01cce6a87640a9a08f1f1c45fcacf1",
"20ed7f2bd0024b34a874945278be50b6",
"187fd314f11a4b49900f9b050415b9e2",
"d75a3c84e06446ebb993f9b4d9551f21",
"3ae36029e04643989ee15b1dd770e7bb",
"e1c7d167ee9c4d06bf9e8bd13fbfd5ad",
"b08e8ead6528446581cd85bd4819874a",
"fc59f882a6494f45a212e36b7c531c9d",
"d5a69f90f02942289d9a7adea91bd888",
"36a8a6f3a14840f08cc9117a382a981b",
"c9a12170d1a9405bbc9294f6c318b03c",
"c09921401a424bc1ae8b193be0d2a4b8",
"6fc1b4a954614ff3a91c4bf0abaa85ca",
"79f26cee581d458ba5e751ef4c64943f",
"837d0a6f9ec44dee8b2e89df5f4d3e1b",
"06fab8d42cf3421ba9b80f796f6fc5d5",
"ae8cc5c8a8394a78b94569b697eb3248",
"84d918a44c5f45de968f0b1c35017c31",
"1d8f48893632407cb9d70db01c83c38c",
"2f24789cea69419e8adaa1fa58b75423",
"641b821740c1412fba0ae6ee3cfda4f2",
"8d5d87a79db7435daa8750594710eafe",
"44396d74d2694c428834afeb3526261f",
"6c712c5c7c8142c39709329bdc3853b3",
"0430cb8788c34044a116c1a9ec6c4072",
"0436107c97524d558a88d8b790e0168c",
"1a4d2d3e914346c0a7fda15b7b334b0e",
"4c8520d5209046ab92fb9d1d2558eb95",
"5588a21978c443d9b85e793198e1d369",
"95e0f5c77b5942be85ca45e487198a68",
"353a4c010ca14fb19426685d7b5821d1",
"15d399eb91824f6bba1cbb7ee834d7cc",
"b5610d1d2f724b9a9a36aecab7baccea",
"58ceff82586b42839f3036139787cc74",
"35da1e81e91e4d4c9f4e98730f3b5017",
"19f82114f842446f8af9b1e2ad87e484",
"fb3ddec9f93f47f1be5f9d5a91951f8f",
"0e8fc6fec98443c089392c889888558e",
"66f199c4569b40d5a4f23f37e09c45d9",
"d559404ed89847f0b6efc31652029f69",
"76615cc3c0ef46d1861796d0451af55b",
"60f6cb87c3fc497f8a7a74b7de3c8a17",
"50cb979fd4be43528d72f824749ee865",
"28eb90d7bb1c44e39a551597869e531d",
"602a60f94524488f90e55750f94dc0b1",
"55c16d3e90f240e89c9582882db320a0",
"7bf92bb92b4b4bad919738a7e07d6fba",
"35bf26aa5a8e459e9c251b80d6ff99d9",
"a7bf66ad94164770bc661a8915c662e9",
"778f46510e7c4cefa56cfdbd344ae2c8",
"174abdf56c9d449f9bcfd1f4b5c9c26c",
"6ab09439106849bfa78356e042b2c6be",
"dbc17ff3e51a47da887b83fecf31d62b",
"54d4b58c55db4fe6806c88abd8ecb645",
"b608167a46544614aa910675b57a6e0d",
"6c51d16f00be49c3a2eb422ca1710a03",
"001a5231e8ed4a41b192af9c1e739bb2",
"e95a5eb6aae4471b8a625394fb2d79af",
"0eb299c760d04570a70f169e05857889",
"ac66566a041649ebb2b9082884374467",
"f3b7592bcafe4023970b00fe2ce09ef5",
"7178cb53e39642849ec7aeadf83a9291",
"9564b85724d94a6f816c01ce503a6f38",
"69cd3f5d0e13427a8bc845774b2005d2",
"d9c77aefeb4d40c68ebf958cfb3c1abe",
"6133651ea3d24e47bdeddbf5ca1120b7",
"f014f556a36344d88bcbc4cd561aedcb",
"4158dc79fcab4c018f76486bf8babcce",
"c792b5487f3b41e090581cf01ce723d2",
"e81f1d2bc13141529c178d61e9973b67",
"ecbd5f1fbd164575b8e246d5bfd64f1e",
"d8dec3593b9243a9bb97ef80e98760bd",
"6d969a39fe934c6f9cb47b55a1b39b24",
"dad062a5969c4d7cb24c2deaf7aa72e6",
"1014a113c39c4cc5b69d6d5ad59231f8",
"9c538afdfb7444518320efbf76669b8c",
"53d8d1cd8cf741a59de4dc555acb4d8e",
"199243c960d849498599d5e4a62a21d5",
"1bd8fa8fadeb4ed6ab4fd72bf08cfe05",
"d46120a55989499792480e49c964f4e1",
"63253ede16a24c408626d4bea27c54df",
"d24fe47cec0340938e5118657e34b697",
"252622913edd48f6b08160b1dfcceb0d",
"e94668b396a14b018428224de0edb5cb",
"dc606df47f51413997a9d3c76eb32716",
"18165841b6b34b67b5fb94985a56324b",
"ef0ca6b1a5ce449db3c7ff5035c1866d",
"a3a3c34fc78849f884405590a91eda97",
"8a48265b13044370851604d5972e9cc5",
"af88971c7a5544a5b95db23992573012",
"f1b951ea2f0b460c9de0a12cc25acf38",
"12bf9029ea0c4ec09b1a9da2a05eeab9",
"f05b71bacf1c4a06ba4efb1c155f797c",
"f69f67aac838462aa0ef66f978553a89",
"bf750013982148968e6f65595010c941",
"568ab413b88c42cc8e38824c07046453",
"16c8ca12276f4edfb9f5aa556e6ea8bc",
"aff116e549cf4ac89085b44549edbc44",
"433871dbd18940249f527a2a659499fb",
"7ddbf2d7ca20474d9d6766ecee9e1892",
"d9afd530c3a3469bb0648dfc732433b4",
"daf05f205fdd4d70a7f896413e399b7a",
"b897d91a641e4a97a75cf6c440b6702f",
"cfaeecc6181a400495df996662806895",
"149176dd74074aefb210788441febb74",
"c4a65503c91f4f3885d663c0f05e5188",
"8a06b35e05784f2b8f845d39d97f12b4",
"1f3ad770f3e74cc29c161682cf9fc295",
"2e4255922e234f0f88cd5344c10e03c4",
"08b9ea2290eb4affa7b6c2c763b5d92f",
"1226c6ebf0dc4e7596f84043af2c21ea",
"3ed7eb14832a4d4b8c27279ac4d97bb5",
"e7f3ca635ccc48d1864ce2ed04d8113f",
"baed97b4fb664567acfb70598833da2f",
"e408e43508b74f4592385d79e49fd68f",
"54d14102adf04d40946483abaa7a9037",
"3ede7cf54c8d4a11a3b2d67e5e214077",
"ad21a058824e473ca0c70348c3a71d88",
"a7f0050f0c1f49199d8596420552056e",
"1b4152fc9dfe483aa34306aaca83e092",
"cb86670a36f24eb1835ac379348f404a",
"e22efc1fd69546898e191377a4221236",
"94bd142633e14e16b6aef12d54ef9005",
"f9b743367dfc4458beafe74008338e23",
"e8d91d7b38b947b38a0a47240b2627b2",
"9ae368344a454bdbb2740d0a21def022",
"2b7b3a351ac84cc7a1a9d0719a785208",
"bd61fefcb0b54709b22538f62414980d",
"2e3c27205bcf4655a42a08bd1ba0af8e",
"b4b8763120ce48879f9b7a686b78b2b9",
"27f0cfed211d4655b2c2c9c0f6ca5f7b",
"12f0c659977f46e4acf1b08d318a9509",
"ac615fd90a8641388eecb7ed09b20f9c",
"5ed2eefa934846e0bd88cd6e92845753",
"7ec7be24ef50497180e9df9d2765b471",
"8aaf097ea1a84eb485811734c96df884",
"ca69a38db20e4e6f96b05a2117f5c003",
"08e49b64445349428d4377cd65dde439",
"bd366114cdfd488ca5ecb4d5500bada3",
"de94abf1c91e4fd696699aab361352ab",
"c386786325774accae3e04861032af53",
"4bd4d7f46af9407a8ae4d5382f22eedc",
"bb3eb0f4233d436ebeb0095371f0c4c3",
"10d34c6952684c2f81a5d9829f2f60c2",
"a58ddf29feae46acab311952f170f632",
"579fdd9ee01f48a88bd159af77c0c330",
"1505b325eaed4870a410f8c941f61fa8",
"a3bfae0f2d3449ffbf1d8f818ab78f65",
"101a76235b2646fd9b1bc8ba66a06666",
"70ccc6784d0e4cbda26df7f0b01fd08b",
"2b801d004c1a46bb86dca278d957a49c",
"15d204943ace462cb0c42f0f113e21b1",
"1e9e87d862914178847c0b374a16977a",
"795053b5491e4a8d991ab7d766590454",
"3b5a92f0f34f45298646f2f7eb643352",
"847ed6a940d742e082bfa4a9ca718a2d",
"145f88e72cb5406990f814bdf433373f",
"2df494832a724bd881e41de55295e328",
"a66e8647cf364091999eba0fb9e6f948",
"3ee3c89adb5145438ff5bc13a65cbc61",
"b198a99290d54998b776fe4eaa21f1e3",
"222d3256e0fe43ffbfa139d0547c505f",
"2529222b064847bca21dff59a35f2881",
"719f2af45f2d45ee8ca7506c22db14c3",
"783622e55d7d4f6dbef88194fbcccdbe",
"0e3769cd6b514fc8b55968a25d9d7af4",
"e83adbb10c15424bbac6acb24522de3e",
"aa61e94b5b5a4908a6eef08b1b6c156e",
"eeb978611db34191ad3118fd431bc409",
"90d2c6a06d1d4db397868439fe1481f8",
"186e9299e133496794ca179604455970",
"89727e24d46146448d58df4a60573e60",
"f49f0947ee4347c0a45a93df43fd929a",
"ccab06481e964871bafc4049ff03b398",
"08da20ef418f4fe392807a306247a98e",
"a159615c63d5452db77a76ba0b694785",
"f5979bcdb8c04b24a4f45050399629df",
"0839ecc773e046f2bc4842b6d82cfa07",
"9c35004319c94629a4a84242bf0f39fb",
"28d55e3e240b484d8012219b6267e566",
"fc1361058761469d9286c412e798b85a",
"add023dc73a24fbaa0e8ddc13e92298a",
"f9ba16479495446a8c97f5c5c2beaafc",
"92b16d5642474fa8ab2a19a68aae3c59",
"764ea9d054ee4b44a610f86765c94814",
"057efcadcab54382a8a2fc079a0255de",
"f0cdcdd2c6424369aa972d08f7ecf371",
"2239920431794aa984a0f83227f48529",
"56ee79d068b940a4bf55592a9769356c",
"b1e72db4cc6d40659130152e5a3315ef",
"877db09e2a254cb5b143dad606d00a53",
"420dc98e53994bdaa940ddd2eeb8613c",
"968c3517b961460da1450f390d970fbf",
"98526a25d74747bbbd711af5dcdf2f4b",
"0dde3213c0c64485838e2bdd2b78a321",
"679aef8c6b49494ea56bccd6e7b78e91",
"477e6fb7dcf946f3b467daa7f9956f0d",
"5bfadb12cb974e6ebafa4b846a87322f",
"f842b474d4c149749a59d917af61c355",
"63419dd164aa4eed82b87100f95a5f8d",
"206d362afb824ce5b9d6014fb09752c6",
"3e552c46221f4a6b847454d32f89deab",
"e77c86fcfa1a41058365ca8536def07c",
"7ae3a2d216d74242b128bfd2f1a664c0",
"b14154b69c0b4c9ba1448aaca2a5e0f3",
"d1353529346645169e0b03dcccde2ebc",
"09df3e4d28a44594a0fc455ce24c36dd",
"8915305b99564bb2821817e4008c36a3",
"c674cf1c055440d8bb8adc5392f06252",
"9a358e758f4840c99ff07cf62805cff1",
"20f3b6010e1c4f9aa6ffb3ebb62b3b18",
"af487a19bfa843028dbbd0c0b9015f04",
"73f9d9e38a5f4dc99c862aa713b97013",
"27fe94e0e22944afa626a3b117bf25fc",
"9b167861bf6248abaa3ef4ec481aef12",
"9a5c8c64db9b4cff8ab3904f62e88982",
"e79954a8b006484c941116ae874351c2",
"8057807f38164a0dbb108efa1ddd4e2c",
"90d9378c4be742f38b4d56b4e32452e5",
"3b199a672ed74cda9cb248a54ca30366",
"8dcf74d92cbb41829095926e77f29a08",
"5550f7812c004b7d9c86e2bb98abc285",
"03a2466b477e4d0a81dcdb56b1d0ceef",
"060cf4e8934844fbb2a79cd8ca1ac232",
"0b27f391ff0041e3a6b4229cea373a4b",
"cb910189cb66413bb1cecae653ec72e5",
"28e32446fc344e4e9a5d22f6a0e6e0a0",
"da5f9df562da43f28d7b7a71711558c4",
"e9ce8a4332994aaf9a4ad8c2004ca173",
"2dc32e66628c4175960e9f1b430ec106",
"fcb8af9a45c94427b49ca56b39a51b60",
"fc2c0895850b435691c218c549eda81c",
"9c62b6e1a785494fb5987eb361635ea5",
"b7d3bb19debd4c2ba2712c23099879df",
"d281a9c8e0a54430a884e2f26dcf8d29",
"af6f8867bd4c48ce9763a99497a12026",
"aa79a65cfee044529559ca73d5602d38",
"fcefb3ce9d1344f9bba9a38d01e1bddd",
"14c6f992cd2b4ce880349829d79e9de3",
"80641bbeb8144f33b466acb44b1fa782",
"5a8959c32498453d843c4d5a42deb5f2",
"a671c00c999d4a0f9e5912d275552eb1",
"f099144e4cc044b18f59c18477c4fe30",
"fb5c184559ac46e7973c3aa2a47e68b4",
"834f12237d794ea19b04c2d917a2946b",
"6fbb55ec5b2041199ba6bb0b25bb38b5",
"07342c69a91744a4bf77a62e2b4ce03b",
"8bad7bbfa6864913835e314fd5ea0838",
"e5a6e617fb484d14beccebbba55b717a",
"8053722cd0c7451c9a1969c8ccfcd935",
"8321c233e4744b5786036d922ab12ad4",
"8f265bba11fd4f6bbf9549bbdea917a9",
"cd8bab524f8046b99999ee5079eaf87e",
"41ab56c5a20e4123a1a52382bd5142da",
"863b8f570b984827957050e889550622",
"f6a0781ab4ca4285aa67dd08dfb6fc4f",
"ae091b1d6b594ca6a2b4629cefc9960c",
"6857ad24d323488a9cd954b17551b84a",
"3c92960d5c06448f9c7c6eeb0753a201",
"f883e379e3b04ce28d882120f1e3a71a",
"1ae8e3cc85584ba7b4667027f89f170e",
"4e8d9b72310c46adbd3cfd7fd1e09d3e",
"a74cd0898baf4d99a7d3017339335c44",
"ecd817adcb4c451f9cb3bc5ee58af80e",
"24c1c1c851cd419b80ce8ab8dab1cfd1",
"765aa1d82bc645cc886cb20e18badb62",
"97f5463185454e81823d446ca707b503",
"ae3e6bcd1e834b9e84fc93e492eabae2",
"baa75b0fe03f40a48922d023fc2dc378",
"52d18dd94d7945e7b638c6dec7647408",
"f889d284532f4affb2ca1e5c687fc2b5",
"ff0f3693f47d4297a225d5183523a965",
"2b8c4f7d3da44e598821a4d8a7ed4882",
"d35b6a605805415290d3b31a9b1554a1",
"05bd1e8bb24d4d8d9099d4c2442822f3",
"40cac9ffa6d1420987dc4f2046eed3d3",
"a444c0013a774b698600b50d0f2c03d6",
"72ee16af9df84c118de32204955fadbf",
"dcb51af9dd0949ca969883f977b5fa17",
"f76554a0ada84b74b861ac28c912b91b",
"4a4175501ba04f96af45bd4628c40ec3",
"f66c3faf8779401bb68fe83bd1eebe26",
"83b8fb2a55ed42ae9cc9042c98bb0abd",
"e8f003eb62774b9fb055a365fbf5c935",
"62e43fbd88f0465f84f3969b91d6c607",
"84b241ee19cc4b889bd607229aaf731d",
"1cd58e32f0c24e569809cdf0e82b4285",
"7d45d8ce2aaf41d79fd26d600195a33d",
"3525a8248597494981c3016f8865f835",
"57f9b49aeef94778aaa9ed44ad47db6b",
"084321199c0646319ca3c397be6d3f53",
"02df0b7a542441fb9e328fc25955f5e6",
"746970df41da4653b1e2b9dcbdc75b4d",
"61847038eb4c498e9d6d7c40be18efce",
"37b5653987f4439596b70eac66320ee4",
"b9bd96312f8f402ba81734c576989741",
"2bbda9dd0d9a4979958eec45dddf261c",
"c3f2a83658464421a3dfecff75bc246f",
"05944fad3b0e4eae955972d78073aa7f",
"cb61389fa01a4d6bba30f9d202a16b5d",
"48c7d86d3fd24bbbae643d0b5a86fcb0",
"455ee3f9b43d4da9914ff79be4508394",
"3b71c2003dbb4c19a4d79faaa53c715c",
"37dbb66376814d4cb34bfe9c441a3a4b",
"8b1ba89f1f894e25ae9951dcbf082811",
"3ba7a48aaa0649ef9bf56cb3d1d0b640",
"c6f5732d731e4eeb928ad6b5eb7b6950",
"f7aff1a41d534561aa283f513f6c2c11",
"9eeb525f60044042b753dc871a1d2d86",
"b9f1ab0972734700ba12f18bb77707ca",
"ef7258c696654b938959bbaba324cc9d",
"d0a802b82fdb4dd18a073c7799f0288c",
"561ce6b34ff74de8b3124a3e72065328",
"56319a71208b4617ab11df2d3968d9f8",
"ba24d2fcc2a947428a25a87ba989a13f",
"5e1cc82b8c754c70beb035a368693ee5",
"c3eb48169c7147bb88d1de1e13b3f82a",
"3c0e67c852cb48b3be084c621a961fd0",
"3b7f15fc6a9e46159d4a223418e739ef",
"f5b634e632c94ba7acd8b61bd38c060e",
"9310b2dd983044459bda6f05bea45952",
"26cb895a03dc45cfb8bd301a248d56e1",
"79bb5f94abef454584d81370deb88d16",
"326e767209e942f0a4d8822dca492e38",
"da70289e7df744f79f0bfb0b3ed187db",
"879ee63d4e644fee8aff9b3b448bcb66",
"033601254f14477897e337aa17ccfe70",
"f3f41fdd2e3448fe93bde70ac02d5a7d",
"af70c516a8bf4c78a1ad2d237f0a20af",
"6ba11393f33f45c298929ede81d8114f",
"fc49a7fdcfa54393a2c98cc2bbc7f6b5",
"7fac50ee2a04444e9fa0f6d5209b40c8",
"2b18349e7ba740818cdcefcc2e84f776",
"7ee0afcc47b840d08b90243765204027",
"ab288573e1654ac585b823dca4c3d4fb",
"5c5ead4cad9c4d26b8aa7f3618564a0f",
"ef4439f089b04c0fb824b630188a0e66",
"01f0285689ca4cb9a90a59ddb427f066",
"aff061373456452e9a7dfb66edea126f",
"6213aba03e6545059f3db2b31c3793da",
"ed492a9b413e43c28930fdd5c6695985",
"8ffc8c396bd54f768090496f09d27524",
"2f09e6ff85fd49518d64b43a7264a72b",
"13093dae86b04d378d53eb49e4ba540a",
"70e11cf742e3457d9e80b1d885c7ee36",
"1192338b4e5a479b99f7015553b218ef",
"34b8f36a1b5d443797dc61a371048dc2",
"4e1776418b2d43acbbb1ff3f842cd3c8",
"33501e566aa7495f815ed863cc51fc14",
"c9ff774bc0df429e818698cce8dc2fa4",
"329def0f7b6749aea6f51c36d4b43073",
"c078482007f04bad95979b3525d2befc",
"a77e3ec11dda4ee1933f96ee6932d6ef",
"0ab5ed479b894682984195fb8e0f21e6",
"8d8492377c534fb2bea713c6f257c907",
"e60517e9dc0d4cc38497798af5bcb62c",
"114fcec3ff0e4acf8f826e3137e326fc",
"f2acf350f39841228e3f0974e6f81fe7",
"be231899278b4d489c0e25d127a038f7",
"a6628384afbf4121a18a8465ff4270ca",
"4aaad6620bfb42e3abebc1437a73d918",
"c42a6002120a441fa1914c51e10e0833",
"349fdc2194d349479970aba311ac6dd0",
"b78a42c29f13424c85fbeb3a6251fcba",
"c453a9eea3cc4023bff81ddbd1e24cc9",
"d8f7de1bde874e5491d75922e64a1160",
"65a89c0312b74f84a6e184c55aed1b47",
"6fab642ea2a5497597b8bdb6c76ee428",
"f9220aceee9243d481053789bee3981b",
"6e86729baa99454899024762c43f9f19",
"32b8b777179742b1aed204846d390723",
"bc526c8142fb4f3ea54d4f16f2023ca7",
"17553c9a14004d20964b9020b3478012",
"9868a86e59804167b5fd057ebdc74bb0",
"900796657cd04929ab8b5fb5281a037d",
"1f9198ec83b748faa606ba9eff694319",
"a0073191336848ea9b47e98fd9744d21",
"22aac143e0f5467084ce5050bdacbcfa",
"bc77681f4e59400eb8c87ec45f771fb4",
"7b596751658e4a42be2df3ae1d89a676",
"28c53e2e26c840f99a67abc7aeb56c0b",
"dcb79f2c0f2c496a968fb16f4b00c484",
"edf5c14bc9fb46a58b29d6c7b987411f",
"e246a20f82c245b6aa9d1fe9a6032a51",
"fe63bdb81681467fac7a304f7d2aa7fe",
"50120f22041049478892846474adf7a3",
"dd68671579d641ee96e94308bd414af3",
"8b4a817828164d8881ae51741fe3f830",
"5065fa46c7cb485597eba94d6d8002c5",
"daf2057ed47f4e87a13cc7cf2abb75bf",
"e35f7ff15da14188b840dada11a47ece",
"137eb1fd819340528e5a3e038dc6de16",
"34e01ad589e540158e256360b5ffb7b4",
"268633aca64a4d42915ffd255e32d1f3",
"2a463e4ede2e4585a107524347e28d23",
"4c96ecc894a840138c343b52964a84f1",
"228af23ac785495fad3d43c462f45cff",
"8c09ca475f4942b698413819083ec250",
"2b0fc5d46dfa46e88c7bf2c503d7527c",
"0ecad2e60fa4408880b6ede032303b1d",
"1dea4d98876d47e8a15cd392c5427d11",
"96ee3f2a26c34b48a00890d41def6932",
"c9d78fa412ed47239b01cbb1b0e1446d",
"af1cfb7194a14530bc3ad60d5f8b61bf",
"ec5220e7b70243898d297add61c82a44",
"cd29f7c38eb648208322aa89fe365deb",
"33bb24b243b940c3a9760dff9fb5aace",
"b0b96f23eb4244c585adb85479305259",
"8c56f0529b394c0590ea2f117bfeec65",
"7489b0a69a4048d186e94821ec0467a4",
"6ad83135f7a8432e977a6e43223f1c6e",
"ec8d41cdac4e4812aac1822f84cd1475",
"6f16fea55e1747568fa40be3549636b4",
"0adea55f95534184bb74e5776ac3fa1c",
"50eb75154b3446468e4f8ab7362a2737",
"e1e7f7fc3e894f40a41bd2a4896fb84f",
"527b8ae48be0450d947503014e31f180",
"ec9ae03465c94bc0829dccd28303ad07",
"614fff9be0c24228973619a6f316d340",
"0eb8f25747444f54b920051fab8ddc73",
"dd59795662c047acbb730f9bfa1a51a0",
"a7253032429c425ab18a14edfd9f73fe",
"f4a499f00254496495b1ad8893006343",
"4ea032dd2ae84c1382705738719a1a99",
"2ad3135f89c0486387fa803913a472bf",
"6fd0aee6588b4d28a668b107e82e7ab2",
"2fd8b883f96143e08f9f8ad2fc2312a0",
"f8bc47e8e89e4c13ad027c6bc5a96b47",
"37a7bbdc578844d48dae8fcdb2d6d7a0",
"aea2a11a41d44adea08d7fa1d8733bbe",
"1492f18a59a04f80a6d7a2c17d302ba6",
"3af726aa69f54285b6223efd3ca63363",
"72fb0a5e12644234a6b153536df60d0d",
"db4f58bee4964849b39e99689545f45d",
"1602f31a3da7466f8c80a5deae6e720e",
"ebfd5402dac4449ba72af5c1ee394bd3",
"018be69f42304fbc9fe31e18e5a66c66",
"923c4bd9f81147158dbbd9da30493e79",
"42ce78fc10424d9e91788277930dc329",
"ce668b98cbd7425fbdf96eafd818b514",
"c2dd3c25b9ee45278431791de1732cdd",
"5cd56ca417e045c8b5eb4307868e111e",
"5c9ae54c07b047f7985e499b54f78b27",
"0e3e9d71e4e54090b95f4d38d8891a24",
"00a64bbaab6d47fc94c83f6e20c72e90",
"5fa666f3d70d42368332305007fd6e53",
"2333de5702a34938b03afaf008193bda",
"c2434c0e8c3c432cbc0a819cb8ed6af3",
"0a0d45df3f03466a892dadae31187fe4",
"5df0cd17a07d427183863106014f983b",
"aec59ebf1f1b4a35bd0e6c2ab4476e8a",
"2ba8814e90594081b5a3aa046bde8854",
"0e450e5a072b4a44a6c6514e8c522b5c",
"cd62dc4c1d2c40389953d1b44186940a",
"8b68a825af984782be690a9f9c276105",
"ef44c16e192e4ad398ce3e6d1df78abb",
"95ba3bc523b94184b6266af281c02e3b",
"842694bfbde0433d865ee30ec424d1eb",
"ba4c22ebaa354c8595c4d4b86dab282b",
"80e24dcd024b478c9af2906a54a59525",
"53f118ecbff6418f9e648bf9a90c96cc",
"7e17c3cc0f6a433889cd33c59c79822a",
"1e8c3e0fb94743c7aad99cab12427dca",
"ded9825a415c46d6ac7176e346564de2",
"a22d8909b85a41668d51afc515418c07",
"b46a89d513e54b34865947d9b9fff4d3",
"617cf26e1be343ce99b18d4340d50a59",
"7f5eb8c769a74ba5b7e1fd1a64047302",
"e86806f376ac409da8b642e2f36d00cb",
"c39490d55abd4eb79093f9d2b1416943",
"dcfc2bf33e81436ca2443080350de613",
"df3a853658074a07aabb0458f1f70257",
"7de6af355be8471e9db48af913aa7efa",
"89fb350fcb684978b473d71f6cd57bfd",
"5f17f695151840d89481d8fc5e107667",
"f9a784d2756540e6bef3e14a0e3bc135",
"5c9e732e241748ec85d8218173df036f",
"559711430b7f4dcab42e851357ede24b",
"05ebe3511ba74c77a5c3b1d433a877c7",
"436cb27dfdd048408a28eb888d0aad94",
"2a3d03f955f34b7f85c0f5ffbb08b90c",
"bd5281c6e33b447dafad62a08e185db6",
"507fa824dfaf4405829259756cb14891",
"4205ff4deb4e4b37945344d91bcc4c27",
"5e08890cf8ab4b4287608c525e110e4b",
"c24396ee35e34accb33030610b0edd14",
"8dfc3b47486c414bbe0b0a2a4549db00",
"b65c224e0c88402c8038786b230dbbbb",
"31f4a605a1a64d98b3ec3b2f9fd95607",
"c31465a5c1624ffd9a9df890ee4681ba",
"ac5bd0de43a040679ba2db493781318e",
"75d9e382739e45098f8f33ba3a06c3ee",
"4fae856c0bab4b66aac4e54cd57df43e",
"939f0527bd634cfa9a9fa0a7adae57d3",
"373477307e224d6d8ba72ac7c725b643",
"8b67bb22f9c24e2ba120eb1c75f0e685",
"22e0f2babea74798be1a366a7a113f4e",
"38a57ff10e03439c85546c8f61169629",
"f8decc8f056a487d860d340c33b18fea",
"1b09b9aa572c4c64a520afa75678c1c1",
"44b2fbafcc1445f9bc83807920dde249",
"5733bfccda7f4beaa56943c484b24a36",
"e0344d48720e49ee9ee6206e3fdd9e9d",
"d62dbc35d6c74a19873a5ade57f9d9d1",
"58562c371dff499384191c2ec087890d",
"bbc7940c0bc24f2ab2730019e524a201",
"7043c94a1ab74cb1bfaf333383c97c81",
"93b6eb0e398640d19817a4e21f67f2f2",
"c039d7252e4c496eab074417ecdf4355",
"f53c8a101aaa422bad5090dadc56c0d6",
"de430be8eb0c4c2983bbb6eca74aac9f",
"97703c83bcb74d4d9be13df1136f7e4c",
"7c58dcefcffc44cd8a4afdc0d640c983",
"4f6512b40d5a422cba16e1966ecf6604",
"16716eb5b4e94c07942c651341aa7cff",
"4c0d17e901574942afa382b37a9f4caf",
"9b729fbd6b2f4b5b9dd692d81c938364",
"bfd3f3f300e04444bbae66cf1ea158f7",
"a673184704d14d86a55c0aa98c59fafe",
"002c9c7c57414d0cae965fb6a24af1cf",
"de1a7bab74664e1f9bbccbe1e4e4b832",
"31333e73a887406b894dfc154d62fecc",
"0f273792e9ca44a2adcb488320c592c0",
"cb9ac75655a14751b1a9eddaf07be57b",
"a685368ef38d4e168fa18e671f55209d",
"bcdcc888c85e48168558e77bab73baac",
"66f30e20bdcc4548bce562b621977723",
"0c9ae5b8a62f4eb79b34852ab9e6179c",
"f696ecc93c2d4bd1bd9b7157d6d001ad",
"f264dce91cc24e4781ab510f19a3ad44",
"7887d396459c492bbfad390429577ebd",
"6946c1c8a203491eb98df37773c9e821",
"e121a60cae334663b651c25dbadd5007",
"98197f6f840b49d8aa74a35173195b7b",
"a48bdaa4812d479ebe9e1aa1d51f5f75",
"f0c41b4ee1784c91a554921b2042f4e6",
"eab7423f497b4688b45ef6e705ba20c0",
"aa34a66b5a08443db0f6cd66d13182e9",
"a898645c429f429fb11d5caae5fef745",
"55ff3b38b30a4cb0b1ac7c15387d8347",
"8f38945bc6da4185b900b317cb31c2f8",
"732a30d1864646a19dc98daa79825aa1",
"db912c5e7bb0467e8c1e58d31901fe81",
"a61c89c03c644bd4bf81bea7242a51ae",
"00b1abbe0d6d4bc9bf7f566639dd340f",
"9a424970eb364c9ea10ef4aeb553e16d",
"e4ebc7f773f34e9ca08718ca456b1477",
"45d523f3da7d4d06a9024abc1b02e351",
"ac9358b251fc45b6846ae3ce924cfc09",
"b4f7805a160248b3a0d022f796280a50",
"b8ec0ea683ac437d9822c8da7e4c90ec",
"dec4b0a5defc4685b0c02937897ef671",
"f6fbcea9919a4820852da90e85029a40",
"3b79e5fe00e147a28d27d077cdbe5799",
"47e961a2d4b848b1a26ef1f198d69393",
"3a1733117fd846d89b817dc8babf75ea",
"cfbef4b73e6b4afa9d57de57079a7b9a",
"38d7b22b26fc4bdfa59941b6db536d50",
"1bdead6ad1734b5fae26237d89ba5b0a",
"ee47760479c3405caca8ce860abd05cd",
"c608dd40e7ac4c26aa753ad8da6dd39f",
"4edfcb597e464e4cb0e85f648a162248",
"7132b3417e86427288dd3090b27e0f69",
"aa7aea22044549f08f4e280b66abbe85",
"1935244f6deb4c2e89a50f64eb989258",
"aac3e56948af4cf98a96111f319ba1bf",
"20afd126baaf445b8f7a32591c1401fd",
"cbca8d65db8544e084bd981bd9b6a265",
"50c644f806c8488989c4b8b98d4afff1",
"a4e5997e6e56420a92b7e6488f247613",
"b247ce769395418796a4a331e3e3be98",
"c434e34ed0584b95a5697e97b6a69ce2",
"c01fe09c60774e17b6d589d75a71b02f",
"c1865e35df3d4b579710b8217eb6ede4",
"5f640b5598684700806849c50ace6659",
"63fcb1be930f476eb75390d6390a45e9",
"e12f6e7ef4e44b53a7b498eb77b6dac4",
"7d874c98fca1486d8252f8685c75678c",
"58d66eb5c5b34c349e3f1f35acd099cf",
"0547612a139547ec9f43128dbfa7b41c",
"3a958a75ed574721a7f293456fe6853f",
"851900e3b46841e09c34ee75c66bdb79",
"d44ac97b2f88461ba000fa5054d6181a",
"6fa441623d344926bfc337945c1579ae",
"4d7113a786214dedad9e65555958036c",
"46bebe5b2d954da69dd4c261658c0415",
"6ddb70ff016c4f5bbd815d0dafcbffff",
"526ba19bf4e448039ea59c9fbd29d4d2",
"3213613069634b03969d30ce9f9efbc0",
"d0ebea0c443b4d069c42054447ce454a",
"71a5d94a783b4867a12e86ab0459c6a7",
"c8a3bafeaa384a97b9e6088e0f4789bd",
"35797e9c52d1416baf5fb2cf8bcf4c4a",
"4553c0be262a48e6b55af197a655ea7d",
"ebb50c78be9b4803b47330223dca0f95",
"da7611c400fa448d95183e76233984f0",
"5bca94a05d994165ba33ef53d7196bc9",
"4680d19f55cc4effba2344f932725e46",
"f15c97c534c34362b7bce7d795f7cf7b",
"8edae29b63cf4390ac3896d9c8b96ca6",
"d0e1aebb79c54af285c1009b5bb20dc3",
"29d2a3a624a2442eaec2cf09049b8bec",
"1d9a18538def489c9463a3c0469b1a7f"
]
},
"collapsed": true,
"id": "rsiPF39gCQd5",
"outputId": "353dc2aa-73a5-462e-a3fe-fd8973aa2bba"
},
"execution_count": 51,
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2de0df277f9c4e13bd090350fd693f1b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "61d09777a8fd492a839e13f418e05e03"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "89d59d20091a4274a9b20932eca93c0e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "aaad63d251eb4db2a3742050f9bae01c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "07e8a81964ae4edc80240cc0200d6bfe"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "1afaa499508346a598cc57664e56a10b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "d65bdc8c1bb944638e4ab92a31d43c49"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "614265052f494d5393a42fcb00857878"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a7b75c8ee2b548419fef546a428899c1"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2ac1739193e4411184e08aea5e851485"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "47e553b000ca42c89ad05b5b6fe091c2"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "49a8f34a4cbe4dffbaa8aed1035486ef"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "bcb54abd6ab645ca8d7c457bd3de8fca"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "37c7688384d745d8bee684ce19563213"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f0c52da6bdda432d9b2d090cf773d971"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "c03099c03e7a4e45b5d263cffa8a563b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8aaa194b03214b2999ab1e7c5336589e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "8835db01b250450cb9424668e5b02d58"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f8ae01bfeabf41ae92712e8cdd363cf9"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6aa2c7086b534d66b5a3270cd31ee0b6"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "eeeac16cb7b447029abf57fd0921bca6"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "43b390fa0fb443168ed8d2bf2f19b62b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "966e5a6344ac47c09607afacc99cd48c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ab073172e1cb4914a6fd1df08851fda7"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e2975d86102b41f08491d6bf903949a3"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "d89868cdb8224e75a1e739013bf4055c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ae0bf3021f9e4a969b0c907af3882dad"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f2cfb6f8f43546e48ce027e4b605d2de"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "52b8bdc3c59344b8b229b54d2053a9d2"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b5e965b8807b43f2919e2f46c63e8d0e"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2c1d471ba00d4ccc9225542df7c3384f"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "3a032238bf944bc483ac6b00ab34ec9c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "4a902308df304d1e890fd49acacb9038"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "c3aa64edb7cf44148b3ece528eb00c31"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "372a099557d64ba284068d91171cb035"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "da9c9e73ec6f440bb6d06493c6fad98b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "bd7b615d96544a3e8e9a710db4305c53"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5ec2f3a8413440be8d3dcb17d6e7a361"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "e71b1fd553614438bec946379e161e41"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "122422eb961d437fa929c77f0b5fea36"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6ee726b6631b47b5900998589199c1a5"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "00269fddeb7e4baf8d4fe7e7fb0d1c29"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "48f5fa4ee17a42428a2e4c5a07a047b8"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "ba93dc25e573408abfcc5e8d1b89afa0"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "65ba9ddbf04c4dc8bd21e26f994144c1"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5676b7bab7e546feac699ed797944fd8"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2b82c24fbd0c4cd3858073262e41e692"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "eb93023cf40d454099c089d027d8805c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "c06ff6b697e44619a85428d4dd2eb2ea"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "9d71a0aef329493480143a366595271c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "7a264b392cbe45e38d3cc3293fc91dd7"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "377660c0cbee4ffcba0297648044e3a1"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "6253e8f246c740aaa2983c04321895d8"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "d38bd3b982b74052b57dea5697964fc3"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "5a0749be289e4e1481680b8e66ce311c"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "2d1cadfbb33842b19b294211f25c3647"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "439236cd825b465483e291e7e2892fd5"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a1ea5f82894e4013a39e20c4f301b50b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f1458ff9d5784118ac5451b008a576ec"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "a937c90cbc7b412c9fd5a4008b33bf6b"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "fcbf22de9d434a5eabd1aad02d1ac878"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "0ab3e72940474b38a4dd009b600ba1f2"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "bf7cb739acc34e8f82a8bcdb7db65997"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "d166b258f9044f93939b0fc1ab76a285"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "1dbcfefb5b3f447888b2a4d7896fc284"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "f25fe9c8148043eca3a04fd17c81174a"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "b3627cca92ec415685583902406cb4ed"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: []. Skipping setting a default `ModelSummary` callback.\n",
"INFO:pytorch_lightning.utilities.rank_zero:GPU available: True (cuda), used: True\n",
"INFO:pytorch_lightning.utilities.rank_zero:TPU available: False, using: 0 TPU cores\n",
"INFO:pytorch_lightning.utilities.rank_zero:HPU available: False, using: 0 HPUs\n",
"INFO:pytorch_lightning.accelerators.cuda:LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n"
]
},
{
"output_type": "display_data",
"data": {
"text/plain": [
"Predicting: | | 0/? [00:00, ?it/s]"
],
"application/vnd.jupyter.widget-view+json": {
"version_major": 2,
"version_minor": 0,
"model_id": "efa56dcde31f461a835778d3ff5bc1ad"
}
},
"metadata": {}
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:210: FutureWarning: In a future version the predictions will have the id as a column. You can set the `NIXTLA_ID_AS_COL` environment variable to adopt the new behavior and to suppress this warning.\n",
" warnings.warn(\n",
"/usr/local/lib/python3.10/dist-packages/neuralforecast/core.py:902: UserWarning: Dropped 1,107 unused rows from `futr_df`.\n",
" warnings.warn(f\"Dropped {dropped_rows:,} unused rows from `futr_df`.\")\n",
"INFO:pytorch_lightning.utilities.rank_zero:Trainer already configured with model summary callbacks: [