Python 这可能是因为cuDNN未能初始化,所以请尝试查看上面是否打印了警告日志消息。[作品:第二辑]
当我安装TensorFlow GPU 2.0并导入软件包,然后运行CNN模型时,我在我的anaconda中安装了它。它工作正常,但当我尝试运行训练模型时,出现了错误 这是我的错误报告:Python 这可能是因为cuDNN未能初始化,所以请尝试查看上面是否打印了警告日志消息。[作品:第二辑],python,tensorflow,Python,Tensorflow,当我安装TensorFlow GPU 2.0并导入软件包,然后运行CNN模型时,我在我的anaconda中安装了它。它工作正常,但当我尝试运行训练模型时,出现了错误 这是我的错误报告: Epoch 1/50 --------------------------------------------------------------------------- UnknownError Traceback (most recent call
Epoch 1/50
---------------------------------------------------------------------------
UnknownError Traceback (most recent call last)
<ipython-input-5-c4639d74909a> in <module>
6 epochs=50,
7 validation_data=testing_set,
----> 8 validation_steps=50)
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training.py in fit_generator(self, generator, steps_per_epoch, epochs, verbose, callbacks, validation_data, validation_steps, validation_freq, class_weight, max_queue_size, workers, use_multiprocessing, shuffle, initial_epoch)
1295 shuffle=shuffle,
1296 initial_epoch=initial_epoch,
-> 1297 steps_name='steps_per_epoch')
1298
1299 def evaluate_generator(self,
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_generator.py in model_iteration(model, data, steps_per_epoch, epochs, verbose, callbacks, validation_data, validation_steps, validation_freq, class_weight, max_queue_size, workers, use_multiprocessing, shuffle, initial_epoch, mode, batch_size, steps_name, **kwargs)
263
264 is_deferred = not model._is_compiled
--> 265 batch_outs = batch_function(*batch_data)
266 if not isinstance(batch_outs, list):
267 batch_outs = [batch_outs]
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training.py in train_on_batch(self, x, y, sample_weight, class_weight, reset_metrics)
971 outputs = training_v2_utils.train_on_batch(
972 self, x, y=y, sample_weight=sample_weight,
--> 973 class_weight=class_weight, reset_metrics=reset_metrics)
974 outputs = (outputs['total_loss'] + outputs['output_losses'] +
975 outputs['metrics'])
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_v2_utils.py in train_on_batch(model, x, y, sample_weight, class_weight, reset_metrics)
262 y,
263 sample_weights=sample_weights,
--> 264 output_loss_metrics=model._output_loss_metrics)
265
266 if reset_metrics:
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_eager.py in train_on_batch(model, inputs, targets, sample_weights, output_loss_metrics)
309 sample_weights=sample_weights,
310 training=True,
--> 311 output_loss_metrics=output_loss_metrics))
312 if not isinstance(outs, list):
313 outs = [outs]
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_eager.py in _process_single_batch(model, inputs, targets, output_loss_metrics, sample_weights, training)
250 output_loss_metrics=output_loss_metrics,
251 sample_weights=sample_weights,
--> 252 training=training))
253 if total_loss is None:
254 raise ValueError('The model cannot be run '
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\training_eager.py in _model_loss(model, inputs, targets, output_loss_metrics, sample_weights, training)
125 inputs = nest.map_structure(ops.convert_to_tensor, inputs)
126
--> 127 outs = model(inputs, **kwargs)
128 outs = nest.flatten(outs)
129
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\base_layer.py in __call__(self, inputs, *args, **kwargs)
889 with base_layer_utils.autocast_context_manager(
890 self._compute_dtype):
--> 891 outputs = self.call(cast_inputs, *args, **kwargs)
892 self._handle_activity_regularization(inputs, outputs)
893 self._set_mask_metadata(inputs, outputs, input_masks)
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\sequential.py in call(self, inputs, training, mask)
254 if not self.built:
255 self._init_graph_network(self.inputs, self.outputs, name=self.name)
--> 256 return super(Sequential, self).call(inputs, training=training, mask=mask)
257
258 outputs = inputs # handle the corner case where self.layers is empty
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\network.py in call(self, inputs, training, mask)
706 return self._run_internal_graph(
707 inputs, training=training, mask=mask,
--> 708 convert_kwargs_to_constants=base_layer_utils.call_context().saving)
709
710 def compute_output_shape(self, input_shape):
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\network.py in _run_internal_graph(self, inputs, training, mask, convert_kwargs_to_constants)
858
859 # Compute outputs.
--> 860 output_tensors = layer(computed_tensors, **kwargs)
861
862 # Update tensor_dict.
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\engine\base_layer.py in __call__(self, inputs, *args, **kwargs)
889 with base_layer_utils.autocast_context_manager(
890 self._compute_dtype):
--> 891 outputs = self.call(cast_inputs, *args, **kwargs)
892 self._handle_activity_regularization(inputs, outputs)
893 self._set_mask_metadata(inputs, outputs, input_masks)
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\keras\layers\convolutional.py in call(self, inputs)
195
196 def call(self, inputs):
--> 197 outputs = self._convolution_op(inputs, self.kernel)
198
199 if self.use_bias:
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\ops\nn_ops.py in __call__(self, inp, filter)
1132 call_from_convolution=False)
1133 else:
-> 1134 return self.conv_op(inp, filter)
1135 # copybara:strip_end
1136 # copybara:insert return self.conv_op(inp, filter)
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\ops\nn_ops.py in __call__(self, inp, filter)
637
638 def __call__(self, inp, filter): # pylint: disable=redefined-builtin
--> 639 return self.call(inp, filter)
640
641
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\ops\nn_ops.py in __call__(self, inp, filter)
236 padding=self.padding,
237 data_format=self.data_format,
--> 238 name=self.name)
239
240
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\ops\nn_ops.py in conv2d(input, filter, strides, padding, use_cudnn_on_gpu, data_format, dilations, name, filters)
2008 data_format=data_format,
2009 dilations=dilations,
-> 2010 name=name)
2011
2012
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\ops\gen_nn_ops.py in conv2d(input, filter, strides, padding, use_cudnn_on_gpu, explicit_paddings, data_format, dilations, name)
1029 input, filter, strides=strides, use_cudnn_on_gpu=use_cudnn_on_gpu,
1030 padding=padding, explicit_paddings=explicit_paddings,
-> 1031 data_format=data_format, dilations=dilations, name=name, ctx=_ctx)
1032 except _core._SymbolicException:
1033 pass # Add nodes to the TensorFlow graph.
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\ops\gen_nn_ops.py in conv2d_eager_fallback(input, filter, strides, padding, use_cudnn_on_gpu, explicit_paddings, data_format, dilations, name, ctx)
1128 explicit_paddings, "data_format", data_format, "dilations", dilations)
1129 _result = _execute.execute(b"Conv2D", 1, inputs=_inputs_flat, attrs=_attrs,
-> 1130 ctx=_ctx, name=name)
1131 _execute.record_gradient(
1132 "Conv2D", _inputs_flat, _attrs, _result, name)
~\Anaconda3\envs\tf-gpu\lib\site-packages\tensorflow_core\python\eager\execute.py in quick_execute(op_name, num_outputs, inputs, attrs, ctx, name)
65 else:
66 message = e.message
---> 67 six.raise_from(core._status_to_exception(e.code, message), None)
68 except TypeError as e:
69 keras_symbolic_tensors = [
~\Anaconda3\envs\tf-gpu\lib\site-packages\six.py in raise_from(value, from_value)
UnknownError: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above. [Op:Conv2D]
1
# Save a model
2
model.save('Datasets/300_train/CNN_300.tflearn')
1/50纪元
---------------------------------------------------------------------------
UnknownError回溯(上次最近的调用)
在里面
6个时代=50,
7验证数据=测试集,
---->8个验证步骤(步骤=50)
~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\training.py in-fit\u生成器(self、生成器、每个历元的步骤、历元、冗余、回调、验证数据、验证步骤、验证频率、类权重、最大队列大小、工作者、使用多处理、无序、初始历元)
1295洗牌=洗牌,
1296初始纪元=初始纪元,
->1297个步骤(每个时代的步骤)
1298
1299 def评估_发生器(自,
模型迭代中的~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\training\u generator.py(模型、数据、每个历元的步骤、历元、冗余、回调、验证数据、验证步骤、验证频率、类权重、最大队列大小、工人、使用多处理、随机、初始历元、模式、批大小、步骤名称、**kwargs)
263
264是延迟的=不是模型。\是编译的
-->265批处理输出=批处理功能(*批处理数据)
266如果不存在(批次,列表):
267批次输出=[批次输出]
~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\training.py in train\u on\u on\u batch(self、x、y、sample\u weight、class\u weight、reset\u metrics)
971输出=批次上的培训(
972自身,x,y=y,样本重量=样本重量,
-->973类权重=类权重,重置度量=重置度量)
974输出=(输出['总损耗]+输出['输出损耗']+
975个输出[“指标])
~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\training\u v2\u utils.py in train\u on\u批次(型号、x、y、样本重量、类别重量、重置度量)
262年,
263样本权重=样本权重,
-->264输出\损耗\度量=模型。\输出\损耗\度量)
265
266如果重置度量:
~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\training\u eager.py in train\u on\u batch(模型、输入、目标、样本权重、输出损失度量)
309样本重量=样本重量,
310训练=正确,
-->311输出损失度量=输出损失度量)
312如果不存在(输出,列表):
313出局=[出局]
~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\training\u eager.py in\u process\u single\u batch(模型、输入、目标、输出、损耗指标、样本权重、训练)
250输出损耗度量=输出损耗度量,
251样本权重=样本权重,
-->252培训=培训)
253如果总损失为零:
254 raise VALUE ERROR('模型无法运行'
~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\training\u eager.py in\u model\u loss(模型、输入、目标、输出\u loss\u指标、样本权重、训练)
125输入=nest.map\u结构(ops.convert\u to\u张量,输入)
126
-->127输出=型号(输入,**kwargs)
128个输出=嵌套。展平(输出)
129
调用中的~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\base\u layer.py(self、input、*args、**kwargs)
889,带基本\u层\u utils.autocast\u上下文\u管理器(
890自我计算类型):
-->891输出=自调用(cast_输入,*args,**kwargs)
892自我处理活动规则化(输入、输出)
893自设置掩码元数据(输入、输出、输入掩码)
调用中的~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\sequential.py(self、输入、训练、掩码)
254如果不是自建的:
255 self.\u init\u graph\u网络(self.inputs,self.outputs,name=self.name)
-->256返回超级(顺序,自)。调用(输入,训练=训练,掩码=掩码)
257
258输出=输入#处理self.layers为空的拐角情况
调用中的~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\network.py(self、input、training、mask)
706返回自运行内部图(
707输入,训练=训练,面具=面具,
-->708将\u kwargs\u转换为\u常量=基本\u层\u utils.call\u context().saving)
709
710 def计算输出形状(自身、输入形状):
~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\network.py in\u run\u internal\u图(self、input、training、mask、convert\u kwargs\u to\u constants)
858
859#计算输出。
-->860输出张量=层(计算张量,**kwargs)
861
862#更新张量dict。
调用中的~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\engine\base\u layer.py(self、input、*args、**kwargs)
889,带基本\u层\u utils.autocast\u上下文\u管理器(
890自我计算类型):
-->891输出=自调用(cast_输入,*args,**kwargs)
892自我处理活动规则化(输入、输出)
893自设置掩码元数据(输入、输出、输入掩码)
调用中的~\Anaconda3\envs\tf gpu\lib\site packages\tensorflow\u core\python\keras\layers\convolutional.py(self,输入)
195
196 def呼叫(自身,输入):
-->197项产出