Keras Conv1D на последовательности ДНК - PullRequest
1 голос
/ 16 марта 2019

Я хотел бы применить одномерную свертку к последовательности ДНК фиксированного размера с использованием керас.
Последовательность ДНК имеет длину 45 оснований.Каждая последовательность была закодирована в горячем виде.Есть один фильтр с размером ядра = 3. См. Рисунок ниже:

1D convolution

У меня есть 1000 последовательностей для моего обучения.Тогда форма x_train: (1000, 45, 4).
Цель - True / False с формой: (1000,)

Я пытался использовать керары следующим образом:

K.clear_session ()

model = Sequential()

#add model layers
model.add(Conv1D(1, kernel_size=1, activation="relu", input_shape =(1000,45)))


#model.add(Flatten())
#model.add(Dense(2, activation="softmax"))


model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])

model.fit (x_train, y_train, epochs = 10)

Но я получаю следующую ошибку:

ValueError: Error when checking input: expected conv1d_1_input to have shape (1000, 45) but got array with shape (45, 4)
...