私は自分のデータセットに畳み込みニューラルネットワークを構築しようとしています。私の訓練データセットは、それぞれ800個の特徴の1209例を持っています。ここで1D kerasの畳み込みネットワーク、入力サイズの誤差
は、コードの一部は次のようになります。
model = Sequential()
model.add(Conv1D(64, 3, activation='linear', input_shape=(1209, 800)))
model.add(GlobalMaxPooling1D())
model.add(Dense(1, activation='linear'))
model.compile(loss=loss_type, optimizer=optimizer_type, metrics=[metrics_type])
model.fit(X, Y, validation_data=(X2,Y2),epochs = nb_epochs,
batch_size = batch_size,shuffle=True)
私はこのコードをコンパイルすると、私は次のエラーを取得する:
Error when checking input: expected conv1d_25_input to have 3 dimensions,
but got array with shape (1209, 800)
は、だから私は次元を追加し、ここで私は何をすべきかです:
X = np.expand_dims(X, axis=0)
X2 = np.expand_dims(X2, axis=0)
そして、私はこのエラーを取得する:
ValueError: Input arrays should have the same number of samples as target arrays.
Found 1 input samples and 1209 target samples.
私のトレーニングデータは、今のところこのような形になっています(1,1209,800)。
お読みいただきありがとうございます。
あなたの 'Y.shape'とは何ですか? –
@MarcinMożejkoそれは(1209,1)のように、私はデータセットに1209の例があり、出力はそれぞれ1つしかありません。私は Y = np.expand_dims(Y軸= 0) Y2 = np.expand_dims(Y2、軸= 0) でそれを変更しようとしたが、それは@blackHoleDetectorに答えるための悲しげ –