Estoy usando la CPU tensorflow 1.0 en Ubuntu y Python 3.5.
Adapté un ejemplo de tensorflow para trabajar en mi propio conjunto de datos https://github.com/martin-gorner/tensorflow-mnist-tutorial
Funciona bien siempre que el número de salidas sea inferior a 10. Cuando el número de salidas es superior a 10, aparece el error:
InvalidArgumentError (see above for traceback): indices[1] = 10 is not in [0, 10) [[Node: Gather_4 = Gather[Tindices=DT_INT64, Tparams=DT_FLOAT, validate_indices=true, _device="/job:localhost/replica:0/task:0/cpu:0"](grayscale_to_rgb, ArgMax_4)]]
¿Alguna ayuda?
El índice de la palabra de entrada excede la longitud del vocabulario, o las palabras nuevas que no están incluidas en el vocabulario.
Por favor, intenta ampliar el vocabulario.
También me encontré con el mismo error, y después de juguetear con él durante 2 días me di cuenta de que hay dos razones principales por las que este error se estaba generando en mi código y lo mencioné a continuación para ayudar a cualquiera que tenga problemas con el mismo problema:
Las dimensiones de sus datos y sus tags son diferentes.
En mi caso, el problema fue que al comstackr mi vocabulario, he indexado las palabras de 1 y no de 0. Pero la capa incrustada comienza a indexar desde 0. Así que seguí dándome el error mencionado. Arreglé el error indexando mi vocabulario de 0.
código anterior:
dictionary = Counter(words) sorted_split_words = sorted(dictionary, key=dictionary.get, reverse=True) vocab_to_int = {c: i for i, c in enumerate(sorted_split_words, 1)}
para arreglarlo cambié la última línea a (eliminado 1):
vocab_to_int = {c: i for i, c in enumerate(sorted_split_words)}