我目前正在研究用于语音识别模型的py手电筒。
当我使用torchaudio.transforms.MFCC(sample_rate=16000, n_mfcc=40)进行数据预处理时,出现了这样的警告: n_mels(128)设置得太高或n_freqs(201)太低。当然,这只是个警告,但我有点担心。而且,当我使用torchaudio.transforms.MFCC(sample_rate=8000, n_mfcc=40)时,它在没有警告的情况下工作得很好。
(1)抽样率较高的警告可能是甚麽原因?
(2)这个警告究竟告诉了我什么?这会影响我的模特表演吗?
我是新的堆叠溢出和除草编码,所以如果我犯了任何错误,我的问题。
发布于 2022-09-02 07:05:23
您的音频有一定的频率内容。高频含量可受采样率的限制,但也可能存在低通/高切效应,使限值更低。
当你把你的音频从8k上升到16k时,样本可能代表更高的频率内容--但处理过程不会产生任何这样的内容--因此频谱的顶部部分将是空的。
torchaudio的默认设置是使用samplerate/2作为最大滤波器组频率。所以当你增加取样时,滤波器组的最高频率就会上升,但是在这些垃圾箱里没有数据。这将触发警告您的查看。
若要消除警告,请执行以下操作:
中的最高频率内容是合理的
空滤波器组行可能会影响模型性能。0的能量可以扭曲标准化。这是否值得注意取决于许多因素,如模型、培训过程、问题的难度、所需的性能等等。但最安全的方法不是回避它。
https://stackoverflow.com/questions/72462140
复制相似问题