返回列表

5th place solution

489. BirdCLEF 2022 | birdclef-2022

开始: 2022-02-15 结束: 2022-05-24 基因组学与生物信息 数据算法赛
第5名解决方案

第5名解决方案

作者:yokuyama (Grandmaster)
比赛:BirdCLEF 2022

非常感谢 Kaggle 和康奈尔鸟类学实验室举办了如此有趣的比赛。

我的解决方案是对 BirdCLEF 2021 第2名解决方案的重新实现。
特别感谢新的基线团队发布了令人惊叹的解决方案。同时也感谢 @julian3833 分享了 很棒的基线!

模型

我的最终提交是一个由9个不同 seed/fold/backbone 的模型组成的集成模型,每个模型都使用了去年的第2名解决方案方法。

主干网络如下:

  • 4x eca_nfnet_l0
  • 2x tf_efficientnetv2_s_in21k
  • 2x resnet34
  • 1x convnext_tiny

过采样

为了增加少数类(N<20)的文件数量,我手动分割了训练文件。
例如,maupar 只出现在一个文件中,但该文件包含许多不同类型的歌声和叫声。
我使用波形编辑器(Audacity)将其切分为 10-30 秒的片段,并从单个文件中创建了多个训练数据。

切分后的音频文件在波形编辑器中通过应用降噪/混响/增益等效果进行了进一步增强。最终,我为每个目标少数类创建了 5-20 个额外的样本文件。

训练

  • Melspec (梅尔频谱)
    1. window_size=1024, hop_size=320, fmin=50, fmax=14000, power=2, mel_bins=64, top_db=80 (nfnet, effnet, convnext)
    2. window_size=2048, hop_size=512, fmin=16, fmax=16386, power=2, mel_bins=256, top_db=80 (resnet)
  • 数据增强 (波形)
    • 背景噪音 (2020 nocall, 2021 nocall, freefield1010)
    • GaussianNoise (高斯噪声)
    • PinkNoise (粉红噪声)
    • NoiseInjection (噪声注入)
    • RandomVolume (随机音量)
    • TimeShift (时间平移)
  • 数据增强 (图像)
    • SpecAug
    • CutOut
    • Lowpass (低通滤波)
    • TranslateY (频率维度上的平移,模拟音高偏移)
  • 优化器
    • AdamW, LR=1e-3, weight decay=1e-5, 带预热的余弦退火
  • 损失函数
  • 25-30 个 epochs
  • 训练目标是主要标签和次要标签的并集。
  • 所有主干网络都在 BirdCLEF2021 数据上进行了预训练。
  • 验证使用了 scored_birdsmicro-f1@0.1。虽然有点奇怪,但该分数与 Public/Private LB 的相关性还不错。

后处理

  • 对前一个和后一个块的概率取
同比赛其他方案