| { |
| "model_type": "GradientBoostingRegressor", |
| "feature_columns": [ |
| "is_ramadan", |
| "ramadan_week", |
| "days_to_eid", |
| "is_eid_fitr", |
| "is_eid_adha", |
| "is_hajj_season", |
| "country_encoded", |
| "category_encoded", |
| "temperature", |
| "day_of_week", |
| "month", |
| "hijri_month", |
| "hijri_day" |
| ], |
| "countries": [ |
| "Bahrain", |
| "KSA", |
| "Kuwait", |
| "Oman", |
| "Qatar", |
| "UAE" |
| ], |
| "categories": [ |
| "dates_sweets", |
| "electronics", |
| "fashion_abayas", |
| "gifts", |
| "groceries", |
| "perfumes_oud" |
| ], |
| "metrics": { |
| "mse": 24.44782802085175, |
| "rmse": 4.944474493902436, |
| "mae": 3.8228789470187383, |
| "r2_score": 0.905699037541998 |
| }, |
| "description": "GCC Ramadan Retail Demand Forecasting Model", |
| "input_features": { |
| "is_ramadan": "Boolean (0/1) - Whether it is Ramadan", |
| "ramadan_week": "Integer (0-5) - Week of Ramadan (0 if not Ramadan)", |
| "days_to_eid": "Integer (-1 to 30) - Days until Eid (-1 if not applicable)", |
| "is_eid_fitr": "Boolean (0/1) - Whether it is Eid al-Fitr", |
| "is_eid_adha": "Boolean (0/1) - Whether it is Eid al-Adha", |
| "is_hajj_season": "Boolean (0/1) - Whether it is Hajj season", |
| "country": "String - One of: UAE, KSA, Qatar, Kuwait, Bahrain, Oman", |
| "category": "String - Product category", |
| "temperature": "Float - Temperature in Celsius", |
| "day_of_week": "Integer (0-6) - Day of week", |
| "month": "Integer (1-12) - Gregorian month", |
| "hijri_month": "Integer (1-12) - Hijri month", |
| "hijri_day": "Integer (1-30) - Hijri day" |
| }, |
| "version": "2.1.0", |
| "output": "demand_index - Predicted retail demand index", |
| "changelog": { |
| "2.1.0": "Retrained with Hijri features and temporal split. R2=0.906 (honest). days_to_eid=29% importance.", |
| "2.0.0": "Initial deploy. Random split inflated R2 to 0.992. Missing Hijri features." |
| } |
| } |