我有两个用于音频检测的音频数据集,分别是训练和测试。
其中一个是wav文件,采样率为8kHz,16位,单声道,7秒。
另一个是wav文件,采样率为44.1kHz,16位,单声道,10秒。
我将它们放在一个折页中,然后将80%用于训练,10%用于验证,10%用于测试。
但是我的朋友说,如果我使用采样率不同的数据集,可能会导致错误的结果。
听起来对我来说很有意义,但是我不确定为什么不可以使用它(他也不知道原因)。
所以这是我的问题。
1)使用两个采样率不同的音频数据集会导致音频检测结果错误吗?
2)如果不是这样,我可以使用这些数据集进行培训和评估吗? (因为很难找到其他数据集)
答案 0 :(得分:0)
您应该使用将在“生产系统”上运行的任何采样率。婴儿哭声几乎不需要44kHz,我想说8kHz就可以了。即使婴儿的频率超过4 kHz,大部分功率也将位于下方。您不希望了解哭声背后的微妙之处,而只需检测一下哭声即可。
尽管可以做一些试验,然后从互联网上以高保真度选择哭泣的婴儿下载,然后对其频谱进行分析,这才有意义。然后下采样到8 kHz,看看/听到它有什么不同。我建议使用Audacity,Python提供了一些不错的绘图库工具。另外,我制作了一个开源的在线工具来帮助进行音频中的ML(tool,docs)。您可能想看看例如之间的音频功能有多相似婴儿哭泣和破碎的玻璃杯。
最后但并非最不重要的一点是,拒绝80/10/10拆分的诱惑,很可能会过度拟合数据。我建议至少保留30%的数据用于测试,如果可能的话,应保留60%。如果您感觉“但我没有太多数据可用于测试”,请执行以下一项或多项操作:
制作不通用的ML系统太容易了。最后提示:请确保您不会在不同的套装中得到同一个婴儿。