У меня есть сеть network
, которая уже обучена и написана с tensorflow
. На более позднем этапе моих вычислений я хочу predict
выходные данные промежуточного уровня указанной сети. Для этого я следовал инструкциям Keras FAQ .
Мой код для создания промежуточного слоя выглядит следующим образом:
intermediate_layer = tf.keras.Model(inputs=network.input,
outputs=network.layers[some_layer].output)
data = load_data()
y = intermediate_layer.predict(data) # <-- The error occurs here
Для этого кода я получаю следующая ошибка:
File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/keras/engine/training.py", line 1478, in predict
self, x, batch_size=batch_size, verbose=verbose, steps=steps)
File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/keras/engine/training_arrays.py", line 363, in predict_loop
batch_outs = f(ins_batch)
File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/keras/backend.py", line 2897, in __call__
fetched = self._callable_fn(*array_vals)
File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/client/session.py", line 1454, in __call__
self._session._session, self._handle, args, status, None)
File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/framework/errors_impl.py", line 519, in __exit__
c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.FailedPreconditionError: Error while reading resource variable conv1/kernel from Container: localhost. This could mean that the variable was uninitialized. Not found: Container localhost does not exist. (Could not find resource: localhost/conv1/kernel)
[[Node: conv1/Conv2D/ReadVariableOp = ReadVariableOp[dtype=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:GPU:0"](conv1/kernel)]]
[[Node: max_pooling2d/MaxPool/_3 = _Recv[client_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0", send_device="/job:localhost/replica:0/task:0/device:GPU:0", send_device_incarnation=1, tensor_name="edge_37_max_pooling2d/MaxPool", tensor_type=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:CPU:0"]()]]
Предыдущая сеть уже скомпилирована и работает отлично.
Кто-нибудь сталкивался с подобной проблемой и могу ли я предоставить решение? Большое спасибо заранее.