VLM二元分类差距分析Skill tao-analyze-gaps-vlm-bcq

该技能用于分析视觉语言模型(VLM)在二元分类问题(是/否)上的预测结果。它读取预测JSON,通过对比真实标注(ground truth),识别并提出假阳性(FP)与假阴性(FN)样本,输出为JSONL和摘要报告,支持下游根因分析与迭代优化。关键词:VLM、二元分类、预测分析、假阳性、假阴性、差距分析、RCCA、DEFT。

视觉模型分析 0 次安装 0 次浏览 更新于 9/6/2026
名称 tao-analyze-gaps-vlm-bcq
描述 从VLM二元分类问题(BCQ,是/否)预测中提取假阳性和假阴性差距。当用户要求“分析VLM BCQ差距”、“提取VLM假阳性与假阴性”,或从一个预测JSON中识别失败案例以用于DEFT根本原因分析时使用(针对二元分类VLM工作流)。
开源协议 Apache-2.0 compatibility: 需要docker + nvidia-container-toolkit。 metadata:
作者 NVIDIA Corporation
版本 “0.1.0” allowed-tools: Read Bash tags: - 差距分析 - rcca - VLM - 评估 - 假阳性 - 假阴性

VLM二元分类差距分析

独立安装? 如果此会话未由TAO技能库插件初始化,请先运行tao-setup技能(主机预检、凭据、跨技能发现)。

读取VLM预测JSON,将每个模型响应与真实值进行比较,并将FP/FN失败案例写入JSONL文件及摘要报告。

目的

在VLM上运行二元是/否评估任务后,需要将预测与真实值进行比较以识别失败案例。本技能生成一个结构化的FP(假阳性)和FN(假阴性)样本列表,供下游RCCA阶段(如cosmos生成、根本原因分析)使用以驱动DEFT迭代。

用法

在TAO工具包数据服务容器中调用vlm_bcq操作,使用Hydra风格键=值覆盖:

gap_analysis vlm_bcq \
  predictions_json=/path/to/results.json \
  results_dir=/path/to/output/gaps

video_id值是相对路径时,包含videos_dir

gap_analysis vlm_bcq \
  predictions_json=/path/to/results.json \
  results_dir=/path/to/output/gaps \
  videos_dir=/path/to/videos/root

运行后,展示kpi_gaps_report.txt中的FP/FN计数,并将下游阶段指向kpi_gaps.jsonl

输入

  • predictions_json:预测JSON文件的路径。必须是JSON数组,每项包含video_idresponsegt字段。responsegt使用词边界匹配解析——字符串中任意位置的'yes''no'都会被识别。两者都存在或都不存在的样本会被跳过并警告。
  • videos_dir(可选):用于解析相对video_id路径的基础目录。如果省略,video_id值被视为绝对路径。

预测JSON格式:

[
  {
    "video_id": "/path/to/video.mp4",
    "response": "Yes, there is a collision.",
    "gt": "B. No",
    "question": "Is there a collision?"
  }
]

输出

  • kpi_gaps.jsonl:每个FP/FN案例一行JSON对象。字段:video_id(绝对路径)、error_typeFPFN)、questionground_truthresponse
  • kpi_gaps_report.txt:带FP/FN总数的人可读表格。

如果未发现差距,不写入任何文件,并记录一条消息。

关键参数

参数 必填 描述
predictions_json 预测JSON文件的路径
results_dir 输出目录;如不存在则创建
videos_dir 用于解析相对video_id路径的基础目录

错误模式

错误 原因 修复
FileNotFoundError predictions_json不存在 检查路径
ValueError: must be a JSON array 预测文件不是列表 将预测包在[...]
ValueError: missing 'gt'/'response'/'video_id' 预测项缺少必填字段 检查并修复预测JSON
样本被静默跳过 responsegt包含两个或都不包含’yes’/‘no’ 检查日志中的警告;检查这些样本