¿Determinismo en las actualizaciones de gradiente de tensorflow?

Así que tengo un script NN muy simple escrito en Tensorflow, y estoy teniendo dificultades para tratar de localizar de dónde viene algo de "aleatoriedad".

He grabado el

Pesas,Gradientes,Logits

de mi red mientras entreno, y para la primera iteración, está claro que todo comienza igual. Tengo un valor SEED tanto para la forma en que se leen los datos como un valor SEED para inicializar los pesos de la red. Los que nunca cambio.

Mi problema es que al decir la segunda iteración de cada repetición que hago, empiezo a ver elgradientes divergir (por una pequeña cantidad, como digamos, 1e-6 más o menos). Sin embargo, con el tiempo, esto por supuesto conduce a un comportamiento no repetible.

¿Cuál podría ser la causa de esto? No sé de dónde podría provenir alguna posible fuente de aleatoriedad ...

Gracias

Respuestas a la pregunta(3)

Su respuesta a la pregunta