Spaces:
Runtime error
Runtime error
File size: 76,561 Bytes
8cf4695 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 |
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Aims\n",
"\n",
"- Test multivariate forecasting pipeline"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"# To call functions outside of this folder\n",
"import sys \n",
"sys.path.insert(0, '..')"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"\n",
"from src.forecast.multivariate import MultivariateForecasting"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"\n",
"# Load Data"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"data = pd.read_csv('../data/multivariate/blow_mold_preprocessed.csv')\n",
"\n",
"train = data[:252]\n",
"exog = data[252:].drop(columns='y')\n",
"\n",
"test = data[252:].set_index('datetime')\n",
"test.index = pd.to_datetime(test.index)\n",
"test = test[['y']]\n",
"\n",
"mf = MultivariateForecasting(train, exog)\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"\n",
"# How does train test been splitted?\n",
"\n",
"- Test size is same as forecast horizon size\n",
"- No sliding window for cross validation at this moment"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"24"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(mf.fh)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(24, 5)"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mf.X_test.shape"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"\n",
"# What is exog data?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- For example, using 3 different independent variable A, B, C to forecast y\n",
"- if the goal is to forecast next 4 y values, y_t+1, y_t+2, y_t+3, y_t+4\n",
"- both A, B and C must have the future 4 values in the first place, and these \"future\" values of A, B, C are exogenous data, which could be hard to collect\n",
"- Likely, these exogenous data are also forecasted by some other method, and any forecasting will carry error, these error will be accumulated in multivariate forecasting"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"\n",
"# How does the forecast horizon been defined ?\n",
"\n",
"- Forecast horizon is same size as exog "
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(24, 5)"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mf.exog.shape"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"ForecastingHorizon(['2021-01-31', '2021-02-28', '2021-03-31', '2021-04-30',\n",
" '2021-05-31', '2021-06-30', '2021-07-31', '2021-08-31',\n",
" '2021-09-30', '2021-10-31', '2021-11-30', '2021-12-31',\n",
" '2022-01-31', '2022-02-28', '2022-03-31', '2022-04-30',\n",
" '2022-05-31', '2022-06-30', '2022-07-31', '2022-08-31',\n",
" '2022-09-30', '2022-10-31', '2022-11-30', '2022-12-31'],\n",
" dtype='datetime64[ns]', name='datetime', freq=None, is_relative=False)"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mf.fh"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"mf.train_xgboost()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"\n",
"# Forecast result"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x12325e510>]"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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RMRreH0wCQ4O5oknniA4ONjqUtxK7WycmlJ7m0pbm0o7QW1tzLy5vV43+FVERESaLq/vMREREZGmQ8FEREREvIaCiYiIiHgNBRMRERHxGvUKJjNmzKBPnz6Eh4cTGxvLVVddxY4dO6ocYxgGU6dOJTExkdDQUAYPHsyWLVuqHDN79mwGDx5MREQENpuNnJyc015r48aNXHbZZURFRRETE8Ndd91FQUHBr9aYmprKoEGDCA0NpXXr1vzlL3+pMn9/eno648ePp3Pnzvj5+TFlypRG2c5TfffddwQEBNCzZ89G186JEydis9lO27p16+ZTbS0pKWHixIn06NGDgIAArrrqqmqPW758Ob169SIkJIT27dvz6quvVnucK9p7/Phx7r//fjp37kxYWBht2rThgQceIDc3t8p5srOzueWWW4iMjCQyMpJbbrml2j+XX/KW96rV7TxVTe/VxtJWT75f3dlWX36/Pv300/Tv35+wsDCioqLO2M5TueL9+quMerj88suNOXPmGJs3bzZ++OEHY+TIkUabNm2MgoIC5zHPPPOMER4ebnz44YdGamqqccMNNxgJCQlGXl6e85gXX3zRmDFjhjFjxgwDMLKzs6u8zuHDh40WLVoYkyZNMrZv326sW7fO6N+/v3HNNdecsb7c3FwjLi7OuPHGG43U1FTjww8/NMLDw42//e1vzmP27dtnPPDAA8bcuXONnj17Gg8++GCjbGelnJwco3379sawYcOMc889t9G1Mycnx0hPT3duaWlpRnR0tPHEE0/4VFsLCgqMSZMmGbNnzzYuv/xyY8yYMacds3fvXiMsLMx48MEHja1btxqvv/66ERgYaPznP/857VhXtDc1NdUYO3as8cknnxi7d+82vv76a6NTp06ntWX48OFG9+7djVWrVhmrVq0yunfvbowaNeqM7fWm96rV7ax0pvdqY2mrJ9+v7myrL79f//znPxsvvPCC8dBDDxmRkZFnbGclV71ff029gskvZWZmGoCxfPlywzAMw+FwGPHx8cYzzzzjPKakpMSIjIw0Xn311dOe/80331T7n/trr71mxMbGGhUVFc59mzZtMgBj165dNdbzyiuvGJGRkUZJSYlz34wZM4zExETD4XCcdvygQYNq9Yfny+284YYbjD/+8Y/GE088Ue1/do2lnZUWLlxo2Gw2Y//+/T7V1lNNmDCh2v/oHnnkEaNLly5V9t19991Gv379fvWcDW1vpQ8++MAICgoyysrKDMMwjK1btxqAsWbNGucxq1evNgBj+/btNZ7HW9+rVrazLu9VX29rJU+9X13d1lP50vv1VHPmzKl1MHHX+/WXXDLGpLKLKDo6GoB9+/aRkZHBsGHDnMcEBwczaNAgVq1aVevz2u12goKCqiwGFBoaCsDKlStrfN7q1asZNGhQlYljLr/8co4cOcL+/ftr/fq/5KvtnDNnDnv27OGJJ56oVT2+2s5TvfHGG1x66aUkJyefsSZva2ttrF69ukp9YP55fP/995SVlZ3xua5qb25uLhEREQQEBDhrioyMpG/fvs5j+vXrR2Rk5BnP4+3vVU+3s67vVV9u66k8/X51VVtrwxvfr/XlrvfrLzU4mBiGwUMPPcTAgQPp3r07ABkZGQDExcVVOTYuLs75WG0MHTqUjIwM/vrXv1JaWkp2djaPPfYYYF7HqklGRka1r31qbXXlq+3ctWsXf/jDH5g/f36t/lH6ajtPlZ6ezpdffskdd9xxxnq8sa21UdOfR3l5OceOHavxea5qb1ZWFk8++SR33313lZpiY2NPOzY2NvaMf27e/F71dDvr+l4F323rqTz9fnVlW2vDG9+v9eWO92t1GhxM7rvvPn766Sfee++90x6z2WxVfjYM47R9Z9KtWzfmzp3L888/T1hYGPHx8bRv3564uDj8/f2dxzRv3pzmzZszYsSIM752dftryxfbWVFRwfjx45k2bRopKSmNtp2/9NZbbxEVFVXjQLRK3trW2qjPv29XtDcvL4+RI0dy9tlnn/ZbfXXHn3oeX3qverqd9Xmvgm+29Zc8+X51R1trwxvfr7/GU+/X6jSoX+f+++/nk08+YcWKFZx11lnO/fHx8YCZoBISEpz7MzMzT0tbv2b8+PGMHz+eo0eP0qxZM2w2Gy+88ALt2rUD4IsvvnB2h1V2lcfHx5+W3jIzM4HTk2Zt+Go78/Pz+f7779m0aRP33XcfAA6HA8MwCAgI4KuvvmLo0KE+385TGYbBm2++yS233EJQUFCNdXhrW2ujpj+PgIAAYmJiqn2OK9qbn5/P8OHDad68OQsXLiQwMLDKeY4ePXra6/7888/O8/jKe9WKdtb1verLbT2VJ9+v7mhrbXjj+7U2PPF+rVGdR6UY5gCcyZMnG4mJicbOnTurfTw+Pt549tlnnfvsdnudBxBW54033jDCwsLOeOwrr7xiREVFGXa73bnvmWeeqfMAHV9vZ0VFhZGamlplu+eee4zOnTsbqampzpHevt7O6l47NTW12nN5e1tPdabBdF27dq2yb9KkSdUOpnNVe3Nzc41+/foZgwYNMgoLC087T+XgwbVr1zr3rVmzplYDJb3pvWpVO2v7Xm0MbT2Vp96v7mrrqXzp/Xqqug5+dcX79dfUK5jcc889RmRkpLFs2bIqt3wVFRVVKTYyMtL46KOPjNTUVGPcuHGn3XKZnp5ubNq0yXj99dcNwFixYoWxadMmIysry3nMP//5T2PDhg3Gjh07jJkzZxqhoaHG3//+9zPWl5OTY8TFxRnjxo0zUlNTjY8++siIiIg47da8TZs2GZs2bTJ69epljB8/3ti0aZOxZcuWRtfOU1U30r8xtfPmm282+vbtW+O5vL2thmEYW7ZsMTZt2mSMHj3aGDx4sPPfaaXK2w9/+9vfGlu3bjXeeOONGm8/dEV78/LyjL59+xo9evQwdu/eXeU85eXlzvMMHz7cOOecc4zVq1cbq1evNnr06PGrt1t603vVG9p5qpruymlMbfXE+9WdbTUM332/HjhwwNi0aZMxbdo0o3nz5s668/Pza2yrq96vv6ZewQSodpszZ47zGIfDYTzxxBNGfHy8ERwcbFx88cWnpeInnnjiV89zyy23GNHR0UZQUJBxzjnnGG+//Xatavzpp5+Miy66yAgODjbi4+ONqVOnnpboqnvt5OTkRtfOX9byy//sGks7c3JyjNDQUGP27Nk1nscX2pqcnFztuU+1bNky47zzzjOCgoKMtm3bGrNmzXJbeyt/q61u27dvn/O4rKws46abbjLCw8ON8PBw46abbqpV75C3vFe9oZ2nqimYNJa2eur96u62+ur7dcKECdUe880335yxva54v/4a24mTiIiIiFhOa+WIiIiI11AwEREREa+hYCIiIiJeQ8FEREREvIaCiYiIiHgNBRMRERHxGgomIiIi4jUUTERERMRrKJiIiIiI11AwEREREa+hYCIiIiJeQ8FEREREvMb/A1MoQS8Ri3VwAAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(mf.y_test)\n",
"plt.plot(mf.models['xgboost']['test'])"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x1232a0490>]"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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HEVRmDFjBhEREfj4+DBw4EDi4+Mtj2dmZvLUU0/RunVrfH19iYqK4umnnyY7O7vS87z11lv06dMHX19f6tevX+MY4+LiiI2NxcfHh8aNG/P6669XahSVlpbGhAkTaN26NXq9nqlTp7rstV5u8+bNeHh40KVLF5e7zokTJ6LT6a66tW/f/qrncvTrLSoqYuLEiXTs2BEPDw9uu+22Ks/bsGED3bt3x9vbm2bNmjFv3jzNrjUxMZFHH32UmJgYfHx8aN68Oa+++iolJSXXvV5rvF9d4Tovd633qqtca03fr45+rc74XgW49dZbiYqKwtvbm/DwcB588EFSU1OrvVaw3mfrdSk2MHz4cGX+/PnKwYMHlX379imjR49WoqKilLy8PMs577zzjuLv76/8+OOPSlxcnHLvvfcq4eHhSk5OjqIoihIXF6fccccdyi+//KKcOHFCWbt2rdKyZUvlzjvvrPRar7zyijJ79mxl2rRpSmBgYI3iy87OVkJDQ5Xx48crcXFxyo8//qj4+/sr7733nuWchIQE5emnn1YWLFigdOnSRfnrX//qstdaISsrS2nWrJkybNgwpXPnzi53nVlZWUpaWprllpycrAQFBSmvvvrqVc/n6Nebl5enPP7448pnn32mDB8+XBk3btxV55w6dUrx9fVV/vrXvyqHDh1S/v3vfyuenp7KDz/8oMm1rlixQpk4caKycuVK5eTJk8rPP/+sNGrUSHn22WervVZrvV9d4TorVPdedZVrren71dGv1Rnfq4qiKLNnz1a2bt2qJCYmKps3b1Z69+6t9O7du9prteZn6/XYJHm5UkZGhgIoGzZsUBRFUcxmsxIWFqa88847lnOKioqUwMBAZd68edd8nu+//17x8vJSSktLr3ps/vz5Nf7F//HHHyuBgYFKUVGR5b6ZM2cqERERitlsvur82NjYGv8HduZrvffee5W///3vyquvvlrlL8TLOfN1Vli8eLGi0+mUxMTE6z6/o13v5R5++OEqfyG+8MILSps2bSrdN3nyZKVXr17VPp89rrXCrFmzlJiYmGrjsdX71ZmvszbvVUVx7mutUNP3q6Nd6+Wc+b36888/KzqdTikpKbnmObb8bL2SXda8VAxHBQUFAZCQkEB6ejrDhg2znGM0GomNjWXLli3VPk9AQAAeHjfWT3Lr1q3ExsZWqhw4fPhwUlNTSUxMvKHndtZrnT9/PidPnuTVV1+t0fM663Ve7osvvmDIkCFER0df9/kd7XprYuvWrZXiA/W/ya5duygtLb3m99nzWrOzsy2vU9112OL96qzXWdv3asXrg/Nd6+Vq+n51tGutCUd/r2ZmZrJo0SL69OmDp6dntddhq8/WK9k8eVEUhWnTptGvXz86dOgAQHp6OgChoaGVzg0NDbU8dqULFy7wxhtvMHny5BuOKT09vcrXvjy2unDWaz1+/Dh/+9vfWLRoUY0+VJ31Oi+XlpbGihUreOyxx6773I54vTVxrf8mZWVlnD9/vsrvsee1njx5kg8//JDHH3+8TtdxeWy15azXWdv3KjjvtV6upu9XR7zWmnDU9+qLL76In58fDRs2JCkpiZ9//rlO13F5bNZi8+TlL3/5CwcOHOCbb7656jGdTlfp34qiXHUfQE5ODqNHj6Zdu3a1+msDoH379tSrV4969eoxcuTIal+7qvtrwxmv1WQyMWHCBF577TVatWpVo9dxxuu80n/+8x/q169/zcVzl3PU662J2v6c2+taU1NTGTFiBHfffXelDyR7vV+d8Trr8l511mu9Uk3fr456rTXhiO/V559/nr1797Jq1SoMBgMPPfSQJS57frZWxaZj10899RS//PILGzdupEmTJpb7w8LCADUTCw8Pt9yfkZFxVdaWm5vLiBEjqFevHosXL652yKoqy5cvtwy7+fj4WF7/yiwwIyMDuDpjrSlnvdbc3Fx27drF3r17+ctf/gKA2WxGURQ8PDxYtWoVgwcPdvrrvJyiKHz55Zc8+OCDeHl5Vftajnq9NXGt/yYeHh40bNjwqvPtda2pqakMGjSI3r1789lnn133Wq39fnXW66zte9WZr/VyNX2/Ouq11oSjvleDg4MJDg6mVatWtG3blsjISLZt20bv3r3t9tl6TXVaKXMdZrNZefLJJ5WIiAjl2LFjVT4eFhamvPvuu5b7iouLr1pUlJ2drfTq1UuJjY1V8vPzq33N2i7urF+/vlJcXGy575133qnToiJnv1aTyaTExcVVuj3xxBNK69atlbi4OMsqdme/zsv9/vvvCqDExcVd8/kc/XovV90iwLZt21a67/HHH79qEaA9r/XMmTNKy5YtlfHjxytlZWU1uj5rvV+d/Tpr+l51hWu93PXer45+rZdzpvfqlZKSkhRA+f333695jjU/W6/HJsnLE088oQQGBirr16+vtNWtoKDAcs4777yjBAYGKj/99JMSFxen3HfffZW2c+Xk5Cg9e/ZUOnbsqJw4caLS81z+Q3P69Gll7969ymuvvabUq1dP2bt3r7J3714lNzf3mvFlZWUpoaGhyn333afExcUpP/30kxIQEHDVlsSK5+revbsyYcIEZe/evUp8fLxLXuvlqtrB4ErX+cADDyg9e/a85nM5w/UqiqLEx8cre/fuVcaOHasMHDjQ8n0VKrZfPvPMM8qhQ4eUL774osrtl/a61pSUFKVFixbK4MGDlTNnzlQ6pzrWer+6ynVe7lq7jVzpWq/3fnX0a1UU53uvbt++Xfnwww+VvXv3KomJicq6deuUfv36Kc2bN6+0k+hK1vxsvR6bJC9Albf58+dbzjGbzcqrr76qhIWFKUajURkwYEClzLoi267qlpCQYDnv4YcfrvKc6rJDRVGUAwcOKP3791eMRqMSFhamzJgx46rMsKrnjY6OdslrvVxVvxBd5TqzsrIUHx8f5bPPPqv2uZzheqOjo6v8vsutX79e6dq1q+Ll5aU0bdpU+eSTTzS71vnz51/znOuxxvvVVa7zctdKXlzlWmvyfnWGa3W29+qBAweUQYMGKUFBQYrRaFSaNm2qPP7448qZM2eue63W+my9Hl35EwkhhBBCOAXpbSSEEEIIpyLJixBCCCGciiQvQgghhHAqkrwIIYQQwqlI8iKEEEIIpyLJixBCCCGciiQvQgghhHAqkrwIIYQQwqlI8iKEEEIIpyLJixBCCCGciiQvQgghhHAq/w+Xp4s3oueeywAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(test)\n",
"plt.plot(mf.models['xgboost']['forecast'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"\n",
"# What is the forecast accuracy?"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0.23537933276005385"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mf.models['xgboost']['mape']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"\n",
"# Can MAPE handle zeros?\n",
"\n",
"- MAPE cannot handle inaccurate zero, zero, or very small value on true value will cause huge error size\n",
"- MAPE is not suitable for evaluating intermittent data"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"200.0"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from sktime.performance_metrics.forecasting import mean_absolute_percentage_error\n",
"\n",
"mean_absolute_percentage_error([1,0,1,1,0.001], [1,0,1,0,1])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "base",
"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.11.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
|