Buenas, espero estén teniendo un buen fin de semana y período de parciales :)
Empiezo con los extras:
1) Cuando hablamos del método de Newton comentamos que tenía un comportamiento particular. Este video de 3blue1brown explica muy bien eso. Nosotros usamos el método para minimizar funciones, pero hemos comentado varias veces la relación con el método para hallar ceros. Grant lo hace también en una de las motivaciones en el video. Es un buen entretenimiento de 15 o 20 minutos.
Gabriel Peyré es un francés que todos los días pone algo de divulgación en su cuenta de twitter. Justo hoy publicó esto, sobre los métodos de Polyak y Nesterov que vimos en clase. Hay un link también con una explicación bastante detallada y didáctica del fenómeno.
2) Como anunciamos antes, suspendemos las clases por el período de parciales y nos reencontramos el 10 de mayo para el tramo final del curso.
3) Algunos comentarios generales sobre el obligatorio.
- No es necesario que calculen el paso óptimo, pero es bienvenido. Observeren que, comparando con el caso que vimos en clase con la matriz Q, los valores propios que tienen que mirar son los de la Hessiana (y A no es la Hessiana). Como tienen el gradiente ya calculado, la Hessiana les queda sencilla desde ahí.
- Al comparar descenso por gradiente común con la versión acelerada de Nesterov, para que la comparación sea justa, tienen que usar el mismo valor de alpha. Elijan entonces un valor que haga que ambos métodos sean convergentes (por ejemplo el alpha óptimo, o uno ligeramente menor)
- Creo que sobra decirlo, pero asegúrense que los métodos sean convergentes. Para eso, usen valores de alpha que sirvan. Si no quieren calcular el paso óptimo, empiecen con un valor chico de alpha (0.0000001 o lo que sea), y vayan aumentando el alpha mientras se mantenga la convergencia. Elijan uno razonable en función de la cantidad de iteraciones por ejemplo.
- Hay algunas alternativas para elegir el beta en Nesterov. Elijan cualquiera. La que vimos en clase debería funcionar.
- Para el caso de paso decreciente, fíjense que puse un consejo comentado en el código. Si la elección obvia les demora muchísimo en converger, prueben un paso que decrezca más lento, manteniendo las condiciones que vimos en clase.
Siempre pueden preguntar en el foro por supuesto.
¡Saludos!