Aller au contenu
Retour aux projets

SemEval 2025 : classer des risques alimentaires et extraire les passages associés

Projet académique en traitement automatique du langage : classer les dangers et produits mentionnés dans 6 644 rapports alimentaires, puis extraire les passages associés à chaque prédiction.

Score ST1
0,7937
Score ST1 + BIO
0,7606
Dice BIO dangers
0,6972
Dice BIO produits
0,7577

Contexte

Dans le cadre du cours de traitement automatique des langues naturelles à l'Université de Sherbrooke, nous avons travaillé sur SemEval 2025 Task 9, un challenge consacré à l'analyse de 6 644 rapports d'incidents alimentaires annotés.

Le défi consiste à identifier le type de danger présent dans un rapport et à déterminer la catégorie du produit concerné. Nous avons choisi d'aller plus loin : un modèle peut-il aussi indiquer les passages du rapport qui expliquent sa prédiction ?

Démarche

Le projet a été mené comme une démarche expérimentale. Nous avons commencé par mettre en place des modèles de référence, puis comparé différentes approches avant de construire notre solution finale.

L'idée retenue est d'entraîner un même modèle à réaliser deux tâches en parallèle : classer le risque alimentaire et repérer dans le texte les passages associés à cette décision.

Pour entraîner cette seconde tâche, nous avons construit des annotations à l'aide de plusieurs modèles de langage. Ces annotations ont ensuite été utilisées comme signal supplémentaire pendant l'entraînement.

Résultat

Tous les résultats présentés ici ont été mesurés sur le jeu de validation, et non sur le jeu de test du challenge. Le score ST1 combine le macro-F1 des dangers et le macro-F1 des produits calculé lorsque le danger est correctement prédit.

Le modèle multi-tâches final atteint 0,7937 sur cette métrique après ajustement des hyperparamètres, contre 0,7853 pour la même architecture avant cet ajustement. Dans les expérimentations précédentes, la baseline BERT obtenait 0,7052 ; l'ajout du nettoyage, de la perte focale et de l'apprentissage multi-tâches sur les dangers et les produits portait ce score à 0,7838.

La métrique combinant classification ST1 et extraction BIO atteint 0,7606, contre 0,7440 pour la première architecture intégrant ces deux tâches.

Pour l'extraction de passages, les scores Dice sont de 0,6972 pour les dangers et de 0,7577 pour les produits. Une évaluation complémentaire sur 562 exemples du jeu de validation mesure une suffisance de 66,90 % et une complétude de 57,12 %.

L'intérêt du projet n'est donc pas uniquement la performance de classification : nous avons également étudié dans quelle mesure un modèle pouvait produire une explication directement extraite du texte.

Ma contribution

Dans l'équipe, j'ai mis en place le pipeline configurable avec Hydra, les chargeurs de données, l'évaluation et le suivi des expériences. J'ai entraîné les baselines TF-IDF, régression logistique et BERT, puis participé à la comparaison des approches et à l'ajustement de leurs hyperparamètres.

J'ai également travaillé sur la stratégie d'annotation BIO par modèles de langage et sur son export, puis étendu le modèle multi-tâches pour intégrer l'extraction de passages : alignement des tokens, fonction de perte Dice, sauvegarde des modèles et journalisation.

Enfin, j'ai contribué à la documentation du dépôt et à l'interprétation des résultats présentés dans le rapport final.

Limites

Les passages extraits constituent une approximation de l'explication du modèle. Un passage peut être pertinent sans pour autant représenter précisément les éléments qui ont réellement conduit le modèle à sa décision.

Sur les 562 exemples évalués, 36,65 % satisfont simultanément les critères de suffisance et de complétude. Le modèle peut donc encore s'appuyer sur des informations situées hors des passages extraits.

De plus, les annotations utilisées pour entraîner cette partie du système ont été générées avec des modèles de langage et ne remplacent donc pas une annotation humaine.

Suite

La prochaine étape la plus importante serait de comparer les explications produites par le modèle avec des annotations réalisées par des humains, afin de vérifier si les passages extraits sont réellement pertinents et fidèles aux décisions prises.