Appearance
IOAI 2025 GAITE Synthetic Speech Detector
- 来源:
noai-mis/IOAI/IOAI-2025/GAITE-Contest/Synthetic_Speech_Detector - 类型:Audio
- 原始资料:Task Description、Baseline、Ref Result notebook、
metrics_v6 - 题面完整性:完整
- 解法资料完整性:有 reference solution
题面大意
区分真实人声 bonafide 与 AI 合成语音 spoof。数据已经从原始音频转换为 Mel spectrogram,并以 .pt tensor 保存。训练集按 bonafide/ 和 spoof/ 子目录组织,验证/测试无标签。提交 submissionA.csv 和 submissionB.csv,每行一个 0/1,无表头。评分是 F1-score。
数据特点
输入是频谱图张量,可视作单通道或多通道图像。合成语音与真实语音差异可能体现在高频伪影、相位/频谱纹理、能量平滑性和声学统计。F1 对正类/负类平衡敏感,类别比例需要检查。
考点
核心考点是将音频伪造检测转成频谱图二分类。题面允许 ResNet18,也可自写 CNN。由于时间 20 分钟,模型大小和训练 epoch 需要权衡。
涉及知识点
- Mel spectrogram classification。
- ResNet18 输入通道适配。
- Binary/CrossEntropy loss。
- F1-score 与阈值调优。
- 训练/验证切分和过拟合控制。
解法思路
参考 solution 实现 SpectrogramDataset 读取 .pt 文件,对训练目录根据子文件夹赋标签。模型可用自定义 AudioNet 或 ResNet18,训练若干 epoch 后对 validation/testing 目录推理,输出 argmax 标签。若用 ResNet18,需要把输入 resize/通道扩展到模型要求,或修改第一层卷积。
可选/多种解法
小 CNN:训练快,适合 spectrogram。
ResNet18:更强的纹理分类能力,但注意训练时间。
统计特征 + 传统模型:提取频带能量、谱平滑度等,作为轻量 baseline。
特殊技巧
F1 不是 accuracy,阈值可在本地验证 split 上调。训练时可做 SpecAugment、时间裁剪、频带 mask,但不要破坏伪造痕迹。若类别不平衡,使用 class weight 或 balanced sampler。
调参优化
题解中最关键的可调项是二分类阈值,因为评分是 F1 而不是 accuracy。建议从本地训练集切出验证集,保存 spoof 概率后扫描阈值,例如 0.2..0.8,选择验证 F1 最优点;同时比较 ResNet18 与轻量 CNN 的训练时间和过拟合程度。频谱增强可从轻到重调:先加时间/频率 mask,再尝试随机裁剪和增益扰动,观察是否破坏伪造痕迹。类别不平衡时优先调 class_weight 或 balanced sampler,再调阈值。
注意事项
题面提示不要修改官方 SpectrogramDataset 以免加载错误。提交无表头,一行一个标签。若 notebook 省略训练过程只提交模型,也要保证评测环境能加载所有依赖和权重。
推广意义
这题是音频 deepfake 检测的入门版。核心流程可推广到语音伪造、设备指纹、音频异常检测和生成式媒体鉴别。