Pepe Cantoral, Ph.D.
Pepe Cantoral, Ph.D.
  • 113
  • 384 321
¡TRADUCTOR INGLÉS a ESPAÑOL desde CERO con PyTorch!
Traductor Inglés-Español con un Transformer desde Cero
Video previo implementación de transfomer:
ua-cam.com/video/XefFj4rLHgU/v-deo.html
Videos previos acerca de teoría de Transformers
Parte 1 - ua-cam.com/video/Bh22yyEJFak/v-deo.html
Parte 2 - ua-cam.com/video/Nj5DVykeFhM/v-deo.html
Parte 3 - ua-cam.com/video/AFcqsswq3C8/v-deo.html
En este video, explico cómo implementar un traductor de inglés a español utilizando nuestro modelo de Transformer construido desde cero con PyTorch. A pesar de que el rendimiento del traductor es limitado, este tutorial permite muy buen entendimiento de los pasos fundamentales de la implementación del Transformer, siguiendo el enfoque del artículo "Attention is All You Need". Aprende sobre codificación, decodificación y multi-head attention mientras construimos este traductor paso a paso.
Código del video:
github.com/JACantoral/DL_fundamentals/blob/main/DL_fundamentals_transformer_model.ipynb
Para descargar los datos:
tatoeba.org/en/downloads
Переглядів: 426

Відео

¡Cómo programar un Transformer desde CERO! (From Scratch!)
Переглядів 805Місяць тому
Código del video: github.com/JACantoral/DL_fundamentals/blob/main/DL_fundamentals_transformer_model.ipynb Videos previos acerca de Transformers Parte 1 - ua-cam.com/video/Bh22yyEJFak/v-deo.html Parte 2 - ua-cam.com/video/Nj5DVykeFhM/v-deo.html Parte 3 - ua-cam.com/video/AFcqsswq3C8/v-deo.html Embeddings Desde cero - ua-cam.com/video/8f9H-7i2RAw/v-deo.html Teoria - ua-cam.com/video/LagcbjDkqJE/v...
Transformers - ¡Attention is all you need! Parte 3
Переглядів 394Місяць тому
Video Previo - Explicación detallada de attention: ua-cam.com/video/Nj5DVykeFhM/v-deo.html Primer video de la serie de transformers - Attention is all you need: ua-cam.com/video/Bh22yyEJFak/v-deo.html Code: github.com/JACantoral/DL_fundamentals/blob/main/Simple_Attention_Numpy.ipynb En este video, explico el mecanismo de atención, un componente esencial en el modelo de transformer, utilizando l...
Transformers - ¡Attention is all you need! Parte 2
Переглядів 602Місяць тому
Transformers Parte 1 ua-cam.com/video/Bh22yyEJFak/v-deo.html Embeddings: ua-cam.com/video/LagcbjDkqJE/v-deo.html Embeddings desde cero: ua-cam.com/video/8f9H-7i2RAw/v-deo.html En esta segunda parte de la serie de Transformers, explico con mucho detalle en el mecanismo de self attention, el mecanismo fundamental en Transformers. Además también explico positional encoding.
Transformers - Attention is all you need - Parte 1
Переглядів 1 тис.Місяць тому
Playlist NLP ua-cam.com/play/PLWzLQn_hxe6Ym2y17FreTcn6robjZ9LMk.html Modelo de Lenguage ua-cam.com/video/myKMg2aqOho/v-deo.html Sequence to Sequence ua-cam.com/video/iKgAGnMUsHk/v-deo.html Attention en modelos redes neuronales recurrentes ua-cam.com/video/pyshwfclcPM/v-deo.html En este video, explico el paper "Attention Is All You Need" que introdujo el modelo Transformer, una arquitectura que ...
¿Cómo entrenar embeddings desde cero?
Переглядів 1,2 тис.3 місяці тому
Video previo embeddings: ua-cam.com/video/LagcbjDkqJE/v-deo.html En un video anterior, expliqué qué son los embeddings y su relevancia en el procesamiento de lenguaje natural. En este video, damos un paso más allá: explico cómo programar nuestros propios embeddings desde cero utilizando PyTorch. Comprender a fondo los embeddings no solo es interesante como ejercicio académico, sino también cruc...
¡Python DECORATORS! ¡Cómo funcionan los decoradores de Python!
Переглядів 4434 місяці тому
En este video explico el concepto de los @decoradores@ en Python (Decorators), los cuales permiten escribir código más limpio y modular. Los decoradores son funciones que reciben otra función, le agregan funcionalidad, y devuelven otra función sin modificar la función original. Video previo: ua-cam.com/video/xmMAeOrlZWE/v-deo.html
¡Las funciones de Python son OBJETOS!
Переглядів 3804 місяці тому
En esta guía, presento cinco funcionalidades que demuestran cómo las funciones, al ser tratadas como objetos, pueden transformar tu manera de programar en Python. 1. Pasar Funciones como Argumentos: Descubre la elegancia de la programación funcional pasando funciones a otras funciones. 2. Almacenar Funciones en Estructuras de Datos: Cómo organizar y gestionar tus funciones en estructuras de dat...
ChatGPT y Gemini: ¡Conversación con los modelos más avanzados de IA!
Переглядів 3405 місяців тому
En este video tengo una conversación con ChatGPT (GPT 4) y Gemini Advanced acerca de su rol en el desarrollo de la humanidad: ChatGPT: "Como modelo de inteligencia artificial, no soy parte de la humanidad en el sentido tradicional. No tengo emociones, conciencia o experiencias de vida propias. Mi existencia y mis respuestas se basan en datos, algoritmos y patrones de lenguaje derivados de la in...
¡Atención! (Sequence to sequence with attention): ¡Traductor Inglés a Español! (Parte 2)
Переглядів 3695 місяців тому
Video previo modelos Secuencia a Secuencia: ua-cam.com/video/iKgAGnMUsHk/v-deo.html Este video se centra en uno de los avances más fascinantes en el campo del Procesamiento del Lenguaje Natural (PLN): el modelo Secuencia a Secuencia (Seq2Seq) con mecanismo de Atención, utilizando como ejemplo un traductor de inglés a español. - Introducción al mecanismo de Atención: qué es, cómo funciona, y por...
Sequence to Sequence (Seq2Seq): ¡Traductor Inglés a Español! (Parte 1)
Переглядів 4565 місяців тому
En este video, nos sumergiremos en los fundamentos teóricos detrás del modelo Sequence to Sequence (Secuencia a Secuencia), una arquitectura revolucionaria en el campo del Procesamiento del Lenguaje Natural (PLN). En este video cubriremos: - Los principios básicos de los modelos Seq2Seq y cómo funcionan. - La estructura y componentes de los modelos Seq2Seq, incluyendo los codificadores y decodi...
Modelo de Lenguage: Generador de texto con Red Neuronal Recurrente.
Переглядів 6196 місяців тому
En este video explico de forma breve qué es un modelo de Lenguage y como podemos crear uno usando una Red Neuronal Recurrente. Un modelo de lenguage es un modelo que obtiene la distribución de probabilidad del sigueinte toke (p.e. una palabra) dada una secuencia de tokens previos. El modelo de lenguage más famoso es probablemente ChatGPT.
!Tres personas que conocí en persona en 2023!
Переглядів 2556 місяців тому
En este video comparto la experiencia de conocer en persona a tres individuos a los cuales admiro mucho. - Andrew Ng Deep Learning Coursera (www.coursera.org/specializations/deep-learning) Machine Learning 2008 (ua-cam.com/video/UzxYlbK2c7E/v-deo.htmlfeature=shared) - Jeremy Howard UA-cam channel (www.youtube.com/@howardjeremyp) FastAI (www.fast.ai/) - Sean Walker UA-cam Channel (www.youtube.co...
¡LSTM: Todo lo que necesitas saber!
Переглядів 3,1 тис.9 місяців тому
En este video nos adentraremos en las redes neuronales Long Short-Term Memory (LSTM). Si te has preguntado alguna vez cómo las LSTMs superan los desafíos de las RNNs tradicionales, estás en el lugar correcto. contenido: Introducción a las LSTMs y su importancia en el manejo de datos secuenciales. Explicación detallada de la arquitectura LSTM, acompañada de diagramas y ecuaciones. Demostración p...
¿Qué son Word EMBEDDINGS? ¡Explorando Embeddings con GloVe y Python!
Переглядів 2,9 тис.9 місяців тому
Bienvenidos a este nuevo video en el que vamos a explorar el emocionante mundo de los "Word Embeddings" o incrustaciones de palabras. Pero no nos detendremos en la teoría; ¡Vamos a llevarlo a la práctica utilizando GloVe! Puntos Clave: Introducción a los "Word Embeddings" y su importancia en el Procesamiento del Lenguaje Natural (PLN) O Natural Language Processing. Implementación de funciones P...
Modelos secuenciales y REDES NEURONALES RECURRENTES
Переглядів 2,5 тис.9 місяців тому
Modelos secuenciales y REDES NEURONALES RECURRENTES
BATCH NORMALIZATION en Redes Convolucionales: Python y PyTorch
Переглядів 4879 місяців тому
BATCH NORMALIZATION en Redes Convolucionales: Python y PyTorch
¡BATCH NORMALIZATION! - Python vs. PyTorch
Переглядів 43210 місяців тому
¡BATCH NORMALIZATION! - Python vs. PyTorch
BATCH NORMALIZATION: ¿Qué es y para qué sirve?
Переглядів 1,6 тис.10 місяців тому
BATCH NORMALIZATION: ¿Qué es y para qué sirve?
ImageNet: El Proyecto que Cambió la Inteligencia Artificial | Pláticas Plug & Play # 5
Переглядів 59610 місяців тому
ImageNet: El Proyecto que Cambió la Inteligencia Artificial | Pláticas Plug & Play # 5
¡La forma más FÁCIL de instalar drivers de NVIDIA, TensorFlow y PyTorch en Ubuntu 22.04 LTS!
Переглядів 4,8 тис.10 місяців тому
¡La forma más FÁCIL de instalar drivers de NVIDIA, TensorFlow y PyTorch en Ubuntu 22.04 LTS!
¿Cómo instalar Ubuntu 22.04?
Переглядів 95710 місяців тому
¿Cómo instalar Ubuntu 22.04?
Dr. Carlos Alberto Escobar Díaz: Going the Distance! | Pláticas Plug & Play # 4
Переглядів 42011 місяців тому
Dr. Carlos Alberto Escobar Díaz: Going the Distance! | Pláticas Plug & Play # 4
5 cosas que tienes que saber de los diccionarios de Python | Python is Cool!
Переглядів 26511 місяців тому
5 cosas que tienes que saber de los diccionarios de Python | Python is Cool!
Ing. Sandra Román: Pasantías/Ing. de Software/Consejos para Entrevistas | Pláticas Plug & Play # 3
Переглядів 51711 місяців тому
Ing. Sandra Román: Pasantías/Ing. de Software/Consejos para Entrevistas | Pláticas Plug & Play # 3
5 cosas que tienes que saber de las listas de Python | Python is Coll!
Переглядів 36711 місяців тому
5 cosas que tienes que saber de las listas de Python | Python is Coll!
MSc. Rafael Espinosa: Las matemáticas en la era de IA | Pláticas Plug & Play # 2
Переглядів 63311 місяців тому
MSc. Rafael Espinosa: Las matemáticas en la era de IA | Pláticas Plug & Play # 2
Dr. Rick Swenson: El rol de IA en la Ingeniería y Educación | Pláticas Plug & Play #1
Переглядів 69611 місяців тому
Dr. Rick Swenson: El rol de IA en la Ingeniería y Educación | Pláticas Plug & Play #1
I'm back!
Переглядів 44711 місяців тому
I'm back!
Breadth First Search en Python
Переглядів 1,1 тис.Рік тому
Breadth First Search en Python

КОМЕНТАРІ

  • @carlossanchezdelarroyo9577
    @carlossanchezdelarroyo9577 7 годин тому

    Una consulta en Windows se puede tambien instalar Tensoflow y Pytorch con soporte CUDA ?

  • @PaoloReyes
    @PaoloReyes 7 годин тому

    Increible, me encontré embeddings aplicados en otras áreas como las ímagenes, lo que le llaman "Pixel Embeddings" y mi cerebro simplemente no puede entender ni siquera que deberían representar. Estaría genial que hablaras de esto en próximos videos :)

  • @robertbarrios9969
    @robertbarrios9969 10 годин тому

    No logro seguir desde el minuto 15 porque los shapes no dan, ese 32*32*3 no resulta, hay que poner 150528.

  • @DragonBZeta
    @DragonBZeta 2 дні тому

    Buen día profesor, casi al final del video en donde tiene que modificar la matriz de pos_embed_matrix aplica un unsqueeze en dimensión 0 y después aplica un transpose entre la dimensión 0 y 1, creo que este transpose no es necesario ya que siguiendo todo su video con el haber agregado la dimensión 0 me daba shape de (1, seq_len, d_model) esto empata con la dimensión que trae el modelo de batch_size, seq_len, d_model

  • @gpintoruiz
    @gpintoruiz 3 дні тому

    Hola, gracias por el video 🙏. Tengo una duda: en el PositionalEmbedding, parece que en el div_term solo se está considerando la mitad de los elementos i de cada embedding, en lugar de separar correctamente los índices pares e impares como debería ser. Por ejemplo, si tomamos d_model = 4, los valores de i para el seno deberían ser (0, 2) y para el coseno (1, 3). Sin embargo, actualmente, al hacer un arange de 0 a d_model = 4 con un paso de 2, los valores de 2i resultantes son (0, 2), y se utilizan tanto para el seno como para el coseno.

  • @JohnFreyre888
    @JohnFreyre888 4 дні тому

    Saludos Pepe. Muy claros y didacticos tus videos, sigo aprendiendo mas sobre este fascinante tema, ya que será mi tesis de trabajo de Maestria.

  • @izancluac8917
    @izancluac8917 8 днів тому

    Muy buen video! hay te llevas mi like y sub

    • @PepeCantoralPhD
      @PepeCantoralPhD 8 днів тому

      Muchas gracias por tu apoyo al canal! Saludos

  • @wilfredomartel7781
    @wilfredomartel7781 10 днів тому

    😊 ¿ porqué skipgram y no c-bow? Solo es una inquietud @Pepe

  • @wilfredomartel7781
    @wilfredomartel7781 10 днів тому

    😊

  • @wilfredomartel7781
    @wilfredomartel7781 11 днів тому

    Excelente video! Pero es necesario combinarlo con código y la parte matemática a lado para saber como se van enlazando.

    • @PepeCantoralPhD
      @PepeCantoralPhD 10 днів тому

      Muchas gracias por tu comentario! Tengo 3 partes teóricas en la serie, este video es solo una introducción, la segunda parte se centra en explicar las ecuaciones, y la tercera cómo podrían programarse esas ecuaciones. Ademas, algo también interesante viene en otros 2 videos donde muestro con mucho detalle cómo programar el Transformer usando PyTorch y cómo implementar un traductor. Te dejo la liga al video de cómo programarlo desde zero. Muchas gracias y muchos saludos! ¡Cómo programar un Transformer desde CERO! (From Scratch!) ua-cam.com/video/XefFj4rLHgU/v-deo.html

    • @wilfredomartel7781
      @wilfredomartel7781 10 днів тому

      @@PepeCantoralPhD pase una noche maratónica viendo tus videos.

  • @miguelgutierrez2902
    @miguelgutierrez2902 12 днів тому

    De todos los videos que he estado mirando en estos días sobre el modelo Transformer, el mejor con diferencia. Muchas gracias por compartir tus conocimientos. Simplemente excelente.

  • @JoelPasapera
    @JoelPasapera 14 днів тому

    Hola, ¿te imaginas hacer un poyecto de ia que integre vision computaciona, procesamiento de lenguaje natural, reconocimiento y emision de voz y ciencia de datos? seria como crear un robot autónomo PERO especializado en un area en concreto, como un profesional. Se podrian crear asistentes médicos, asistentes financieros, asistentes legales, asistentes educativos, asistentes en ingenieria.

  • @JuanJoseRodriguezRodrigu-yp9wh
    @JuanJoseRodriguezRodrigu-yp9wh 14 днів тому

    Saludos, podrías repetir los experimentos y validar el consumo de memoria de video. Los cálculos que realizó para validar el uso de un mini bloque de 32 imágenes a 1024 x 1024, supera la capacidad de la rtx 6000 ADA que en teoría estarías usando.

    • @JuanJoseRodriguezRodrigu-yp9wh
      @JuanJoseRodriguezRodrigu-yp9wh 14 днів тому

      Actualización, el problema de memoria se debía en mi caso al uso de las dimensiones del modelo original propuesto en el artículo.

  • @pelired0
    @pelired0 17 днів тому

    Me ha encantado tu vídeo, ha sido revelador. Con éste y el anterior por fin los he entendido como quería. Tienes el código subido en algún sitio? Quiero hacer mi propio cálculo de embedings y me gustaría aprovechar para el codigo. Un saludo, gracias por el canal y tu tiempo.

  • @ronaldborja_
    @ronaldborja_ 18 днів тому

    Gran video!! Muy bien explicado y el codigo bastante intuitivo. Muchas gracias.

  • @julio2918
    @julio2918 21 день тому

    Excelente canal.

  • @juanagabrielalopez4895
    @juanagabrielalopez4895 22 дні тому

    Excelente vídeo, la explicación está muy completa, gracias!

  • @juantapia8056
    @juantapia8056 24 дні тому

    chester benington enseñando programacion

  • @goacq7022
    @goacq7022 27 днів тому

    Es usted todo un maestro!!!. Gracias por compartir sus conocimientos.

  • @JoelPasapera
    @JoelPasapera 28 днів тому

    Muy interesanteee, podrias hacer un modelo para reconocer patrones repetitivos de una tabla ? Estoy haciendo un proyecto para encontrar patrones repetitivos del oro, con columnas: fecha,hora,precio de apertura,precio maximo, precio minimo, precio de cierre,volatilidad en pips . Lo que quiero es encontrar patrones repetitivos y hacerlo con pytorch, podrias hacer un video con al menos una idea general o similar para guiarme ?

  • @juanlangley8271
    @juanlangley8271 Місяць тому

    Muy buena e interesante tu serie de videos!! Estoy explorando el análisis de series de tiempo con transformers, es un mundo apasionante, estaría bueno ver tu punto de vista del tema, time2vec, autoformers, informers, iformers, timesnet, etc..

  • @dafmdev
    @dafmdev Місяць тому

    Una duda porque no se usa torch.sqrt o torch.log en vez de math.sqrt y math.log?

  • @migue9450
    @migue9450 Місяць тому

    Eso fue fascinante!

    • @PepeCantoralPhD
      @PepeCantoralPhD 16 днів тому

      Muchas gracias por tu comentario y apoyo al canal!

  • @gustavoderganelias3529
    @gustavoderganelias3529 Місяць тому

    Excelente eres un crack!

  • @reynaldopereira7613
    @reynaldopereira7613 Місяць тому

    genial

  • @reinerromero7265
    @reinerromero7265 Місяць тому

    😃😃 muchas gracias

  • @gustavojuantorena
    @gustavojuantorena Місяць тому

    Excelente serie de videos!! Gracias

    • @PepeCantoralPhD
      @PepeCantoralPhD 16 днів тому

      Muchas gracias a ti por el apoyo al canal. Saludos

  • @karne_tv
    @karne_tv Місяць тому

    Una rtx a6000 y no pudiste meterla en un gabinete decente ?

  • @PaoloReyes
    @PaoloReyes Місяць тому

    39:18 Y aqui hace sentido el optimizer.zero_grad()

  • @LuisMorales-bc7ro
    @LuisMorales-bc7ro Місяць тому

    Muy buen contenido Pepe! Como comentario: estaria cool que agregaras una liga a un notebook en collab para poder partir del codigo que tienes Saludos!

  • @joseleonardosanchezvasquez1514
    @joseleonardosanchezvasquez1514 Місяць тому

    Gracias, todo super

  • @dafmdev
    @dafmdev Місяць тому

    Donde me uno para apoyar con dinero a este buen hombre. Algún Patreon? Por favor no dejes de hacer videos

  • @mauriciolugo6239
    @mauriciolugo6239 Місяць тому

    genialllll ... muy buen video

  • @jhonkevinfloresrojas3848
    @jhonkevinfloresrojas3848 Місяць тому

    Es hermoso, al fin yt me recomendó algo relevante.

  • @fuisljhfkjhwqlhje2
    @fuisljhfkjhwqlhje2 Місяць тому

    Gracias. Gran explicación

  • @1LeoVaz
    @1LeoVaz Місяць тому

    pedazo de contenido para ES 💥👏

  • @reinerromero7265
    @reinerromero7265 Місяць тому

    😄 Nos ha desafiado a todos !! ... Excelente trabajo, felicitaciones y muchísismas gracias.

  • @erickson135
    @erickson135 Місяць тому

    woooh! que perla de información, muchas gracias

  • @gama3181
    @gama3181 Місяць тому

    y como obtenemos los embeddings de x capa del modelo ?

  • @IATotal
    @IATotal Місяць тому

    Gracias! excelentes videos!

  • @carlosdanielojeda3016
    @carlosdanielojeda3016 Місяць тому

    Mi ídolo Andrew y tu bro

  • @carlosdanielojeda3016
    @carlosdanielojeda3016 Місяць тому

    Está pequeña parte de mi vida se llama felicidad

  • @carlosdanielojeda3016
    @carlosdanielojeda3016 Місяць тому

    Si quisiera ayuda o algunas clases para un problema específico como podría contactarte,bro , tus clases son muy excelentes

  • @reynaldopereira7613
    @reynaldopereira7613 Місяць тому

    es el dia 😍😍

  • @GozLoz-j8i
    @GozLoz-j8i Місяць тому

    Llego el dia

  • @fabio336ful
    @fabio336ful Місяць тому

    El video más esperadooooooooo 🎉

  • @SebastianMingo
    @SebastianMingo Місяць тому

    Excelente explicación, muchas gracias, me están ayudando mucho tus videos, saludos!

  • @ElCluadio
    @ElCluadio Місяць тому

    Esperando el próximo video 🎉

  • @LuisMorales-bc7ro
    @LuisMorales-bc7ro Місяць тому

    Gracias por compartir!!

  • @angeltena8294
    @angeltena8294 Місяць тому

    Me ha encantado el análisis tan detallado del paper, gran trabajo, enhorabuena.