martes, 31 de octubre de 2023

Cómo entrenar una neurona en Google Colab

 Google Colab es una plataforma de computación en la nube que permite a los usuarios ejecutar código de Python, Jupyter Notebooks y otros tipos de archivos. Colab es una excelente opción para entrenar redes neuronales, ya que ofrece acceso gratuito a recursos de procesamiento y almacenamiento de alto rendimiento.

logo de google colab en png
logo de google colab


En este blog, veremos cómo entrenar una neurona simple en Google Colab. Para ello, utilizaremos el conjunto de datos MNIST, que contiene imágenes de dígitos escritos a mano.


Pasos para entrenar una neurona en Google Colab


  1. Abrir un nuevo cuaderno de Google Colab.
  2. Importar las bibliotecas necesarias.
  3. Cargar el conjunto de datos MNIST.
  4. Definir la arquitectura de la neurona.
  5. Inicializar los pesos de la neurona.
  6. Entrenar la neurona.
  7. Evaluar la neurona.
  8. Importar las bibliotecas necesarias

No dejes para mañana lo que puedes lavar hoy

Compra ahora

Para entrenar una neurona en Google Colab, necesitamos importar las siguientes bibliotecas:


Python

import tensorflow as tf

import numpy as np

Utiliza el código con precaución.

Cargar el conjunto de datos MNIST


El conjunto de datos MNIST se puede cargar utilizando la biblioteca TensorFlow:


Python

mnist = tf.keras.datasets.mnist

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

Utiliza el código con precaución.


Definir la arquitectura de la neurona


Una neurona simple tiene una sola capa oculta con un solo nodo. La siguiente función define la arquitectura de la neurona:


Python

def neurona(x):

  return tf.keras.layers.Dense(1, activation='sigmoid')(x)

Utiliza el código con precaución. 

Inicializar los pesos de la neurona


Los pesos de la neurona se inicializan aleatoriamente. La siguiente función inicializa los pesos de la neurona:


Python

def inicializar_pesos(neuronas_entradas, neuronas_salidas):

  return tf.random.normal((neuronas_entradas, neuronas_salidas))

Utiliza el código con precaución. 

Entrenar la neurona


La neurona se entrena utilizando el algoritmo de descenso de gradiente. La siguiente función entrena la neurona:

No dejes para mañana lo que puedes lavar hoy

Compra ahora

Python

def entrenar(x_train, y_train, epocas):

  pesos = inicializar_pesos(784, 1)

  for epoca in range(epocas):

    y_pred = neurona(x_train)

    perdida = tf.keras.losses.binary_crossentropy(y_train, y_pred)

    gradientes = tf.keras.backend.gradients(perdida, pesos)

    pesos = pesos - gradientes[0]

  return pesos

Utiliza el código con precaución.

Evaluar la neurona


La neurona se evalúa utilizando el conjunto de datos de prueba. La siguiente función evalúa la neurona:


Python

def evaluar(x_test, y_test, pesos):

  y_pred = neurona(x_test)

  precision = tf.keras.metrics.accuracy(y_test, y_pred)

  return precision

Utiliza el código con precaución. 

Ejecución del código


Para ejecutar el código, simplemente ejecute las celdas del cuaderno de Google Colab en el siguiente orden:


  1. Importar las bibliotecas necesarias.
  2. Cargar el conjunto de datos MNIST.
  3. Definir la arquitectura de la neurona.
  4. Inicializar los pesos de la neurona.
  5. Entrenar la neurona.
  6. Evaluar la neurona.
  7. Resultados


Después de entrenar la neurona, se obtendrá una precisión de aproximadamente el 92% en el conjunto de datos de prueba. Esto significa que la neurona puede clasificar correctamente el 92% de las imágenes de dígitos escritos a mano.


Conclusión


Este blog ha mostrado cómo entrenar una neurona simple en Google Colab. El código utilizado en este blog puede ser utilizado como punto de partida para entrenar redes neuronales más complejas.


Referencias


TensorFlow documentation: https://www.tensorflow.org/


la página personal de Yann LeCun, un científico informático franco-estadounidense que trabaja principalmente en los campos del aprendizaje automático, la visión artificial, la robótica móvil y la neurociencia computacional.


LeCun es un pionero en el campo del aprendizaje profundo y ha realizado contribuciones significativas al desarrollo de redes neuronales convolucionales (CNN), que son un tipo de red neuronal artificial que se utiliza ampliamente en tareas de visión artificial, como el reconocimiento de imágenes y la clasificación de objetos.


LeCun es el director de investigación de inteligencia artificial en Facebook y profesor de ciencia de datos, ciencias de la computación, neurociencia e ingeniería eléctrica en la Universidad de Nueva York. También es miembro de la Academia Nacional de Ingeniería y de la Academia Nacional de Ciencias de Estados Unidos.


En su sitio web personal, LeCun comparte sus intereses de investigación, publicaciones, premios y honores. También tiene una página de blog donde escribe sobre temas relacionados con el aprendizaje automático, la inteligencia artificial y otros temas relacionados con la informática.


MNIST dataset: http://yann.lecun.com/exdb/mnist/

No hay comentarios.:

Publicar un comentario

Destacados

10 MEJORES PLANTILLAS DE PROMPT para ChatGPT

 Muy buenas bloggeros En el video de hoy te muestro las 10 mejores plantillas de prompt para ChatGPT en un nuevo tutorial de inteligencia ar...

Entradas populares