No.
Permíteme presentarte una de mis ideas educativas favoritas: la triangulación.
Richard Feynman lo describe mucho mejor que yo en su libro Feynman’s Tips on Physics: Reflections, Advice, Insights, Practice cuando habla sobre la memorización en relación con la física:
Ahora, suponga que algo le sucedió a su mente, que de alguna manera todo el material en alguna región fue borrado, y había un pequeño punto de falta de sustancia pegajosa allí. Las relaciones de la naturaleza son tan agradables que es posible, por lógica, “triangular” de lo que se sabe a lo que hay en el agujero.
Y puede recrear las cosas que ha olvidado perpetuamente, si no olvida demasiado y si sabe lo suficiente. En otras palabras, llega un momento, que aún no ha llegado, en el que sabrá tantas cosas que, a medida que las olvida, puede reconstruirlas a partir de las piezas que aún puede recordar. Por lo tanto, es de primera importancia que usted sepa cómo ” triangular” , es decir, saber cómo resolver algo de lo que ya sabe.
Esta noción de “triangulación” también es aplicable al campo del aprendizaje automático y realmente a cualquier campo de estudio técnico, científico o matemático. Echemos un vistazo a uno de los ejemplos más simples de triangulación que involucra mínimos cuadrados ordinarios.
Imagine que un día se despertó y olvidó por completo cómo resolver el problema de optimización involucrado en los mínimos cuadrados ordinarios, a saber, [math] \ min_ {x} \ lVert \ mathbf {A \ vec x – \ vec b} \ rVert ^ 2 [/ matemáticas].
La solución a este problema de optimización es [matemáticas] x = (A ^ {\ top} A) ^ {- 1} A ^ {\ top} b [/ matemáticas] pero si no lo recordamos, ¿cómo podemos ” triangular “nuestro camino hacia esta solución.
Bueno, lo primero que te das cuenta es que cada vez que quieres minimizar una función, una forma natural de resolver este problema es tomar una derivada y establecerla igual a 0. Pero, ¿cuál es la noción de una derivada en este contexto? ¡gradiente!
Pero, entonces, piensa un poco más cuidadosamente sobre el significado del gradiente y, como alguien que entendió el concepto del gradiente a partir del cálculo multivariable, recuerda que establecer el gradiente es igual a 0 no es suficiente para que sea la solución óptima . Podría ser un mínimo local. O peor aún, podría ser un punto de silla de montar o máximos locales. Pero, ¿hay algo especial en esta función?
Después de pensar un poco más sobre el problema, te das cuenta de que la función que estás tratando de minimizar aquí es convexa, lo que significa que cualquier mínimo local que encuentres al establecer el gradiente en 0 será el mínimo global. Además, los máximos locales y los puntos de silla no tienen sentido para las funciones convexas. Por lo tanto, comenzamos tomando el gradiente de esta función:
[matemáticas] \ nabla_x \ lVert \ mathbf {A \ vec x – \ vec b} \ rVert ^ 2 [/ matemáticas]
[math] = \ nabla_x (A \ vec x – \ vec b) ^ {\ top} (A \ vec x – \ vec b) [/ math]
[matemáticas] = \ nabla_x (\ vec x ^ {\ top} A ^ {\ top} A \ vec x – 2 \ vec x ^ {\ top} A ^ {\ top} \ vec b + \ vec b ^ { \ top} \ vec b) [/ math]
[matemáticas] = 2A ^ {\ top} A \ vec x – 2A ^ {\ top} \ vec b [/ matemáticas]
Establecemos este gradiente igual a 0 y resolviendo para [matemáticas] x [/ matemáticas], obtenemos [matemáticas] x = (A ^ {\ top} A) ^ {- 1} A ^ {\ top} b [/ matemáticas ] Y hemos redirigido con éxito la solución a los mínimos cuadrados ordinarios.
También puede obtener la misma solución al problema si lo mira desde un punto de vista algebraico lineal en lugar de una perspectiva de optimización. Te das cuenta de que la solución [math] \ vec x [/ math] es algo en el espacio de la columna de [math] A [/ math] que está más cerca de [math] b [/ math]. Después de algunas figuras y pensando en el problema desde una perspectiva geométrica, se da cuenta de que esta solución [matemática] \ vec x [/ matemática] es precisamente [matemática] b [/ matemática] proyectada en el espacio de la columna de [matemática] A [/ matemáticas]. Este es un diagrama útil para ver esto:
Esto significa que el vector de “error” [math] \ vec b – A \ vec x [/ math] es ortogonal al espacio de columna de [math] A [/ math]. Podemos traducir esta observación a las matemáticas de la siguiente manera:
[matemáticas] A ^ {\ top} (\ vec b – A \ vec x) = \ vec 0 [/ matemáticas]
Y resolver esto una vez más produce [matemáticas] x = (A ^ {\ top} A) ^ {- 1} A ^ {\ top} b [/ matemáticas].
Ahora, es importante tener en cuenta que para triangular a esta solución desde el punto de vista de la optimización, debe comprender el cálculo multivariable o haber visto lo suficiente para saber cómo funcionan los gradientes de matrices y vectores. También debe conocer el papel de la convexidad en la resolución de este tipo de problemas. Y para triangular la solución desde la perspectiva algebraica lineal, debe comprender los principios del álgebra lineal, como el espacio de columnas, la ortogonalidad y la proyección.
Y Feynman articula esto en la cita anterior cuando enfatiza que para triangular, todavía necesita saber lo suficiente. En otras palabras, no puedes tener demasiados vacíos en tu comprensión o no tienes dónde establecer realmente una base para la triangulación.
Es por eso que muchas veces, escuchará que para comprender realmente el campo del aprendizaje automático, necesita tener este tipo de formación matemática. ¡Tenga en cuenta que este tipo de fondo es necesario para comprender profundamente uno de los modelos más simples en el campo! Tener la capacidad de triangular en lugar de memorizar es una de las habilidades más importantes que puede aprender para garantizar una comprensión más profunda de los conceptos en todo tipo de campos técnicos.