Reconstruire des chronologies cliniques avec CamemBERT
Annoter des relations temporelles TLINK dans des comptes rendus médicaux et adapter CamemBERT à la tâche.
Un compte rendu médical raconte une histoire dans le désordre : le patient est arrivé, un examen a eu lieu, un traitement a été administré. Reconstruire la chronologie de cette histoire, c'est comprendre quand chaque événement s'est produit par rapport aux autres — une tâche connue sous le nom de raisonnement temporel clinique.
Annoter des relations TLINK
Le schéma TLINK relie deux événements ou expressions temporelles par une relation : avant, après, pendant, chevauchement. Sur des textes médicaux non structurés, ces relations sont nombreuses, ambiguës et coûteuses à annoter.
Doccano simplifie le travail : une interface d'annotation collaborative où l'on marque les entités, puis les relations qui les lient, directement dans le texte. Le corpus annoté devient la référence sur laquelle le modèle sera entraîné et évalué.
« Le patient [a été admis]e1 [mardi]t1, [un scanner]e2 a été réalisé [le lendemain]t2. »
e1 BEFORE t1 · e2 BEFORE t2 · e1 BEFORE e2
Adapter CamemBERT
Pour le français clinique, CamemBERT est un point de départ naturel : un modèle de langue pré-entraîné sur du texte français, qu'on spécialise ensuite pour deux tâches couplées — l'étiquetage des concepts (événements, expressions temporelles) et la classification de leurs relations.
from transformers import CamembertForTokenClassification, CamembertForSequenceClassification
tagger = CamembertForTokenClassification.from_pretrained("camembert-base", num_labels=len(concepts))
classifier = CamembertForSequenceClassification.from_pretrained("camembert-base", num_labels=len(relations))
Le réglage fin importe : le weight decay pour régulariser, un learning rate suffisamment bas pour ne pas détruire les représentations pré-entraînées, et une architecture de classification adaptée au nombre de relations.
Visualiser la chronologie
Un modèle qui prédit des relations sans les montrer reste abstrait pour un clinicien. Une interface interactive (Streamlit, spaCy) restitue la chronologie du patient sous forme de frise : les événements ordonnés dans le temps, leurs relations visibles d'un coup d'œil.
C'est là que le NLP rencontre la médecine : non pas remplacer le clinicien, mais lui rendre lisibles des chronologies que le texte brut enfouit.