входное число увеличивается каждый раз, когда вызывается train.dataset

#python #tensorflow

Вопрос:

Моя модель имеет несколько входов и выходов, поэтому я передаю словарь в train_dataset:

 train_dataset = tf.data.Dataset.from_tensor_slices(
    (
        {"input_17": timetr, "input_18": atr},
        {"ed": wtr, "sd": wbtr},
    )
)
train_dataset = train_dataset.batch(10)
 

Теперь каждый раз, когда я запускаю приведенный выше блок кода, а затем запускаю:

 history = model.fit(train_dataset,epochs=5,callbacks=[cp_callback],verbose=1,steps_per_epoch= 402)
 

Он попросит меня увеличить входное число, т. е. "input_17" должно быть "input_19" и "input_18" должно быть "input_20" . Я не знаю , почему это происходит, кроме того, я устал увеличивать входные данные каждый раз, когда я запускаю обе эти команды. Есть ли обходной путь?

Ответ №1:

Он создает новое инкрементное имя для каждого запуска. Предыдущие имена уже используются, поэтому суффикс будет увеличен для присвоения нового имени. Попробуйте указать свое имя, например:

 InputLayer(...,name="input_1")
InputLayer(...,name="input_2")
 

Тогда их имена будут одинаковыми каждый раз, когда вы будете бежать.