Я новичок в нейронной сети, и я пытаюсь создать классификатор изображений.Всякий раз, когда я использую тензорную доску и вызываю ее в обратных вызовах в model.fit , эти ошибки происходят.Если я удалю тензорную доску, программа будет работать
Я уже пытался инициализировать переменные, используя эти коды, которые я получил в Интернете, но все равно выдает ошибку
uninitialized_vars = []
for var in tf.all_variables():
try:
sess.run(var)
except tf.errors.FailedPreconditionError:
uninitialized_vars.append(var)
init_new_vars_op = tf.initialize_variables(uninitialized_vars)
, это фактический код, которыйУ меня
def trainModel(self):
X_train,y_train = self.getTrainingData()
X_test,y_test = self.getTestingData()
run_opts = tf.RunOptions(report_tensor_allocations_upon_oom = True)
tensorboard = TensorBoard(log_dir="logs/{}".format(time()))
self.model.compile(loss=keras.losses.categorical_crossentropy,
optimizer='sgd',
metrics=['accuracy'], options = run_opts)
self.model.fit(
X_train,
y_train,
batch_size=1,
validation_data=(X_test, y_test),
epochs=5, callbacks=[tensorboard])
self.model.summary()
score = self.model.evaluate(X_test, y_test, verbose=0)
print('Test loss:', score[0])
print('Test accuracy:', score[1])
эти ошибки возникают после запуска программы
Traceback (most recent call last):
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1350, in _do_call
return fn(*args)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1329, in _run_fn
status, run_metadata)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/framework/errors_impl.py", line 473, in __exit__
c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.FailedPreconditionError: Attempting to use uninitialized value conv2d_1/bias
[[Node: conv2d_1/bias/read = Identity[T=DT_FLOAT, _class=["loc:@conv2d_1/bias"], _device="/job:localhost/replica:0/task:0/device:CPU:0"](conv2d_1/bias)]]
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "network.py", line 186, in <module>
main()
File "network.py", line 182, in main
network = SteganalysisModel()
File "network.py", line 46, in __init__
self.trainModel()
File "network.py", line 92, in trainModel
epochs=5, callbacks=[tensorboard])
File "/usr/local/lib/python3.5/dist-packages/keras/engine/training.py", line 1039, in fit
validation_steps=validation_steps)
File "/usr/local/lib/python3.5/dist-packages/keras/engine/training_arrays.py", line 199, in fit_loop
outs = f(ins_batch)
File "/usr/local/lib/python3.5/dist-packages/keras/backend/tensorflow_backend.py", line 2721, in __call__
return self._legacy_call(inputs)
File "/usr/local/lib/python3.5/dist-packages/keras/backend/tensorflow_backend.py", line 2693, in _legacy_call
**self.session_kwargs)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 895, in run
run_metadata_ptr)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1128, in _run
feed_dict_tensor, options, run_metadata)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1344, in _do_run
options, run_metadata)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/client/session.py", line 1363, in _do_call
raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.FailedPreconditionError: Attempting to use uninitialized value conv2d_1/bias
[[Node: conv2d_1/bias/read = Identity[T=DT_FLOAT, _class=["loc:@conv2d_1/bias"], _device="/job:localhost/replica:0/task:0/device:CPU:0"](conv2d_1/bias)]]
Caused by op 'conv2d_1/bias/read', defined at:
File "network.py", line 186, in <module>
main()
File "network.py", line 182, in main
network = SteganalysisModel()
File "network.py", line 45, in __init__
self.createModel()
File "network.py", line 58, in createModel
self.model.add(Conv2D(3,(3,3), input_shape=(self.IMAGE_SIZE,self.IMAGE_SIZE,3)))
File "/usr/local/lib/python3.5/dist-packages/keras/engine/sequential.py", line 165, in add
layer(x)
File "/usr/local/lib/python3.5/dist-packages/keras/engine/base_layer.py", line 431, in __call__
self.build(unpack_singleton(input_shapes))
File "/usr/local/lib/python3.5/dist-packages/keras/layers/convolutional.py", line 147, in build
constraint=self.bias_constraint)
File "/usr/local/lib/python3.5/dist-packages/keras/legacy/interfaces.py", line 91, in wrapper
return func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/keras/engine/base_layer.py", line 252, in add_weight
constraint=constraint)
File "/usr/local/lib/python3.5/dist-packages/keras/backend/tensorflow_backend.py", line 402, in variable
v = tf.Variable(value, dtype=tf.as_dtype(dtype), name=name)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/ops/variables.py", line 229, in __init__
constraint=constraint)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/ops/variables.py", line 376, in _init_from_args
self._snapshot = array_ops.identity(self._variable, name="read")
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/ops/array_ops.py", line 127, in identity
return gen_array_ops.identity(input, name=name)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/ops/gen_array_ops.py", line 2134, in identity
"Identity", input=input, name=name)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/framework/op_def_library.py", line 787, in _apply_op_helper
op_def=op_def)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/framework/ops.py", line 3160, in create_op
op_def=op_def)
File "/home/jcooo/.local/lib/python3.5/site-packages/tensorflow/python/framework/ops.py", line 1625, in __init__
self._traceback = self._graph._extract_stack() # pylint: disable=protected-access
FailedPreconditionError (see above for traceback): Attempting to use uninitialized value conv2d_1/bias
[[Node: conv2d_1/bias/read = Identity[T=DT_FLOAT, _class=["loc:@conv2d_1/bias"], _device="/job:localhost/replica:0/task:0/device:CPU:0"](conv2d_1/bias)]]
Я использую python 3.5.2 , tenorflow 1.5.0 и Ubuntu 16.04 Весь код в здесь