【发布时间】:2018-01-07 11:47:55
【问题描述】:
我创建了一个自定义 input_func 并将一个 keras 模型转换为 tf.Estimator 进行训练。但是,它不断向我抛出错误。
-
这是我的模型摘要。我试图用
batch_shape=(16, 320, 320, 3)设置Input层进行测试,但问题仍然存在inputs = Input(batch_shape=(16, 320, 320, 3), name='input_images') outputs = yolov2.predict(intputs) model = Model(inputs, outputs) model.compile(optimizer= tf.keras.optimizers.Adam(lr=learning_rate), loss = compute_loss) -
我使用
tf.keras.estimator.model_to_estimator进行转换。我还创建了一个input_fn用于培训:def input_fun(images, labels, batch_size, shuffle=True): dataset = create_tfdataset(images, labels) dataset = dataset.shuffle().batch(batch_size) iterator = dataset.make_one_shot_iterator() images, labels = iterator.next() return {'input_images': images}, labels estimator = tf.keras.estimator.model_to_estimator(keras_model=model) estimator.train(input_fn = lambda: input_fn(images, labels, 32), max_steps = 1000) -
它抛出了这个错误
input_tensor = Input(tensor=x, name='input_wrapper_for_' + name) ... File "/home/dat/anaconda3/envs/webapp/lib/python2.7/site-packages/tensorflow/python/layers/base.py", line 1309, in __init__ self._batch_input_shape = tuple(input_tensor.get_shape().as_list()) "as_list() is not defined on an unknown TensorShape.") ValueError: as_list() is not defined on an unknown TensorShape.
【问题讨论】:
-
你是怎么解决的?
标签: python tensorflow deep-learning keras