From 99b6e7f1d1d9d2888e1857622c7d736bed13f824 Mon Sep 17 00:00:00 2001 From: Domi31tls Date: Mon, 2 Mar 2026 10:42:53 +0100 Subject: [PATCH] =?UTF-8?q?docs:=20Rapport=20d=C3=A9taill=C3=A9=20des=20r?= =?UTF-8?q?=C3=A9sultats=20baseline?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests/ground_truth/BASELINE_RESULTS.md | 152 +++++++++++++++++++++++++ 1 file changed, 152 insertions(+) create mode 100644 tests/ground_truth/BASELINE_RESULTS.md diff --git a/tests/ground_truth/BASELINE_RESULTS.md b/tests/ground_truth/BASELINE_RESULTS.md new file mode 100644 index 0000000..4b4e511 --- /dev/null +++ b/tests/ground_truth/BASELINE_RESULTS.md @@ -0,0 +1,152 @@ +# Résultats Baseline - Système d'Anonymisation + +Date: 2026-03-02 + +## Vue d'ensemble + +Évaluation du système d'anonymisation actuel sur un dataset de 27 documents représentatifs. + +## Configuration + +- **NER**: ✅ Activé (EDS-Pseudo ONNX) +- **VLM**: ❌ Désactivé (Ollama qwen2.5vl:7b) +- **Documents traités**: 25/27 (2 échecs - PDFs protégés par mot de passe) + +## Résultats de Performance + +### Temps de Traitement + +| Métrique | Valeur | +|----------|--------| +| Temps total | 65.55s | +| Temps moyen | **2.62s** par document | +| Temps médiane | 0.84s | +| Temps min | 0.31s | +| Temps max | 17.84s | +| Écart-type | 4.43s | + +### Débit + +| Métrique | Valeur | +|----------|--------| +| Documents/seconde | 0.38 | +| PII/seconde | 97.6 | + +### PII Détectés + +| Métrique | Valeur | +|----------|--------| +| Total PII | **6,395** | +| Moyenne | 255.8 par document | +| Médiane | 54 | +| Min | 0 | +| Max | 1,622 | + +## Validation des Objectifs + +### Objectif de Performance: < 10s par document (sans VLM) + +✅ **ATTEINT** +- Temps moyen: 2.62s ≤ 10.0s +- Temps max: 17.84s ≤ 30.0s (3× objectif) +- **92% des documents** dans l'objectif (23/25) + +### Objectif de Couverture: ≥ 80% des documents dans l'objectif + +✅ **ATTEINT** (92%) + +## Analyse de Corrélation + +### Documents avec beaucoup de PII (>512) +- Nombre: 5 documents +- Temps moyen: **10.25s** +- Observation: Corrélation forte entre nombre de PII et temps de traitement + +### Documents avec peu de PII (<128) +- Nombre: 15 documents +- Temps moyen: **0.54s** +- Observation: Traitement très rapide pour les documents simples + +## Documents Lents (> 5.24s) + +| Document | Temps | PII | +|----------|-------|-----| +| 025_complexe_trackare_trackare-02016820-23095226 | 17.84s | 1,622 | +| 026_complexe_trackare_trackare-15000536-23074384 | 12.04s | 1,056 | +| 027_complexe_trackare_trackare-10027557-23183041 | 8.78s | 859 | +| 024_complexe_trackare_trackare-17001141-23066188 | 8.55s | 804 | + +**Observation**: Tous les documents lents sont des documents Trackare complexes avec >800 PII. + +## Documents Rapides (< 1.31s) + +| Document | Temps | PII | +|----------|-------|-----| +| 021_moyen_compte_rendu_CRO_23201117.redacted_raster | 0.31s | 0 | +| 004_simple_anapath_anapath_53_23224186.redacted_raster | 0.35s | 0 | +| 022_moyen_compte_rendu_cro2_516_23187028 | 0.37s | 29 | +| 001_simple_unknown_BACTERIO_23018396 | 0.38s | 43 | +| 010_simple_anapath_ANAPATH_23217289 | 0.40s | 54 | + +**Observation**: Documents déjà anonymisés (redacted_raster) ou simples avec peu de PII. + +## Types de PII Détectés (Exemple: Document Complexe) + +Document: `025_complexe_trackare_trackare-02016820-23095226_02016820_23095226.pdf` + +| Type | Nombre | +|------|--------| +| NOM_EXTRACTED | 1,244 | +| NOM | 168 | +| NOM_GLOBAL | 88 | +| DATE_NAISSANCE | 35 | +| EPISODE | 33 | +| ADRESSE | 8 | +| TEL | 8 | +| CODE_POSTAL | 7 | +| VILLE | 6 | +| Autres | 25 | + +## Échecs + +2 documents ont échoué en raison de protection par mot de passe: +- `006_simple_anapath_ANAPATH_23142660.pdf` +- `007_simple_anapath_ANAPATH_23096332.pdf` + +## Conclusions + +### Points Forts ✅ + +1. **Performance excellente**: Temps moyen de 2.62s bien en dessous de l'objectif (10s) +2. **Couverture élevée**: 92% des documents traités dans l'objectif +3. **Scalabilité**: Traitement rapide des documents simples (<1s) +4. **Détection efficace**: 6,395 PII détectés sur 25 documents + +### Points d'Attention ⚠️ + +1. **Documents complexes**: Les documents Trackare avec >800 PII prennent 8-18s +2. **Variabilité**: Écart-type élevé (4.43s) indique une grande variabilité +3. **Propagation globale**: Beaucoup de détections `*_GLOBAL` (propagation automatique) +4. **PDFs protégés**: 2 documents non traités (protection par mot de passe) + +### Prochaines Étapes + +1. **Annotation manuelle** (Tâche 1.1.3): Annoter les 27 documents pour évaluation qualité +2. **Évaluation qualité** (Tâche 1.3.1): Calculer Précision, Rappel, F1-Score +3. **Analyse des faux positifs/négatifs** (Tâche 1.3.3): Identifier les patterns problématiques +4. **Optimisation GPU** (Phase 2): Accélérer le traitement des documents complexes +5. **Amélioration des détecteurs** (Phase 2): Regex, contextuel, hybride + +## Fichiers Générés + +- `tests/ground_truth/pdfs/baseline_anonymized/` - 25 documents anonymisés (vector + raster PDF) +- `tests/ground_truth/pdfs/baseline_anonymized/batch_results.json` - Résultats détaillés du batch +- `tests/ground_truth/benchmarks/baseline_benchmark.json` - Statistiques de performance +- `tests/ground_truth/benchmarks/baseline_benchmark.csv` - Export CSV pour analyse + +## Outils Disponibles + +- `tools/batch_anonymize_test_dataset.py` - Anonymisation en batch +- `tools/run_baseline_benchmark.py` - Génération du rapport de benchmark +- `tools/show_anonymization_example.py` - Affichage détaillé d'un document +- `tools/show_batch_summary.py` - Résumé global du batch