2.8 KiB
2.8 KiB
Gold Standard CRH — Guide d'annotation
Principe
Le gold CRH permet d'évaluer la qualité de la sélection DP (NUKE-3) sur des dossiers CRH réels. Chaque cas annoté définit le DP attendu avec des marges de tolérance DIM.
Règles d'annotation (DP)
- DP = diagnostic qui motive l'essentiel de la prise en charge et la consommation de ressources
- Si étiologie connue : coder l'étiologie, pas le symptôme (ex: I26.9, pas R06.0)
- Si ambigu : remplir
dp_expected+dp_acceptable_codes+dp_acceptable_family3 - Si seul un symptôme est défendable : mettre
allow_symptom_dp=true+ expliquer dansnotes confidence: certain (1 seul DP possible), probable (fort mais alternatives), ambiguous (vraie ambiguïté)evidence: 1-3 extraits courts (max 240 chars), section + texte
Schéma JSON
{
"case_id": "106_23056475",
"document_type": "crh",
"dp_expected": {"code": "I26.9", "label": "Embolie pulmonaire"},
"dp_acceptable_codes": ["I26.0"],
"dp_acceptable_family3": ["I26"],
"allow_symptom_dp": false,
"confidence": "certain",
"evidence": [{"section": "Conclusion", "excerpt": "EP confirmée au scanner"}],
"notes": ""
}
Procédure en 10 étapes
python tools/gold_crh_annotator.py --bootstrap --out data/gold_crh/gold_template.csv- Ouvrir le CSV dans un tableur (LibreOffice, Excel)
- Filtrer les cas CRH (ignorer les trackare bypass)
- Pour chaque CRH : lire le JSON pipeline, vérifier le DP proposé
- Remplir
dp_expected_codeetdp_expected_label(code correct selon les règles DIM) - Ajouter les alternatives dans
dp_acceptable_codes(séparés par|) - Ajouter les familles dans
dp_acceptable_family3(séparés par|) - Remplir
confidence,allow_symptom_dp,evidenceetnotes python tools/gold_crh_annotator.py --import-csv data/gold_crh/gold_template.csvpython tools/gold_crh_annotator.py --check data/gold_crh/gold_crh.jsonl
Métriques d'évaluation
| Métrique | Description |
|---|---|
exact_match_strict |
Code choisi == dp_expected.code |
exact_match_tolerant_codes |
Code choisi dans dp_acceptable_codes |
family3_match_tolerant |
Famille 3 chars du code dans dp_acceptable_family3 |
acceptable_match |
tolerant_codes OU family3_match |
confirmed_accuracy_tolerant |
acceptable_match sur les CONFIRMED uniquement |
symptom_not_allowed |
R* choisi alors que allow_symptom_dp=false |
Fichiers
| Fichier | Rôle |
|---|---|
data/gold_crh/gold_template.csv |
Template CSV pré-rempli |
data/gold_crh/gold_crh.jsonl |
Gold validé (1 JSON/ligne) |
data/gold_crh/gold_crh_index.json |
Index case_id → offset |
src/eval/gold_models.py |
Modèles Pydantic + évaluation |
tools/gold_crh_annotator.py |
CLI annotation |
docs/NUKE3_GOLD_EVAL.csv |
Résultats évaluation |