mirror of
https://github.com/wassname/pytorch-transformer-ts.git
synced 2026-10-03 12:51:38 +08:00
added xformer notebooks
This commit is contained in:
1 parent
85069e930f
commit
514b2d8627
4 files changed
+2763
No files matched your search
@@ -0,0 +1,672 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 1,
|
||||
"id": "7c64affd",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from itertools import islice"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 2,
|
||||
"id": "8aa55868",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"%matplotlib inline\n",
|
||||
"from matplotlib import pyplot as plt\n",
|
||||
"import matplotlib.dates as mdates\n",
|
||||
"\n",
|
||||
"import pandas as pd\n",
|
||||
"from sklearn.manifold import TSNE"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 3,
|
||||
"id": "6a730716",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from gluonts.dataset.repository.datasets import get_dataset\n",
|
||||
"from gluonts.dataset.common import ListDataset\n",
|
||||
"from gluonts.evaluation import make_evaluation_predictions, Evaluator\n",
|
||||
"from pytorch_lightning.loggers import CSVLogger\n",
|
||||
"from datasets import load_dataset\n",
|
||||
"\n",
|
||||
"from estimator import TFTEstimator"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 4,
|
||||
"id": "fc889c9f",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"dataset = get_dataset(\"electricity\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 5,
|
||||
"id": "1717d0d2",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"estimator = TFTEstimator(\n",
|
||||
" freq=dataset.metadata.freq,\n",
|
||||
" prediction_length=dataset.metadata.prediction_length,\n",
|
||||
" context_length=dataset.metadata.prediction_length*6,\n",
|
||||
" \n",
|
||||
" scaling=True,\n",
|
||||
" num_feat_static_cat=len(dataset.metadata.feat_static_cat),\n",
|
||||
" cardinality=[int(cat_feat_info.cardinality) for cat_feat_info in dataset.metadata.feat_static_cat],\n",
|
||||
" \n",
|
||||
" batch_size=256,\n",
|
||||
" num_batches_per_epoch=100,\n",
|
||||
" trainer_kwargs=dict(gpus=\"1\", max_epochs=50, logger=CSVLogger(\".\", \"lightning_logs/\")),\n",
|
||||
" )"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 6,
|
||||
"id": "c77b420c",
|
||||
"metadata": {
|
||||
"scrolled": true
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/utilities/parsing.py:262: UserWarning: Attribute 'model' is an instance of `nn.Module` and is already saved during checkpointing. It is recommended to ignore them using `self.save_hyperparameters(ignore=['model'])`.\n",
|
||||
" rank_zero_warn(\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/trainer/connectors/accelerator_connector.py:446: LightningDeprecationWarning: Setting `Trainer(gpus='1')` is deprecated in v1.7 and will be removed in v2.0. Please use `Trainer(accelerator='gpu', devices='1')` instead.\n",
|
||||
" rank_zero_deprecation(\n",
|
||||
"GPU available: True (cuda), used: True\n",
|
||||
"TPU available: False, using: 0 TPU cores\n",
|
||||
"IPU available: False, using: 0 IPUs\n",
|
||||
"HPU available: False, using: 0 HPUs\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/trainer/configuration_validator.py:108: PossibleUserWarning: You defined a `validation_step` but have no `val_dataloader`. Skipping val loop.\n",
|
||||
" rank_zero_warn(\n",
|
||||
"LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
|
||||
"\n",
|
||||
" | Name | Type | Params\n",
|
||||
"-----------------------------------\n",
|
||||
"0 | model | TFTModel | 104 K \n",
|
||||
"-----------------------------------\n",
|
||||
"104 K Trainable params\n",
|
||||
"0 Non-trainable params\n",
|
||||
"104 K Total params\n",
|
||||
"0.417 Total estimated model params size (MB)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "ae3ad0d41ee24816aff4909843087448",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
"Training: 0it [00:00, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Epoch 0, global step 100: 'train_loss' reached 6.39991 (best 6.39991), saving model to './lightning_logs/version_42/checkpoints/epoch=0-step=100.ckpt' as top 1\n",
|
||||
"Epoch 1, global step 200: 'train_loss' reached 5.69044 (best 5.69044), saving model to './lightning_logs/version_42/checkpoints/epoch=1-step=200.ckpt' as top 1\n",
|
||||
"Epoch 2, global step 300: 'train_loss' reached 5.48190 (best 5.48190), saving model to './lightning_logs/version_42/checkpoints/epoch=2-step=300.ckpt' as top 1\n",
|
||||
"Epoch 3, global step 400: 'train_loss' reached 5.36685 (best 5.36685), saving model to './lightning_logs/version_42/checkpoints/epoch=3-step=400.ckpt' as top 1\n",
|
||||
"Epoch 4, global step 500: 'train_loss' reached 5.33330 (best 5.33330), saving model to './lightning_logs/version_42/checkpoints/epoch=4-step=500.ckpt' as top 1\n",
|
||||
"Epoch 5, global step 600: 'train_loss' reached 5.28454 (best 5.28454), saving model to './lightning_logs/version_42/checkpoints/epoch=5-step=600.ckpt' as top 1\n",
|
||||
"Epoch 6, global step 700: 'train_loss' reached 5.25834 (best 5.25834), saving model to './lightning_logs/version_42/checkpoints/epoch=6-step=700.ckpt' as top 1\n",
|
||||
"Epoch 7, global step 800: 'train_loss' reached 5.21931 (best 5.21931), saving model to './lightning_logs/version_42/checkpoints/epoch=7-step=800.ckpt' as top 1\n",
|
||||
"Epoch 8, global step 900: 'train_loss' reached 5.20208 (best 5.20208), saving model to './lightning_logs/version_42/checkpoints/epoch=8-step=900.ckpt' as top 1\n",
|
||||
"Epoch 9, global step 1000: 'train_loss' reached 5.18780 (best 5.18780), saving model to './lightning_logs/version_42/checkpoints/epoch=9-step=1000.ckpt' as top 1\n",
|
||||
"Epoch 10, global step 1100: 'train_loss' reached 5.18656 (best 5.18656), saving model to './lightning_logs/version_42/checkpoints/epoch=10-step=1100.ckpt' as top 1\n",
|
||||
"Epoch 11, global step 1200: 'train_loss' reached 5.16078 (best 5.16078), saving model to './lightning_logs/version_42/checkpoints/epoch=11-step=1200.ckpt' as top 1\n",
|
||||
"Epoch 12, global step 1300: 'train_loss' was not in top 1\n",
|
||||
"Epoch 13, global step 1400: 'train_loss' reached 5.15909 (best 5.15909), saving model to './lightning_logs/version_42/checkpoints/epoch=13-step=1400.ckpt' as top 1\n",
|
||||
"Epoch 14, global step 1500: 'train_loss' reached 5.13883 (best 5.13883), saving model to './lightning_logs/version_42/checkpoints/epoch=14-step=1500.ckpt' as top 1\n",
|
||||
"Epoch 15, global step 1600: 'train_loss' reached 5.12479 (best 5.12479), saving model to './lightning_logs/version_42/checkpoints/epoch=15-step=1600.ckpt' as top 1\n",
|
||||
"Epoch 16, global step 1700: 'train_loss' was not in top 1\n",
|
||||
"Epoch 17, global step 1800: 'train_loss' reached 5.12115 (best 5.12115), saving model to './lightning_logs/version_42/checkpoints/epoch=17-step=1800.ckpt' as top 1\n",
|
||||
"Epoch 18, global step 1900: 'train_loss' was not in top 1\n",
|
||||
"Epoch 19, global step 2000: 'train_loss' reached 5.09966 (best 5.09966), saving model to './lightning_logs/version_42/checkpoints/epoch=19-step=2000.ckpt' as top 1\n",
|
||||
"Epoch 20, global step 2100: 'train_loss' reached 5.09288 (best 5.09288), saving model to './lightning_logs/version_42/checkpoints/epoch=20-step=2100.ckpt' as top 1\n",
|
||||
"Epoch 21, global step 2200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 22, global step 2300: 'train_loss' was not in top 1\n",
|
||||
"Epoch 23, global step 2400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 24, global step 2500: 'train_loss' was not in top 1\n",
|
||||
"Epoch 25, global step 2600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 26, global step 2700: 'train_loss' reached 5.08489 (best 5.08489), saving model to './lightning_logs/version_42/checkpoints/epoch=26-step=2700.ckpt' as top 1\n",
|
||||
"Epoch 27, global step 2800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 28, global step 2900: 'train_loss' reached 5.07240 (best 5.07240), saving model to './lightning_logs/version_42/checkpoints/epoch=28-step=2900.ckpt' as top 1\n",
|
||||
"Epoch 29, global step 3000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 30, global step 3100: 'train_loss' reached 5.06531 (best 5.06531), saving model to './lightning_logs/version_42/checkpoints/epoch=30-step=3100.ckpt' as top 1\n",
|
||||
"Epoch 31, global step 3200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 32, global step 3300: 'train_loss' reached 5.05730 (best 5.05730), saving model to './lightning_logs/version_42/checkpoints/epoch=32-step=3300.ckpt' as top 1\n",
|
||||
"Epoch 33, global step 3400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 34, global step 3500: 'train_loss' reached 5.04352 (best 5.04352), saving model to './lightning_logs/version_42/checkpoints/epoch=34-step=3500.ckpt' as top 1\n",
|
||||
"Epoch 35, global step 3600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 36, global step 3700: 'train_loss' was not in top 1\n",
|
||||
"Epoch 37, global step 3800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 38, global step 3900: 'train_loss' was not in top 1\n",
|
||||
"Epoch 39, global step 4000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 40, global step 4100: 'train_loss' was not in top 1\n",
|
||||
"Epoch 41, global step 4200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 42, global step 4300: 'train_loss' was not in top 1\n",
|
||||
"Epoch 43, global step 4400: 'train_loss' reached 5.02966 (best 5.02966), saving model to './lightning_logs/version_42/checkpoints/epoch=43-step=4400.ckpt' as top 1\n",
|
||||
"Epoch 44, global step 4500: 'train_loss' was not in top 1\n",
|
||||
"Epoch 45, global step 4600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 46, global step 4700: 'train_loss' was not in top 1\n",
|
||||
"Epoch 47, global step 4800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 48, global step 4900: 'train_loss' was not in top 1\n",
|
||||
"Epoch 49, global step 5000: 'train_loss' was not in top 1\n",
|
||||
"`Trainer.fit` stopped: `max_epochs=50` reached.\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/utilities/parsing.py:262: UserWarning: Attribute 'model' is an instance of `nn.Module` and is already saved during checkpointing. It is recommended to ignore them using `self.save_hyperparameters(ignore=['model'])`.\n",
|
||||
" rank_zero_warn(\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"predictor = estimator.train(\n",
|
||||
" training_data=dataset.train,\n",
|
||||
" shuffle_buffer_length=1024,\n",
|
||||
" num_workers=8,\n",
|
||||
" cache_data=True,\n",
|
||||
" )"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 7,
|
||||
"id": "f8a362b6",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"forecast_it, ts_it = make_evaluation_predictions(\n",
|
||||
" dataset=dataset.test,\n",
|
||||
" predictor=predictor,\n",
|
||||
")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 8,
|
||||
"id": "5fdc12da",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"forecasts = list(forecast_it)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 9,
|
||||
"id": "4b7d3409",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"tss = list(ts_it)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 10,
|
||||
"id": "9b154bde",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"evaluator = Evaluator()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 11,
|
||||
"id": "0fdec8a7",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Running evaluation: 2247it [00:00, 6166.65it/s]\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pandas/core/dtypes/astype.py:170: UserWarning: Warning: converting a masked element to nan.\n",
|
||||
" return arr.astype(dtype, copy=True)\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"agg_metrics, ts_metrics = evaluator(iter(tss), iter(forecasts))"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 12,
|
||||
"id": "7f28f4d3",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"{'MSE': 1518169.6142941925,\n",
|
||||
" 'abs_error': 7598574.228329182,\n",
|
||||
" 'abs_target_sum': 128632956.0,\n",
|
||||
" 'abs_target_mean': 2385.272140631954,\n",
|
||||
" 'seasonal_error': 189.49338196116761,\n",
|
||||
" 'MASE': 0.6768308214245022,\n",
|
||||
" 'MAPE': 0.08543621625248263,\n",
|
||||
" 'sMAPE': 0.09866496306390758,\n",
|
||||
" 'MSIS': 5.920136466617623,\n",
|
||||
" 'QuantileLoss[0.1]': 3500882.8291194635,\n",
|
||||
" 'Coverage[0.1]': 0.05574098798397863,\n",
|
||||
" 'QuantileLoss[0.2]': 5340191.431005712,\n",
|
||||
" 'Coverage[0.2]': 0.14562008604064677,\n",
|
||||
" 'QuantileLoss[0.3]': 6504019.208138172,\n",
|
||||
" 'Coverage[0.3]': 0.25867823765020026,\n",
|
||||
" 'QuantileLoss[0.4]': 7235231.087660994,\n",
|
||||
" 'Coverage[0.4]': 0.38768357810413884,\n",
|
||||
" 'QuantileLoss[0.5]': 7598574.186652861,\n",
|
||||
" 'Coverage[0.5]': 0.5227154724818277,\n",
|
||||
" 'QuantileLoss[0.6]': 7529742.655082348,\n",
|
||||
" 'Coverage[0.6]': 0.6381100726895119,\n",
|
||||
" 'QuantileLoss[0.7]': 7007798.0971535565,\n",
|
||||
" 'Coverage[0.7]': 0.7520026702269693,\n",
|
||||
" 'QuantileLoss[0.8]': 5913502.452661915,\n",
|
||||
" 'Coverage[0.8]': 0.8465175789942145,\n",
|
||||
" 'QuantileLoss[0.9]': 4056172.522688779,\n",
|
||||
" 'Coverage[0.9]': 0.9228601097759975,\n",
|
||||
" 'RMSE': 1232.140257557634,\n",
|
||||
" 'NRMSE': 0.5165617107451692,\n",
|
||||
" 'ND': 0.059071753185312645,\n",
|
||||
" 'wQuantileLoss[0.1]': 0.02721606451397621,\n",
|
||||
" 'wQuantileLoss[0.2]': 0.04151495539763318,\n",
|
||||
" 'wQuantileLoss[0.3]': 0.05056261949028188,\n",
|
||||
" 'wQuantileLoss[0.4]': 0.05624710270718644,\n",
|
||||
" 'wQuantileLoss[0.5]': 0.05907175286131853,\n",
|
||||
" 'wQuantileLoss[0.6]': 0.05853665257511728,\n",
|
||||
" 'wQuantileLoss[0.7]': 0.05447902555511168,\n",
|
||||
" 'wQuantileLoss[0.8]': 0.04597190826168929,\n",
|
||||
" 'wQuantileLoss[0.9]': 0.031532918536745586,\n",
|
||||
" 'mean_absolute_QuantileLoss': 6076234.941129311,\n",
|
||||
" 'mean_wQuantileLoss': 0.04723699998878445,\n",
|
||||
" 'MAE_Coverage': 0.03716477937661739,\n",
|
||||
" 'OWA': nan}"
|
||||
]
|
||||
},
|
||||
"execution_count": 12,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"agg_metrics"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 13,
|
||||
"id": "cc3f804d",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAB7cAAAXCCAYAAABwgmnJAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/av/WaAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOz9eZxkdX0v/r9O7V29zj7DLMww7KuCICgCQSQoMVFEvTd6ZVCSYNQrAZfwVRIj+iNXQSU3mnATFLOAyr6MDAzgMMDArDALs/f0vi+1b2f9/XHqnKrqrr1rOdX1ej4e/WCorT9d01N16rw+7/db0DRNAxERERERERERERERERERkYXZ6r0AIiIiIiIiIiIiIiIiIiKiQhhuExERERERERERERERERGR5THcJiIiIiIiIiIiIiIiIiIiy2O4TURERERERERERERERERElsdwm4iIiIiIiIiIiIiIiIiILI/hNhERERERERERERERERERWR7DbSIiIiIiIiIiIiIiIiIisjyG20REREREREREREREREREZHkMt4mIiIiIiIiIiIiIiIiIyPIYbhMRERERERERERERERERkeUx3CYiqqFQKITvfe97OO+889DW1obOzk5cfPHFuO+++yCKYr2XR0REREQWF41G8fzzz+MHP/gBbrjhBpx88skQBAGCIOB73/tevZdHRERERA1iamoKv/rVr/D5z38eZ599NlpbW+F2u7Fq1Sp84hOfwJNPPlnvJRIRZSVomqbVexFERM2gr68PV111FXp7ewEAXq8XiqIgkUgAAN773vfi5ZdfxoIFC+q4SiIiIiKysi1btuCP/uiPsl7393//9wy4iYiIiKgoTqcTsiyb/+/xeGC32xGJRMzLPvrRj+Kxxx6D1+utxxKJiLJi5TYRUQ3IsoyPf/zj6O3txYoVK7B582ZEIhFEo1H85je/QXt7O95++218/vOfr/dSiYiIiMjiFixYgA9/+MP45je/iUceeQTLly+v95KIiIiIqMHIsoxLLrkEv/jFL9Dd3Y1YLIZwOIyenh586UtfAgA8//zz+Ku/+qs6r5SIKBMrt4mIauDBBx/ELbfcAgDYtm0bLrvssozrH3nkEfz5n/85AOCll17Chz/84ZqvkYiIiIisT1EU2O32jMvWrl2Lvr4+Vm4TERERUdH+8Ic/5OwIBAC33norHnjgAQBAf38/Vq9eXaulERHlxcptIqIa+PWvfw0A+KM/+qNZwTYA/I//8T+wbt06AMB//Md/1HRtRERERNQ4ZgbbRERERETlyBdsAzCrtwFg165d1V4OEVHRGG4TEVVZNBrFG2+8AUCfU5ONIAi47rrrAAAvvvhizdZGRERERERERERENJPH4zH/rChKHVdCRJSJ4TYRUZUdOnQIqqoCAM4999yctzOuGx0dxfT0dE3WRkRERERERERERDTTli1bzD+fd9559VsIEdEMDLeJiKpseHjY/PPKlStz3i79uvT7EBEREREREREREdWK3+/HPffcAwD40Ic+hDPOOKPOKyIiSmG4TURUZaFQyPyz1+vNebv069LvQ0RERERERERERFQLqqrif/2v/4WRkRF4PB788z//c72XRESUgeE2ERERERERERERERER4etf/zqee+45AMDPf/5znH/++XVeERFRJobbRERV1t7ebv45Go3mvF36den3ISIiIiIiIiIiIqq2b3zjG2al9k9/+lN88YtfrPOKiIhmY7hNRFRlJ510kvnnoaGhnLdLvy79PkRERERERERERETV9K1vfQv33XcfAODee+/FbbfdVt8FERHlwHCbiKjKzjrrLNhs+svtgQMHct7OuG758uVYuHBhTdZGREREREREREREze2b3/wmfvzjHwMAfvSjH+GOO+6o84qIiHJjuE1EVGVerxcf/OAHAQCbNm3KehtN0/DCCy8AAK699tqarY2IiIiIiIiIiIia1ze+8Q3ce++9APRg+5vf/GadV0RElB/DbSKiGrjpppsAAH/4wx+wffv2Wdc/+uijOHHiBADgC1/4Qk3XRkRERERERERERM3nG9/4RkYrcgbbRNQIGG4TEdXATTfdhPPOOw+apuFTn/oUXn75ZQCAqqp49NFH8Rd/8RcAgI9+9KP48Ic/XM+lEhEREZHF+Xw+TE5Oml+qqgIAotFoxuXhcLjOKyUiIiIiq0qfsf2Tn/yErciJqGEImqZp9V4EEVEz6O3txR/90R+ht7cXgN6uXFVVxONxAMB73/tevPzyy1iwYEEdV0lEREREVrd27Vr09fUVvN1NN92Ehx56qPoLIiIiIqKG0t/fj5NPPhkAYLPZsGTJkry3/8Y3voFvfOMbtVgaEVFBjnovgIioWaxduxb79u3DvffeiyeeeAI9PT1wOp0455xz8D//5//E1772Nbhcrnovk4iIiIiIiIiIiOYxo/OP8eexsbG8t2dHICKyElZuExERERERERERERERERGR5XHmNhERERERERERERERERERWR7DbSIiIiIiIiIiIiIiIiIisjyG20REREREREREREREREREZHkMt4mIiIiIiIiIiIiIiIiIyPIYbhMRERERERERERERERERkeU56r2AelJVFcPDw2hvb4cgCPVeDhEREVFNaJqGUCiEk046CTYb9zpWAo8riYiIqBnxuLLyeFxJREREzaiU48qmDreHh4exevXqei+DiIiIqC4GBgawatWqei9jXuBxJRERETUzHldWDo8riYiIqJkVc1zZ1OF2e3s7AP2J6ujoqPNqiIiIiGojGAxi9erV5rEQzR2PK4mIiKgZ8biy8nhcSURERM2olOPKpg63jdY+HR0dPFgkIiKipmPFNoe7d+/G5s2bsWPHDuzYsQNDQ0MA9NZE+UiShJ///Od4+OGHcfjwYaiqipNOOgmXX3457r77bqxcuXLWfd59911873vfw5YtWxAOh3HqqafiS1/6Ev73//7fJbfV5HElERERNTMrHlc2Kh5XEhERUTMr5riyqcNtIiIiIrKWu+++G08//XRJ95mensa1116L3bt3Y8WKFbjmmmsAAMePH8evfvUrfPGLX5wVbr/55pv48Ic/jFgshksuuQRr167F1q1b8Td/8zfYtm0bfvvb3/IkLRERERERERERkcUw3CYiIiIiy7jssstw/vnn4+KLL8bFF1+MtWvXIpFI5Ly9pmm48cYbsXv3bvz93/89vvvd78LhSB3injhxYlbFiyRJ+NznPodYLIaf/OQn+Ju/+RsAQDgcxrXXXotHH30UH/vYx7Bhw4aq/IxERERERERERERUHkEr1ONxHgsGg+js7EQgEGCbHyIiImoajXQM5PF4kEgkcrYl/93vfofPfvaz+PSnP43f/e53RT2mcZ8LLrgA77zzTsZ1e/bswUUXXYRzzz0X+/fvL3qdjfScEhEREVUKj4Eqj88pERERNaNSjoFKGyZIRERERGQh//Zv/wYA+NrXvlb0fTZu3AgAuPHGG2ddd+GFF+KUU07BgQMH0NvbW5E1EhERERERERERUWWwLTkRERERNSRJkvD666/D4XDgkksuwb59+/Doo49ifHwcK1euxJ/92Z/hggsumHW/vXv3AtCD7GwuvPBCnDhxAvv27cPatWur+SMQERERERERERFRCRhuExEREVFDOnHiBOLxOJYtW4af/vSn+M53vgNVVc3rv/e97+HrX/86fvrTn2bcr7+/HwCwatWqrI9rXN7X15fzeycSiYxZ4MFgsOyfg4iIiIiIiIiIiIrDtuRERERE1JB8Ph8AYGpqCnfeeSduvfVWdHd3Y3JyEg8++CBaWlrws5/9DD//+c8z7hcOhwEAXq836+O2trYCAEKhUM7vfc8996Czs9P8Wr16dSV+JCIiIiKqo927d+Mf//EfccMNN2DVqlUQBAGCIJT0GNdcc415v8HBwSqtlIiIiKh5sXKbiIiIiBqSUaUtyzI++tGPZoTYX/ziFxGPx/GVr3wF99xzD77yla9U9HvfeeeduP32283/DwaDDLiJiIiIGtzdd9+Np59+uuz7P/TQQ3j55ZchCAI0TavgyoiIiIjIwMptIiIiImpIbW1t5p9vvvnmWddv2LABADA0NITjx4/Pul80Gs36uJFIBADQ3t6e83u73W50dHRkfBERERFRY7vssstw11134ZlnnsHIyAjcbnfR952YmMAdd9yBa6+9FmvWrKniKomIiIiaGyu3iYiIiKghnXzyyeaf165dO+t6r9eLpUuXYnx8HOPj4zj11FMBAGvWrIHP58Pg4CDOP//8Wfcz2kemPz4RERERzX/f/va3y77vbbfdhmg0il/84hf48Ic/XMFVEREREVE6Vm4TERERUUPq7OzEunXrAKTmb6dTVRV+vx9AZpX3BRdcAADYs2dP1sc1Ls8WfBMRERERzbRp0yY8/PDD+M53voP169fXezlERERE8xrDbSIiIiJqWH/6p38KANiyZcus69566y2IooiWlhacccYZ5uXXX389AOCxxx6bdZ+3334bJ06cwLnnnpu1GpyIiIiIKF0kEsGXv/xlnHnmmfjWt75V7+UQERERzXsMt4mIiIioYd12221wuVz453/+Z7z11lvm5ZOTk7jtttsA6PO40+clfvKTn8S6deuwd+9e/PSnPzUvj0Qi+MpXvgIAuOOOO2rzAxARERFRQ/u7v/s79Pb24l//9V/hcrlKvn8ikUAwGMz4ovr799dO4EebDtd7GURERJQFw20iIiJqKAk5Ue8lUBVt3LgRl156qfkliiIAZFy2ceNG8/Zr167Fv/zLvyAcDuOKK67AlVdeiT/90z/FmWeeiZ07d+LCCy/E//k//yfjezidTvzXf/0XWlpacPvtt+PSSy/FZz/7WZx22ml48803ceONN+Kmm26q6c9NRERElSGrcr2XQE1kz549uP/++3HTTTfhyiuvLOsx7rnnHnR2dppfq1evrvAqqVSKquGe5w/Line truncated
|
||||
"text/plain": [
|
||||
"<Figure size 2000x1500 with 9 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.figure(figsize=(20, 15))\n",
|
||||
"date_formater = mdates.DateFormatter('%b, %d')\n",
|
||||
"plt.rcParams.update({'font.size': 15})\n",
|
||||
"\n",
|
||||
"for idx, (forecast, ts) in islice(enumerate(zip(forecasts, tss)), 9):\n",
|
||||
" ax = plt.subplot(3, 3, idx+1)\n",
|
||||
"\n",
|
||||
" plt.plot(ts[-4 * dataset.metadata.prediction_length:].to_timestamp(), label=\"target\", )\n",
|
||||
" forecast.plot( color='g')\n",
|
||||
" plt.xticks(rotation=60)\n",
|
||||
" ax.xaxis.set_major_formatter(date_formater)\n",
|
||||
" ax.set_title(forecast.item_id)\n",
|
||||
"\n",
|
||||
"plt.gcf().tight_layout()\n",
|
||||
"plt.legend()\n",
|
||||
"plt.show()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 18,
|
||||
"id": "6f03bfd2",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"metrics = pd.read_csv(\"lightning_logs/version_86/metrics.csv\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 19,
|
||||
"id": "8e76b769",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div>\n",
|
||||
"<style scoped>\n",
|
||||
" .dataframe tbody tr th:only-of-type {\n",
|
||||
" vertical-align: middle;\n",
|
||||
" }\n",
|
||||
"\n",
|
||||
" .dataframe tbody tr th {\n",
|
||||
" vertical-align: top;\n",
|
||||
" }\n",
|
||||
"\n",
|
||||
" .dataframe thead th {\n",
|
||||
" text-align: right;\n",
|
||||
" }\n",
|
||||
"</style>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
" <th></th>\n",
|
||||
" <th>train_perplexity</th>\n",
|
||||
" <th>epoch</th>\n",
|
||||
" <th>step</th>\n",
|
||||
" <th>val_loss</th>\n",
|
||||
" <th>train_loss</th>\n",
|
||||
" </tr>\n",
|
||||
" </thead>\n",
|
||||
" <tbody>\n",
|
||||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>2.042362</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td>2.050069</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>2</th>\n",
|
||||
" <td>2.743227</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>149</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>3</th>\n",
|
||||
" <td>2.440984</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>199</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>4</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>199</td>\n",
|
||||
" <td>4.355846</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>...</th>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>295</th>\n",
|
||||
" <td>80.659866</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9899</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>296</th>\n",
|
||||
" <td>82.568138</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9949</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>297</th>\n",
|
||||
" <td>81.211136</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>298</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>1.084462</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>299</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>1.707654</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
"<p>300 rows × 5 columns</p>\n",
|
||||
"</div>"
|
||||
],
|
||||
"text/plain": [
|
||||
" train_perplexity epoch step val_loss train_loss\n",
|
||||
"0 2.042362 0 49 NaN NaN\n",
|
||||
"1 2.050069 0 99 NaN NaN\n",
|
||||
"2 2.743227 0 149 NaN NaN\n",
|
||||
"3 2.440984 0 199 NaN NaN\n",
|
||||
"4 NaN 0 199 4.355846 NaN\n",
|
||||
".. ... ... ... ... ...\n",
|
||||
"295 80.659866 49 9899 NaN NaN\n",
|
||||
"296 82.568138 49 9949 NaN NaN\n",
|
||||
"297 81.211136 49 9999 NaN NaN\n",
|
||||
"298 NaN 49 9999 1.084462 NaN\n",
|
||||
"299 NaN 49 9999 NaN 1.707654\n",
|
||||
"\n",
|
||||
"[300 rows x 5 columns]"
|
||||
]
|
||||
},
|
||||
"execution_count": 19,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"metrics"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 20,
|
||||
"id": "ad490889",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"Text(0, 0.5, 'perplexity')"
|
||||
]
|
||||
},
|
||||
"execution_count": 20,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"ax = metrics.train_perplexity.dropna().plot(kind=\"line\")\n",
|
||||
"ax.set_xlabel(\"training steps\")\n",
|
||||
"ax.set_ylabel(\"perplexity\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 21,
|
||||
"id": "f1185a0f",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"Text(0, 0.5, 'val neg. log likelihood')"
|
||||
]
|
||||
},
|
||||
"execution_count": 21,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"ax = metrics.val_loss.dropna().plot()\n",
|
||||
"ax.set_xlabel(\"training steps\")\n",
|
||||
"ax.set_ylabel(\"val neg. log likelihood\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 22,
|
||||
"id": "d887cb3b",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"X = predictor.prediction_net.vq_vae.embed.cpu()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 23,
|
||||
"id": "ae16d4bd",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"X_embedded = TSNE(n_components=2, learning_rate='auto', init='random').fit_transform(X)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 24,
|
||||
"id": "8feaef88",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"<matplotlib.collections.PathCollection at 0x7f4eec421b20>"
|
||||
]
|
||||
},
|
||||
"execution_count": 24,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.scatter(X_embedded[:,0], X_embedded[:,1], alpha=1.0)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "50a0e3d3",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3 (ipykernel)",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.10.6"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
@@ -0,0 +1,629 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 1,
|
||||
"id": "7c64affd",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from itertools import islice"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 2,
|
||||
"id": "8aa55868",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"%matplotlib inline\n",
|
||||
"from matplotlib import pyplot as plt\n",
|
||||
"import matplotlib.dates as mdates\n",
|
||||
"\n",
|
||||
"import pandas as pd\n",
|
||||
"from sklearn.manifold import TSNE"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 3,
|
||||
"id": "6a730716",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from gluonts.dataset.repository.datasets import get_dataset\n",
|
||||
"from gluonts.evaluation import make_evaluation_predictions, Evaluator\n",
|
||||
"from gluonts.torch.distributions import NegativeBinomialOutput\n",
|
||||
"\n",
|
||||
"from pytorch_lightning.loggers import CSVLogger\n",
|
||||
"\n",
|
||||
"from estimator import TFTEstimator"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 4,
|
||||
"id": "fc889c9f",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"dataset = get_dataset(\"exchange_rate\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 6,
|
||||
"id": "1717d0d2",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"estimator = TFTEstimator(\n",
|
||||
" freq=dataset.metadata.freq,\n",
|
||||
" prediction_length=dataset.metadata.prediction_length,\n",
|
||||
" context_length=dataset.metadata.prediction_length*6,\n",
|
||||
" num_feat_static_cat=len(dataset.metadata.feat_static_cat),\n",
|
||||
" cardinality=[int(cat_feat_info.cardinality) for cat_feat_info in dataset.metadata.feat_static_cat],\n",
|
||||
"\n",
|
||||
" \n",
|
||||
" scaling=True,\n",
|
||||
" batch_size=256,\n",
|
||||
" num_batches_per_epoch=200,\n",
|
||||
" #distr_output=ImplicitQuantileNetworkOutput(\"positive\"),\n",
|
||||
" #loss=QuantileLoss(),\n",
|
||||
" trainer_kwargs=dict(gpus=\"1\", max_epochs=30, logger=CSVLogger(\".\", \"lightning_logs/\")),\n",
|
||||
" )"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 7,
|
||||
"id": "c77b420c",
|
||||
"metadata": {
|
||||
"scrolled": true
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/utilities/parsing.py:262: UserWarning: Attribute 'model' is an instance of `nn.Module` and is already saved during checkpointing. It is recommended to ignore them using `self.save_hyperparameters(ignore=['model'])`.\n",
|
||||
" rank_zero_warn(\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/trainer/connectors/accelerator_connector.py:446: LightningDeprecationWarning: Setting `Trainer(gpus='1')` is deprecated in v1.7 and will be removed in v2.0. Please use `Trainer(accelerator='gpu', devices='1')` instead.\n",
|
||||
" rank_zero_deprecation(\n",
|
||||
"GPU available: True (cuda), used: True\n",
|
||||
"TPU available: False, using: 0 TPU cores\n",
|
||||
"IPU available: False, using: 0 IPUs\n",
|
||||
"HPU available: False, using: 0 HPUs\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/trainer/configuration_validator.py:108: PossibleUserWarning: You defined a `validation_step` but have no `val_dataloader`. Skipping val loop.\n",
|
||||
" rank_zero_warn(\n",
|
||||
"LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
|
||||
"\n",
|
||||
" | Name | Type | Params\n",
|
||||
"-----------------------------------\n",
|
||||
"0 | model | TFTModel | 93.2 K\n",
|
||||
"-----------------------------------\n",
|
||||
"93.2 K Trainable params\n",
|
||||
"0 Non-trainable params\n",
|
||||
"93.2 K Total params\n",
|
||||
"0.373 Total estimated model params size (MB)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "bb103ecb6cfb4d42b00bfdac4dfddac6",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
"Training: 0it [00:00, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Epoch 0, global step 200: 'train_loss' reached -2.59856 (best -2.59856), saving model to './lightning_logs/version_41/checkpoints/epoch=0-step=200.ckpt' as top 1\n",
|
||||
"Epoch 1, global step 400: 'train_loss' reached -3.79581 (best -3.79581), saving model to './lightning_logs/version_41/checkpoints/epoch=1-step=400.ckpt' as top 1\n",
|
||||
"Epoch 2, global step 600: 'train_loss' reached -4.05098 (best -4.05098), saving model to './lightning_logs/version_41/checkpoints/epoch=2-step=600.ckpt' as top 1\n",
|
||||
"Epoch 3, global step 800: 'train_loss' reached -4.17670 (best -4.17670), saving model to './lightning_logs/version_41/checkpoints/epoch=3-step=800.ckpt' as top 1\n",
|
||||
"Epoch 4, global step 1000: 'train_loss' reached -4.23045 (best -4.23045), saving model to './lightning_logs/version_41/checkpoints/epoch=4-step=1000.ckpt' as top 1\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/trainer/call.py:48: UserWarning: Detected KeyboardInterrupt, attempting graceful shutdown...\n",
|
||||
" rank_zero_warn(\"Detected KeyboardInterrupt, attempting graceful shutdown...\")\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/utilities/parsing.py:262: UserWarning: Attribute 'model' is an instance of `nn.Module` and is already saved during checkpointing. It is recommended to ignore them using `self.save_hyperparameters(ignore=['model'])`.\n",
|
||||
" rank_zero_warn(\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"predictor = estimator.train(\n",
|
||||
" training_data=dataset.train,\n",
|
||||
" shuffle_buffer_length=1024,\n",
|
||||
" num_workers=8,\n",
|
||||
" cache_data=True,\n",
|
||||
" )"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 10,
|
||||
"id": "f8a362b6",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"forecast_it, ts_it = make_evaluation_predictions(\n",
|
||||
" dataset=dataset.test,\n",
|
||||
" predictor=predictor,\n",
|
||||
")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 11,
|
||||
"id": "5fdc12da",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"forecasts = list(forecast_it)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 12,
|
||||
"id": "4b7d3409",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"tss = list(ts_it)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 13,
|
||||
"id": "9b154bde",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"evaluator = Evaluator()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 14,
|
||||
"id": "0fdec8a7",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"\n",
|
||||
"Running evaluation: 40it [00:00, 133.81it/s]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"agg_metrics, ts_metrics = evaluator(iter(tss), iter(forecasts))"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 15,
|
||||
"id": "4adbf8d9",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"{'MSE': 0.0007768019271196635,\n",
|
||||
" 'abs_error': 24.153231034986675,\n",
|
||||
" 'abs_target_sum': 975.9766580164433,\n",
|
||||
" 'abs_target_mean': 0.8133138816803693,\n",
|
||||
" 'seasonal_error': 0.006515919403041842,\n",
|
||||
" 'MASE': 4.859690570378005,\n",
|
||||
" 'MAPE': 0.026359366600712142,\n",
|
||||
" 'sMAPE': 0.025865982671578726,\n",
|
||||
" 'MSIS': 28.667572757335584,\n",
|
||||
" 'QuantileLoss[0.1]': 13.229250066354872,\n",
|
||||
" 'Coverage[0.1]': 0.5941666666666666,\n",
|
||||
" 'QuantileLoss[0.2]': 19.524527779966593,\n",
|
||||
" 'Coverage[0.2]': 0.7708333333333334,\n",
|
||||
" 'QuantileLoss[0.3]': 22.889725703932342,\n",
|
||||
" 'Coverage[0.3]': 0.8866666666666667,\n",
|
||||
" 'QuantileLoss[0.4]': 24.396077957376836,\n",
|
||||
" 'Coverage[0.4]': 0.9458333333333334,\n",
|
||||
" 'QuantileLoss[0.5]': 24.153230977244675,\n",
|
||||
" 'Coverage[0.5]': 0.9733333333333334,\n",
|
||||
" 'QuantileLoss[0.6]': 22.207836651802065,\n",
|
||||
" 'Coverage[0.6]': 0.9850000000000001,\n",
|
||||
" 'QuantileLoss[0.7]': 19.237755538709465,\n",
|
||||
" 'Coverage[0.7]': 0.9891666666666665,\n",
|
||||
" 'QuantileLoss[0.8]': 14.866606407612558,\n",
|
||||
" 'Coverage[0.8]': 0.9975000000000002,\n",
|
||||
" 'QuantileLoss[0.9]': 8.850234366022049,\n",
|
||||
" 'Coverage[0.9]': 0.9991666666666668,\n",
|
||||
" 'RMSE': 0.027871166590576424,\n",
|
||||
" 'NRMSE': 0.034268647343129614,\n",
|
||||
" 'ND': 0.024747754812164516,\n",
|
||||
" 'wQuantileLoss[0.1]': 0.013554883672363387,\n",
|
||||
" 'wQuantileLoss[0.2]': 0.020005117560544818,\n",
|
||||
" 'wQuantileLoss[0.3]': 0.023453148716131175,\n",
|
||||
" 'wQuantileLoss[0.4]': 0.024996579331066145,\n",
|
||||
" 'wQuantileLoss[0.5]': 0.024747754753001214,\n",
|
||||
" 'wQuantileLoss[0.6]': 0.02275447519097112,\n",
|
||||
" 'wQuantileLoss[0.7]': 0.01971128651560983,\n",
|
||||
" 'wQuantileLoss[0.8]': 0.01523254299731632,\n",
|
||||
" 'wQuantileLoss[0.9]': 0.009068079951839319,\n",
|
||||
" 'mean_absolute_QuantileLoss': 18.81724949433572,\n",
|
||||
" 'mean_wQuantileLoss': 0.019280429854315925,\n",
|
||||
" 'MAE_Coverage': 0.4046296296296296,\n",
|
||||
" 'OWA': nan}"
|
||||
]
|
||||
},
|
||||
"execution_count": 15,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"agg_metrics"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 16,
|
||||
"id": "cc3f804d",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 2000x1500 with 9 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.figure(figsize=(20, 15))\n",
|
||||
"date_formater = mdates.DateFormatter('%b, %d')\n",
|
||||
"plt.rcParams.update({'font.size': 15})\n",
|
||||
"\n",
|
||||
"for idx, (forecast, ts) in islice(enumerate(zip(forecasts, tss)), 9):\n",
|
||||
" ax = plt.subplot(3, 3, idx+1)\n",
|
||||
"\n",
|
||||
" plt.plot(ts[-4 * dataset.metadata.prediction_length:].to_timestamp(), label=\"target\", )\n",
|
||||
" forecast.plot( color='g')\n",
|
||||
" plt.xticks(rotation=60)\n",
|
||||
" ax.xaxis.set_major_formatter(date_formater)\n",
|
||||
" ax.set_title(forecast.item_id)\n",
|
||||
"\n",
|
||||
"plt.gcf().tight_layout()\n",
|
||||
"plt.legend()\n",
|
||||
"plt.show()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 36,
|
||||
"id": "6f03bfd2",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"metrics = pd.read_csv(\"lightning_logs/version_34/metrics.csv\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 37,
|
||||
"id": "8e76b769",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div>\n",
|
||||
"<style scoped>\n",
|
||||
" .dataframe tbody tr th:only-of-type {\n",
|
||||
" vertical-align: middle;\n",
|
||||
" }\n",
|
||||
"\n",
|
||||
" .dataframe tbody tr th {\n",
|
||||
" vertical-align: top;\n",
|
||||
" }\n",
|
||||
"\n",
|
||||
" .dataframe thead th {\n",
|
||||
" text-align: right;\n",
|
||||
" }\n",
|
||||
"</style>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
" <th></th>\n",
|
||||
" <th>train_perplexity</th>\n",
|
||||
" <th>epoch</th>\n",
|
||||
" <th>step</th>\n",
|
||||
" <th>val_loss</th>\n",
|
||||
" <th>train_loss</th>\n",
|
||||
" </tr>\n",
|
||||
" </thead>\n",
|
||||
" <tbody>\n",
|
||||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>1.077298</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td>1.052201</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>2</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>-3.059156</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>3</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>-1.421714</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>4</th>\n",
|
||||
" <td>1.064031</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>149</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>...</th>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>395</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>98</td>\n",
|
||||
" <td>9899</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>-4.208968</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>396</th>\n",
|
||||
" <td>27.830784</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>9949</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>397</th>\n",
|
||||
" <td>26.394091</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>398</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>-4.432779</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>399</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>-4.266188</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
"<p>400 rows × 5 columns</p>\n",
|
||||
"</div>"
|
||||
],
|
||||
"text/plain": [
|
||||
" train_perplexity epoch step val_loss train_loss\n",
|
||||
"0 1.077298 0 49 NaN NaN\n",
|
||||
"1 1.052201 0 99 NaN NaN\n",
|
||||
"2 NaN 0 99 -3.059156 NaN\n",
|
||||
"3 NaN 0 99 NaN -1.421714\n",
|
||||
"4 1.064031 1 149 NaN NaN\n",
|
||||
".. ... ... ... ... ...\n",
|
||||
"395 NaN 98 9899 NaN -4.208968\n",
|
||||
"396 27.830784 99 9949 NaN NaN\n",
|
||||
"397 26.394091 99 9999 NaN NaN\n",
|
||||
"398 NaN 99 9999 -4.432779 NaN\n",
|
||||
"399 NaN 99 9999 NaN -4.266188\n",
|
||||
"\n",
|
||||
"[400 rows x 5 columns]"
|
||||
]
|
||||
},
|
||||
"execution_count": 37,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"metrics"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 38,
|
||||
"id": "ad490889",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"Text(0, 0.5, 'perplexity')"
|
||||
]
|
||||
},
|
||||
"execution_count": 38,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"ax = metrics.train_perplexity.dropna().plot(kind=\"line\")\n",
|
||||
"ax.set_xlabel(\"training steps\")\n",
|
||||
"ax.set_ylabel(\"perplexity\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 39,
|
||||
"id": "f1185a0f",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"Text(0, 0.5, 'val neg. log likelihood')"
|
||||
]
|
||||
},
|
||||
"execution_count": 39,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"ax = metrics.val_loss.dropna().plot()\n",
|
||||
"ax.set_xlabel(\"training steps\")\n",
|
||||
"ax.set_ylabel(\"val neg. log likelihood\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 16,
|
||||
"id": "d887cb3b",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"X = predictor.prediction_net.vq_vae.embed.cpu()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 17,
|
||||
"id": "ae16d4bd",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"X_embedded = TSNE(n_components=2, learning_rate='auto', init='random').fit_transform(X)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 18,
|
||||
"id": "8feaef88",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"<matplotlib.collections.PathCollection at 0x7f14dc058370>"
|
||||
]
|
||||
},
|
||||
"execution_count": 18,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.scatter(X_embedded[:,0], X_embedded[:,1], alpha=1.0)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "50a0e3d3",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3 (ipykernel)",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.10.6"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
@@ -0,0 +1,732 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 1,
|
||||
"id": "7c64affd",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from itertools import islice"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 2,
|
||||
"id": "8aa55868",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"%matplotlib inline\n",
|
||||
"from matplotlib import pyplot as plt\n",
|
||||
"import matplotlib.dates as mdates\n",
|
||||
"\n",
|
||||
"import pandas as pd\n",
|
||||
"from sklearn.manifold import TSNE"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 3,
|
||||
"id": "6a730716",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from gluonts.dataset.repository.datasets import get_dataset\n",
|
||||
"from gluonts.dataset.common import ListDataset\n",
|
||||
"from gluonts.evaluation import make_evaluation_predictions, Evaluator\n",
|
||||
"from gluonts.torch.distributions import NegativeBinomialOutput\n",
|
||||
"\n",
|
||||
"from pytorch_lightning.loggers import CSVLogger\n",
|
||||
"from datasets import load_dataset\n",
|
||||
"\n",
|
||||
"from estimator import TFTEstimator"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 4,
|
||||
"id": "fc889c9f",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"dataset = get_dataset(\"taxi_30min\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 5,
|
||||
"id": "1717d0d2",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"estimator = TFTEstimator(\n",
|
||||
" freq=dataset.metadata.freq,\n",
|
||||
" prediction_length=dataset.metadata.prediction_length,\n",
|
||||
" context_length=dataset.metadata.prediction_length*6,\n",
|
||||
" \n",
|
||||
" scaling=True,\n",
|
||||
" num_feat_static_cat=len(dataset.metadata.feat_static_cat),\n",
|
||||
" cardinality=[int(cat_feat_info.cardinality) for cat_feat_info in dataset.metadata.feat_static_cat],\n",
|
||||
" \n",
|
||||
" distr_output=NegativeBinomialOutput(),\n",
|
||||
" \n",
|
||||
" batch_size=256,\n",
|
||||
" num_batches_per_epoch=200,\n",
|
||||
" trainer_kwargs=dict(gpus=\"1\", max_epochs=100, logger=CSVLogger(\".\", \"lightning_logs/\")),\n",
|
||||
" )"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 6,
|
||||
"id": "c77b420c",
|
||||
"metadata": {
|
||||
"scrolled": true
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/utilities/parsing.py:262: UserWarning: Attribute 'model' is an instance of `nn.Module` and is already saved during checkpointing. It is recommended to ignore them using `self.save_hyperparameters(ignore=['model'])`.\n",
|
||||
" rank_zero_warn(\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/trainer/connectors/accelerator_connector.py:446: LightningDeprecationWarning: Setting `Trainer(gpus='1')` is deprecated in v1.7 and will be removed in v2.0. Please use `Trainer(accelerator='gpu', devices='1')` instead.\n",
|
||||
" rank_zero_deprecation(\n",
|
||||
"GPU available: True (cuda), used: True\n",
|
||||
"TPU available: False, using: 0 TPU cores\n",
|
||||
"IPU available: False, using: 0 IPUs\n",
|
||||
"HPU available: False, using: 0 HPUs\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/trainer/configuration_validator.py:108: PossibleUserWarning: You defined a `validation_step` but have no `val_dataloader`. Skipping val loop.\n",
|
||||
" rank_zero_warn(\n",
|
||||
"LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
|
||||
"\n",
|
||||
" | Name | Type | Params\n",
|
||||
"-----------------------------------\n",
|
||||
"0 | model | TFTModel | 132 K \n",
|
||||
"-----------------------------------\n",
|
||||
"132 K Trainable params\n",
|
||||
"0 Non-trainable params\n",
|
||||
"132 K Total params\n",
|
||||
"0.531 Total estimated model params size (MB)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "787424ceb64e42198410daa88c16bda4",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
"Training: 0it [00:00, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Epoch 0, global step 200: 'train_loss' reached 2.69401 (best 2.69401), saving model to './lightning_logs/version_43/checkpoints/epoch=0-step=200.ckpt' as top 1\n",
|
||||
"Epoch 1, global step 400: 'train_loss' reached 2.46968 (best 2.46968), saving model to './lightning_logs/version_43/checkpoints/epoch=1-step=400.ckpt' as top 1\n",
|
||||
"Epoch 2, global step 600: 'train_loss' reached 2.43729 (best 2.43729), saving model to './lightning_logs/version_43/checkpoints/epoch=2-step=600.ckpt' as top 1\n",
|
||||
"Epoch 3, global step 800: 'train_loss' reached 2.41880 (best 2.41880), saving model to './lightning_logs/version_43/checkpoints/epoch=3-step=800.ckpt' as top 1\n",
|
||||
"Epoch 4, global step 1000: 'train_loss' reached 2.41059 (best 2.41059), saving model to './lightning_logs/version_43/checkpoints/epoch=4-step=1000.ckpt' as top 1\n",
|
||||
"Epoch 5, global step 1200: 'train_loss' reached 2.39735 (best 2.39735), saving model to './lightning_logs/version_43/checkpoints/epoch=5-step=1200.ckpt' as top 1\n",
|
||||
"Epoch 6, global step 1400: 'train_loss' reached 2.39200 (best 2.39200), saving model to './lightning_logs/version_43/checkpoints/epoch=6-step=1400.ckpt' as top 1\n",
|
||||
"Epoch 7, global step 1600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 8, global step 1800: 'train_loss' reached 2.38845 (best 2.38845), saving model to './lightning_logs/version_43/checkpoints/epoch=8-step=1800.ckpt' as top 1\n",
|
||||
"Epoch 9, global step 2000: 'train_loss' reached 2.37835 (best 2.37835), saving model to './lightning_logs/version_43/checkpoints/epoch=9-step=2000.ckpt' as top 1\n",
|
||||
"Epoch 10, global step 2200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 11, global step 2400: 'train_loss' reached 2.37698 (best 2.37698), saving model to './lightning_logs/version_43/checkpoints/epoch=11-step=2400.ckpt' as top 1\n",
|
||||
"Epoch 12, global step 2600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 13, global step 2800: 'train_loss' reached 2.37075 (best 2.37075), saving model to './lightning_logs/version_43/checkpoints/epoch=13-step=2800.ckpt' as top 1\n",
|
||||
"Epoch 14, global step 3000: 'train_loss' reached 2.37018 (best 2.37018), saving model to './lightning_logs/version_43/checkpoints/epoch=14-step=3000.ckpt' as top 1\n",
|
||||
"Epoch 15, global step 3200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 16, global step 3400: 'train_loss' reached 2.36749 (best 2.36749), saving model to './lightning_logs/version_43/checkpoints/epoch=16-step=3400.ckpt' as top 1\n",
|
||||
"Epoch 17, global step 3600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 18, global step 3800: 'train_loss' reached 2.36432 (best 2.36432), saving model to './lightning_logs/version_43/checkpoints/epoch=18-step=3800.ckpt' as top 1\n",
|
||||
"Epoch 19, global step 4000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 20, global step 4200: 'train_loss' reached 2.36349 (best 2.36349), saving model to './lightning_logs/version_43/checkpoints/epoch=20-step=4200.ckpt' as top 1\n",
|
||||
"Epoch 21, global step 4400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 22, global step 4600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 23, global step 4800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 24, global step 5000: 'train_loss' reached 2.36302 (best 2.36302), saving model to './lightning_logs/version_43/checkpoints/epoch=24-step=5000.ckpt' as top 1\n",
|
||||
"Epoch 25, global step 5200: 'train_loss' reached 2.35860 (best 2.35860), saving model to './lightning_logs/version_43/checkpoints/epoch=25-step=5200.ckpt' as top 1\n",
|
||||
"Epoch 26, global step 5400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 27, global step 5600: 'train_loss' reached 2.35643 (best 2.35643), saving model to './lightning_logs/version_43/checkpoints/epoch=27-step=5600.ckpt' as top 1\n",
|
||||
"Epoch 28, global step 5800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 29, global step 6000: 'train_loss' reached 2.35494 (best 2.35494), saving model to './lightning_logs/version_43/checkpoints/epoch=29-step=6000.ckpt' as top 1\n",
|
||||
"Epoch 30, global step 6200: 'train_loss' reached 2.35465 (best 2.35465), saving model to './lightning_logs/version_43/checkpoints/epoch=30-step=6200.ckpt' as top 1\n",
|
||||
"Epoch 31, global step 6400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 32, global step 6600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 33, global step 6800: 'train_loss' reached 2.35422 (best 2.35422), saving model to './lightning_logs/version_43/checkpoints/epoch=33-step=6800.ckpt' as top 1\n",
|
||||
"Epoch 34, global step 7000: 'train_loss' reached 2.34978 (best 2.34978), saving model to './lightning_logs/version_43/checkpoints/epoch=34-step=7000.ckpt' as top 1\n",
|
||||
"Epoch 35, global step 7200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 36, global step 7400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 37, global step 7600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 38, global step 7800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 39, global step 8000: 'train_loss' reached 2.34943 (best 2.34943), saving model to './lightning_logs/version_43/checkpoints/epoch=39-step=8000.ckpt' as top 1\n",
|
||||
"Epoch 40, global step 8200: 'train_loss' reached 2.34826 (best 2.34826), saving model to './lightning_logs/version_43/checkpoints/epoch=40-step=8200.ckpt' as top 1\n",
|
||||
"Epoch 41, global step 8400: 'train_loss' reached 2.34693 (best 2.34693), saving model to './lightning_logs/version_43/checkpoints/epoch=41-step=8400.ckpt' as top 1\n",
|
||||
"Epoch 42, global step 8600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 43, global step 8800: 'train_loss' reached 2.34600 (best 2.34600), saving model to './lightning_logs/version_43/checkpoints/epoch=43-step=8800.ckpt' as top 1\n",
|
||||
"Epoch 44, global step 9000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 45, global step 9200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 46, global step 9400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 47, global step 9600: 'train_loss' reached 2.34562 (best 2.34562), saving model to './lightning_logs/version_43/checkpoints/epoch=47-step=9600.ckpt' as top 1\n",
|
||||
"Epoch 48, global step 9800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 49, global step 10000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 50, global step 10200: 'train_loss' reached 2.34265 (best 2.34265), saving model to './lightning_logs/version_43/checkpoints/epoch=50-step=10200.ckpt' as top 1\n",
|
||||
"Epoch 51, global step 10400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 52, global step 10600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 53, global step 10800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 54, global step 11000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 55, global step 11200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 56, global step 11400: 'train_loss' reached 2.34115 (best 2.34115), saving model to './lightning_logs/version_43/checkpoints/epoch=56-step=11400.ckpt' as top 1\n",
|
||||
"Epoch 57, global step 11600: 'train_loss' reached 2.34075 (best 2.34075), saving model to './lightning_logs/version_43/checkpoints/epoch=57-step=11600.ckpt' as top 1\n",
|
||||
"Epoch 58, global step 11800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 59, global step 12000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 60, global step 12200: 'train_loss' reached 2.33944 (best 2.33944), saving model to './lightning_logs/version_43/checkpoints/epoch=60-step=12200.ckpt' as top 1\n",
|
||||
"Epoch 61, global step 12400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 62, global step 12600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 63, global step 12800: 'train_loss' reached 2.33865 (best 2.33865), saving model to './lightning_logs/version_43/checkpoints/epoch=63-step=12800.ckpt' as top 1\n",
|
||||
"Epoch 64, global step 13000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 65, global step 13200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 66, global step 13400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 67, global step 13600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 68, global step 13800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 69, global step 14000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 70, global step 14200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 71, global step 14400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 72, global step 14600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 73, global step 14800: 'train_loss' reached 2.33861 (best 2.33861), saving model to './lightning_logs/version_43/checkpoints/epoch=73-step=14800.ckpt' as top 1\n",
|
||||
"Epoch 74, global step 15000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 75, global step 15200: 'train_loss' reached 2.33739 (best 2.33739), saving model to './lightning_logs/version_43/checkpoints/epoch=75-step=15200.ckpt' as top 1\n",
|
||||
"Epoch 76, global step 15400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 77, global step 15600: 'train_loss' reached 2.33529 (best 2.33529), saving model to './lightning_logs/version_43/checkpoints/epoch=77-step=15600.ckpt' as top 1\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Epoch 78, global step 15800: 'train_loss' reached 2.33274 (best 2.33274), saving model to './lightning_logs/version_43/checkpoints/epoch=78-step=15800.ckpt' as top 1\n",
|
||||
"Epoch 79, global step 16000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 80, global step 16200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 81, global step 16400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 82, global step 16600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 83, global step 16800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 84, global step 17000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 85, global step 17200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 86, global step 17400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 87, global step 17600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 88, global step 17800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 89, global step 18000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 90, global step 18200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 91, global step 18400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 92, global step 18600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 93, global step 18800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 94, global step 19000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 95, global step 19200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 96, global step 19400: 'train_loss' reached 2.33069 (best 2.33069), saving model to './lightning_logs/version_43/checkpoints/epoch=96-step=19400.ckpt' as top 1\n",
|
||||
"Epoch 97, global step 19600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 98, global step 19800: 'train_loss' reached 2.33055 (best 2.33055), saving model to './lightning_logs/version_43/checkpoints/epoch=98-step=19800.ckpt' as top 1\n",
|
||||
"Epoch 99, global step 20000: 'train_loss' was not in top 1\n",
|
||||
"`Trainer.fit` stopped: `max_epochs=100` reached.\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/utilities/parsing.py:262: UserWarning: Attribute 'model' is an instance of `nn.Module` and is already saved during checkpointing. It is recommended to ignore them using `self.save_hyperparameters(ignore=['model'])`.\n",
|
||||
" rank_zero_warn(\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"predictor = estimator.train(\n",
|
||||
" training_data=dataset.train,\n",
|
||||
" shuffle_buffer_length=1024,\n",
|
||||
" num_workers=8,\n",
|
||||
" cache_data=True,\n",
|
||||
" )"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 7,
|
||||
"id": "f8a362b6",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"forecast_it, ts_it = make_evaluation_predictions(\n",
|
||||
" dataset=dataset.test,\n",
|
||||
" predictor=predictor,\n",
|
||||
")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 8,
|
||||
"id": "5fdc12da",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"forecasts = list(forecast_it)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 9,
|
||||
"id": "4b7d3409",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"tss = list(ts_it)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 10,
|
||||
"id": "9b154bde",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"evaluator = Evaluator()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 11,
|
||||
"id": "0fdec8a7",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Running evaluation: 67984it [00:00, 142854.71it/s]\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pandas/core/dtypes/astype.py:170: UserWarning: Warning: converting a masked element to nan.\n",
|
||||
" return arr.astype(dtype, copy=True)\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"agg_metrics, ts_metrics = evaluator(iter(tss), iter(forecasts))"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 12,
|
||||
"id": "7f28f4d3",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"{'MSE': 22.191201126986023,\n",
|
||||
" 'abs_error': 4706165.0,\n",
|
||||
" 'abs_target_sum': 12453360.0,\n",
|
||||
" 'abs_target_mean': 7.632531183807954,\n",
|
||||
" 'seasonal_error': 3.785588038176638,\n",
|
||||
" 'MASE': 0.7679662683022549,\n",
|
||||
" 'MAPE': 0.6227120212137879,\n",
|
||||
" 'sMAPE': 0.5840053151562108,\n",
|
||||
" 'MSIS': 6.27759755717319,\n",
|
||||
" 'QuantileLoss[0.1]': 2030002.1999999997,\n",
|
||||
" 'Coverage[0.1]': 0.09591717659057032,\n",
|
||||
" 'QuantileLoss[0.2]': 3154084.4000000004,\n",
|
||||
" 'Coverage[0.2]': 0.17071234898407467,\n",
|
||||
" 'QuantileLoss[0.3]': 3942794.8,\n",
|
||||
" 'Coverage[0.3]': 0.25098491311681176,\n",
|
||||
" 'QuantileLoss[0.4]': 4454392.8,\n",
|
||||
" 'Coverage[0.4]': 0.3367986094767396,\n",
|
||||
" 'QuantileLoss[0.5]': 4706165.0,\n",
|
||||
" 'Coverage[0.5]': 0.4278427031850631,\n",
|
||||
" 'QuantileLoss[0.6]': 4687974.8,\n",
|
||||
" 'Coverage[0.6]': 0.5141883874637169,\n",
|
||||
" 'QuantileLoss[0.7]': 4387994.800000001,\n",
|
||||
" 'Coverage[0.7]': 0.6137902545697027,\n",
|
||||
" 'QuantileLoss[0.8]': 3745909.9999999995,\n",
|
||||
" 'Coverage[0.8]': 0.7175101249313564,\n",
|
||||
" 'QuantileLoss[0.9]': 2630104.599999999,\n",
|
||||
" 'Coverage[0.9]': 0.8267594826233622,\n",
|
||||
" 'RMSE': 4.710753774820546,\n",
|
||||
" 'NRMSE': 0.6171941733843397,\n",
|
||||
" 'ND': 0.37790323254125796,\n",
|
||||
" 'wQuantileLoss[0.1]': 0.16300839291564684,\n",
|
||||
" 'wQuantileLoss[0.2]': 0.2532717595893799,\n",
|
||||
" 'wQuantileLoss[0.3]': 0.3166049002036398,\n",
|
||||
" 'wQuantileLoss[0.4]': 0.3576860220856058,\n",
|
||||
" 'wQuantileLoss[0.5]': 0.37790323254125796,\n",
|
||||
" 'wQuantileLoss[0.6]': 0.3764425665041402,\n",
|
||||
" 'wQuantileLoss[0.7]': 0.3523542883205818,\n",
|
||||
" 'wQuantileLoss[0.8]': 0.3007951267770304,\n",
|
||||
" 'wQuantileLoss[0.9]': 0.21119638394778592,\n",
|
||||
" 'mean_absolute_QuantileLoss': 3748824.822222222,\n",
|
||||
" 'mean_wQuantileLoss': 0.3010291858761187,\n",
|
||||
" 'MAE_Coverage': 0.06061066656206693,\n",
|
||||
" 'OWA': nan}"
|
||||
]
|
||||
},
|
||||
"execution_count": 12,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"agg_metrics"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 13,
|
||||
"id": "cc3f804d",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAB6MAAAXCCAYAAABex0hbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/av/WaAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOz9ebgsZXkv/H977rV6jXve7Am2IAEFFQ8EGTTihEcjSpQT1BwgijG8yaVRjJITfxJJLnICRH0jSUxeg54IaBwxGjUIijkio0EIm3nDnvde8+q5qrurfn9UPVXV1VXVVd1VPa3v57q4dK/Va62n1x7W08/9fO87pqqqCiIiIiIiIiIiIiIiIiIiohDF+70AIiIiIiIiIiIiIiIiIiIaPSxGExERERERERERERERERFR6FiMJiIiIiIiIiIiIiIiIiKi0LEYTUREREREREREREREREREoWMxmoiIiIiIiIiIiIiIiIiIQsdiNBERERERERERERERERERhY7FaCIiIiIiIiIiIiIiIiIiCh2L0UREREREREREREREREREFDoWo4mIiIiIiIiIiIiIiIiIKHQsRhMRERERERERERERERERUehYjCYiCqBQKODaa6/FaaedhomJCUxPT+PMM8/ETTfdBFmW+708IiIiIhpA5XIZP/jBD/Dnf/7nuPjii7Fr1y7EYjHEYjFce+21/V4eEREREQ24xcVF3HLLLXjve9+LU089FblcDplMBtu3b8fb3/52fPvb3+73EomIXMVUVVX7vQgiomGwb98+/MZv/AZeeOEFAMD4+DgajQYkSQIAvOIVr8Bdd92F2dnZPq6SiIiIiAbNT3/6U7z2ta91fN+nPvUpFqSJiIiIyFMqlUK9Xjd+nc1mkUgkUCqVjLe9+c1vxje+8Q2Mj4/3Y4lERK6YjCYi8qFer+M3f/M38cILL2Dr1q248847USqVUC6X8dWvfhWTk5P4z//8T7z3ve/t91KJiIiIaADNzs7ida97HT72sY/h9ttvx5YtW/q9JCIiIiIaEvV6HWeddRb+9m//Fs899xwqlQqKxSKef/55vO997wMA/OAHP8Dv/d7v9XmlREStmIwmIvLhi1/8It7//vcDAO6991686lWvanr/7bffjne/+90AgB//+Md43ete1/M1EhEREdFgajQaSCQSTW87/vjjsW/fPiajiYiIiKitn/zkJ66ddgDggx/8IL7whS8AAPbv348dO3b0amlERG0xGU1E5MOXv/xlAMBrX/valkI0APz2b/82TjjhBADA//k//6enayMiIiKiwWYvRBMRERERBeFViAZgpKMB4KGHHop6OUREgbAYTUTURrlcxs9//nMA2uwVJ7FYDBdeeCEA4N///d97tjYiIiIiIiIiIiJa27LZrPH/G41GH1dCRNSKxWgiojaeeOIJKIoCAHjpS1/q+jjxvqNHj2JpaaknayMiIiIiIiIiIqK17ac//anx/0877bT+LYSIyAGL0UREbRw+fNj4/9u2bXN9nPV91o8hIiIiIiIiIiIiisLKygquv/56AMD555+Pk08+uc8rIiJqxmI0EVEbhULB+P/j4+Ouj7O+z/oxRERERERERERERGFTFAW/8zu/gyNHjiCbzeLzn/98v5dERNSCxWgiIiIiIiIiIiIiIqIh86EPfQjf+973AAA333wzTj/99D6viIioFYvRRERtTE5OGv+/XC67Ps76PuvHEBEREREREREREYXp6quvNpLQn/nMZ/C7v/u7fV4REZEzFqOJiNo47rjjjP9/6NAh18dZ32f9GCIiIiIiIiIiIqKw/PEf/zFuuukmAMCNN96ID3/4w/1dEBGRBxajiYjaOOWUUxCPa/9c/td//Zfr48T7tmzZgnXr1vVkbURERERERERERLR2fOxjH8MNN9wAAPirv/orfPSjH+3zioiIvLEYTUTUxvj4OM4991wAwA9/+EPHx6iqih/96EcAgDe+8Y09WxsRERERERERERGtDVdffTVuvPFGAFoh+mMf+1ifV0RE1B6L0UREPlx22WUAgJ/85Ce4//77W97/9a9/HXv37gUA/M//+T97ujYiIiIiIiIiIiIabVdffXVTa24WooloWLAYTUTkw2WXXYbTTjsNqqrit37rt3DXXXcBABRFwde//nVceeWVAIA3v/nNeN3rXtfPpRIRERHRAFpeXsbCwoLxn6IoAIByudz09mKx2OeVEhEREdGgsc6I/uu//mu25iaioRJTVVXt9yKIiIbBCy+8gNe+9rV44YUXAGjtuxVFQbVaBQC84hWvwF133YXZ2dk+rpKIiIiIBtHxxx+Pffv2tX3cZZddhi996UvRL4iIiIiIhsL+/fuxa9cuAEA8HsfGjRs9H3/11Vfj6quv7sXSiIh8SfZ7AUREw+L444/Ho48+ihtvvBHf+ta38PzzzyOVSuElL3kJLr30UvzhH/4h0ul0v5dJREREREREREREI0J01BH//9ixY56PZ6cdIho0TEYTEREREREREREREREREVHoODOaiIiIiIiIiIiIiIiIiIhCx2I0ERERERERERERERERERGFLnAxulwu4zvf+Q7e97734eSTT0Y2m0Uul8PLXvYyfPrTn3acR3DttdciFou5/veJT3wilCdDRERERERERERERERERESDIRn0A2677TZceeWVAIBTTjkFb3vb25DP53HvvffiU5/6FG6//Xbcc8892LRpU8vHnnvuuTjxxBNb3v7KV76yg6UTEREREREREREREREREdGgClyMTqVS+MAHPoAPf/jDOOWUU4y3HzlyBG95y1vwn//5n/jwhz+M2267reVj3//+9+Pyyy/vasFERERERERERERERERERDT4AhejL7vsMlx22WUtb9+6dStuvvlmnHPOOfjWt74FWZaRTqdDWaSdoig4fPgwJicnEYvFIvkaRERERINOVVUUCgUcd9xxiMcDT19Zs7iXJCIiIuJeshvcTxIREdFaF2QvGbgY7eVlL3sZAECSJCwuLmLr1q1hfnrD4cOHsWPHjkg+NxEREdGwOXDgALZv397vZQwN7iWJiIiITNxLBsf9JBEREZHGz14y1GL03r17AWitvNetW9fy/rvvvhuPPPIIqtUqtm/fjje/+c0dzYuenJwEoD3Bqamp7hZNRERENKTy+Tx27Nhh7I3IH+4liYiIiLiX7Ab3k0RERLTWBdlLhlqM/tznPgcAuPDCC5HJZFre/8///M9Nv/7kJz+J3/qt38KXvvQlTExMuH5eSZIgSZLx60KhAACYmpriho+IiIjWPLYGDEZ8v7iXJCIiIuJeshPcTxIRERFp/OwlQxsI82//9m/44he/iFQqheuuu67pfSeeeCJuvPFGPP744ygWizhw4ABuvfVWbNu2Dd/85jfxO7/zO56f+/rrr8f09LTxH9vgEBERERERERERERERERENtpiqqmq3n+TJJ5/EOeecg+XlZXz2s5/Fhz70IV8fd+TIEZx22mlYXFzEL37xC5x99tmOj7Mno0X0e3V1lbcPiYiIaM3K5/OYnp7mniggft+IiIiIuCfqBr93REREtNYF2Q91nYw+dOgQLrzwQiwvL+MjH/mI70I0AGzduhVXXHEFAOCHP/yh6+MymYzR9obtb4iIiIiIiIiIiIiIiIiIBl9XxeilpSW88Y1vxL59+3DFFVfgxhtvDPw5TjrpJABaSpqIiIiIiIiIiIiIiIiIiEZDx8XoYrGIN7/5zdizZw8uvvhi/OM//qOvIdV2y8vLAIBcLtfpUoiIiIiIiIiIiIiIiIiIaMB0VIyWJAkXXXQRHnjgAbzpTW/C7bffjkQiEfjzqKqKb3/72wCAM844o5OlEBERERERERERERERERHRAApcjG40Grj00ktx99134/zzz8e3vvUtpNNp18fPz8/j5ptvRqFQaHp7sVjE7//+7+P+++/Hli1bcPHFFwdfPRERERERERERERERERERDaRk0A/4/Oc/b6SZN2zYgKuuusrxcTfeeCM2bNiAUqmEP/iDP8AnPvEJnHnmmdi6dSvm5+fxy1/+EouLi5iZmcE3vvENjI+Pd/dMiIiIiGjgPfzww7jzzjvxwAMP4IEHHsChQ4cAaB1z7BRFwc9//nP867/+K+666y48/fTTkGUZ27dvxxve8AZ8/OMfxwknnNDrp0BEREREREREREQ+BS5GixnPAIyitJNrr70WGzZswPr16/Hxj38c9913H55++mnce++9SCQSOOGEE3D55Zfjj/7oj7Bt27bOVk9EREREQ+W6667DHXfc4euxe/fuxatf/WoAwJYtW3DBBRcgkUjggQcewBe+8AXcdttt+Ld/+zecd955US6ZiIiIiIiIiIiIOhRTnWIoAy6fz2N6ehqrq6uYmprq93KIiIiI+mIY90T/+3//b5RKJZx55pk488wzcfzxx0OSJMdk9HPPPYff//3fxyc+8Qm89rWvRSwWAwBIkoQPfvCD+NKXvoSdO3fi2WefRSqV8r2GYfy+EREREYWNe6LO8XtHREREa12Q/RCL0URERERDahT2RNls1rUY7aVSqWDr1q1YXV3FT3/6U7zmNa/x/bGj8H0jIiIi6hb3RJ3j946IiIjWuiD7oXiP1kREREREFJqxsTG8+MUvBgAcPny4z6shIiIiIiIiIiIiJ4FnRhO1I9UbePpoES/dNmW004zScknGfFHCizdPRv61iIiIaDAoioJ9+/YB0OZJExH1y1NHC9g6k8VU1v+4ACIiIqK1QFVVPHGkgJ3rxzGRGe5SxGMHV3E0X215++apDE7bNt2Tc3AiomE13D8BaCDd9O9P4x9+thd/954z8ObTtkb+9X73yw/iVwdW8NOrX4ud68cj/3pERETUf7fffjvm5uawceNGnHPOOZ6PlSQJkiQZv87n81Evj4jWiGfninjTZ3+GV794I/7P757V7+UQERERDZRHD67iopt/jrecvhU3v/uLine truncated
|
||||
"text/plain": [
|
||||
"<Figure size 2000x1500 with 9 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.figure(figsize=(20, 15))\n",
|
||||
"date_formater = mdates.DateFormatter('%b, %d')\n",
|
||||
"plt.rcParams.update({'font.size': 15})\n",
|
||||
"\n",
|
||||
"for idx, (forecast, ts) in islice(enumerate(zip(forecasts, tss)), 9):\n",
|
||||
" ax = plt.subplot(3, 3, idx+1)\n",
|
||||
"\n",
|
||||
" plt.plot(ts[-4 * dataset.metadata.prediction_length:].to_timestamp(), label=\"target\", )\n",
|
||||
" forecast.plot( color='g')\n",
|
||||
" plt.xticks(rotation=60)\n",
|
||||
" ax.xaxis.set_major_formatter(date_formater)\n",
|
||||
" ax.set_title(forecast.item_id)\n",
|
||||
"\n",
|
||||
"plt.gcf().tight_layout()\n",
|
||||
"plt.legend()\n",
|
||||
"plt.show()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 18,
|
||||
"id": "6f03bfd2",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"metrics = pd.read_csv(\"lightning_logs/version_86/metrics.csv\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 19,
|
||||
"id": "8e76b769",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div>\n",
|
||||
"<style scoped>\n",
|
||||
" .dataframe tbody tr th:only-of-type {\n",
|
||||
" vertical-align: middle;\n",
|
||||
" }\n",
|
||||
"\n",
|
||||
" .dataframe tbody tr th {\n",
|
||||
" vertical-align: top;\n",
|
||||
" }\n",
|
||||
"\n",
|
||||
" .dataframe thead th {\n",
|
||||
" text-align: right;\n",
|
||||
" }\n",
|
||||
"</style>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
" <th></th>\n",
|
||||
" <th>train_perplexity</th>\n",
|
||||
" <th>epoch</th>\n",
|
||||
" <th>step</th>\n",
|
||||
" <th>val_loss</th>\n",
|
||||
" <th>train_loss</th>\n",
|
||||
" </tr>\n",
|
||||
" </thead>\n",
|
||||
" <tbody>\n",
|
||||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>2.042362</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td>2.050069</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>2</th>\n",
|
||||
" <td>2.743227</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>149</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>3</th>\n",
|
||||
" <td>2.440984</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>199</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>4</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>199</td>\n",
|
||||
" <td>4.355846</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>...</th>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>295</th>\n",
|
||||
" <td>80.659866</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9899</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>296</th>\n",
|
||||
" <td>82.568138</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9949</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>297</th>\n",
|
||||
" <td>81.211136</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>298</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>1.084462</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>299</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>1.707654</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
"<p>300 rows × 5 columns</p>\n",
|
||||
"</div>"
|
||||
],
|
||||
"text/plain": [
|
||||
" train_perplexity epoch step val_loss train_loss\n",
|
||||
"0 2.042362 0 49 NaN NaN\n",
|
||||
"1 2.050069 0 99 NaN NaN\n",
|
||||
"2 2.743227 0 149 NaN NaN\n",
|
||||
"3 2.440984 0 199 NaN NaN\n",
|
||||
"4 NaN 0 199 4.355846 NaN\n",
|
||||
".. ... ... ... ... ...\n",
|
||||
"295 80.659866 49 9899 NaN NaN\n",
|
||||
"296 82.568138 49 9949 NaN NaN\n",
|
||||
"297 81.211136 49 9999 NaN NaN\n",
|
||||
"298 NaN 49 9999 1.084462 NaN\n",
|
||||
"299 NaN 49 9999 NaN 1.707654\n",
|
||||
"\n",
|
||||
"[300 rows x 5 columns]"
|
||||
]
|
||||
},
|
||||
"execution_count": 19,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"metrics"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 20,
|
||||
"id": "ad490889",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"Text(0, 0.5, 'perplexity')"
|
||||
]
|
||||
},
|
||||
"execution_count": 20,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"ax = metrics.train_perplexity.dropna().plot(kind=\"line\")\n",
|
||||
"ax.set_xlabel(\"training steps\")\n",
|
||||
"ax.set_ylabel(\"perplexity\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 21,
|
||||
"id": "f1185a0f",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"Text(0, 0.5, 'val neg. log likelihood')"
|
||||
]
|
||||
},
|
||||
"execution_count": 21,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"ax = metrics.val_loss.dropna().plot()\n",
|
||||
"ax.set_xlabel(\"training steps\")\n",
|
||||
"ax.set_ylabel(\"val neg. log likelihood\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 22,
|
||||
"id": "d887cb3b",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"X = predictor.prediction_net.vq_vae.embed.cpu()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 23,
|
||||
"id": "ae16d4bd",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"X_embedded = TSNE(n_components=2, learning_rate='auto', init='random').fit_transform(X)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 24,
|
||||
"id": "8feaef88",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"<matplotlib.collections.PathCollection at 0x7f4eec421b20>"
|
||||
]
|
||||
},
|
||||
"execution_count": 24,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.scatter(X_embedded[:,0], X_embedded[:,1], alpha=1.0)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "50a0e3d3",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3 (ipykernel)",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.10.6"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
@@ -0,0 +1,730 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 1,
|
||||
"id": "7c64affd",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from itertools import islice"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 2,
|
||||
"id": "8aa55868",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"%matplotlib inline\n",
|
||||
"from matplotlib import pyplot as plt\n",
|
||||
"import matplotlib.dates as mdates\n",
|
||||
"\n",
|
||||
"import pandas as pd\n",
|
||||
"from sklearn.manifold import TSNE"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 3,
|
||||
"id": "6a730716",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from gluonts.dataset.repository.datasets import get_dataset\n",
|
||||
"from gluonts.dataset.common import ListDataset\n",
|
||||
"from gluonts.evaluation import make_evaluation_predictions, Evaluator\n",
|
||||
"from gluonts.torch.distributions import NegativeBinomialOutput\n",
|
||||
"\n",
|
||||
"from pytorch_lightning.loggers import CSVLogger\n",
|
||||
"from datasets import load_dataset\n",
|
||||
"\n",
|
||||
"from estimator import TFTEstimator"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 4,
|
||||
"id": "fc889c9f",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"dataset = get_dataset(\"wiki-rolling_nips\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 5,
|
||||
"id": "1717d0d2",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"estimator = TFTEstimator(\n",
|
||||
" freq=dataset.metadata.freq,\n",
|
||||
" prediction_length=dataset.metadata.prediction_length,\n",
|
||||
" context_length=dataset.metadata.prediction_length,\n",
|
||||
" \n",
|
||||
" scaling=True,\n",
|
||||
" num_feat_static_cat=len(dataset.metadata.feat_static_cat),\n",
|
||||
" cardinality=[int(cat_feat_info.cardinality) for cat_feat_info in dataset.metadata.feat_static_cat],\n",
|
||||
" \n",
|
||||
" distr_output=NegativeBinomialOutput(),\n",
|
||||
" \n",
|
||||
" batch_size=256,\n",
|
||||
" num_batches_per_epoch=200,\n",
|
||||
" trainer_kwargs=dict(gpus=\"1\", max_epochs=100, logger=CSVLogger(\".\", \"lightning_logs/\")),\n",
|
||||
" )"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 6,
|
||||
"id": "c77b420c",
|
||||
"metadata": {
|
||||
"scrolled": true
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/utilities/parsing.py:262: UserWarning: Attribute 'model' is an instance of `nn.Module` and is already saved during checkpointing. It is recommended to ignore them using `self.save_hyperparameters(ignore=['model'])`.\n",
|
||||
" rank_zero_warn(\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/trainer/connectors/accelerator_connector.py:446: LightningDeprecationWarning: Setting `Trainer(gpus='1')` is deprecated in v1.7 and will be removed in v2.0. Please use `Trainer(accelerator='gpu', devices='1')` instead.\n",
|
||||
" rank_zero_deprecation(\n",
|
||||
"GPU available: True (cuda), used: True\n",
|
||||
"TPU available: False, using: 0 TPU cores\n",
|
||||
"IPU available: False, using: 0 IPUs\n",
|
||||
"HPU available: False, using: 0 HPUs\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/trainer/configuration_validator.py:108: PossibleUserWarning: You defined a `validation_step` but have no `val_dataloader`. Skipping val loop.\n",
|
||||
" rank_zero_warn(\n",
|
||||
"LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
|
||||
"\n",
|
||||
" | Name | Type | Params\n",
|
||||
"-----------------------------------\n",
|
||||
"0 | model | TFTModel | 398 K \n",
|
||||
"-----------------------------------\n",
|
||||
"398 K Trainable params\n",
|
||||
"0 Non-trainable params\n",
|
||||
"398 K Total params\n",
|
||||
"1.595 Total estimated model params size (MB)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "d8d1b204645e4e158e6b7d211e6bc1a6",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
"Training: 0it [00:00, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Epoch 0, global step 200: 'train_loss' reached 8.69927 (best 8.69927), saving model to './lightning_logs/version_46/checkpoints/epoch=0-step=200.ckpt' as top 1\n",
|
||||
"Epoch 1, global step 400: 'train_loss' reached 8.31990 (best 8.31990), saving model to './lightning_logs/version_46/checkpoints/epoch=1-step=400.ckpt' as top 1\n",
|
||||
"Epoch 2, global step 600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 3, global step 800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 4, global step 1000: 'train_loss' reached 8.20523 (best 8.20523), saving model to './lightning_logs/version_46/checkpoints/epoch=4-step=1000.ckpt' as top 1\n",
|
||||
"Epoch 5, global step 1200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 6, global step 1400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 7, global step 1600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 8, global step 1800: 'train_loss' reached 8.13480 (best 8.13480), saving model to './lightning_logs/version_46/checkpoints/epoch=8-step=1800.ckpt' as top 1\n",
|
||||
"Epoch 9, global step 2000: 'train_loss' reached 8.12777 (best 8.12777), saving model to './lightning_logs/version_46/checkpoints/epoch=9-step=2000.ckpt' as top 1\n",
|
||||
"Epoch 10, global step 2200: 'train_loss' reached 8.08963 (best 8.08963), saving model to './lightning_logs/version_46/checkpoints/epoch=10-step=2200.ckpt' as top 1\n",
|
||||
"Epoch 11, global step 2400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 12, global step 2600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 13, global step 2800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 14, global step 3000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 15, global step 3200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 16, global step 3400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 17, global step 3600: 'train_loss' reached 8.06460 (best 8.06460), saving model to './lightning_logs/version_46/checkpoints/epoch=17-step=3600.ckpt' as top 1\n",
|
||||
"Epoch 18, global step 3800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 19, global step 4000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 20, global step 4200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 21, global step 4400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 22, global step 4600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 23, global step 4800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 24, global step 5000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 25, global step 5200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 26, global step 5400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 27, global step 5600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 28, global step 5800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 29, global step 6000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 30, global step 6200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 31, global step 6400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 32, global step 6600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 33, global step 6800: 'train_loss' reached 8.05404 (best 8.05404), saving model to './lightning_logs/version_46/checkpoints/epoch=33-step=6800.ckpt' as top 1\n",
|
||||
"Epoch 34, global step 7000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 35, global step 7200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 36, global step 7400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 37, global step 7600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 38, global step 7800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 39, global step 8000: 'train_loss' reached 7.97831 (best 7.97831), saving model to './lightning_logs/version_46/checkpoints/epoch=39-step=8000.ckpt' as top 1\n",
|
||||
"Epoch 40, global step 8200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 41, global step 8400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 42, global step 8600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 43, global step 8800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 44, global step 9000: 'train_loss' reached 7.97440 (best 7.97440), saving model to './lightning_logs/version_46/checkpoints/epoch=44-step=9000.ckpt' as top 1\n",
|
||||
"Epoch 45, global step 9200: 'train_loss' reached 7.92591 (best 7.92591), saving model to './lightning_logs/version_46/checkpoints/epoch=45-step=9200.ckpt' as top 1\n",
|
||||
"Epoch 46, global step 9400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 47, global step 9600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 48, global step 9800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 49, global step 10000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 50, global step 10200: 'train_loss' reached 7.86696 (best 7.86696), saving model to './lightning_logs/version_46/checkpoints/epoch=50-step=10200.ckpt' as top 1\n",
|
||||
"Epoch 51, global step 10400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 52, global step 10600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 53, global step 10800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 54, global step 11000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 55, global step 11200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 56, global step 11400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 57, global step 11600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 58, global step 11800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 59, global step 12000: 'train_loss' reached 7.84638 (best 7.84638), saving model to './lightning_logs/version_46/checkpoints/epoch=59-step=12000.ckpt' as top 1\n",
|
||||
"Epoch 60, global step 12200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 61, global step 12400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 62, global step 12600: 'train_loss' reached 7.82926 (best 7.82926), saving model to './lightning_logs/version_46/checkpoints/epoch=62-step=12600.ckpt' as top 1\n",
|
||||
"Epoch 63, global step 12800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 64, global step 13000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 65, global step 13200: 'train_loss' reached 7.80826 (best 7.80826), saving model to './lightning_logs/version_46/checkpoints/epoch=65-step=13200.ckpt' as top 1\n",
|
||||
"Epoch 66, global step 13400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 67, global step 13600: 'train_loss' reached 7.79150 (best 7.79150), saving model to './lightning_logs/version_46/checkpoints/epoch=67-step=13600.ckpt' as top 1\n",
|
||||
"Epoch 68, global step 13800: 'train_loss' reached 7.78460 (best 7.78460), saving model to './lightning_logs/version_46/checkpoints/epoch=68-step=13800.ckpt' as top 1\n",
|
||||
"Epoch 69, global step 14000: 'train_loss' reached 7.76590 (best 7.76590), saving model to './lightning_logs/version_46/checkpoints/epoch=69-step=14000.ckpt' as top 1\n",
|
||||
"Epoch 70, global step 14200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 71, global step 14400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 72, global step 14600: 'train_loss' reached 7.74149 (best 7.74149), saving model to './lightning_logs/version_46/checkpoints/epoch=72-step=14600.ckpt' as top 1\n",
|
||||
"Epoch 73, global step 14800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 74, global step 15000: 'train_loss' reached 7.72901 (best 7.72901), saving model to './lightning_logs/version_46/checkpoints/epoch=74-step=15000.ckpt' as top 1\n",
|
||||
"Epoch 75, global step 15200: 'train_loss' reached 7.71670 (best 7.71670), saving model to './lightning_logs/version_46/checkpoints/epoch=75-step=15200.ckpt' as top 1\n",
|
||||
"Epoch 76, global step 15400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 77, global step 15600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 78, global step 15800: 'train_loss' reached 7.70934 (best 7.70934), saving model to './lightning_logs/version_46/checkpoints/epoch=78-step=15800.ckpt' as top 1\n",
|
||||
"Epoch 79, global step 16000: 'train_loss' reached 7.70668 (best 7.70668), saving model to './lightning_logs/version_46/checkpoints/epoch=79-step=16000.ckpt' as top 1\n",
|
||||
"Epoch 80, global step 16200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 81, global step 16400: 'train_loss' was not in top 1\n",
|
||||
"Epoch 82, global step 16600: 'train_loss' reached 7.69916 (best 7.69916), saving model to './lightning_logs/version_46/checkpoints/epoch=82-step=16600.ckpt' as top 1\n",
|
||||
"Epoch 83, global step 16800: 'train_loss' reached 7.69376 (best 7.69376), saving model to './lightning_logs/version_46/checkpoints/epoch=83-step=16800.ckpt' as top 1\n",
|
||||
"Epoch 84, global step 17000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 85, global step 17200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 86, global step 17400: 'train_loss' reached 7.68427 (best 7.68427), saving model to './lightning_logs/version_46/checkpoints/epoch=86-step=17400.ckpt' as top 1\n",
|
||||
"Epoch 87, global step 17600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 88, global step 17800: 'train_loss' reached 7.68154 (best 7.68154), saving model to './lightning_logs/version_46/checkpoints/epoch=88-step=17800.ckpt' as top 1\n",
|
||||
"Epoch 89, global step 18000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 90, global step 18200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 91, global step 18400: 'train_loss' was not in top 1\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Epoch 92, global step 18600: 'train_loss' was not in top 1\n",
|
||||
"Epoch 93, global step 18800: 'train_loss' was not in top 1\n",
|
||||
"Epoch 94, global step 19000: 'train_loss' was not in top 1\n",
|
||||
"Epoch 95, global step 19200: 'train_loss' was not in top 1\n",
|
||||
"Epoch 96, global step 19400: 'train_loss' reached 7.66149 (best 7.66149), saving model to './lightning_logs/version_46/checkpoints/epoch=96-step=19400.ckpt' as top 1\n",
|
||||
"Epoch 97, global step 19600: 'train_loss' reached 7.65619 (best 7.65619), saving model to './lightning_logs/version_46/checkpoints/epoch=97-step=19600.ckpt' as top 1\n",
|
||||
"Epoch 98, global step 19800: 'train_loss' reached 7.64622 (best 7.64622), saving model to './lightning_logs/version_46/checkpoints/epoch=98-step=19800.ckpt' as top 1\n",
|
||||
"Epoch 99, global step 20000: 'train_loss' was not in top 1\n",
|
||||
"`Trainer.fit` stopped: `max_epochs=100` reached.\n",
|
||||
"/home/kashif/.env/pytorch/lib/python3.10/site-packages/pytorch_lightning/utilities/parsing.py:262: UserWarning: Attribute 'model' is an instance of `nn.Module` and is already saved during checkpointing. It is recommended to ignore them using `self.save_hyperparameters(ignore=['model'])`.\n",
|
||||
" rank_zero_warn(\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"predictor = estimator.train(\n",
|
||||
" training_data=dataset.train,\n",
|
||||
" shuffle_buffer_length=1024,\n",
|
||||
" num_workers=8,\n",
|
||||
" cache_data=True,\n",
|
||||
" )"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 7,
|
||||
"id": "f8a362b6",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"forecast_it, ts_it = make_evaluation_predictions(\n",
|
||||
" dataset=dataset.test,\n",
|
||||
" predictor=predictor,\n",
|
||||
")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 8,
|
||||
"id": "5fdc12da",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"forecasts = list(forecast_it)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 9,
|
||||
"id": "4b7d3409",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"tss = list(ts_it)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 10,
|
||||
"id": "9b154bde",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"evaluator = Evaluator()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 11,
|
||||
"id": "0fdec8a7",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"Running evaluation: 47675it [00:00, 98204.13it/s]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"agg_metrics, ts_metrics = evaluator(iter(tss), iter(forecasts))"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 12,
|
||||
"id": "7f28f4d3",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"{'MSE': 431839437.5540534,\n",
|
||||
" 'abs_error': 1497767969.0,\n",
|
||||
" 'abs_target_sum': 4139290389.0,\n",
|
||||
" 'abs_target_mean': 2894.1027016255903,\n",
|
||||
" 'seasonal_error': 759.9957754325233,\n",
|
||||
" 'MASE': 1.5660744171042167,\n",
|
||||
" 'MAPE': 0.5378745856593485,\n",
|
||||
" 'sMAPE': 0.28677677568983434,\n",
|
||||
" 'MSIS': 32.36383614317314,\n",
|
||||
" 'QuantileLoss[0.1]': 440774354.40000004,\n",
|
||||
" 'Coverage[0.1]': 0.029557070442230375,\n",
|
||||
" 'QuantileLoss[0.2]': 756634070.0000001,\n",
|
||||
" 'Coverage[0.2]': 0.07917077434015032,\n",
|
||||
" 'QuantileLoss[0.3]': 1019171337.0000001,\n",
|
||||
" 'Coverage[0.3]': 0.15499947561615102,\n",
|
||||
" 'QuantileLoss[0.4]': 1260494017.6000001,\n",
|
||||
" 'Coverage[0.4]': 0.25912253102604443,\n",
|
||||
" 'QuantileLoss[0.5]': 1497767969.0,\n",
|
||||
" 'Coverage[0.5]': 0.38656668414612827,\n",
|
||||
" 'QuantileLoss[0.6]': 1706940523.6,\n",
|
||||
" 'Coverage[0.6]': 0.5143408495018352,\n",
|
||||
" 'QuantileLoss[0.7]': 1913551538.2000003,\n",
|
||||
" 'Coverage[0.7]': 0.6568208355182661,\n",
|
||||
" 'QuantileLoss[0.8]': 2065471280.3999999,\n",
|
||||
" 'Coverage[0.8]': 0.7854920468449573,\n",
|
||||
" 'QuantileLoss[0.9]': 2048190745.2,\n",
|
||||
" 'Coverage[0.9]': 0.8877315154693237,\n",
|
||||
" 'RMSE': 20780.746799719527,\n",
|
||||
" 'NRMSE': 7.180376421350624,\n",
|
||||
" 'ND': 0.3618417236394574,\n",
|
||||
" 'wQuantileLoss[0.1]': 0.10648548736066946,\n",
|
||||
" 'wQuantileLoss[0.2]': 0.18279318407104878,\n",
|
||||
" 'wQuantileLoss[0.3]': 0.24621885425299164,\n",
|
||||
" 'wQuantileLoss[0.4]': 0.3045193497295365,\n",
|
||||
" 'wQuantileLoss[0.5]': 0.3618417236394574,\n",
|
||||
" 'wQuantileLoss[0.6]': 0.4123751568955217,\n",
|
||||
" 'wQuantileLoss[0.7]': 0.46228975461233346,\n",
|
||||
" 'wQuantileLoss[0.8]': 0.49899163535105145,\n",
|
||||
" 'wQuantileLoss[0.9]': 0.49481687746358305,\n",
|
||||
" 'mean_absolute_QuantileLoss': 1412110648.377778,\n",
|
||||
" 'mean_wQuantileLoss': 0.3411480025973548,\n",
|
||||
" 'MAE_Coverage': 0.08291091301054591,\n",
|
||||
" 'OWA': nan}"
|
||||
]
|
||||
},
|
||||
"execution_count": 12,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"agg_metrics"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 13,
|
||||
"id": "cc3f804d",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAB7cAAAXDCAYAAAC73rpsAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/av/WaAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeZwU9Zk/8E/Pfd/cN3KIIggqEQlKDPGAeKMxibuAR+KyiQchh7txdY1Z96eC4sYYd6OgSTRGBBQPlENEOeSUewYGmPue6Z6Zvru66vdHd/V0z/RR1V19zXzevni9sLuqq2aAnqe/z/d5Hp0kSRKIiIiIiIiIiIiIiIiIiIgSWEq8b4CIiIiIiIiIiIiIiIiIiCgUJreJiIiIiIiIiIiIiIiIiCjhMblNREREREREREREREREREQJj8ltIiIiIiIiIiIiIiIiIiJKeExuExERERERERERERERERFRwmNym4iIiIiIiIiIiIiIiIiIEh6T20RERERERERERERERERElPCY3CYiIiIiIiIiIiIiIiIiooTH5DYRERERERERERERERERESU8JreJiIiIiIiIiIiIiIiIiCjhMblNRJQEuru78eSTT+KSSy5BXl4eCgsLccUVV2DlypWw2+3xvj0iIiIiSkBmsxmffPIJnn76adx+++0YM2YMdDoddDodnnzyyXjfHhEREREluPb2dqxZswb33HMPLrroIuTm5iIzMxMjR47Erbfeig0bNsT7FoloANJJkiTF+yaIiCiw6upqzJs3D1VVVQCAnJwcOJ1O2Gw2AMCMGTOwbds2FBcXx/EuiYiIiCjR7NixA9/5znf8PvfEE08wwU1EREREQaWnp0MQBM//Z2VlITU1FSaTyfPYjTfeiHXr1iEnJycet0hEAxArt4mIEpggCLjppptQVVWFYcOGYcuWLTCZTDCbzfj73/+O/Px8HD58GPfcc0+8b5WIiIiIElBxcTG++93v4pe//CXefvttDB06NN63RERERERJQhAEzJo1C3/84x9x9uxZWCwWGI1GnD9/Hvfddx8A4JNPPsFPf/rTON8pEQ0krNwmIkpgr732Gu6//34AwO7duzF79myf599++2386Ec/AgBs3boV3/3ud2N+j0RERESUmJxOJ1JTU30eGzt2LKqrq1m5TUREREQhff755wE7AQHAgw8+iFdffRUAUFNTg1GjRsXq1ohoAGPlNhFRAnvjjTcAAN/5znf6JLYB4O6778a4ceMAAG+++WZM742IiIiIElvvxDYRERERkRrBEtsAPNXbAHDgwIFo3w4REQAmt4mIEpbZbMauXbsAuGbX+KPT6XDDDTcAAD777LOY3RsRERERERERERENbFlZWZ7fO53OON4JEQ0kTG4TESWoU6dOQRRFAMDUqVMDHic/19TUhI6OjpjcGxEREREREREREQ1sO3bs8Pz+kksuid+NENGAwuQ2EVGCamho8Px+xIgRAY/zfs77HCIiIiIiIiIiIqJoMBgMeOaZZwAAc+fOxeTJk+N8R0Q0UDC5TUSUoLq7uz2/z8nJCXic93Pe5xARERERERERERFpTRRF/NM//RMaGxuRlZWFP/zhD/G+JSIaQJjcJiIiIiIiIiIiIiIiIkUefvhhfPjhhwCAl19+GdOmTYvzHRHRQMLkNhFRgsrPz/f83mw2BzzO+znvc4iIiIiIiIiIiIi0tGLFCk+l9gsvvIB77703zndERAMNk9tERAlq+PDhnt/X19cHPM77Oe9ziIiIiIiIiIiIiLTyq1/9CitXrgQAPP/883jkkUfie0NENCAxuU1ElKCmTJmClBTX2/Tx48cDHic/N3ToUJSUlMTk3oiIiIiIiIiIiGjg+OUvf4nnnnsOAPDss8/iF7/4RZzviIgGKia3iYgSVE5ODubMmQMA2Lx5s99jJEnCp59+CgC47rrrYnZvRERERERERERENDCsWLECzz//PABXYvuXv/xlnO+IiAYyJreJiBLY4sWLAQCff/45vv766z7Pv/vuuzh37hwA4J//+Z9jem9ERERERERERETUv61YscKnFTkT20QUb0xuExElsMWLF+OSSy6BJEm44447sG3bNgCAKIp499138cADDwAAbrzxRnz3u9+N560SERERUQLS6/Voa2vz/BJFEQBgNpt9HjcajXG+UyIiIiJKNN4ztletWsVW5ESUEHSSJEnxvgkiIgqsqqoK3/nOd1BVVQXA1a5cFEVYrVYAwIwZM7Bt2zYUFxfH8S6JiIiIKBGNHTsW1dXVIY9bvHgx1q5dG/0bIiIiIqKkUFNTgzFjxgAAUlJSMGjQoKDHr1ixAitWrIjFrRHRAJcW7xsgIqLgxo4di6NHj+L555/H+vXrcf78eaSnp+Piiy/GD3/4Q/z85z9HRkZGvG+TiIiIiIiIiIiI+gm544/8++bm5qDHsxMQEcUKK7eJiIiIiIiIiIiIiIiIiCjhceY2ERERERERERERERERERElPCa3iYiIiIiIiIiIiIiIiIgo4TG5TURERERERERERERERERECY/JbSIiIiIiIiIiIiIiIiIiSnhMbhMRERERERERERERERERUcJjcpuIiIiIiIiIiIiIiIiIiBJeWrxvoD8SRRENDQ3Iz8+HTqeL9+0QERERKSJJErq7uzF8+HCkpHAPZLwwliQiIqJkxFgyMTCWJCIiomSkJpZkcjsKGhoaMGrUqHjfBhEREVFYamtrMXLkyHjfxoDFWJKIiIiSGWPJ+GIsSURERMlMSSzJ5HYU5OfnA3D9ARQUFMT5boiIiIiU6erqwqhRozyxDMUHY0kiIiJKRowlEwNjSSIiIkpGamJJJrejQG75U1BQwCCSiIiIkg7bF8YXY0kiIiJKZowl44uxJBERESUzJbEkB+AQEREREREREREREREREVHCY3KbiIiIiIiIiIiIiIiIiIgSHpPbRERERERERERERERERESU8JjcJiIiIiIiIiIiIiIiIiKihMfkNhERERERERERERERERERJTwmt4mIiIiIiIiIiIiIiIiIKOExuU1ERERERERERERERERERAmPyW0iIiIiIiIiIiIiIiIiIkp4TG4TEREREREREREREREREVHCY3KbiIiIiIiIiIiIiIiIiIgSHpPbRERERERERERERERERESU8JjcJiIiIiIiIiIiIiIiIiKihMfkNhERERERERERERERERERJTwmt4mIiIhUcIrOeN8CERERUUJgXERERERElDhESYTdaY/3bUQdk9tEREREKnTaOuN9C0REREQJgXEREREREVHiqOmsgcluivdtRB2T20REREQqGKyGeN8CERERUULQW/TxvgUiIiIiInKraKtg5TYRERER9RAlEV22rnjfBhEREVFC4KY/IiIiIqLEYBNsqO6shs1pi/etRB2T20REREQK2QQbzA5zvG+DiIiIKO6sghUWwRLv2yAiIiIiIgBn9Wc5c1tr8+bNg06nC/hr8+bNfs9bu3YtZs2ahby8PJSUlGDBggXYvXt30Gvt2rULCxYsQElJCfLy8jBr1iy8+eabQc+pq6vD0qVLMXz4cGRlZWHSpEl44oknYLVaw/6aiYiIqH+xO+2wOLiIS0RERGQVrLAKXDMhIiIiIkoEFW0VADAgkttpsb7gHXfcgby8vD6Pjxgxos9jjzzyCFavXo3s7Gxcd911sFqt2LJlCz777DOsW7cOt956a59z3nvvPfzgBz+AKIq4+uqrUVZWhm3btmHx4sU4evQonn/++T7nVFZWYvbs2Whra8PUqVMxd+5cHDhwAE899RS2bduGbdu2ITMzU5Ovn4iIiJKXzWljhRIRERERmNwmIiIiIkoUndZONJuaAbg6T/Z3MU9uP//88xg7dmzI47Zu3YrVq1ejtLQUe/bswcSJEwEAe/bswbx587B06VLMmzcPRUVFnnM6Ojpw7733wul04r333sPtt98OAGhubsa3v/1trFy5Et///vcxb948n2stWbIEbW1teOihh7B69WoAgCAIuOuuu7BhwwY888wzePLJJ7X48omIiCiJWQUr25ITERERAbA4LExuExERERElgNPtpz2/HwiV2wk7c3vVqlUAgN/+9reexDYAzJ49Gw8++CAMBgNee+01n3P+/Oc/o6urC7fccosnsQ0AQ4YMwbPPPgsAWLlypc85+/btw65duzB48GDPMQCQlpaGV155Benp6XjppZcgCILmXyMRERElF5tgY1tyIiIiIgAWgcltIiIiIqJE4J3ctjn7f+V2Qia3LRYLtm/fDgBYtGhRn+flxzZt2uTz+EcffRTwnIULFyIrKwtbt271maMtn3PTTTf1aT0+ZMgQzJ07F3q9Hl999VUEXxERERH1BzanDVbBCkmS4n0rRERERHHFtuRERERERPHX2N2Ibnu35/9ZuR0Fr732GpYtW4af/exneOmll1BTU9PnmIqKCthsNgwaNAgjR47s8/zMmTMBAEePHvV5/MiRIz7Pe8vIyMDUqVNhtVpx+vRpRecEuxYREVE8iZIY71sYkGyCDRIkLuQSERHRgGdxWCCIAgSRne6IiIiIiOLFu2obYHI7Kp5++mm88sorePnll/Hwww9jwoQJ+N3vfudzjJzw9pfYBoDc3FwUFRVBr9eju9u1G6GrqwudnZ1Bz5Mfr66uVnwtf+cQERHFmyiJcIrOeN/GgCO39bEIbE1OREREA5u82Y+b/ihZ7N+/H3fddReGDx+O9PR0FBUVYe7cuVizZo3fzkxOpxMvvPACLrnkEmRnZ2PQoEG46667cOrUqaDX2bRpE6655hoUFBSgoKAA8+bN83SODOTEiRO48847MWjQIGRnZ+OSSy7Biy++CFHkpmYiIiIKzCk6cVZ/1ucxm8C25Jq5+uqr8Ze//AVnz56F2WxGRUUFfv/73yMtLQ3/8R//gdWrV3uONRqNAICcnJyAr5ebmwsAnuS2fE6w83qfo+Ra/s7Line truncated
|
||||
"text/plain": [
|
||||
"<Figure size 2000x1500 with 9 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.figure(figsize=(20, 15))\n",
|
||||
"date_formater = mdates.DateFormatter('%b, %d')\n",
|
||||
"plt.rcParams.update({'font.size': 15})\n",
|
||||
"\n",
|
||||
"for idx, (forecast, ts) in islice(enumerate(zip(forecasts, tss)), 9):\n",
|
||||
" ax = plt.subplot(3, 3, idx+1)\n",
|
||||
"\n",
|
||||
" plt.plot(ts[-4 * dataset.metadata.prediction_length:].to_timestamp(), label=\"target\", )\n",
|
||||
" forecast.plot( color='g')\n",
|
||||
" plt.xticks(rotation=60)\n",
|
||||
" ax.xaxis.set_major_formatter(date_formater)\n",
|
||||
" ax.set_title(forecast.item_id)\n",
|
||||
"\n",
|
||||
"plt.gcf().tight_layout()\n",
|
||||
"plt.legend()\n",
|
||||
"plt.show()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 18,
|
||||
"id": "6f03bfd2",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"metrics = pd.read_csv(\"lightning_logs/version_86/metrics.csv\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 19,
|
||||
"id": "8e76b769",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div>\n",
|
||||
"<style scoped>\n",
|
||||
" .dataframe tbody tr th:only-of-type {\n",
|
||||
" vertical-align: middle;\n",
|
||||
" }\n",
|
||||
"\n",
|
||||
" .dataframe tbody tr th {\n",
|
||||
" vertical-align: top;\n",
|
||||
" }\n",
|
||||
"\n",
|
||||
" .dataframe thead th {\n",
|
||||
" text-align: right;\n",
|
||||
" }\n",
|
||||
"</style>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
" <th></th>\n",
|
||||
" <th>train_perplexity</th>\n",
|
||||
" <th>epoch</th>\n",
|
||||
" <th>step</th>\n",
|
||||
" <th>val_loss</th>\n",
|
||||
" <th>train_loss</th>\n",
|
||||
" </tr>\n",
|
||||
" </thead>\n",
|
||||
" <tbody>\n",
|
||||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>2.042362</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td>2.050069</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>99</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>2</th>\n",
|
||||
" <td>2.743227</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>149</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>3</th>\n",
|
||||
" <td>2.440984</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>199</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>4</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>199</td>\n",
|
||||
" <td>4.355846</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>...</th>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" <td>...</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>295</th>\n",
|
||||
" <td>80.659866</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9899</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>296</th>\n",
|
||||
" <td>82.568138</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9949</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>297</th>\n",
|
||||
" <td>81.211136</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>298</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>1.084462</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>299</th>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>49</td>\n",
|
||||
" <td>9999</td>\n",
|
||||
" <td>NaN</td>\n",
|
||||
" <td>1.707654</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
"<p>300 rows × 5 columns</p>\n",
|
||||
"</div>"
|
||||
],
|
||||
"text/plain": [
|
||||
" train_perplexity epoch step val_loss train_loss\n",
|
||||
"0 2.042362 0 49 NaN NaN\n",
|
||||
"1 2.050069 0 99 NaN NaN\n",
|
||||
"2 2.743227 0 149 NaN NaN\n",
|
||||
"3 2.440984 0 199 NaN NaN\n",
|
||||
"4 NaN 0 199 4.355846 NaN\n",
|
||||
".. ... ... ... ... ...\n",
|
||||
"295 80.659866 49 9899 NaN NaN\n",
|
||||
"296 82.568138 49 9949 NaN NaN\n",
|
||||
"297 81.211136 49 9999 NaN NaN\n",
|
||||
"298 NaN 49 9999 1.084462 NaN\n",
|
||||
"299 NaN 49 9999 NaN 1.707654\n",
|
||||
"\n",
|
||||
"[300 rows x 5 columns]"
|
||||
]
|
||||
},
|
||||
"execution_count": 19,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"metrics"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 20,
|
||||
"id": "ad490889",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"Text(0, 0.5, 'perplexity')"
|
||||
]
|
||||
},
|
||||
"execution_count": 20,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"ax = metrics.train_perplexity.dropna().plot(kind=\"line\")\n",
|
||||
"ax.set_xlabel(\"training steps\")\n",
|
||||
"ax.set_ylabel(\"perplexity\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 21,
|
||||
"id": "f1185a0f",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"Text(0, 0.5, 'val neg. log likelihood')"
|
||||
]
|
||||
},
|
||||
"execution_count": 21,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"ax = metrics.val_loss.dropna().plot()\n",
|
||||
"ax.set_xlabel(\"training steps\")\n",
|
||||
"ax.set_ylabel(\"val neg. log likelihood\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 22,
|
||||
"id": "d887cb3b",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"X = predictor.prediction_net.vq_vae.embed.cpu()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 23,
|
||||
"id": "ae16d4bd",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"X_embedded = TSNE(n_components=2, learning_rate='auto', init='random').fit_transform(X)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 24,
|
||||
"id": "8feaef88",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"<matplotlib.collections.PathCollection at 0x7f4eec421b20>"
|
||||
]
|
||||
},
|
||||
"execution_count": 24,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.scatter(X_embedded[:,0], X_embedded[:,1], alpha=1.0)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "e8968e6f",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3 (ipykernel)",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.10.6"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
Reference in new issue
Block a user