Analyse des écarts de classification binaire VLM
Lit un JSON de prédictions VLM, compare chaque réponse du modèle par rapport à la vérité terrain, et écrit les cas d'échec FP/FN dans un fichier JSONL avec un rapport récapitulatif.
Objectif
Après avoir exécuté un VLM sur une tâche d'évaluation binaire oui/non, les prédictions doivent être comparées à la vérité terrain pour identifier les cas d'échec. Cette skill produit une liste structurée d'échantillons FP (faux positifs) et FN (faux négatifs) que les étapes RCCA en aval (par exemple, génération cosmos, analyse des causes racines) consomment pour piloter une itération DEFT.
Utilisation
Invoquez l'action vlm_bcq dans le conteneur TAO Toolkit data services avec des surcharges de style Hydra clé=valeur :
gap_analysis vlm_bcq \
predictions_json=/path/to/results.json \
results_dir=/path/to/output/gaps
Incluez videos_dir lorsque les valeurs video_id dans les prédictions sont des chemins relatifs :
gap_analysis vlm_bcq \
predictions_json=/path/to/results.json \
results_dir=/path/to/output/gaps \
videos_dir=/path/to/videos/root
Après l'exécution, exposez les compteurs FP/FN de kpi_gaps_report.txt et pointez les étapes en aval vers kpi_gaps.jsonl.
Entrées
- predictions_json : Chemin vers le fichier JSON de prédictions. Doit être un tableau JSON où chaque élément contient les champs
video_id,responseetgt.responseetgtsont analysés avec une correspondance aux limites des mots —'yes'ou'no'n'importe où dans la chaîne est reconnu. Les échantillons où les deux sont présents ou aucun n'est présent sont ignorés avec un avertissement. - videos_dir (optionnel) : Répertoire de base pour résoudre les chemins
video_idrelatifs. S'il est omis, les valeursvideo_idsont utilisées comme chemins absolus.
Format du JSON de prédictions :
[
{
"video_id": "/path/to/video.mp4",
"response": "Yes, there is a collision.",
"gt": "B. No",
"question": "Is there a collision?"
}
]
Sorties
- kpi_gaps.jsonl : Un objet JSON par ligne pour chaque cas FP/FN. Champs :
video_id(chemin absolu),error_type(FPouFN),question,ground_truth,response. - kpi_gaps_report.txt : Tableau lisible par l'humain avec les compteurs totaux FP/FN.
Si aucun écart n'est trouvé, aucun fichier n'est écrit et un message est enregistré.
Paramètres clés
| Paramètre | Requis | Description |
|---|---|---|
| predictions_json | Oui | Chemin vers le fichier JSON de prédictions |
| results_dir | Oui | Répertoire de sortie ; créé s'il n'existe pas |
| videos_dir | Non | Répertoire de base pour résoudre les chemins video_id relatifs |
Modèles d'erreur
| Erreur | Cause | Correction |
|---|---|---|
FileNotFoundError |
predictions_json n'existe pas |
Vérifiez le chemin |
ValueError: must be a JSON array |
Le fichier de prédictions n'est pas une liste | Encapsulez les prédictions dans [...] |
ValueError: missing 'gt'/'response'/'video_id' |
Un élément de prédiction est dépourvu d'un champ requis | Inspectez et corrigez le JSON de prédictions |
| Échantillons ignorés silencieusement | response ou gt contient à la fois ou ni 'yes'/'no' |
Vérifiez les journaux pour les avertissements ; inspectez ces échantillons |