{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "provenance": [],
      "gpuType": "T4"
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    },
    "language_info": {
      "name": "python"
    },
    "accelerator": "GPU"
  },
  "cells": [
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "XLRzLyQI3VF5",
        "outputId": "da5a8e77-1cde-4054-eccf-7ffd680036d6"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "\u001b[?25l   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/1.8 MB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r\u001b[2K   \u001b[91m━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.0/1.8 MB\u001b[0m \u001b[31m27.9 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m\r\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.8/1.8 MB\u001b[0m \u001b[31m25.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
            "\u001b[?25h"
          ]
        }
      ],
      "source": [
        "!pip -q install kaggle pyarrow fastparquet joblib"
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "from google.colab import files\n",
        "files.upload()\n",
        "\n",
        "import os\n",
        "import glob\n",
        "import shutil\n",
        "\n",
        "os.makedirs(\"/root/.kaggle\", exist_ok=True)\n",
        "src = glob.glob(\"*.json\")[0]\n",
        "shutil.move(src, \"/root/.kaggle/kaggle.json\")\n",
        "os.chmod(\"/root/.kaggle/kaggle.json\", 0o600)\n",
        "\n",
        "BASE = \"/content/drift_energy\"\n",
        "for p in [\"data/raw\", \"data/curated\", \"models\", \"reports\"]:\n",
        "    os.makedirs(os.path.join(BASE, p), exist_ok=True)\n",
        "\n",
        "print(\"Kaggle key installed\")\n",
        "print(\"BASE =\", BASE)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 115
        },
        "id": "HSG2jfTj3YIw",
        "outputId": "2c27dc3d-5222-4297-a35e-a277c4909d70"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<IPython.core.display.HTML object>"
            ],
            "text/html": [
              "\n",
              "     <input type=\"file\" id=\"files-bc775b4b-35f2-40ca-bd36-372c5f4922dc\" name=\"files[]\" multiple disabled\n",
              "        style=\"border:none\" />\n",
              "     <output id=\"result-bc775b4b-35f2-40ca-bd36-372c5f4922dc\">\n",
              "      Upload widget is only available when the cell has been executed in the\n",
              "      current browser session. Please rerun this cell to enable.\n",
              "      </output>\n",
              "      <script>// Copyright 2017 Google LLC\n",
              "//\n",
              "// Licensed under the Apache License, Version 2.0 (the \"License\");\n",
              "// you may not use this file except in compliance with the License.\n",
              "// You may obtain a copy of the License at\n",
              "//\n",
              "//      http://www.apache.org/licenses/LICENSE-2.0\n",
              "//\n",
              "// Unless required by applicable law or agreed to in writing, software\n",
              "// distributed under the License is distributed on an \"AS IS\" BASIS,\n",
              "// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n",
              "// See the License for the specific language governing permissions and\n",
              "// limitations under the License.\n",
              "\n",
              "/**\n",
              " * @fileoverview Helpers for google.colab Python module.\n",
              " */\n",
              "(function(scope) {\n",
              "function span(text, styleAttributes = {}) {\n",
              "  const element = document.createElement('span');\n",
              "  element.textContent = text;\n",
              "  for (const key of Object.keys(styleAttributes)) {\n",
              "    element.style[key] = styleAttributes[key];\n",
              "  }\n",
              "  return element;\n",
              "}\n",
              "\n",
              "// Max number of bytes which will be uploaded at a time.\n",
              "const MAX_PAYLOAD_SIZE = 100 * 1024;\n",
              "\n",
              "function _uploadFiles(inputId, outputId) {\n",
              "  const steps = uploadFilesStep(inputId, outputId);\n",
              "  const outputElement = document.getElementById(outputId);\n",
              "  // Cache steps on the outputElement to make it available for the next call\n",
              "  // to uploadFilesContinue from Python.\n",
              "  outputElement.steps = steps;\n",
              "\n",
              "  return _uploadFilesContinue(outputId);\n",
              "}\n",
              "\n",
              "// This is roughly an async generator (not supported in the browser yet),\n",
              "// where there are multiple asynchronous steps and the Python side is going\n",
              "// to poll for completion of each step.\n",
              "// This uses a Promise to block the python side on completion of each step,\n",
              "// then passes the result of the previous step as the input to the next step.\n",
              "function _uploadFilesContinue(outputId) {\n",
              "  const outputElement = document.getElementById(outputId);\n",
              "  const steps = outputElement.steps;\n",
              "\n",
              "  const next = steps.next(outputElement.lastPromiseValue);\n",
              "  return Promise.resolve(next.value.promise).then((value) => {\n",
              "    // Cache the last promise value to make it available to the next\n",
              "    // step of the generator.\n",
              "    outputElement.lastPromiseValue = value;\n",
              "    return next.value.response;\n",
              "  });\n",
              "}\n",
              "\n",
              "/**\n",
              " * Generator function which is called between each async step of the upload\n",
              " * process.\n",
              " * @param {string} inputId Element ID of the input file picker element.\n",
              " * @param {string} outputId Element ID of the output display.\n",
              " * @return {!Iterable<!Object>} Iterable of next steps.\n",
              " */\n",
              "function* uploadFilesStep(inputId, outputId) {\n",
              "  const inputElement = document.getElementById(inputId);\n",
              "  inputElement.disabled = false;\n",
              "\n",
              "  const outputElement = document.getElementById(outputId);\n",
              "  outputElement.innerHTML = '';\n",
              "\n",
              "  const pickedPromise = new Promise((resolve) => {\n",
              "    inputElement.addEventListener('change', (e) => {\n",
              "      resolve(e.target.files);\n",
              "    });\n",
              "  });\n",
              "\n",
              "  const cancel = document.createElement('button');\n",
              "  inputElement.parentElement.appendChild(cancel);\n",
              "  cancel.textContent = 'Cancel upload';\n",
              "  const cancelPromise = new Promise((resolve) => {\n",
              "    cancel.onclick = () => {\n",
              "      resolve(null);\n",
              "    };\n",
              "  });\n",
              "\n",
              "  // Wait for the user to pick the files.\n",
              "  const files = yield {\n",
              "    promise: Promise.race([pickedPromise, cancelPromise]),\n",
              "    response: {\n",
              "      action: 'starting',\n",
              "    }\n",
              "  };\n",
              "\n",
              "  cancel.remove();\n",
              "\n",
              "  // Disable the input element since further picks are not allowed.\n",
              "  inputElement.disabled = true;\n",
              "\n",
              "  if (!files) {\n",
              "    return {\n",
              "      response: {\n",
              "        action: 'complete',\n",
              "      }\n",
              "    };\n",
              "  }\n",
              "\n",
              "  for (const file of files) {\n",
              "    const li = document.createElement('li');\n",
              "    li.append(span(file.name, {fontWeight: 'bold'}));\n",
              "    li.append(span(\n",
              "        `(${file.type || 'n/a'}) - ${file.size} bytes, ` +\n",
              "        `last modified: ${\n",
              "            file.lastModifiedDate ? file.lastModifiedDate.toLocaleDateString() :\n",
              "                                    'n/a'} - `));\n",
              "    const percent = span('0% done');\n",
              "    li.appendChild(percent);\n",
              "\n",
              "    outputElement.appendChild(li);\n",
              "\n",
              "    const fileDataPromise = new Promise((resolve) => {\n",
              "      const reader = new FileReader();\n",
              "      reader.onload = (e) => {\n",
              "        resolve(e.target.result);\n",
              "      };\n",
              "      reader.readAsArrayBuffer(file);\n",
              "    });\n",
              "    // Wait for the data to be ready.\n",
              "    let fileData = yield {\n",
              "      promise: fileDataPromise,\n",
              "      response: {\n",
              "        action: 'continue',\n",
              "      }\n",
              "    };\n",
              "\n",
              "    // Use a chunked sending to avoid message size limits. See b/62115660.\n",
              "    let position = 0;\n",
              "    do {\n",
              "      const length = Math.min(fileData.byteLength - position, MAX_PAYLOAD_SIZE);\n",
              "      const chunk = new Uint8Array(fileData, position, length);\n",
              "      position += length;\n",
              "\n",
              "      const base64 = btoa(String.fromCharCode.apply(null, chunk));\n",
              "      yield {\n",
              "        response: {\n",
              "          action: 'append',\n",
              "          file: file.name,\n",
              "          data: base64,\n",
              "        },\n",
              "      };\n",
              "\n",
              "      let percentDone = fileData.byteLength === 0 ?\n",
              "          100 :\n",
              "          Math.round((position / fileData.byteLength) * 100);\n",
              "      percent.textContent = `${percentDone}% done`;\n",
              "\n",
              "    } while (position < fileData.byteLength);\n",
              "  }\n",
              "\n",
              "  // All done.\n",
              "  yield {\n",
              "    response: {\n",
              "      action: 'complete',\n",
              "    }\n",
              "  };\n",
              "}\n",
              "\n",
              "scope.google = scope.google || {};\n",
              "scope.google.colab = scope.google.colab || {};\n",
              "scope.google.colab._files = {\n",
              "  _uploadFiles,\n",
              "  _uploadFilesContinue,\n",
              "};\n",
              "})(self);\n",
              "</script> "
            ]
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Saving kaggle.json to kaggle.json\n",
            "Kaggle key installed\n",
            "BASE = /content/drift_energy\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "!kaggle datasets download -d robikscube/hourly-energy-consumption -p /content --force\n",
        "!unzip -o /content/hourly-energy-consumption.zip -d /content/energy_raw\n",
        "!ls -lah /content/energy_raw"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "kIT3VyCC3ZdF",
        "outputId": "82c6e32e-a740-49e4-f335-5f9e46b45411"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Dataset URL: https://www.kaggle.com/datasets/robikscube/hourly-energy-consumption\n",
            "License(s): CC0-1.0\n",
            "Downloading hourly-energy-consumption.zip to /content\n",
            "100% 11.4M/11.4M [00:00<00:00, 101MB/s] \n",
            "\n",
            "Archive:  /content/hourly-energy-consumption.zip\n",
            "  inflating: /content/energy_raw/AEP_hourly.csv  \n",
            "  inflating: /content/energy_raw/COMED_hourly.csv  \n",
            "  inflating: /content/energy_raw/DAYTON_hourly.csv  \n",
            "  inflating: /content/energy_raw/DEOK_hourly.csv  \n",
            "  inflating: /content/energy_raw/DOM_hourly.csv  \n",
            "  inflating: /content/energy_raw/DUQ_hourly.csv  \n",
            "  inflating: /content/energy_raw/EKPC_hourly.csv  \n",
            "  inflating: /content/energy_raw/FE_hourly.csv  \n",
            "  inflating: /content/energy_raw/NI_hourly.csv  \n",
            "  inflating: /content/energy_raw/PJME_hourly.csv  \n",
            "  inflating: /content/energy_raw/PJMW_hourly.csv  \n",
            "  inflating: /content/energy_raw/PJM_Load_hourly.csv  \n",
            "  inflating: /content/energy_raw/est_hourly.paruqet  \n",
            "  inflating: /content/energy_raw/pjm_hourly_est.csv  \n",
            "total 45M\n",
            "drwxr-xr-x 2 root root 4.0K Apr  8 11:32 .\n",
            "drwxr-xr-x 1 root root 4.0K Apr  8 11:32 ..\n",
            "-rw-r--r-- 1 root root 3.3M Oct  4  2019 AEP_hourly.csv\n",
            "-rw-r--r-- 1 root root 1.8M Oct  4  2019 COMED_hourly.csv\n",
            "-rw-r--r-- 1 root root 3.2M Oct  4  2019 DAYTON_hourly.csv\n",
            "-rw-r--r-- 1 root root 1.5M Oct  4  2019 DEOK_hourly.csv\n",
            "-rw-r--r-- 1 root root 3.1M Oct  4  2019 DOM_hourly.csv\n",
            "-rw-r--r-- 1 root root 3.1M Oct  4  2019 DUQ_hourly.csv\n",
            "-rw-r--r-- 1 root root 1.2M Oct  4  2019 EKPC_hourly.csv\n",
            "-rw-r--r-- 1 root root 3.6M Oct  4  2019 est_hourly.paruqet\n",
            "-rw-r--r-- 1 root root 1.7M Oct  4  2019 FE_hourly.csv\n",
            "-rw-r--r-- 1 root root 1.6M Oct  4  2019 NI_hourly.csv\n",
            "-rw-r--r-- 1 root root 3.9M Oct  4  2019 PJME_hourly.csv\n",
            "-rw-r--r-- 1 root root  13M Oct  4  2019 pjm_hourly_est.csv\n",
            "-rw-r--r-- 1 root root 900K Oct  4  2019 PJM_Load_hourly.csv\n",
            "-rw-r--r-- 1 root root 3.7M Oct  4  2019 PJMW_hourly.csv\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "import os\n",
        "import glob\n",
        "import joblib\n",
        "import numpy as np\n",
        "import pandas as pd\n",
        "import matplotlib.pyplot as plt\n",
        "\n",
        "from IPython.display import display\n",
        "\n",
        "from sklearn.pipeline import Pipeline\n",
        "from sklearn.impute import SimpleImputer\n",
        "from sklearn.preprocessing import StandardScaler\n",
        "from sklearn.model_selection import TimeSeriesSplit\n",
        "from sklearn.metrics import r2_score, mean_squared_error, mean_absolute_error\n",
        "\n",
        "from sklearn.linear_model import LinearRegression, Ridge, ElasticNet\n",
        "from sklearn.tree import DecisionTreeRegressor\n",
        "from sklearn.ensemble import HistGradientBoostingRegressor\n",
        "\n",
        "BASE = \"/content/drift_energy\"\n",
        "\n",
        "raw_candidates = sorted(glob.glob(\"/content/energy_raw/*PJME*.csv\"))\n",
        "if not raw_candidates:\n",
        "    raise FileNotFoundError(\"Файл PJME_hourly.csv не найден в /content/energy_raw\")\n",
        "\n",
        "raw_path = raw_candidates[0]\n",
        "df = pd.read_csv(raw_path)\n",
        "\n",
        "df = df.rename(columns={\n",
        "    \"Datetime\": \"timestamp\",\n",
        "    \"PJME_MW\": \"target\"\n",
        "})\n",
        "\n",
        "if \"timestamp\" not in df.columns or \"target\" not in df.columns:\n",
        "    raise ValueError(f\"Не найдены столбцы timestamp/target. Текущие колонки: {df.columns.tolist()}\")\n",
        "\n",
        "df[\"timestamp\"] = pd.to_datetime(df[\"timestamp\"], errors=\"coerce\")\n",
        "df = df.dropna(subset=[\"timestamp\", \"target\"]).copy()\n",
        "df = df.sort_values(\"timestamp\").reset_index(drop=True)\n",
        "\n",
        "raw_save_path = os.path.join(BASE, \"data/raw/PJME_hourly.csv\")\n",
        "df.to_csv(raw_save_path, index=False)\n",
        "\n",
        "df[\"date\"] = df[\"timestamp\"].dt.normalize()\n",
        "df[\"hour\"] = df[\"timestamp\"].dt.hour\n",
        "df[\"dayofweek\"] = df[\"timestamp\"].dt.dayofweek\n",
        "df[\"month\"] = df[\"timestamp\"].dt.month\n",
        "df[\"quarter\"] = df[\"timestamp\"].dt.quarter\n",
        "df[\"dayofyear\"] = df[\"timestamp\"].dt.dayofyear\n",
        "df[\"is_weekend\"] = df[\"dayofweek\"].isin([5, 6]).astype(int)\n",
        "\n",
        "df[\"hour_sin\"] = np.sin(2 * np.pi * df[\"hour\"] / 24.0)\n",
        "df[\"hour_cos\"] = np.cos(2 * np.pi * df[\"hour\"] / 24.0)\n",
        "df[\"dow_sin\"] = np.sin(2 * np.pi * df[\"dayofweek\"] / 7.0)\n",
        "df[\"dow_cos\"] = np.cos(2 * np.pi * df[\"dayofweek\"] / 7.0)\n",
        "\n",
        "df[\"lag_1\"] = df[\"target\"].shift(1)\n",
        "df[\"lag_24\"] = df[\"target\"].shift(24)\n",
        "df[\"lag_48\"] = df[\"target\"].shift(48)\n",
        "df[\"lag_168\"] = df[\"target\"].shift(168)\n",
        "\n",
        "df[\"roll_mean_24\"] = df[\"target\"].shift(1).rolling(24).mean()\n",
        "df[\"roll_std_24\"] = df[\"target\"].shift(1).rolling(24).std()\n",
        "df[\"roll_mean_168\"] = df[\"target\"].shift(1).rolling(168).mean()\n",
        "df[\"roll_std_168\"] = df[\"target\"].shift(1).rolling(168).std()\n",
        "\n",
        "df = df.dropna().reset_index(drop=True)\n",
        "\n",
        "curated_path = os.path.join(BASE, \"data/curated/pjme_curated.parquet\")\n",
        "df.to_parquet(curated_path, index=False)\n",
        "\n",
        "def find_first_full_week(data: pd.DataFrame) -> pd.DatetimeIndex:\n",
        "    counts = data.groupby(\"date\").size().sort_index()\n",
        "    all_dates = counts.index\n",
        "\n",
        "    for start in all_dates:\n",
        "        window = pd.date_range(start, periods=7, freq=\"D\")\n",
        "        if len(window.intersection(all_dates)) == 7 and counts.reindex(window).min() >= 20:\n",
        "            return window\n",
        "\n",
        "    raise ValueError(\"Не удалось найти первую полную неделю\")\n",
        "\n",
        "week_dates = find_first_full_week(df)\n",
        "start_date = week_dates[0]\n",
        "\n",
        "df[\"relative_day\"] = (df[\"date\"] - start_date).dt.days + 1\n",
        "df = df[df[\"relative_day\"] >= 1].copy().reset_index(drop=True)\n",
        "\n",
        "week_df = df[df[\"relative_day\"].between(1, 7)].copy()\n",
        "\n",
        "future_days = sorted(df.loc[df[\"relative_day\"] >= 8, \"relative_day\"].unique())\n",
        "day_sizes = df.groupby(\"relative_day\").size()\n",
        "future_days = [d for d in future_days if day_sizes.get(d, 0) >= 20]\n",
        "\n",
        "print(\"Первая полная неделя:\", week_dates[0].date(), \"—\", week_dates[-1].date())\n",
        "print(\"Строк в первой неделе:\", len(week_df))\n",
        "print(\"Количество последующих дней:\", len(future_days))\n",
        "\n",
        "def regression_metrics(y_true, y_pred):\n",
        "    y_true = np.asarray(y_true)\n",
        "    y_pred = np.asarray(y_pred)\n",
        "\n",
        "    denom = np.maximum(np.abs(y_true), 1e-8)\n",
        "\n",
        "    if len(y_true) >= 2:\n",
        "        r2 = float(r2_score(y_true, y_pred))\n",
        "    else:\n",
        "        r2 = np.nan\n",
        "\n",
        "    return {\n",
        "        \"r2\": r2,\n",
        "        \"rmse\": float(np.sqrt(mean_squared_error(y_true, y_pred))),\n",
        "        \"mae\": float(mean_absolute_error(y_true, y_pred)),\n",
        "        \"mape\": float(np.mean(np.abs((y_true - y_pred) / denom)) * 100.0)\n",
        "    }\n",
        "\n",
        "def build_pipeline(model):\n",
        "    return Pipeline([\n",
        "        (\"imputer\", SimpleImputer(strategy=\"median\")),\n",
        "        (\"scaler\", StandardScaler()),\n",
        "        (\"model\", model)\n",
        "    ])\n",
        "\n",
        "def candidate_models():\n",
        "    return {\n",
        "        \"linreg\": LinearRegression(),\n",
        "        \"ridge\": Ridge(alpha=3.0),\n",
        "        \"elastic\": ElasticNet(alpha=0.01, l1_ratio=0.5, max_iter=100000, random_state=42),\n",
        "        \"tree\": DecisionTreeRegressor(max_depth=10, min_samples_leaf=8, random_state=42),\n",
        "        \"hist_gb\": HistGradientBoostingRegressor(\n",
        "            max_iter=220,\n",
        "            learning_rate=0.05,\n",
        "            max_depth=8,\n",
        "            random_state=42\n",
        "        )\n",
        "    }\n",
        "\n",
        "drop_cols = [\"target\", \"timestamp\", \"date\"]\n",
        "feature_cols = [c for c in df.columns if c not in drop_cols]\n",
        "\n",
        "def compare_models_ts_cv(train_df: pd.DataFrame, feature_cols, target_col=\"target\", n_splits=4):\n",
        "    X = train_df[feature_cols].copy()\n",
        "    y = train_df[target_col].to_numpy()\n",
        "\n",
        "    tscv = TimeSeriesSplit(n_splits=n_splits)\n",
        "\n",
        "    summary_rows = []\n",
        "    fold_rows = []\n",
        "\n",
        "    for model_name, model in candidate_models().items():\n",
        "        per_fold = []\n",
        "\n",
        "        for fold_no, (tr_idx, val_idx) in enumerate(tscv.split(X), start=1):\n",
        "            X_tr, X_val = X.iloc[tr_idx], X.iloc[val_idx]\n",
        "            y_tr, y_val = y[tr_idx], y[val_idx]\n",
        "\n",
        "            pipe = build_pipeline(model)\n",
        "            pipe.fit(X_tr, y_tr)\n",
        "            pred = pipe.predict(X_val)\n",
        "\n",
        "            m = regression_metrics(y_val, pred)\n",
        "            per_fold.append(m)\n",
        "            fold_rows.append({\n",
        "                \"model\": model_name,\n",
        "                \"fold\": fold_no,\n",
        "                **m\n",
        "            })\n",
        "\n",
        "        per_fold_df = pd.DataFrame(per_fold)\n",
        "\n",
        "        summary_rows.append({\n",
        "            \"model\": model_name,\n",
        "            \"r2\": per_fold_df[\"r2\"].mean(skipna=True),\n",
        "            \"rmse\": per_fold_df[\"rmse\"].mean(),\n",
        "            \"mae\": per_fold_df[\"mae\"].mean(),\n",
        "            \"mape\": per_fold_df[\"mape\"].mean(),\n",
        "            \"r2_std\": per_fold_df[\"r2\"].std(ddof=0),\n",
        "            \"rmse_std\": per_fold_df[\"rmse\"].std(ddof=0),\n",
        "            \"mae_std\": per_fold_df[\"mae\"].std(ddof=0),\n",
        "            \"mape_std\": per_fold_df[\"mape\"].std(ddof=0)\n",
        "        })\n",
        "\n",
        "    summary_df = (\n",
        "        pd.DataFrame(summary_rows)\n",
        "        .sort_values(by=[\"rmse\", \"mae\", \"r2\"], ascending=[True, True, False])\n",
        "        .reset_index(drop=True)\n",
        "    )\n",
        "\n",
        "    fold_df = pd.DataFrame(fold_rows)\n",
        "\n",
        "    best_name = summary_df.loc[0, \"model\"]\n",
        "    best_model = candidate_models()[best_name]\n",
        "\n",
        "    final_pipe = build_pipeline(best_model)\n",
        "    final_pipe.fit(X, y)\n",
        "\n",
        "    return summary_df, fold_df, best_name, final_pipe\n",
        "\n",
        "initial_summary, initial_folds, current_model_name, current_pipe = compare_models_ts_cv(\n",
        "    week_df,\n",
        "    feature_cols=feature_cols,\n",
        "    target_col=\"target\",\n",
        "    n_splits=4\n",
        ")\n",
        "\n",
        "display(initial_summary)\n",
        "\n",
        "initial_summary.to_csv(os.path.join(BASE, \"reports/week1_model_metrics.csv\"), index=False)\n",
        "initial_folds.to_csv(os.path.join(BASE, \"reports/week1_cv_folds.csv\"), index=False)\n",
        "joblib.dump(current_pipe, os.path.join(BASE, f\"models/best_week1_{current_model_name}.joblib\"))\n",
        "\n",
        "baseline = initial_summary.iloc[0].to_dict()\n",
        "\n",
        "print(\"Лучшая модель первой недели:\", current_model_name)\n",
        "\n",
        "monitoring_rows = []\n",
        "retrain_rows = []\n",
        "selection_rows = []\n",
        "\n",
        "selection_rows.append({\n",
        "    \"train_until_day\": 7,\n",
        "    \"best_model\": current_model_name,\n",
        "    \"cv_r2\": baseline[\"r2\"],\n",
        "    \"cv_rmse\": baseline[\"rmse\"],\n",
        "    \"cv_mae\": baseline[\"mae\"],\n",
        "    \"cv_mape\": baseline[\"mape\"]\n",
        "})\n",
        "\n",
        "recent_flags = []\n",
        "last_retrain_day = 7\n",
        "cooldown_days = 90\n",
        "min_bad_days = 5\n",
        "window_days = 14\n",
        "\n",
        "for i, day in enumerate(future_days, start=1):\n",
        "    day_df = df[df[\"relative_day\"] == day].copy()\n",
        "\n",
        "    if len(day_df) < 2:\n",
        "        continue\n",
        "\n",
        "    X_day = day_df[feature_cols]\n",
        "    y_day = day_df[\"target\"].to_numpy()\n",
        "\n",
        "    pred = current_pipe.predict(X_day)\n",
        "    day_metrics = regression_metrics(y_day, pred)\n",
        "\n",
        "    # более мягкий детектор дрейфа\n",
        "    drift_flag = (\n",
        "        day_metrics[\"rmse\"] > baseline[\"rmse\"] * 1.50\n",
        "        or day_metrics[\"mae\"] > baseline[\"mae\"] * 1.40\n",
        "        or (\n",
        "            not pd.isna(day_metrics[\"r2\"])\n",
        "            and not pd.isna(baseline[\"r2\"])\n",
        "            and day_metrics[\"r2\"] < baseline[\"r2\"] - 0.12\n",
        "        )\n",
        "    )\n",
        "\n",
        "    recent_flags.append(bool(drift_flag))\n",
        "    recent_flags = recent_flags[-window_days:]\n",
        "\n",
        "    bad_days_in_window = int(sum(recent_flags))\n",
        "\n",
        "    monitoring_rows.append({\n",
        "        \"day\": int(day),\n",
        "        \"calendar_date\": str(day_df[\"date\"].iloc[0].date()),\n",
        "        \"active_model\": current_model_name,\n",
        "        \"drift\": bool(drift_flag),\n",
        "        \"bad_days_last_window\": bad_days_in_window,\n",
        "        **day_metrics\n",
        "    })\n",
        "\n",
        "    should_retrain = (\n",
        "        bad_days_in_window >= min_bad_days and\n",
        "        (int(day) - last_retrain_day) >= cooldown_days and\n",
        "        int(day) >= 180\n",
        "    )\n",
        "\n",
        "    if should_retrain:\n",
        "        cumulative_train = df[df[\"relative_day\"].between(1, int(day))].copy()\n",
        "        n_splits = 4 if len(cumulative_train) >= 500 else 3\n",
        "\n",
        "        new_summary, new_folds, new_model_name, new_pipe = compare_models_ts_cv(\n",
        "            cumulative_train,\n",
        "            feature_cols=feature_cols,\n",
        "            target_col=\"target\",\n",
        "            n_splits=n_splits\n",
        "        )\n",
        "\n",
        "        new_summary.to_csv(\n",
        "            os.path.join(BASE, f\"reports/model_compare_until_day_{int(day)}.csv\"),\n",
        "            index=False\n",
        "        )\n",
        "        new_folds.to_csv(\n",
        "            os.path.join(BASE, f\"reports/model_compare_until_day_{int(day)}_folds.csv\"),\n",
        "            index=False\n",
        "        )\n",
        "\n",
        "        current_model_name = new_model_name\n",
        "        current_pipe = new_pipe\n",
        "        baseline = new_summary.iloc[0].to_dict()\n",
        "        last_retrain_day = int(day)\n",
        "        recent_flags = []\n",
        "\n",
        "        joblib.dump(\n",
        "            current_pipe,\n",
        "            os.path.join(BASE, f\"models/best_until_day_{int(day)}_{current_model_name}.joblib\")\n",
        "        )\n",
        "\n",
        "        retrain_rows.append({\n",
        "            \"retrain_day\": int(day),\n",
        "            \"calendar_date\": str(day_df[\"date\"].iloc[0].date()),\n",
        "            \"new_best_model\": current_model_name,\n",
        "            \"cv_r2\": baseline[\"r2\"],\n",
        "            \"cv_rmse\": baseline[\"rmse\"],\n",
        "            \"cv_mae\": baseline[\"mae\"],\n",
        "            \"cv_mape\": baseline[\"mape\"]\n",
        "        })\n",
        "\n",
        "        selection_rows.append({\n",
        "            \"train_until_day\": int(day),\n",
        "            \"best_model\": current_model_name,\n",
        "            \"cv_r2\": baseline[\"r2\"],\n",
        "            \"cv_rmse\": baseline[\"rmse\"],\n",
        "            \"cv_mae\": baseline[\"mae\"],\n",
        "            \"cv_mape\": baseline[\"mape\"]\n",
        "        })\n",
        "\n",
        "        print(f\"[retrain] day={int(day)}, new_best_model={current_model_name}\")\n",
        "\n",
        "    if i % 100 == 0:\n",
        "        print(\n",
        "            f\"[progress] processed={i}/{len(future_days)}, \"\n",
        "            f\"day={int(day)}, model={current_model_name}, drift={drift_flag}\"\n",
        "        )\n",
        "\n",
        "monitoring_df = pd.DataFrame(monitoring_rows)\n",
        "retrain_df = pd.DataFrame(retrain_rows)\n",
        "selection_df = pd.DataFrame(selection_rows)\n",
        "\n",
        "monitoring_df.to_csv(os.path.join(BASE, \"reports/daily_monitoring.csv\"), index=False)\n",
        "retrain_df.to_csv(os.path.join(BASE, \"reports/retrain_events.csv\"), index=False)\n",
        "selection_df.to_csv(os.path.join(BASE, \"reports/model_selection_history.csv\"), index=False)\n",
        "\n",
        "if len(monitoring_df) > 0:\n",
        "    stability_df = (\n",
        "        monitoring_df.groupby(\"active_model\")\n",
        "        .agg(\n",
        "            eval_days=(\"day\", \"count\"),\n",
        "            drift_days=(\"drift\", \"sum\"),\n",
        "            drift_rate=(\"drift\", \"mean\"),\n",
        "            mean_r2=(\"r2\", \"mean\"),\n",
        "            mean_rmse=(\"rmse\", \"mean\"),\n",
        "            mean_mae=(\"mae\", \"mean\"),\n",
        "            mean_mape=(\"mape\", \"mean\")\n",
        "        )\n",
        "        .reset_index()\n",
        "        .sort_values(by=[\"drift_rate\", \"mean_rmse\", \"mean_mae\"], ascending=[True, True, True])\n",
        "    )\n",
        "else:\n",
        "    stability_df = pd.DataFrame()\n",
        "\n",
        "stability_df.to_csv(os.path.join(BASE, \"reports/stability_summary.csv\"), index=False)\n",
        "\n",
        "print(\"\\n=== Метрики моделей на первой неделе ===\")\n",
        "display(initial_summary)\n",
        "\n",
        "print(\"\\n=== Переобучения ===\")\n",
        "display(retrain_df.head(20))\n",
        "\n",
        "print(\"\\n=== Сводка стабильности моделей ===\")\n",
        "display(stability_df)\n",
        "\n",
        "print(\"\\nФайлы сохранены в:\", BASE)\n",
        "\n",
        "if len(monitoring_df) > 0:\n",
        "    plt.figure(figsize=(14, 5))\n",
        "    plt.plot(monitoring_df[\"day\"], monitoring_df[\"rmse\"], marker=\"o\", label=\"Daily RMSE\")\n",
        "    plt.axhline(initial_summary.loc[0, \"rmse\"], linestyle=\"--\", label=\"Baseline RMSE (week 1)\")\n",
        "\n",
        "    if len(retrain_df) > 0:\n",
        "        for d in retrain_df[\"retrain_day\"]:\n",
        "            plt.axvline(d, linestyle=\"--\", alpha=0.5)\n",
        "\n",
        "    plt.title(\"Мониторинг RMSE по дням\")\n",
        "    plt.xlabel(\"Относительный день\")\n",
        "    plt.ylabel(\"RMSE\")\n",
        "    plt.legend()\n",
        "    plt.grid(True)\n",
        "    plt.show()\n",
        "\n",
        "    plt.figure(figsize=(14, 5))\n",
        "    plt.plot(monitoring_df[\"day\"], monitoring_df[\"mae\"], marker=\"o\", label=\"Daily MAE\")\n",
        "    plt.axhline(initial_summary.loc[0, \"mae\"], linestyle=\"--\", label=\"Baseline MAE (week 1)\")\n",
        "\n",
        "    if len(retrain_df) > 0:\n",
        "        for d in retrain_df[\"retrain_day\"]:\n",
        "            plt.axvline(d, linestyle=\"--\", alpha=0.5)\n",
        "\n",
        "    plt.title(\"Мониторинг MAE по дням\")\n",
        "    plt.xlabel(\"Относительный день\")\n",
        "    plt.ylabel(\"MAE\")\n",
        "    plt.legend()\n",
        "    plt.grid(True)\n",
        "    plt.show()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        },
        "id": "OW5iGWzk31Iw",
        "outputId": "4d72c25d-ec13-4047-9826-915458a92855"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Первая полная неделя: 2002-01-08 — 2002-01-14\n",
            "Строк в первой неделе: 167\n",
            "Количество последующих дней: 6044\n"
          ]
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "     model        r2         rmse          mae       mape    r2_std  \\\n",
              "0     tree  0.621722  1944.088309  1605.966610   5.471673  0.179847   \n",
              "1    ridge  0.256765  2231.388563  1974.618283   6.722476  0.911679   \n",
              "2  hist_gb  0.485126  2321.850999  1854.344966   6.281876  0.308247   \n",
              "3  elastic -0.285606  3066.725682  2658.233301   8.929112  1.289306   \n",
              "4   linreg -2.738615  5545.134644  4649.148548  15.063955  2.540321   \n",
              "\n",
              "      rmse_std      mae_std  mape_std  \n",
              "0   302.809425   229.338287  0.675704  \n",
              "1  1015.501938  1057.108602  4.116662  \n",
              "2   764.648542   551.744319  1.746358  \n",
              "3  1223.882435  1232.587845  4.785315  \n",
              "4  2783.009280  2335.927192  7.343002  "
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-4da0c2f3-f98a-4b3e-b984-219bcfc2c22d\" class=\"colab-df-container\">\n",
              "    <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>model</th>\n",
              "      <th>r2</th>\n",
              "      <th>rmse</th>\n",
              "      <th>mae</th>\n",
              "      <th>mape</th>\n",
              "      <th>r2_std</th>\n",
              "      <th>rmse_std</th>\n",
              "      <th>mae_std</th>\n",
              "      <th>mape_std</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>tree</td>\n",
              "      <td>0.621722</td>\n",
              "      <td>1944.088309</td>\n",
              "      <td>1605.966610</td>\n",
              "      <td>5.471673</td>\n",
              "      <td>0.179847</td>\n",
              "      <td>302.809425</td>\n",
              "      <td>229.338287</td>\n",
              "      <td>0.675704</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>ridge</td>\n",
              "      <td>0.256765</td>\n",
              "      <td>2231.388563</td>\n",
              "      <td>1974.618283</td>\n",
              "      <td>6.722476</td>\n",
              "      <td>0.911679</td>\n",
              "      <td>1015.501938</td>\n",
              "      <td>1057.108602</td>\n",
              "      <td>4.116662</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.485126</td>\n",
              "      <td>2321.850999</td>\n",
              "      <td>1854.344966</td>\n",
              "      <td>6.281876</td>\n",
              "      <td>0.308247</td>\n",
              "      <td>764.648542</td>\n",
              "      <td>551.744319</td>\n",
              "      <td>1.746358</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>elastic</td>\n",
              "      <td>-0.285606</td>\n",
              "      <td>3066.725682</td>\n",
              "      <td>2658.233301</td>\n",
              "      <td>8.929112</td>\n",
              "      <td>1.289306</td>\n",
              "      <td>1223.882435</td>\n",
              "      <td>1232.587845</td>\n",
              "      <td>4.785315</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>linreg</td>\n",
              "      <td>-2.738615</td>\n",
              "      <td>5545.134644</td>\n",
              "      <td>4649.148548</td>\n",
              "      <td>15.063955</td>\n",
              "      <td>2.540321</td>\n",
              "      <td>2783.009280</td>\n",
              "      <td>2335.927192</td>\n",
              "      <td>7.343002</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-4da0c2f3-f98a-4b3e-b984-219bcfc2c22d')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-4da0c2f3-f98a-4b3e-b984-219bcfc2c22d button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-4da0c2f3-f98a-4b3e-b984-219bcfc2c22d');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "dataframe",
              "variable_name": "initial_summary",
              "summary": "{\n  \"name\": \"initial_summary\",\n  \"rows\": 5,\n  \"fields\": [\n    {\n      \"column\": \"model\",\n      \"properties\": {\n        \"dtype\": \"string\",\n        \"num_unique_values\": 5,\n        \"samples\": [\n          \"ridge\",\n          \"linreg\",\n          \"hist_gb\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"r2\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 1.3890530176219245,\n        \"min\": -2.7386151216982038,\n        \"max\": 0.621721689860844,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          0.25676512920458405,\n          -2.7386151216982038,\n          0.4851260606777076\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"rmse\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 1470.1511291099766,\n        \"min\": 1944.0883087339712,\n        \"max\": 5545.134644142061,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          2231.388563144322,\n          5545.134644142061,\n          2321.8509986354816\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mae\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 1237.3688151537485,\n        \"min\": 1605.9666104728606,\n        \"max\": 4649.1485480117535,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          1974.6182831769988,\n          4649.1485480117535,\n          1854.344966139472\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mape\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 3.8897263817604673,\n        \"min\": 5.471672583221096,\n        \"max\": 15.063955277200112,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          6.72247609870286,\n          15.063955277200112,\n          6.281876414786028\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"r2_std\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.9493068157802742,\n        \"min\": 0.17984683095584414,\n        \"max\": 2.5403205082391884,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          0.9116793029106562,\n          2.5403205082391884,\n          0.30824740825916275\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"rmse_std\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 939.866405877764,\n        \"min\": 302.8094251899319,\n        \"max\": 2783.0092801607984,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          1015.5019379636501,\n          2783.0092801607984,\n          764.648541840017\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mae_std\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 806.8194652275445,\n        \"min\": 229.3382874490705,\n        \"max\": 2335.927192264732,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          1057.1086016618206,\n          2335.927192264732,\n          551.7443189334359\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mape_std\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 2.6258559528455647,\n        \"min\": 0.6757044278782639,\n        \"max\": 7.343001562749612,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          4.1166615106633015,\n          7.343001562749612,\n          1.7463576021442155\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Лучшая модель первой недели: tree\n",
            "[progress] processed=100/6044, day=107, model=tree, drift=False\n",
            "[retrain] day=180, new_best_model=linreg\n",
            "[progress] processed=200/6044, day=207, model=linreg, drift=True\n",
            "[progress] processed=300/6044, day=307, model=linreg, drift=False\n",
            "[retrain] day=386, new_best_model=linreg\n",
            "[progress] processed=400/6044, day=407, model=linreg, drift=False\n",
            "[progress] processed=500/6044, day=507, model=linreg, drift=False\n",
            "[progress] processed=600/6044, day=607, model=linreg, drift=False\n",
            "[progress] processed=700/6044, day=707, model=linreg, drift=False\n",
            "[retrain] day=724, new_best_model=elastic\n",
            "[progress] processed=800/6044, day=807, model=elastic, drift=True\n",
            "[progress] processed=900/6044, day=907, model=elastic, drift=False\n",
            "[progress] processed=1000/6044, day=1007, model=elastic, drift=False\n",
            "[retrain] day=1080, new_best_model=hist_gb\n",
            "[progress] processed=1100/6044, day=1107, model=hist_gb, drift=False\n",
            "[progress] processed=1200/6044, day=1207, model=hist_gb, drift=False\n",
            "[retrain] day=1295, new_best_model=hist_gb\n",
            "[progress] processed=1300/6044, day=1307, model=hist_gb, drift=False\n",
            "[progress] processed=1400/6044, day=1407, model=hist_gb, drift=False\n",
            "[progress] processed=1500/6044, day=1507, model=hist_gb, drift=False\n",
            "[progress] processed=1600/6044, day=1607, model=hist_gb, drift=False\n",
            "[retrain] day=1668, new_best_model=hist_gb\n",
            "[progress] processed=1700/6044, day=1707, model=hist_gb, drift=False\n",
            "[progress] processed=1800/6044, day=1807, model=hist_gb, drift=False\n",
            "[retrain] day=1891, new_best_model=hist_gb\n",
            "[progress] processed=1900/6044, day=1907, model=hist_gb, drift=False\n",
            "[progress] processed=2000/6044, day=2007, model=hist_gb, drift=False\n",
            "[retrain] day=2009, new_best_model=hist_gb\n",
            "[retrain] day=2099, new_best_model=hist_gb\n",
            "[progress] processed=2100/6044, day=2107, model=hist_gb, drift=False\n",
            "[progress] processed=2200/6044, day=2207, model=hist_gb, drift=False\n",
            "[progress] processed=2300/6044, day=2307, model=hist_gb, drift=False\n",
            "[progress] processed=2400/6044, day=2407, model=hist_gb, drift=False\n",
            "[progress] processed=2500/6044, day=2507, model=hist_gb, drift=False\n",
            "[progress] processed=2600/6044, day=2607, model=hist_gb, drift=False\n",
            "[progress] processed=2700/6044, day=2707, model=hist_gb, drift=False\n",
            "[progress] processed=2800/6044, day=2807, model=hist_gb, drift=False\n",
            "[progress] processed=2900/6044, day=2907, model=hist_gb, drift=False\n",
            "[progress] processed=3000/6044, day=3007, model=hist_gb, drift=False\n",
            "[retrain] day=3102, new_best_model=hist_gb\n",
            "[progress] processed=3100/6044, day=3107, model=hist_gb, drift=False\n",
            "[progress] processed=3200/6044, day=3207, model=hist_gb, drift=False\n",
            "[progress] processed=3300/6044, day=3307, model=hist_gb, drift=False\n",
            "[progress] processed=3400/6044, day=3407, model=hist_gb, drift=False\n",
            "[retrain] day=3483, new_best_model=hist_gb\n",
            "[progress] processed=3500/6044, day=3507, model=hist_gb, drift=False\n",
            "[progress] processed=3600/6044, day=3607, model=hist_gb, drift=False\n",
            "[retrain] day=3652, new_best_model=hist_gb\n",
            "[progress] processed=3700/6044, day=3707, model=hist_gb, drift=False\n",
            "[progress] processed=3800/6044, day=3807, model=hist_gb, drift=True\n",
            "[retrain] day=3819, new_best_model=hist_gb\n",
            "[progress] processed=3900/6044, day=3907, model=hist_gb, drift=False\n",
            "[retrain] day=3961, new_best_model=hist_gb\n",
            "[progress] processed=4000/6044, day=4007, model=hist_gb, drift=False\n",
            "[progress] processed=4100/6044, day=4107, model=hist_gb, drift=False\n",
            "[retrain] day=4161, new_best_model=hist_gb\n",
            "[progress] processed=4200/6044, day=4207, model=hist_gb, drift=True\n",
            "[retrain] day=4266, new_best_model=hist_gb\n",
            "[progress] processed=4300/6044, day=4307, model=hist_gb, drift=False\n",
            "[retrain] day=4381, new_best_model=hist_gb\n",
            "[progress] processed=4400/6044, day=4407, model=hist_gb, drift=False\n",
            "[progress] processed=4500/6044, day=4507, model=hist_gb, drift=False\n",
            "[retrain] day=4565, new_best_model=hist_gb\n",
            "[progress] processed=4600/6044, day=4607, model=hist_gb, drift=False\n",
            "[progress] processed=4700/6044, day=4707, model=hist_gb, drift=True\n",
            "[retrain] day=4751, new_best_model=hist_gb\n",
            "[progress] processed=4800/6044, day=4807, model=hist_gb, drift=True\n",
            "[progress] processed=4900/6044, day=4907, model=hist_gb, drift=False\n",
            "[progress] processed=5000/6044, day=5007, model=hist_gb, drift=False\n",
            "[progress] processed=5100/6044, day=5107, model=hist_gb, drift=True\n",
            "[retrain] day=5159, new_best_model=hist_gb\n",
            "[progress] processed=5200/6044, day=5207, model=hist_gb, drift=False\n",
            "[progress] processed=5300/6044, day=5307, model=hist_gb, drift=False\n",
            "[retrain] day=5334, new_best_model=hist_gb\n",
            "[progress] processed=5400/6044, day=5407, model=hist_gb, drift=False\n",
            "[progress] processed=5500/6044, day=5507, model=hist_gb, drift=False\n",
            "[progress] processed=5600/6044, day=5607, model=hist_gb, drift=False\n",
            "[progress] processed=5700/6044, day=5707, model=hist_gb, drift=False\n",
            "[progress] processed=5800/6044, day=5807, model=hist_gb, drift=False\n",
            "[retrain] day=5841, new_best_model=hist_gb\n",
            "[progress] processed=5900/6044, day=5907, model=hist_gb, drift=False\n",
            "[progress] processed=6000/6044, day=6007, model=hist_gb, drift=True\n",
            "[retrain] day=6018, new_best_model=hist_gb\n",
            "\n",
            "=== Метрики моделей на первой неделе ===\n"
          ]
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "     model        r2         rmse          mae       mape    r2_std  \\\n",
              "0     tree  0.621722  1944.088309  1605.966610   5.471673  0.179847   \n",
              "1    ridge  0.256765  2231.388563  1974.618283   6.722476  0.911679   \n",
              "2  hist_gb  0.485126  2321.850999  1854.344966   6.281876  0.308247   \n",
              "3  elastic -0.285606  3066.725682  2658.233301   8.929112  1.289306   \n",
              "4   linreg -2.738615  5545.134644  4649.148548  15.063955  2.540321   \n",
              "\n",
              "      rmse_std      mae_std  mape_std  \n",
              "0   302.809425   229.338287  0.675704  \n",
              "1  1015.501938  1057.108602  4.116662  \n",
              "2   764.648542   551.744319  1.746358  \n",
              "3  1223.882435  1232.587845  4.785315  \n",
              "4  2783.009280  2335.927192  7.343002  "
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-1ed57a3b-a7fb-4b1a-a0b7-44e85f1bb337\" class=\"colab-df-container\">\n",
              "    <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>model</th>\n",
              "      <th>r2</th>\n",
              "      <th>rmse</th>\n",
              "      <th>mae</th>\n",
              "      <th>mape</th>\n",
              "      <th>r2_std</th>\n",
              "      <th>rmse_std</th>\n",
              "      <th>mae_std</th>\n",
              "      <th>mape_std</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>tree</td>\n",
              "      <td>0.621722</td>\n",
              "      <td>1944.088309</td>\n",
              "      <td>1605.966610</td>\n",
              "      <td>5.471673</td>\n",
              "      <td>0.179847</td>\n",
              "      <td>302.809425</td>\n",
              "      <td>229.338287</td>\n",
              "      <td>0.675704</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>ridge</td>\n",
              "      <td>0.256765</td>\n",
              "      <td>2231.388563</td>\n",
              "      <td>1974.618283</td>\n",
              "      <td>6.722476</td>\n",
              "      <td>0.911679</td>\n",
              "      <td>1015.501938</td>\n",
              "      <td>1057.108602</td>\n",
              "      <td>4.116662</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.485126</td>\n",
              "      <td>2321.850999</td>\n",
              "      <td>1854.344966</td>\n",
              "      <td>6.281876</td>\n",
              "      <td>0.308247</td>\n",
              "      <td>764.648542</td>\n",
              "      <td>551.744319</td>\n",
              "      <td>1.746358</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>elastic</td>\n",
              "      <td>-0.285606</td>\n",
              "      <td>3066.725682</td>\n",
              "      <td>2658.233301</td>\n",
              "      <td>8.929112</td>\n",
              "      <td>1.289306</td>\n",
              "      <td>1223.882435</td>\n",
              "      <td>1232.587845</td>\n",
              "      <td>4.785315</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>linreg</td>\n",
              "      <td>-2.738615</td>\n",
              "      <td>5545.134644</td>\n",
              "      <td>4649.148548</td>\n",
              "      <td>15.063955</td>\n",
              "      <td>2.540321</td>\n",
              "      <td>2783.009280</td>\n",
              "      <td>2335.927192</td>\n",
              "      <td>7.343002</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-1ed57a3b-a7fb-4b1a-a0b7-44e85f1bb337')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-1ed57a3b-a7fb-4b1a-a0b7-44e85f1bb337 button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-1ed57a3b-a7fb-4b1a-a0b7-44e85f1bb337');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "dataframe",
              "variable_name": "initial_summary",
              "summary": "{\n  \"name\": \"initial_summary\",\n  \"rows\": 5,\n  \"fields\": [\n    {\n      \"column\": \"model\",\n      \"properties\": {\n        \"dtype\": \"string\",\n        \"num_unique_values\": 5,\n        \"samples\": [\n          \"ridge\",\n          \"linreg\",\n          \"hist_gb\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"r2\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 1.3890530176219245,\n        \"min\": -2.7386151216982038,\n        \"max\": 0.621721689860844,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          0.25676512920458405,\n          -2.7386151216982038,\n          0.4851260606777076\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"rmse\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 1470.1511291099766,\n        \"min\": 1944.0883087339712,\n        \"max\": 5545.134644142061,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          2231.388563144322,\n          5545.134644142061,\n          2321.8509986354816\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mae\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 1237.3688151537485,\n        \"min\": 1605.9666104728606,\n        \"max\": 4649.1485480117535,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          1974.6182831769988,\n          4649.1485480117535,\n          1854.344966139472\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mape\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 3.8897263817604673,\n        \"min\": 5.471672583221096,\n        \"max\": 15.063955277200112,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          6.72247609870286,\n          15.063955277200112,\n          6.281876414786028\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"r2_std\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.9493068157802742,\n        \"min\": 0.17984683095584414,\n        \"max\": 2.5403205082391884,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          0.9116793029106562,\n          2.5403205082391884,\n          0.30824740825916275\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"rmse_std\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 939.866405877764,\n        \"min\": 302.8094251899319,\n        \"max\": 2783.0092801607984,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          1015.5019379636501,\n          2783.0092801607984,\n          764.648541840017\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mae_std\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 806.8194652275445,\n        \"min\": 229.3382874490705,\n        \"max\": 2335.927192264732,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          1057.1086016618206,\n          2335.927192264732,\n          551.7443189334359\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mape_std\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 2.6258559528455647,\n        \"min\": 0.6757044278782639,\n        \"max\": 7.343001562749612,\n        \"num_unique_values\": 5,\n        \"samples\": [\n          4.1166615106633015,\n          7.343001562749612,\n          1.7463576021442155\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "\n",
            "=== Переобучения ===\n"
          ]
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "    retrain_day calendar_date new_best_model     cv_r2      cv_rmse  \\\n",
              "0           180    2002-07-06         linreg  0.948553  1143.219875   \n",
              "1           386    2003-01-28         linreg  0.958938  1141.079731   \n",
              "2           724    2004-01-01        elastic  0.964111  1148.086080   \n",
              "3          1080    2004-12-22        hist_gb  0.990488   554.129635   \n",
              "4          1295    2005-07-25        hist_gb  0.991508   509.446616   \n",
              "5          1668    2006-08-02        hist_gb  0.994386   479.026840   \n",
              "6          1891    2007-03-13        hist_gb  0.994219   481.915345   \n",
              "7          2009    2007-07-09        hist_gb  0.994433   472.636027   \n",
              "8          2099    2007-10-07        hist_gb  0.993935   504.541932   \n",
              "9          3102    2010-07-06        hist_gb  0.994463   466.528383   \n",
              "10         3483    2011-07-22        hist_gb  0.995318   442.802810   \n",
              "11         3652    2012-01-07        hist_gb  0.995218   448.417942   \n",
              "12         3819    2012-06-22        hist_gb  0.995271   443.327967   \n",
              "13         3961    2012-11-11        hist_gb  0.995251   450.619456   \n",
              "14         4161    2013-05-30        hist_gb  0.995249   446.392797   \n",
              "15         4266    2013-09-12        hist_gb  0.995133   456.723263   \n",
              "16         4381    2014-01-05        hist_gb  0.994947   460.285325   \n",
              "17         4565    2014-07-08        hist_gb  0.994923   461.518506   \n",
              "18         4751    2015-01-10        hist_gb  0.994890   460.933090   \n",
              "19         5159    2016-02-22        hist_gb  0.994874   461.765661   \n",
              "\n",
              "        cv_mae   cv_mape  \n",
              "0   896.769414  2.917522  \n",
              "1   879.283153  2.676815  \n",
              "2   888.052135  2.692205  \n",
              "3   408.032135  1.258957  \n",
              "4   364.048494  1.114850  \n",
              "5   326.151434  0.977389  \n",
              "6   333.174086  0.999197  \n",
              "7   327.194609  0.981726  \n",
              "8   338.366267  1.004964  \n",
              "9   315.548606  0.941452  \n",
              "10  309.695603  0.923100  \n",
              "11  315.415816  0.941997  \n",
              "12  309.515801  0.927711  \n",
              "13  313.182643  0.942136  \n",
              "14  312.341295  0.943448  \n",
              "15  314.185377  0.945189  \n",
              "16  315.411571  0.950875  \n",
              "17  318.297006  0.961840  \n",
              "18  317.742677  0.962651  \n",
              "19  320.786126  0.972303  "
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-5d17a8a7-aa33-4ec7-9022-06a4a92d24a7\" class=\"colab-df-container\">\n",
              "    <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>retrain_day</th>\n",
              "      <th>calendar_date</th>\n",
              "      <th>new_best_model</th>\n",
              "      <th>cv_r2</th>\n",
              "      <th>cv_rmse</th>\n",
              "      <th>cv_mae</th>\n",
              "      <th>cv_mape</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>180</td>\n",
              "      <td>2002-07-06</td>\n",
              "      <td>linreg</td>\n",
              "      <td>0.948553</td>\n",
              "      <td>1143.219875</td>\n",
              "      <td>896.769414</td>\n",
              "      <td>2.917522</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>386</td>\n",
              "      <td>2003-01-28</td>\n",
              "      <td>linreg</td>\n",
              "      <td>0.958938</td>\n",
              "      <td>1141.079731</td>\n",
              "      <td>879.283153</td>\n",
              "      <td>2.676815</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>724</td>\n",
              "      <td>2004-01-01</td>\n",
              "      <td>elastic</td>\n",
              "      <td>0.964111</td>\n",
              "      <td>1148.086080</td>\n",
              "      <td>888.052135</td>\n",
              "      <td>2.692205</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>1080</td>\n",
              "      <td>2004-12-22</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.990488</td>\n",
              "      <td>554.129635</td>\n",
              "      <td>408.032135</td>\n",
              "      <td>1.258957</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>1295</td>\n",
              "      <td>2005-07-25</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.991508</td>\n",
              "      <td>509.446616</td>\n",
              "      <td>364.048494</td>\n",
              "      <td>1.114850</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>5</th>\n",
              "      <td>1668</td>\n",
              "      <td>2006-08-02</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.994386</td>\n",
              "      <td>479.026840</td>\n",
              "      <td>326.151434</td>\n",
              "      <td>0.977389</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6</th>\n",
              "      <td>1891</td>\n",
              "      <td>2007-03-13</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.994219</td>\n",
              "      <td>481.915345</td>\n",
              "      <td>333.174086</td>\n",
              "      <td>0.999197</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>7</th>\n",
              "      <td>2009</td>\n",
              "      <td>2007-07-09</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.994433</td>\n",
              "      <td>472.636027</td>\n",
              "      <td>327.194609</td>\n",
              "      <td>0.981726</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>8</th>\n",
              "      <td>2099</td>\n",
              "      <td>2007-10-07</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.993935</td>\n",
              "      <td>504.541932</td>\n",
              "      <td>338.366267</td>\n",
              "      <td>1.004964</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>9</th>\n",
              "      <td>3102</td>\n",
              "      <td>2010-07-06</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.994463</td>\n",
              "      <td>466.528383</td>\n",
              "      <td>315.548606</td>\n",
              "      <td>0.941452</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>10</th>\n",
              "      <td>3483</td>\n",
              "      <td>2011-07-22</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.995318</td>\n",
              "      <td>442.802810</td>\n",
              "      <td>309.695603</td>\n",
              "      <td>0.923100</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>11</th>\n",
              "      <td>3652</td>\n",
              "      <td>2012-01-07</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.995218</td>\n",
              "      <td>448.417942</td>\n",
              "      <td>315.415816</td>\n",
              "      <td>0.941997</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>12</th>\n",
              "      <td>3819</td>\n",
              "      <td>2012-06-22</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.995271</td>\n",
              "      <td>443.327967</td>\n",
              "      <td>309.515801</td>\n",
              "      <td>0.927711</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>13</th>\n",
              "      <td>3961</td>\n",
              "      <td>2012-11-11</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.995251</td>\n",
              "      <td>450.619456</td>\n",
              "      <td>313.182643</td>\n",
              "      <td>0.942136</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>14</th>\n",
              "      <td>4161</td>\n",
              "      <td>2013-05-30</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.995249</td>\n",
              "      <td>446.392797</td>\n",
              "      <td>312.341295</td>\n",
              "      <td>0.943448</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>15</th>\n",
              "      <td>4266</td>\n",
              "      <td>2013-09-12</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.995133</td>\n",
              "      <td>456.723263</td>\n",
              "      <td>314.185377</td>\n",
              "      <td>0.945189</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>16</th>\n",
              "      <td>4381</td>\n",
              "      <td>2014-01-05</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.994947</td>\n",
              "      <td>460.285325</td>\n",
              "      <td>315.411571</td>\n",
              "      <td>0.950875</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>17</th>\n",
              "      <td>4565</td>\n",
              "      <td>2014-07-08</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.994923</td>\n",
              "      <td>461.518506</td>\n",
              "      <td>318.297006</td>\n",
              "      <td>0.961840</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>18</th>\n",
              "      <td>4751</td>\n",
              "      <td>2015-01-10</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.994890</td>\n",
              "      <td>460.933090</td>\n",
              "      <td>317.742677</td>\n",
              "      <td>0.962651</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>19</th>\n",
              "      <td>5159</td>\n",
              "      <td>2016-02-22</td>\n",
              "      <td>hist_gb</td>\n",
              "      <td>0.994874</td>\n",
              "      <td>461.765661</td>\n",
              "      <td>320.786126</td>\n",
              "      <td>0.972303</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-5d17a8a7-aa33-4ec7-9022-06a4a92d24a7')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-5d17a8a7-aa33-4ec7-9022-06a4a92d24a7 button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-5d17a8a7-aa33-4ec7-9022-06a4a92d24a7');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "dataframe",
              "summary": "{\n  \"name\": \"    plt\",\n  \"rows\": 20,\n  \"fields\": [\n    {\n      \"column\": \"retrain_day\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 1590,\n        \"min\": 180,\n        \"max\": 5159,\n        \"num_unique_values\": 20,\n        \"samples\": [\n          180,\n          4565,\n          4266\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"calendar_date\",\n      \"properties\": {\n        \"dtype\": \"object\",\n        \"num_unique_values\": 20,\n        \"samples\": [\n          \"2002-07-06\",\n          \"2014-07-08\",\n          \"2013-09-12\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"new_best_model\",\n      \"properties\": {\n        \"dtype\": \"category\",\n        \"num_unique_values\": 3,\n        \"samples\": [\n          \"linreg\",\n          \"elastic\",\n          \"hist_gb\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"cv_r2\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.01391725781495485,\n        \"min\": 0.9485534174687829,\n        \"max\": 0.9953176073678256,\n        \"num_unique_values\": 20,\n        \"samples\": [\n          0.9485534174687829,\n          0.9949225352538278,\n          0.9951332838064746\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"cv_rmse\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 248.15639389044935,\n        \"min\": 442.8028103498425,\n        \"max\": 1148.0860803184871,\n        \"num_unique_values\": 20,\n        \"samples\": [\n          1143.219875215632,\n          461.5185055340858,\n          456.72326309720665\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"cv_mae\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 206.81264220032782,\n        \"min\": 309.5158006350352,\n        \"max\": 896.7694136153772,\n        \"num_unique_values\": 20,\n        \"samples\": [\n          896.7694136153772,\n          318.2970062834307,\n          314.18537695511395\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"cv_mape\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.6568891633666657,\n        \"min\": 0.9231002847867587,\n        \"max\": 2.9175222315851483,\n        \"num_unique_values\": 20,\n        \"samples\": [\n          2.9175222315851483,\n          0.9618403209558133,\n          0.9451894704692378\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "\n",
            "=== Сводка стабильности моделей ===\n"
          ]
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "  active_model  eval_days  drift_days  drift_rate   mean_r2    mean_rmse  \\\n",
              "1      hist_gb       4971         449    0.090324  0.982684   408.166539   \n",
              "2       linreg        544          54    0.099265  0.916851  1017.072930   \n",
              "0      elastic        356          46    0.129213  0.918012   988.144713   \n",
              "3         tree        173          38    0.219653  0.687908  2017.780121   \n",
              "\n",
              "      mean_mae  mean_mape  \n",
              "1   317.604165   0.974601  \n",
              "2   819.916012   2.555832  \n",
              "0   785.927038   2.417608  \n",
              "3  1648.114972   5.221848  "
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-f2c20e41-21bb-412e-bee7-aa72d9731997\" class=\"colab-df-container\">\n",
              "    <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>active_model</th>\n",
              "      <th>eval_days</th>\n",
              "      <th>drift_days</th>\n",
              "      <th>drift_rate</th>\n",
              "      <th>mean_r2</th>\n",
              "      <th>mean_rmse</th>\n",
              "      <th>mean_mae</th>\n",
              "      <th>mean_mape</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>hist_gb</td>\n",
              "      <td>4971</td>\n",
              "      <td>449</td>\n",
              "      <td>0.090324</td>\n",
              "      <td>0.982684</td>\n",
              "      <td>408.166539</td>\n",
              "      <td>317.604165</td>\n",
              "      <td>0.974601</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>linreg</td>\n",
              "      <td>544</td>\n",
              "      <td>54</td>\n",
              "      <td>0.099265</td>\n",
              "      <td>0.916851</td>\n",
              "      <td>1017.072930</td>\n",
              "      <td>819.916012</td>\n",
              "      <td>2.555832</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>elastic</td>\n",
              "      <td>356</td>\n",
              "      <td>46</td>\n",
              "      <td>0.129213</td>\n",
              "      <td>0.918012</td>\n",
              "      <td>988.144713</td>\n",
              "      <td>785.927038</td>\n",
              "      <td>2.417608</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>tree</td>\n",
              "      <td>173</td>\n",
              "      <td>38</td>\n",
              "      <td>0.219653</td>\n",
              "      <td>0.687908</td>\n",
              "      <td>2017.780121</td>\n",
              "      <td>1648.114972</td>\n",
              "      <td>5.221848</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-f2c20e41-21bb-412e-bee7-aa72d9731997')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-f2c20e41-21bb-412e-bee7-aa72d9731997 button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-f2c20e41-21bb-412e-bee7-aa72d9731997');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ],
            "application/vnd.google.colaboratory.intrinsic+json": {
              "type": "dataframe",
              "variable_name": "stability_df",
              "summary": "{\n  \"name\": \"stability_df\",\n  \"rows\": 4,\n  \"fields\": [\n    {\n      \"column\": \"active_model\",\n      \"properties\": {\n        \"dtype\": \"string\",\n        \"num_unique_values\": 4,\n        \"samples\": [\n          \"linreg\",\n          \"tree\",\n          \"hist_gb\"\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"eval_days\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 2311,\n        \"min\": 173,\n        \"max\": 4971,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          544,\n          173,\n          4971\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"drift_days\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 201,\n        \"min\": 38,\n        \"max\": 449,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          54,\n          38,\n          449\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"drift_rate\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.05908190652843423,\n        \"min\": 0.09032387849527258,\n        \"max\": 0.21965317919075145,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          0.09926470588235294,\n          0.21965317919075145,\n          0.09032387849527258\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mean_r2\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 0.1293486131910697,\n        \"min\": 0.6879083942783237,\n        \"max\": 0.9826839128515119,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          0.916850626690729,\n          0.6879083942783237,\n          0.9826839128515119\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mean_rmse\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 668.3560897705266,\n        \"min\": 408.16653894592713,\n        \"max\": 2017.7801205402322,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          1017.0729300534377,\n          2017.7801205402322,\n          408.16653894592713\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mean_mae\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 553.1982250078778,\n        \"min\": 317.6041650455711,\n        \"max\": 1648.1149720357391,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          819.9160119345316,\n          1648.1149720357391,\n          317.6041650455711\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    },\n    {\n      \"column\": \"mean_mape\",\n      \"properties\": {\n        \"dtype\": \"number\",\n        \"std\": 1.770409242048574,\n        \"min\": 0.9746008966639749,\n        \"max\": 5.22184840910808,\n        \"num_unique_values\": 4,\n        \"samples\": [\n          2.5558318412672576,\n          5.22184840910808,\n          0.9746008966639749\n        ],\n        \"semantic_type\": \"\",\n        \"description\": \"\"\n      }\n    }\n  ]\n}"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "\n",
            "Файлы сохранены в: /content/drift_energy\n"
          ]
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 1400x500 with 1 Axes>"
            ],
            "image/png": "iVBORw0KGgoAAAANSUhEUgAABJoAAAHWCAYAAAA/y+M2AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAA4rZJREFUeJzs3Xd4FNX6B/DvbEkjBQKkAULoJVQRQQEBKaHZuCoCCopw5YIK3p+Fq9JEsRdQsQIqINiQIkRQpGkABSOEqLTQk9CzQNpmd35/xF12SdsNM3Nmd7+f54Enu3sy57zvnCk5e2ZGkmVZBhERERERERER0VUyiG4AERERERERERH5Bw40ERERERERERGRIjjQREREREREREREiuBAExERERERERERKYIDTUREREREREREpAgONBERERERERERkSI40ERERERERERERIrgQBMRERERERERESmCA01ERERERERERKQIDjQREREREREREZEiONBEREQUIBYsWABJkiBJErZs2VLqc1mWUa9ePUiShEGDBgloIVVkw4YNzvUnSRKMRiNiYmLwr3/9C3/++Wep8qNGjYIkSYiMjER+fn6pz/ft2+dc1quvvur22aFDh3D//fejUaNGCAkJQVxcHLp3746pU6e6levRo4dbm1z/NW/eXNkEEBERkU8wiW4AERERaSskJASLFy9G165d3d7fuHEjjh07huDgYEEtI0888sgjuO6662C1WrFr1y6899572LBhA9LT0xEXF+dW1mQyIS8vDytXrsRdd93l9tmiRYsQEhKCgoICt/f379+P6667DqGhoXjggQfQoEEDZGVlYefOnXjppZcwffp0t/J169bFrFmzSrUzKipKoYiJiIjIl3CgiYiIKMAMGDAAX375JWbPng2T6fKpwOLFi3Httdfi9OnTAltHlenWrRv+9a9/OV83a9YM48aNw6effoonnnjCrWxwcDBuvPFGfP7556UGmhYvXoyBAwfi66+/dnv/jTfewMWLF5GWlob69eu7fXby5MlS7YmKisKIESOuNiwiIiLyE7x0joiIKMDcc889OHPmDNatW+d8r6ioCF999RWGDRtW5u9cunQJ//3vf1GvXj0EBwejWbNmePXVVyHLsls5SZIwYcKEUr8/aNAgNGjQwPn60KFDkCQJCxYscCs3fvx4SJKEUaNGAXC/3K+8f67LWL9+Pbp164Zq1aqhevXquPXWW0tdVjZt2jRIkoS//voLd911FyIjI1GzZk08+uijpWb3SJKEadOmub33yiuvQJIk9OjRw/me47K2r776qlTs4eHhzngqi+nYsWOlfr8y3bp1AwAcOHCgzM+HDRuGNWvW4Pz58873fv31V+zbt6/M9X3gwAHUrVu31CATAMTExHjdvvJceSnglf9ccwYABw8exJ133ono6GiEhYWhc+fO+O677xSpz5Wjf1w54Prbb7+V2We/+uordOzYEREREW7LdL0c0XEZY7t27Uq1a9asWZAkCeHh4R7HQkREpGec0URERBRgGjRogC5duuDzzz9H//79AQBr1qxBbm4uhg4ditmzZ7uVl2UZt9xyC3766SeMHj0a7dq1w/fff4/HH38cx48fxxtvvKFIu/bv348PP/zQ7b3u3bvjs88+c75+/vnnAQBPP/20870bbrgBAPDDDz+gf//+aNiwIaZNm4b8/HzMmTMHN954I3bu3Ok20AUAd911Fxo0aIBZs2Zh69atmD17Ns6dO4dPP/203DaeP3++zMvEqmLGjBlITEx0ey86Otrr5Rw6dAgAUKNGjTI/v+OOO/DQQw/hm2++wQMPPACgZDZT8+bN0aFDh1Ll69evjx9++AHr169Hr169Kq3fZrOVOQsuNDQU1apVq/T3HZcCunrwwQfdXufk5OCGG25AXl4eHnnkEdSsWROffPIJbrnlFnz11Ve4/fbbK62nrPo+/fRTtwFXb6WmpuKuu+5C27Zt8eKLLyIqKgqnT5/GpEmTSpU1mUzYs2cPfv/9d7Rv3975/oIFCxASElLlNhAREekNB5qIiIgC0LBhwzB58mTk5+cjNDQUixYtwk033YSEhIRSZVesWIH169dj5syZzgGe8ePH484778Rbb72FCRMmoFGjRlfdpqeffhrNmjVDbm6u872GDRuiYcOGztcfffQRAJR5qdbjjz+O6OhopKamOgdsbrvtNrRv3x5Tp07FJ5984lY+MTERy5cvd8YTGRmJd999F//3f/+HNm3alNnGWbNmwWw249prr726YAH0798fHTt29Pr3Lly4gNOnTzvv0TRx4kRIkoQhQ4aUWT4iIgKDBg3C4sWL8cADD8But2PJkiUYN25cmeUfeeQRfPbZZ7j55pvRrl073HTTTejZsyf69OmDsLCwUuX/+usv1K5du9T7//73v/Hee+9VGs+VlwICwEMPPeT2+sUXX0ROTg42b97svLfYmDFj0KZNGzz22GO49dZbYTBUPFHfarUCKBm8dORq69atVzXQtHLlSsiyjDVr1jjvj3Xo0KEyB5qCg4PRq1cvzJs3D3PmzAEAbNmyBUePHkVycvJVtYOIiEhPeOkcERFRALrrrruQn5+PVatW4cKFC1i1alW5l82tXr0aRqMRjzzyiNv7//3vf51/ZLsqKCjA6dOn3f45/sgvz44dO/Dll19i1qxZlQ4YlCUrKwtpaWkYNWqU26ygNm3aoE+fPli9enWp3xk/frzb64cffhgAyiwLAMePH8ecOXPw7LPPlnuZk2MQyPWf0h544AHUrl0bCQkJSE5ORm5uLj777LNSs4JcDRs2DBs2bEB2djbWr1+P7Ozsctd3q1atkJaWhhEjRuDQoUN46623cNtttyE2NrbUjDOgZIbcunXrSv2bOHGiUiFj9erV6NSpk9sN7MPDwzF27FgcOnQIGRkZlS7DcVmkp7OHzp4967YeXQdAHS5cuACDwYDq1at7tMwHHngAixcvRmFhIQBg/vz5uOOOO3jjdCIi8iscaCIiIgpAtWvXRu/evbF48WJ88803sNlspWaVOBw+fBgJCQmIiIhwe79FixbOz119/PHHqF27ttu/tWvXVtiep556Ct26dcOgQYOqFI+jDc2aNSv1WYsWLXD69GlcunTJ7f0mTZq4vW7UqBEMBoPzUrQrTZ06FQkJCfj3v/9dbjscg0Cu/66s92pNmTIF69atw7Jly3DfffchNze30sG5AQMGICIiAkuXLsWiRYtw3XXXoXHjxuWWb9q0KT777DOcPn0au3btwgsvvACTyYSxY8fihx9+cCtbrVo19O7du9S/5s2bKxIvULJ+y1u3js8r4xj083RQp1mzZm7rsXfv3qXKdOnSBXa7HY8++igOHDiA06dP49y5c+Uuc+DAgTCZTFi+fDkuXbqEL774Avfff79H7SEiIvIVvHSOiIgoQA0bNgxjxoxBdnY2+vfv7/GsjMrceuutpW4I/swzzyA7O7vM8mvXrsUPP/yA1NRUReqvqitvCu3qzz//xIIFC7Bw4UKYzeZyy02ZMsV5c26HwYMHK9ZGAGjdurVz0OO2225DXl4exowZg65du6JevXpl/k5wcDDuuOMOfPLJJzh48GCpG5yXx2g0onXr1mjdujW6dOmCnj17YtGiRWUOuuidYwDxynt1lefrr79GZGSk8/XevXtLzYIbOnQodu7ciTlz5uCDDz6odJlmsxkjRozA/PnzkZeXh5o1a6JXr15u9yEjIiLydRxoIiIiClC33347/v3vf2Pr1q1YunRpueUcN4e+cOGC26ymv/76y/m5q7p165YaiHjzzTfLHGiSZRlPPfUUbr/9dnTu3LnKsTja8Pfff5f67K+//kKtWrVK3Zh63759bjfj3r9/P+x2e5kDEZMnT0a7du1w9913V9gO10EgB6PR6GkYVfLiiy9i2bJleP755yu8J9KwYcMwb948GAwGDB061Ot6HPeTysrKqnJbq6p+/frlrlvH55X57bffEBcXh7p163pUZ/fu3VGrVi3n67IGYg0GA1599VXs3r0bmZmZePfdd5GTk1PmPcQcHnjgAbRt2xZHjx7FyJEjKxzgJCIi8kW8dI6IiChAhYeHY+7cuZg2bVqFs24GDBgAm82Gt99+2+39N954A5IkOZ9cVxVLlizBrl27rvpJbvHx8WjXrh0++eQTnD9/3vl+eno61q5diwEDBpT6nXfeecftteMGzVfGk5qaiuXLl+PFF1/U5aBAo0aNMGTIECxYsKDcWWMA0LNnTzz33HN4++23nTeuLsvmzZvLvKeW495VZV3CprYBAwZg+/btbrPeLl26hA8++AANGjRAy5YtK/z9M2fO4KeffsItt9yieNvmzJmD9evXO2d63XjjjRWWb9WqFa699lpkZGRg1KhRireHiIhINM5oIiIiCmAjR46stMzgwYPRs2dPPP300zh06BDatm2LtWvXYvny5Zg4ceJVPXFu7dq1GDNmjCKDF6+88gr69++PLl26YPTo0cjPz8ecOXMQFRVV5qVimZmZuOWWW5CcnIzU1FQsXLgQw4YNQ9u2bUu1sU+fPrq+XOzxxx/HF198gTfffBMvvvhimWUMBgOeeeaZSpf10ksvYceOHbjjjjucT9/buXMnPv30U0RHR5e6yXdubi4WLlxY5rIqmtnjjaeeegqff/45+vfvj0ceeQTR0dH45JNPkJmZia+//rrCe1SlpqbiqaeeQn5+PmrXru3W1r179wIAFi5ciNtvv73UrLfK7NmzB0888QSmTZtW4c3Yr7R+/XoUFha63bieiIjIX3CgiYiIiCpkMBiwYsUKTJkyBUuXLsX8+fPRoEEDvPLKK/jvf/97VcsODQ31+H5BlenduzdSUlIwdepUTJkyBWazGTfddBNeeuklt0vkHJYuXYopU6bgqaeegslkwoQJE/DKK6+UKidJUrmDN3rRsWNH9OjRA3PnzsXkyZOv6ilm//vf/7B48WJs3LgRixYtQl5eHuLj4zF06FA8++yzpXJ57Ngx3HvvvWUuS6mBptjYWPzyyy948sknMWfOHBQUFKBNmzZYuXIlBg4cWOHvvv/++9i0aRMA4Pnnny+zzL333ovMzEyvBpoKCwsxbNgwdOzYEU899ZTnwaDkBureDmoRERH5CkmWZVl0I4iIiIi0Mm3aNEyfPh2nTp1yuwcP+SfH5WkLFiwot4wkScjMzPT4RuFERERUPt6jiYiIiIiIiIiIFMFL54iIiIjIb91www2Vlhk+fDjCw8M1aA0REZH/40ATEREREfmtsWPHVlqmvJuZExERkfd4jyYiIiIiIiIiIlIE79FERERERERERESK4EATEREREREREREpgvdoUojdbseJEycQEREBSZJEN4eIiIiIiIiISBGyLOPChQtISEiAwVDxnCUONCnkxIkTqFevnuhmEBERERERERGp4ujRo6hbt26FZTjQpJCIiAgAJUmPjIwU3BrvWa1WrF27Fn379oXZbNakTlmWYSkoBgBEhpiEzATTQxvU4quxedsX9Ran3tqjNj3Gq2SbioqKsHzNOtzcsydqRIR6tSw95oZ819UcpwO5L2oZu9Z5VrO+ipatxTmjErEpmR9R25DIbdcX9hu+0hd9oU5/pWUurVYrvv9+LW7o3hNGs9kv153FYkG9evWcYx8V4UCTQhydKDIy0mcHmsLCwhAZGanZQFNRsR3ztu8HAIzv2RhBJu1vGaaHNqjFV2Pzti/qLU69tUdteoxXyTZdyi/Er7nhOL/nHB6+OcarZekxN+S7ruY4Hch9UcvYtc6zmvVVtGwtzhmViE3J/IjahkRuu76w3/CVvugLdforLXNptVoRHBqGr/ecg8Fg9Ot158kAmn9GTkREREREREREmuNAExERERERERERKYIDTUREREREREREpAjeo4mIiIicZFlGcXExbDab6KaQC6vVCpPJhIKCAq/XTVGxHaGGkt8pKCiA3U/vGVEWLWOvrC6z2Qyj0aha/URERHrBgSYiIiIC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SIGko+fH6OhoSct1rE6DRERERERERETkNww0ERERERERERGRLBhoIgCAVqvF3LlzodVq/Z0U6uSYFymQMD9SoGBepEDBvEiBgnmRAgnzoyUOBk5ERERERERERLJgiyYiIiIiIiIiIpIFA01ERERERERERCQLBpqIiIiIiIiIiEgWDDQREREREREREZEsGGgiAMDChQvRs2dPhIaGYsyYMdi1a5e/k0RBbPPmzbjpppuQkpIChUKBb775xuJ7IQReeOEFJCcnIywsDBMnTsTx48ctlikvL8e0adOg0+kQExODBx54ALW1tRbLHDhwAOPGjUNoaChSU1Pxf//3f97eNQoyr7zyCi677DJERUUhISEBt956K44ePWqxTGNjI2bMmIEuXbogMjISv/vd71BSUmKxzOnTp3HDDTcgPDwcCQkJmD17NlpbWy2W+fHHHzFixAhotVpkZGRg8eLF3t49CiKLFi3CkCFDoNPpoNPpkJWVhR9++MH0PfMh+cuCBQugUCjw2GOPmT5jfiRfmTdvHhQKhcV//fr1M33PvEi+dO7cOfzhD39Aly5dEBYWhsGDB2P37t2m71mHcYGgTm/58uVCo9GIjz/+WBw6dEg89NBDIiYmRpSUlPg7aRSkVq9eLZ599lnx1VdfCQDi66+/tvh+wYIFIjo6WnzzzTdi//794uabbxbp6emioaHBtMzkyZPF0KFDxY4dO8SWLVtERkaGmDp1qun7qqoqkZiYKKZNmyby8vLEZ599JsLCwsR7773nq92kIDBp0iTxySefiLy8PJGbmyumTJkievToIWpra03LTJ8+XaSmpor169eL3bt3i8svv1xcccUVpu9bW1vFoEGDxMSJE8W+ffvE6tWrRXx8vHjmmWdMyxQUFIjw8HDxxBNPiMOHD4u3335bqFQqkZOT49P9pcC1atUq8f3334tjx46Jo0ePir/+9a9CrVaLvLw8IQTzIfnHrl27RM+ePcWQIUPErFmzTJ8zP5KvzJ07VwwcOFAUFRWZ/rt48aLpe+ZF8pXy8nKRlpYm7r33XrFz505RUFAg1qxZI06cOGFahnUY6RhoIjF69GgxY8YM0996vV6kpKSIV155xY+poo7COtBkMBhEUlKSeO2110yfVVZWCq1WKz777DMhhBCHDx8WAMTPP/9sWuaHH34QCoVCnDt3TgghxDvvvCNiY2NFU1OTaZmnn35a9O3b18t7RMHswoULAoDYtGmTEKIt76nVavHFF1+Yljly5IgAILZv3y6EaAucKpVKUVxcbFpm0aJFQqfTmfLfU089JQYOHGixrTvuuENMmjTJ27tEQSw2NlZ8+OGHzIfkFzU1NSIzM1OsXbtWXHXVVaZAE/Mj+dLcuXPF0KFDbX7HvEi+9PTTT4srr7zS7vesw7iGXec6uebmZuzZswcTJ040faZUKjFx4kRs377djymjjqqwsBDFxcUWeS46Ohpjxowx5bnt27cjJiYGo0aNMi0zceJEKJVK7Ny507TM+PHjodFoTMtMmjQJR48eRUVFhY/2hoJNVVUVACAuLg4AsGfPHrS0tFjkx379+qFHjx4W+XHw4MFITEw0LTNp0iRUV1fj0KFDpmXM12FchvdRskWv12P58uWoq6tDVlYW8yH5xYwZM3DDDTe0yzPMj+Rrx48fR0pKCnr16oVp06bh9OnTAJgXybdWrVqFUaNG4X/+53+QkJCA4cOH44MPPjB9zzqMaxho6uRKS0uh1+stbs4AkJiYiOLiYj+lijoyY75ylOeKi4uRkJBg8X1ISAji4uIslrG1DvNtEJkzGAx47LHHMHbsWAwaNAhAW17RaDSIiYmxWNY6PzrLa/aWqa6uRkNDgzd2h4LQwYMHERkZCa1Wi+nTp+Prr7/GgAEDmA/J55YvX469e/filVdeafcd8yP50pgxY7B48WLk5ORg0aJFKCwsxLhx41BTU8O8SD5VUFCARYsWITMzE2vWrMEjjzyCv/zlL1iyZAkA1mFcFeLvBBAREfnCjBkzkJeXh59++snfSaFOqm/fvsjNzUVVVRVWrFiBe+65B5s2bfJ3sqiTOXPmDGbNmoW1a9ciNDTU38mhTu766683/XvIkCEYM2YM0tLS8J///AdhYWF+TBl1NgaDAaNGjcLf//53AMDw4cORl5eHd999F/fcc4+fUxd82KKpk4uPj4dKpWo3e0NJSQmSkpL8lCrqyIz5ylGeS0pKwoULFyy+b21tRXl5ucUyttZhvg0io5kzZ+K7777Dxo0b0b17d9PnSUlJaG5uRmVlpcXy1vnRWV6zt4xOp2NBmUw0Gg0yMjIwcuRIvPLKKxg6dCj++c9/Mh+ST+3ZswcXLlzAiBEjEBISgpCQEGzatAlvvfUWQkJCkJiYyPxIfhMTE4M+ffrgxIkTvDeSTyUnJ2PAgAEWn/Xv39/UlZN1GNcw0NTJaTQajBw5EuvXrzd9ZjAYsH79emRlZfkxZdRRpaenIykpySLPVVdXY+fOnaY8l5WVhcrKSuzZs8e0zIYNG2AwGDBmzBjTMps3b0ZLS4tpmbVr16Jv376IjY310d5QoBNCYObMmfj666+xYcMGpKenW3w/cuRIqNVqi/x49OhRnD592iI/Hjx40KLgsHbtWuh0OlOBJCsry2IdxmV4HyVHDAYDmpqamA/Jp6655hocPHgQubm5pv9GjRqFadOmmf7N/Ej+Ultbi/z8fCQnJ/PeSD41duxYHD161OKzY8eOIS0tDQDrMC7z92jk5H/Lly8XWq1WLF68WBw+fFj86U9/EjExMRazNxC5oqamRuzbt0/s27dPABD/+Mc/xL59+8SpU6eEEG1Tg8bExIiVK1eKAwcOiFtuucXm1KDDhw8XO3fuFD/99JPIzMy0mBq0srJSJCYmirvvvlvk5eWJ5cuXi/Dw8A43NSh55pFHHhHR0dHixx9/tJg6ub6+3rTM9OnTRY8ePcSGDRvE7t27RVZWlsjKyjJ9b5w6+brrrhO5ubkiJydHdO3a1ebUybNnzxZHjhwRCxcu5NTJZGHOnDli06ZNorCwUBw4cEDMmTNHKBQK8d///lcIwXxI/mU+65wQzI/kO08++aT48ccfRWFhodi6dauYOHGiiI+PFxcuXBBCMC+S7+zatUuEhISIl19+WRw/flwsXbpUhIeHi08//dS0DOsw0jHQREIIId5++23Ro0cPodFoxOjRo8WOHTv8nSQKYhs3bhQA2v13zz33CCHapgd9/vnnRWJiotBqteKaa64RR48etVhHWVmZmDp1qoiMjBQ6nU7cd999oqamxmKZ/fv3iyuvvFJotVrRrVs3sWDBAl/tIgUJW/kQgPjkk09MyzQ0NIhHH31UxMbGivDwcPHb3/5WFBUVWazn5MmT4vrrrxdhYWEiPj5ePPnkk6KlpcVimY0bN4phw4YJjUYjevXqZbENovvvv1+kpaUJjUYjunbtKq655hpTkEkI5kPyL+tAE/Mj+codd9whkpOThUajEd26dRN33HGHOHHihOl75kXypW+//VYMGjRIaLVa0a9fP/H+++9bfM86jHQKIYTwT1sqIiIiIiIiIiLqSDhGExERERERERERyYKBJiIiIiIiIiIikgUDTUREREREREREJAsGmoiIiIiIiIiISBYMNBERERERERERkSwYaCIiIiIiIiIiIlkw0ERERERERERERLJgoImIiIiIiIiIiGTBQBMREREREREREcmCgSYiIiIictnbb7+NF198EQCwcOFC/O///q+fU0RERESBgIEmIiIiChhnzpzB/fffj5SUFGg0GqSlpWHWrFkoKyvzd9LIyu23344lS5ZArVbjpZdewgMPPODvJBEREVEAUAghhL8TQURERFRQUICsrCz06dMHL730EtLT03Ho0CHMnj0bzc3N2LFjB+Li4vydTDJjMBhQXFyMhIQEhISE+Ds5REREFADYoomIiIgCwowZM6DRaPDf//4XV111FXr06IHrr78e69atw7lz5/Dss88CACZMmACFQmHzv3nz5gEAevbsiTfffNNi/ffeey9uvfVW099NTU34y1/+goSEBISGhuLKK6/Ezz//bPGbQ4cO4cYbb4ROp0NUVBTGjRuH/Px8m+srKytDbGwsYmJiAACLFy+2m86ePXuafrdy5UqMGDECoaGh6NWrF+bPn4/W1tZ2abdex2OPPWb6XqFQ4JtvvrF7bKUcjwkTJlis09xjjz2GCRMmtFtWqVQiJSUF+fn5UKvVGDZsmN00mP/Wel+s0/bhhx+if//+CA0NRb9+/fDOO++Yvjt58iQUCgVyc3Md7qOzY0JERETewUATERER+V15eTnWrFmDRx99FGFhYRbfJSUlYdq0afj8888hhMBXX32FoqIiFBUVISsrC08++aTpb1fGCXrqqafw5ZdfYsmSJdi7dy8yMjIwadIklJeXAwDOnTuH8ePHQ6vVYsOGDdizZw/uv//+dkEgI+sA0R133GFK15tvvonu3bub/jYGtLZs2YI//vGPmDVrFg4fPoz33nsPixcvxssvv2yxbiEEJk+ebLHfgWT27NkIDQ2VvPxDDz1k2pfu3btbfLd06VK88MILePnll3HkyBH8/e9/x/PPP48lS5bInWwiIiLyArZxJiIiIr87fvw4hBDo37+/ze/79++PiooKXLx4EQkJCabPNRoNIiMjkZSU5NL26urqsGjRIixevBjXX389AOCDDz7A2rVr8dFHH2H27NlYuHAhoqOjsXz5cqjVagBAnz59bK7v2LFj+Pjjj/HEE0/grbfeAgCEhYWZgmbR0dFQqVTt0jl//nzMmTMH99xzDwCgV69eePHFF/HUU09h7ty5puVaWlos9lOj0bi0v960ceNGbNu2DQ8++CA2btzodPmmpiZER0eb9kWlUll8P3fuXLz++uu47bbbAADp6emmIJzxOBEREVHgYosmIiIiChhyDh359NNPIzIy0vTf0qVLTd/l5+ejpaUFY8eONX2mVqsxevRoHDlyBACQm5uLcePGmYJMjjz11FN4+OGH0atXL5fSuH//fvztb3+zSKextU99fb1puerqakRERDhc19SpUxEZGYnk5GTccMMNOHz4sMX3jo6H0TvvvIPIyEh06dIFY8aMwbfffutwm0IIPPnkk5g7dy6io6Ml7XNZWRl0Op3N7+rq6pCfn48HHnjAIq0vvfSSqcui0RVXXGGxzOnTp9utz9kxISIiIvkx0ERERER+l5GRAYVCYQryWDty5AhiY2PRtWtXyeucPXs2cnNzTf/dfPPNLqXJugufPZs2bcKWLVvw3HPPubR+AKitrcX8+fMt0nnw4EEcP37coiva+fPnkZKS4nBdb7zxBnJzc/Htt9+ipaUFt99+u8X3Uo7HtGnTkJubi82bN2PcuHH4/e9/j3Pnztnd5r/+9S/U1dVh+vTpkva3tbUVZ86cQXp6us3va2trAbS1LjNPa15eHnbs2GGx7Oeff26xjK3j4+yYEBERkfzYdY6IiIj8rkuXLrj22mvxzjvv4PHHH7cI8hQXF2Pp0qX44x//CIVCIXmd8fHxyMjIMP0dFRWFyspKAEDv3r2h0WiwdetWpKWlAWjrnvbzzz+bBsQeMmQIlixZgpaWFrutmowtep5//nnExsa6uNfAiBEjcPToUYt0Wqurq8ORI0fwzDPPOFxXUlKSaT2zZs3CTTfdZJF2R8fDKDo62rTM/Pnz8frrr9sN/tXX1+PZZ59Fdna2pFZfALBz5040NjZi3LhxNr9PTExESkoKCgoKMG3aNIfrSk1NtdgfW7PeOTsmREREJD+2aCIiIqKAkJ2djaamJkyaNAmbN2/GmTNnkJOTg2uvvRbdunVrN0C2JyIiIvDII49g9uzZyMnJweHDh/HQQw+hvr4eDzzwAABg5syZqK6uxp133ondu3fj+PHj+Pe//42jR4+a1rN+/XpUVVVhxowZbqXjhRdewL/+9S/Mnz8fhw4dwpEjR7B8+XJT66hffvkFU6dORUxMjGksKXtaWlrQ2NiI4uJifPrpp+jTp4/LARW9Xo/GxkZUVVXhvffeg1qtRt++fW0uu2zZMvTu3dti5jpHiouL8fzzz2Ps2LHQarUoLi5GcXEx9Ho9ampq0NDQAKAtwPXKK6/grbfewrFjx3Dw4EF88skn+Mc//uHSvgDyHBMiIiJyDVs0ERERUUDIzMzE7t27MXfuXNx+++0oLy9HUlISbr31VsydOxdxcXGybm/BggUwGAy4++67UVNTg1GjRmHNmjWmlkldunTBhg0bMHv2bFx11VVQqVQYNmyYxbhOdXV1WLBggdvBi0mTJuG7777D3/72N7z66qtQq9Xo168fHnzwQQDAvHnz0NrainXr1iEyMtLhuozdwqKiojBixAh8/vnnLqcnOzsb2dnZ0Gg0yMzMxNKlS5Gammpz2fr6erz++uuS133nnXdi06ZNAIDk5GSL71544QWkpqbi3nvvxYMPPojw8HC89tprmD17NiIiIjB48GBTSzNXyHFMiIiIyDUKIeeom0RERERENkyYMAHz5s3DhAkT2n332GOPYdiwYbj33nt9ni4iIiKSF7vOEREREZHXxcXFQaPR2PxOp9NJHnydiIiIAhtbNBERERERERERkSzYoomIiIiIiIiIiGTBQBMREREREREREcmCgSYiIiIiIiIiIpIFA01ERERERERERCQLBpqIiIiIiIiIiEgWDDQREREREREREZEsGGgiIiIiIiIiIiJZMNBERERERERERESy+P+bNzeWqsgAMQAAAABJRU5ErkJggg==\n"
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 1400x500 with 1 Axes>"
            ],
            "image/png": "iVBORw0KGgoAAAANSUhEUgAABJEAAAHWCAYAAADHKxjBAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAA1OJJREFUeJzs3Xd8FGX+B/DPbEklCYSWoJTQlKIUEUEFRSmh2fVAsPxQTxFQ9M6uFMth96zYKJ40y+kJiIEoCipVkBoVgYSa0AJJIG2zO78/4i5ZsrvZTZ6ZeXbn8369vCO7s/M832eeKfvdZ55RVFVVQUREREREREREFIDF6AoQEREREREREZH8mEQiIiIiIiIiIqIaMYlEREREREREREQ1YhKJiIiIiIiIiIhqxCQSERERERERERHViEkkIiIiIiIiIiKqEZNIRERERERERERUIyaRiIiIiIiIiIioRkwiERERERERERFRjZhEIiIiIiIiIiKiGjGJREREFMFmz54NRVGgKAp++umnau+rqormzZtDURQMGzbMgBpSID/88INn+82ZM8fnMpdccgkURUHnzp19vu90OtGsWTMoioJvvvnG5zJTpkzxlOPrv7y8PGExERERUfiyGV0BIiIi0l5MTAzmzZuHSy+91Ov1FStWYP/+/YiOjjaoZhQM9/YbPXq01+s5OTlYtWoVYmJi/H52+fLlyM3NRatWrTB37lwMHjzY77LTp09HvXr1qr1ev379WtediIiIIgeTSERERCYwZMgQfPbZZ3jjjTdgs50+/c+bNw8XXHABjh49amDtqCZDhgzBwoULcfToUTRq1Mjz+rx589C0aVO0a9cOx48f9/nZOXPmoHv37rjtttvw+OOP49SpU4iPj/e57A033OC1fiIiIqKqeDsbERGRCYwcORLHjh1DZmam57Xy8nJ8/vnnuPnmm31+5tSpU/jHP/6B5s2bIzo6Gueccw5efvllqKrqtZyiKBg/fny1zw8bNgytWrXy/J2TkwNFUTB79myv5caNGwdFUXD77bcD8L4Fz99/VdexfPly9OnTB/Hx8ahfvz6uvvpq/Pbbb15luG/X+v3333HTTTchMTERDRs2xP3334/S0tJq8UyZMsXrtZdeegmKouDyyy/3vOa+1ezzzz+vFnu9evU88dQU0/79+6t9/kxXX301oqOj8dlnn3m9Pm/ePNx0002wWq0+P1dSUoIvv/wSI0aMwE033YSSkhJ89dVXNZYXqkDbqmofAILvV7Up74cffvAsE8r2AYBff/0V6enpaNy4sdc6q97m6d6OUVFROHLkiNfnV69e7fnML7/8EnQsRERE4YQjkYiIiEygVatW6N27N+bPn++5nembb75BQUEBRowYgTfeeMNreVVVcdVVV+H777/HHXfcga5du2Lp0qV46KGHcODAAbz22mtC6rVz50588MEHXq/17dsXH3/8sefv5557DgDwxBNPeF67+OKLAQDffvstBg8ejNatW2PKlCkoKSnBm2++iUsuuQQbN26slsC46aab0KpVK0ybNg1r1qzBG2+8gePHj+M///mP3zqeOHEC06ZNq2uoAICnn34aaWlpXq8lJyfX+Lm4uDhcffXVmD9/PsaOHQsA2Lx5M7Zv344PP/wQW7Zs8fm5hQsX4uTJkxgxYgRSUlJw+eWXY+7cuX4Th/n5+dVes9lsQd3ONmDAANx6661er73yyiteI6RE9quq5a1fv75aHw5FQUEBBg8eDFVV8eCDD6J58+YAgAceeMDn8larFXPmzPF6f9asWYiJiamWlCQiIookTCIRERGZxM0334zHHnsMJSUliI2Nxdy5c3HZZZehWbNm1ZZduHAhli9fjmeffdaTvBk3bhxuvPFGvP766xg/fjzatGlT5zo98cQTOOecc1BQUOB5rXXr1mjdurXn7w8//BAAqs0HBAAPPfQQkpOTsXr1ak8y5pprrkG3bt0wefJkfPTRR17Lp6WleUbijBs3DomJiXjnnXfwz3/+E+eff77POk6bNg12ux0XXHBB3YIFMHjwYPTo0aNWn7355psxfPhw7Nu3D82bN8fcuXPRunVr9OrVy+9n5syZg4svvtiTFBkxYgTuvfdeHDlyBI0bN662/DnnnOPztd9//73G+rVv377aNlqwYIFXEklEv3I4HJ56ucuLiYmpUxJp7dq1OHToEObPn48RI0Z4Xn/yySd9Ln/ttddi1qxZniRScXExPvnkE1x33XWYN29eretBREQkO97ORkREZBLu25kWL16MoqIiLF682O+IlCVLlsBqteK+++7zev0f//gHVFWt9pSv0tJSHD161Os/95d9fzZs2IDPPvsM06ZNg8US+iVJbm4uNm3ahNtvv91rNM/555+PAQMGYMmSJdU+M27cOK+/J0yYAAA+lwWAAwcO4M0338RTTz3lc8JpACgqKqoWuxYGDhyI5ORkLFiwAKqqYsGCBRg5cqTf5Y8dO4alS5d6LXP99ddDURR8+umnPj/z3//+F5mZmV7/zZo1S1gMofYrX9wjfQJNJl5VMNunqKgIANCwYcOg1nnLLbfg999/99y29t///hdJSUm48sorg/o8ERFRuOJIJCIiIpNo3Lgx+vfvj3nz5qG4uBhOpxM33HCDz2X37NmDZs2aISEhwev1Dh06eN6vasaMGZgxY0a19bRs2dJvfR599FH06dMHw4YN8zmnUk3cdfA1eqZDhw5YunRptUmk27Vr57VcmzZtYLFYkJOT47OMyZMno1mzZrj77rt9zq0DAGPGjAm57rVht9tx4403Yt68eejZsyf27dvnNwkIAJ988gkcDge6deuGnTt3el6/6KKLMHfu3GoJNaDyVkItJ9YOtV/54k4CJSUlBVVmMNunR48esNvtmDJlCho1auQZueVyuXwu37hxYwwdOhQzZ85Ejx49MHPmTNx22221SoYSERGFEyaRiIiITOTmm2/GXXfdhby8PAwePFjYo9uvvvrqaomgJ598Enl5eT6XX7ZsGb799lusXr1aSPm1pSiK3/d+++03zJ49G3PmzIHdbve73KRJk9CnTx+v14YPHy6sjlXdfPPNePfddzFlyhR06dIFHTt29Lvs3LlzAQCXXHKJz/d3797tddtguHAn/M6c78qfYLZPy5YtMWvWLNx///3o3r2713v+bnMcM2YMbr31VkyYMAErV67Ehx9+iB9//DG4IIiIiMIUk0hEREQmcu211+Luu+/GmjVr8Mknn/hdrmXLlvj2229RVFTkNWrEPTfOmSOMzj77bPTv39/rtX//+98+k0iqquLRRx/FtddeG3A+n5q46/DHH39Ue+/3339Ho0aNqj3K/s8///Sa2Hrnzp1wuVw+ExKPPfYYunbtir/97W8B63HeeedVi93f09Lq6tJLL0WLFi3www8/4IUXXvC7XHZ2NlatWoXx48fjsssu83rP5XLhlltuwbx58/zO+aOVUPuVL+5byIKdWyrY7TNq1Cjs3bsXU6dOxccff4wGDRr4nIfLbfDgwYiJicGIESNw6aWXok2bNkwiERFRxOOYWyIiIhOpV68epk+fjilTpgQcLTNkyBA4nU689dZbXq+/9tprUBTF84S32liwYAG2bNlS5yeepaamomvXrvjoo49w4sQJz+vbtm3DsmXLMGTIkGqfefvtt73+fvPNNwGgWjyrV6/GV199heeffz7gaCW9KYqCN954A5MnT8Ytt9zidzn3KKSHH34YN9xwg9d/N910Ey677DLPMnoS0a8+//xznHPOOTj33HOF1m3jxo2YPHkynn/+edx4443o379/wHmXbDYbbr31VmzZskW3WxqJiIiMxpFIREREJnPbbbfVuMzw4cPRr18/PPHEE8jJyUGXLl2wbNkyfPXVV5g4cWKdnsy2bNky3HXXXT7nMgrVSy+9hMGDB6N379644447UFJSgjfffBNJSUmYMmVKteWzs7Nx1VVXIT09HatXr8acOXNw8803o0uXLtXqOGDAgGojWGRw9dVX4+qrrw64zNy5c9G1a1fP3D5nuuqqqzBhwgRs3LjR6/atzz//3OcE4gMGDEDTpk3rVnHUrV/t3r0bL774ItatW4frrrsOc+bM8by3fv16AEBmZiZatGgR8m16xcXFuPnmm3H55Zfj/vvvD/pzzzzzDB566CE0aNAgpPKIiIjCFZNIREREVI3FYsHChQsxadIkfPLJJ5g1axZatWqFl156Cf/4xz/qtO7Y2FifCZ7a6N+/PzIyMjB58mRMmjQJdrsdl112GV544QWv29bcPvnkE0yaNAmPPvoobDYbxo8fj5deeqnacoqi4PnnnxdSR71t3LgRv//+O5566im/ywwfPhwTJkzAnDlzvJJIY8eO9bn8999/LySJVJd+tXLlSrz33nsAgC+++AJffPFFtWX+9a9/oV27diEnkR544AEcPXoUy5cvD2nkWVRUlKYTkRMREclGUVVVNboSRERERFqaMmUKpk6diiNHjvBLf5iaPXs2pkyZ4vdJegBw+eWX4/bbb8ftt9+uW72IiIjMhHMiERERERERERFRjZhEIiIiIiLptWnTBtdee23AZQYMGFCn+bqIiIgoMM6JRERERETS69OnD/r06RNwmSeeeEKn2hAREZkT50QiIiIiIiIiIqIa8XY2IiIiIiIiIiKqEZNIRERERERERERUI86JFASXy4WDBw8iISEBiqIYXR0iIiIiIiIiIiFUVUVRURGaNWsGiyXwWCMmkYJw8OBBNG/e3OhqEBERERERERFpYt++fTj77LMDLsMkUhASEhIAVDZo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13fHHXd43Za2aNEilJaW4qabbqrxs2PGjMHs2bOhqio+//xztGnTxuek3YWFhfjvf//rWefo0aPx6aefeo2YAoCCggLUq1fP67/BgwcHHQsRERGRCByJREL0TEtGalIM8gpKfd7eoABISYpBz7RkvatGRERBiLVbkfX0oKCWXZedj9tnra9xudn/d2FQx/1YuzWocmuiqqrX43a//fZbTJs2Db///jsKCwtRUVGB0tJSFBcXIy4ursb13X777XjyySexZs0a9OrVC7Nnz8ZNN93kd16jqoYOHYq7774bK1euxMyZMzFmzBify82fPx9t2rTBeeedBwDo2rUrWrZsiU8++QR33HGHZ7mEhARs3LjR67OxsbE11oOIiIhIJCaRSAirRcHk4R0xds5GKIDPRNLk4R1htSg+3tGGRQE6Nkv0/DvSRHp8bjLFKVNd9CJbzCLrY1GAs+JVdEhJDHldsrWLCIqiBH1LWZ92jYP64aBPu8a6Hvd/++03pKWlAQBycnIwbNgwjB07Fs899xySk5Px008/4Y477kB5eXlQSaQmTZpg+PDhmDVrFtLS0vDNN9/ghx9+CKouNpsNt9xyCyZPnoy1a9fiyy+/9LncjBkzsH37djRq1MjzmsvlwsyZM72SSBaLBW3btvW5DgVAzF+JuAjpjkHRO27v8oKfwL02tDzGyHD8ElEH0ecDI9rEbOXKxoh2YNuLw+1nHCaRSJj0zqmYPro7pi7K8ppkOzUpBpOHd0R651Rd62OzWjCoU4quZeop0uNzkylOmeqiF9liFlkfm9WC85NVDOjYBDZraHd3y9Yuegv0w4H7mkrvHw6WL1+OrVu34oEHHgAAbNiwAS6XC6+88goslsrtG8qtbG533nknRo4cibPPPhtt2rTBJZdcEvRnx4wZg5dffhl/+9vf0KBBg2rvb926Fb/88guWL1+OqKgo1KtXDxaLBfn5+bj88svx+++/49xzz62xHEVRkBRrDymuSKB33FXLKy11alqWlscYGY5fIuog+nxgRJuYrVzZGNEObHtxuP2MwyQSCZXeORUDOqagzeNLAAAXtmqABX/vresXCSIi0p6/Hw5SdPjhoKysDHl5eXA6nTh06BAyMjIwbdo0DBs2DLfeeisAoG3btnA4HHjzzTcxfPhw/Pzzz3j33XdDLmvQoEFITEzEs88+i6effjqkz3bo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1g3Tp0+H1WrFpk2bYLfbAQC7du1Ceno6nn32WcycORNHjhzB+PHjMX78eMyaNSvouj3xxBN4+eWX0a5dOzzxxBMYOXIkdu7cCZvN5lXGhx9+iJycHDz22GNBlTFmzBhcfvnleP311xEXF4ePZs9Gv/4D0LhJk2rL7tq1C6tXr8YXX3wBVVXxwAMPYM+ePWjZsmXQcfjy448/okePHp6/FUVB37598cMPP+CGG27A8ePH8dtvvyE2Nha///47zj33XKxYsQIXXngh4uLiAAA33ngjYmNj8c033yApKQnvvfcerrzySuzYsQPJycn48ccfceutt+KNN95Anz59sGvXLvz9738HUJksqkpVVUy47z4sXrwYP/74I9q2bVun+Hr27In9+/cjJyfH5y2CREREZsWRSKQpPp2NiIhEW7x4MerVq4d69eohISEBCxcuxCeffAKL5fRlzZNPPomLL74YrVq1wvDhw/HPf/4Tn376qef9vXv3on///jj33HPRrl073HjjjZ7bm6ZNm4ZRo0Zh4sSJaNeuHS6++GK88cYb+M9//hPSo93/+c9/YujQoWjfvj2mTp2KPXv2YOfOnT7LuOiii/Dvf/87qDK6deuG1q1b4/PPP4eqqvjoo48wcvRtPpedOXMmBg8ejAYNGiA5ORmDBg3ymaR65JFHPG3q/u/HH3/0W4c9e/agWTPvxxxffvnl+OGHHwAAK1euRLdu3bxe++GHH3DZZZcBqByVtG7dOnz22Wfo0aMH2rVrh5dffhn169f3jGaaOnUqHn30Udx2221o3bo1BgwYgGeeeQbvvfeeV7kVFRW45ZZb8N133+Gnn36qcwIJgCe2PXv21HldREREkYQjkYiIiMgj6+lBft+znPHDwIan+ge97E+P9Ktbxaro16+fZ76a48eP45133sHgwYOxbt06zwibTz75BG+88QZ27dqFkydPoqKiAomJiZ51PPjgg7jzzjvx8ccfo3///rjxxhvRpk0bAJW3um3ZsgVz5871LK+qKlwuF7Kzs6tNbO3P+eef7/m3+7auw4cP49xzz61zGWPGjMGsWbPQokULnDp1ClcOTMfM973n8HE6nfjoo4/w+uuve14bPXo0/vnPf2LSpEleSbeHHnqo2vxG7lvVfCkpKUFMTIzXa5dddhnuv/9+HDlyBCtWrMDll1+OlJQU/PDDD7jjjjuwatUqz0iwzZs34+TJk16jx9zr3bVrl2eZn3/+Gc8995xXTKWlpSguLkZMbCwAYPLjDyM2JgZr1qxBo0aNArZbsGL/Wrf71jsiIiKqxCQSERERecRFBX9poNWyNYmPj/cabfLhhx8iKSkJH3zwAZ599lmsXr0ao0aNwtSpUzFo0CAkJSVhwYIFeOWVVzyfmTJlCm6++WZ8/fXX+OabbzB58mQsWLAA1157LU6ePIm7774b9913X7WyW7RoEXQ93bfHAadH5rpclU9zqVqGy+XCyZMnUa9ePVgslqDKGDVqFB5++GFMmTIFo0ePhs1WvX2XLl2KAwcO4G9/854ryel04rvvvsOAAQM8rzVq1CikETyNGjXC8ePHvV4777zzkJycjBUrVmDFihV47rnnkJKSghdeeAHr16+Hw+HAxRdf7Ik/NTXVM0qpqvr163uWmTp1Kq677rpqy1RNYPXtdyX+9/mnWLp0KUaNGhV0DIHk5+cDABo3bixkfURERJGCSSTSVL1oGywG3dFmUYC0RvGef0eaSI/PTaY4ZaqLXmSLWWR9LArQOEZFy4bxIa9LtnYxO0VRYLFYUFJSAgBYtWoVWrZsiSeeeMKzjK/bktq3b4/27dvjgQcewMiRIzFr1ixce+216N69O7KysoTcFuVP1TJcLhcKCwuRmJjoNTookOTkZFx11VX49NNPMX36dETZLLCe0RlnzJiBESNGeLUDADz33HOYMWOGVxIpVN26dUNWVpbXa4qioE+fPvjqq6+wfft2XHrppYiLi0NZWRnee+899OjRwzNZd/fu3ZGXlwebzeZ3zqHu3bvjjz/+8LsdVFUFAAwdNgw3Xns1Ro0aBavVihEjRtQ6Lrdt27bBbrejU6dOp+MDEGWz/PVv33OBiaLlMUaG45eIOog+HxjRJmYrVzZGtAPbXhxuP+MwiUSaatEwDjarMVNv2awWXNPN/1D8cBfp8bnJFKdMddGLbDGLrI/NakGPxiqGdEkN+TglW7uYTVlZGfLy8gBU3s721ltv4eTJkxg+fDgAoF27dti7dy8WLFiACy+8EF9//TW+/PJLz+dLSkrw0EMP4YYbbkBaWhr279+P9evX4/rrrwdQOT9Qr169MH78eNx5552Ij49HVlYWMjMz8dZbbwmJoWoZY8aMgaqq2Lt3L7777rugy5g9ezbeeecdzy1hVUd7HTlyBIsWLcLChQvRuXNnr8/deuutuPbaa5Gfn4/k5GQAQFFRkadN3eLi4rxuAaxq0KBBuPPOO+F0OmG1Wj2vX3755fjHP/6BHj16oF69egCAvn37Yu7cuXjooYc8y/Xv3x+9e/fGNddcgxdffBHt27fHwYMH8fXXX+Paa69Fjx49MGnSJAwbNgwtWrTADTfcAIvFgs2bN2Pbtm149tlnPaO76kXbcc011+Djjz/GLbfcApvNhhtuuMFvu23atAlA5UinI0eOYNOmTYiKikLHjh09y/z444+ep/O5KYqCBnFRABDS3Fi1oeUxRobjl4g6iD4fGNEmZitXNka0A9teHG4/43BibdKUAhOnaImISBMZGRlITU1FamoqLrroIqxfvx6fffYZLr/8cgDAVVddhQceeADjx49H165dsWrVKjz11FOez1utVhw7dgy33nor2rdvj5tuugmDBw/G1KlTAVTOZbRixQrs2LEDffr0Qbdu3TBp0qRqE0nXRdUyLrvsMlx22WWYMmVKSGXExsZWm1PI7T//+Q/i4+Nx5ZVXVnvvyiuvRGxsLObMmeN5bdKkSZ42df/nnr/Il8GDB8Nms+Hbb7/1ev2yyy6D0+n0bAugMrF05muKomDJkiXo27cv/u///g/t27fHiBEjsGfPHjRt2hRAZaJq8eLFWLZsGS688EL06tULr732mt8ny91www346KOPcMstt+CLL77wW/du3bqhW7du2LBhA+bNm4du3bphyJAhXsssWLAAd911l991EBERmZWiuscCk1+FhYVISkpCQUGB31/kZOZwOLBkyRIMGTLEa34GLbV69GsAwPXdz8YrN3XRpUwKD0b0RyJfzN4XS0tLkZ2djbS0tGoTJJO+anM7mwzefvttLFy4EEuXLjW6KkJ98803+Mc//oEtW7b4nGsKiNz9x+zHRZIL+yPJwgx9MZScB29nI039nleI8gqXZw4BPZVXuPD+ysonvPy9bxtD6qClSI/PTaY4ZaqLXmSLWWR9yitcWLZfQc4PuzG2X7uQ1iVbu5C5uVQVR4vKAACNEqKrPRlPK3fffTdOnDiBoqIiJCQk6FJmVVrFferUKcyaNataAqlqefXs2v4Gq+UxRobjl4g6iD4fGNEmZitXNka0A9teHKO233s//qlrmTJiEok05TJ4oJvDGdkD7SI9PjeZ4pSpLnqRLWaR9XGq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7du3FxMnThSnTp0yLmddJFf64YcfRK9evYRarRbdunUTH3zwgWQ5n19sJxNCCPe0gSIiIiIiIiIiopaCYyIREREREREREZFVDCIREREREREREZFVDCIREREREREREZFVDCIREREREREREZFVDCIREREREREREZFVDCIREREREREREZFVDCIREREREREREZFVDCIREREREREREZFVDCIREREREREREZFVDCIRERERkcQ777yDl156CQCwfPly/O1vf3NzjoiIiMgTMIhERERELnH+/Hk8+uijiIyMhEqlQnR0NGbOnIm8vDx3Z40auOeee7B69WoolUq8/PLLmDJliruzRERERB5AJoQQ7s4EERERtW6ZmZlISkpCly5d8PLLLyM2NhbHjh3DnDlzUFVVhT179iAoKMjd2aR69Ho9cnJyEBoaCi8vL3dnh4iIiDwAWyIRERGR002fPh0qlQo//fQTRo4ciY4dO2Ls2LH4+eefcfHiRTz//PMAgFGjRkEmk5n8t3DhQgBATEwMli5dKtn+ww8/jAkTJhj/rqysxF/+8heEhoZCo9Fg2LBh2L9/v+Q7x44dwy233AKtVgt/f38MHz4cp0+fNrm9vLw8BAYGQqfTAQBWrVplNp8xMTHG761btw4DBgyARqNBp06dsGjRItTU1DTKe8NtzJo1y7hcJpPhu+++M7tvbdkfo0aNkmyzvlmzZmHUqFGN1pXL5YiMjMTp06ehVCrRr18/s3mo/92GZWmYt3/961/o3r07NBoNunXrhnfffde47MyZM5DJZEhNTbVYRmv7hIiIiJyDQSQiIiJyqvz8fGzatAlPPfUUvL29JcvCw8MxadIkfPHFFxBC4JtvvkF2djays7ORlJSEp59+2vi3PePyzJ07F19//TVWr16N33//HXFxcUhJSUF+fj4A4OLFixgxYgTUajW2bt2KgwcP4tFHH20U4DFoGPyZOHGiMV9Lly5Fhw4djH8bglU7d+7EQw89hJkzZyI9PR3vv/8+Vq1ahVdeeUWybSEExowZIym3J5kzZw40Go3N60+dOtVYlg4dOkiWrVmzBvPnz8crr7yC48eP49VXX8WLL76I1atXOzrbRERE5ARsm0xEREROdfLkSQgh0L17d5PLu3fvjmvXruHKlSsIDQ01fq5SqeDn54fw8HC70istLcWKFSuwatUqjB07FgDw4YcfYvPmzfj3v/+NOXPmYPny5QgICMDatWuhVCoBAF26dDG5vRMnTuCjjz7C7Nmz8fbbbwMAvL29jQGxgIAAKBSKRvlctGgR5s2bh8mTJwMAOnXqhJdeeglz587FggULjOtVV1dLyqlSqewqrzNt27YNu3btwmOPPYZt27ZZXb+yshIBAQHGsigUCsnyBQsW4I033sCf/vQnAEBsbKwxwGbYT0REROS52BKJiIiIXMKRwzA+88wz8PPzM/5bs2aNcdnp06dRXV2NoUOHGj9TKpVISEjA8ePHAQCpqakYPny4MYBkydy5c/HEE0+gU6dOduXx8OHD+Pvf/y7Jp6GVTllZmXG9oqIi+Pr6WtzWfffdBz8/P0RERGD8+PFIT0+XLLe0Pwzeffdd+Pn5ITg4GImJifjhhx8spimEwNNPP40FCxYgICDApjLn5eVBq9WaXFZaWorTp09jypQpkry+/PLLxm6EBkOGDJGsc+7cuUbbs7ZPiIiIyPEYRCIiIiKniouLg0wmMwZwGjp+/DgCAwPRrl07m7c5Z84cpKamGv/ddtttduWpYbc6c7Zv346dO3fihRdesGv7AFBSUoJFixZJ8nn06FGcPHlS0j3s0qVLiIyMtLitt956C6mpqfjhhx9QXV2Ne+65R7Lclv0xadIkpKamYseOHRg+fDjuuusuXLx40WyaH3/8MUpLSzFt2jSbyltTU4Pz588jNjbW5PKSkhIAda3C6uc1LS0Ne/bskaz7xRdfSNYxtX+s7RMiIiJyPHZnIyIiIqcKDg7GTTfdhHfffRd//etfJQGcnJwcrFmzBg899BBkMpnN2wwJCUFcXJzxb39/fxQUFAAAOnfuDJVKhd9++w3R0dEA6rqM7d+/3zi4dJ8+fbB69WpUV1ebbY1kaInz4osvIjAw0M5SAwMGDEBGRoYknw2Vlpbi+PHjePbZZy1uKzw83LidmTNn4tZbb5Xk3dL+MAgICDCus2jRIrzxxhtmA3tlZWV4/vnnsWzZMptaawHA3r17UVFRgeHDh5tcHhYWhsjISGRmZmLSpEkWtxUVFSUpj6nZ4aztEyIiInI8tkQiIiIip1u2bBkqKyuRkpKCHTt24Pz589i4cSNuuukmtG/fvtFg083h6+uLJ598EnPmzMHGjRuRnp6OqVOnoqysDFOmTAEAzJgxA0VFRbj33ntx4MABnDx5Ep988gkyMjKM29myZQsKCwsxffr0JuVj/vz5+Pjjj7Fo0SIcO3YMx48fx9q1a42tmv744w/cd9990Ol0xrGbzKmurkZFRQVycnLw6aefokuXLnYHS2pra1FRUYHCwkK8//77UCqV6Nq1q8l1P/vsM3Tu3Fkyw5slOTk5ePHFFzF06FCo1Wrk5OQgJycHtbW1KC4uRnl5OYC64NXixYvx9ttv48SJEzh69ChWrlyJN998066yAI7ZJ0RERGQftkQiIiIip4uPj8eBAwewYMEC3HPPPcjPz0d4eDgmTJiABQsWICgoyKHpLVmyBHq9Hg8++CCKi4sxaNAgbNq0ydiiKDg4GFu3bsWcOXMwcuRIKBQK9OvXTzKOUmlpKZYsWdLkwERKSgrWr1+Pv//973jttdegVCrRrVs3PPbYYwCAhQsXoqamBj///DP8/PwsbsvQVcvf3x8DBgzAF198YXd+li1bhmXLlkGlUiE+Ph5r1qxBVFSUyXXLysrwxhtv2Lzte++9F9u3bwcARERESJbNnz8fUVFRePjhh/HYY4/Bx8cHr7/+OubMmQNfX1/07t3b2ELMHo7YJ0RERGQfmXDkKJdERERE1OaMGjUKCxcuxKhRoxotmzVrFvr164eHH37Y5fkiIiIix2J3NiIiIiJqlqCgIKhUKpPLtFqtzQOZExERkWdjSyQiIiIiIiIiIrKKLZGIiIiIiIiIiMgqBpGIiIiIiIiIiMgqBpGIiIiIiIiIiMgqBpGIiIiIiIiIiMgqBpGIiIiIiIiIiMgqBpGIiIiIiIiIiMgqBpGIiIiIiIiIiMgqBpGIiIiIiIiIiMiq/w8695vg70DlGwAAAABJRU5ErkJggg==\n"
          },
          "metadata": {}
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "В ходе работы был реализован процесс контроля дрейфа регрессионных моделей и их автоматического переобучения на временных данных. На первой полной неделе наблюдений были обучены и сравнены несколько моделей, после чего лучшая из них последовательно проверялась на новых данных. При ухудшении качества выполнялось повторное обучение на расширенной выборке и повторный выбор лучшей модели. Результаты показали, что качество модели со временем меняется, а наиболее устойчивой на длительном промежутке оказалась модель HistGradientBoostingRegressor. Таким образом, работа подтвердила, что для временных рядов важно не только начальное обучение модели, но и постоянный мониторинг её качества с последующей адаптацией к новым данным."
      ],
      "metadata": {
        "id": "ELXlyrIbBlC9"
      }
    }
  ]
}