Guia inicial de TensorFlow 2.0 para principiantes

Ver en TensorFlow.org Ejecutar en Google Colab Ver codigo en GitHub Descargar notebook

Este es un notebook de Google Colaboratory. Los programas de Python se executan directamente en tu navegador— una gran manera de aprender y utilizar TensorFlow. Para poder seguir este tutorial, ejecuta este notebook en Google Colab presionando el boton en la parte superior de esta pagina.

  1. En Colab, selecciona "connect to a Python runtime": En la parte superior derecha de la barra de menus selecciona: CONNECT.
  2. Para ejecutar todas las celdas de este notebook: Selecciona Runtime > Run all.

Descarga e installa el paquete TensorFlow 2.0 version. Importa TensorFlow en tu programa:

from __future__ import absolute_import, division, print_function, unicode_literals

# Installa TensorFlow

import tensorflow as tf

Carga y prepara el conjunto de datos MNIST. Convierte los ejemplos de numeros enteros a numeros de punto flotante:

mnist = tf.keras.datasets.mnist

(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0

Construye un modelo tf.keras.Sequential apilando capas. Escoge un optimizador y una funcion de perdida para el entrenamiento de tu modelo:

model = tf.keras.models.Sequential([
  tf.keras.layers.Flatten(input_shape=(28, 28)),
  tf.keras.layers.Dense(128, activation='relu'),
  tf.keras.layers.Dropout(0.2),
  tf.keras.layers.Dense(10, activation='softmax')
])

model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

Entrena y evalua el modelo:

model.fit(x_train, y_train, epochs=5)

model.evaluate(x_test,  y_test, verbose=2)
Train on 60000 samples
Epoch 1/5
60000/60000 [==============================] - 5s 79us/sample - loss: 0.2940 - accuracy: 0.9148
Epoch 2/5
60000/60000 [==============================] - 4s 66us/sample - loss: 0.1425 - accuracy: 0.9578
Epoch 3/5
60000/60000 [==============================] - 4s 65us/sample - loss: 0.1076 - accuracy: 0.9677
Epoch 4/5
60000/60000 [==============================] - 4s 65us/sample - loss: 0.0890 - accuracy: 0.9722
Epoch 5/5
60000/60000 [==============================] - 4s 66us/sample - loss: 0.0754 - accuracy: 0.9769
10000/1 - 1s - loss: 0.0387 - accuracy: 0.9763

[0.07694335264228284, 0.9763]

El model de clasificacion de images fue entrenado y alcanzo una exactitud de ~98% en este conjunto de datos. Para aprender mas, lee los [tutoriales de TensorFlow].