Red Neuronal Desde Cero. ¡Sólo Python! - PARTE 2

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 เม.ย. 2021
  • Código:
    github.com/JACantoral/DL_fund...
    ¡Llegó el momento de programar nuestra primera Red Neuronal! Utilizando sólo Python, sin frameworks de Deep Learning. Para esto, en la primera parte de este video se explicó como implementar las funciones necesarias para realizar el forward y backward pass de nuestro modelo. En este video, utilizamos estas funciones para programar la función que va a realizar el loop de entramiento de nuestra Red Neuronal. Así, vamos a validar que nuestra red neuronal aprende a clasificar números contenidos en el dataset MNIST.
    Acerca de la serie Fundamentos de Deep Learning con Python y PyTorch:
    En esta serie de videos explico qué son las Redes Neuronales (Neural Networks) y qué es Aprendizaje Computacional (Machine Learning) así como Deep Learning. Empezamos con los principios matemáticos fundamentales hasta su implementación en código. Para esto, primero utilizaremos Python y Numpy para entender los principios de programación de Redes Neuronales incluyendo el algoritmo de retropropagación (backpropagation). Con estas bases, presentaremos el framework PyTorch y construiremos modelos más complejos como son Redes Neuronales Convolucionales (Convolutional Neural Networks - CNNs).
    About the video series:
    In this video series I will explain what Neural Networks are, and how Deep Neural Networks work, from the mathematical principles to their implementation in code. Firstly, we will use pure Python and Numpy to understand the fundamentals including backpropagation for a simple Fully Connected Network, and from there we will build on to Convolutional Neural Networks (CNN) using PyTorch. I will be uploading at least one new video every week until we reach different architectures of CNNs. Then, depending on the response and interest in the series I may cover newer models using Generative Adversarial Networks (GANs), and Recurrent Neural Networks.

ความคิดเห็น • 19

  • @Sebastian-tk4kw
    @Sebastian-tk4kw 8 หลายเดือนก่อน +1

    Muchas gracias profe, excelente!

  • @lumafe1975
    @lumafe1975 ปีที่แล้ว

    Excelente para fijar los conceptos !

  • @ricardoguzman4228
    @ricardoguzman4228 ปีที่แล้ว +2

    Excelentes videos, uno aprende mucho con sus explicaciones super detalladas y fáciles de entender en su mayoría (de manera personal, hacen falta algunos conocimientos previos) jeje.

    • @PepeCantoralPhD
      @PepeCantoralPhD  ปีที่แล้ว

      Muchas gracias por tu comentario y apoyo al canal, muchos saludos!

  • @dj3zuz
    @dj3zuz 2 ปีที่แล้ว +2

    Muchas Gracias por tu aportación Ph. D .

    • @PepeCantoralPhD
      @PepeCantoralPhD  2 ปีที่แล้ว +1

      Un placer Moises, muchas gracias por tu comentario. Saludos y hasta pronto!

  • @albertvolcom730
    @albertvolcom730 ปีที่แล้ว +2

    Tremendo, gracias!

    • @PepeCantoralPhD
      @PepeCantoralPhD  ปีที่แล้ว

      Muchas gracias por tu comentario y apoyo al canal! Saludos

  • @alejomedina6588
    @alejomedina6588 ปีที่แล้ว

    Groso profe, groso😊😊

  • @jasieiky2023
    @jasieiky2023 ปีที่แล้ว

    Amigo tengo un problema tengo proxy y no me deja intalar las librerias: import numpy as np
    import matplotlib.pyplot as plt
    %matplotlib inline
    # Solamente para usuarios de Jupyter Themes
    from jupyterthemes import jtplot
    jtplot.style(grid=False)

  • @JuanSanchez-ri8xk
    @JuanSanchez-ri8xk 8 หลายเดือนก่อน +1

    muy buen material... tengo un problema con el codigo "'numpy.ndarray' object is not callable" sobre la linea "scores2, z1, a1 = scores(x.T, parameters=parameters, activation_fcn=relu)", espero me puedas ayudar

    • @anthonymlop
      @anthonymlop 4 หลายเดือนก่อน

      ya lo solucionaron antes, es debido a que al ejecutar scores,z1, a1 = scores(x_train[:64].T, parameters) se esta sobreescribiendo la funcion. Solo cambia a scores0,z1, a1 = scores(x_train[:64].T, parameters)

  • @brayanaquino4727
    @brayanaquino4727 ปีที่แล้ว +5

    Tengo una duda
    TypeError Traceback (most recent call last)
    in
    2 learning_rate = 1e-2
    3 epochs = 20
    ----> 4 parameters = train(epochs=epochs, parameters=parameters, mb_size=mb_size, learning_rate=learning_rate)
    in train(epochs, parameters, mb_size, learning_rate)
    2 for epoch in range(epochs):
    3 for i, (x, y) in enumerate(create_minibatches(mb_size, x_train, y_train)):
    ----> 4 scores2, z1, a1 = scores(x.T, parameters=parameters, activation_fcn=relu)
    5 y_hat, cost = x_entropy(scores2, y, batch_size=len(x))
    6 grads = backward(y_hat, x, y, z1, a1, scores2, parameters, batch_size=len(x))
    TypeError: 'numpy.ndarray' object is not callable
    quisiera saber por que me ocurrio esto

    • @LuisRosas.29
      @LuisRosas.29 ปีที่แล้ว +1

      Tengo el mismo error que tu :(.
      Lo lograste solucionar?

    • @LuisRosas.29
      @LuisRosas.29 ปีที่แล้ว +5

      Hola amigo, encontre el error. El error radica en esta linea de texto:
      "scores,z1, a1 = scores(x_train[:64].T, parameters, relu)"
      Esto se debe, a que le estamos nombrando una variable con el mismo nombre que la función. Te recomiendo cambiar el nombre de la variable a scores1, y cambiarlo en todas las partes del codigo donde se ocupa esa variable.
      Saludos :)

    • @PepeCantoralPhD
      @PepeCantoralPhD  ปีที่แล้ว +1

      Muchas gracias Luis!

    • @PepeCantoralPhD
      @PepeCantoralPhD  ปีที่แล้ว

      Luis, te agradezco enormemente tu ayuda y contribución! Te mando muchos saludos!

    • @ricardoguzman4228
      @ricardoguzman4228 ปีที่แล้ว

      @@LuisRosas.29 Es correcto, cambiando esa variable en se soluciona el problema, gracias.

  • @brayanaquino4727
    @brayanaquino4727 ปีที่แล้ว

    yo pensaba que epochs eran las epocas o algo asi XD.