docs: update thesis and docs with Cleanlab label filtering integration
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@ -583,6 +583,20 @@ XGBClassifier(
|
||||
positifs (FP) servent d'exemples négatifs, les vrais positifs (TP) d'exemples positifs.
|
||||
Requiert ≥ `XGB_MIN_LABELS` (100) labels avant activation.
|
||||
|
||||
**Filtrage Cleanlab des labels bruités** (`cleanlab>=2.6`, optionnel) :
|
||||
|
||||
Avant l'entraînement XGBoost, un pipeline de *confident learning* filtre les
|
||||
labels SOC probablement erronés :
|
||||
|
||||
1. Entraînement d'un XGBoost rapide (`n_estimators=80, max_depth=4`) en 3-fold CV
|
||||
2. Extraction des `pred_probs` out-of-fold via `cross_val_predict`
|
||||
3. Appel à `cleanlab.filter.find_label_issues(labels=y, pred_probs=pred_probs)`
|
||||
4. Exclusion des indices identifiés comme bruités du jeu d'entraînement
|
||||
5. Recalcul du `scale_pos_weight` sur les données nettoyées
|
||||
|
||||
Le taux de labels filtrés est loggué (`[XGB][name] Cleanlab : N/M labels bruyants supprimés (X.X%)`).
|
||||
En cas d'échec (erreur, dépendance manquante), le pipeline retombe sur les données brutes sans interruption.
|
||||
|
||||
**Ré-entraînement** : Toutes les `XGB_RETRAIN_INTERVAL_HOURS` (168h = 7 jours).
|
||||
|
||||
**Persistance** : `model.save_model()` → fichier `.json`.
|
||||
|
||||
Reference in New Issue
Block a user