Я строю сверточную нейронную сеть со слоем Convolution1D
. Моя сетевая модель приведена ниже. Ввод на плотном слое, кажется, производит массив формы (36020,10,2)
.
#network model
cnn = Sequential()
cnn.add(Convolution1D(64, 3, border_mode="same",activation="relu",input_shape=(25,1)))
cnn.add(MaxPooling1D(pool_length=(2)))
cnn.add(Flatten())
cnn.add(Dense(128, activation="relu"))
cnn.add(Dropout(0.5))
cnn.add(Dense(2, activation="softmax"))
Данные, которые я пытаюсь подогнать под модель:
X_train=[[[1.0000000e+00]
[3.0122564e-08]
[1.6120090e-05]
...
[0.0000000e+00]
[9.4886076e-08]
[3.0170717e-08]]
[[1.0000000e+00]
[0.0000000e+00]
[0.0000000e+00]
...
[0.0000000e+00]
[0.0000000e+00]
[1.2500001e-12]]
[[1.0000000e+00]
[0.0000000e+00]
[0.0000000e+00]
...
[0.0000000e+00]
[0.0000000e+00]
[3.1249999e-11]]
...
[[0.0000000e+00]
[1.0842798e-05]
[1.0943735e-06]
...
[0.0000000e+00]
[9.6288932e-09]
[1.3172292e-10]]
[[0.0000000e+00]
[2.8011250e-01]
[8.8251436e-01]
...
[0.0000000e+00]
[4.1974179e-04]
[3.6202004e-04]]
[[0.0000000e+00]
[8.3799750e-06]
[9.5839296e-06]
...
[0.0000000e+00]
[8.8683461e-09]
[1.0194775e-10]]]
y_train = [[[0. 1.]
[1. 0.]
[1. 0.]
...
[1. 0.]
[1. 0.]
[1. 0.]]
[[0. 1.]
[1. 0.]
[1. 0.]
...
[1. 0.]
[1. 0.]
[1. 0.]]
[[0. 1.]
[1. 0.]
[1. 0.]
...
[1. 0.]
[1. 0.]
[1. 0.]]
...
[[1. 0.]
[1. 0.]
[1. 0.]
...
[1. 0.]
[1. 0.]
[1. 0.]]
[[1. 0.]
[1. 0.]
[1. 0.]
...
[1. 0.]
[1. 0.]
[1. 0.]]
[[1. 0.]
[1. 0.]
[1. 0.]
...
[1. 0.]
[1. 0.]
[1. 0.]]]
Я получаю ошибку об измерении плотного слоя. Я действительно новичок в программировании нейронных сетей.