updated notebook

This commit is contained in:
Kashif Rasul committed 2022-03-31 12:17:27 +02:00
1 parent 33cf2402a6
commit 75ef832caa
1 file changed
+207 -151
+207 -151
View File
@@ -48,7 +48,7 @@
},
{
"cell_type": "code",
"execution_count": 14,
"execution_count": 4,
"id": "f9b11457",
"metadata": {},
"outputs": [],
@@ -61,13 +61,13 @@
"\n",
" batch_size=128,\n",
" num_batches_per_epoch=100,\n",
" trainer_kwargs=dict(max_epochs=20, accelerator='gpu', gpus=1),\n",
" trainer_kwargs=dict(max_epochs=50, accelerator='gpu', gpus=1),\n",
")"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 5,
"id": "0dd19bd9",
"metadata": {},
"outputs": [
@@ -75,144 +75,144 @@
"name": "stderr",
"output_type": "stream",
"text": [
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:324: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" timestamp = pd.Timestamp(timestamp_input, freq=freq)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:324: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" timestamp = pd.Timestamp(timestamp_input, freq=freq)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:324: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" timestamp = pd.Timestamp(timestamp_input, freq=freq)\n",
"GPU available: True, used: True\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:327: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" if isinstance(timestamp.freq, Tick):\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:327: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" if isinstance(timestamp.freq, Tick):\n",
"TPU available: False, using: 0 TPU cores\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:327: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" if isinstance(timestamp.freq, Tick):\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:329: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" timestamp.floor(timestamp.freq), timestamp.freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:329: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" timestamp.floor(timestamp.freq), timestamp.freq\n",
"IPU available: False, using: 0 IPUs\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:329: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" timestamp.floor(timestamp.freq), timestamp.freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:328: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" return pd.Timestamp(\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:328: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" return pd.Timestamp(\n",
"/home/kashif/.env/pytorch/lib/python3.8/site-packages/pytorch_lightning/trainer/configuration_validator.py:122: UserWarning: You defined a `validation_step` but have no `val_dataloader`. Skipping val loop.\n",
" rank_zero_warn(\"You defined a `validation_step` but have no `val_dataloader`. Skipping val loop.\")\n",
"LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:324: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" timestamp = pd.Timestamp(timestamp_input, freq=freq)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:328: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" return pd.Timestamp(\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:324: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" timestamp = pd.Timestamp(timestamp_input, freq=freq)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:324: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" timestamp = pd.Timestamp(timestamp_input, freq=freq)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:327: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" if isinstance(timestamp.freq, Tick):\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:327: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" if isinstance(timestamp.freq, Tick):\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:327: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" if isinstance(timestamp.freq, Tick):\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:329: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" timestamp.floor(timestamp.freq), timestamp.freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:328: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" return pd.Timestamp(\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:329: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" timestamp.floor(timestamp.freq), timestamp.freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:329: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" timestamp.floor(timestamp.freq), timestamp.freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:328: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" return pd.Timestamp(\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:328: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" return pd.Timestamp(\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:324: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" timestamp = pd.Timestamp(timestamp_input, freq=freq)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:324: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" timestamp = pd.Timestamp(timestamp_input, freq=freq)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:327: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" if isinstance(timestamp.freq, Tick):\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:329: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" timestamp.floor(timestamp.freq), timestamp.freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:328: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" return pd.Timestamp(\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n"
" self._freq_base = start.freq.base\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:327: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" if isinstance(timestamp.freq, Tick):\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:329: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" timestamp.floor(timestamp.freq), timestamp.freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/dataset/common.py:328: FutureWarning: The 'freq' argument in Timestamp is deprecated and will be removed in a future version.\n",
" return pd.Timestamp(\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:343: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base = start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/split.py:36: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" return _shift_timestamp_helper(ts, ts.freq, offset)\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:384: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" ..., i0 : i0 + length * start.freq.n : start.freq.n\n",
"/home/kashif/gluon-ts-PR/src/gluonts/transform/feature.py:340: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" self._freq_base is None or self._freq_base == start.freq.base\n",
"\n",
@@ -230,7 +230,7 @@
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "6cd3257c23ed418f8d0cb9d7c955c951",
"model_id": "dc17b4a76a774e88a9453da6a19b79d1",
"version_major": 2,
"version_minor": 0
},
@@ -240,12 +240,68 @@
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Epoch 0, global step 99: train_loss reached 6.38547 (best 6.38547), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=0-step=99.ckpt\" as top 1\n",
"Epoch 1, global step 199: train_loss reached 5.69424 (best 5.69424), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=1-step=199.ckpt\" as top 1\n",
"Epoch 2, global step 299: train_loss reached 5.52260 (best 5.52260), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=2-step=299.ckpt\" as top 1\n",
"Epoch 3, global step 399: train_loss reached 5.43439 (best 5.43439), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=3-step=399.ckpt\" as top 1\n",
"Epoch 4, global step 499: train_loss reached 5.38715 (best 5.38715), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=4-step=499.ckpt\" as top 1\n",
"Epoch 5, global step 599: train_loss reached 5.28788 (best 5.28788), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=5-step=599.ckpt\" as top 1\n",
"Epoch 6, global step 699: train_loss was not in top 1\n",
"Epoch 7, global step 799: train_loss reached 5.27511 (best 5.27511), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=7-step=799.ckpt\" as top 1\n",
"Epoch 8, global step 899: train_loss reached 5.23092 (best 5.23092), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=8-step=899.ckpt\" as top 1\n",
"Epoch 9, global step 999: train_loss was not in top 1\n",
"Epoch 10, global step 1099: train_loss reached 5.21828 (best 5.21828), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=10-step=1099.ckpt\" as top 1\n",
"Epoch 11, global step 1199: train_loss reached 5.18606 (best 5.18606), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=11-step=1199.ckpt\" as top 1\n",
"Epoch 12, global step 1299: train_loss was not in top 1\n",
"Epoch 13, global step 1399: train_loss reached 5.17699 (best 5.17699), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=13-step=1399.ckpt\" as top 1\n",
"Epoch 14, global step 1499: train_loss reached 5.17665 (best 5.17665), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=14-step=1499.ckpt\" as top 1\n",
"Epoch 15, global step 1599: train_loss reached 5.15192 (best 5.15192), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=15-step=1599.ckpt\" as top 1\n",
"Epoch 16, global step 1699: train_loss reached 5.13906 (best 5.13906), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=16-step=1699.ckpt\" as top 1\n",
"Epoch 17, global step 1799: train_loss was not in top 1\n",
"Epoch 18, global step 1899: train_loss reached 5.13224 (best 5.13224), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=18-step=1899.ckpt\" as top 1\n",
"Epoch 19, global step 1999: train_loss was not in top 1\n",
"Epoch 20, global step 2099: train_loss reached 5.09653 (best 5.09653), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=20-step=2099.ckpt\" as top 1\n",
"Epoch 21, global step 2199: train_loss was not in top 1\n",
"Epoch 22, global step 2299: train_loss was not in top 1\n",
"Epoch 23, global step 2399: train_loss was not in top 1\n",
"Epoch 24, global step 2499: train_loss was not in top 1\n",
"Epoch 25, global step 2599: train_loss reached 5.09542 (best 5.09542), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=25-step=2599.ckpt\" as top 1\n",
"Epoch 26, global step 2699: train_loss reached 5.07425 (best 5.07425), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=26-step=2699.ckpt\" as top 1\n",
"Epoch 27, global step 2799: train_loss was not in top 1\n",
"Epoch 28, global step 2899: train_loss was not in top 1\n",
"Epoch 29, global step 2999: train_loss was not in top 1\n",
"Epoch 30, global step 3099: train_loss was not in top 1\n",
"Epoch 31, global step 3199: train_loss was not in top 1\n",
"Epoch 32, global step 3299: train_loss reached 5.06753 (best 5.06753), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=32-step=3299.ckpt\" as top 1\n",
"Epoch 33, global step 3399: train_loss was not in top 1\n",
"Epoch 34, global step 3499: train_loss was not in top 1\n",
"Epoch 35, global step 3599: train_loss reached 5.06716 (best 5.06716), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=35-step=3599.ckpt\" as top 1\n",
"Epoch 36, global step 3699: train_loss reached 5.05435 (best 5.05435), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=36-step=3699.ckpt\" as top 1\n",
"Epoch 37, global step 3799: train_loss was not in top 1\n",
"Epoch 38, global step 3899: train_loss reached 5.03846 (best 5.03846), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=38-step=3899.ckpt\" as top 1\n",
"Epoch 39, global step 3999: train_loss was not in top 1\n",
"Epoch 40, global step 4099: train_loss was not in top 1\n",
"Epoch 41, global step 4199: train_loss was not in top 1\n",
"Epoch 42, global step 4299: train_loss reached 5.03356 (best 5.03356), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=42-step=4299.ckpt\" as top 1\n",
"Epoch 43, global step 4399: train_loss was not in top 1\n",
"Epoch 44, global step 4499: train_loss was not in top 1\n",
"Epoch 45, global step 4599: train_loss was not in top 1\n",
"Epoch 46, global step 4699: train_loss reached 5.03011 (best 5.03011), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=46-step=4699.ckpt\" as top 1\n",
"Epoch 47, global step 4799: train_loss was not in top 1\n",
"Epoch 48, global step 4899: train_loss was not in top 1\n",
"Epoch 49, global step 4999: train_loss reached 5.01233 (best 5.01233), saving model to \"/mnt/scratch/kashif/pytorch-transformer-ts/tft/lightning_logs/version_38/checkpoints/epoch=49-step=4999.ckpt\" as top 1\n"
]
}
],
"source": [
"predictor = estimator.train(\n",
" training_data=dataset.train,\n",
" num_workers=16,\n",
" num_workers=8,\n",
" shuffle_buffer_length=1024\n",
")"
]
@@ -326,7 +382,9 @@
"name": "stderr",
"output_type": "stream",
"text": [
"Running evaluation: 2247it [00:00, 3696.80it/s]/home/kashif/gluon-ts-PR/src/gluonts/evaluation/_base.py:306: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
"Running evaluation: 2247it [00:00, 5399.22it/s]/home/kashif/gluon-ts-PR/src/gluonts/evaluation/_base.py:306: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" date_before_forecast = forecast.index[0] - forecast.index[0].freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/evaluation/_base.py:306: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" date_before_forecast = forecast.index[0] - forecast.index[0].freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/evaluation/_base.py:306: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" date_before_forecast = forecast.index[0] - forecast.index[0].freq\n",
@@ -357,8 +415,6 @@
" date_before_forecast = forecast.index[0] - forecast.index[0].freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/evaluation/_base.py:306: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" date_before_forecast = forecast.index[0] - forecast.index[0].freq\n",
"/home/kashif/gluon-ts-PR/src/gluonts/evaluation/_base.py:306: FutureWarning: Timestamp.freq is deprecated and will be removed in a future version.\n",
" date_before_forecast = forecast.index[0] - forecast.index[0].freq\n",
"/home/kashif/.env/pytorch/lib/python3.8/site-packages/pandas/core/construction.py:781: UserWarning: Warning: converting a masked element to nan.\n",
" subarr = np.array(arr, dtype=dtype, copy=copy)\n"
]
@@ -370,59 +426,59 @@
},
{
"cell_type": "code",
"execution_count": 12,
"id": "3d386587",
"execution_count": 11,
"id": "af60a764",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'MSE': 2268670.185238203,\n",
" 'abs_error': 12053610.225944996,\n",
"{'MSE': 2288155.4595733206,\n",
" 'abs_error': 8677549.890345097,\n",
" 'abs_target_sum': 128632956.0,\n",
" 'abs_target_mean': 2385.272140631954,\n",
" 'seasonal_error': 189.49338196116761,\n",
" 'MASE': 1.115612490152452,\n",
" 'MAPE': 0.15282696886510425,\n",
" 'sMAPE': 0.15643239726127742,\n",
" 'MSIS': 8.31069379824802,\n",
" 'QuantileLoss[0.1]': 6807481.895313849,\n",
" 'Coverage[0.1]': 0.318331849873906,\n",
" 'QuantileLoss[0.2]': 9639934.200819714,\n",
" 'Coverage[0.2]': 0.46717846016911435,\n",
" 'QuantileLoss[0.3]': 11212656.535200916,\n",
" 'Coverage[0.3]': 0.5766021361815754,\n",
" 'QuantileLoss[0.4]': 11978553.100825835,\n",
" 'Coverage[0.4]': 0.6592679127725857,\n",
" 'QuantileLoss[0.5]': 12053610.195398472,\n",
" 'Coverage[0.5]': 0.7272288977896454,\n",
" 'QuantileLoss[0.6]': 11435207.664433796,\n",
" 'Coverage[0.6]': 0.7807261533897047,\n",
" 'QuantileLoss[0.7]': 10287538.289494911,\n",
" 'Coverage[0.7]': 0.8345386441180834,\n",
" 'QuantileLoss[0.8]': 8401266.733424887,\n",
" 'Coverage[0.8]': 0.8838265835929388,\n",
" 'QuantileLoss[0.9]': 5519886.29474154,\n",
" 'Coverage[0.9]': 0.931538347426198,\n",
" 'RMSE': 1506.210538151358,\n",
" 'NRMSE': 0.6314627637215025,\n",
" 'ND': 0.09370545932214289,\n",
" 'wQuantileLoss[0.1]': 0.052921755878126975,\n",
" 'wQuantileLoss[0.2]': 0.07494140304775172,\n",
" 'wQuantileLoss[0.3]': 0.08716783695152676,\n",
" 'wQuantileLoss[0.4]': 0.09312196091354563,\n",
" 'wQuantileLoss[0.5]': 0.09370545908467245,\n",
" 'wQuantileLoss[0.6]': 0.08889796223320715,\n",
" 'wQuantileLoss[0.7]': 0.0799759144887793,\n",
" 'wQuantileLoss[0.8]': 0.06531193089759119,\n",
" 'wQuantileLoss[0.9]': 0.042911913605884484,\n",
" 'mean_absolute_QuantileLoss': 9704014.989961546,\n",
" 'mean_wQuantileLoss': 0.07543957078900951,\n",
" 'MAE_Coverage': 0.18658210947930576,\n",
" 'MASE': 0.7392301619000542,\n",
" 'MAPE': 0.0942166421951502,\n",
" 'sMAPE': 0.10727499540855988,\n",
" 'MSIS': 5.90130373159719,\n",
" 'QuantileLoss[0.1]': 3652603.570823352,\n",
" 'Coverage[0.1]': 0.09373609256786827,\n",
" 'QuantileLoss[0.2]': 5729977.868776519,\n",
" 'Coverage[0.2]': 0.21504598724224894,\n",
" 'QuantileLoss[0.3]': 7170568.846287252,\n",
" 'Coverage[0.3]': 0.342215546654799,\n",
" 'QuantileLoss[0.4]': 8147483.8875474585,\n",
" 'Coverage[0.4]': 0.46387776294318356,\n",
" 'QuantileLoss[0.5]': 8677549.828375284,\n",
" 'Coverage[0.5]': 0.5856697819314641,\n",
" 'QuantileLoss[0.6]': 8664060.21840468,\n",
" 'Coverage[0.6]': 0.6839860554813825,\n",
" 'QuantileLoss[0.7]': 8038668.19911083,\n",
" 'Coverage[0.7]': 0.7789645453196856,\n",
" 'QuantileLoss[0.8]': 6666073.66160029,\n",
" 'Coverage[0.8]': 0.8620753597389113,\n",
" 'QuantileLoss[0.9]': 4274899.861139778,\n",
" 'Coverage[0.9]': 0.9331886960391633,\n",
" 'RMSE': 1512.6650189560544,\n",
" 'NRMSE': 0.634168736216107,\n",
" 'ND': 0.06745977205363372,\n",
" 'wQuantileLoss[0.1]': 0.028395550288243022,\n",
" 'wQuantileLoss[0.2]': 0.04454517758867734,\n",
" 'wQuantileLoss[0.3]': 0.055744414722827734,\n",
" 'wQuantileLoss[0.4]': 0.06333900845400349,\n",
" 'wQuantileLoss[0.5]': 0.06745977157187684,\n",
" 'wQuantileLoss[0.6]': 0.06735490256792886,\n",
" 'wQuantileLoss[0.7]': 0.062493069032098045,\n",
" 'wQuantileLoss[0.8]': 0.0518224401342397,\n",
" 'wQuantileLoss[0.9]': 0.033233317448910824,\n",
" 'mean_absolute_QuantileLoss': 6780209.549118383,\n",
" 'mean_wQuantileLoss': 0.05270973908986732,\n",
" 'MAE_Coverage': 0.05236529364255222,\n",
" 'OWA': nan}"
]
},
"execution_count": 12,
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
@@ -433,13 +489,13 @@
},
{
"cell_type": "code",
"execution_count": 13,
"execution_count": 12,
"id": "c1914674",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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 truncated
"image/png": "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 truncated
"text/plain": [
"<Figure size 1440x1080 with 9 Axes>"
]