{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"id": "09ddd30a",
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "fb5dde4c",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" tanggal | \n",
" jumlah_penumpang_per_hari | \n",
" is_weekend | \n",
" is_holiday_nat | \n",
" flag_contiguous_off | \n",
" flag_almost_contiguous_off | \n",
" events | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 2024-01-01 | \n",
" 3166 | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 1 | \n",
" 2024-01-02 | \n",
" 2901 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2 | \n",
" 2024-01-03 | \n",
" 2795 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 3 | \n",
" 2024-01-04 | \n",
" 2784 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 4 | \n",
" 2024-01-05 | \n",
" 3219 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
"
\n",
" \n",
" | 604 | \n",
" 2025-08-27 | \n",
" 3702 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 605 | \n",
" 2025-08-28 | \n",
" 3412 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 606 | \n",
" 2025-08-29 | \n",
" 3201 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 607 | \n",
" 2025-08-30 | \n",
" 2406 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 608 | \n",
" 2025-08-31 | \n",
" 2091 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
"
\n",
"
609 rows × 7 columns
\n",
"
"
],
"text/plain": [
" tanggal jumlah_penumpang_per_hari is_weekend is_holiday_nat \\\n",
"0 2024-01-01 3166 0 1 \n",
"1 2024-01-02 2901 0 0 \n",
"2 2024-01-03 2795 0 0 \n",
"3 2024-01-04 2784 0 0 \n",
"4 2024-01-05 3219 0 0 \n",
".. ... ... ... ... \n",
"604 2025-08-27 3702 0 0 \n",
"605 2025-08-28 3412 0 0 \n",
"606 2025-08-29 3201 0 0 \n",
"607 2025-08-30 2406 1 0 \n",
"608 2025-08-31 2091 1 0 \n",
"\n",
" flag_contiguous_off flag_almost_contiguous_off events \n",
"0 0 0 0 \n",
"1 0 0 0 \n",
"2 0 0 0 \n",
"3 0 0 0 \n",
"4 0 0 0 \n",
".. ... ... ... \n",
"604 0 0 0 \n",
"605 0 0 0 \n",
"606 0 0 0 \n",
"607 0 0 0 \n",
"608 0 0 0 \n",
"\n",
"[609 rows x 7 columns]"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = pd.read_csv('lrt_daily_events_no_leak.csv')\n",
"df"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "2c081ee4",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"RangeIndex: 609 entries, 0 to 608\n",
"Data columns (total 7 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 tanggal 609 non-null object\n",
" 1 jumlah_penumpang_per_hari 609 non-null int64 \n",
" 2 is_weekend 609 non-null int64 \n",
" 3 is_holiday_nat 609 non-null int64 \n",
" 4 flag_contiguous_off 609 non-null int64 \n",
" 5 flag_almost_contiguous_off 609 non-null int64 \n",
" 6 events 609 non-null int64 \n",
"dtypes: int64(6), object(1)\n",
"memory usage: 33.4+ KB\n"
]
}
],
"source": [
"df.info()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "6ac50d54",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"RangeIndex: 609 entries, 0 to 608\n",
"Data columns (total 7 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 tanggal 609 non-null datetime64[ns]\n",
" 1 jumlah_penumpang_per_hari 609 non-null int64 \n",
" 2 is_weekend 609 non-null int64 \n",
" 3 is_holiday_nat 609 non-null int64 \n",
" 4 flag_contiguous_off 609 non-null int64 \n",
" 5 flag_almost_contiguous_off 609 non-null int64 \n",
" 6 events 609 non-null int64 \n",
"dtypes: datetime64[ns](1), int64(6)\n",
"memory usage: 33.4 KB\n"
]
}
],
"source": [
"df['tanggal'] = pd.to_datetime(df['tanggal'])\n",
"df.info()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "6a5218d6",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" jumlah_penumpang_per_hari | \n",
" is_weekend | \n",
" is_holiday_nat | \n",
" flag_contiguous_off | \n",
" flag_almost_contiguous_off | \n",
" events | \n",
"
\n",
" \n",
" | tanggal | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
"
\n",
" \n",
" \n",
" \n",
" | 2024-01-01 | \n",
" 3166 | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2024-01-02 | \n",
" 2901 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2024-01-03 | \n",
" 2795 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2024-01-04 | \n",
" 2784 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2024-01-05 | \n",
" 3219 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" jumlah_penumpang_per_hari is_weekend is_holiday_nat \\\n",
"tanggal \n",
"2024-01-01 3166 0 1 \n",
"2024-01-02 2901 0 0 \n",
"2024-01-03 2795 0 0 \n",
"2024-01-04 2784 0 0 \n",
"2024-01-05 3219 0 0 \n",
"\n",
" flag_contiguous_off flag_almost_contiguous_off events \n",
"tanggal \n",
"2024-01-01 0 0 0 \n",
"2024-01-02 0 0 0 \n",
"2024-01-03 0 0 0 \n",
"2024-01-04 0 0 0 \n",
"2024-01-05 0 0 0 "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# set 'tanggal' as the dataframe index and sort by it\n",
"df.set_index('tanggal', inplace=True)\n",
"df.sort_index(inplace=True)\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "be623133",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"jumlah_penumpang_per_hari 6546\n",
"is_weekend 1\n",
"is_holiday_nat 1\n",
"flag_contiguous_off 0\n",
"flag_almost_contiguous_off 0\n",
"events 0\n",
"Name: 2024-08-17 00:00:00, dtype: int64"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# see df row on df['events'] = 2024-08-17\n",
"df.loc['2024-08-17']"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "2f41917c",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" jumlah_penumpang_per_hari | \n",
" is_weekend | \n",
" is_holiday_nat | \n",
" flag_contiguous_off | \n",
" flag_almost_contiguous_off | \n",
" events | \n",
"
\n",
" \n",
" | tanggal | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
"
\n",
" \n",
" \n",
" \n",
" | 2024-01-01 | \n",
" 3166 | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2024-01-02 | \n",
" 2901 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2024-01-03 | \n",
" 2795 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2024-01-04 | \n",
" 2784 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2024-01-05 | \n",
" 3219 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" jumlah_penumpang_per_hari is_weekend is_holiday_nat \\\n",
"tanggal \n",
"2024-01-01 3166 0 1 \n",
"2024-01-02 2901 0 0 \n",
"2024-01-03 2795 0 0 \n",
"2024-01-04 2784 0 0 \n",
"2024-01-05 3219 0 0 \n",
"\n",
" flag_contiguous_off flag_almost_contiguous_off events \n",
"tanggal \n",
"2024-01-01 0 0 0 \n",
"2024-01-02 0 0 0 \n",
"2024-01-03 0 0 0 \n",
"2024-01-04 0 0 0 \n",
"2024-01-05 0 0 0 "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" jumlah_penumpang_per_hari | \n",
" is_weekend | \n",
" is_holiday_nat | \n",
" flag_contiguous_off | \n",
" flag_almost_contiguous_off | \n",
" events | \n",
"
\n",
" \n",
" | tanggal | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
"
\n",
" \n",
" \n",
" \n",
" | 2025-08-27 | \n",
" 3702 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-28 | \n",
" 3412 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-29 | \n",
" 3201 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-30 | \n",
" 2406 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-31 | \n",
" 2091 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" jumlah_penumpang_per_hari is_weekend is_holiday_nat \\\n",
"tanggal \n",
"2025-08-27 3702 0 0 \n",
"2025-08-28 3412 0 0 \n",
"2025-08-29 3201 0 0 \n",
"2025-08-30 2406 1 0 \n",
"2025-08-31 2091 1 0 \n",
"\n",
" flag_contiguous_off flag_almost_contiguous_off events \n",
"tanggal \n",
"2025-08-27 0 0 0 \n",
"2025-08-28 0 0 0 \n",
"2025-08-29 0 0 0 \n",
"2025-08-30 0 0 0 \n",
"2025-08-31 0 0 0 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df_train = df.iloc[:-56]\n",
"df_test = df.iloc[-56:]\n",
"display(df_train.head())\n",
"display(df_test.tail())"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "a1b355cb",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"C:\\Users\\Muhammad Hafiz F\\AppData\\Local\\Temp\\ipykernel_47060\\662747253.py:5: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" df_train[f'lag_{lag}'] = df_train[y_col].shift(lag)\n",
"C:\\Users\\Muhammad Hafiz F\\AppData\\Local\\Temp\\ipykernel_47060\\662747253.py:5: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" df_train[f'lag_{lag}'] = df_train[y_col].shift(lag)\n",
"C:\\Users\\Muhammad Hafiz F\\AppData\\Local\\Temp\\ipykernel_47060\\662747253.py:5: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" df_train[f'lag_{lag}'] = df_train[y_col].shift(lag)\n",
"C:\\Users\\Muhammad Hafiz F\\AppData\\Local\\Temp\\ipykernel_47060\\662747253.py:5: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" df_train[f'lag_{lag}'] = df_train[y_col].shift(lag)\n",
"C:\\Users\\Muhammad Hafiz F\\AppData\\Local\\Temp\\ipykernel_47060\\662747253.py:5: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" df_train[f'lag_{lag}'] = df_train[y_col].shift(lag)\n",
"C:\\Users\\Muhammad Hafiz F\\AppData\\Local\\Temp\\ipykernel_47060\\662747253.py:8: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" df_train['roll_mean_7'] = df_train[y_col].rolling(window=7, min_periods=7).mean()\n",
"C:\\Users\\Muhammad Hafiz F\\AppData\\Local\\Temp\\ipykernel_47060\\662747253.py:9: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" df_train['roll_mean_14'] = df_train[y_col].rolling(window=14, min_periods=14).mean()\n",
"C:\\Users\\Muhammad Hafiz F\\AppData\\Local\\Temp\\ipykernel_47060\\662747253.py:12: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" df_train['roll_std_7'] = df_train[y_col].rolling(window=7, min_periods=7).std()\n",
"C:\\Users\\Muhammad Hafiz F\\AppData\\Local\\Temp\\ipykernel_47060\\662747253.py:15: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n",
" df_train['diff_seasonal_7'] = df_train[y_col] - df_train[y_col].shift(7)\n"
]
}
],
"source": [
"y_col = 'jumlah_penumpang_per_hari'\n",
"\n",
"# 1. Lag features: 1, 2, 3, 7, 14\n",
"for lag in [1, 2, 3, 7, 14]:\n",
" df_train[f'lag_{lag}'] = df_train[y_col].shift(lag)\n",
"\n",
"# 2. Rolling means: 7-day & 14-day (past window only)\n",
"df_train['roll_mean_7'] = df_train[y_col].rolling(window=7, min_periods=7).mean()\n",
"df_train['roll_mean_14'] = df_train[y_col].rolling(window=14, min_periods=14).mean()\n",
"\n",
"# 3. Rolling std: 7-day\n",
"df_train['roll_std_7'] = df_train[y_col].rolling(window=7, min_periods=7).std()\n",
"\n",
"# 4. Seasonal difference (lag 7)\n",
"df_train['diff_seasonal_7'] = df_train[y_col] - df_train[y_col].shift(7)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "02566ee0",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" jumlah_penumpang_per_hari | \n",
" is_weekend | \n",
" is_holiday_nat | \n",
" flag_contiguous_off | \n",
" flag_almost_contiguous_off | \n",
" events | \n",
" lag_1 | \n",
" lag_2 | \n",
" lag_3 | \n",
" lag_7 | \n",
" lag_14 | \n",
" roll_mean_7 | \n",
" roll_mean_14 | \n",
" roll_std_7 | \n",
" diff_seasonal_7 | \n",
"
\n",
" \n",
" | tanggal | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
" | \n",
"
\n",
" \n",
" \n",
" \n",
" | 2024-01-01 | \n",
" 3166 | \n",
" 0 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
"
\n",
" \n",
" | 2024-01-02 | \n",
" 2901 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3166.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
"
\n",
" \n",
" | 2024-01-03 | \n",
" 2795 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2901.0 | \n",
" 3166.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
"
\n",
" \n",
" | 2024-01-04 | \n",
" 2784 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2795.0 | \n",
" 2901.0 | \n",
" 3166.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
"
\n",
" \n",
" | 2024-01-05 | \n",
" 3219 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2784.0 | \n",
" 2795.0 | \n",
" 2901.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
"
\n",
" \n",
" | 2024-01-06 | \n",
" 2863 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3219.0 | \n",
" 2784.0 | \n",
" 2795.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
"
\n",
" \n",
" | 2024-01-07 | \n",
" 2405 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2863.0 | \n",
" 3219.0 | \n",
" 2784.0 | \n",
" NaN | \n",
" NaN | \n",
" 2876.142857 | \n",
" NaN | \n",
" 270.619307 | \n",
" NaN | \n",
"
\n",
" \n",
" | 2024-01-08 | \n",
" 2959 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2405.0 | \n",
" 2863.0 | \n",
" 3219.0 | \n",
" 3166.0 | \n",
" NaN | \n",
" 2846.571429 | \n",
" NaN | \n",
" 243.630771 | \n",
" -207.0 | \n",
"
\n",
" \n",
" | 2024-01-09 | \n",
" 3057 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2959.0 | \n",
" 2405.0 | \n",
" 2863.0 | \n",
" 2901.0 | \n",
" NaN | \n",
" 2868.857143 | \n",
" NaN | \n",
" 256.247555 | \n",
" 156.0 | \n",
"
\n",
" \n",
" | 2024-01-10 | \n",
" 2993 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3057.0 | \n",
" 2959.0 | \n",
" 2405.0 | \n",
" 2795.0 | \n",
" NaN | \n",
" 2897.142857 | \n",
" NaN | \n",
" 257.660260 | \n",
" 198.0 | \n",
"
\n",
" \n",
" | 2024-01-11 | \n",
" 2952 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2993.0 | \n",
" 3057.0 | \n",
" 2959.0 | \n",
" 2784.0 | \n",
" NaN | \n",
" 2921.142857 | \n",
" NaN | \n",
" 253.149777 | \n",
" 168.0 | \n",
"
\n",
" \n",
" | 2024-01-12 | \n",
" 3242 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2952.0 | \n",
" 2993.0 | \n",
" 3057.0 | \n",
" 3219.0 | \n",
" NaN | \n",
" 2924.428571 | \n",
" NaN | \n",
" 257.767245 | \n",
" 23.0 | \n",
"
\n",
" \n",
" | 2024-01-13 | \n",
" 3450 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3242.0 | \n",
" 2952.0 | \n",
" 2993.0 | \n",
" 2863.0 | \n",
" NaN | \n",
" 3008.285714 | \n",
" NaN | \n",
" 321.944982 | \n",
" 587.0 | \n",
"
\n",
" \n",
" | 2024-01-14 | \n",
" 2729 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3450.0 | \n",
" 3242.0 | \n",
" 2952.0 | \n",
" 2405.0 | \n",
" NaN | \n",
" 3054.571429 | \n",
" 2965.357143 | \n",
" 231.279670 | \n",
" 324.0 | \n",
"
\n",
" \n",
" | 2024-01-15 | \n",
" 3002 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2729.0 | \n",
" 3450.0 | \n",
" 3242.0 | \n",
" 2959.0 | \n",
" 3166.0 | \n",
" 3060.714286 | \n",
" 2953.642857 | \n",
" 228.876760 | \n",
" 43.0 | \n",
"
\n",
" \n",
" | 2024-01-16 | \n",
" 2944 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3002.0 | \n",
" 2729.0 | \n",
" 3450.0 | \n",
" 3057.0 | \n",
" 2901.0 | \n",
" 3044.571429 | \n",
" 2956.714286 | \n",
" 233.127903 | \n",
" -113.0 | \n",
"
\n",
" \n",
" | 2024-01-17 | \n",
" 3402 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2944.0 | \n",
" 3002.0 | \n",
" 2729.0 | \n",
" 2993.0 | \n",
" 2795.0 | \n",
" 3103.000000 | \n",
" 3000.071429 | \n",
" 266.861387 | \n",
" 409.0 | \n",
"
\n",
" \n",
" | 2024-01-18 | \n",
" 3029 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3402.0 | \n",
" 2944.0 | \n",
" 3002.0 | \n",
" 2952.0 | \n",
" 2784.0 | \n",
" 3114.000000 | \n",
" 3017.571429 | \n",
" 261.125130 | \n",
" 77.0 | \n",
"
\n",
" \n",
" | 2024-01-19 | \n",
" 2835 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3029.0 | \n",
" 3402.0 | \n",
" 2944.0 | \n",
" 3242.0 | \n",
" 3219.0 | \n",
" 3055.857143 | \n",
" 2990.142857 | \n",
" 272.919664 | \n",
" -407.0 | \n",
"
\n",
" \n",
" | 2024-01-20 | \n",
" 3268 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2835.0 | \n",
" 3029.0 | \n",
" 3402.0 | \n",
" 3450.0 | \n",
" 2863.0 | \n",
" 3029.857143 | \n",
" 3019.071429 | \n",
" 235.171872 | \n",
" -182.0 | \n",
"
\n",
" \n",
" | 2024-01-21 | \n",
" 2830 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3268.0 | \n",
" 2835.0 | \n",
" 3029.0 | \n",
" 2729.0 | \n",
" 2405.0 | \n",
" 3044.285714 | \n",
" 3049.428571 | \n",
" 215.949619 | \n",
" 101.0 | \n",
"
\n",
" \n",
" | 2024-01-22 | \n",
" 2900 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2830.0 | \n",
" 3268.0 | \n",
" 2835.0 | \n",
" 3002.0 | \n",
" 2959.0 | \n",
" 3029.714286 | \n",
" 3045.214286 | \n",
" 222.616797 | \n",
" -102.0 | \n",
"
\n",
" \n",
" | 2024-01-23 | \n",
" 2963 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2900.0 | \n",
" 2830.0 | \n",
" 3268.0 | \n",
" 2944.0 | \n",
" 3057.0 | \n",
" 3032.428571 | \n",
" 3038.500000 | \n",
" 221.510615 | \n",
" 19.0 | \n",
"
\n",
" \n",
" | 2024-01-24 | \n",
" 3645 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2963.0 | \n",
" 2900.0 | \n",
" 2830.0 | \n",
" 3402.0 | \n",
" 2993.0 | \n",
" 3067.142857 | \n",
" 3085.071429 | \n",
" 295.698849 | \n",
" 243.0 | \n",
"
\n",
" \n",
" | 2024-01-25 | \n",
" 3028 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3645.0 | \n",
" 2963.0 | \n",
" 2900.0 | \n",
" 3029.0 | \n",
" 2952.0 | \n",
" 3067.000000 | \n",
" 3090.500000 | \n",
" 295.720589 | \n",
" -1.0 | \n",
"
\n",
" \n",
" | 2024-01-26 | \n",
" 3454 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3028.0 | \n",
" 3645.0 | \n",
" 2963.0 | \n",
" 2835.0 | \n",
" 3242.0 | \n",
" 3155.428571 | \n",
" 3105.642857 | \n",
" 307.113365 | \n",
" 619.0 | \n",
"
\n",
" \n",
" | 2024-01-27 | \n",
" 2896 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3454.0 | \n",
" 3028.0 | \n",
" 3645.0 | \n",
" 3268.0 | \n",
" 3450.0 | \n",
" 3102.285714 | \n",
" 3066.071429 | \n",
" 316.431517 | \n",
" -372.0 | \n",
"
\n",
" \n",
" | 2024-01-28 | \n",
" 2533 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2896.0 | \n",
" 3454.0 | \n",
" 3028.0 | \n",
" 2830.0 | \n",
" 2729.0 | \n",
" 3059.857143 | \n",
" 3052.071429 | \n",
" 373.746540 | \n",
" -297.0 | \n",
"
\n",
" \n",
" | 2024-01-29 | \n",
" 3031 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 2533.0 | \n",
" 2896.0 | \n",
" 3454.0 | \n",
" 2900.0 | \n",
" 3002.0 | \n",
" 3078.571429 | \n",
" 3054.142857 | \n",
" 367.637891 | \n",
" 131.0 | \n",
"
\n",
" \n",
" | 2024-01-30 | \n",
" 3010 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 3031.0 | \n",
" 2533.0 | \n",
" 2896.0 | \n",
" 2963.0 | \n",
" 2944.0 | \n",
" 3085.285714 | \n",
" 3058.857143 | \n",
" 365.598922 | \n",
" 47.0 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" jumlah_penumpang_per_hari is_weekend is_holiday_nat \\\n",
"tanggal \n",
"2024-01-01 3166 0 1 \n",
"2024-01-02 2901 0 0 \n",
"2024-01-03 2795 0 0 \n",
"2024-01-04 2784 0 0 \n",
"2024-01-05 3219 0 0 \n",
"2024-01-06 2863 1 0 \n",
"2024-01-07 2405 1 0 \n",
"2024-01-08 2959 0 0 \n",
"2024-01-09 3057 0 0 \n",
"2024-01-10 2993 0 0 \n",
"2024-01-11 2952 0 0 \n",
"2024-01-12 3242 0 0 \n",
"2024-01-13 3450 1 0 \n",
"2024-01-14 2729 1 0 \n",
"2024-01-15 3002 0 0 \n",
"2024-01-16 2944 0 0 \n",
"2024-01-17 3402 0 0 \n",
"2024-01-18 3029 0 0 \n",
"2024-01-19 2835 0 0 \n",
"2024-01-20 3268 1 0 \n",
"2024-01-21 2830 1 0 \n",
"2024-01-22 2900 0 0 \n",
"2024-01-23 2963 0 0 \n",
"2024-01-24 3645 0 0 \n",
"2024-01-25 3028 0 0 \n",
"2024-01-26 3454 0 0 \n",
"2024-01-27 2896 1 0 \n",
"2024-01-28 2533 1 0 \n",
"2024-01-29 3031 0 0 \n",
"2024-01-30 3010 0 0 \n",
"\n",
" flag_contiguous_off flag_almost_contiguous_off events lag_1 \\\n",
"tanggal \n",
"2024-01-01 0 0 0 NaN \n",
"2024-01-02 0 0 0 3166.0 \n",
"2024-01-03 0 0 0 2901.0 \n",
"2024-01-04 0 0 0 2795.0 \n",
"2024-01-05 0 0 0 2784.0 \n",
"2024-01-06 0 0 0 3219.0 \n",
"2024-01-07 0 0 0 2863.0 \n",
"2024-01-08 0 0 0 2405.0 \n",
"2024-01-09 0 0 0 2959.0 \n",
"2024-01-10 0 0 0 3057.0 \n",
"2024-01-11 0 0 0 2993.0 \n",
"2024-01-12 0 0 0 2952.0 \n",
"2024-01-13 0 0 0 3242.0 \n",
"2024-01-14 0 0 0 3450.0 \n",
"2024-01-15 0 0 0 2729.0 \n",
"2024-01-16 0 0 0 3002.0 \n",
"2024-01-17 0 0 0 2944.0 \n",
"2024-01-18 0 0 0 3402.0 \n",
"2024-01-19 0 0 0 3029.0 \n",
"2024-01-20 0 0 0 2835.0 \n",
"2024-01-21 0 0 0 3268.0 \n",
"2024-01-22 0 0 0 2830.0 \n",
"2024-01-23 0 0 0 2900.0 \n",
"2024-01-24 0 0 0 2963.0 \n",
"2024-01-25 0 0 0 3645.0 \n",
"2024-01-26 0 0 0 3028.0 \n",
"2024-01-27 0 0 0 3454.0 \n",
"2024-01-28 0 0 0 2896.0 \n",
"2024-01-29 0 0 0 2533.0 \n",
"2024-01-30 0 0 0 3031.0 \n",
"\n",
" lag_2 lag_3 lag_7 lag_14 roll_mean_7 roll_mean_14 \\\n",
"tanggal \n",
"2024-01-01 NaN NaN NaN NaN NaN NaN \n",
"2024-01-02 NaN NaN NaN NaN NaN NaN \n",
"2024-01-03 3166.0 NaN NaN NaN NaN NaN \n",
"2024-01-04 2901.0 3166.0 NaN NaN NaN NaN \n",
"2024-01-05 2795.0 2901.0 NaN NaN NaN NaN \n",
"2024-01-06 2784.0 2795.0 NaN NaN NaN NaN \n",
"2024-01-07 3219.0 2784.0 NaN NaN 2876.142857 NaN \n",
"2024-01-08 2863.0 3219.0 3166.0 NaN 2846.571429 NaN \n",
"2024-01-09 2405.0 2863.0 2901.0 NaN 2868.857143 NaN \n",
"2024-01-10 2959.0 2405.0 2795.0 NaN 2897.142857 NaN \n",
"2024-01-11 3057.0 2959.0 2784.0 NaN 2921.142857 NaN \n",
"2024-01-12 2993.0 3057.0 3219.0 NaN 2924.428571 NaN \n",
"2024-01-13 2952.0 2993.0 2863.0 NaN 3008.285714 NaN \n",
"2024-01-14 3242.0 2952.0 2405.0 NaN 3054.571429 2965.357143 \n",
"2024-01-15 3450.0 3242.0 2959.0 3166.0 3060.714286 2953.642857 \n",
"2024-01-16 2729.0 3450.0 3057.0 2901.0 3044.571429 2956.714286 \n",
"2024-01-17 3002.0 2729.0 2993.0 2795.0 3103.000000 3000.071429 \n",
"2024-01-18 2944.0 3002.0 2952.0 2784.0 3114.000000 3017.571429 \n",
"2024-01-19 3402.0 2944.0 3242.0 3219.0 3055.857143 2990.142857 \n",
"2024-01-20 3029.0 3402.0 3450.0 2863.0 3029.857143 3019.071429 \n",
"2024-01-21 2835.0 3029.0 2729.0 2405.0 3044.285714 3049.428571 \n",
"2024-01-22 3268.0 2835.0 3002.0 2959.0 3029.714286 3045.214286 \n",
"2024-01-23 2830.0 3268.0 2944.0 3057.0 3032.428571 3038.500000 \n",
"2024-01-24 2900.0 2830.0 3402.0 2993.0 3067.142857 3085.071429 \n",
"2024-01-25 2963.0 2900.0 3029.0 2952.0 3067.000000 3090.500000 \n",
"2024-01-26 3645.0 2963.0 2835.0 3242.0 3155.428571 3105.642857 \n",
"2024-01-27 3028.0 3645.0 3268.0 3450.0 3102.285714 3066.071429 \n",
"2024-01-28 3454.0 3028.0 2830.0 2729.0 3059.857143 3052.071429 \n",
"2024-01-29 2896.0 3454.0 2900.0 3002.0 3078.571429 3054.142857 \n",
"2024-01-30 2533.0 2896.0 2963.0 2944.0 3085.285714 3058.857143 \n",
"\n",
" roll_std_7 diff_seasonal_7 \n",
"tanggal \n",
"2024-01-01 NaN NaN \n",
"2024-01-02 NaN NaN \n",
"2024-01-03 NaN NaN \n",
"2024-01-04 NaN NaN \n",
"2024-01-05 NaN NaN \n",
"2024-01-06 NaN NaN \n",
"2024-01-07 270.619307 NaN \n",
"2024-01-08 243.630771 -207.0 \n",
"2024-01-09 256.247555 156.0 \n",
"2024-01-10 257.660260 198.0 \n",
"2024-01-11 253.149777 168.0 \n",
"2024-01-12 257.767245 23.0 \n",
"2024-01-13 321.944982 587.0 \n",
"2024-01-14 231.279670 324.0 \n",
"2024-01-15 228.876760 43.0 \n",
"2024-01-16 233.127903 -113.0 \n",
"2024-01-17 266.861387 409.0 \n",
"2024-01-18 261.125130 77.0 \n",
"2024-01-19 272.919664 -407.0 \n",
"2024-01-20 235.171872 -182.0 \n",
"2024-01-21 215.949619 101.0 \n",
"2024-01-22 222.616797 -102.0 \n",
"2024-01-23 221.510615 19.0 \n",
"2024-01-24 295.698849 243.0 \n",
"2024-01-25 295.720589 -1.0 \n",
"2024-01-26 307.113365 619.0 \n",
"2024-01-27 316.431517 -372.0 \n",
"2024-01-28 373.746540 -297.0 \n",
"2024-01-29 367.637891 131.0 \n",
"2024-01-30 365.598922 47.0 "
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_train.head(30)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "f3219a8f",
"metadata": {},
"outputs": [],
"source": [
"fe_cols = [\n",
" 'lag_1', 'lag_2', 'lag_3', 'lag_7', 'lag_14',\n",
" 'roll_mean_7', 'roll_mean_14',\n",
" 'roll_std_7',\n",
" 'diff_seasonal_7'\n",
"]\n"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "9c7aa123",
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"\n",
"y_col = 'jumlah_penumpang_per_hari'\n",
"\n",
"def make_y_features_one_step(y_history: pd.Series) -> dict:\n",
" \"\"\"\n",
" Given history of y up to time t-1 (last element), \n",
" build features for time t (next step).\n",
" \"\"\"\n",
" out = {}\n",
" # --- lags ---\n",
" for lag in [1, 2, 3, 7, 14]:\n",
" if len(y_history) >= lag:\n",
" out[f'lag_{lag}'] = y_history.iloc[-lag]\n",
" else:\n",
" out[f'lag_{lag}'] = np.nan\n",
"\n",
" # --- rolling mean 7 & 14 ---\n",
" if len(y_history) >= 7:\n",
" window7 = y_history.iloc[-7:]\n",
" out['roll_mean_7'] = window7.mean()\n",
" out['roll_std_7'] = window7.std()\n",
" else:\n",
" out['roll_mean_7'] = np.nan\n",
" out['roll_std_7'] = np.nan\n",
"\n",
" if len(y_history) >= 14:\n",
" window14 = y_history.iloc[-14:]\n",
" out['roll_mean_14'] = window14.mean()\n",
" else:\n",
" out['roll_mean_14'] = np.nan\n",
"\n",
" # --- seasonal diff 7 (y_t-1 - y_t-8) ---\n",
" if len(y_history) >= 8:\n",
" out['diff_seasonal_7'] = y_history.iloc[-1] - y_history.iloc[-8]\n",
" else:\n",
" out['diff_seasonal_7'] = np.nan\n",
"\n",
" return out\n"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "e15adf06",
"metadata": {},
"outputs": [],
"source": [
"# After you engineered features globally:\n",
"# df_train has y_col + fe_cols (+ maybe exogenous features)\n",
"df_fe = df_train.dropna().copy()\n",
"\n",
"fe_cols = [\n",
" 'lag_1', 'lag_2', 'lag_3', 'lag_7', 'lag_14',\n",
" 'roll_mean_7', 'roll_mean_14',\n",
" 'roll_std_7',\n",
" 'diff_seasonal_7'\n",
"]\n",
"\n",
"# \"Base\" (non-y, non-y-derived) features that are safe in future\n",
"base_cols = [c for c in df_fe.columns if c not in fe_cols + [y_col]]\n"
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "bee97eda",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['is_weekend',\n",
" 'is_holiday_nat',\n",
" 'flag_contiguous_off',\n",
" 'flag_almost_contiguous_off',\n",
" 'events']"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"base_cols"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "a0cf524d",
"metadata": {},
"outputs": [],
"source": [
"from sklearn.base import clone\n",
"from sklearn.metrics import mean_absolute_percentage_error\n",
"\n",
"def expanding_walk_forward_cv(\n",
" df_fe: pd.DataFrame,\n",
" y_col: str,\n",
" fe_cols: list,\n",
" base_cols: list,\n",
" model,\n",
" val_len: int = 7,\n",
" init_train_mult: int = 12,\n",
"):\n",
" \"\"\"\n",
" Expanding-window CV with iterative one-step-ahead forecasting on each val fold.\n",
" \n",
" - Train uses full engineered features (base + fe_cols).\n",
" - Validation does NOT use precomputed y-based features.\n",
" Instead, it generates them iteratively using history (train y + preds).\n",
" \"\"\"\n",
" n = len(df_fe)\n",
" init_train_len = init_train_mult * val_len # 12 * 7 by default\n",
"\n",
" if init_train_len + val_len > n:\n",
" raise ValueError(\"Not enough data for initial train + one validation window.\")\n",
"\n",
" all_fold_preds = [] # list of pd.Series\n",
" all_fold_true = [] # list of pd.Series\n",
" all_fold_idx = [] # indices of validation windows\n",
" all_fold_mape = [] # example metric\n",
"\n",
" fold = 0\n",
" start_train = 0\n",
" end_train = init_train_len\n",
"\n",
" while end_train + val_len <= n:\n",
" start_val = end_train\n",
" end_val = end_train + val_len\n",
"\n",
" print(f\"Fold {fold}: train [{start_train}:{end_train}), val [{start_val}:{end_val})\")\n",
"\n",
" train_df = df_fe.iloc[start_train:end_train]\n",
" val_df = df_fe.iloc[start_val:end_val]\n",
"\n",
" # --- training data uses ALL features precomputed (no leakage here) ---\n",
" X_train = train_df[base_cols + fe_cols]\n",
" y_train = train_df[y_col]\n",
"\n",
" # fresh model per fold\n",
" mdl = clone(model)\n",
" mdl.fit(X_train, y_train)\n",
"\n",
" # --- validation: we only keep base features and true y for scoring ---\n",
" X_val_base = val_df[base_cols].reset_index(drop=True)\n",
" y_val_true = val_df[y_col].reset_index(drop=True)\n",
"\n",
" # drop engineered columns conceptually (we won't use them)\n",
" # we rebuild them on the fly from y_history\n",
"\n",
" # history starts as ALL training y (only real values)\n",
" y_history = train_df[y_col].copy()\n",
"\n",
" preds = []\n",
"\n",
" for t in range(val_len):\n",
" # base features for this step, may be empty\n",
" base_feats_dict = X_val_base.iloc[t].to_dict()\n",
"\n",
" # y-based features from history (train + previous preds)\n",
" y_feats_dict = make_y_features_one_step(y_history)\n",
"\n",
" # merge\n",
" x_row_dict = {**base_feats_dict, **y_feats_dict}\n",
"\n",
" # ensure same column order as X_train\n",
" x_row = pd.DataFrame([x_row_dict])[X_train.columns]\n",
"\n",
" # predict one step ahead\n",
" y_pred_t = mdl.predict(x_row)[0]\n",
" preds.append(y_pred_t)\n",
"\n",
" # update history with prediction (NOT true y; no leakage)\n",
" # preserve index alignment by using val_df index\n",
" y_history = pd.concat(\n",
" [y_history, pd.Series([y_pred_t], index=[val_df.index[t]])]\n",
" )\n",
"\n",
" preds = pd.Series(preds, index=val_df.index)\n",
" mape = mean_absolute_percentage_error(y_val_true.values, preds.values)\n",
"\n",
" all_fold_preds.append(preds)\n",
" all_fold_true.append(y_val_true.set_axis(val_df.index))\n",
" all_fold_idx.append((start_val, end_val))\n",
" all_fold_mape.append(mape)\n",
"\n",
" print(f\" Fold {fold} MAPE: {mape:.4f}\")\n",
"\n",
" # expanding window: extend train to include this validation block\n",
" end_train = end_val\n",
" fold += 1\n",
"\n",
" # stop if no more full val blocks\n",
" if end_train + val_len > n:\n",
" break\n",
"\n",
" # concat all predictions / truths if you want one long series\n",
" preds_concat = pd.concat(all_fold_preds).sort_index()\n",
" true_concat = pd.concat(all_fold_true).sort_index()\n",
"\n",
" overall_mape = mean_absolute_percentage_error(true_concat.values, preds_concat.values)\n",
"\n",
" results = {\n",
" \"fold_indices\": all_fold_idx,\n",
" \"fold_mape\": all_fold_mape,\n",
" \"overall_mape\": overall_mape,\n",
" \"y_true\": true_concat,\n",
" \"y_pred\": preds_concat,\n",
" }\n",
" return results\n"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "00bd721e",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4259\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0824\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1116\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0873\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0572\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0734\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0656\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0701\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0765\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0855\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3711\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.2244\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.2562\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1525\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.0768\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0842\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0814\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0608\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0635\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2391\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3383\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0774\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0727\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.3235\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.2921\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1111\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0992\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1085\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4846\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2386\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0620\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0829\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0655\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1338\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1095\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0932\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1876\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1189\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2199\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2282\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0756\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0804\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1063\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1402\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2496\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2012\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1642\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1073\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0700\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.1021\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1329\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1902\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1325\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0906\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1682\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2515\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0723\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0581\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1544\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0752\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1152\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0827\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1680\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9767\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.4159\n",
"Overall MAPE: 0.162676140666008\n"
]
}
],
"source": [
"from xgboost import XGBRegressor\n",
"\n",
"model = XGBRegressor(\n",
" n_estimators=500,\n",
" max_depth=4,\n",
" learning_rate=0.05,\n",
" subsample=0.9,\n",
" colsample_bytree=0.9,\n",
" objective='reg:squarederror',\n",
" random_state=1618\n",
")\n",
"\n",
"res = expanding_walk_forward_cv(\n",
" df_fe=df_fe,\n",
" y_col=y_col,\n",
" fe_cols=fe_cols,\n",
" base_cols=base_cols,\n",
" model=model,\n",
" val_len=7,\n",
" init_train_mult=12\n",
")\n",
"\n",
"print(\"Overall MAPE:\", res[\"overall_mape\"])\n"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "412d42b7",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"c:\\Users\\Muhammad Hafiz F\\Documents\\ali\\2025-2026 (Sem 5)\\MPDW\\Projek UAS\\.venv\\Lib\\site-packages\\tqdm\\auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
" from .autonotebook import tqdm as notebook_tqdm\n"
]
}
],
"source": [
"import optuna\n",
"from xgboost import XGBRegressor\n",
"\n",
"def objective(trial):\n",
" # ---- Hyperparameter search space ----\n",
" params = {\n",
" \"n_estimators\": trial.suggest_int(\"n_estimators\", 200, 1200),\n",
" \"max_depth\": trial.suggest_int(\"max_depth\", 2, 10),\n",
" \"learning_rate\": trial.suggest_float(\"learning_rate\", 0.005, 0.3, log=True),\n",
" \"subsample\": trial.suggest_float(\"subsample\", 0.5, 1.0),\n",
" \"colsample_bytree\": trial.suggest_float(\"colsample_bytree\", 0.5, 1.0),\n",
" \"min_child_weight\": trial.suggest_float(\"min_child_weight\", 1.0, 20.0),\n",
" \"gamma\": trial.suggest_float(\"gamma\", 0.0, 10.0),\n",
" \"reg_lambda\": trial.suggest_float(\"reg_lambda\", 1e-3, 10.0, log=True),\n",
" \"reg_alpha\": trial.suggest_float(\"reg_alpha\", 1e-3, 10.0, log=True),\n",
" \"objective\": \"reg:squarederror\",\n",
" \"random_state\": 1618,\n",
" \"n_jobs\": -1,\n",
" }\n",
"\n",
" model = XGBRegressor(**params)\n",
"\n",
" # ---- Expanding-window CV with iterative 1-step forecasting ----\n",
" res = expanding_walk_forward_cv(\n",
" df_fe=df_fe,\n",
" y_col=y_col,\n",
" fe_cols=fe_cols,\n",
" base_cols=base_cols,\n",
" model=model,\n",
" val_len=7,\n",
" init_train_mult=12,\n",
" )\n",
"\n",
" overall_mape = res[\"overall_mape\"]\n",
"\n",
" # Optuna minimizes by default if direction=\"minimize\"\n",
" return overall_mape\n"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "67ef1a28",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"[I 2025-11-21 06:40:38,847] A new study created in memory with name: xgb_lrt_walkforward\n",
" 0%| | 0/50 [00:00, ?it/s]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3471\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0473\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0231\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0953\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0828\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0939\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0809\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0682\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0800\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1413\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2851\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.9467\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.3788\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.2204\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.0591\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0748\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0947\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0694\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1207\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3024\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2551\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.1148\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0979\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.0992\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0453\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0951\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1026\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.0988\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.3621\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0623\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0731\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0650\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0765\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0962\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0700\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0818\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1095\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0584\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2496\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.0986\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0794\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0778\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0727\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0682\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2679\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2423\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1830\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.2678\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0722\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0668\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1471\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1883\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1682\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0925\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1712\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1066\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0981\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0647\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1266\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0771\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1256\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0462\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1340\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 0. Best value: 0.156944: 2%|▏ | 1/50 [00:07<05:55, 7.25s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 1.0767\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.2567\n",
"[I 2025-11-21 06:40:46,099] Trial 0 finished with value: 0.15694431960582733 and parameters: {'n_estimators': 210, 'max_depth': 10, 'learning_rate': 0.193605567663364, 'subsample': 0.6732235757665959, 'colsample_bytree': 0.6108750403829389, 'min_child_weight': 3.9163064141563497, 'gamma': 9.944907411565268, 'reg_lambda': 0.0026796142875708784, 'reg_alpha': 0.15975307450353282}. Best is trial 0 with value: 0.15694431960582733.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4841\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0812\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.2163\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0415\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0572\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0931\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.1533\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0573\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0839\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1405\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3245\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7466\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1302\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.2399\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.0889\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0874\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1407\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0525\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0748\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3459\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.5828\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0854\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0666\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1589\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1153\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1023\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1182\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1296\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5667\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0831\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0754\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0602\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0760\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1189\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0987\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0941\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.2030\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0715\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2778\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2026\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0961\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0710\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0963\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1188\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2689\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1100\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1946\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1731\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0838\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0792\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1594\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1578\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1911\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0891\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1673\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2335\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0624\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.1064\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1460\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0849\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1063\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0791\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1468\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.8810\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 0. Best value: 0.156944: 4%|▍ | 2/50 [00:19<08:14, 10.30s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.4116\n",
"[I 2025-11-21 06:40:58,531] Trial 1 finished with value: 0.1729428917169571 and parameters: {'n_estimators': 573, 'max_depth': 9, 'learning_rate': 0.23630436587759102, 'subsample': 0.9817376399960189, 'colsample_bytree': 0.549913330722192, 'min_child_weight': 18.6299009148948, 'gamma': 9.80020565032792, 'reg_lambda': 0.5496417205606632, 'reg_alpha': 0.05578237672953377}. Best is trial 0 with value: 0.15694431960582733.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4763\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0454\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.2620\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.2331\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0696\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0918\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.1065\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0400\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0707\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1201\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3288\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.3350\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1768\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1401\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1520\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0801\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1233\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1489\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1430\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3736\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.5144\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0861\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0515\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1596\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0776\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1135\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1282\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1214\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4646\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.1121\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0737\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0740\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0811\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1065\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1143\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0708\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1192\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0877\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2111\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1922\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0865\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0807\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1173\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1806\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2354\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1443\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1867\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0758\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.1058\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0707\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1642\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1887\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.2015\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.1261\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1748\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2417\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0930\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0845\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1659\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0877\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1261\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.1094\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1703\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9486\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 0. Best value: 0.156944: 6%|▌ | 3/50 [00:28<07:30, 9.59s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.4074\n",
"[I 2025-11-21 06:41:07,282] Trial 2 finished with value: 0.1700025349855423 and parameters: {'n_estimators': 467, 'max_depth': 9, 'learning_rate': 0.08688451665612783, 'subsample': 0.5507351518047667, 'colsample_bytree': 0.5838337756075574, 'min_child_weight': 19.314840962674, 'gamma': 4.045104655930121, 'reg_lambda': 0.0036854850997073514, 'reg_alpha': 0.004301387754228725}. Best is trial 0 with value: 0.15694431960582733.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4824\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0717\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.2148\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.2182\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0885\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0686\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.1563\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0378\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.1231\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1098\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3023\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.6823\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1395\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1547\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1215\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0781\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0866\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0759\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0767\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3578\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.6335\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.1234\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0793\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2941\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.3035\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1739\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1454\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1033\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.6079\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.1965\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0591\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0560\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.1008\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1339\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1181\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0913\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1833\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0738\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.1995\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2339\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1023\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0792\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1056\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1075\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2410\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1747\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.2321\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1001\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0805\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0860\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1270\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1826\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1651\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0797\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1850\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2927\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0708\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0933\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1570\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0820\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1098\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0945\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1722\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.0296\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 0. Best value: 0.156944: 8%|▊ | 4/50 [00:38<07:24, 9.66s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.4405\n",
"[I 2025-11-21 06:41:17,050] Trial 3 finished with value: 0.18688595294952393 and parameters: {'n_estimators': 463, 'max_depth': 7, 'learning_rate': 0.12054565063380349, 'subsample': 0.7118076171410905, 'colsample_bytree': 0.8797626271566815, 'min_child_weight': 17.941707643998235, 'gamma': 7.250922351800726, 'reg_lambda': 0.07468642786780907, 'reg_alpha': 0.027748296836009705}. Best is trial 0 with value: 0.15694431960582733.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4984\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0590\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1253\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0513\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0933\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.1071\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0835\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0636\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.1188\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1409\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3586\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.8533\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1515\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1040\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1696\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0701\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0944\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0652\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0433\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2526\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2947\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0799\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0804\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1473\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1838\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1095\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1954\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1138\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.6481\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.3419\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0604\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0797\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0603\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1417\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1079\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0859\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1748\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1176\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2102\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.3247\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0838\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0750\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1195\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1913\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2839\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2438\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1316\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0967\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0610\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0946\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1171\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.2090\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.2303\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0915\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1816\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.3782\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0705\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0632\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1459\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0808\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1099\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0941\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1740\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.2487\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 0. Best value: 0.156944: 10%|█ | 5/50 [00:45<06:40, 8.89s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.5435\n",
"[I 2025-11-21 06:41:24,575] Trial 4 finished with value: 0.18740764260292053 and parameters: {'n_estimators': 836, 'max_depth': 2, 'learning_rate': 0.10875691364813332, 'subsample': 0.563364663677354, 'colsample_bytree': 0.7770090105878569, 'min_child_weight': 6.742411884260443, 'gamma': 0.0014270184454145962, 'reg_lambda': 0.18069679927357943, 'reg_alpha': 0.0017442369502913718}. Best is trial 0 with value: 0.15694431960582733.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4768\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0519\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.2427\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.1606\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0676\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.1021\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.1211\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0406\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.1047\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1175\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3365\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7512\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1248\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1433\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1130\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0832\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0807\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0643\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0669\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2119\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.6594\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.1006\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0379\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2051\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.2121\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1600\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1247\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1395\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5624\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2280\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0580\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0607\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0659\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1331\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1393\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0921\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1337\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0862\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2084\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1869\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1050\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0841\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0647\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1926\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2270\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1614\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1230\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1111\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0957\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0947\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1284\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1524\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1821\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.1281\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1837\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2428\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0710\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.1232\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1651\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0755\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1143\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0832\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1751\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9739\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 0. Best value: 0.156944: 12%|█▏ | 6/50 [00:58<07:36, 10.36s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.4563\n",
"[I 2025-11-21 06:41:37,798] Trial 5 finished with value: 0.17800338566303253 and parameters: {'n_estimators': 828, 'max_depth': 6, 'learning_rate': 0.23179500905717038, 'subsample': 0.6211524783081035, 'colsample_bytree': 0.9198426475723518, 'min_child_weight': 13.214972396395238, 'gamma': 1.9821594646391338, 'reg_lambda': 7.562483556754495, 'reg_alpha': 4.366637198922397}. Best is trial 0 with value: 0.15694431960582733.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4967\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0473\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.2395\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.1085\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0499\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0932\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0807\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0794\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0894\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1305\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3057\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7273\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1143\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.2202\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1172\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0870\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0921\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0723\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0912\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.4236\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.5848\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0915\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0834\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.3563\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0791\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1459\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1390\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1250\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5566\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2507\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0812\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0642\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0544\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1080\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1054\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0911\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1924\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0912\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2222\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2840\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0758\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0577\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0853\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.2230\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2269\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1504\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.0935\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1116\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.1070\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0940\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1254\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1440\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1888\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.1963\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1735\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2679\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0608\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.1023\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1417\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0765\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0903\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0861\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1553\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 0. Best value: 0.156944: 14%|█▍ | 7/50 [01:06<06:39, 9.29s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 0.9202\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.3787\n",
"[I 2025-11-21 06:41:44,890] Trial 6 finished with value: 0.18007999658584595 and parameters: {'n_estimators': 441, 'max_depth': 4, 'learning_rate': 0.17232564129931813, 'subsample': 0.8073149394284046, 'colsample_bytree': 0.5566805918582443, 'min_child_weight': 15.545177166343791, 'gamma': 1.7801603896954432, 'reg_lambda': 0.10495257477080565, 'reg_alpha': 4.581286936796601}. Best is trial 0 with value: 0.15694431960582733.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3919\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0422\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1283\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0631\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0480\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0693\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0727\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0641\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0780\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0935\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3421\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.4193\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1183\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0754\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1636\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0875\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0950\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0635\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0876\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2644\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3755\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0716\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0699\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1927\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0830\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1017\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1167\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1044\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5388\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0701\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0769\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0513\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0698\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1023\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0958\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0839\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1529\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0676\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2122\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1593\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0907\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0689\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0792\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0894\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2445\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1235\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1401\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1030\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0696\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0781\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1303\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1673\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1053\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0774\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1818\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2289\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0684\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0497\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1351\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0711\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1210\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0811\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1379\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.0036\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.3449\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 7. Best value: 0.147: 16%|█▌ | 8/50 [01:19<07:29, 10.70s/it] "
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"[I 2025-11-21 06:41:58,600] Trial 7 finished with value: 0.14700019359588623 and parameters: {'n_estimators': 835, 'max_depth': 4, 'learning_rate': 0.006269302156320788, 'subsample': 0.7262566000328562, 'colsample_bytree': 0.9471459671896685, 'min_child_weight': 6.067038914581407, 'gamma': 4.769073219188419, 'reg_lambda': 6.147255130238389, 'reg_alpha': 0.3103568929236734}. Best is trial 7 with value: 0.14700019359588623.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3886\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0584\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0977\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0766\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0506\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0836\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0692\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0531\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0798\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1152\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2361\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.8825\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1571\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1324\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1332\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0660\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0919\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0595\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0608\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3051\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2731\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0647\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0797\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1796\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1080\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0920\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1307\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1124\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.6237\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0775\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0785\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0506\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0605\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1078\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0994\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0780\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1586\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0692\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2295\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1593\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0692\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0676\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0953\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0813\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2655\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1676\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1648\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1260\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0594\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0695\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1309\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1666\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1351\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0848\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1765\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2279\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0678\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0477\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1313\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0735\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1018\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0916\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1561\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.0784\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 7. Best value: 0.147: 18%|█▊ | 9/50 [01:33<07:57, 11.65s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.2827\n",
"[I 2025-11-21 06:42:12,327] Trial 8 finished with value: 0.15613912045955658 and parameters: {'n_estimators': 1029, 'max_depth': 4, 'learning_rate': 0.008597910058732188, 'subsample': 0.9531189784121386, 'colsample_bytree': 0.6195853825023647, 'min_child_weight': 4.798767265518015, 'gamma': 8.296066338397964, 'reg_lambda': 0.089817633536399, 'reg_alpha': 0.08801463809240209}. Best is trial 7 with value: 0.14700019359588623.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4757\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0409\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.2062\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0462\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0558\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0672\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0878\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0489\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.1056\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1214\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3319\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.4653\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1014\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0515\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1175\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0886\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1224\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0878\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1129\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.4536\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.5485\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0939\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0635\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2177\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.2998\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1425\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1382\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1059\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.6241\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2513\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0726\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0662\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0790\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1099\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1749\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0919\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1685\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1104\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2184\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2548\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1110\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0863\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1211\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1175\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2316\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1608\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.2035\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0888\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0687\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.1497\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1145\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1803\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1630\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0947\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1746\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2886\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0671\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0750\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1495\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0826\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0993\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0831\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1754\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 7. Best value: 0.147: 20%|██ | 10/50 [01:39<06:31, 9.78s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 0.9548\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.4594\n",
"[I 2025-11-21 06:42:17,941] Trial 9 finished with value: 0.17725597321987152 and parameters: {'n_estimators': 341, 'max_depth': 5, 'learning_rate': 0.0397999922535549, 'subsample': 0.5550419538824205, 'colsample_bytree': 0.939497074976597, 'min_child_weight': 12.960367968961624, 'gamma': 6.999286636600251, 'reg_lambda': 0.7963064935332874, 'reg_alpha': 6.987769620238931}. Best is trial 7 with value: 0.14700019359588623.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3989\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0709\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1089\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0401\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0544\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0637\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0745\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0494\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0861\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0948\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3676\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.3105\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1582\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0851\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.2256\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.1045\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1063\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0881\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1202\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3315\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.4199\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0684\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0920\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1803\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0785\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1092\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1954\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.0966\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5474\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0568\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0769\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0661\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0554\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0780\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0693\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0769\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1307\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0684\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2223\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1115\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0990\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0624\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0776\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0810\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2430\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1571\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1374\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0568\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0592\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0622\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1242\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1983\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1015\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0669\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1758\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1442\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0644\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0584\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1266\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0718\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1043\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.1030\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1144\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.0117\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 22%|██▏ | 11/50 [01:49<06:28, 9.96s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.2625\n",
"[I 2025-11-21 06:42:28,299] Trial 10 finished with value: 0.14619995653629303 and parameters: {'n_estimators': 1191, 'max_depth': 2, 'learning_rate': 0.005253772865074342, 'subsample': 0.8218598079494596, 'colsample_bytree': 0.7969421210025385, 'min_child_weight': 1.0323934520516822, 'gamma': 4.861054062556412, 'reg_lambda': 4.483309357119021, 'reg_alpha': 0.5991239310157753}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4161\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0394\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1399\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0451\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0508\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0646\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.1033\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0413\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0856\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0968\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3068\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.3933\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1168\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0665\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.2168\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.1061\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1077\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0794\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1248\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3281\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.4120\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0735\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0918\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2066\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0829\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1052\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.3941\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.0978\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5662\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0543\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0759\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0664\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0573\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0887\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0692\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0755\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1332\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0673\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2204\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1254\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0986\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0595\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0786\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0824\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2448\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1645\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1227\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0889\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0593\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0615\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1199\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1983\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.0971\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0663\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1845\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1567\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0627\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0554\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1245\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0665\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1031\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0988\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1319\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 24%|██▍ | 12/50 [01:59<06:23, 10.08s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 0.9335\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.2927\n",
"[I 2025-11-21 06:42:38,665] Trial 11 finished with value: 0.14993739128112793 and parameters: {'n_estimators': 1192, 'max_depth': 2, 'learning_rate': 0.005797280092565463, 'subsample': 0.8238119053929343, 'colsample_bytree': 0.8108885447663595, 'min_child_weight': 8.110410003385224, 'gamma': 4.619063394091403, 'reg_lambda': 9.820603030817557, 'reg_alpha': 0.5822803226990404}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4289\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0642\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1059\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0651\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0536\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0745\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0728\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0588\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0824\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0960\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3622\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.3973\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1657\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0768\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1010\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0874\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0925\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0705\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0537\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2739\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.4150\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0736\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0730\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1669\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1276\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1018\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1048\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1096\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4986\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2271\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0663\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0699\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0647\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1241\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1044\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0895\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1797\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0816\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2223\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1693\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0812\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0704\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1009\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1218\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2652\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1766\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1533\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1657\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0653\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0750\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1337\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1781\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1203\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0908\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1564\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2451\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0583\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0484\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1395\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0777\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1003\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0925\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1483\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.7691\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.2565\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 26%|██▌ | 13/50 [02:12<06:44, 10.92s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"[I 2025-11-21 06:42:51,520] Trial 12 finished with value: 0.14990001916885376 and parameters: {'n_estimators': 1159, 'max_depth': 3, 'learning_rate': 0.012809876948658119, 'subsample': 0.8419833562980343, 'colsample_bytree': 0.6854409101713512, 'min_child_weight': 1.144836482383651, 'gamma': 3.480367850980474, 'reg_lambda': 2.439287673486367, 'reg_alpha': 0.5623238530038139}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4357\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0911\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1121\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0660\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0552\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0725\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0791\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0613\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0923\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1092\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3828\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.9939\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1308\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1945\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1145\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0797\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0756\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0568\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0556\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2284\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3002\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0806\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0765\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1739\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1475\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1009\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0979\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1153\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.6234\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2495\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0716\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0707\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0650\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1354\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1035\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0871\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1751\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0756\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2144\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2054\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0837\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0708\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1087\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1201\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2631\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2014\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1641\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0918\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0626\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.1001\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1397\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1822\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1304\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0906\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1868\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2722\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0633\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0522\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1419\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0798\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1030\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0949\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1592\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9080\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.3329\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 28%|██▊ | 14/50 [02:24<06:44, 11.23s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"[I 2025-11-21 06:43:03,464] Trial 13 finished with value: 0.1670791357755661 and parameters: {'n_estimators': 978, 'max_depth': 3, 'learning_rate': 0.017968760523897086, 'subsample': 0.8939903418841125, 'colsample_bytree': 0.8532023115765255, 'min_child_weight': 2.129420752510509, 'gamma': 5.993051562674969, 'reg_lambda': 2.0545263511519507, 'reg_alpha': 0.7290682265706208}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3973\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0218\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1364\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0469\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0460\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0653\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0744\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0686\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0924\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1035\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3124\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.3486\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1196\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0460\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1025\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0932\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0922\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0609\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0781\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2807\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3415\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0782\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0692\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1594\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1088\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1012\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1017\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1063\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5740\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2207\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0761\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0587\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0715\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0891\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0970\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0860\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1506\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0744\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2195\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1810\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0967\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0707\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0827\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1017\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2433\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1115\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1333\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0774\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0592\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0836\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1274\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1846\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1078\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0796\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1840\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2411\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0682\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0505\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1384\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0776\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1064\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0914\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1488\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9588\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 30%|███ | 15/50 [02:35<06:27, 11.07s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3915\n",
"[I 2025-11-21 06:43:14,159] Trial 14 finished with value: 0.14719712734222412 and parameters: {'n_estimators': 658, 'max_depth': 5, 'learning_rate': 0.005191000280137056, 'subsample': 0.7627578016085451, 'colsample_bytree': 0.9736004215404119, 'min_child_weight': 9.710300293900154, 'gamma': 5.4039417044969085, 'reg_lambda': 0.014804773849387979, 'reg_alpha': 1.2966579740265236}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4442\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0784\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0888\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0867\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0566\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0816\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0802\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0628\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0964\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1103\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3982\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.8624\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.2490\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1579\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1655\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0875\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0579\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0499\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0548\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2621\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.4130\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0806\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0693\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2011\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1467\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0917\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1462\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1095\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.7006\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2478\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0706\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0626\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0624\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1169\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1010\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0818\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1580\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0692\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2170\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2419\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1028\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0510\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0978\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1283\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2642\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2189\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1485\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1737\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0666\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0709\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1310\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1813\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1706\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0904\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1782\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2646\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0620\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0514\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1403\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0785\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1009\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0872\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1644\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.2254\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 32%|███▏ | 16/50 [02:43<05:42, 10.07s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.4022\n",
"[I 2025-11-21 06:43:21,903] Trial 15 finished with value: 0.17800672352313995 and parameters: {'n_estimators': 836, 'max_depth': 2, 'learning_rate': 0.02679524642321642, 'subsample': 0.7570697835754907, 'colsample_bytree': 0.7175660241019357, 'min_child_weight': 4.6224715776667535, 'gamma': 2.8854406089927584, 'reg_lambda': 2.9004715158678884, 'reg_alpha': 0.013741659082980508}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4614\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0555\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1588\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0637\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0566\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0774\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0722\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0673\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.1049\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1129\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3973\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7753\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1285\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0881\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1248\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0806\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0776\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0510\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0508\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2517\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2099\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0891\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0736\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1962\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.3182\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1035\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1295\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1073\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5649\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2692\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0642\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0691\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0664\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1188\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1039\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0917\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1764\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0747\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2144\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2787\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0877\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0709\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1014\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1586\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2477\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2015\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1591\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0988\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0646\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0995\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1263\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1846\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1459\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0894\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1926\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2835\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0671\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0518\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1425\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0736\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1157\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.1056\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1548\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.1287\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 34%|███▍ | 17/50 [02:56<06:07, 11.12s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.4651\n",
"[I 2025-11-21 06:43:35,481] Trial 16 finished with value: 0.1721978634595871 and parameters: {'n_estimators': 1015, 'max_depth': 4, 'learning_rate': 0.010827252992463687, 'subsample': 0.8950399056555883, 'colsample_bytree': 0.9891049061988249, 'min_child_weight': 7.080967531742935, 'gamma': 5.953939640812748, 'reg_lambda': 0.5957390207555459, 'reg_alpha': 0.19021319072880527}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4387\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0894\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0616\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0645\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0615\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0763\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0703\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0680\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0934\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1162\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3996\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 1.0140\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1252\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1655\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.0645\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0678\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0896\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0407\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0552\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3425\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.1703\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0680\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0796\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1613\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1111\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1049\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1149\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1085\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.6835\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2327\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0676\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0690\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0645\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1051\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0986\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0880\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1393\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0757\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2160\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1542\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0849\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0644\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0854\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1035\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2646\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2106\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1455\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0706\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0641\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0872\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1420\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1876\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1686\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0896\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1784\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2608\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0748\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0599\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1489\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0838\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1066\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0667\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1812\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.0882\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 36%|███▌ | 18/50 [03:13<06:52, 12.88s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.2586\n",
"[I 2025-11-21 06:43:52,463] Trial 17 finished with value: 0.16451919078826904 and parameters: {'n_estimators': 718, 'max_depth': 7, 'learning_rate': 0.051261818311212556, 'subsample': 0.6646029298056146, 'colsample_bytree': 0.8217857012127874, 'min_child_weight': 3.186411000939194, 'gamma': 4.652725632819968, 'reg_lambda': 0.026225451709682213, 'reg_alpha': 1.6281191759946245}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4154\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0482\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0963\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0661\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0533\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0951\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.1082\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0666\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0841\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1303\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3758\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7674\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1330\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1946\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1560\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0896\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0608\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0430\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0475\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2847\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3791\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0736\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0769\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1640\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0923\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0943\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1315\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1145\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5712\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2015\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0715\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0529\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0631\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1124\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0937\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0809\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1470\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0686\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2091\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1931\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0885\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0675\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0922\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0950\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2681\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1522\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1365\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0953\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0629\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0678\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1179\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1961\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1545\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0842\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1740\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2566\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0648\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0488\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1317\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0771\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1004\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0810\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1557\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.0911\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 38%|███▊ | 19/50 [03:29<07:06, 13.75s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3485\n",
"[I 2025-11-21 06:44:08,219] Trial 18 finished with value: 0.16177961230278015 and parameters: {'n_estimators': 1080, 'max_depth': 3, 'learning_rate': 0.02139627574626644, 'subsample': 0.7117557355517841, 'colsample_bytree': 0.5008326822148131, 'min_child_weight': 5.892520049871111, 'gamma': 2.533277338979792, 'reg_lambda': 4.493642037019304, 'reg_alpha': 0.30616945611214086}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4002\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0337\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1325\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0513\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0495\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0935\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0890\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0600\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0809\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1302\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3546\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.5937\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1209\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0694\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1780\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0771\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0675\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0616\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0680\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3349\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2537\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0717\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0724\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1703\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0861\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0922\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1212\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1185\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5442\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2436\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0757\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0501\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0659\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0974\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0999\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0821\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1591\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0690\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2263\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1965\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0936\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0621\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0968\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0885\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2690\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1214\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1246\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1237\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0614\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0683\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1382\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1940\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1622\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0857\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1765\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2444\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0638\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0485\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1312\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0737\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0954\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0875\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1752\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.0089\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 40%|████ | 20/50 [03:53<08:23, 16.79s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.2730\n",
"[I 2025-11-21 06:44:32,117] Trial 19 finished with value: 0.15399673581123352 and parameters: {'n_estimators': 925, 'max_depth': 5, 'learning_rate': 0.00794329828835874, 'subsample': 0.8829829234091096, 'colsample_bytree': 0.6679839070258201, 'min_child_weight': 9.52209611276713, 'gamma': 1.0250719672213604, 'reg_lambda': 1.086218171810774, 'reg_alpha': 2.4609414288766476}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3941\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0712\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0933\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0576\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0545\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0723\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0724\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0638\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.1008\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0942\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3767\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.5282\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1356\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0964\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.0958\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0830\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0901\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0707\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0538\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3195\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.4453\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0780\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0780\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1635\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1439\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1041\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1111\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1072\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5701\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2507\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0763\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0690\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0682\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1229\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1038\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0907\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1781\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0745\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2160\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2287\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0810\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0753\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1014\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1419\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2580\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2253\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1534\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1044\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0601\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0812\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1294\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1834\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1356\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0877\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1531\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2646\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0661\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0518\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1435\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0971\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1038\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0936\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1508\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9218\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 10. Best value: 0.1462: 42%|████▏ | 21/50 [04:06<07:38, 15.81s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3318\n",
"[I 2025-11-21 06:44:45,646] Trial 20 finished with value: 0.1600051075220108 and parameters: {'n_estimators': 708, 'max_depth': 3, 'learning_rate': 0.014831736791046003, 'subsample': 0.6126049136430805, 'colsample_bytree': 0.8942115626095538, 'min_child_weight': 1.1971791440175386, 'gamma': 8.136842543903962, 'reg_lambda': 0.3327204434086723, 'reg_alpha': 0.04637081751104621}. Best is trial 10 with value: 0.14619995653629303.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4381\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0252\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1263\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0425\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0440\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0631\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0721\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0691\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0891\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1005\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2956\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.3021\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1227\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0446\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1060\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.1032\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1009\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0678\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0830\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2812\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3405\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0713\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0645\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1582\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1017\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0991\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0945\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1081\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5439\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2037\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0773\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0594\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0722\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0852\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0961\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0873\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1458\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0742\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2211\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1706\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0903\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0694\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0788\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0991\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2477\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1220\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1327\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0705\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0575\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0781\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1279\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1808\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1075\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0766\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1819\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2321\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0682\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0497\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1325\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0756\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1054\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0886\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1393\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.8908\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 44%|████▍ | 22/50 [04:22<07:20, 15.73s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3843\n",
"[I 2025-11-21 06:45:01,191] Trial 21 finished with value: 0.14367972314357758 and parameters: {'n_estimators': 602, 'max_depth': 5, 'learning_rate': 0.005015322502816466, 'subsample': 0.772737633843327, 'colsample_bytree': 0.9833966104354839, 'min_child_weight': 10.77366504258932, 'gamma': 6.207099122267756, 'reg_lambda': 0.01639040676356076, 'reg_alpha': 1.5669813409086963}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4609\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0315\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1500\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0334\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0477\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0630\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0772\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0709\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0947\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1051\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3190\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.3177\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1196\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0449\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1119\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0887\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1029\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0944\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0882\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3405\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3565\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0773\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0656\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1649\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.2778\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1021\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0984\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1053\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5242\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2287\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0786\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0580\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0704\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1087\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1095\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0901\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1554\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0763\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2195\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1993\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1082\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0832\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0924\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1174\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2545\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1109\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1598\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0793\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0630\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0863\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1349\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1959\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1407\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0847\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1860\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2473\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0627\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0480\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1406\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0776\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1019\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0921\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1635\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.8915\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 46%|████▌ | 23/50 [04:36<06:49, 15.18s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3996\n",
"[I 2025-11-21 06:45:15,066] Trial 22 finished with value: 0.15462730824947357 and parameters: {'n_estimators': 581, 'max_depth': 6, 'learning_rate': 0.006916350311120698, 'subsample': 0.7894664241233357, 'colsample_bytree': 0.9500993846062789, 'min_child_weight': 12.710633181190806, 'gamma': 6.862465012699284, 'reg_lambda': 0.012815973130381231, 'reg_alpha': 0.31017192478558425}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4195\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0324\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1662\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0554\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0458\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0868\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0873\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0540\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0864\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1282\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3584\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.5181\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1060\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0844\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1476\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0911\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0756\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0620\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0677\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3868\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2621\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0670\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0681\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1616\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0994\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0931\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1095\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1155\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5601\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2392\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0726\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0535\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0690\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1093\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1009\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0815\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1548\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0704\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2229\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1785\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0914\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0634\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0846\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1047\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2672\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1506\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1303\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1360\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0631\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0704\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1267\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1771\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1467\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0774\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1891\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2464\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0625\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0488\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1288\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0814\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1024\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0895\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1592\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.0116\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 48%|████▊ | 24/50 [04:48<06:12, 14.33s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3111\n",
"[I 2025-11-21 06:45:27,407] Trial 23 finished with value: 0.15491603314876556 and parameters: {'n_estimators': 601, 'max_depth': 4, 'learning_rate': 0.009800110066318497, 'subsample': 0.7085371200538979, 'colsample_bytree': 0.7524670644245219, 'min_child_weight': 8.389058007540559, 'gamma': 5.477984599069773, 'reg_lambda': 0.0014421660356094723, 'reg_alpha': 1.0325433941048014}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4610\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0334\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1505\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0414\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0466\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0711\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0805\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0729\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0996\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1064\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3375\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.4014\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1436\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0536\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.0939\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0928\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0779\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0602\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0739\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3082\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2166\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0830\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0704\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1604\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.2858\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1044\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1063\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1078\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5543\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2406\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0773\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0620\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0709\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1192\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1062\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0935\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1787\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0807\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2184\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2025\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1097\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0835\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1009\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1316\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2575\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1058\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1468\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0770\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0593\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0987\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1340\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1846\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1287\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0908\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1810\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2596\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0690\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0590\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1440\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0739\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0980\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0935\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1731\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9801\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 50%|█████ | 25/50 [05:15<07:31, 18.06s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.4005\n",
"[I 2025-11-21 06:45:54,171] Trial 24 finished with value: 0.1567087322473526 and parameters: {'n_estimators': 896, 'max_depth': 7, 'learning_rate': 0.005074353877220637, 'subsample': 0.8601751011693349, 'colsample_bytree': 0.9993082828569065, 'min_child_weight': 11.413370525648892, 'gamma': 4.140644626199373, 'reg_lambda': 0.03254596271326653, 'reg_alpha': 2.2259787892864025}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4691\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0376\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1726\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0434\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0455\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0699\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0826\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0689\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0995\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1115\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3389\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.4026\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1401\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0631\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1003\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0937\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1041\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0688\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0733\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3259\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3098\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0752\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0659\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1600\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.2808\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1015\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1157\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1080\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5435\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2507\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0781\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0565\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0704\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1085\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1115\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0870\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1706\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0765\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2185\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2313\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0978\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0765\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0961\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1118\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2530\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1357\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1440\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0821\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0617\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0783\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1298\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.2021\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1415\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0862\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1918\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2473\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0612\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0465\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1440\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0756\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1035\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0962\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1698\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9642\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.4032\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 52%|█████▏ | 26/50 [05:28<06:35, 16.49s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"[I 2025-11-21 06:46:07,005] Trial 25 finished with value: 0.15894067287445068 and parameters: {'n_estimators': 761, 'max_depth': 5, 'learning_rate': 0.006935157612285239, 'subsample': 0.780075077751533, 'colsample_bytree': 0.9066538473939642, 'min_child_weight': 11.107171162704272, 'gamma': 6.488245895231002, 'reg_lambda': 0.006701008583139988, 'reg_alpha': 0.36810293142746586}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4599\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0337\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.2201\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.1979\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0720\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0948\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.1313\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0426\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0783\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0942\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3193\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.2705\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1036\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0915\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1361\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0910\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1386\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1467\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1577\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3869\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.4740\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0896\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0728\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1829\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.2138\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1180\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1599\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1158\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5109\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.1554\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0655\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0761\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0708\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1077\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1402\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0791\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1541\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0823\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2168\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2209\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0904\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0728\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1117\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1296\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2455\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1033\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1905\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1115\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0839\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0749\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1488\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1741\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1729\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0965\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1781\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2001\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0739\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0705\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1455\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0697\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0996\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0937\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1689\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.8980\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 54%|█████▍ | 27/50 [05:44<06:20, 16.54s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3925\n",
"[I 2025-11-21 06:46:23,660] Trial 26 finished with value: 0.1656983494758606 and parameters: {'n_estimators': 1142, 'max_depth': 6, 'learning_rate': 0.01256999396333335, 'subsample': 0.5012166749368757, 'colsample_bytree': 0.8536741948092776, 'min_child_weight': 15.011339393816419, 'gamma': 8.071890525190085, 'reg_lambda': 4.8395344497687605, 'reg_alpha': 9.946673141004577}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3678\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0762\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0454\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0386\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0539\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0528\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0503\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0530\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0709\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0927\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2218\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.5818\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1431\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1581\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.2444\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.1490\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1083\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0809\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1136\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2447\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3924\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0659\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0792\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1415\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0500\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1022\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.3092\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.0837\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4737\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0536\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0823\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0720\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0672\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0623\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0673\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0801\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1099\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0643\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2283\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1101\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0617\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0688\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0745\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0521\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2378\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2873\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.2578\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0698\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0350\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0708\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1335\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.3476\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1248\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0495\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1607\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.0986\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0804\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0595\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1125\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0705\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1056\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0896\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1304\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 56%|█████▌ | 28/50 [05:48<04:41, 12.78s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 0.7029\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.2473\n",
"[I 2025-11-21 06:46:27,681] Trial 27 finished with value: 0.14417697489261627 and parameters: {'n_estimators': 364, 'max_depth': 2, 'learning_rate': 0.007051029061220527, 'subsample': 0.9328735737557339, 'colsample_bytree': 0.9429426865080885, 'min_child_weight': 3.1537903896202253, 'gamma': 4.0949606152001925, 'reg_lambda': 1.8124847536547954, 'reg_alpha': 0.14315010275871207}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4190\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0467\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0855\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0393\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0489\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0651\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0720\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0512\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0882\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0907\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2622\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.8633\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1510\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.2146\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.2182\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0892\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0929\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0737\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1093\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3184\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.5463\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0725\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0854\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1748\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0783\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0988\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.2113\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.0917\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.8490\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0628\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0787\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0666\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0532\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0731\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0617\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0739\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1238\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0659\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2243\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1207\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0853\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0651\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0789\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0784\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2408\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1593\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1496\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0543\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0558\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0646\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1346\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.2829\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.0960\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0689\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1777\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1636\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0606\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0583\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1157\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0725\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1061\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0995\n",
"Fold 62: train [0:518), val [518:525)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 58%|█████▊ | 29/50 [05:51<03:26, 9.84s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 62 MAPE: 0.1131\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9590\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.2624\n",
"[I 2025-11-21 06:46:30,664] Trial 28 finished with value: 0.16023297607898712 and parameters: {'n_estimators': 205, 'max_depth': 2, 'learning_rate': 0.025739961859963138, 'subsample': 0.9504454931141323, 'colsample_bytree': 0.8112383141380992, 'min_child_weight': 2.6803907308424364, 'gamma': 3.3138178417712703, 'reg_lambda': 1.6182521333123516, 'reg_alpha': 0.01632521007650008}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4393\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0578\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0896\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0939\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0641\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0640\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0604\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0693\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0699\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0980\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2351\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7424\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1455\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1847\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1192\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0793\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0970\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0750\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0525\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2915\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3840\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0674\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0773\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1646\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0937\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1064\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0947\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1096\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4120\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0593\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0891\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0563\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0706\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0957\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1105\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0859\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1598\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1051\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2223\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1251\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0823\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0702\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1033\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0890\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2608\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1349\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1589\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0690\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0578\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0918\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1447\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1768\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1215\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0792\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1706\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1941\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0649\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0660\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1409\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0718\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0997\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0776\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1723\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.7005\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 60%|██████ | 30/50 [06:04<03:32, 10.64s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.2770\n",
"[I 2025-11-21 06:46:43,165] Trial 29 finished with value: 0.14605361223220825 and parameters: {'n_estimators': 348, 'max_depth': 8, 'learning_rate': 0.00929262488722121, 'subsample': 0.9276303968384639, 'colsample_bytree': 0.8689328921896636, 'min_child_weight': 3.165591619640258, 'gamma': 3.9087807665661956, 'reg_lambda': 0.2474387972658331, 'reg_alpha': 0.11950098555101227}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3838\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0640\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0934\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0928\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0683\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0703\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0654\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0649\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0723\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1005\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2539\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7659\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1288\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1791\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.0892\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0648\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0956\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0811\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0564\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2466\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3779\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0745\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0828\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1505\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0916\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0940\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1230\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1089\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.6728\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0549\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0632\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0577\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0723\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1007\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1023\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0859\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1544\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1250\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2214\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1420\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0872\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0593\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0961\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0913\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2700\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1108\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1686\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0714\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0630\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0832\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1461\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1726\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1515\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0728\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1687\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2231\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0669\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0622\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1478\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0671\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1041\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0781\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1622\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.1359\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 21. Best value: 0.14368: 62%|██████▏ | 31/50 [06:16<03:29, 11.00s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3034\n",
"[I 2025-11-21 06:46:55,008] Trial 30 finished with value: 0.1562545895576477 and parameters: {'n_estimators': 327, 'max_depth': 10, 'learning_rate': 0.01632607244328271, 'subsample': 0.9976563633901449, 'colsample_bytree': 0.849856359954289, 'min_child_weight': 4.240916947427992, 'gamma': 3.8553118714936954, 'reg_lambda': 0.22639572337446395, 'reg_alpha': 0.13088338866442115}. Best is trial 21 with value: 0.14367972314357758.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4309\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0530\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0795\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0916\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0635\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0604\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0594\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0671\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0699\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0900\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2298\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.6896\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1492\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1769\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1301\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0796\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0925\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0768\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0655\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3068\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3583\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0681\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0758\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1630\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0810\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1061\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0944\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1124\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.2684\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0549\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0867\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0589\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0714\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0810\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1125\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0845\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1570\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0758\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2222\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1202\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0830\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0711\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1012\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0795\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2624\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1161\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1620\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0697\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0550\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0885\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1498\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1904\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1071\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0744\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1679\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1862\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0660\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0642\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1365\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0734\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1003\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0745\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1700\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.6576\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 31. Best value: 0.139808: 64%|██████▍ | 32/50 [06:26<03:13, 10.75s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.2657\n",
"[I 2025-11-21 06:47:05,160] Trial 31 finished with value: 0.13980776071548462 and parameters: {'n_estimators': 298, 'max_depth': 8, 'learning_rate': 0.00892212652423783, 'subsample': 0.9266529006651797, 'colsample_bytree': 0.882419739090301, 'min_child_weight': 3.3114278101943464, 'gamma': 5.402507667441615, 'reg_lambda': 0.03767175956522691, 'reg_alpha': 0.1246562166499465}. Best is trial 31 with value: 0.13980776071548462.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4319\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0632\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0869\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.1054\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0656\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0660\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0589\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0708\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0736\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0896\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2333\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7030\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1596\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1775\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1197\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0797\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0954\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0894\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0557\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3133\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3603\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0830\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0742\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1686\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0946\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1079\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0948\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1114\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5763\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0591\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0909\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0567\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0728\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0878\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1135\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0864\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1607\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1081\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2210\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1320\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0854\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0772\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1026\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0855\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2624\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1377\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1571\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0701\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0555\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.1036\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1519\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1855\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1136\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0795\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1709\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1973\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0673\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0664\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1392\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0750\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1017\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0706\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1736\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 31. Best value: 0.139808: 66%|██████▌ | 33/50 [06:36<02:59, 10.55s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 0.6853\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.2784\n",
"[I 2025-11-21 06:47:15,247] Trial 32 finished with value: 0.14910151064395905 and parameters: {'n_estimators': 293, 'max_depth': 8, 'learning_rate': 0.009469179561188062, 'subsample': 0.9298706108673107, 'colsample_bytree': 0.964314676631435, 'min_child_weight': 3.1352166700042736, 'gamma': 5.778777891419043, 'reg_lambda': 0.04402549417813672, 'reg_alpha': 0.0834197174116235}. Best is trial 31 with value: 0.13980776071548462.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3893\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0726\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0880\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0776\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0580\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0656\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0654\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0759\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0776\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0965\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2512\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.5911\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1278\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0876\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1616\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0719\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0645\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0607\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0580\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2411\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2456\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0642\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0723\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1514\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1000\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1029\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1021\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1128\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.6282\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0794\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0864\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0568\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0707\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0996\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1083\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0830\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1615\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0756\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2215\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1463\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0907\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0680\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1010\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1025\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2626\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1165\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1469\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0599\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0584\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0896\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1456\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1930\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1354\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0828\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1715\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2038\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0638\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0619\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1429\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0764\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1020\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0858\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1726\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.1273\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 31. Best value: 0.139808: 68%|██████▊ | 34/50 [06:49<02:59, 11.24s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3502\n",
"[I 2025-11-21 06:47:28,113] Trial 33 finished with value: 0.15017978847026825 and parameters: {'n_estimators': 414, 'max_depth': 9, 'learning_rate': 0.007688116070975768, 'subsample': 0.9215902466411044, 'colsample_bytree': 0.9226532499748039, 'min_child_weight': 5.307682021037302, 'gamma': 9.109022043680136, 'reg_lambda': 0.007466665173872375, 'reg_alpha': 0.033367298818569056}. Best is trial 31 with value: 0.13980776071548462.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4332\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0505\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0739\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.1004\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0695\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0611\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0604\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0694\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0736\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0969\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2323\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7807\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1770\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1799\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1188\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0828\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0976\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0801\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0547\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3441\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3049\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0677\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0780\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1701\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0868\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1056\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0955\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1116\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4141\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0569\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0656\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0603\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0702\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0944\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1126\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0853\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1616\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1246\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2221\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1361\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0849\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0741\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1011\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0878\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2627\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1362\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1597\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0774\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0537\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0977\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1497\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1873\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1290\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0772\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1678\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2056\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0694\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0737\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1493\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0672\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1025\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0731\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1720\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.6372\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 31. Best value: 0.139808: 70%|███████ | 35/50 [06:58<02:39, 10.64s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3608\n",
"[I 2025-11-21 06:47:37,353] Trial 34 finished with value: 0.1479709893465042 and parameters: {'n_estimators': 271, 'max_depth': 8, 'learning_rate': 0.012199675067242424, 'subsample': 0.9771531781307317, 'colsample_bytree': 0.8826112851628052, 'min_child_weight': 3.8162169044920646, 'gamma': 4.1482712152087835, 'reg_lambda': 0.049009400968276995, 'reg_alpha': 0.18359457537915705}. Best is trial 31 with value: 0.13980776071548462.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.5016\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0636\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1065\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0275\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0644\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0680\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0896\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0693\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.1038\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1278\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3795\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.9316\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1183\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1005\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1467\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0804\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0542\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0498\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0653\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2585\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.1964\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0777\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0745\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1568\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.2819\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1011\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1341\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1080\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.6423\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2728\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0620\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0726\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0729\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1219\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1040\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0891\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1583\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1373\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2172\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2466\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0865\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0704\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1039\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1963\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2481\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1711\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1363\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0977\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0606\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.1089\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1280\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.2141\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.2123\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.1243\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1699\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2842\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0721\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0635\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1472\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0949\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1043\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0979\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1839\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 1.2981\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.4140\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 31. Best value: 0.139808: 72%|███████▏ | 36/50 [07:10<02:33, 10.93s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"[I 2025-11-21 06:47:48,967] Trial 35 finished with value: 0.17881126701831818 and parameters: {'n_estimators': 526, 'max_depth': 8, 'learning_rate': 0.060823110959060254, 'subsample': 0.8588526731664337, 'colsample_bytree': 0.8820136636559509, 'min_child_weight': 7.393361102395038, 'gamma': 6.374939526196487, 'reg_lambda': 0.018758427987841657, 'reg_alpha': 0.006083461457638806}. Best is trial 31 with value: 0.13980776071548462.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3933\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0382\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1212\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0636\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0492\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0631\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0663\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0669\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0904\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1009\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3502\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.4331\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1187\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0562\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1627\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0749\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0763\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0569\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0700\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2642\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2044\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0745\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0714\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1480\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1066\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1022\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0995\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1109\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5667\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2154\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0772\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0538\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0743\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1058\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0968\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0841\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1464\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0774\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2241\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1639\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0918\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0714\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0971\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1163\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2585\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.0979\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1397\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0643\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0580\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0872\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1400\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1907\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1098\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0827\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1737\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2294\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0640\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0582\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1401\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0740\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0915\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0903\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1681\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9795\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 31. Best value: 0.139808: 74%|███████▍ | 37/50 [07:20<02:20, 10.78s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.2810\n",
"[I 2025-11-21 06:47:59,391] Trial 36 finished with value: 0.1457672119140625 and parameters: {'n_estimators': 378, 'max_depth': 9, 'learning_rate': 0.009155156344358416, 'subsample': 0.9207628043741009, 'colsample_bytree': 0.924868392460316, 'min_child_weight': 8.996005414888138, 'gamma': 7.535155969317197, 'reg_lambda': 0.33324184250803135, 'reg_alpha': 0.06672238386944096}. Best is trial 31 with value: 0.13980776071548462.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.5070\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0586\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1798\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0411\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0487\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0698\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0808\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0779\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.1135\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1310\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3160\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.5532\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1273\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0773\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1209\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0893\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1126\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0925\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0700\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3588\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3068\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0996\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0668\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1763\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1608\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1062\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1152\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1117\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4927\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2608\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0645\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0589\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0681\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1244\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1252\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0972\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1812\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1353\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2263\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1927\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1152\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0843\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1016\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.2089\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2428\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1207\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1661\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0965\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0715\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.1243\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1445\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1772\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1658\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0965\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1780\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2907\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0609\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.1024\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1510\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0631\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0985\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0932\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1722\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9955\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 31. Best value: 0.139808: 76%|███████▌ | 38/50 [07:32<02:13, 11.10s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.4111\n",
"[I 2025-11-21 06:48:11,241] Trial 37 finished with value: 0.16814614832401276 and parameters: {'n_estimators': 510, 'max_depth': 10, 'learning_rate': 0.01975513489012516, 'subsample': 0.9629905966826205, 'colsample_bytree': 0.9284423410314289, 'min_child_weight': 15.500160526027308, 'gamma': 7.411680425969438, 'reg_lambda': 0.1332306966862163, 'reg_alpha': 0.06173406969900622}. Best is trial 31 with value: 0.13980776071548462.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3849\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0249\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1170\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0655\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0428\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0653\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0662\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0707\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0809\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0955\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2516\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.3235\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1215\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1190\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1708\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0950\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0806\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0597\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0770\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2457\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2136\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0684\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0690\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1665\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1045\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1019\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0945\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1102\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5476\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.1270\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0800\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0553\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0764\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0941\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0999\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0836\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1431\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0750\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2179\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1770\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0930\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0742\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0976\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1119\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2572\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1362\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1482\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0612\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0540\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0882\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1406\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1886\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.0986\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0826\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1764\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2246\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0677\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0529\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1392\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0729\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0943\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0835\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1575\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.9012\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.2825\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 31. Best value: 0.139808: 78%|███████▊ | 39/50 [07:42<02:00, 10.95s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"[I 2025-11-21 06:48:21,826] Trial 38 finished with value: 0.14074528217315674 and parameters: {'n_estimators': 397, 'max_depth': 9, 'learning_rate': 0.006631795602492822, 'subsample': 0.9097390484613185, 'colsample_bytree': 0.9744985951049318, 'min_child_weight': 9.273298990985438, 'gamma': 9.904532135023196, 'reg_lambda': 0.003838523255742676, 'reg_alpha': 0.01844000587015834}. Best is trial 31 with value: 0.13980776071548462.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4022\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0230\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1196\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0540\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0443\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0660\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0734\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0720\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0876\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0994\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2952\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.3240\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1232\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.0436\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1355\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0973\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.0811\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0624\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0765\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2574\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.2213\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0731\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0733\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1669\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1281\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1035\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0985\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1108\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5562\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2184\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0793\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0563\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0697\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1042\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.0993\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0861\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1489\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0760\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2170\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1860\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0948\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0780\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0998\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1168\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2567\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1249\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1384\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0674\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0541\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0907\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1392\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1832\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1097\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0862\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1773\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2371\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0639\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0548\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1405\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0708\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0952\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0849\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1638\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.8940\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 31. Best value: 0.139808: 80%|████████ | 40/50 [07:55<01:54, 11.43s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3871\n",
"[I 2025-11-21 06:48:34,382] Trial 39 finished with value: 0.14491093158721924 and parameters: {'n_estimators': 502, 'max_depth': 9, 'learning_rate': 0.006057622879773797, 'subsample': 0.8802586406446875, 'colsample_bytree': 0.9616936426777657, 'min_child_weight': 10.554550101754895, 'gamma': 9.163352269785218, 'reg_lambda': 0.0025836476475229703, 'reg_alpha': 0.0017916391735657911}. Best is trial 31 with value: 0.13980776071548462.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3546\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0430\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0740\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0494\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0432\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0730\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0534\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0694\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0854\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0955\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2344\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.1527\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1150\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1712\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1731\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.1052\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1201\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1040\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1222\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.1895\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3194\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0620\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0515\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2423\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0469\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0999\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0913\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1095\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.3941\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0559\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0889\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0643\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0734\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0635\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1123\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0805\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.0880\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0665\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2225\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1374\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0977\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0884\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0844\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0865\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2590\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2449\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1410\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0774\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0569\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0906\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1349\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.2010\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.0935\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0697\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1723\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1918\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0678\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0455\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1275\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0676\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0969\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0743\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1375\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 40. Best value: 0.131871: 82%|████████▏ | 41/50 [08:01<01:28, 9.85s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 0.6383\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.3275\n",
"[I 2025-11-21 06:48:40,557] Trial 40 finished with value: 0.13187070190906525 and parameters: {'n_estimators': 237, 'max_depth': 10, 'learning_rate': 0.007208521476947246, 'subsample': 0.9976215657447413, 'colsample_bytree': 0.9805826955270731, 'min_child_weight': 17.36078294731144, 'gamma': 9.640111116962952, 'reg_lambda': 0.00403203018973392, 'reg_alpha': 0.01612310218130357}. Best is trial 40 with value: 0.13187070190906525.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3579\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0415\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0758\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0507\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0437\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0788\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0572\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0697\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0871\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0955\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2347\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.1606\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1138\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1686\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1690\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.1027\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1199\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1135\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1200\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.1896\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3260\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0586\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0535\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2434\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0490\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1028\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0878\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1102\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4017\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0566\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0885\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0621\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0746\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0669\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1138\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0843\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.0900\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0677\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2217\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1415\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1091\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0890\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0842\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0880\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2585\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2362\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1386\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0762\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0568\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0910\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1358\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1887\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.0962\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0696\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1730\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2050\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0704\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0463\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1270\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0688\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0958\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0744\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1377\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.6599\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 40. Best value: 0.131871: 84%|████████▍ | 42/50 [08:09<01:13, 9.18s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3311\n",
"[I 2025-11-21 06:48:48,175] Trial 41 finished with value: 0.1332039088010788 and parameters: {'n_estimators': 266, 'max_depth': 10, 'learning_rate': 0.006853967874135967, 'subsample': 0.9974746192157811, 'colsample_bytree': 0.9908871414425438, 'min_child_weight': 17.439046835416363, 'gamma': 9.416557661528952, 'reg_lambda': 0.006523342132647691, 'reg_alpha': 0.0076502525657167475}. Best is trial 40 with value: 0.13187070190906525.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3476\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0441\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0715\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0492\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0433\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0704\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0527\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0692\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0833\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0958\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2310\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.1452\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1160\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1759\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1763\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.1063\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1204\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1055\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1393\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.1919\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3125\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0642\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0495\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2416\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0445\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1030\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0884\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1077\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.3829\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0579\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0894\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0685\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0749\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0600\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1131\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0761\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.0852\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0653\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2238\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1303\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1064\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0895\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0831\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0828\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2585\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2538\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1406\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0805\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0554\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0881\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1346\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.2073\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.0913\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0695\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1714\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1817\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0688\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0460\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1236\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0668\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0969\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0703\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1362\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.6147\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.3170\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 42. Best value: 0.130898: 86%|████████▌ | 43/50 [08:17<01:02, 8.93s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"[I 2025-11-21 06:48:56,504] Trial 42 finished with value: 0.13089781999588013 and parameters: {'n_estimators': 245, 'max_depth': 10, 'learning_rate': 0.00653888807012264, 'subsample': 0.9967872969305516, 'colsample_bytree': 0.9832808317708923, 'min_child_weight': 17.845077233464792, 'gamma': 9.641681800129554, 'reg_lambda': 0.003981302760434486, 'reg_alpha': 0.006809956939330526}. Best is trial 42 with value: 0.13089781999588013.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4450\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0277\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0977\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0555\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0586\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0792\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0700\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0690\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0891\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0903\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2851\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.2252\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1092\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1232\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1275\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0944\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1274\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1070\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1043\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2198\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3408\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0650\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0676\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.1981\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1319\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1032\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0826\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1081\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4482\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0870\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0762\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0602\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0741\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0896\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1190\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0944\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1189\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0762\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2194\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1671\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0987\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0971\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0898\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1149\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2547\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1715\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1533\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0676\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0632\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0965\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1326\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1749\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1309\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0838\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1843\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2319\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0616\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0511\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1439\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0774\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0981\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0847\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1522\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 42. Best value: 0.130898: 88%|████████▊ | 44/50 [08:25<00:51, 8.62s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 0.8023\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.3823\n",
"[I 2025-11-21 06:49:04,423] Trial 43 finished with value: 0.1435706615447998 and parameters: {'n_estimators': 254, 'max_depth': 10, 'learning_rate': 0.011487108666964908, 'subsample': 0.9992064960643589, 'colsample_bytree': 0.9945838132680425, 'min_child_weight': 17.63014429853454, 'gamma': 9.810490394411438, 'reg_lambda': 0.0031497164107323447, 'reg_alpha': 0.006444426519122391}. Best is trial 42 with value: 0.13089781999588013.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3500\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0360\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0612\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0280\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0441\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0691\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0572\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0676\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0790\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0920\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2315\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.1314\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1205\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1827\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1766\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.1149\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1116\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0993\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1334\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2811\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3062\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0702\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0568\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2442\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0441\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0984\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1393\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1096\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.3606\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0512\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0815\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0649\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0748\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0606\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1074\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0754\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.0878\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0657\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2216\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1238\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0973\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0862\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0804\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0794\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2591\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2680\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1863\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0717\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0574\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0779\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1413\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.2613\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1155\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0704\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1725\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.1747\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0664\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0483\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1089\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0613\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0976\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0732\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1298\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.5801\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 42. Best value: 0.130898: 90%|█████████ | 45/50 [08:34<00:43, 8.63s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3049\n",
"[I 2025-11-21 06:49:13,061] Trial 44 finished with value: 0.13201647996902466 and parameters: {'n_estimators': 239, 'max_depth': 10, 'learning_rate': 0.006649839953631768, 'subsample': 0.9701897995405232, 'colsample_bytree': 0.971843511805838, 'min_child_weight': 19.615234760354518, 'gamma': 9.211023180121648, 'reg_lambda': 0.0011574176097830856, 'reg_alpha': 0.0145476578826059}. Best is trial 42 with value: 0.13089781999588013.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.3865\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0340\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0672\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0306\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0462\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0795\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0630\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0690\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0845\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0925\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2482\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.1565\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1164\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1649\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1586\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.1048\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1093\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1010\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1196\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2841\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3308\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0638\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0610\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2494\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.0537\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.0996\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1460\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1104\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4039\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0473\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0815\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0615\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0728\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0709\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1069\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0818\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1027\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0678\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2204\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1287\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1044\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0880\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0858\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0899\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2589\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.2355\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.2089\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0637\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0607\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0816\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1389\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1982\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1006\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0674\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1768\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2023\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0621\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0475\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1224\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0633\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0984\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0753\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1355\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 42. Best value: 0.130898: 92%|█████████▏| 46/50 [08:43<00:34, 8.73s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 0.6501\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.3361\n",
"[I 2025-11-21 06:49:22,041] Trial 45 finished with value: 0.13584870100021362 and parameters: {'n_estimators': 245, 'max_depth': 10, 'learning_rate': 0.008084059565638376, 'subsample': 0.971034543803081, 'colsample_bytree': 0.9592538170167957, 'min_child_weight': 19.732366134183383, 'gamma': 9.12514881438711, 'reg_lambda': 0.0011921740812147262, 'reg_alpha': 0.0035119800931755754}. Best is trial 42 with value: 0.13089781999588013.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.5068\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0871\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.2271\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0525\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0583\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0589\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.1043\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0538\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.1194\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1042\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.3100\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.7459\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1292\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1651\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1027\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0796\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1006\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.0840\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.0914\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.4754\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.6479\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.1211\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0638\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2030\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.2318\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1131\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.1424\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1195\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.5915\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.2386\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0605\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0567\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0689\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.1142\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1354\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0925\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1955\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.1136\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2010\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.2506\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1122\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.1440\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.1351\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1375\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2348\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1110\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1579\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.1027\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0797\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.1182\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1254\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1694\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1966\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0968\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1858\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.3016\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0654\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.1043\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1754\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0745\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.1068\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0876\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1562\n",
"Fold 63: train [0:525), val [525:532)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 42. Best value: 0.130898: 94%|█████████▍| 47/50 [08:50<00:25, 8.37s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 63 MAPE: 1.0145\n",
"Fold 64: train [0:532), val [532:539)\n",
" Fold 64 MAPE: 0.4409\n",
"[I 2025-11-21 06:49:29,572] Trial 46 finished with value: 0.18541386723518372 and parameters: {'n_estimators': 243, 'max_depth': 10, 'learning_rate': 0.1622074649058784, 'subsample': 0.9734289255486961, 'colsample_bytree': 0.9527553781096747, 'min_child_weight': 19.669921672995635, 'gamma': 9.051518489917061, 'reg_lambda': 0.00135461684665426, 'reg_alpha': 0.0037447696861444904}. Best is trial 42 with value: 0.13089781999588013.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4335\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0435\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0925\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0444\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0429\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0914\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0878\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0690\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0886\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0785\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2908\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.2196\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1122\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1171\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1286\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0889\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1145\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1232\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1076\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.3096\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3445\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0577\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0644\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2285\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1553\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1010\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0831\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1098\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4565\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0719\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0755\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0586\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0712\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0912\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1052\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0896\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1492\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0731\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2225\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1546\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1138\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0895\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0973\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1074\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2610\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1716\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1744\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0585\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0618\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0857\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1397\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1742\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1394\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0761\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1827\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2301\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0611\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0522\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1378\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0709\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0972\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0845\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1460\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.7540\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 42. Best value: 0.130898: 96%|█████████▌| 48/50 [08:56<00:15, 7.68s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3783\n",
"[I 2025-11-21 06:49:35,643] Trial 47 finished with value: 0.1445065140724182 and parameters: {'n_estimators': 203, 'max_depth': 10, 'learning_rate': 0.014827314116583536, 'subsample': 0.9525096293526462, 'colsample_bytree': 0.901379028008791, 'min_child_weight': 18.046688889957778, 'gamma': 8.768769043427087, 'reg_lambda': 0.001891472038386335, 'reg_alpha': 0.0011702612294189397}. Best is trial 42 with value: 0.13089781999588013.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4454\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0335\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.1018\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0526\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0447\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0772\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0660\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0698\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0883\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.0896\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2850\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.2299\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1174\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1239\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1356\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0939\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1232\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1046\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1064\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2163\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3443\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0610\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0634\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.3591\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1231\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1046\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0812\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1094\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4571\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0654\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0799\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0532\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0727\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0899\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1199\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0891\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1205\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0773\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2209\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1616\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.0985\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0947\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0887\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.1165\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2564\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1640\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.1357\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0701\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0630\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.1077\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1368\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1710\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1103\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0820\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1858\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2411\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0633\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0551\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1375\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0750\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0939\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0859\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1536\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.7832\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 42. Best value: 0.130898: 98%|█████████▊| 49/50 [09:14<00:10, 10.58s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3820\n",
"[I 2025-11-21 06:49:52,973] Trial 48 finished with value: 0.14477942883968353 and parameters: {'n_estimators': 453, 'max_depth': 9, 'learning_rate': 0.006034731914956041, 'subsample': 0.9861820917307702, 'colsample_bytree': 0.9720321682717774, 'min_child_weight': 16.991461267565494, 'gamma': 9.428490881618538, 'reg_lambda': 0.005409142250268752, 'reg_alpha': 0.0096855920627221}. Best is trial 42 with value: 0.13089781999588013.\n",
"Fold 0: train [0:84), val [84:91)\n",
" Fold 0 MAPE: 0.4199\n",
"Fold 1: train [0:91), val [91:98)\n",
" Fold 1 MAPE: 0.0443\n",
"Fold 2: train [0:98), val [98:105)\n",
" Fold 2 MAPE: 0.0830\n",
"Fold 3: train [0:105), val [105:112)\n",
" Fold 3 MAPE: 0.0404\n",
"Fold 4: train [0:112), val [112:119)\n",
" Fold 4 MAPE: 0.0470\n",
"Fold 5: train [0:119), val [119:126)\n",
" Fold 5 MAPE: 0.0887\n",
"Fold 6: train [0:126), val [126:133)\n",
" Fold 6 MAPE: 0.0668\n",
"Fold 7: train [0:133), val [133:140)\n",
" Fold 7 MAPE: 0.0676\n",
"Fold 8: train [0:140), val [140:147)\n",
" Fold 8 MAPE: 0.0840\n",
"Fold 9: train [0:147), val [147:154)\n",
" Fold 9 MAPE: 0.1017\n",
"Fold 10: train [0:154), val [154:161)\n",
" Fold 10 MAPE: 0.2719\n",
"Fold 11: train [0:161), val [161:168)\n",
" Fold 11 MAPE: 0.1953\n",
"Fold 12: train [0:168), val [168:175)\n",
" Fold 12 MAPE: 0.1121\n",
"Fold 13: train [0:175), val [175:182)\n",
" Fold 13 MAPE: 0.1233\n",
"Fold 14: train [0:182), val [182:189)\n",
" Fold 14 MAPE: 0.1366\n",
"Fold 15: train [0:189), val [189:196)\n",
" Fold 15 MAPE: 0.0916\n",
"Fold 16: train [0:196), val [196:203)\n",
" Fold 16 MAPE: 0.1127\n",
"Fold 17: train [0:203), val [203:210)\n",
" Fold 17 MAPE: 0.1097\n",
"Fold 18: train [0:210), val [210:217)\n",
" Fold 18 MAPE: 0.1102\n",
"Fold 19: train [0:217), val [217:224)\n",
" Fold 19 MAPE: 0.2943\n",
"Fold 20: train [0:224), val [224:231)\n",
" Fold 20 MAPE: 0.3331\n",
"Fold 21: train [0:231), val [231:238)\n",
" Fold 21 MAPE: 0.0596\n",
"Fold 22: train [0:238), val [238:245)\n",
" Fold 22 MAPE: 0.0620\n",
"Fold 23: train [0:245), val [245:252)\n",
" Fold 23 MAPE: 0.2493\n",
"Fold 24: train [0:252), val [252:259)\n",
" Fold 24 MAPE: 0.1208\n",
"Fold 25: train [0:259), val [259:266)\n",
" Fold 25 MAPE: 0.1013\n",
"Fold 26: train [0:266), val [266:273)\n",
" Fold 26 MAPE: 0.0777\n",
"Fold 27: train [0:273), val [273:280)\n",
" Fold 27 MAPE: 0.1112\n",
"Fold 28: train [0:280), val [280:287)\n",
" Fold 28 MAPE: 0.4419\n",
"Fold 29: train [0:287), val [287:294)\n",
" Fold 29 MAPE: 0.0631\n",
"Fold 30: train [0:294), val [294:301)\n",
" Fold 30 MAPE: 0.0774\n",
"Fold 31: train [0:301), val [301:308)\n",
" Fold 31 MAPE: 0.0582\n",
"Fold 32: train [0:308), val [308:315)\n",
" Fold 32 MAPE: 0.0718\n",
"Fold 33: train [0:315), val [315:322)\n",
" Fold 33 MAPE: 0.0853\n",
"Fold 34: train [0:322), val [322:329)\n",
" Fold 34 MAPE: 0.1072\n",
"Fold 35: train [0:329), val [329:336)\n",
" Fold 35 MAPE: 0.0868\n",
"Fold 36: train [0:336), val [336:343)\n",
" Fold 36 MAPE: 0.1155\n",
"Fold 37: train [0:343), val [343:350)\n",
" Fold 37 MAPE: 0.0702\n",
"Fold 38: train [0:350), val [350:357)\n",
" Fold 38 MAPE: 0.2200\n",
"Fold 39: train [0:357), val [357:364)\n",
" Fold 39 MAPE: 0.1619\n",
"Fold 40: train [0:364), val [364:371)\n",
" Fold 40 MAPE: 0.1012\n",
"Fold 41: train [0:371), val [371:378)\n",
" Fold 41 MAPE: 0.0906\n",
"Fold 42: train [0:378), val [378:385)\n",
" Fold 42 MAPE: 0.0872\n",
"Fold 43: train [0:385), val [385:392)\n",
" Fold 43 MAPE: 0.0999\n",
"Fold 44: train [0:392), val [392:399)\n",
" Fold 44 MAPE: 0.2565\n",
"Fold 45: train [0:399), val [399:406)\n",
" Fold 45 MAPE: 0.1950\n",
"Fold 46: train [0:406), val [406:413)\n",
" Fold 46 MAPE: 0.2151\n",
"Fold 47: train [0:413), val [413:420)\n",
" Fold 47 MAPE: 0.0618\n",
"Fold 48: train [0:420), val [420:427)\n",
" Fold 48 MAPE: 0.0626\n",
"Fold 49: train [0:427), val [427:434)\n",
" Fold 49 MAPE: 0.0872\n",
"Fold 50: train [0:434), val [434:441)\n",
" Fold 50 MAPE: 0.1407\n",
"Fold 51: train [0:441), val [441:448)\n",
" Fold 51 MAPE: 0.1777\n",
"Fold 52: train [0:448), val [448:455)\n",
" Fold 52 MAPE: 0.1176\n",
"Fold 53: train [0:455), val [455:462)\n",
" Fold 53 MAPE: 0.0748\n",
"Fold 54: train [0:462), val [462:469)\n",
" Fold 54 MAPE: 0.1819\n",
"Fold 55: train [0:469), val [469:476)\n",
" Fold 55 MAPE: 0.2243\n",
"Fold 56: train [0:476), val [476:483)\n",
" Fold 56 MAPE: 0.0614\n",
"Fold 57: train [0:483), val [483:490)\n",
" Fold 57 MAPE: 0.0483\n",
"Fold 58: train [0:490), val [490:497)\n",
" Fold 58 MAPE: 0.1361\n",
"Fold 59: train [0:497), val [497:504)\n",
" Fold 59 MAPE: 0.0706\n",
"Fold 60: train [0:504), val [504:511)\n",
" Fold 60 MAPE: 0.0954\n",
"Fold 61: train [0:511), val [511:518)\n",
" Fold 61 MAPE: 0.0787\n",
"Fold 62: train [0:518), val [518:525)\n",
" Fold 62 MAPE: 0.1449\n",
"Fold 63: train [0:525), val [525:532)\n",
" Fold 63 MAPE: 0.7173\n",
"Fold 64: train [0:532), val [532:539)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Best trial: 42. Best value: 0.130898: 100%|██████████| 50/50 [09:30<00:00, 11.41s/it]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" Fold 64 MAPE: 0.3774\n",
"[I 2025-11-21 06:50:09,464] Trial 49 finished with value: 0.14122478663921356 and parameters: {'n_estimators': 313, 'max_depth': 10, 'learning_rate': 0.008001649721497698, 'subsample': 0.9523855649067695, 'colsample_bytree': 0.9977166347125465, 'min_child_weight': 18.874372220443018, 'gamma': 8.691345160139507, 'reg_lambda': 0.0010298493181676324, 'reg_alpha': 0.0032992737388377502}. Best is trial 42 with value: 0.13089781999588013.\n",
"Best value (MAPE): 0.13089781999588013\n",
"Best params:\n",
" n_estimators: 245\n",
" max_depth: 10\n",
" learning_rate: 0.00653888807012264\n",
" subsample: 0.9967872969305516\n",
" colsample_bytree: 0.9832808317708923\n",
" min_child_weight: 17.845077233464792\n",
" gamma: 9.641681800129554\n",
" reg_lambda: 0.003981302760434486\n",
" reg_alpha: 0.006809956939330526\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"\n"
]
}
],
"source": [
"study = optuna.create_study(direction=\"minimize\", study_name=\"xgb_lrt_walkforward\")\n",
"study.optimize(objective, n_trials=50, show_progress_bar=True)\n",
"\n",
"print(\"Best value (MAPE):\", study.best_value)\n",
"print(\"Best params:\")\n",
"for k, v in study.best_params.items():\n",
" print(f\" {k}: {v}\")\n"
]
},
{
"cell_type": "code",
"execution_count": 34,
"id": "d0526fe2",
"metadata": {},
"outputs": [],
"source": [
"# save best params to a file\n",
"import json\n",
"with open('best_xgb_params.json', 'w') as f:\n",
" json.dump(study.best_params, f, indent=4)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "a6e9a37d",
"metadata": {},
"outputs": [],
"source": [
"best_params = study.best_params\n",
"best_params.update({\n",
" \"objective\": \"reg:squarederror\",\n",
" \"random_state\": 42,\n",
" \"n_jobs\": -1,\n",
"})\n",
"\n",
"final_model = XGBRegressor(**best_params)\n",
"\n",
"X_full = df_fe[base_cols + fe_cols]\n",
"y_full = df_fe[y_col]\n",
"\n",
"final_model.fit(X_full, y_full)\n"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "965fe7be",
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"from pandas.tseries.frequencies import to_offset\n",
"\n",
"def forecast_h_steps(\n",
" model,\n",
" df_history: pd.DataFrame,\n",
" y_col: str,\n",
" fe_cols: list,\n",
" base_cols: list,\n",
" h: int,\n",
" df_future_base: pd.DataFrame = None,\n",
"):\n",
" \"\"\"\n",
" Iterative one-step-ahead forecast for h periods ahead, with no leakage.\n",
" \n",
" - model: fitted regressor (e.g., XGBRegressor)\n",
" - df_history: dataframe up to last observed time, with y_col and features\n",
" (you can just pass df_fe, the dropna()-ed engineered df)\n",
" - y_col: target column name\n",
" - fe_cols: list of y-derived feature names (lags, rolling, diff)\n",
" - base_cols: non-y features that are known in advance (calendar, holidays, etc.)\n",
" - h: forecast horizon (int), e.g. 56\n",
" - df_future_base: dataframe of size h x len(base_cols) with future base features.\n",
" If base_cols is empty, this can be None.\n",
" \"\"\"\n",
" # --- build y history from last available real data ---\n",
" y_history = df_history[y_col].copy()\n",
"\n",
" # --- build future index ---\n",
" if df_future_base is not None:\n",
" if len(df_future_base) != h:\n",
" raise ValueError(\"df_future_base must have exactly h rows.\")\n",
" future_index = df_future_base.index\n",
" X_base_future = df_future_base[base_cols].reset_index(drop=True)\n",
" else:\n",
" # no base features allowed in this case\n",
" if len(base_cols) > 0:\n",
" raise ValueError(\"base_cols is non-empty, but df_future_base is None.\")\n",
" # infer time index if possible, otherwise use simple RangeIndex\n",
" idx = df_history.index\n",
" if isinstance(idx, pd.DatetimeIndex):\n",
" freq = pd.infer_freq(idx)\n",
" if freq is None:\n",
" # fallback: assume daily\n",
" freq = \"D\"\n",
" start = idx[-1] + to_offset(freq)\n",
" future_index = pd.date_range(start=start, periods=h, freq=freq)\n",
" else:\n",
" start = idx[-1] + 1\n",
" future_index = pd.RangeIndex(start=start, stop=start + h)\n",
" # empty base feature frame\n",
" X_base_future = pd.DataFrame(index=range(h))\n",
"\n",
" preds = []\n",
"\n",
" for t in range(h):\n",
" # base features for this step\n",
" if len(base_cols) > 0:\n",
" base_feats_dict = X_base_future.iloc[t].to_dict()\n",
" else:\n",
" base_feats_dict = {}\n",
"\n",
" # y-based features from history (train + previous preds)\n",
" y_feats_dict = make_y_features_one_step(y_history)\n",
"\n",
" # merge to one feature row\n",
" x_row_dict = {**base_feats_dict, **y_feats_dict}\n",
"\n",
" # column order must match training\n",
" # NOTE: we assume the model was trained on (base_cols + fe_cols) in that order\n",
" all_cols = base_cols + fe_cols\n",
" x_row = pd.DataFrame([x_row_dict])[all_cols]\n",
"\n",
" # predict next step\n",
" y_pred_t = model.predict(x_row)[0]\n",
" preds.append(y_pred_t)\n",
"\n",
" # update history with prediction (no true y, no leakage)\n",
" y_history = pd.concat(\n",
" [y_history, pd.Series([y_pred_t], index=[future_index[t]])]\n",
" )\n",
"\n",
" preds = pd.Series(preds, index=future_index, name=f\"{y_col}_forecast\")\n",
" return preds\n"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "8717b801",
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"\n",
"event_dates = pd.to_datetime([\n",
" \"2025-04-24\", # Promo Hari Kartini\n",
" \"2024-06-22\", # Promo HUT Jakarta\n",
" \"2025-06-22\", # Promo HUT Jakarta\n",
" \"2024-06-23\", # Promo HUT Jakarta (masih)\n",
" \"2025-07-01\" # Promo Hari Bhayangkara\n",
"]).normalize()\n"
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "0573dddc",
"metadata": {},
"outputs": [],
"source": [
"import pandas as np\n",
"import numpy as np\n",
"import holidays\n",
"\n",
"def build_calendar_exo(idx: pd.DatetimeIndex) -> pd.DataFrame:\n",
" if not isinstance(idx, pd.DatetimeIndex):\n",
" idx = pd.to_datetime(idx)\n",
"\n",
" full_idx = pd.date_range(idx.min(), idx.max(), freq=\"D\")\n",
" df_full = pd.DataFrame(index=full_idx)\n",
"\n",
" # weekday + weekend\n",
" df_full[\"weekday_num\"] = df_full.index.weekday\n",
" df_full[\"is_weekend\"] = df_full[\"weekday_num\"].isin([5, 6]).astype(int)\n",
"\n",
" # national holidays\n",
" years = sorted(set(df_full.index.year))\n",
" id_hdays = holidays.country_holidays(\"ID\", years=years)\n",
" df_full[\"holiday_name\"] = df_full.index.map(lambda d: id_hdays.get(d, None))\n",
" df_full[\"is_holiday_nat\"] = df_full[\"holiday_name\"].notna().astype(int)\n",
"\n",
" # >>> NEW: events <<<\n",
" df_full[\"events\"] = df_full.index.normalize().isin(event_dates).astype(int)\n",
"\n",
" # unified OFF\n",
" df_full[\"is_off\"] = ((df_full[\"is_weekend\"] == 1) | (df_full[\"is_holiday_nat\"] == 1)).astype(int)\n",
"\n",
" # contiguous blocks\n",
" is_off = df_full[\"is_off\"].values\n",
" block_id = []\n",
" curr_id, prev_off = -1, False\n",
" for flag in is_off:\n",
" if flag == 1 and not prev_off:\n",
" curr_id += 1\n",
" block_id.append(curr_id if flag == 1 else -1)\n",
" prev_off = (flag == 1)\n",
" df_full[\"off_block_id\"] = block_id\n",
"\n",
" off_len = (\n",
" df_full[df_full[\"off_block_id\"] >= 0]\n",
" .groupby(\"off_block_id\")\n",
" .size()\n",
" .rename(\"off_block_len\")\n",
" )\n",
" df_full = df_full.merge(\n",
" off_len, left_on=\"off_block_id\", right_index=True, how=\"left\"\n",
" )\n",
" df_full[\"off_block_len\"] = df_full[\"off_block_len\"].fillna(0).astype(int)\n",
"\n",
" df_full[\"flag_contiguous_off\"] = (\n",
" (df_full[\"is_off\"] == 1) & (df_full[\"off_block_len\"] >= 3)\n",
" ).astype(int)\n",
"\n",
" # almost-contiguous (1-0-1)\n",
" is_off = df_full[\"is_off\"].values\n",
" prev_off = np.r_[False, is_off[:-1] == 1]\n",
" next_off = np.r_[is_off[1:] == 1, False]\n",
" bridge_mask = (is_off == 0) & prev_off & next_off\n",
"\n",
" almost_mask = np.zeros(len(df_full), dtype=bool)\n",
" if bridge_mask.any():\n",
" bridge_idx = np.where(bridge_mask)[0]\n",
" for b in bridge_idx:\n",
" L = b - 1\n",
" while L >= 0 and is_off[L] == 1:\n",
" almost_mask[L] = True\n",
" L -= 1\n",
" R = b + 1\n",
" while R < len(df_full) and is_off[R] == 1:\n",
" almost_mask[R] = True\n",
" R += 1\n",
"\n",
" df_full[\"flag_almost_contiguous_off\"] = (\n",
" almost_mask & (df_full[\"is_off\"] == 1)\n",
" ).astype(int)\n",
"\n",
" # return only what you actually use in base_cols\n",
" df_out = df_full.loc[idx, [\n",
" \"is_weekend\",\n",
" \"is_holiday_nat\",\n",
" \"flag_contiguous_off\",\n",
" \"flag_almost_contiguous_off\",\n",
" \"events\", # <<< make sure this is here\n",
" ]]\n",
"\n",
" return df_out\n"
]
},
{
"cell_type": "code",
"execution_count": 27,
"id": "4c6a95eb",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" is_weekend | \n",
" is_holiday_nat | \n",
" flag_contiguous_off | \n",
" flag_almost_contiguous_off | \n",
" events | \n",
"
\n",
" \n",
" \n",
" \n",
" | 2025-07-07 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-08 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-09 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-10 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-11 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-12 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-13 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-14 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-15 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-16 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-17 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-18 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-19 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-20 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-21 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-22 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-23 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-24 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-25 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-26 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-27 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-28 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-29 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-30 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-07-31 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-01 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-02 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-03 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-04 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-05 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-06 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-07 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-08 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-09 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-10 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-11 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-12 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-13 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-14 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-15 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-16 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-17 | \n",
" 1 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-18 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-19 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-20 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-21 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-22 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-23 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-24 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-25 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-26 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-27 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-28 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-29 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-30 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
" | 2025-08-31 | \n",
" 1 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
" 0 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" is_weekend is_holiday_nat flag_contiguous_off \\\n",
"2025-07-07 0 0 0 \n",
"2025-07-08 0 0 0 \n",
"2025-07-09 0 0 0 \n",
"2025-07-10 0 0 0 \n",
"2025-07-11 0 0 0 \n",
"2025-07-12 1 0 0 \n",
"2025-07-13 1 0 0 \n",
"2025-07-14 0 0 0 \n",
"2025-07-15 0 0 0 \n",
"2025-07-16 0 0 0 \n",
"2025-07-17 0 0 0 \n",
"2025-07-18 0 0 0 \n",
"2025-07-19 1 0 0 \n",
"2025-07-20 1 0 0 \n",
"2025-07-21 0 0 0 \n",
"2025-07-22 0 0 0 \n",
"2025-07-23 0 0 0 \n",
"2025-07-24 0 0 0 \n",
"2025-07-25 0 0 0 \n",
"2025-07-26 1 0 0 \n",
"2025-07-27 1 0 0 \n",
"2025-07-28 0 0 0 \n",
"2025-07-29 0 0 0 \n",
"2025-07-30 0 0 0 \n",
"2025-07-31 0 0 0 \n",
"2025-08-01 0 0 0 \n",
"2025-08-02 1 0 0 \n",
"2025-08-03 1 0 0 \n",
"2025-08-04 0 0 0 \n",
"2025-08-05 0 0 0 \n",
"2025-08-06 0 0 0 \n",
"2025-08-07 0 0 0 \n",
"2025-08-08 0 0 0 \n",
"2025-08-09 1 0 0 \n",
"2025-08-10 1 0 0 \n",
"2025-08-11 0 0 0 \n",
"2025-08-12 0 0 0 \n",
"2025-08-13 0 0 0 \n",
"2025-08-14 0 0 0 \n",
"2025-08-15 0 0 0 \n",
"2025-08-16 1 0 0 \n",
"2025-08-17 1 1 0 \n",
"2025-08-18 0 0 0 \n",
"2025-08-19 0 0 0 \n",
"2025-08-20 0 0 0 \n",
"2025-08-21 0 0 0 \n",
"2025-08-22 0 0 0 \n",
"2025-08-23 1 0 0 \n",
"2025-08-24 1 0 0 \n",
"2025-08-25 0 0 0 \n",
"2025-08-26 0 0 0 \n",
"2025-08-27 0 0 0 \n",
"2025-08-28 0 0 0 \n",
"2025-08-29 0 0 0 \n",
"2025-08-30 1 0 0 \n",
"2025-08-31 1 0 0 \n",
"\n",
" flag_almost_contiguous_off events \n",
"2025-07-07 0 0 \n",
"2025-07-08 0 0 \n",
"2025-07-09 0 0 \n",
"2025-07-10 0 0 \n",
"2025-07-11 0 0 \n",
"2025-07-12 0 0 \n",
"2025-07-13 0 0 \n",
"2025-07-14 0 0 \n",
"2025-07-15 0 0 \n",
"2025-07-16 0 0 \n",
"2025-07-17 0 0 \n",
"2025-07-18 0 0 \n",
"2025-07-19 0 0 \n",
"2025-07-20 0 0 \n",
"2025-07-21 0 0 \n",
"2025-07-22 0 0 \n",
"2025-07-23 0 0 \n",
"2025-07-24 0 0 \n",
"2025-07-25 0 0 \n",
"2025-07-26 0 0 \n",
"2025-07-27 0 0 \n",
"2025-07-28 0 0 \n",
"2025-07-29 0 0 \n",
"2025-07-30 0 0 \n",
"2025-07-31 0 0 \n",
"2025-08-01 0 0 \n",
"2025-08-02 0 0 \n",
"2025-08-03 0 0 \n",
"2025-08-04 0 0 \n",
"2025-08-05 0 0 \n",
"2025-08-06 0 0 \n",
"2025-08-07 0 0 \n",
"2025-08-08 0 0 \n",
"2025-08-09 0 0 \n",
"2025-08-10 0 0 \n",
"2025-08-11 0 0 \n",
"2025-08-12 0 0 \n",
"2025-08-13 0 0 \n",
"2025-08-14 0 0 \n",
"2025-08-15 0 0 \n",
"2025-08-16 0 0 \n",
"2025-08-17 0 0 \n",
"2025-08-18 0 0 \n",
"2025-08-19 0 0 \n",
"2025-08-20 0 0 \n",
"2025-08-21 0 0 \n",
"2025-08-22 0 0 \n",
"2025-08-23 0 0 \n",
"2025-08-24 0 0 \n",
"2025-08-25 0 0 \n",
"2025-08-26 0 0 \n",
"2025-08-27 0 0 \n",
"2025-08-28 0 0 \n",
"2025-08-29 0 0 \n",
"2025-08-30 0 0 \n",
"2025-08-31 0 0 "
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from pandas.tseries.frequencies import to_offset\n",
"\n",
"h = 56\n",
"\n",
"idx_hist = df_fe.index # DatetimeIndex of your training history\n",
"freq = pd.infer_freq(idx_hist)\n",
"if freq is None:\n",
" freq = \"D\"\n",
"\n",
"# build future index\n",
"start_future = idx_hist[-1] + to_offset(freq)\n",
"future_idx = pd.date_range(start=start_future, periods=h, freq=freq)\n",
"\n",
"# IMPORTANT:\n",
"# contiguity of off-days should be computed on history + future together\n",
"full_idx = pd.date_range(idx_hist.min(), future_idx.max(), freq=freq)\n",
"\n",
"# build flags on the full range\n",
"flags_full = build_calendar_exo(full_idx)\n",
"\n",
"# slice only the future part\n",
"df_future_base_56 = flags_full.loc[future_idx, :]\n",
"\n",
"# keep only the base_cols used by the model, in the same order\n",
"df_future_base_56 = df_future_base_56[base_cols]\n",
"\n",
"df_future_base_56"
]
},
{
"cell_type": "code",
"execution_count": 31,
"id": "9e47552b",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"2025-07-07 3364.089844\n",
"2025-07-08 3595.881836\n",
"2025-07-09 3107.742188\n",
"2025-07-10 3074.942383\n",
"2025-07-11 3143.840332\n",
"Freq: D, Name: jumlah_penumpang_per_hari_forecast, dtype: float32"
]
},
"execution_count": 31,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"h = 56\n",
"\n",
"future_56 = forecast_h_steps(\n",
" model=final_model,\n",
" df_history=df_fe, # your dropna()’d engineered df\n",
" y_col=y_col,\n",
" fe_cols=fe_cols,\n",
" base_cols=base_cols,\n",
" h=h,\n",
" df_future_base=df_future_base_56\n",
")\n",
"\n",
"future_56.head()"
]
},
{
"cell_type": "code",
"execution_count": 33,
"id": "2e08e038",
"metadata": {},
"outputs": [],
"source": [
"# make future_56 a dataframe for easier handling\n",
"future_56 = future_56.to_frame()\n",
"future_56.to_csv('lrt_forecast_xgboost_56_days.csv')"
]
},
{
"cell_type": "code",
"execution_count": 30,
"id": "93688bcf",
"metadata": {},
"outputs": [],
"source": [
"y_test = df_test[y_col]"
]
},
{
"cell_type": "code",
"execution_count": 32,
"id": "e6a632f1",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"MAPE 56-step forecast: 0.12389647960662842 ( 12.389647960662842 % )\n"
]
}
],
"source": [
"from sklearn.metrics import mean_absolute_percentage_error\n",
"import numpy as np\n",
"\n",
"# avoid division by zero: only keep non-zero y\n",
"mask = y_test != 0\n",
"\n",
"mape_56 = mean_absolute_percentage_error(\n",
" y_test[mask].values,\n",
" future_56[mask].values\n",
")\n",
"\n",
"print(\"MAPE 56-step forecast:\", mape_56, \"(\", mape_56 * 100, \"% )\")\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "c6028d84",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": ".venv",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.0"
}
},
"nbformat": 4,
"nbformat_minor": 5
}