赞
踩
Train on 22824 samples, validate on 5706 samples Epoch 1/20 --------------------------------------------------------------------------- InvalidArgumentError Traceback (most recent call last) <ipython-input-19-46e26c3fe07c> in <module> 4 5 history = model.fit(train_images, train_labels, epochs=20, ----> 6 validation_data=(test_images, test_labels)) e:\python37\lib\site-packages\tensorflow\python\keras\engine\training.py in fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, max_queue_size, workers, use_multiprocessing, **kwargs) 878 initial_epoch=initial_epoch, 879 steps_per_epoch=steps_per_epoch, --> 880 validation_steps=validation_steps) 881 882 def evaluate(self, e:\python37\lib\site-packages\tensorflow\python\keras\engine\training_arrays.py in model_iteration(model, inputs, targets, sample_weights, batch_size, epochs, verbose, callbacks, val_inputs, val_targets, val_sample_weights, shuffle, initial_epoch, steps_per_epoch, validation_steps, mode, validation_in_fit, **kwargs) 327 328 # Get outputs. --> 329 batch_outs = f(ins_batch) 330 if not isinstance(batch_outs, list): 331 batch_outs = [batch_outs] e:\python37\lib\site-packages\tensorflow\python\keras\backend.py in __call__(self, inputs) 3074 3075 fetched = self._callable_fn(*array_vals, -> 3076 run_metadata=self.run_metadata) 3077 self._call_fetch_callbacks(fetched[-len(self._fetches):]) 3078 return nest.pack_sequence_as(self._outputs_structure, e:\python37\lib\site-packages\tensorflow\python\client\session.py in __call__(self, *args, **kwargs) 1437 ret = tf_session.TF_SessionRunCallable( 1438 self._session._session, self._handle, args, status, -> 1439 run_metadata_ptr) 1440 if run_metadata: 1441 proto_data = tf_session.TF_GetBuffer(run_metadata_ptr) e:\python37\lib\site-packages\tensorflow\python\framework\errors_impl.py in __exit__(self, type_arg, value_arg, traceback_arg) 526 None, None, 527 compat.as_text(c_api.TF_Message(self.status.status)), --> 528 c_api.TF_GetCode(self.status.status)) 529 # Delete the underlying status object from memory otherwise it stays alive 530 # as there is a reference to status from this from the traceback due to InvalidArgumentError: Received a label value of 12 which is outside the valid range of [0, 10). Label values: 11 4 5 8 12 11 12 6 9 11 10 4 4 10 11 11 3 8 12 12 5 6 6 1 2 10 4 11 2 2 10 12 [[{{node loss/dense_2_loss/SparseSoftmaxCrossEntropyWithLogits/SparseSoftmaxCrossEntropyWithLogits}}]]
这是由于tensorflow的数据集标签类别数与神经网络最后输出层的神经元数不一致引起的。
将红框的地方,改为相应对应的类别数即可!
如我的数据集类别数为13,如下图所示。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。