假如你站在一幅画前,指着头顶的蓝色屋顶问旁边的博物馆讲解员:“这屋顶是什么蓝?”一位合格的讲解员不会低头背说明书,他会先快速扫一遍整幅画面,把目光停在屋顶的位置,再结合自己见过的颜料知识,组织成一句人话回答你。整个过程里,看、听、想、答四件事缺一不可。这种让机器“看图回答你的问题”的技术,就叫视觉问答(Visual Question Answering,简称 VQA)。 VQA 要做的正是这件事:给 AI 一张图、一个问题,让它像讲解员一样给出答案。比如拍一张冰箱照片,问“还剩几瓶饮料”;拍一道数学题,问“阴影面积怎么求”。为了实现这个能力,研究者给 AI 配了四个部件:负责“看”的眼睛、负责“听”的耳朵、把两者对上的大脑、说答案的嘴巴。此外还要用大规模问答数据集给 AI“培训”,用评估指标“考核”,最后压缩优化才能“上岗”。这篇文章会带你从零认识 VQA:不需要任何 AI 基础,只需要跟着这位讲解员,一步步看懂它的工作台。
学会 VQA 的核心链路,等于掌握多模态产品的通用骨架。无论做智能客服、教育辅导还是无障碍问答,你都能把“看图+听问+作答”变成可落地的产品能力,从单模态识别走向多模态落地。
目录
可视化演示
动态演示视觉问答VQA的核心机制,通过全局/局部/动态/静态四种模式展示关键概念与交互流程。
本节配有交互动效(进入视口后自动加载,约 3KB)。
视觉问答VQA:VQA任 VQA任务定义与核心挑战 视觉特征提取与图像理解 核心机制可视化 视觉问答VQA整体架构与关键组件
任务定义:什么是看图问答
博物馆给讲解员发了一本《工作说明书》:游客指着一幅画问任何问题,讲解员必须结合画面给出一个合适的回答。VQA 的任务定义和这本说明书如出一辙——输入是“一张图片 + 一个自然语言问题”,输出是“一个答案”。注意输入的括号里是“和”不是“或”:只给图是图像分类,只给问题是文本问答,两者必须同时在场,缺一不可。
在数学上,VQA 被建模成一个条件概率问题:模型要学习在“看到图 I、听到问句 Q”的条件下,从候选答案集合中挑出最合适的答案。这个候选答案集合就像是讲解员平时积累的讲解词库,里面装着“红色”“3 个”“是”这类短答案。为什么强调“条件”?因为同一个苹果图,问“什么颜色”答红色,问“几个”答一个——答案完全由问题牵引。
VQA 也因此被称为“多模态理解的探照灯”:它强迫模型同时理解视觉内容和语言意图,是检验 AI 是否真的“看懂”图片的经典任务。应用上,它已经走进智能客服(拍照问商品)、教育辅导(拍题求解)、无障碍问答(帮视障人士读路牌)等场景。
看,有了这本“工作说明书”,后面的所有模块都在回答同一个问题:如何把 I 和 Q 变成能打分的特征,让词库里的正确答案脱颖而出。
- 候选答案集合讲解员词库里所有可能说出口的答案,比如“红色”“3 个”“是”。
- 条件概率给定图像 I 和问题 Q 的条件下,模型认为答案 a 成立的可能性有多大。
- 取最大把词库里每个答案的概率都算出来,谁最高就选谁。
视觉特征提取:让 AI 睁眼
讲解员走进展厅的第一步,永远是先“扫画”:不聚焦任何细节,用余光把整幅画的构图、色彩、物体位置扫进大脑。在 VQA 里,这个动作叫视觉特征提取,负责的是“眼睛”——视觉编码器。没有这一步,模型就像蒙着眼答题的讲解员,再博学也无从说起。
最早流行的“眼睛”是 CNN 卷积网络。它像一把小放大镜,在图像上滑来滑去,先看边缘和纹理,再一层层叠加出“这里是屋顶”“那是一棵树”的语义。后来视觉 Transformer(ViT)换了一种看法:把画均匀切成 16×16 的小块,像拼图一样给每块打上位置编号,交给 Transformer 让所有小块互相“打招呼”,每个小块都能参考全图其他小块的信息,全局视野更好。
还有一条常用路线是区域特征:先用目标检测器圈出“屋顶、树、人”等物体,再对每个区域单独编码。这就像讲解员先扫一眼画里有哪些角色,再逐个细看。三种方式殊途同归,都是为了把“图像”变成一串计算机能算的向量。
扫画完毕,讲解员脑海里已经有了“哪块区域有什么”的草稿,接下来他需要竖起耳朵,听清游客到底在问什么。
- 分块嵌入把图像切成一个个小块,每个小块通过线性映射变成一个固定长度的向量。
- 位置编码给每个小块向量加上位置信息,让模型知道“这块在画布的左上角还是右下角”。
- 编码器交换信息Transformer 编码器让每一块向量与所有其他块交互,形成含全局上下文的视觉特征 V。
问题文本编码:让 AI 听懂
讲解员扫完画,游客开口了:“屋顶是什么蓝?”他竖起耳朵,抓住两个关键词——“屋顶”和“蓝”。AI 的“耳朵”是文本编码器,任务就是把一句自然语言问题变成一组向量。可计算机不认识汉字,怎么办?第一步是把词转成向量:先给每个词一个编号(one-hot),再通过一张“词嵌入表”查出对应的稠密向量。这张表就像讲解员脑中的词典,把“蓝”映射成一组能和其他词比较的数字。
有了词向量还不够,词的顺序和上下文也很重要。“屋顶是什么蓝”和“蓝是什么屋顶”完全是两回事。早期的做法是用循环网络(LSTM)从左往右读词,再把反向读一遍拼起来(BiLSTM),让每个词的表示都吸收左右邻居的信息。如今的主流方案是预训练模型 BERT:它在大规模文本上“读过万卷书”,知道“蓝”常和“天空”“海洋”一起出现,这种先验知识对理解问句非常有帮助。
无论用哪条路线,终点都是把问题压缩成一个“问题向量”或一组“问题词向量”,交给下一步去和视觉特征打交道。讲解员把“屋顶”“颜色”这两个关键词牢牢记在脑子里,下一步就要让它们和画面里的区域对上号。
耳朵听清了问题,眼睛也扫过了画面,接下来是最关键的动作:让听到的“屋顶”和看到的“蓝色区域”在脑子里撞出火花。
- 词的稀疏表示把第 t 个词变成一个只有一位是 1、其余全是 0 的稀疏向量,相当于给词一个唯一的编号。
- 查词嵌入表用稀疏向量从词嵌入矩阵中查出该词的稠密向量,语义相近的词向量距离更近。
- 双向编码双向循环网络从左到右、从右到左各读一遍,让每个位置的向量既含前文也含后文信息。
多模态融合:眼睛与耳朵对齐
讲解员现在要做全场最核心的动作——把耳朵里听到的“屋顶”和眼睛里看到的“蓝色区域”对上号。如果只是把看到的特征和听到的特征用胶带捆在一起,相当于把两张便签订成一叠:纸是挨着了,内容却各说各话。这种“简单拼接”虽然是最朴素的融合方式,但只能作为基线,因为它没有建立两个模态之间的对应关系。
真正让融合“活”起来的,是注意力机制。想象讲解员手里有一束探照灯,灯光的开关由问题词控制:他说“屋顶”,灯光就扫向画面的屋顶区域;说“树”,灯光就切到树那边。在数学上,这就是把问题词当作“查询”,把图像区域当作“键和值”,先算每个问题词和每个图像区域的相似度,再用相似度当权重,把视觉特征加权汇总。这样得到的视觉特征,是“被问题筛选过”的视觉特征。
更进一步,双线性融合让两个模态的每个维度两两相乘再投影,交互更细;协同注意力则让图像和文本互为探照灯,你引导我、我引导你。无论哪种,本质都是完成同一件事:跨模态对齐——让语言中的每个概念,都能在画面中找到它对应的位置。
此时讲解员的目光已经牢牢锁在蓝色屋顶上,脑海里的重点从“整幅画”浓缩成“屋顶的颜色”。下一步,他该组织语言开口了。
- 三个角色Q 是问题词向量(探照灯),K 和 V 都是图像区域的特征(画面上的候选位置)。
- 相似度打分用 Q 与所有 K 做内积,得到一个分数矩阵,分数越高说明该图像区域和问题词越相关。
- 防饱和缩放除以键向量维度的平方根,避免内积数值过大把后面的 softmax 推向极端。
- 加权汇总softmax 把分数变成权重,再乘上 V 加权求和,得到“聚焦到关键区域”的视觉特征。
答案生成:组织语言回答
讲解员目光锁定屋顶,深吸一口气,开口:“这是钴蓝。”答案生成模块就是讲解员的“嘴”。它有两种工作模式。第一种叫分类式,也是主流:把融合后同时含视觉和文本信息的特征向量,送进一个线性分类器——词库里每个候选答案都有一组专属权重,谁得分高谁就赢。这就像讲解员在词库里挑出最贴切的那张讲解词卡片。
第二种叫生成式,更像即兴发挥:把融合特征作为解码器的起点,像写文章一样一个词一个词地“造句”,每次预测下一个最可能的词,直到输出完整句子。这种模式词表更自由,能回答开放性问题,但对训练数据和推理资源要求更高。工程上,分类式因为可控、易评估而更受青睐;研究上,生成式则让 VQA 向真正的“对话”靠近。
无论哪种模式,都要回答同一个问题:给定这份“看完图、听完问”的特征,词表里(或词汇空间里)哪个答案概率最大?
讲解员张嘴的那一刻,前面所有的“看、听、想”都凝结成一句答案。可问题来了——他怎么知道自己的讲解水平合格?这就要说到上岗前的“考核”了。
- 多模态特征z 是融合模块输出的向量,里面同时包含了“看到了屋顶”和“在问颜色”的信息。
- 答案打分矩阵词表里每个候选答案对应一个权重向量,与 z 做内积得到该答案的得分。
- 归一化成概率softmax 把所有候选答案的得分变成总和为 1 的概率分布,概率最高的答案就是模型的回答。
数据集与评估:讲解员考核
讲解员上岗前要参加一场严格的考核:考官准备几百张画和对应的问题,逐一提问,答对一题记一分。VQA 数据集就是这份考卷。最常用的有 VQA v2、Visual Genome、GQA 等,它们收集了海量“图片-问题-答案”三元组。答案通常很短——“是/否”、数字、短语——这正是分类式答案生成能大展身手的原因。
不过这份考卷有一个狡猾的陷阱,叫“语言先验”。研究发现,数据集里“有没有 X”这类问题,答案大多是“没有”;“X 是什么颜色”的答案分布也不均匀。模型如果只背语言统计规律,不看图也能蒙对不少题。VQA v2 的改进正是针对这一点:给“有没有香蕉”配上“有几根香蕉”这样的负样本对,让单纯靠语言习惯答题的模型瞬间露馅。
评估指标也不能只看一个总分。标准做法是先算整体准确率,再按问题类型分组(yes/no、number、other)分别报告,观察模型在哪种题型上真正“看懂”了。一份合格的考核报告,应当让讲解员无处作弊。
考核通过,讲解员终于可以上岗了。但他背的“知识库”太厚,翻书太慢,游客可没耐心等他。
- 测试题总数考卷上一共有多少道题,作为分母。
- 模型预测答案模型对第 i 道题给出的预测答案。
- 人工参考答案多人标注投票得到的标准答案。
- 指示函数预测与参考答案一致时取 1,否则取 0,相当于“答对记一分”。
部署与优化:让讲解员上岗
拿到上岗证,讲解员却发现自己犯了难:大脑里装着一套庞大的“知识库”,每次回答问题都要翻很久的资料,游客排起了长队。部署与优化就是给讲解员“瘦身提速”的过程。第一步是模型压缩——剪枝把不重要的连接剪掉,就像讲解员丢掉十年用不上的冷知识;量化把 32 位浮点参数变成 8 位整数,相当于把厚书改成速查手册,体积骤减四分之三。
第二步是知识蒸馏:让大模型当“导师”,把自己判断答案的“软思考”(概率分布)教给一个小模型。小模型学到的不仅是正确答案,还有“这个答案和那个答案差不多”的细腻判断,所以能又小又准。第三步是推理加速:用 ONNX、TensorRT 等推理引擎优化计算图,配合批量推理和缓存,把单次回答的延迟从秒级压到毫秒级。
最后别忘了场景适配。客服场景的词表、教育场景的词表不一样,部署时要针对垂直领域微调,裁剪无关答案,就像给讲解员发一本“本馆专用讲解手册”。经过这一套组合拳,讲解员脚步轻快,游客的问题张口就答,VQA 才真正从实验室走进产品。
瘦身后的讲解员终于站在展厅里,从容面对每一位游客。从任务定义到部署优化,这一套“看、听、想、答、考、炼”的流程,正是 VQA 从概念走向产品的完整旅程。
- 真实标签损失学生模型在标准答案上的交叉熵损失,保证它答得对。
- 蒸馏温度温度 T 让教师模型的概率分布变得更“软”,把判断的细微差别显出来。
- 分布差异学生预测分布与教师预测分布之间的 KL 散度,越小说明学生越像老师。
- 平衡权重λ 控制“学课本”和“学老师”的比例,调大更依赖老师。
AI 应用场景
智能商品客服
阶段:多模态理解 + 在线推理
解决的问题:传统客服只能纯文字问答,用户说“我买的这个颜色不对”,客服看不到实物,反复沟通成本极高。VQA 让用户拍照提问“这个水龙头是什么材质”“这件衣服有绿色款吗”,模型同时理解图片内容和问题意图,自动给出答案,大幅降低人工客服压力。
具体案例:某电商售后机器人接入 VQA 后,用户上传破损商品照片并问“这里还能保修吗”,模型先定位图中破损区域,再结合保修规则库生成答复,一次解决率提升了约 30%。讲解员的“看图对焦”能力,在这里变成了实打实的售后效率。
教育辅导
阶段:数据构建 + 垂直微调
解决的问题:学生拍下一道几何应用题问“第一步该怎么做”,通用搜索引擎只认文字,读不懂图片里的图形和条件。VQA 理解图形结构并和问题中的“阴影面积”对齐,再结合公式库给出带步骤的讲解。
具体案例:K12 拍照搜题 App 用 VQA 回答“图中阴影面积是多少”:视觉模块提取几何图形特征,文本模块解析“阴影面积”关键词,跨模态对齐后定位到阴影区域,最后由公式解码器生成分步解答。讲解员把“看画”和“听题”融会贯通,变成了学生的贴身家教。
无障碍问答
阶段:答案生成 + 语音联动
解决的问题:视障人士无法看路牌、药盒、食品说明,传统 OCR 只识字不理解语义。VQA 把“拍照 + 语音提问”变成“图+问句”,输出可直接朗读的答案,让信息无障碍真正落地。
具体案例:无障碍助手 App 中,用户拍一张公交站牌并问“下一班车几点到”,VQA 模型识别站牌上的线路和时刻表区域,回答“5 路车还有 8 分钟”,再用语音合成读给用户。讲解员成了视障朋友“随身携带的眼睛”。
Python 演示
import numpy as np COLORS = ['红色', '绿色', '蓝色']COLOR_IDX = {'红': 0, '绿': 1, '蓝': 2} def make_image(circle_color, square_color, size=32): img = np.zeros((size, size, 3)) yy, xx = np.mgrid[0:size, 0:size] circle_mask = (xx - size * 0.5) ** 2 + (yy - size * 0.25) ** 2 < (size * 0.2) ** 2 square_mask = (np.abs(xx - size * 0.5) < size * 0.18) & (np.abs(yy - size * 0.75) < size * 0.18) img[circle_mask, COLOR_IDX[circle_color]] = 1.0 img[square_mask, COLOR_IDX[square_color]] = 1.0 return img def visual_features(img): h = img.shape[0] // 2 def region_feat(region): return region[:, :, 0].mean(), region[:, :, 1].mean(), region[:, :, 2].mean() top = img[:h] bottom = img[h:] return np.array(region_feat(top) + region_feat(bottom)) def question_vector(question): q = np.zeros(2) if '圆' in question: q[0] = 1.0 else: q[1] = 1.0 return q def cross_modal_fusion(img, question): v = visual_features(img) q = question_vector(question) return np.concatenate([v[:3] * q[0], v[3:] * q[1]]) def make_dataset(n=400): X, Y = [], [] for _ in range(n): cc = COLORS[np.random.randint(3)] sc = COLORS[np.random.randint(3)] img = make_image(cc, sc) if np.random.rand() < 0.5: X.append(cross_modal_fusion(img, '圆形是什么颜色')) Y.append(COLOR_IDX[cc]) else: X.append(cross_modal_fusion(img, '方形是什么颜色')) Y.append(COLOR_IDX[sc]) return np.array(X), np.array(Y) def softmax(z): e = np.exp(z - z.max(axis=1, keepdims=True)) return e / e.sum(axis=1, keepdims=True) def train(X, Y, epochs=200, lr=0.5): W = np.zeros((X.shape[1], 3)) Y_onehot = np.eye(3)[Y] for _ in range(epochs): prob = softmax(X @ W) grad = X.T @ (prob - Y_onehot) / len(X) W -= lr * grad return W if __name__ == '__main__': X, Y = make_dataset() W = train(X, Y) test_img = make_image('红', '绿') for question in ['圆形是什么颜色', '方形是什么颜色']: feat = cross_modal_fusion(test_img, question) ans = COLORS[np.argmax(softmax(feat.reshape(1, -1) @ W)[0])] print('问题:', question, '-> 答案:', ans) acc = (np.argmax(softmax(X @ W), axis=1) == Y).mean() print('训练集准确率:%.2f' % acc)
img[circle_mask, COLOR_IDX[circle_color]] = 1.0用网格坐标生成圆形区域的掩码,给圆形像素涂上指定颜色,模拟讲解员眼中的“画布”。def visual_features(img):视觉特征提取:把图像分成上下两个区域,各统计 RGB 三个通道的平均亮度,得到 6 维视觉特征。np.concatenate([v[:3] * q[0], v[3:] * q[1]])跨模态门控融合:问题向量决定保留上半区还是下半区的颜色特征,相当于把探照灯打到对应区域。grad = X.T @ (prob - Y_onehot) / len(X)softmax 回归的梯度更新:让模型逐步学会“看到红色特征就答红色”。ans = COLORS[np.argmax(softmax(feat.reshape(1, -1) @ W)[0])]从概率最大的类别中取出中文答案,完成从特征到人类可读文本的最后一步。
常见误区
误区我以为 VQA 就是把图片塞进一个分类器,输出图片里有什么,问题只是摆设,问什么都一样。
正解问题和图像是并列输入,模型必须学会“按问题看画面”。同一个苹果图,问“颜色”答红色,问“数量”答三个,输出完全由问题引导。就像讲解员不会对每幅画都背同一段词,问屋顶他就看屋顶,问树他就看树。训练数据里同样一张图会配多个不同问题,就是为了逼模型学会“听问作答”。
为何常见:图像分类的概念太深入人心,容易把“看懂了图”误当成“答对了题”,忽略了问题这个关键输入。
误区我以为 VQA 必须像聊天机器人一样自由造句,模型写不出流畅句子就是不合格。
正解主流 VQA 数据集的答案其实是受限的短答案——“是/否”、数字、短语。业界最常用的是分类式:在预定义答案词表里选概率最高的一个,工程上稳定可控。只有开放域 VQA 才用生成式逐词解码。讲解员大多数时候是选词卡,而不是即兴演讲。
为何常见:被大模型“什么都能答”的印象带偏,忽略了受限词表在评估和部署上的巨大优势。
误区我以为多模态融合就是把两个特征向量拼起来喂给分类器,简单又高效,大家都这么做。
正解简单拼接只是基线,不是终点。问题词必须与图像区域一一对齐——“屋顶”要落在屋顶那块区域上,这需要注意力机制或双线性融合让两个模态真正交互。拼接相当于把两张便签钉在一起,纸挨着纸但内容没互相引用;注意力才是让便签上的文字互相“看见”的魔法。
为何常见:拼接实现最简单,很多入门教程用它做演示,容易让人误以为这就是标准做法。
误区我以为测试准确率 90% 就代表模型具备了人的视觉理解能力,可以放心上线。
正解VQA 数据存在语言先验:“有没有 X”类问题的答案多为“没有”,模型只学语言统计就能蒙对一大片。VQA v2 用配对负样本打散这种捷径;评估时还要按 yes/no、number、other 分组看。如果模型在“number“类问题上准确率骤降,说明它只是会抄答案,并非真看懂。讲解员若只背”游客常问的十句话”,换个问法就会露馅。
为何常见:单一准确率数字最直观,人们习惯拿一个数衡量一切,忽略了数据分布里的捷径和模型真正的短板。
面试题
Q1. VQA 任务的标准输入是什么?
- A.仅一张彩色图像
- B.仅一段文本问题
- C.图像加文本问题← 正确答案
- D.图像加标准答案
答案:C。VQA 的核心定义是“图像+问题→答案”,两者缺一不可。只给图像是图像分类,只给问题是文本问答,图像加答案则是训练数据的形态。就像讲解员必须同时看到画、听到问题,才能开口作答。
Q2. 提取图像视觉特征最常用的网络是?
- A.BERT 语言模型
- B.CNN 卷积网络← 正确答案
- C.LSTM 时序网络
- D.K 均值聚类算法
答案:B。图像特征提取的标配是 CNN 或视觉 Transformer(ViT)。BERT 处理文本,LSTM 处理序列,K 均值是聚类算法,它们都不负责“看”。相当于讲解员的眼睛,必须由专门练过的视觉网络来担任。
Q3. 分类式 VQA 的模型输出是什么?
- A.一段完整语音
- B.目标检测框
- C.一个答案类别← 正确答案
- D.一组图像掩码
答案:C。分类式 VQA 把答案生成建模成“选择题”:从预定义答案词表里选一个类别输出。它不生成语音、不画检测框、也不做分割掩码,只输出答案 id。就像讲解员在词库里挑出最合适的那张讲解词卡片。
Q4. 注意力机制在 VQA 融合中主要实现什么?
- A.降低模型参数量
- B.对齐问题与图像区域← 正确答案
- C.增加训练数据量
- D.替换损失函数
答案:B。注意力让问题词作为“探照灯”,与图像区域计算相似度并加权聚焦,实现“屋顶”对应到画面屋顶区域的跨模态对齐。它不改变参数量、数据量或损失函数,而是改变信息交互的方式,是融合模块的灵魂。
Q5. VQA v2 数据集加入配对负样本的主要目的是?
- A.提升图片分辨率
- B.消除语言先验偏见← 正确答案
- C.压缩模型推理时间
- D.增大标注数据噪声
答案:B。VQA v2 的改进核心是负样本配对:“有香蕉吗”配“有几根香蕉”。如果模型只会按语言习惯答“没有”,在配对问题上就会露馅。它的目的不是提分辨率、省时间或加噪声,而是打掉语言先验这条“作弊小抄”。
Q6. 以下哪些属于 VQA 中的多模态融合方式?
- A.特征向量直接拼接← 正确答案
- B.双线性乘积融合← 正确答案
- C.跨模态注意力对齐← 正确答案
- D.单模态独立训练
答案:ABC。拼接、双线性融合(逐元素相乘后投影)、跨模态注意力都是融合方式,区别在交互强度。单模态独立训练是让图像和文本各答各的,根本没有融合,属于错误选项——就像讲解员看了画却把问题晾在一边。
Q7. 生成式 VQA 与分类式 VQA 的最大差别是?
- A.输出词表规模不同← 正确答案
- B.不需要视觉特征了
- C.不使用任何注意力
- D.只能回答是否问题
答案:A。生成式用解码器逐词生成,词表通常是全词表,输出更自由;分类式词表受限,从候选答案里选一个。两者都需要视觉特征和注意力,也都能答是否问题。差别核心在输出空间:选一个答案,还是逐词造一句。
Q8. 标准缩放注意力公式中 softmax 内的缩放因子是什么?
- A.键向量维度平方根← 正确答案
- B.查询向量的维度数
- C.值向量维度的两倍
- D.输入序列长度一半
答案:A。标准注意力中,相似度矩阵要除以键向量维度 d_k 的平方根,防止内积随维度增大而把 softmax 推向饱和区,让梯度更稳定。它与查询维度、值维度、序列长度都没有直接关系,是注意力公式里最容易被记混的细节。
Q9. VQA 模型部署优化的常用手段包括?
- A.模型剪枝与量化← 正确答案
- B.知识蒸馏小型化← 正确答案
- C.推理引擎加速← 正确答案
- D.无限增大答案词表
答案:ABC。剪枝去掉冗余连接、量化把浮点参数变成低比特整数、知识蒸馏让大模型教小模型,三者都能把模型“瘦身提速”;ONNX、TensorRT 等推理引擎则加速在线服务。无限增大答案词表只会让模型更笨重,方向完全相反。
Q10. 评估 VQA 模型时应该关注哪些方面?
- A.总体准确率指标← 正确答案
- B.按问题类型分组← 正确答案
- C.语言先验鲁棒性← 正确答案
- D.训练轮数的奇偶
答案:ABC。可靠评估既要看整体准确率,也要按问题类型(是/否、数字、其他)分组,还要用配对负样本测试模型是否依赖语言先验。训练轮数的奇偶和模型能力毫无关系,纯属干扰项——讲解员考核看的是真本事,不是复习了几轮。