哪种输入格式最适合循环神经网络中的声音识别?
Which input format is the best for sound recognition in recurrent neural networks?
我想用递归深度神经网络创建声音或音调识别。我想知道什么输入会得到最好的结果。
我应该将振幅或 FFT(快速傅立叶变换)结果提供给 DNN?
是否有已知的任何其他格式可以产生良好的结果和快速学习?
Mel-frequency cepstrum一般用于语音识别。
mozilla DeepSpeech 正在使用 MFCC 作为其 DNN 的输入。
对于 python 实现,您可以使用 python-speech-features 库。
虽然 MFCC 确实已用于音乐信息检索研究(用于流派分类等...),但在这种情况下(音高检测)您可能希望首先使用半音滤波器组或常量 Q 变换信息缩减步骤。这些变换更符合音高。
但我认为也值得尝试将音频样本直接与 RNN 一起使用,以防你有大量样本。理论上,RNN 应该能够学习对应于特定音高的波形。
根据您的描述,还不完全清楚您的目标 "pitch recognition" 是哪种类型:单声道乐器(音色恒定,一次只有 1 个音高)?和弦(音色不变,但多个音高可能同时发声)?多种乐器一起演奏(多种音色,多种音高)?甚至是音调和打击乐的完整混音?这些用例的难度大致按照我提到的顺序增加,所以你可能想先从单音音高识别开始。
要获得必要数量的训练示例,您可以使用物理模型或多采样虚拟乐器以受控方式生成特定音高的音频样本。这样,您可以快速创建训练 material 而不是手动记录和标记。但我建议您至少在创建的音频样本中添加一些背景噪音(随机噪音,或来自不同录音的非常低级的声音),否则您的数据可能过于人为,导致模型无法正常工作一旦你想在实践中使用它。
这里有一篇论文可能会给您一些关于这个主题的想法:
用于和弦钢琴音乐转录的端到端神经网络
(Siddharth Sigtia、Emmanouil Benetos 和 Simon Dixon)
https://arxiv.org/pdf/1508.01774.pdf
我想用递归深度神经网络创建声音或音调识别。我想知道什么输入会得到最好的结果。
我应该将振幅或 FFT(快速傅立叶变换)结果提供给 DNN?
是否有已知的任何其他格式可以产生良好的结果和快速学习?
Mel-frequency cepstrum一般用于语音识别。 mozilla DeepSpeech 正在使用 MFCC 作为其 DNN 的输入。
对于 python 实现,您可以使用 python-speech-features 库。
虽然 MFCC 确实已用于音乐信息检索研究(用于流派分类等...),但在这种情况下(音高检测)您可能希望首先使用半音滤波器组或常量 Q 变换信息缩减步骤。这些变换更符合音高。
但我认为也值得尝试将音频样本直接与 RNN 一起使用,以防你有大量样本。理论上,RNN 应该能够学习对应于特定音高的波形。
根据您的描述,还不完全清楚您的目标 "pitch recognition" 是哪种类型:单声道乐器(音色恒定,一次只有 1 个音高)?和弦(音色不变,但多个音高可能同时发声)?多种乐器一起演奏(多种音色,多种音高)?甚至是音调和打击乐的完整混音?这些用例的难度大致按照我提到的顺序增加,所以你可能想先从单音音高识别开始。
要获得必要数量的训练示例,您可以使用物理模型或多采样虚拟乐器以受控方式生成特定音高的音频样本。这样,您可以快速创建训练 material 而不是手动记录和标记。但我建议您至少在创建的音频样本中添加一些背景噪音(随机噪音,或来自不同录音的非常低级的声音),否则您的数据可能过于人为,导致模型无法正常工作一旦你想在实践中使用它。
这里有一篇论文可能会给您一些关于这个主题的想法: 用于和弦钢琴音乐转录的端到端神经网络 (Siddharth Sigtia、Emmanouil Benetos 和 Simon Dixon) https://arxiv.org/pdf/1508.01774.pdf