Les recomiendo este video
Video
Introducción
Aprendamos sobre cálculo
¿Qué es el cálculo?
Funciones y límites
¿Qué es una función?
Configuración del entorno de trabajo con Google Colab
Dominio y rango de una función
Cómo programar funciones algebraicas
Cómo programar funciones trascendentes
¿Cómo manipular funciones?
Funciones dentro de otras funciones
Características de las funciones
¿Cómo se compone una neurona?
Funciones de activación en una neurona
Función de coste: calcula qué tan erradas son tus predicciones
¿Qué es un límite?
Cálculo diferencial
¿De dónde surge la derivada?
Notación de la derivada
Empecemos a derivar
¿Por qué es importante la derivada?
Máximos y mínimos: subidas y bajadas en una montaña rusa
¿Cómo optimizar una función?
Cálculo multivariable
Más dimensiones para tus funciones
Diseñando mapas: curvas de nivel
Derivadas parciales
Ejemplos de derivadas parciales
Regla de la cadena y su utilidad en cálculo multivariable
Subamos con el gradiente
Proyecto: descenso del gradiente
¿Qué es el descenso del gradiente?
Graficando nuestra función de coste
Aplicando el descenso
¿Cómo continúa tu ruta de aprendizaje?
¡Nunca pares de aprender matemáticas!
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Aportes 19
Preguntas 2
Les recomiendo este video
Video
Les comparto mis apuntes de esta clase y una pequeña “Infografia” que hice donde trate de explicarme este concepto a mi mismo para entenderlo mejor. Espero que les sea de utilidad:
⬇
El descenso del gradiente permite optimizar una función, es decir, encontrar el mínimo de una función de coste. El descenso del gradiente se puede aplicar en diferentes mediciones, no obstante en este ejemplo para fines prácticos sólo se usarán 2.
Pueden ver la imagen más grande aquí 😃
Podemos imaginarlo asi.
Imaginemos que estamos en una montaña y queremos encontrar el punto mas bajo de la montaña.
Pero nosotros tenemos los ojos cerrados, entonces la manera de medir si estamos bajando es si nuestros pies se inclinan hacia abajo hasta que nuestros pies se inclinen hacia arriba, esto quiere decir que encontramos una solucion “optima”.
Pero esto no quiere decir que hayamos encontrado la mejor solucion, ya que todo depende de donde hayamos comenzado a descender y lo que hacemos es llegar a un minimo local.
Y esto se conoce como encontrar minimos locales
graficamente se veria asi, pero cuando tenemos multiples puntos minimos se vuelve mas complejo, ver el siguiente video
El descenso de gradiente es un algoritmo de optimización que se utiliza mucho en el análisis de datos, consiste en ubicar aleatoriamente un punto en nuestra función(plano) y de ahí calcular el gradiente que nos da un vector donde la función crecer y tomar el camino contrario y hacer este proceso iterativamente hasta hallar un mínimo de la función, donde ya no se puede descender más. α es el ratio de aprendizaje es un hiperparámetro y lo que hace es definir cuanto afecta el gradiente en cada iteración, una manera de verlo es que si α e muy chico necesitara muchas mas iteraciones en llegar a cierto punto y en algunos casos no se moverá del lugar ya que el gradiente es tan chiquito que no representa un cambio significativo
El problema de la curva del descenso mas rápido es otro problema interesante, es uno de los típicos en los textos de mecánica.
Requiere varias cosas adicionales, sin embargo los gifs que aparecen son interesantes.
Descenso de gradiente
gif descenso gradiente:
https://gfycat.com/barrenuntimelyhairstreakbutterfly
Me apoyé mucho de esta página para revisar el tema un poco más a fondo
Recomiendo esta lectura luego de atender un par de veces el detalle del video. 😃
https://es.khanacademy.org/math/multivariable-calculus/applications-of-multivariable-derivatives/optimizing-multivariable-functions/a/what-is-gradient-descent
Me gustaría complementar sobre el gradiente lo siguiente. El gradiente es un vector en el dominio (es decir x, y).
Sea f(x,y) = x^2 + y^2, es decir el tazón que tiene el profe en el dibujo. Cuando calculas el gradiente te da:
Si tomas de ejemplo un punto: A=(1, 1,) y lo calculas en el gradiente te resulta el vector:
V = (2, 2).
Este vector está en R^2, es decir está en el dominio (x, y). Cuando sigues la dirección del vector en x,y los z’s respectivos crecen. Cuando sigues la dirección opuesta, los z’s decrecen.
Por tanto es muy importante recordar que el gradiente es un vector EN el dominio (x,y). Lo puedes ver aquí, A en naranja, gradiente negativo en rosa, gradiente positivo en negro.
Hice un pequeño tutorial en esta sección del curso
Gracias, buen contenido
En el minuto 4:15 hay un pequeño error. La función no es cóncava, es convexa. Si queda alguna duda de este aporte, les sugiero volver a la clase 10 de lectura donde se explica esto. La recta tangente en el mínimo queda por “debajo” de la curva.
Recomiendo ver el video del canal DOT CSV en el sgte link: https://youtu.be/A6FiCDoz8_4
#Esta serie de links, ayudan a entender desde la función de costes hasta el gradiente descendiente:
https://www.iartificial.net/redes-neuronales-desde-cero-i-introduccion/
https://www.iartificial.net/error-cuadratico-medio-para-regresion
https://www.iartificial.net/gradiente-descendiente-para-aprendizaje-automatico/
Es genial, cuando usan la pizarra!
Que interesante ha sido repasar todo lo que vi en la universidad, definitivamente cada vez compruebo más mi amor por el cálculo.
En general, un gradiente es el cambio en cada una de las componentes de una cierta función . 😄
Más detalles se pueden encontrar en la wikipedia: https://es.wikipedia.org/wiki/Gradiente
Aquí un video del descenso del gradiente y cómo se usa en machine learning.
Es decir, la gradiente es un vector que está compuesto por las derivadas parciales de la función que nos interesa analizar con respecto a todas las variables de las que depende. Pero esta gradiente debe ser evaluada en cada punto para conocer en qué dirección debemos movernos.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.