evalstone/evalscope/docs/zh/benchmarks/vlms_are_biased.md
sora 13274243a0 Bump vendored EvalScope and add K3-ready DPV4 configs.
Keep K3 suite selection and report-schema scoring in bash, merge K3/vision dataset_args into dpv4 yamls, and pin EvalScope at 735d920ee911 with local patches.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 07:30:48 +00:00

4.9 KiB
Raw Blame History

VLMs Are Biased

概述

VLMs Are BiasedVLMBias用于评估视觉-语言模型VLM在回答客观视觉问题时是依据图像内容作答还是依赖于记忆中的先验知识。该基准测试使用反事实图像counterfactual images这些图像的可见属性与常见概念相冲突例如带有四条纹的阿迪达斯风格标志或拥有异常腿数的动物。

任务描述

  • 任务类型:自由形式的视觉问答(计数与识别)
  • 输入:一张反事实图像或对照图像,配以计数、二元识别或简短回答类问题
  • 输出:一个数字、Yes/No,或用花括号括起的简短身份标识
  • 领域:动物、商标、旗帜、国际象棋棋子、游戏棋盘、视错觉和图案网格

核心特性

  • 主要的 main 划分包含 2,784 个客观视觉问题,覆盖 1,392 张反事实图像,分辨率分别为 384、768 和 1152 像素
  • 五个官方分析划分涵盖二元识别、图像内标题注入、原始未修改对照图像,以及去除背景的变体
  • 每条反事实记录同时提供视觉上正确的 ground_truth 和基于先验知识的 expected_bias
  • 该基准测试涵盖七个主题和十九个子主题,支持细粒度分析,无需创建合成的 EvalScope 子集

评估说明

  • 数据集提示词按原文使用,包括其要求的花括号答案格式
  • 主要指标:准确率acc),采用官方提供的大小写不敏感比较方法(去除外层花括号后);若精确文本匹配失败,则比较其中的数字序列
  • 次要指标:偏见比率bias_ratio,越低越好),即在相同归一化条件下,预测结果与 expected_bias 一致的比例
  • 准确率也按主题分别报告,与官方 lmms-eval 集成一致
  • original 划分不计算 bias_ratio,因为这些对照样本未定义 expected_bias
  • 六个官方数据集划分作为独立的 EvalScope 子集公开,并默认全部参与评估;若仅选择 main 子集,可复现论文中的主要基准结果
  • 生成应具有确定性且简洁;官方 lmms-eval 设置使用 temperature=0,最多生成 32 个新 token
  • 论文 | GitHub | 项目主页

属性

属性
基准测试名称 vlms_are_biased
数据集ID evalscope/vlms-are-biased
论文 Paper
标签 MultiModal, QA, Reasoning
指标 accuracy, bias_ratio
默认示例数 0-shot
评估划分 main

数据统计

指标
总样本数 11,594
提示词长度(平均) 90.01 字符
提示词长度(最小/最大) 60 / 138 字符

各子集统计信息:

子集 样本数 提示词平均长度 提示词最小长度 提示词最大长度
main 2,784 91.52 78 129
identification 1,392 83.27 68 102
withtitle 2,784 91.52 78 129
original 458 85.03 60 130
remove_background_q1q2 2,784 94.23 78 138
remove_background_q3 1,392 83.91 70 102

图像统计信息:

指标
图像总数 11,594
每样本图像数 最小: 1, 最大: 1, 平均: 1
分辨率范围 384x183 - 1862x1430
格式 png

样例示例

子集: main

{
  "input": [
    {
      "id": "3872fe66",
      "content": [
        {
          "image": "[BASE64_IMAGE: png, ~1.9KB]"
        },
        {
          "text": "Are the horizontal and vertical lines equal in length? Answer in curly brackets, e.g., {Yes} or {No}."
        }
      ]
    }
  ],
  "target": "Yes",
  "id": 0,
  "group_id": 0,
  "metadata": {
    "id": "VerticalHorizontal_001_Q1_notitle_px384",
    "topic": "Optical Illusion",
    "sub_topic": "Vertical-Horizontal illusion",
    "type_of_question": "Q1",
    "expected_bias": "No",
    "with_title": false,
    "pixel": 384
  }
}

提示模板

未定义提示模板。

使用方法

使用 CLI

evalscope eval \
    --model YOUR_MODEL \
    --api-url OPENAI_API_COMPAT_URL \
    --api-key EMPTY_TOKEN \
    --datasets vlms_are_biased \
    --limit 10  # 正式评估时请删除此行

使用 Python

from evalscope import run_task
from evalscope.config import TaskConfig

task_cfg = TaskConfig(
    model='YOUR_MODEL',
    api_url='OPENAI_API_COMPAT_URL',
    api_key='EMPTY_TOKEN',
    datasets=['vlms_are_biased'],
    dataset_args={
        'vlms_are_biased': {
            # subset_list: ['main', 'identification', 'withtitle']  # 可选,用于评估特定子集
        }
    },
    limit=10,  # 正式评估时请删除此行
)

run_task(task_cfg=task_cfg)