我正在尝试学习cnn网络以识别语音中的情绪。为此,我使用了将每个音频文件表示为二维数组的mel-ceptal系数(mfcc)(帧数* mfcc系数数)。我想使用3维数组作为cnn卷积层的输入,其中3维是音频文件的数量。我如何获得这种阵列?
for i in range(len(audio_list)):
(rate,sig) = wav.read(source_folder + audio_list[i])
inputs = mfcc(sig, rate, nfft=1300)
# Transform in 3D array
train_inputs[i] = (np.asarray(inputs[np.newaxis, :]))
答案 0 :(得分:0)
如果您的inputs
是列表,请np.array(inputs)
将其转换为numpy数组
我认为您要这样做的是
train_inputs[i] = inputs.reshape((1,inputs.shape[0],inputs.shape[1]))
这行基本上是将整个矩阵放到另一个矩阵中,从而为其提供了另一个维度。