试想一个场景:你拿到一本没有空格、没有标点、甚至没有分段的长卷古书,密密麻麻的墨迹从头铺到尾,根本无处下口。计算机面对一段原始音频时,正是这种处境——每秒数万个采样点连成一条蜿蜒的波形,像一条没有尽头的丝线,语义完全隐藏在毛糙的起伏里。而音频Transformer(AST)就像一位天赋异禀的图书馆管理员:他先给天书“断句”,把长卷切成整齐的小卡片;再为每张卡片写一句标准尺寸的“书评签”;然后逐页精读、随时把任意两页翻开对照;最后在随身小本本上写下总结,给出这本“声音之书”的类别判断。更妙的是,这位馆员还能通过海量阅读自学成才,甚至给自己出填空题来训练联想能力。这篇文章,就是带你参观这位馆员从入职到独当一面的完整成长史。

岗位关联

理解AST是踏入音频AI世界的钥匙。作为AI从业者,掌握其架构、预训练与调优思路,你就能在语音识别、声学事件检测、多模态理解等真实项目里快速落地,而非停留在只调接口的层面。

目录
  1. 可视化演示
  2. 音频理解基础
  3. AST架构设计
  4. 前向推理过程
  5. 预训练与微调
  6. SSAST自监督变体
  7. 调优与工程实践
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

动态演示音频Transformer模的核心机制,通过输入/处理/存储/输出四种模式展示关键概念与交互流程。

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

音频Transformer模:音频Tr 音频Transformer模型 AST架构设计与patch化 核心机制可视化 音频Transformer模整体架构与关键组件

音频理解基础

想象你拿到一本没有空格、没有标点的长卷古书。外行人盯着密密麻麻的墨迹一头雾水,而博学的图书馆管理员却知道:先要“断句”。计算机面对原始音频时正是这种处境——一段以44100Hz采样的音频,每秒就是四万多个振幅数值在起起伏伏,像一条无限延长的丝线,看不出任何语义边界。如果不做任何加工就把这条丝线塞给模型,模型大概率只会记住“平均值”这类肤浅统计量,对真实语义毫无感知。

馆员的下一个动作是把长卷按固定宽度裁成小页,再逐页扫描。在音频处理里,这个“扫描”就是短时傅里叶变换(STFT):用一个滑动的窗函数截取一小段信号,对它做傅里叶变换,得到这一瞬间的频率构成;窗口不断右移,就得到一张“时间×频率”的二维图谱。这正是音频的“书页”——横轴是时间,纵轴是频率,颜色的深浅代表该时刻该频率上的能量强弱。

人耳对频率的感知并非线性:低频区分辨力强,高频区分辨力弱。于是我们用一组Mel滤波器对频谱做加权合并,得到Mel频谱图——相当于按“人类听觉的偏好”重新排版了书页。AST通常把Mel频谱图组织成80×128的格点,然后切成16×16像素的patch小块,每个patch就像从书页上剪下的拼图块,是Transformer的最小阅读单元。至此,“声音之书”变成了一块可以逐块阅读、随意重组的剪报板。断句完成、拼图就位,馆员离读懂天书又近了一步,但摆满卡片的工作台上还缺一样东西:如何记录这些卡片?这就引出下一节。

X(m,k)=∑n=0N−1x(n+mH) w(n) e−j2πkn/N\displaystyle X(m,k)=\sum_{n=0}^{N-1}x(n+mH)\,w(n)\,e^{-j2\pi kn/N}
这个公式描述“如何从一段波形里切出一帧,并把它拆解成不同频率成分”,是声音变成图像的第一步。
  1. 加窗截取从原信号中取第m帧,并乘窗函数让截断更平滑,避免频谱泄露。
    x(n+mH) w(n)\displaystyle x(n+mH)\,w(n)
  2. 频域展开将窗内信号分解到N个频率分量上,k代表第k个频率点的相位与幅度。
    e−j2πkn/N\displaystyle e^{-j2\pi kn/N}
  3. 求和成谱对窗内所有采样点求和,得到这一帧在第k个频率上的复数值,整帧遍历后得到一列频谱。
    ∑n=0N−1\displaystyle \sum_{n=0}^{N-1}

AST架构设计

剪报板上贴着几十张拼图块,馆员当然不会盯着原始墨迹发呆,他要为每块卡片写一张标准尺寸的“书评签”——用一串固定长度的数字浓缩这块card的颜色、纹理和位置。在模型里,这个动作由“线性投影+嵌入”完成。AST的思路非常直接:既然Mel频谱图本质上就是一张图像(横轴时间、纵轴频率、颜色深浅代表能量),那为什么不把图像领域表现惊艳的Vision Transformer(ViT)整个搬过来?于是“音频谱图Transformer”(Audio Spectrogram Transformer)诞生了:编码器结构照搬ViT,只换掉输入数据的“排版方式”。

除了patch嵌入和位置编码,AST还引入了一个关键组件:分类Token(CLS)。它是一个与任务无关的可学习向量,被拼接在patch序列最前面。最终分类时只取这个位置对应的输出,相当于馆员随身携带的“总结小本本”。书评签写好、页码贴上、总结本挂上,馆员的阅读工具包备齐了。接下来他翻开书,开始逐页对照。

E=[ecls;e1W;e2W;… ;eNW]+Epos\displaystyle \mathbf{E} = [\mathbf{e}_{cls}; \mathbf{e}_{1}\mathbf{W}; \mathbf{e}_{2}\mathbf{W}; \dots; \mathbf{e}_{N}\mathbf{W}] + \mathbf{E}_{pos}
这条式子把一堆“拼图块”统一翻译成模型能计算的向量,并附上“页码坐标”。
  1. 展平拼接把CLS特殊向量放在最前面,后面接N个展平后的patch向量,形成一条序列。
    [ecls;e1;e2;… ;eN]\displaystyle [\mathbf{e}_{cls}; \mathbf{e}_{1}; \mathbf{e}_{2}; \dots; \mathbf{e}_{N}]
  2. 线性投影每个patch向量乘一个可学习矩阵W,映射到D维嵌入空间;W由所有patch共享,相当于统一的“书评签模板”。
    eiW\displaystyle \mathbf{e}_{i}\mathbf{W}
  3. 位置编码按patch在谱图上的空间坐标(时间×频率)加上可学习的位置偏移,让模型知道每张卡片的“页码”。
    + Epos\displaystyle +\,\mathbf{E}_{pos}

前向推理过程

馆员读书的方式很特别:他不按顺序读,而是任意翻开两页对照——“这一页的结论,和五十页前那个细节呼应吗?”这种跨页对照正是自注意力机制。序列中的每个patch都会计算它与所有其他patch的相关性,再按相关性聚合信息。这样一来,某个时间点的鸟鸣声,能够自动关联到几秒前的背景噪声,从而判断这是“鸟鸣”而不是“开门声”。

单组注意力只反映一个观察角度,所以AST使用多头注意力:多个“馆员”同时阅读,有人盯节奏、有人盯音色、有人盯语义起伏。多头的输出拼接后,送入前馈网络(FFN)做深度加工;每个子层外都有残差连接和层归一化,确保几十层堆叠后信号不衰减、训练不爆炸。经过12层或24层的反复对照,CLS token的输出已不是某个局部patch的体现,而是“全书总结”的综合摘要。最后接一个线性分类头,把CLS向量映射到类别概率——“猫叫”“狗吠”“交通噪声”。合上书,馆员在总结本上写下最终判断。但这种判断力并非天生,他如何从一位只认字的新手变成熟读万卷的专家?答案在下一节:预训练与微调。

Attention(Q,K,V)=softmax(QKTdk)V\displaystyle \text{Attention}(Q,K,V)=\text{softmax}\left(\frac{QK^{T}}{\sqrt{d_k}}\right)V
这是Transformer的心脏:让每个patch“看看别人在说什么,再决定自己怎么表达”。
  1. 线性映射出三件套Q想找什么、K标明自己有什么、V是自己的实际内容,均由输入乘三个权重矩阵得到。
    Q=XWQ,K=XWK,V=XWV\displaystyle Q=XW_Q,\quad K=XW_K,\quad V=XW_V
  2. 缩放点积打分计算两两patch之间的匹配分,除以√dk防止分数过大导致softmax饱和。
    QKTdk\displaystyle \frac{QK^{T}}{\sqrt{d_k}}
  3. 归一化加权聚合把分数变成概率,再按概率加权求和V,得到每个patch融合全局信息后的新表示。
    softmax(⋅) V\displaystyle \text{softmax}(\cdot)\,V

预训练与微调

馆员刚入职时只认识卡片上的字,却不懂字里行间的关联。想让他变博学,最有效的办法是让他泡在图书馆读上百万本“无批注”的书——不需要老师逐字讲解,他在海量阅读中自然学会了语法、逻辑与常识。这就是预训练:在无标签数据上学习通用的声学表示。AST有个很实用的技巧:先在ImageNet图片数据集上预训练ViT,再迁移到音频上继续预训练或微调。因为Mel谱图和自然图像在分布上存在相似性,这种跨模态迁移能让小数据集表现显著提升。

预训练完成后,面对具体应用(比如鸟鸣分类、语音情感识别),只需在少量标注数据上微调。微调阶段使用交叉熵损失,模型被要求对真实类别给出更高概率:

微调期间常用数据增强提升泛化:时间遮蔽(随机盖住一段时间内的patch)、频率遮蔽(盖住某段频率范围)、Mixup(把两条音频的谱图按比例混合)。这些操作就像给馆员展示不同字迹、不同版式的书籍,让他的总结能力更加鲁棒。带着通识的馆员转岗,只需看几十本专业书就能独立上岗——预训练+微调正是让深度学习模型“从通才到专才”的标准路径。

Lce=−1N∑i=1Nlog⁡ezi,yi∑c=1Cezi,c\displaystyle \mathcal{L}_{ce} = -\frac{1}{N}\sum_{i=1}^{N}\log \frac{e^{z_{i,y_i}}}{\sum_{c=1}^{C}e^{z_{i,c}}}
交叉熵在衡量“模型有多确定真实答案”,越确定,损失越小。
  1. 指数归一成概率把类别得分变成总和为1的概率分布,指数保证所有得分都能参与比较。
    ezi,yi∑c=1Cezi,c\displaystyle \frac{e^{z_{i,y_i}}}{\sum_{c=1}^{C}e^{z_{i,c}}}
  2. 对真实类取负对数模型给正确类别的概率越高,负对数越小,优化方向是让正确类别概率逼近1。
    −log⁡pi,yi\displaystyle -\log p_{i,y_i}
  3. 批次平均对所有样本的损失取平均,得到本轮参数更新的梯度方向。
    1N∑i=1N(⋅)\displaystyle \frac{1}{N}\sum_{i=1}^{N}(\cdot)

SSAST自监督变体

如果图书馆里的书都没有批注,馆员还能自学吗?当然能——他给自己出“填空题”:盖住书页上的一半文字,凭上下文补全,再翻开对照检查。这种“自己出题自己判卷”的学习方式,就是自监督学习。SSAST(Self-Supervised Audio Spectrogram Transformer)将这一思想引入音频Transformer:预训练时,从Mel谱图中随机选择约50%的patch用掩码标记遮盖,模型的任务是根据周围可见patch预测被遮patch的原始特征。

与标准AST相比,SSAST最大优势是预训练阶段完全不需要人工标注。现实中无标签音频几乎取之不尽,而有标签数据昂贵且稀缺。此外,“填空训练”迫使模型学会利用长程上下文,这种能力迁移到下游任务后,往往能用更少的参数、更短的训练时间逼近甚至超过有监督预训练的AST。读完一万本“无批注书”且擅长填空的馆员,理解力反而超过只见过几十本批注书的同行——这就是自监督的威力。

Lrecon=Ex[∥M⊙(x^−x)∥22]\displaystyle \mathcal{L}_{recon} = \mathbb{E}_{\mathbf{x}}\left[\left\|\mathbf{M}\odot(\hat{\mathbf{x}}-\mathbf{x})\right\|_2^2\right]
这条式子只考核被遮盖部分的重建误差——看不见的内容猜得越准,说明上下文理解越深。
  1. 掩码矩阵标记M是0/1组成的矩阵,1表示该patch被遮蔽、需要被考核。
    M⊙(⋅)\displaystyle \mathbf{M}\odot(\cdot)
  2. 计算重建误差模型重建值\hat{x}与原始patch特征x相减后求二范数平方,度量“猜得有多准”。
    ∥x^−x∥22\displaystyle \|\hat{\mathbf{x}}-\mathbf{x}\|_2^2
  3. 对数据分布求期望实际训练中用批次平均近似期望,只统计被遮蔽位置,忽略可见patch的损失。
    Ex[⋅]\displaystyle \mathbb{E}_{\mathbf{x}}[\cdot]

调优与工程实践

馆员的本事再大,也得有好的管理制度才能持续发挥。工程中训练AST/SSAST同样如此:超参数、防过拟合、部署优化,每一项都是“管理细则”。先看超参数:patch大小是最重要的旋钮之一。16×16是常见默认;调小能保留更多细节,但patch数量按平方增长,计算量和内存都急剧上升;调大则训练更快,但可能丢失细粒度结构。学习率调度方面,推荐warmup预热后接余弦退火:

防过拟合方面,常用Dropout、权重衰减、数据增强与早停四件套;类别不均衡时用重采样或Focal Loss,让模型关注少数类而不是被多数类淹没。部署阶段,可把模型导出为ONNX并配合TensorRT加速;对长音频采用滑窗切段推理,避免一次性塞入过长序列导致显存溢出;必要时做蒸馏,把24层大模型压缩成6层小模型。管理有方,这位博学馆员才能在高强度工作中不倦怠、不出错——一个工程上真正可靠的音频Transformer,就是这样炼成的。

ηt=ηmin+12(ηmax−ηmin)(1+cos⁡πtT)\displaystyle \eta_{t} = \eta_{min} + \frac{1}{2}(\eta_{max}-\eta_{min})\left(1+\cos\frac{\pi t}{T}\right)
这条公式让学习率先稳起步、再平滑下降,像老司机先踩油门再匀速滑行。
  1. 基准项ηmin表示最低学习率,防止后期更新过大破坏已学到的知识。
    ηmin\displaystyle \eta_{min}
  2. 余弦振幅余弦项从1到-1平滑变化,使学习率从峰值ηmax渐进下降到ηmin。
    12(ηmax−ηmin)(1+cos⁡πtT)\displaystyle \frac{1}{2}(\eta_{max}-\eta_{min})\left(1+\cos\frac{\pi t}{T}\right)
  3. 时步变量t为当前训练步,T为总步数,该式刻画了“先探索找优、再收敛定型”的完整过程。
    t,  T\displaystyle t,\; T

AI 应用场景

智能安防中的异常声音事件检测

阶段:数据准备与微调部署

解决的问题:传统安防过度依赖摄像头,存在视觉盲区(暗角、遮挡、夜间),且无法感知“玻璃破碎”“尖叫声”“枪声”这类强听觉事件。AST像一名“听觉值班馆员”,把环境音频实时切成长度为数秒的Mel谱图,分类出异常事件并触发告警,弥补视觉监控的空白。

具体案例:某智慧社区在电梯间部署了音频采集节点,使用在AudioSet预训练的AST模型,并用社区自采的200小时正常/异常音频微调。上线后,对玻璃破碎事件的召回率达到92%,误报率控制在每天每条通道0.3次以下。

呼叫中心的语音情感识别

阶段:模型选型与迁移学习

解决的问题:人工质检只能抽检约2%的通话录音,且情绪判断主观。AST将每通电话切成语音片段,识别“愤怒、焦虑、平静、满意”等情感状态,让质检覆盖率逼近100%,还能实时提示坐席调整话术。

具体案例:某银行呼叫中心用SSAST在无标注通话录音上做自监督预训练,再用5000条人工标注的情感片段微调,最终在中文情感语料上达到84%的加权F1,相比从零训练的CNN模型提升了约9个百分点,且标注成本降低了70%。

医疗健康场景的咳嗽与鼾声监测

阶段:自监督预训练与边缘端优化

解决的问题:慢阻肺患者夜间咳嗽次数是重要病情指标,但人工记录极不可靠。SSAST可在完全无标注的夜间录音上先自学声学规律,再用少量医生标注的咳嗽样本微调,部署到床旁设备上实时统计咳嗽事件。

具体案例:某医疗AI团队采集了10000小时睡眠录音(无标签)进行SSAST预训练,仅用600条咳嗽标注微调,便在医院测试集上达到89%的事件级F1,并将模型蒸馏后部署在树莓派上,端到端延迟低于200ms。

Python 演示

python35 行
import torchimport torch.nn as nn class ASTDemo(nn.Module):    """AST最小演示: Mel谱图 -> patch嵌入 -> Transformer编码 -> 分类"""     def __init__(self, n_mels=64, patch=16, dim=128, depth=2,                 heads=4, num_classes=10):        super().__init__()        self.patch_embed = nn.Conv2d(1, dim, kernel_size=patch, stride=patch)        num_patches = (n_mels // patch) * (128 // patch)  # 4 * 8 = 32        self.pos_embed = nn.Parameter(            torch.randn(1, num_patches + 1, dim) * 0.02)        self.cls_token = nn.Parameter(torch.randn(1, 1, dim) * 0.02)        encoder_layer = nn.TransformerEncoderLayer(            d_model=dim, nhead=heads, batch_first=True)        self.encoder = nn.TransformerEncoder(encoder_layer, num_layers=depth)        self.head = nn.Linear(dim, num_classes)     def forward(self, x):        b = x.shape[0]        x = self.patch_embed(x)               # (B, dim, pH, pW)        x = x.flatten(2).transpose(1, 2)      # (B, N, dim)        cls = self.cls_token.expand(b, -1, -1)        x = torch.cat([cls, x], dim=1)        # (B, N+1, dim)        x = x + self.pos_embed        x = self.encoder(x)        return self.head(x[:, 0])             # 取CLS位置输出 if __name__ == "__main__":    model = ASTDemo()    fake_mel = torch.randn(2, 1, 64, 128)     # 模拟2条音频的Mel谱    logits = model(fake_mel)    print("input mel shape:", tuple(fake_mel.shape))    print("output logits shape:", tuple(logits.shape))
目的:完整演示AST的六步流程——卷积切patch、展平序列、拼接CLS、加位置编码、Transformer编码、取CLS分类。
  1. self.patch_embed = nn.Conv2d(1, dim, kernel_size=patch, stride=patch)一个卷积同时完成“切块”和“线性投影”,把16×16拼图块翻译成dim维书评签。
  2. self.pos_embed = nn.Parameter(torch.randn(1, num_patches + 1, dim) * 0.02)为每个patch和CLS预置页码坐标,0.02缩放让随机初始值不破坏原始特征。
  3. x = x.flatten(2).transpose(1, 2)把卷积输出展平成patch序列,形状从(B, dim, pH, pW)变成(B, N, dim)。
  4. cls = self.cls_token.expand(b, -1, -1)复制CLS小本本到每个样本,expand不拷贝内存、效率高。
  5. x = torch.cat([cls, x], dim=1)把总结本排在所有拼图块最前,之后Transformer编码器就知道“结论该写到哪一页”。
  6. return self.head(x[:, 0])取序列第0位(CLS位置)的输出过线性分类头,完成“馆员总结→分类结论”的最后一跳。

常见误区

误区既然是“音频Transformer”,那我直接把音频波形当成序列输入不就行了吗?省去频谱图这一步,信息一点都不损失,效果应该更好。

正解AST的输入是Mel频谱图切成的patch,不是原始波形。原始波形每秒就是数万个采样点,序列长度太长导致注意力计算量爆炸;更重要的是,波形上没有经过频率分解,模型很难直接学到音高、音色等语义结构。频谱图相当于馆员排版好的书页,直接喂波形等于让馆员读一卷没有标点、没有换行的三尺长绢,读起来事倍功半。

为何常见:很多人看到“Transformer处理序列”,自然联想到把波形当作时间序列,而忽略了AST实际上是沿着“谱图即图像”这条路线设计的。

误区我为了不丢细节,把patch从16×16改成8×8,结果训练特别慢还过拟合了。patch小不就是看得更细吗,怎么反而不行?

正解patch减小后patch数量按平方增长,注意力计算量随之暴涨;同时序列变长而训练数据没变,模型更容易死记硬背而不是学规律。patch大小是一个“分辨率-效率”折中旋钮,需要根据数据量、算力和任务粒度联合调整。细节不是越多越好,馆员如果盯得太细,反而会忽略篇章结构。

为何常见:直觉上“看得更细=理解更深”对人类成立,但对数据饥渴的Transformer而言,参数空间变大而监督信号不足时,过拟合风险会盖过分辨率收益。

误区SSAST是自监督模型,所以整个流程从预训练到分类都不需要人工标注,拿来就能用。

正解SSAST的自监督只体现在预训练阶段——它用“遮蔽重建”从无标签音频里学声学表示。但下游任务(比如区分猫叫和狗吠)仍然需要少量标签做微调,否则模型不知道你要把它学到的知识用到哪个方向。预训练像通读万卷书,微调像针对性备考,两者缺一不可。

为何常见:媒体常把“自监督”渲染成“无需标注”,让人误以为端到端零标注,忽略了任务适配阶段仍需监督信号。

误区我下载了一个在AudioSet上预训练好的AST权重,直接拿去识别我公司的工业设备异响,结果准确率不到50%。是不是模型太差了?

正解音频数据分布差异极大——AudioSet以自然声音为主,你的数据是机器振动噪声、厂房混响、特定麦克风频响,这属于典型的“域偏移”。预训练模型只是在“通用阅读能力”上过关,直接上岗等于让读惯了文学书的馆员去看医学影像报告,当然不顺手。必须在目标数据上微调(哪怕只有几百条),才能把能力迁移过来。

为何常见:图像领域预训练模型零样本表现惊艳,给人“预训练即万能”的错觉;而音频领域的数据分布更杂、采集设备差异更大,微调几乎是必选项。

误区Transformer不是有自注意力吗?它能自己学到patch之间的关联,那位置编码加不加应该没什么区别。

正解自注意力本身是“排列不变”的——把patch顺序打乱,注意力计算结果完全一样。如果去掉位置编码,模型眼中的谱图就是一堆无序卡片的集合,它永远不知道“这是第3秒的声音”还是“这是第8秒的声音”。AST中patch顺序承载着时间先后和频率高低,位置编码就是馆员贴在卡片上的“页码坐标”,没有它,整本书就是一盘散沙。

为何常见:很多人看到注意力能捕捉长距离依赖,就误以为它天然理解顺序;实际上顺序信息必须由输入显式提供,这是Transformer架构的基本前提。

面试题

Q1. AST模型的输入形式是什么?

单选题 · easy

  • A.原始音频波形序列
  • B.Mel频谱图切成的patch← 正确答案
  • C.MFCC倒谱系数
  • D.文本转录的token

答案:B。AST把Mel频谱图当作“图像”,切成patch后按序列输入Transformer。原始波形序列过长且缺乏频率结构;MFCC常用于语音识别前端但丢掉了时间-频率的二维布局;文本token属于NLP路线,三者都不是AST的标准输入。

Q2. AST的编码器架构主要借鉴了哪个模型?

单选题 · easy

  • A.BERT双向编码器
  • B.GPT自回归解码器
  • C.Vision Transformer← 正确答案
  • D.卷积ResNet

答案:C。AST全称Audio Spectrogram Transformer,其核心思路是把Mel谱图视为图像,直接移植ViT的Transformer编码器结构。BERT和GPT来自NLP文本领域,ResNet是卷积网络,都不直接构成AST的骨干。

Q3. 分类Token(CLS)在AST中的作用是什么?

单选题 · mid

  • A.标记整段音频时长
  • B.汇总全局信息供分类← 正确答案
  • C.增强低频频谱能量
  • D.用于数据增强采样

答案:B。CLS是可学习的特殊向量,拼接在patch序列最前端,经过多层编码器后其输出已融合所有patch的信息,分类头只读这个位置的向量即可输出结论。它不负责计时、也不做频谱增强。

Q4. AST中位置编码为什么必不可少?

单选题 · mid

  • A.注意力不感知序列顺序← 正确答案
  • B.位置编码能加速推理
  • C.位置编码替代卷积操作
  • D.提高音频的采样频率

答案:A。自注意力计算是排列不变的,打乱patch顺序结果不变,因此必须用位置编码显式告诉模型每个patch的“时间和频率坐标”。它不加速推理、不替代卷积、也不改变采样率。

Q5. SSAST在预训练阶段使用的自监督信号是什么?

单选题 · mid

  • A.大量人工标注类别
  • B.随机遮蔽并重建patch← 正确答案
  • C.预测音频的下一帧
  • D.判别真实音频伪造

答案:B。SSAST从Mel谱图中随机遮蔽约50%的patch,让模型根据可见patch重建被遮部分的原始特征,损失只统计被遮位置。它不依赖人工标注,也不是自回归式预测下一帧或真假判别。

Q6. 关于AST的迁移学习,下列说法正确的是?

单选题 · mid

  • A.必须从头开始训练
  • B.借图像预训练可显著提速← 正确答案
  • C.迁移学习仅小数据有效
  • D.微调须用极大学习率

答案:B。AST的一大实用技巧是在ImageNet上预训练ViT,再迁移到音频数据。Mel谱图与自然图像分布相似,这种跨模态迁移能显著提升小数据集的表现。迁移学习在大数据下同样有效,微调反而要用小学习率。

Q7. 以下哪些属于AST微调常用的数据增强方法?

多选题 · mid

  • A.时间维度遮蔽← 正确答案
  • B.频率维度遮蔽← 正确答案
  • C.Mixup混合样本← 正确答案
  • D.绝对位置扰动

答案:ABC。时间遮蔽和频率遮蔽是SpecAugment的核心操作,让模型对局部信息缺失更鲁棒;Mixup把两条音频谱图按比例混合训练。位置扰动会破坏patch的顺序语义,不是增强手段。

Q8. 相比标准AST,SSAST的优势体现在哪些方面?

多选题 · hard

  • A.预训练无需人工标注← 正确答案
  • B.彻底摆脱下游微调
  • C.海量无标签数据可用← 正确答案
  • D.推理速度必定更快

答案:AC。SSAST用遮蔽重建做自监督预训练,不依赖标注数据,能利用海量无标签音频。但它只免去预训练标注,下游任务仍需少量标签微调;推理速度取决于模型结构,与训练方式无必然关系。

Q9. 将AST的patch从16×16改为8×8,最可能带来什么影响?

单选题 · hard

  • A.patch越大模型越准确
  • B.patch越小计算量平方增长← 正确答案
  • C.patch大小不影响精度
  • D.patch只影响速度精度不变

答案:B。patch减半后,谱图被切成的patch数量按水平×垂直两个方向都翻倍,总patch数变为原来的4倍,注意力计算量随之平方级增长,数据量不变时还更容易过拟合。patch大小是精度与效率的核心权衡旋钮。

Q10. 音频Transformer的典型应用场景包括哪些?

多选题 · easy

  • A.声学场景分类← 正确答案
  • B.语音情感识别← 正确答案
  • C.音频事件检测← 正确答案
  • D.图像目标检测

答案:ABC。声学场景分类(如室内/室外)、语音情感识别、音频事件检测(如玻璃破碎、咳嗽)都是AST的典型任务。图像目标检测属于计算机视觉范畴,输入不是音频谱图,不在音频Transformer的应用范围内。