revathijay / Python-Notebooks

Useful and handy Jupyter Notebooks for Analysis
22 stars 27 forks source link

indices[3817] = 4501 is not in [0, 4500) #3

Open XinyuDu opened 4 years ago

XinyuDu commented 4 years ago

When run model.fit cell get this error: `--------------------------------------------------------------------------- InvalidArgumentError Traceback (most recent call last)

in 5 tf.keras.preprocessing.sequence.pad_sequences(user_title_list_e['all_genres']) 6 ],user_title_list_e['predict_labels'].values,callbacks=[tensorboard_callback], ----> 7 steps_per_epoch=1, epochs=1000,verbose=1) /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/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, validation_freq, max_queue_size, workers, use_multiprocessing, **kwargs) 817 max_queue_size=max_queue_size, 818 workers=workers, --> 819 use_multiprocessing=use_multiprocessing) 820 821 def evaluate(self, /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/python/keras/engine/training_v2.py in fit(self, model, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, validation_freq, max_queue_size, workers, use_multiprocessing, **kwargs) 340 mode=ModeKeys.TRAIN, 341 training_context=training_context, --> 342 total_epochs=epochs) 343 cbks.make_logs(model, epoch_logs, training_result, ModeKeys.TRAIN) 344 /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/python/keras/engine/training_v2.py in run_one_epoch(model, iterator, execution_function, dataset_size, batch_size, strategy, steps_per_epoch, num_samples, mode, training_context, total_epochs) 126 step=step, mode=mode, size=current_batch_size) as batch_logs: 127 try: --> 128 batch_outs = execution_function(iterator) 129 except (StopIteration, errors.OutOfRangeError): 130 # TODO(kaftan): File bug about tf function and errors.OutOfRangeError? /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/python/keras/engine/training_v2_utils.py in execution_function(input_fn) 96 # `numpy` translates Tensors to values in Eager mode. 97 return nest.map_structure(_non_none_constant_value, ---> 98 distributed_function(input_fn)) 99 100 return execution_function /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/python/eager/def_function.py in __call__(self, *args, **kwds) 566 xla_context.Exit() 567 else: --> 568 result = self._call(*args, **kwds) 569 570 if tracing_count == self._get_tracing_count(): /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/python/eager/def_function.py in _call(self, *args, **kwds) 630 # Lifting succeeded, so variables are initialized and we can run the 631 # stateless function. --> 632 return self._stateless_fn(*args, **kwds) 633 else: 634 canon_args, canon_kwds = \ /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/python/eager/function.py in __call__(self, *args, **kwargs) 2361 with self._lock: 2362 graph_function, args, kwargs = self._maybe_define_function(args, kwargs) -> 2363 return graph_function._filtered_call(args, kwargs) # pylint: disable=protected-access 2364 2365 @property /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/python/eager/function.py in _filtered_call(self, args, kwargs) 1609 if isinstance(t, (ops.Tensor, 1610 resource_variable_ops.BaseResourceVariable))), -> 1611 self.captured_inputs) 1612 1613 def _call_flat(self, args, captured_inputs, cancellation_manager=None): /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/python/eager/function.py in _call_flat(self, args, captured_inputs, cancellation_manager) 1690 # No tape is watching; skip to running the function. 1691 return self._build_call_outputs(self._inference_function.call( -> 1692 ctx, args, cancellation_manager=cancellation_manager)) 1693 forward_backward = self._select_forward_and_backward_functions( 1694 args, /usr/local/anaconda3/lib/python3.6/site-packages/tensorflow_core/python/eager/function.py in call(self, ctx, args, cancellation_manager) 543 inputs=args, 544 attrs=("executor_type", executor_type, "config_proto", config), --> 545 ctx=ctx) 546 else: 547 outputs = execute.execute_with_cancellation( /usr/local/anaconda3/lib/python3.6/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 = [ /usr/local/anaconda3/lib/python3.6/site-packages/six.py in raise_from(value, from_value) InvalidArgumentError: indices[3817] = 4501 is not in [0, 4500) [[{{node model/aggregate_embeddings_3/PartitionedCall/RaggedMask/boolean_mask/GatherV2}}]] [Op:__inference_distributed_function_3953] Function call stack: distributed_function `
PokemanCatcher69 commented 3 years ago

Hey any fix for this?

derekwuchengyu commented 2 years ago

PokemanCatcher69 add +1e-10 at the end, convert the sequences into np.float32 tf.keras.preprocessing.sequence.pad_sequences(user_title_list_e['title_d'],padding='post',truncating='post')+1e-10

This works for me.

flavorfan commented 2 years ago

More detail please.

basselmasri commented 2 years ago

Any solutions for this yet?