Spaces:
Sleeping
Sleeping
File size: 19,675 Bytes
bcf97d6 591b7c9 bcf97d6 591b7c9 bcf97d6 591b7c9 bcf97d6 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 | # =========================================================
# KNOWLEDGE BASE - HACKATHON INDABAX CAMEROON 2026
# Source : Documents officiels + Starter Notebook + Notebooks équipe
# Généré automatiquement à partir de tous les fichiers fournis
# =========================================================
KNOWLEDGE_BASE = [
# ── CONTEXTE GÉNÉRAL ─────────────────────────────────────────────────────
{
"category": "Contexte",
"title": "But de la compétition IndabaX 2026",
"content": (
"Le hackathon IndabaX Cameroon 2026 a pour thème 'L'IA au service de la résilience climatique et sanitaire au Cameroun'. "
"L'objectif principal est de construire un modèle d'intelligence artificielle capable d'anticiper plusieurs jours à l'avance "
"les épisodes de dégradation de la qualité de l'air, pour permettre aux autorités sanitaires d'agir avant que les populations "
"soient exposées. Il s'agit d'un concours de data science organisé par Deep Learning IndabaX Cameroon."
)
},
{
"category": "Contexte",
"title": "Dataset IndabaX 2026 — Vue d'ensemble",
"content": (
"Le dataset contient 87 240 observations météorologiques quotidiennes pour 42 villes des 10 régions administratives du Cameroun, "
"couvrant 6 ans de données continues (du 1er janvier 2020 au 20 décembre 2025). "
"Chaque ligne représente une ville un jour donné. "
"Les colonnes incluent : températures (max, min, moyenne, ressentie), précipitations, vent, ensoleillement, rayonnement solaire, "
"évapotranspiration FAO, codes météo WMO et coordonnées GPS."
)
},
{
"category": "Contexte",
"title": "Liste des 42 villes du dataset par région",
"content": (
"Adamaoua : Tibati, Tignere, Ngaoundere, Meiganga. "
"Centre : Bafia, Akonolinga, Yaounde, Mbalmayo. "
"Est : Bertoua, Abong-Mbang, Batouri, Yokadouma. "
"Extrême-Nord : Maroua, Kousseri, Mokolo, Yagoua. "
"Littoral : Edea, Nkongsamba, Loum. "
"Nord : Garoua, Guider, Poli, Touboro. "
"Nord-Ouest : Bamenda, Kumbo, Wum, Mbengwi. "
"Ouest : Bafoussam, Dschang, Foumban, Mbouda. "
"Sud : Ebolowa, Kribi, Sangmelima, Ambam. "
"Sud-Ouest : Buea, Limbe, Kumba, Mamfe."
)
},
# ── QUALITÉ DE L'AIR ─────────────────────────────────────────────────────
{
"category": "Qualité de l'air",
"title": "Qu'est-ce que le PM2.5 et le pm25_proxy ?",
"content": (
"Le PM2.5 désigne les particules fines de diamètre inférieur à 2,5 micromètres — les plus dangereuses car elles pénètrent "
"profondément dans les poumons. Dans le dataset IndabaX, 'pm25_proxy' est un indice calculé comme proxy car il n'existe pas "
"de mesures directes de PM2.5 au sol. "
"Formule du proxy : 0.35 × température_moyenne + 0.25 × rayonnement_solaire + 0.20 × evapotranspiration "
"+ 8.0 × (vent < 5 km/h) + 5.0 × (pas de pluie) + 4.0 × (saison_sèche). "
"Plus cette valeur est haute, plus la qualité de l'air est mauvaise."
)
},
{
"category": "Qualité de l'air",
"title": "Seuils OMS et niveaux d'alerte PM2.5",
"content": (
"Niveaux de risque basés sur le pm25_proxy : "
"Vert (Sain) : activités normales, air de bonne qualité. "
"Jaune (Modéré) : prudence pour les asthmatiques et personnes sensibles. "
"Orange (Alerte) : réduction des efforts physiques intenses recommandée. "
"Rouge (Urgence/Dangereux) : air dangereux, port du masque recommandé, limitation des déplacements. "
"Les KPI du dashboard calculent : ville la plus polluée, région la plus polluée, jour le plus critique, "
"nombre de villes en zone dangereuse, et mois le plus pollué."
)
},
{
"category": "Qualité de l'air",
"title": "5 mécanismes de dégradation de la qualité de l'air au Cameroun",
"content": (
"1. Accumulation (2-7 jours) : vent faible + absence de pluie → concentration croissante de PM2.5, PM10, CO, NO2. "
"2. Réactions photochimiques (quelques heures) : fort ensoleillement + chaleur > 32°C → formation d'ozone troposphérique (O3) et smog. "
"3. Transport d'aérosols désertiques (3-14 jours) : vent fort du Sahara via l'Harmattan → pic de particules minérales PM10 dans le Nord. "
"4. Feux de brousse (1-5 jours) : saison sèche + pratiques agricoles → particules fines PM2.5 et fumée sur grandes distances. "
"5. Inversion thermique (1-3 jours) : nuit froide + jour chaud en zone encaissée → emprisonnement des polluants en basse altitude. "
"Le seul processus positif est le lessivage : la pluie nettoie naturellement l'atmosphère."
)
},
{
"category": "Qualité de l'air",
"title": "Zones et villes à risque de pollution au Cameroun",
"content": (
"Grand Nord (Maroua, Garoua, Kousseri) : risque aérosols désertiques et harmattan, ~3 millions d'habitants, critique de novembre à mars. "
"Littoral/Douala-Edea : pollution industrielle + trafic dense + humidité stagnante, ~4 millions d'habitants, critique de juillet à septembre. "
"Yaoundé et plateau Centre : smog urbain + feux agricoles périurbains, ~3,5 millions d'habitants, critique de décembre à février. "
"Adamaoua (Ngaoundéré) : feux de brousse + vent de vallée, ~1 million, critique de janvier à mars. "
"Est forestier (Bertoua, Yokadouma) : fumée de brûlis agricole et déforestation, ~800 000 habitants, critique de novembre à avril."
)
},
{
"category": "Qualité de l'air",
"title": "Impacts sanitaires de la mauvaise qualité de l'air",
"content": (
"Impacts sanitaires directs : maladies respiratoires aiguës (asthme, bronchites), irritations oculaires et cutanées, "
"aggravation des pathologies cardiovasculaires, mortalité prématurée chez les enfants et personnes âgées, "
"réduction de la capacité pulmonaire des travailleurs extérieurs. "
"Impacts environnementaux : pluies acides dégradant les sols, dépôt de particules sur la végétation réduisant la photosynthèse, "
"contamination des ressources en eau, accélération de la dégradation des forêts du bassin du Congo."
)
},
# ── VARIABLES DU DATASET ─────────────────────────────────────────────────
{
"category": "Variables",
"title": "Variables du dataset et leur influence sur la qualité de l'air",
"content": (
"CRITIQUE : wind_speed_10m_max (< 5 km/h = stagnation = accumulation polluants), precipitation_sum (pluie = lessivage naturel). "
"TRÈS ÉLEVÉ : weather_code WMO (codes 06=brume sèche, 07=tempête sable, 40-49=brouillard, 95+=orage), "
"temperature_2m_max (> 32°C = accélération réactions photochimiques), shortwave_radiation_sum (catalyse formation ozone). "
"ÉLEVÉ : wind_gusts_10m_max (remise en suspension des particules), wind_direction_10m_dominant (Nord-Est = harmattan saharien), "
"precipitation_hours (durée du lessivage), apparent_temperature_max (chaleur ressentie = vulnérabilité populations). "
"MODÉRÉ-ÉLEVÉ : et0_fao_evapotranspiration (sol sec = poussières mobilisables), sunshine_duration (durée photochimique)."
)
},
{
"category": "Variables",
"title": "Variables dérivées (feature engineering) à construire",
"content": (
"jours_sans_pluie_consecutifs : compte les jours consécutifs sans pluie — à partir de 5 jours = seuil d'alerte. "
"cumul_pluie_7j : somme glissante 7 jours des précipitations — mesure l'effet mémoire du lessivage. "
"indice_stagnation : (1/wind_speed) × (1 - précipitations normalisées) — score 0-10 de stagnation atmosphérique. "
"amplitude_thermique : temp_max - temp_min — grande amplitude = instabilité = inversions thermiques nocturnes. "
"ratio_ensoleillement : sunshine_duration / daylight_duration — potentiel photochimique réel de la journée. "
"saison_locale : saison sèche (mois 11,12,1,2,3) ou saison des pluies — facteur organisateur le plus important. "
"zone_climatique : équatorial, tropical soudanien, tropical sahélien, littoral. "
"Lags temporels : valeurs de J-1 à J-7 pour vent, température — capturer l'inertie atmosphérique. "
"is_dry_season : variable binaire encodant la saison sèche camerounaise."
)
},
{
"category": "Variables",
"title": "Formule pm25_proxy du starter notebook",
"content": (
"Le pm25_proxy (variable cible) est calculé ainsi dans le starter notebook officiel : "
"pm25_proxy = 0.35 × temperature_2m_mean + 0.25 × shortwave_radiation_sum + 0.20 × et0_fao_evapotranspiration "
"+ 8.0 × is_no_wind (vent < 5 km/h) + 5.0 × is_no_rain (précipitations < 0.1 mm) + 4.0 × is_dry_season. "
"Note : c'est une approximation. Le vrai PM2.5 peut être enrichi via NASA MERRA-2 ou OpenAQ."
)
},
# ── MODÉLISATION ─────────────────────────────────────────────────────────
{
"category": "Modélisation",
"title": "Algorithmes et stratégie de modélisation",
"content": (
"Baseline : Random Forest ou Régression logistique avec température max, vent, précipitations, sunshine. "
"Intermédiaire : XGBoost ou LightGBM avec variables dérivées, saison et zone_climatique — métriques : MAE, RMSE, feature importance. "
"Avancé : LSTM ou Transformer temporel sur séries temporelles complètes par ville — métriques : MAPE, CRPS, intervalles de confiance. "
"Validation obligatoire avec TimeSeriesSplit (pas de shuffle aléatoire) pour respecter la chronologie. "
"Optimisation des hyperparamètres avec Optuna ou GridSearchCV. "
"Interprétabilité via SHAP Values — crucial pour expliquer les pics de pollution aux autorités sanitaires."
)
},
{
"category": "Modélisation",
"title": "Variable cible — 3 approches possibles",
"content": (
"Approche A (Hackathon, recommandée) : indice de stagnation atmosphérique calculé entièrement depuis le dataset. Faisable immédiatement. "
"Approche B : weather_code WMO (tempête de sable, brouillard, etc.) — variable déjà dans le dataset, lien direct avec événements extrêmes. "
"Approche C (idéale) : PM2.5 réel depuis données satellitaires NASA MERRA-2 ou stations OpenAQ — nécessite données externes mais maximise l'impact réel. "
"Pour le hackathon : utiliser l'approche A ou B. Pour un projet complet : enrichir avec l'approche C."
)
},
{
"category": "Modélisation",
"title": "Features utilisées dans le modèle baseline du starter notebook",
"content": (
"Features du modèle officiel : temperature_2m_mean, temperature_2m_max, temperature_2m_min, precipitation_sum, "
"wind_speed_10m_max, wind_gusts_10m_max, shortwave_radiation_sum, et0_fao_evapotranspiration, sunshine_ratio, "
"temp_amplitude, is_no_wind, is_no_rain, is_dry_season, month_sin, month_cos, day_of_year, "
"temp_lag1, temp_lag7, wind_lag1, temp_roll7, latitude, longitude, region_enc, city_enc. "
"Encodage cyclique du mois : month_sin = sin(2π × mois/12), month_cos = cos(2π × mois/12)."
)
},
# ── SAISONS ET CLIMATOLOGIE ───────────────────────────────────────────────
{
"category": "Climatologie",
"title": "Saisons et saisonnalité au Cameroun",
"content": (
"Saison sèche au Cameroun : mois 11, 12, 1, 2, 3 (novembre à mars) — période critique pour la pollution. "
"Saison des pluies : d'avril à octobre — la pluie nettoie l'atmosphère, lessivage naturel. "
"Harmattan : vent froid et sec du Nord-Est entre novembre et mars, chargé de particules sahariennes, "
"affecte principalement le Grand Nord (Maroua, Garoua, Kousseri) mais peut atteindre le Centre et le Littoral. "
"Les températures suivent une saisonnalité annuelle régulière et ont montré une tendance à la hausse de 2020 à 2025. "
"Les précipitations sont concentrées sur certains mois, avec les pics en juin-septembre pour le littoral "
"et mars-octobre pour le Centre-Sud."
)
},
{
"category": "Climatologie",
"title": "Zones climatiques du Cameroun et risques spécifiques",
"content": (
"Équatorial Guinéen (Yaoundé, Mbalmayo, Ebolowa, Kribi) : smog urbain, feux agricoles, humidité élevée. "
"Équatorial Camerounais (Bafoussam, Dschang, Buea, Limbe) : brouillard volcanique Buea/Limbe, pollution d'altitude. "
"Tropical Soudanien (Ngaoundéré, Bertoua, Meiganga) : feux de brousse en saison sèche, particules fines. "
"Tropical Sahélien (Maroua, Garoua, Kousseri, Mokolo) : tempêtes de sable, aérosols désertiques, harmattan. "
"Littoral Atlantique (Edéa, Nkongsamba) : pollution industrielle, humidité marine, inversion thermique."
)
},
{
"category": "Climatologie",
"title": "Extrêmes climatiques observés dans le dataset",
"content": (
"Journées à fortes précipitations (> 20 mm) : plus fréquentes en saison des pluies (juin-septembre). "
"Pics de température max ≥ 38°C : localisés principalement dans le Grand Nord (Maroua, Kousseri, Garoua). "
"Rafales extrêmes de vent : définies au 95e percentile — rares mais concentrées sur certaines villes. "
"Amplitude thermique (temp_max - temp_min) : plus grande dans les régions arides du Nord. "
"La température ressentie (apparent_temperature) est souvent supérieure à la température réelle dans les régions humides, "
"et inférieure dans les zones venteuses."
)
},
# ── DASHBOARD ET KPIs ─────────────────────────────────────────────────────
{
"category": "Dashboard",
"title": "15 KPIs du tableau de bord IndabaX 2026",
"content": (
"1. PM2.5 moyen national. 2. Ville la plus polluée. 3. Région la plus polluée. "
"4. Jour le plus critique. 5. Niveau alerte national (code couleur OMS). "
"6. % jours saison sèche critiques. 7. Mois le plus pollué. "
"8. Nombre de villes en zone dangereuse. 9. Région la plus ventée. 10. Amplitude thermique maximale. "
"11. Variable météo la plus corrélée au PM2.5. 12. Feature la plus importante du modèle ML. "
"13. R² du meilleur modèle. 14. PM2.5 prédit à J+7 (Prophet). 15. Nombre de jours dangereux prévus."
)
},
{
"category": "Dashboard",
"title": "Structure du tableau de bord — 5 pages",
"content": (
"Page 1 Accueil (Vue générale) : carte choroplèthe du Cameroun, évolution annuelle pm25_proxy 2020-2025, "
"influence des précipitations sur PM2.5, top villes polluées, influence température sur PM2.5. "
"Page 2 Analyse Spatiale : carte 42 villes colorée PM2.5, top 10 villes les plus polluées, distribution par région, température réelle vs ressentie. "
"Page 3 Analyse Temporelle : évolution PM2.5 par mois/année, précipitations/vent par mois, double axe PM2.5/précipitations, décomposition Prophet. "
"Page 4 Prédiction & Alertes : courbe Prophet avec IC 95%, tableau 7 jours à venir, carte alertes actives, réel vs prédit, comparaison R² modèles. "
"Page 5 Facteurs Climatiques : feature importance top 20, matrice de corrélation, scatter rayonnement/vent vs PM2.5, résidus, bilan hydrique."
)
},
{
"category": "Dashboard",
"title": "Outils techniques du projet",
"content": (
"Frontend dashboard : Streamlit avec graphiques Plotly Express et Plotly Graph Objects pour l'interactivité. "
"Modèles ML : Random Forest, XGBoost, LightGBM, Decision Tree — optimisés avec Optuna. "
"Prévision temporelle : Prophet avec régresseurs météo pour les prédictions à 7 jours. "
"Backend API : FastAPI (Python) avec endpoints /api/kpi, /api/filters, /api/chat. "
"Déploiement : Hugging Face Spaces. "
"Validation : TimeSeriesSplit obligatoire pour respecter la chronologie des données."
)
},
# ── RESSOURCES HYDRIQUES ─────────────────────────────────────────────────
{
"category": "Ressources hydriques",
"title": "Bilan hydrique et agriculture au Cameroun",
"content": (
"Bilan hydrique = Précipitations - ET0 (évapotranspiration FAO). "
"Bilan négatif certains mois = stress hydrique pour l'agriculture. "
"L'évapotranspiration (et0_fao_evapotranspiration) augmente avec la température et le rayonnement solaire. "
"Sol sec (ET0 élevé, précipitations nulles) = réservoir de particules fines mobilisables par le vent. "
"Impact direct sur la qualité de l'air : plus le sol est aride, plus les aérosols minéraux sont en suspension."
)
},
# ── SOURCES DE DONNÉES EXTERNES ──────────────────────────────────────────
{
"category": "Données externes",
"title": "Sources de données externes recommandées",
"content": (
"NASA MERRA-2 / MODIS : données satellitaires PM2.5 et AOD — variable cible réelle ou feature de validation (gratuit). "
"OpenAQ : mesures de stations au sol en Afrique — ground truth pour les villes équipées. "
"FIRMS NASA (VIIRS/MODIS) : points de feux actifs — feature 'feux de brousse à moins de 50 km'. "
"OSM / Données urbaines : densité de population, routes, industries — exposition différentielle des populations. "
"Calendrier agricole : périodes de brûlis, pratiques locales — feature 'risque brûlis actif'."
)
},
] |