Files
anonymisation/.kiro/specs/anonymization-quality-optimization
Domi31tls 340348b820 feat: Phase 1 - Système d'évaluation de la qualité
- Sélection et copie de 27 documents représentatifs (10 simples, 12 moyens, 5 complexes)
- Outil d'annotation CLI complet (tools/annotation_tool.py)
- Guide d'annotation détaillé (docs/annotation_guide.md)
- Évaluateur de qualité (evaluation/quality_evaluator.py)
  * Calcul Précision, Rappel, F1-Score
  * Identification faux positifs/négatifs
  * Métriques par type de PII
  * Export JSON et rapports texte
- Scanner de fuite (evaluation/leak_scanner.py)
  * Détection PII résiduels (CRITIQUE)
  * Détection nouveaux PII (HAUTE)
  * Scan métadonnées PDF (MOYENNE)
- Benchmark de performance (evaluation/benchmark.py)
  * Mesure temps de traitement
  * Mesure CPU/RAM
  * Export JSON/CSV
- Tests unitaires complets pour tous les composants
- Documentation complète du module d'évaluation

Tâches complétées:
- 1.1.1 Sélection de 27 documents (au lieu de 30)
- 1.1.2 Outil d'annotation CLI
- 1.2.1 Évaluateur de qualité
- 1.2.2 Scanner de fuite
- 1.2.3 Benchmark de performance

Prochaines étapes:
- 1.1.3 Annotation des 27 documents (manuel)
- 1.1.4 Enrichissement stopwords médicaux
- 1.3 Mesure de la baseline
2026-03-02 10:07:41 +01:00
..

Spec : Optimisation de la Qualité d'Anonymisation

Vue d'Ensemble

Cette spécification détaille le projet d'optimisation de la qualité d'anonymisation du système de pseudonymisation de documents PDF médicaux.

Objectif : Atteindre un équilibre optimal entre rappel (détection des PII) et précision (éviter les faux positifs) pour garantir la conformité RGPD tout en préservant la lisibilité médicale.

Métriques Cibles

  • Rappel : ≥ 99.5% (maximum 0.5% de PII manqués)
  • Précision : ≥ 97% (maximum 3% de faux positifs)
  • F1-Score : ≥ 0.98
  • Temps de traitement : < 30 secondes par PDF

Corpus de Travail

  • Source : 59 dossiers OGC dans /home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHCB_DocJustificatifs (1)/
  • Sortie existante : 130 fichiers anonymisés + audits dans anonymise/
  • Dataset de test : 30 documents annotés manuellement (à créer)

Contraintes

  • Utilisation de documents réels uniquement (pas de mocks)
  • CPU uniquement (pas de GPU)
  • RAM limitée (< 4 GB par processus)
  • Conformité RGPD stricte

Structure de la Spec

  1. requirements.md : Exigences fonctionnelles et non-fonctionnelles
  2. design.md : Architecture technique et composants détaillés
  3. tasks.md : Plan d'implémentation en 4 phases

Phases du Projet

Phase 1 : Mesure et Baseline (2 semaines)

  • Création du dataset de test annoté (30 documents)
  • Implémentation du système d'évaluation
  • Mesure des performances actuelles

Phase 2 : Amélioration de la Détection (3 semaines)

  • Amélioration des regex (téléphones, emails, adresses, NIR)
  • Implémentation de la détection contextuelle
  • Approche hybride multi-détecteurs

Phase 3 : Validation et Reporting (1 semaine)

  • Validation post-anonymisation
  • Génération de rapports de qualité
  • Tests de régression automatiques

Phase 4 : Documentation et Finalisation (3 jours)

  • Documentation complète
  • Validation finale sur corpus complet
  • Livrables

Livrables Attendus

  1. Dataset de test annoté (30+ documents)
  2. Système d'évaluation automatique
  3. Détecteurs améliorés (regex + contextuel + hybride)
  4. Suite de tests de régression
  5. Rapports de qualité (HTML + JSON)
  6. Documentation (guides + API)
  7. Métriques baseline et finales

Démarrage Rapide

Prérequis

# Installer les dépendances
pip install pytest pytest-cov pydantic structlog jinja2 matplotlib

# Créer les répertoires
mkdir -p tests/ground_truth
mkdir -p reports/quality

Étape 1 : Créer le Dataset Annoté

# Sélectionner 30 documents représentatifs
python tools/select_test_documents.py \
  --source "/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHCB_DocJustificatifs (1)/" \
  --output tests/ground_truth/ \
  --count 30

# Annoter les documents
python tools/annotation_tool.py tests/ground_truth/

Étape 2 : Mesurer la Baseline

# Évaluer le système actuel
python evaluation/quality_evaluator.py \
  --ground-truth tests/ground_truth/ \
  --output reports/baseline_report.html

# Benchmarker les performances
python evaluation/benchmark.py \
  --test-dir tests/ground_truth/ \
  --output reports/baseline_benchmark.json

Étape 3 : Implémenter les Améliorations

Suivre les tâches dans tasks.md phase par phase.

Étape 4 : Valider

# Tests de régression
pytest tests/regression/ --benchmark

# Validation sur corpus complet
python scripts/validate_full_corpus.py \
  --source "/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHCB_DocJustificatifs (1)/" \
  --output reports/final_validation.html

Ressources

  • Documentation : docs/
  • Tests : tests/
  • Configuration : config/quality_config.yml
  • Rapports : reports/

Contact

Pour toute question sur cette spécification, consulter les documents détaillés :

  • requirements.md pour les exigences
  • design.md pour l'architecture
  • tasks.md pour le plan d'implémentation

Statut

  • Requirements définis
  • Design validé
  • Tasks planifiées
  • Implémentation en cours
  • Tests validés
  • Documentation complète
  • Livraison finale

Version : 1.0.0
Date de création : 2024-01-15
Dernière mise à jour : 2024-01-15