[英]Training a deep neural network for audio classification [closed]
我正在开发一种使用 SEP-28k 数据集进行口吃检测的解决方案。 它由许多 (28000) 个 3 秒或更短的音频片段组成。 在预处理数据时,它被重新采样到 16kHz,如果短于 3 秒,则右填充。
每个样本都表示为 12 个类别之一。 根据我对所有课程的理解,我设法将它们组合成 3 个更大的课程,称为stutter 、 no disfluency和interjection(filler sound) 。 最后,我有大约 2000 个感叹词示例,其他 2 个类大约 13k。 对此,我在我的 CrossEntropyLoss function 中定义了一个 class 权重参数。
使用这 3 个类,我尝试使用 mel 光谱图和 Pytorch 训练深度神经网络。
我尝试从头开始构建 CNN,还尝试微调 ResNet(101 和 18)和 VGG,既微调整个网络,也冻结参数,只训练最后添加的层。
我改变了学习率(0.01、0.001、0.0001),我尝试了不同的 n_mels 参数(13、20、64)、n_fft(0.025 * SAMPLE_RATE 或 1024)、时期数(5、10、15、20 ),但似乎网络没有学到任何东西。
我能够过拟合它,大约 15 个 epoch,但当然我有我的验证数据集,并且使用所有这些选项,准确率始终在 40% 到 50% 左右,并且损失在任何时候都不会下降。
有足够的数据(在我看来),model 架构似乎不是问题,但我的准确度非常差。
随机选择的准确率为 33.3%,而我的 model 训练后的准确率为 45%。
对我来说,似乎我犯了一个重大的根本性错误(比如可能将这些标签分为 3 个大组,即使它们是相似的 imo),我很高兴听到在这方面更有经验的人的任何想法和建议场比我。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.