【发布时间】:2020-09-19 16:50:49
【问题描述】:
我创建了一个预测语音命令的 CNN。我现在正在记录语音命令的各个实例,提取 MFCC,并使用 model.predict() 对其进行分类。
y, sr = librosa.load('audio.wav')
samples = librosa.resample(y, sr, 8000)
S = librosa.feature.melspectrogram(y=samples, sr=8000, n_mels=26, fmax=4000)
mels = librosa.feature.mfcc(y=samples, sr=8000, S=librosa.power_to_db(S))
但是,当我使用以下内容时,会出现尺寸不匹配错误(预期为 4,收到 2):
model.predict(mels)
当我按照某些人的建议使用 model.predict(np.array[mels]) 时,它会给出相同的错误(预期为 4,收到 3)。由于我使用二维的 MFCC 来训练原始模型,我不确定为什么它不能基于二维数组进行预测。
【问题讨论】:
-
model.predict 可能希望对一批进行预测,而您只想输入一个示例。你试过
np.expand_dims()吗? -
我试过 np.expand_dims 但我得到了和上面一样的错误。
标签: numpy tensorflow keras conv-neural-network dimension