LSTM: Применение генератора последовательности выдает ошибку измерения - PullRequest
0 голосов
/ 03 апреля 2020

Я пытаюсь применить функцию генератора, чтобы изменить свое пространство функций в: Примеры / временные шаги / функции. (Поскольку сеть Keras LSTM ожидает массив numpy из 3 измерений), у меня есть базовый набор данных, который включает последовательность наблюдений (циклов), основанную на нескольких идентификаторах. Я хочу применить размер окна 50 циклов, чтобы сеть оглянулась и изучила.

Я делаю следующее:

def gen_sequence(id_df, seq_length, seq_cols):
        data_array = id_df[seq_cols].values
        num_elements = data_array.shape[0]
        for start, stop in zip(range(0, num_elements-seq_length), range(seq_length, num_elements)):
            yield data_array[start:stop, :]

seq_gen = (list(gen_sequence(train_df[train_df['id']== id], sequence_length, sequence_cols)) 
               for id in train_df['id'].unique())

seq_array = np.concatenate(list(seq_gen)).astype(np.float32)

Размер моего окна / seq_length: 50 Мои сенсорные столбцы:

['scrap', 'cycle_norm', 'p1' , «p2», «p3», «p4», «p5», «p6», «p7», «p8», «p9», «p10», «p11», «p12», «p13», « a1 ',' a2 ',' a3 ',' a4 ',' a5 ',' a6 ',' a7 ',' a8 ',' a9 ',' a10 ',' a11 ',' a12 ',' a13 ' , 'a14', 'a15', 'a16', 'a17', 'a18', 'a19', 'a20']

Я получаю ошибку:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...