Я совершенно новичок в keras и у меня проблема с пониманием форм.
Я хотел создать модель 1D Conv Keras следующим образом, я не знаю, правильно это или нет:
TIME_PERIODS = 511
num_sensors = 2
num_classes = 4
BATCH_SIZE = 400
EPOCHS = 50
model_m = Sequential()
model_m.add(Conv1D(100, 10, activation='relu', input_shape=(TIME_PERIODS, num_sensors)))
model_m.add(Conv1D(100, 10, activation='relu'))
model_m.add(MaxPooling1D(3))
model_m.add(Conv1D(160, 10, activation='relu'))
model_m.add(Conv1D(160, 10, activation='relu'))
model_m.add(GlobalAveragePooling1D())
model_m.add(Dropout(0.5))
model_m.add(Dense(num_classes, activation='softmax'))
Входные данные, которые я имею, представляют собой 888 различных кадров данных панды, где каждый кадр имеет форму (511, 3), где 511 - это число сигнальных точек, а 0-й столбец - значения датчика 1, 1-й столбец - значения датчика 2, а 2-й столбец - помеченные сигналы.
Теперь, как я должен объединить все свои 888 различных фреймов данных панды, чтобы я получил x_train и y_train из X и Y, используя Sklearn train_test_split.
Кроме того, я думаю, что форма ввода я определение для модели неверно, и я не думаю, что на самом деле у меня есть TIME_PERIODS, потому что для 1-временной точки у меня есть 2 значения входа датчика ( оранжевый, синий строка) и 1 метка выхода ( зеленая линия).
![enter image description here](https://i.stack.imgur.com/E1F4W.png)
Контекст проблемы, которую я пытаюсь решить, например: ввод: основанные на времени значения двух датчиков говорят за 1 AM-2 AM часа от user, output: диапазон времени, например, когда пользователь выполнял действие 1, действие 2, действие X в 1: 10-1: 15, 1: 15-1: 30, 1: 30-2: 00, приведенный выше график покажите пример входных и выходных данных обучения.
Проблема вызвана здесь , но в моем случае у меня нет периода времени, у моей 1-временной точки есть 1 выходная метка.
Обновление 1: я почти уверен, что мой TIME_PERIODS = 1, так как для прогноза я дам 511 входных данных и рассчитываю получить 511 выходных значений.