Это может быть связано с этим вопросом .Симптом тот же, но основная причина может быть другой.
self.estimator = tf.estimator.DNNRegressor(
feature_columns=feature_columns,
hidden_units=[16,32,16,8],
loss_reduction=tf.losses.Reduction.MEAN,
optimizer=tf.train.AdamOptimizer()
)
...
def train_input_fn(self):
self.train_features, self.train_labels = self.train_iter.get_next()
return self.train_features, self.train_labels
...
def perform_training(self):
self.batch_size = 32
dataset = tf.data.Dataset.from_tensor_slices((dict(self.train_features), self.train_labels))
self.train_dataset = dataset.repeat().batch(self.batch_size)
self.train_iter = self.train_dataset.make_one_shot_iterator()
print("train_iter: {}".format(self.train_iter))
self.estimator.train( self.train_input_fn, steps=self.num_epochs )
Ошибка возникает при вызове self.estimator.train:
ValueError: Passed Tensor("dnn/head/weighted_loss/value:0", shape=(), dtype=float32) should have graph attribute that is equal to current graph <tensorflow.python.framework.ops.Graph object at 0x7feb79598b38>.
Структура self.train_features
соответствует feature_columns
.Не могли бы вы сказать, что я здесь не так делаю?
Спасибо, Майкл