我有一个音频数据集,并且我已经将这些音频介绍 MFCC 绘图转换为如下所示:
现在我想喂养我的神经网络
import tensorflow as tf
import tensorflow.keras as tfk
import tensorflow.keras.layers as tfkl
cnn_model = tfk.Sequential(name='CNN_model')
cnn_model.add(tfkl.Conv1D(filters= 225, kernel_size= 11, padding='same', activation='relu', input_shape=(4500,9000, 3)))
cnn_model.add(tfkl.BatchNormalization())
cnn_model.add(tfkl.Bidirectional(tfkl.GRU(200, activation='relu', return_sequences=True, implementation=0)))
cnn_model.add(tfkl.Dropout(0.2))
cnn_model.add(tfkl.BatchNormalization())
cnn_model.add(tfkl.TimeDistributed(tfkl.Dense(20)))
cnn_model.add(tfkl.Dropout(0.2))
cnn_model.add(tfkl.Softmax())
cnn_model.compile(loss='mae', optimizer='Adam', metrics=['mae'])
cnn_model.summary()
Run Code Online (Sandbox Code Playgroud)
我使用 Conv1D 因为它是此类神经网络中使用的层。但我不知道如何将数据从图像转换为 CNN 的输入。我自己尝试过几次改造,但都没有成功。
正如您在下图中看到的,我需要提供第一层,但Conv1D我不能,因为我的图像的形状是(4500, 9000, 3)。所以基本上,我想做的是以Conv1D与下图中相同的方式在输入中转换该图像。
该图像代表传递到 NN 的 1 个音频。
显然,当我将具有这种形状的图像传递到图层时Conv1D,我有一个ValueError ValueError: Input 0 of layer conv1d_4 is incompatible with the layer: expected ndim=3, …
python speech-recognition conv-neural-network keras tensorflow
我正在尝试创建一个向量,其中包含带有浮点数和其他整数向量的其他向量。预期结果:
{{5.4 {1, 5, 4, 6, 9},
4.8, {3, 6, 7, 8, 4},
7.3 , {9, 12, 1, 0, 4}}
Run Code Online (Sandbox Code Playgroud)
这是我的尝试之一:
#include <iostream>
#include <vector>
using namespace std;
void _cost(){
vector<float, vector<int>> result;
cout<<"This work";
}
int main(){
_cost();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
在我所有的尝试中,我收到以下错误:
In file included from /usr/include/c++/7/ext/alloc_traits.h:36:0,
from /usr/include/c++/7/bits/basic_string.h:40,
from /usr/include/c++/7/string:52,
from /usr/include/c++/7/bits/locale_classes.h:40,
from /usr/include/c++/7/bits/ios_base.h:41,
from /usr/include/c++/7/ios:42,
from /usr/include/c++/7/ostream:38,
from /usr/include/c++/7/iostream:39,
from prueba_dela_prueba.cpp:1:
/usr/include/c++/7/bits/alloc_traits.h: In instantiation of ‘static void std::allocator_traits<_Alloc>::deallocate(_Alloc&, std::allocator_traits<_Alloc>::pointer, std::allocator_traits<_Alloc>::size_type) [with _Alloc = std::vector<float, std::allocator<int> >; std::allocator_traits<_Alloc>::pointer …Run Code Online (Sandbox Code Playgroud)