Files
anonymisation/docs/camembert-bio-deid-v3-specs.md
Domi31tls d21e01a2c2 chore(rgpd): replace CHCB/Bayonne refs in docs (D-12)
Anonymise les références aux entités réelles (CHCB, villes basques,
Saint-Denis, Réunion, etc.) dans la documentation projet, les maquettes
HTML/Python, les notes de coordination et les audits.

Conserve docs/coordination/decisions/2026-06-02_dom_mvp-pivots-strategiques.md
(table de mapping de référence) et docs/coordination/inbox/for-claude/
intacts.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-02 14:40:20 +02:00

78 lines
3.1 KiB
Markdown

# CamemBERT-bio-deid v3 — Specifications techniques
## Modele de base
- **Architecture** : CamemBERT (RoBERTa-based), Token Classification
- **Modele pre-entraine** : `almanach/camembert-bio-base` (LORIA/INRIA)
- **Parametres** : ~110M (12 couches, 768 hidden, 12 attention heads)
- **Vocabulaire** : 32 005 tokens (SentencePiece BPE)
- **Specialisation pre-entrainement** : corpus biomedical francais (PubMed, theses, litterature clinique)
## Fine-tuning
| Parametre | Valeur |
|-----------|--------|
| Documents d'entrainement | 1 112 documents cliniques (CR hospitalisation, Trackare, CRO, lettres de sortie) |
| Exemples totaux | 198 260 (52 121 originaux + 145 539 augmentes + 600 hard negatives) |
| Augmentation de donnees | Substitution de noms par gazetteer INSEE (219K patronymes) |
| Hard negatives | Medicaments BDPM + termes QUAERO (CHEM, DISO, PROC, ANAT) |
| Epochs | 20 |
| Batch size effectif | 16 (GPU batch=8 x gradient accumulation=2) |
| Learning rate | 1x10-5 |
| Max sequence length | 512 tokens |
| Optimizer | AdamW |
| GPU | NVIDIA GeForce RTX 5070 (12 Go VRAM) |
| Duree d'entrainement | ~14h15 |
| Framework | HuggingFace Transformers 4.42, PyTorch |
## Annotations d'entrainement (Silver)
- **Methode** : alignement diff entre texte original et texte pseudonymise par le pipeline multi-moteurs (EDS-Pseudo + GLiNER + regex + gazetteers)
- **Format** : BIO (Beginning-Inside-Outside)
- **Source** : documents T2A CHUXX 2023, dossiers de justificatifs
- **Pas de validation humaine** (silver, non gold)
## Categories NER (14 types, 29 labels BIO)
| Categorie | Description |
|-----------|-------------|
| PER | Noms de personnes (patients, soignants) |
| DATE_NAISSANCE | Dates de naissance |
| ADRESSE | Adresses postales |
| ZIP | Codes postaux |
| VILLE | Villes, lieux de naissance |
| HOPITAL | Etablissements de sante |
| TEL | Numeros de telephone |
| EMAIL | Adresses email |
| NIR | Numeros de securite sociale |
| IPP | Identifiants Patient Permanent |
| NDA | Numeros de Dossier Administratif |
| RPPS | Numeros RPPS (professionnels de sante) |
| IBAN | Coordonnees bancaires |
| AGE | Ages |
## Performances (sur jeu de validation, 20% des donnees)
| Metrique | v2 (29 docs) | v3 (1 112 docs) |
|----------|:---:|:---:|
| **F1-score** | 0.903 | **0.963** |
| **Recall** | 0.930 | **0.970** |
| **Precision** | 0.877 | **0.957** |
## Inference (production)
| Parametre | Valeur |
|-----------|--------|
| Format | ONNX Runtime |
| Taille du modele | 421 Mo |
| Runtime | ONNX Runtime CPU (CPUExecutionProvider) |
| Latence | ~10-20 ms / 512 tokens |
| Threads | 2 inter-op, 4 intra-op |
| Fenetre glissante | 400 tokens, stride 200 (textes longs) |
| Seuil de confiance | 0.5 (prediction), 0.3 (vote croise EDS-Pseudo) |
| Materiel cible | PC standard, CPU uniquement (pas de GPU requis) |
## Role dans le pipeline
CamemBERT-bio-deid v3 est le **3eme moteur NER** du pipeline d'anonymisation, utilise en **vote croise** avec EDS-Pseudo (moteur principal) et GLiNER (zero-shot). Il confirme ou infirme les detections d'EDS-Pseudo pour reduire les faux positifs sans sacrifier le recall. Il n'opere jamais seul — c'est un signal de validation.