Cómo utilizar TensorFlow 2.0 con Python

1

Redes neuronales con TensorFlow

2

Introducción a TensorFlow 2.0

Manejo y preprocesamiento de datos para redes neuronales

3

Uso de data pipelines

4

Cómo cargar bases de datos JSON

5

Cargar bases de datos CSV y BASE 64

6

Preprocesamiento y limpieza de datos

7

Keras datasets

8

Datasets generators

9

Aprende a buscar bases de datos para deep learning

10

Cómo distribuir los datos

11

Crear la red neural, definir capas, compilar, entrenar, evaluar y predicciones

Optimización de precisión de modelos

12

Métodos de regularización: overfitting y underfitting

13

Recomendaciones pr√°cticas para ajustar un modelo

14

Métricas para medir la eficiencia de un modelo: callback

15

Monitoreo del entrenamiento en tiempo real: early stopping y patience

16

KerasTuner: construyendo el modelo

17

KerasTuner: buscando la mejor configuración para tu modelo

Almacenamiento y carga de modelos

18

Almacenamiento y carga de modelos: pesos y arquitectura

19

Criterios para almacenar los modelos

Fundamentos de aprendizaje por transferencia

20

Introducción al aprendizaje por transferencia

21

Cu√°ndo utilizar aprendizaje por transferencia

22

Carga de sistemas pre-entrenados en Keras

23

API funcional de Keras

24

Uso sistemas pre-entrenados de TensorFlow Hub

Resultados de entrenamiento

25

Introducción a variables relevantes del TensorBoard

26

Análisis y publicación de resultados del entrenamiento

27

Introducción al despliegue de modelos en producción

28

Siguientes pasos con deep learning

Redes neuronales con TensorFlow

1/28
Recursos

¬°Bienvenido al curso profesional de redes neuronales con Tensorflow! En las siguientes sesiones aprender√°s a manejar el framework Tensorflow junto a su backend Keras, crear√°s proyectos profesionales y entender√°s como gestionar proyectos de Machine Learning.

Para este curso es fundamental que conozcas sobre el funcionamiento de las redes neuronales artificiales, también la manipulación y gestión de Notebooks como Jupyter y Google Colab, además, es un gran plus si ya conoces cómo crear tus propios proyectos de ciencia de datos. Todo lo anterior lo puedes encontrar en la escuela de ciencia de datos de Platzi.

Requisitos del curso

Si quieres empezar un proyecto de redes neuronales y no sabes cómo empezar, este curso es para ti. Si laboralmente te han asignado un proyecto de Machine Learning y debes liderarlo, este curso es para ti. Si simplemente tienes hambre de conocimiento y quieres adentrarte en este mundo, este curso es para ti.

El ciclo de vida de desarrollo de proyectos de IA consta en 6 etapas:

  • Delimitaci√≥n del problema, donde se determinar√°n las necesidades a resolver.
  • Obtenci√≥n de datos como materia prima.
  • Pre-procesamiento de datos, donde ser√°n limpiados y optimizados.
  • Entrenamiento, donde usaremos recursos de c√≥mputo para entrenar modelos.
  • Optimizaci√≥n, donde iteraremos hasta encontrar una soluci√≥n con mejor rendimiento.
  • Escalamiento, donde llevaremos esta soluci√≥n al usuario final.

A través de estas sesiones trabajaremos con redes neuronales directamente a la práctica, aprenderás a cargar datos sean propios o de diferentes fuentes y formatos, optimizarás tus modelos para obtener mejor precisión, aprenderás sobre el overfitting y underfitting y cómo evitarlo, usarás técnicas avanzadas como el transfer learning o transferencia de aprendizaje que permiten aprovechar el esfuerzo de otros developers bajo arquitecturas ya construidas, y finalmente, trabajaremos sobre el almacenamiento y carga de modelos de manera profesional.

Proyecto del curso

El proyecto principal del curso ser√° el entrenamiento de un modelo que detectar√° lenguaje de se√Īas, constar√° de 27.455 im√°genes JPEG de tama√Īo 28x28 pixeles en escala de grises, se han omitido las letras J y Z dado que requieren de movimiento para ser detectadas. El dataset fue creado por TecPerson en Kaggle y es de dominio p√ļblico.

Descripción general del proyecto del curso

Como valor agregado, tendremos a disposición 3 datasets extras que podrás usar para practicar paralelamente los procesos aprendidos, donde puedes elegir entre un clasificador de Tom y Jerry, un detector de tumores o un clasificador de malaria.

Si posees alg√ļn dataset propio que quieras trabajar, ser√≠a maravilloso que lo integraras y que aplicaras las diferentes t√©cnicas aprendidas a trav√©s de estas sesiones.

Si quieres descargar alguno de estos datasets puedes usar los siguientes comandos en terminales Linux o entrar directamente a los links que los contienen.

```{code-block} bash

Bases de datos Malaria

!wget --no-check-certificate \ https://storage.googleapis.com/platzi-tf2/MalariaCells.zip \ -O /tmp/sign-language-img.zip

Bases de datos Tumor

!wget --no-check-certificate \ https://storage.googleapis.com/platzi-tf2/TumorClassification.zip \ -O /tmp/sign-language-img.zip

Bases de datos Tom y Jerry

!wget --no-check-certificate \ https://storage.googleapis.com/platzi-tf2/TomAndJerry.zip \ -O /tmp/sign-language-img.zip ```

¬ŅQu√© aprender√°s en este curso?

A través de las clases aprenderás a cargar tus propias bases de datos, además de usar formatos como JSON, BASE64, o imágenes, además, aplicarás técnicas de optimización.

Posteriormente, aprender√°s a agregar m√©tricas de entrenamiento, es decir, c√≥mo medir el desempe√Īo de tu modelo, cargar√°s y guardar√°s tus propios modelos y usar√°s el autotunner de Keras que automatizar√° el proceso de actualizar los valores de los hiper par√°metros de tu modelo.

En una sección más avanzada haremos uso por transfer learning, también mostrarás al mundo tus modelos con TensorBoard y los escalarás a producción.

Contribución creada por: Sebastián Franco Gómez.

Aportes 18

Preguntas 4

Ordenar por:

¬ŅQuieres ver m√°s aportes, preguntas y respuestas de la comunidad?

#!/bin/bash



wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/sign-language-img.zip -O sign-language-img.zip

wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/TomAndJerry.zip -O TomAndJerry.zip

wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/TumorClassification.zip -O TumorClassification.zip

wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/MalariaCells.zip -O MalariaCells.zip

Para instalar TensorFlow en tu local

pip install tensorflow

Google Colab ¬ŅQu√© es? Es un entorno de desarrollo online de Python creado por Google donde puedes usar una CPU/GPU de un servidor en la nube GRATIS

Para descargar los repositorios de los 4 Proyectos que puedes escoger en este curso:

# Reconocimiento del Abecedario en Lenguaje de se√Īas
wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/sign-language-img.zip -O sign-language-img.zip

# Reconocimiento de Tom y Jerry
wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/TomAndJerry.zip -O TomAndJerry.zip

# Diagnóstico de Tumores
wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/TumorClassification.zip -O TumorClassification.zip

# Diagnóstico de Malaria
wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/MalariaCells.zip -O MalariaCells.zip

Emocionado por este tipo de proyectos porque amo cuando la tecnología ayuda a las personas

Ciclo de la IA

  1. PROBLEMA
  2. DATOS
  3. PRE-PROCESAR
  4. ENTRENAR
  5. OPTIMIZAR
  6. ESCALAR

Muy buen fichaje de platzi! Este curso promete mucho, tomaré este curso con mucho entusiasmo! Saludos Adonai

Kola comunidad quiero compartir esta competici√≥n de kaggle de Reconocimiento de lenguaje de se√Īas aislado. En donde puedes poner en practica lo aprendido en este curso.

Su trabajo puede mejorar la capacidad de PopSign* para ayudar a los familiares de ni√Īos sordos a aprender se√Īas b√°sicas y comunicarse mejor con sus seres queridos.^

Dejo el link

https://www.kaggle.com/competitions/asl-signs

El curso promete ūüí™ūüŹĹūüí™ūüŹĹūüėÄ

Redes neuronales con TensorFlow

TensorFlow es una de las plataformas de aprendizaje autom√°tico m√°s populares. Te permite crear e implementar redes neuronales para una amplia gama de aplicaciones, como:


  • Reconocimiento de im√°genes: Clasificar im√°genes, detectar objetos, etc.
    Procesamiento del lenguaje natural: Traducir idiomas, generar texto, etc.
    An√°lisis de series temporales: Predecir el comportamiento futuro de una serie de datos.
    Recomendación: Recomendar productos o servicios a los usuarios.
    Redes neuronales son un tipo de algoritmo de aprendizaje automático que se inspira en el funcionamiento del cerebro humano. Las redes neuronales están formadas por unidades interconectadas llamadas neuronas. Estas neuronas pueden procesar información y aprender de los datos.
Buenas, tengo un proyecto de la uni donde me mandaron a sacar un calculo que tiene 3 parametros para obtener un resultado, el tema es que me dieron 6 tablas donde sus valores de cada tabla dan el mismo resultado, no estoy seguro de como entrenarlo porque cuando le paso la tabla en la que no me dan el resultado, que es donde mi red neuronal va a trabajar, entonces ahi todos me dan el mismo resultado, ya no se que hacer
ūüėĀūüėĀ

Hace un tiempo escrib√≠ una gu√≠a del curso y fue publicada por la plataforma, la pueden encontrar debajo de cada clase en formato de articlase, sin embargo, tambi√©n tengo el contenido original en un Notion por si gustan de guiarse, repasar y copiar alg√ļn script.

por si les sirve les dejo aca un tutorial de como instalar tf 2.12(la vercion mas nueva!!!) con gpu en ubuntu

https://medium.com/@chavezgm2012/instalación-de-tensorflow-2-12-con-soporte-para-gpu-en-ubuntu-22-04-f0d471ef7a93

El overfitting o sobreajuste es un error de modelado en estad√≠stica que ocurre cuando una funci√≥n est√° demasiado alineada con un conjunto limitado de puntos de datos. El resultado es un modelo que es √ļtil solo cuando se refiere a su conjunto de datos inicial y no a cualquier otro conjunto de datos

Hola, en mi opinión, creo que es mejor instalar Tensorflow en un ambiente Conda exclusivamente dedicado para su uso.

conda create -n tf-gpu tensorflow-gpu #Si usas una GPU
conda create -n tf-gpu tensorflow #Si no usas GPU

Después solo activas el ambiente e instalas las librerías que necesites:

conda activate tf-gpu
conda install -c conda-forge matplotlib
conda install numpy
#etc

¬°Saludos!

Redes neuronales con TensorFlow

Por qué debes tomar el curso

  • Quieres aprender c√≥mo aplicar inteligencia artificial a im√°genes.

  • Tienes las bases pero quieres volverte un pro configurando redes neuronales.

  • Quieres crear tu propio tu propio modelo.

El uso de una IA parte desde un problema no se puede crear un modelo tan complejo como redes neuronales solo porque si, terminaríamos sin resolver nada.

Que Haremos?

  • llevar redes neuronales a la practica

  • Cargar bases de datos

  • Optimizar modelos

  • Como evitar el overfitting y el underfitting?

  • Transferencia de aprendizaje usando modelos pre-entrenados

  • Almacenar y cargar modelos

Proyecto del curso

vamos a crear un modelo capaz de generar y detectar letras de lenguaje de se√Īas.

vamos a omitir la J y la Z porque se generan con un movimiento.

usando una base de datos de kaggle.

Proyectos opcionales

Deteccion de tumores, deteccion de Tom y Jerry, deteccion de Malaria

Lenguaje de Se√Īas:
https://storage.googleapis.com/platzi-tf2/sign-language-img.zip

Tom & Jerry:
https://storage.googleapis.com/platzi-tf2/TomAndJerry.zip

Tumor:
https://storage.googleapis.com/platzi-tf2/TumorClassification.zip

Malaria:
https://storage.googleapis.com/platzi-tf2/MalariaCells.zip

Notebook Malaria:
https://colab.research.google.com/drive/10TQClWantn0elEU_SHc8IuTyheRIgGVD?usp=sharing

Notebook TomAndJerry:
https://colab.research.google.com/drive/1ogv1lNKvltcbVe9XyPK_cb9VO4fp0E8Y?usp=sharing

Notebook Tumor:
https://colab.research.google.com/drive/1Ksv1KdAkx4DK4Ao090vF3ihw-q5Klg7z?usp=sharing

Descargar las bases de los ejercicios:

# Lenguaje de Se√Īas
wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/sign-language-img.zip -O sign-language-img.zip

# Tom & Jerry
wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/TomAndJerry.zip -O TomAndJerry.zip

# Tumores
wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/TumorClassification.zip -O TumorClassification.zip

# Celulas de Malaria
wget --no-check-certificate https://storage.googleapis.com/platzi-tf2/MalariaCells.zip -O MalariaCells.zip

Qué aprenderás?

  • C√≥mo cargar tus propias bases de datos.

  • Cargar bases de datos en formatos como CSV, JSON, BASE64, im√°genes.

  • Aplicar t√©cnicas para optimizar tus modelos.

  • agregar m√©tricas en el entrenamiento de tus modelos.

  • a cargar y guardar modelos

  • Autotunner de Keras para encontrar mejores variables

  • Bases de aprendizaje por transferencia

  • Uso de TensorBoard y como mostrar tu proyecto al mundo entero

  • A tener tu modelo listo para utilizarlo como inferencia.

Se ve muy interesante el curso, me encanta la idea de aprender Machine Learning, ¬°tengo grandes expectativas!

amigos!!! les queria mostrar uno de mis cursos sobre deep learning y tensorflow, aqui explico la api funcional con multi inputs y algo de embedings! https://medium.com/@chavezgm2012/api-funcional-de-keras-cba6532fb109

espero les guste!

Se ve interesante el curso. Vamos all√°!

Hola a todos, este curso es prometedor y me animo a iniciar, estoy interesado en conocer sobre tensorBoard y realizar el proyecto que se hace en el curso. Las bases de datos de propuestas están rotas, para solucionar podrían usar la base de datos que está en Kaggle.

Este enlace para cargar los datos en Google Colab