Continuando con la serie de artículos sobre Tensorflow, en este caso se explicará el significado y uso de Grapg.
Antes de continuar les dejo la lista de artículos de esta serie:
Antes de continuar les dejo la lista de artículos de esta serie:
- Hola mundo desde Tensorflow
- Matemáticas básicas con Tensorflow
- Manejo de matrices con Tensorflow
- Variables y placeholders en Tensorflow
tf.Graph:
Cada computo en Tensorflow es representado por un Grafo de flujo de datos, este tiene dos elementos:
- Un objeto tf.Operation, que representa la unidad de computo.
- Un objeto tf.Tensor, que representa unidades de datos, que se necesita para las operaciones.
A continuación se muestra una figura de la representación de un Grafo:
A continuación se muestra el uso de Graph:
In [1]:
#Se importa tensorflow
importtensorflowastf
In [2]:
#Se define dos constantes
n1=tf.constant(10)
n2=tf.constant(20)
In [3]:
#Se realiza la suma de las dos constantes
n3=n1+n2
In [4]:
#Se instancia la sesión y se ejecuta almacenando el resultado de n3 que se muestra
withtf.Session()assess:
result=sess.run(n3)
print(result)
In [5]:
#Se imprime la constante n3, es una suma, y de tipo int32
print(n3)
In [6]:
#Se obtiene el valor por defecto del grafo en memoria
print(tf.get_default_graph())
In [7]:
#Se instancia el objeto grafo
g=tf.Graph()
In [8]:
#Se imprime su valor, los valores en memoria serán distintos del por defecto al creado.
print(g)
In [9]:
#Se define graph1 como el grafo por defecto
graph1=tf.get_default_graph()
In [10]:
#Se imprime graph1, será el valor por defecto en memoria
print(graph1)
In [11]:
#Se instancia el grafo2
graph2=tf.Graph()
In [12]:
#Se muestra el valor de grafo2
print(graph2)
In [13]:
#Se define el grafo2 como si fuera por defecto y se muestra si en verdad es por defecto
withgraph2.as_default():
print(graph2istf.get_default_graph())
In [14]:
#Se evalua si grafo 2, es el de por defecto
print(graph2istf.get_default_graph())
Otro ejemplo de Grafo¶
In [15]:
#Se define el grafo
grafo=tf.Graph()
In [16]:
#Se define la sesión pasandole el grafo
withtf.Session(graph=grafo)assess:
#Se define las constantes x y y que son arreglos
x=tf.constant([11,13,16])
y=tf.constant([10,10,10])
#Se realiza la operación de suma de x+y
op=tf.add(x,y)
#Se ejecuta la operación en la sesión
resultado=sess.run(fetches=op)
print(resultado)
In [ ]:
Si quiere investigar más sobre Graph puede revisar su documentación en tensorflow (documentación del api y guía para los progamadores), pueden revisar el artículo en medium Tensorflow in a nutshell-Part 1: Basics, también pueden revisar el tutorial de la gente de datacamp Tensorflow tutorial for beginners.