Path: blob/master/site/es-419/tensorboard/graphs.ipynb
25115 views
Copyright 2019 The TensorFlow Authors.
Cómo examinar el gráfico de TensorFlow
Descripción general
El Panel de control de Gráficos de TensorBoard es una potente herramienta para examinar su modelo de TensorFlow. Puede ver rápidamente un gráfico conceptual de la estructura de su modelo y asegurarse de que coincide con su diseño previsto. También puede ver un gráfico a nivel operacional para comprender cómo entiende TensorFlow su programa. Examinar el gráfico a nivel operacional puede darle una idea de cómo cambiar su modelo. Por ejemplo, puede rediseñar su modelo si el entrenamiento está progresando más lentamente de lo esperado.
Este tutorial presenta una rápida visión general de cómo generar datos de diagnóstico de gráficos y visualizarlos en el panel de control de gráficos de TensorBoard. Definirá y entrenará un modelo secuencial simple de Keras para el conjunto de datos Fashion-MNIST y aprenderá a registrar y examinar los gráficos de su modelo. También utilizará una API de seguimiento para generar datos de los gráficos de las funciones creadas utilizando la nueva anotación tf.function
.
Preparación
Definir un modelo de Keras
En este ejemplo, el clasificador es un modelo secuencial simple de cuatro capas.
Descargue y prepare los datos de entrenamiento.
Entrene el modelo y registre los datos
Antes del entrenamiento, defina la retrollamada de Keras TensorBoard, especificando el directorio de registro. Al pasar esta retrollamada a Model.fit(), se asegura de que los datos del gráfico se registran para su visualización en TensorBoard.
Gráfico a nivel operacional
Inicie TensorBoard y espere unos segundos a que se cargue la interfaz de usuario. Seleccione el panel de control de Gráficos pulsando "Gráficos" en la parte superior.
También puede utilizar opcionalmente TensorBoard.dev para crear un experimento alojado y que se pueda compartir.
De forma predeterminada, TensorBoard muestra el gráfico nivel de operación. (A la izquierda, puede ver la etiqueta "Predeterminada" seleccionada.) Observe que el gráfico está invertido; los datos fluyen de abajo hacia arriba, por lo que está al revés en comparación con el código. Sin embargo, puede ver que el gráfico se asemeja mucho a la definición del modelo de Keras, con aristas adicionales a otros nodos de cálculo.
Los gráficos con frecuencia son muy grandes, por lo que puede manipular la visualización del gráfico:
Desplácese para hacer zoom hacia dentro y hacia fuera
Arrastre a panear
Al hacer doble clic se activa la expansión de nodos (un nodo puede ser contenedor de otros nodos)
También puede ver los metadatos haciendo clic en un nodo. Esto le permite ver las entradas, salidas, formas y otros detalles.
Gráfico conceptual
Además del gráfico de ejecución, TensorBoard también muestra un gráfico conceptual. Esta es una vista sólo del modelo de Keras. Esto puede ser útil si está reutilizando un modelo guardado y desea examinar o validar su estructura.
Para ver el gráfico conceptual, seleccione la etiqueta "keras". En este ejemplo, verá un nodo Secuencial colapsado. Haga doble clic en el nodo para ver la estructura del modelo:
Gráficos de tf.functions
Los ejemplos hasta ahora han descrito gráficos de modelos de Keras, donde los gráficos se crearon definiendo capas de Keras y llamando a Model.fit().
Puede encontrarse con una situación en la que necesite utilizar la anotación tf.function
para "autograph", es decir, transformar, una función de cálculo de Python en un gráfico de TensorFlow con alto rendimiento. Para estas situaciones, se utiliza la API TensorFlow Summary Trace para registrar las funciones autografiadas para su visualización en TensorBoard.
Para utilizar la API de rastreo de resumen:
Defina y anote una función con
tf.function
Utilice
tf.summary.trace_on()
inmediatamente antes de su sitio de llamada a la función.Agregue información al perfil (memoria, tiempo de CPU) al gráfico pasando
profiler=True
Con un escritor de archivos de resumen, llame a
tf.summary.trace_export()
para guardar los datos del registro.
A continuación, puede utilizar TensorBoard para ver cómo se comporta su función.
Ahora puede ver la estructura de su función tal y como la entiende TensorBoard. Haga clic en el radiobotón "Perfil" para ver las estadísticas del CPU y la memoria.