En una configuración general de tensorflow como
model = construct_model() with tf.Session() as sess: train_model(sess)
Donde construct_model()
contiene la definición del modelo, incluida la inicialización aleatoria de pesos ( tf.truncated_normal
) y train_model(sess)
ejecuta el entrenamiento del modelo –
¿Qué semillas tengo que establecer dónde asegurar el 100% de reproducibilidad entre ejecuciones repetidas del fragmento de código anterior? La documentación para tf.random.set_random_seed
puede ser concisa, pero me dejó un poco confundido. Lo intenté:
tf.set_random_seed(1234) model = construct_model() with tf.Session() as sess: train_model(sess)
Pero obtuve diferentes resultados cada vez.
Una posible razón es que al construir el modelo, hay algunos códigos que utilizan el módulo numpy.random. Así que tal vez puedas intentar establecer la semilla para numpy, también.