想象你是一个足球解说员,坐在转播间里看一场没有解说的比赛录像。画面里,前锋带球突破、中场长传、守门员扑救……你的工作,是把这些稍纵即逝的画面变成观众能听懂的话:“前锋右路突破,传中!头球!球进了!”视频描述生成,就是教 AI 干这件事:让计算机“看”一段视频,然后写出一段自然语言描述。它和看图说话最大的不同,在于视频多了一条轴——时间。画面会动、事件会发展,AI 不仅要认出画面里有什么,还要看懂“发生了什么、先后顺序如何”。从提取空间特征,到捕捉帧间运动,再到组织成解说词,每一步都像解说员在练“眼力”和“口才”。这篇文章,带你从零看懂这条流水线。

岗位关联

掌握视频描述生成,意味着你具备了构建视频字幕、无障碍解说、视频检索等真实产品的核心能力,是切入多模态 AI 应用的扎实起点。

目录
  1. 可视化演示
  2. 任务概述:解说员的岗位说明书
  3. 视频预处理:挑出值得解说的瞬间
  4. 时空特征提取:解说员的火眼金睛
  5. 编码解码框架:从看懂到说出口
  6. 注意力机制:解说员的目光
  7. 训练与评估:给解说词打分
  8. 应用部署:从转播台走向千家万户
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

动态演示视频描述生成的核心机制,通过源头/管道/节点/终端四种模式展示关键概念与交互流程。

本节配有交互动效(进入视口后自动加载,约 3KB)。

视频描述生成:视频描述 视频描述生成的任务定义与应用场 时空特征提取与视频编码方法 核心机制可视化 视频描述生成整体架构与关键组件

任务概述:解说员的岗位说明书

解说员上岗前,要先弄清楚自己的职责:不是背出场上所有人的名字,而是用语言把比赛“讲明白”。视频描述生成的任务定义同样清晰——给模型一段视频,它输出一句通顺、贴切的自然语言描述。这个任务处于视觉与语言的交汇点,既考验“看懂”,也考验“说明白”。

从数学上看,任务被建模为一个条件概率问题:在已知视频 V 的条件下,希望找到概率最大的句子。句子又被拆解成一个个词,逐词生成。这与图像描述同源,但视频多出“时间”这条轴,模型必须理解事件的过程,而不只是静态的物体拼盘。

回到解说台,这份“岗位说明书”的核心只有一句话:看懂画面,讲出故事。之后的每一节,都是在解决“如何看得更准”和“如何讲得更顺”这两个问题。

P(w1,w2,…,wT∣V)=∏t=1TP(wt∣V,w1,…,wt−1)P(w_1, w_2, \ldots, w_T \mid V) = \prod_{t=1}^{T} P(w_t \mid V, w_1, \ldots, w_{t-1})
整句的概率等于每个词在“看完全部视频、听过前面所有词”后出现概率的连乘。
  1. 整句概率左侧表示整段描述句子在给定视频下的概率,是我们最终要最大化的目标。
    P(w1,w2,…,wT∣V)P(w_1, w_2, \ldots, w_T \mid V)
  2. 逐词连乘右侧把整句概率拆成每个词的条件概率相乘,生成时每步只预测一个词。
    ∏t=1TP(wt∣V,w1,…,wt−1)\prod_{t=1}^{T} P(w_t \mid V, w_1, \ldots, w_{t-1})
  3. 历史依赖第 t 个词的概率不仅依赖视频 V,还依赖前面已生成的所有词,这正是语言顺序性的体现。
    w1,…,wt−1w_1, \ldots, w_{t-1}

视频预处理:挑出值得解说的瞬间

解说员不可能把每一帧画面都喊出来。一秒钟 24 帧,一场比赛几万帧,他只会盯住“球权转换”“射门”这些关键瞬间。视频模型对计算资源同样敏感,第一步就是选帧——把上百帧的视频压缩成十几个代表帧。

最常见的做法是均匀采样:从总长 T 帧中按等间隔抽 N 帧(N 通常取 16 到 32)。这样既保留事件的起承转合,又大幅降低后续计算量。之后再对每帧做缩放裁剪、归一化,并配合随机翻转、色彩抖动等数据增强,让模型见过更多“机位角度”,减少过拟合。

就像解说员在赛前会划出“必看回放”的时间点,均匀采样为模型划出了一条时间轴上的观察路径。好的预处理,能让模型把算力花在刀刃上。

k=⌊t×(N−1)T−1⌋,t=0,1,…,N−1k = \left\lfloor \frac{t \times (N-1)}{T-1} \right\rfloor, \quad t = 0, 1, \ldots, N-1
第 t 个采样帧在原视频中的帧号,按比例映射后向下取整。
  1. 目标时刻t 表示要抽取的第几个代表帧,从 0 数到 N-1,共 N 个。
    t=0,1,…,N−1t = 0, 1, \ldots, N-1
  2. 比例映射把 t 等比例映射到原视频的总帧数区间上,保证采样点均匀分布。
    t×(N−1)T−1\frac{t \times (N-1)}{T-1}
  3. 向下取整映射结果可能是小数,取整后得到合法的整数帧号,防止越界。
    ⌊⋅⌋\left\lfloor \cdot \right\rfloor

时空特征提取:解说员的火眼金睛

解说员的眼睛要同时接收两类信息:一是“谁在哪”——球员位置、场地布局,这是空间信息;二是“在干嘛”——带球、传中、扑救,这是时间信息。只用单帧照片,永远看不出“进攻”这件事。

早期方法用 2D 卷积网络(CNN)逐帧提取空间特征,再用某种方式合并。但 2D 卷积只看单张图,对运动不敏感。于是研究者把卷积核从二维扩展成三维:3D 卷积在宽、高、时间三个方向同时滑动,直接读入一叠帧,输出同时包含外观与运动的特征。另一条路线是双流网络,一条流吃 RGB 帧,另一条吃光流图(像素运动矢量),最后融合。I3D 则是把成熟的 2D 网络“膨胀”成 3D 版本,借助预训练权重,效果尤为出色。

可以说,3D 卷积就是给解说员戴上了一副“能看见时间”的眼镜。有了这副眼镜,模型才真正开始理解“发生了什么”。

F(i,j,k)=∑p=0P−1∑q=0Q−1∑r=0R−1W(p,q,r)×V(i+p,j+q,k+r)F(i,j,k) = \sum_{p=0}^{P-1} \sum_{q=0}^{Q-1} \sum_{r=0}^{R-1} W(p,q,r) \times V(i+p, j+q, k+r)
三维卷积核在空间和时间窗口内做加权求和,输出带运动信息的特征张量。
  1. 三维窗口卷积核尺寸为 P×Q×R,其中 R 对应时间维度,一次覆盖多帧。
    W(p,q,r)W(p,q,r)
  2. 三轴滑动输出位置 (i,j,k) 的取值,由输入在三个方向上对应窗口内的值决定。
    V(i+p,j+q,k+r)V(i+p, j+q, k+r)
  3. 加权求和窗口内每个像素乘以卷积核权重后累加,得到该位置的特征值。
    ∑p∑q∑rW(p,q,r)×V(i+p,j+q,k+r)\sum_{p} \sum_{q} \sum_{r} W(p,q,r) \times V(i+p, j+q, k+r)

编码解码框架:从看懂到说出口

解说员心里有再多的画面素材,也得经过一道“翻译”才能说出口:把脑海里的事件印象,组织成语序正确、主谓宾齐全的句子。编码器-解码器框架干的正是这件事。

编码器负责“看”:把预处理后的帧序列送入 3D 卷积网络,输出一组特征向量 v₁, v₂, …, vₙ,它们像解说员记在笔记本上的关键词。解码器负责“说”:从特征出发,一个词一个词地往外吐。经典实现用 LSTM 做序列建模——每个时刻根据上一个隐状态、已经生成的词和视频特征,推算出下一个词的概率分布。

解说员的“腹稿”就是这样成型的:编码器负责把比赛压缩进记忆,解码器负责把记忆展开成语言。二者配合,才完成从画面到句子的完整转译。

ht=LSTM(ht−1,[E(yt−1);ct]),p(yt)=softmax(Woht)h_t = \mathrm{LSTM}(h_{t-1}, [E(y_{t-1}); c_t]), \quad p(y_t) = \mathrm{softmax}(W_o h_t)
解码器每步更新内部状态,并为词表中每个词打分,选出当前最该说出口的词。
  1. 隐状态更新LSTM 根据上一步的状态 h_{t-1} 和当前输入,产出新的隐状态 h_t。
    ht=LSTM(ht−1,⋅)h_t = \mathrm{LSTM}(h_{t-1}, \cdot)
  2. 输入拼接把上一个词的向量表示 E(y_{t-1}) 与视频上下文 c_t 拼在一起,作为本步输入。
    [E(yt−1);ct][E(y_{t-1}); c_t]
  3. 词表打分隐状态经过线性变换 W_o 和 softmax,变成词表上每个词的概率分布。
    p(yt)=softmax(Woht)p(y_t) = \mathrm{softmax}(W_o h_t)

注意力机制:解说员的目光

细心的解说员有个特点:说到“传球”,目光自然落向持球队员;说到“射门”,眼神立刻切到禁区。他不会平均地扫视整个球场,而是根据“自己正在说什么”,选择性地盯住相关的位置。注意力机制就是把这个特点教给模型。

具体做法是:生成第 t 个词时,让解码器先对每一帧特征打分,分数越高代表这一帧与当前要生成的词越相关;然后用 softmax 把分数变成权重,把所有帧特征按权重加权求和,得到一个“上下文向量”c_t。这个向量就是“目光聚焦后的画面印象”。

除了这种软注意力,还有从 Transformer 引入的自注意力(让帧与帧之间互相参照)与时序注意力(专门捕捉时间先后关系)。它们都是解说员“目光管理”的不同打法。

et,i=v⊤tanh⁡(Waht−1+Uavi),αt,i=exp⁡(et,i)∑jexp⁡(et,j),ct=∑iαt,ivie_{t,i} = v^\top \tanh(W_a h_{t-1} + U_a v_i), \quad \alpha_{t,i} = \frac{\exp(e_{t,i})}{\sum_{j} \exp(e_{t,j})}, \quad c_t = \sum_i \alpha_{t,i} v_i
注意力分三步:打分、归一化、加权融合。权重最高的帧,就是模型此刻的“目光落点”。
  1. 相关性打分把解码器状态 h_{t-1} 与第 i 帧特征 v_i 送入一个打分网络,输出原始分数。
    et,i=v⊤tanh⁡(Waht−1+Uavi)e_{t,i} = v^\top \tanh(W_a h_{t-1} + U_a v_i)
  2. 归一化权重对所有帧的分数做 softmax,让权重非负且总和为 1。
    αt,i=exp⁡(et,i)∑jexp⁡(et,j)\alpha_{t,i} = \frac{\exp(e_{t,i})}{\sum_{j} \exp(e_{t,j})}
  3. 加权上下文把所有帧特征按权重叠加,得到携带“重点”的上下文向量。
    ct=∑iαt,ivic_t = \sum_i \alpha_{t,i} v_i

训练与评估:给解说词打分

解说员要经过考核才能上岗:他的解说与“标准解说”放在一起,重合的关键词越多、词序越接近,得分越高。模型的训练与评估,也是一套“对照参考答案打分”的体系。

训练阶段用交叉熵损失:每个时间步,让模型预测的词概率尽量集中在真实词上,相当于“模仿标准解说逐字对齐”。评估阶段则用一系列自动指标,其中最经典的是 BLEU——统计生成句与参考句在 n-gram(连续的 n 个词)上的重合率。

除 BLEU 外,METEOR 兼顾召回与词形变化,ROUGE 侧重关键内容覆盖,而 CIDEr 用 TF-IDF 加权 n-gram,与人工评分的相关性更好。它们就像不同风格的评审团,从多个角度给解说词打分。

BLEU=BP×exp⁡(∑n=1N1Nlog⁡pn),BP=min⁡(1,exp⁡(1−rc))\mathrm{BLEU} = \mathrm{BP} \times \exp\left(\sum_{n=1}^{N} \frac{1}{N} \log p_n\right), \quad \mathrm{BP} = \min\left(1, \exp\left(1 - \frac{r}{c}\right)\right)
BLEU 综合各阶 n-gram 的精确率,并用长度惩罚抑制“字数不够”的偷懒句。
  1. n-gram 精度pₙ 表示生成句与参考句在 n 元组上的重合比例。
    pnp_n
  2. 几何平均对 1 到 N 阶精度的对数取平均再取指数,综合各阶表现。
    exp⁡(∑n=1N1Nlog⁡pn)\exp\left(\sum_{n=1}^{N} \frac{1}{N} \log p_n\right)
  3. 长度惩罚生成句长度 c 明显短于参考句长度 r 时,BP 小于 1,整体分数被压低。
    BP=min⁡(1,exp⁡(1−rc))\mathrm{BP} = \min\left(1, \exp\left(1 - \frac{r}{c}\right)\right)

应用部署:从转播台走向千家万户

过去,解说员只属于电视台;今天,他的能力被复制到无数场景里:视障人士的耳机中、短视频的自动字幕里、海量视频的搜索引擎中。视频描述生成模型也一样,训练完成后要“走出实验室”,接受真实世界的考验。

推理阶段常用贪心搜索或束搜索(beam search)。贪心搜索每步只选概率最大的词,快但容易“短视”;束搜索每步保留分数最高的 B 条候选,最后输出总分最高的完整句子。部署时还要考虑算力:模型蒸馏、量化、裁剪帧数,都是为了在手机等边缘设备上跑得更快。

至此,解说员完成了从“看懂”到“讲出”再到“上岗”的全程。技术的终点不是指标,而是真正帮到需要它的人。

S(y)=1T∑t=1Tlog⁡P(yt∣V,y1,…,yt−1)S(y) = \frac{1}{T} \sum_{t=1}^{T} \log P(y_t \mid V, y_1, \ldots, y_{t-1})
束搜索用“整句平均对数概率”给候选句排序,兼顾流畅度与长度。
  1. 候选句打分每条候选描述,逐词累加对数概率。
    ∑t=1Tlog⁡P(yt∣V,y1,…,yt−1)\sum_{t=1}^{T} \log P(y_t \mid V, y_1, \ldots, y_{t-1})
  2. 长度归一化除以句子长度 T,避免长句因累加项多而天然占优。
    1T\frac{1}{T}
  3. 束宽筛选每步只保留分数最高的前 B 条候选,最终输出 S(y) 最大的句子。
    S(y)S(y)

AI 应用场景

为视障用户生成视频解说

阶段:模型推理部署

解决的问题:视障人士无法通过画面获取信息,传统做法需要人工录制解说词,成本高、覆盖少。AI 视频描述模型可以自动为视频生成解说词,再通过语音合成朗读出来,让“看视频”变成“听视频”,大幅降低无障碍内容的制作门槛。

具体案例:某公益平台接入视频描述模型,对视障用户上传的短视频(如宠物日常、风景旅行)自动生成“一只金毛犬在草地上奔跑,后面有小孩追逐”这样的描述,再合成语音。用户在通勤路上也能“听”完朋友分享的视频。

短视频平台的自动字幕与解说

阶段:特征提取 + 序列生成

解决的问题:作者上传视频后,手动配字幕和旁白非常耗时,而纯语音识别无法描述画面内容。视频描述模型结合画面与语音,生成带画面信息的字幕或简介,帮助作者快速完成内容包装,也能让无声观看(如静音刷视频)的用户不丢失关键信息。

具体案例:某短视频 App 对美食类视频自动生成“厨师将面条下入沸水,捞出后淋上酱汁”的描述,作者一键确认即可作为字幕发布,发布效率提升近 40%。

文本检索视频片段

阶段:模型推理 + 向量检索

解决的问题:传统视频检索靠人工打标签,长视频里“某个动作发生在第几分钟”很难定位。用视频描述模型给每个片段生成文字描述,再把描述编码成向量建索引,用户输入“进球瞬间”即可检索到对应的视频片段,精准又高效。

具体案例:某体育媒体用视频描述模型为整场比赛的每个攻防回合生成“前锋禁区外远射,守门员扑出”,编辑输入关键词 3 秒内即可定位历史素材,剪辑效率提升一倍。

Python 演示

python49 行
"""简化版视频解说词生成:注意力加权帧特征 + 逐词解码"""import numpy as np # 1. 模拟从视频中提取的 4 帧特征(真实场景由 3D 卷积网络完成)frames = np.array([    [0.9, 0.1, 0.1, 0.0],   # 帧1:裁判特写    [0.2, 0.8, 0.3, 0.1],   # 帧2:前锋持球    [0.1, 0.3, 0.9, 0.2],   # 帧3:起脚动作    [0.1, 0.1, 0.3, 0.9]    # 帧4:皮球入网]) vocab = ["裁判", "鸣哨", "前锋", "起脚", "射门", "球飞入", "球门", "得分"]# 2. 每个词对应的语义特征,与帧特征处于同一向量空间word_features = np.array([    [0.9, 0.1, 0.1, 0.0],    [0.8, 0.2, 0.0, 0.0],    [0.1, 0.8, 0.2, 0.0],    [0.0, 0.2, 0.8, 0.1],    [0.0, 0.1, 0.9, 0.2],    [0.1, 0.0, 0.3, 0.8],    [0.0, 0.0, 0.2, 0.9],    [0.0, 0.1, 0.1, 0.8]]) def softmax(x):    e = np.exp(x - x.max())    return e / e.sum() def compute_attention(query, frames):    scores = frames @ query    return softmax(scores) def generate_caption(frames, vocab, word_features, max_len=4):    query = np.array([0.2, 0.6, 0.8, 0.5])    caption = []    for t in range(max_len):        attn = compute_attention(query, frames)        context = attn @ frames        bias = np.linspace(0.3, -0.3, len(vocab)) * (1.8 - t)        logits = context @ word_features.T + bias        idx = int(np.argmax(softmax(logits)))        caption.append(vocab[idx])    return caption if __name__ == "__main__":    result = generate_caption(frames, vocab, word_features)    print("生成的视频解说词:", " ".join(result))    attn = compute_attention(np.array([0.2, 0.6, 0.8, 0.5]), frames)    print("帧注意权重:", np.round(attn, 3))
目的:用 NumPy 实现一个迷你版视频描述生成流程,演示“注意力加权特征 + 逐词解码”的核心思想,运行后输出一句解说词及每帧的注意力权重。
  1. frames = np.array([...])用 4 行特征向量代表 4 帧画面,真实项目中这由 3D 卷积网络从原始视频提取。
  2. def softmax(x)把任意实数分数转换为 0~1 之间且总和为 1 的概率权重。
  3. scores = frames @ query计算每一帧与解码查询向量的相似度,作为注意力打分。
  4. context = attn @ frames按注意力权重把所有帧特征融合成一个上下文向量,即“目光聚焦后的画面印象”。
  5. bias = np.linspace(0.3, -0.3, len(vocab)) * (1.8 - t)给词表加一个词序偏置,让“裁判”等早期词更可能出现在句首,“得分”更可能在句尾。
  6. logits = context @ word_features.T + bias解码器根据上下文给词表里每个词打分。
  7. idx = int(np.argmax(softmax(logits)))取概率最大的词作为当前时间步的输出。

常见误区

误区视频不就是一堆图片吗?我只要把每一帧都送去“看图说话”,再把结果连成一段话,不就完成视频描述了?

正解逐帧拼接丢失了最关键的时间信息。一个“踢球”事件,单看某一帧可能只是“人站在球旁边”,只有连续多帧才能看出“助跑、起脚、球飞入球门”的完整过程。视频描述要求模型在帧与帧之间建立时序依赖,这正是 3D 卷积、时序注意力存在的意义。

为何常见:因为图像描述(看图说话)概念先入为主,人们习惯把新任务拆成熟悉任务的简单组合,忽略了视频新增的时间维度带来的本质变化。

误区模型能看的信息越多就越聪明,所以应该把视频的每一帧都喂给模型,24 帧、30 帧全都要。

正解相邻帧高度相似,喂入大量冗余帧不仅计算开销成倍增长,还可能让模型被重复信息干扰,难以抓住关键动作。通常均匀采样 16~32 帧就足够表达一个事件,配合关键帧选择策略往往比盲目堆帧更有效。

为何常见:直观上“更多信息=更好效果”符合直觉,但忽略了视频的强时序冗余,以及深度学习对噪声冗余的敏感。

误区模型在测试集上 BLEU 很高,说明它生成的解说词已经很优秀,可以直接上线了。

正解BLEU 只统计 n-gram 词汇重叠,两个语义相同但用词不同的句子分数可能很低;而一句“球员跑向球”和“一名男子在草地上跑步”重叠词很多,分数虚高。视频描述还需要结合 CIDEr、METEOR 以及人工评估,尤其关注动作和事件描述的准确性。

为何常见:BLEU 是机器翻译最经典的指标,人们习惯性把它当作所有文本生成任务的“金标准”,忽略了它不考虑语义匹配的本质。

误区注意力机制输出的权重图,可以直接当作眼动仪数据,说明模型到底“看”了视频的哪个位置。

正解注意力权重只是为了让模型提升性能而学出的一种软性加权方式,它未必与人类视觉注意力一致,也不具备因果解释性。它描述的是“特征层面的相关性”,而非“像素层面的真实注视”。做可解释性分析时应谨慎,不能把注意力图等同于人类的视觉关注。

为何常见:注意力可视化图非常直观,让人产生“AI 真的在盯着某处”的拟人化联想,忽略了它本质上只是一组可微分的加权系数。

面试题

Q1. 视频描述生成任务的核心目标是什么?

单选题 · easy

  • A.从视频中识别出所有物体
  • B.为视频生成一段自然语言描述← 正确答案
  • C.将视频压缩成短视频片段
  • D.为视频自动添加背景音乐

答案:B。视频描述生成是“输入视频、输出自然语言句子”的任务。A 只是物体识别,C 是视频摘要,D 是音频任务。只有 B 准确描述了输入输出关系,如同解说员把画面转述成语言。

Q2. 与图像描述相比,视频描述最大的难点在于什么?

单选题 · easy

  • A.图片的分辨率通常更低
  • B.需要同时建模空间与时间← 正确答案
  • C.视频的颜色层次更丰富
  • D.网络结构必须设计更深

答案:B。视频在单帧空间信息之外增加了时间维度,模型要理解动作与事件的发展顺序。B 直击要害;A、C 是无关的视觉属性差异;D 说法不成立,网络更深不是视频任务的特有难点。

Q3. 视频预处理中“均匀帧采样”指什么?

单选题 · mid

  • A.只保留视频的第一帧
  • B.按等间隔从视频中抽取帧← 正确答案
  • C.随机跳过所有的中间帧
  • D.对每帧画面进行随机裁剪

答案:B。均匀采样是从 T 帧中按固定间隔取 N 帧,公式为 k = ⌊t(N-1)/(T-1)⌋。A 是第一帧采样,C 是随机采样,D 是数据增强操作,均不符合“均匀”的语义。

Q4. 3D 卷积相对 2D 卷积的主要优势是什么?

单选题 · mid

  • A.参数量更少且推理速度更快
  • B.能同时捕获帧内与帧间的信息← 正确答案
  • C.能支持比 2D 更高的分辨率
  • D.训练时完全不需要预训练权重

答案:B。3D 卷积核在宽、高、时间三个方向滑动,同时建模空间外观与帧间运动。A、C 说法与事实相反或无关;D 错误,3D 网络通常也需要预训练(如 I3D)。

Q5. 在编码器-解码器框架中,解码器负责什么?

单选题 · mid

  • A.对视频文件进行压缩编码
  • B.逐词生成自然语言描述← 正确答案
  • C.提取视频的视觉特征
  • D.计算画面的颜色直方图

答案:B。编码器把视频变成特征序列,解码器从特征出发逐词生成句子,核心是序列建模。A 是视频编码器(如 H.264),C 是编码器的工作,D 是传统图像处理,均与解码器职责不符。

Q6. 注意力机制在视频描述生成中主要起什么作用?

单选题 · mid

  • A.关注与当前输出词相关的帧← 正确答案
  • B.将所有帧特征取平均后使用
  • C.随机挑选一帧来生成文本
  • D.提升视频画面的清晰度

答案:A。注意力按当前解码状态对每帧打分,用加权求和的方式突出相关帧。B 是平均池化,没有“选择”能力;C 是随机采样,D 是画质增强,都与注意力机制的定义无关。

Q7. BLEU 评估指标的主要局限是什么?

单选题 · mid

  • A.计算的过程非常缓慢
  • B.只衡量 n-gram 重叠而忽略语义← 正确答案
  • C.只能用于英文文本评估
  • D.需要大量人工标注数据

答案:B。BLEU 统计生成句与参考句的 n-gram 重合度,词汇不重叠但语义相同的句子分数会很低,反之用词相近但含义不同的句子可能虚高。A 说法错误,BLEU 计算很快;C、D 均不属实。

Q8. 以下哪些属于视频描述生成的典型应用?

多选题 · hard

  • A.为视障用户生成内容解说← 正确答案
  • B.按文本检索相关视频片段← 正确答案
  • C.为短视频自动生成字幕← 正确答案
  • D.通过视频编辑更换画面背景

答案:ABC。无障碍解说、文本检索视频、自动字幕都是视频描述生成直接驱动的应用。D 属于视频编辑/分割任务,与生成自然语言描述无关,故排除。

Q9. 关于视频时空特征提取,下列说法正确的有哪些?

多选题 · hard

  • A.3D卷积能建模帧间的时序依赖← 正确答案
  • B.双流网络结合RGB与光流信息← 正确答案
  • C.2D卷积足以捕获运动变化
  • D.I3D将2D卷积扩展为3D核← 正确答案

答案:ABD。3D 卷积在时间维度滑动,天然建模时序;双流网络用 RGB 加光流互补外观与运动;I3D 通过“膨胀”把 2D 卷积核变成 3D。C 错误,2D 卷积只看单帧,无法捕获帧间运动。

Q10. 关于评估指标 CIDEr,下列说法正确的有哪些?

多选题 · hard

  • A.是TFIDF加权的n元组相似度← 正确答案
  • B.更看重对视频内容的准确描述← 正确答案
  • C.与BLEU一样只关注词序
  • D.与人类主观判断相关性较好← 正确答案

答案:ABD。CIDEr 对 n-gram 做 TF-IDF 加权,突出视频内容相关的重要词汇,与人工评价相关性优于 BLEU。C 错误:CIDEr 并非只关注词序,它更强调内容词的重要性,与 BLEU 的统计方式有本质区别。