от
Поэтому я пытаюсь использовать преобразования тензорного потока в моем определении модели keras / tf. Я понимаю, что это необходимо для создания градиента, и я думаю, что это как-то связано с этой ошибкой. Я хочу ввести [batch_size, 2, 128, channel], и я выполняю вычисления тензорного потока для 2 столбцов. Я хочу структурировать это в рамках простого определения модели keras, как показано ниже.
### MODEL CREATION
X_input = Input(shape=input_shape [1], name='input_1')                               # Input
X_i = tf.slice(X_input, [0,0,0,1], [11000,1,128,1])                                  # Slicing out inphase column
X_q = tf.slice(X_input, [0,1,0,1], [11000,1,128,1])                                  # Slicing out quadrature column
X_mag = tf.math.sqrt(tf.math.add(tf.math.square(X_i), tf.math.square(X_q)))      # Acquiring magnitude of IQ
X_phase = tf.math.atan2(X_i, X_q)                                                # Acquiring phase of IQ
X = tf.concat([X_mag, X_phase], axis=1)                                          # Combining into two column (magnitude,phase) tensor
X = Conv2D(128, kernel_size=(2,8), padding='same',data_format='channels_last')(X)
X = Activation('relu')(X)
X = Dropout(dropout_rate)(X)
X = Conv2D(64, kernel_size=(1,8), padding='same',data_format='channels_last')(X)
X = Activation('relu')(X)
X = Dropout(dropout_rate)(X)
X = Flatten()(X)
X = Dense(128, kernel_initializer='he_normal', activation='relu')(X)
X = Dropout(dropout_rate)(X)
X = Dense(len(classes), kernel_initializer='he_normal')(X)
X = Activation('softmax', name = 'labels')(X)

model = Model(inputs = X_input, outputs = X)
model.summary()
model.compile(optimizer=Adam(learning_rate), loss='categorical_crossentropy', metrics =['accuracy'])
Трассировка стека ниже! Это немного повторяется по какой-то причине. , ,
The shape of x is  (220000, 2, 128)



Пожалуйста, предложите любые советы о том, как сделать эту обучаемую модель с этими преобразованиями данных, сохраняя при этом тот же ввод / вывод!

Спасибо!
    

        

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.
Добро пожаловать на сайт ByNets, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...