Recursos para aprender las matemáticas del machine learning
¿Por que son tan importantes las matemáticas en el machine learning?
El machine learning es un campo que combina diversas disciplinas, entre las que destacan la programación, la estadística y probabilidad y las matemáticas.
Aunque es posible crear modelos de machine learning sin conocer sus fundamentos matemáticos y que además funcionen para nuestro problema, es indudable que tener un nivel mínimo de matemáticas es muy importante para poder entender como funcionan los algoritmos que implementamos y poder tomar así mejores decisiones.
Por supuesto, no hace falta saber todos los aspectos de las matemáticas ni muchos menos, pero sí comprender al menos ciertos aspectos del algebra lineal y el cálculo como los que he recopilado a continuación:
- El algebra lineal juega un papel importante en el machine learning y es necesario comprender los sistemas de ecuaciones lineales, vectores, espacios vectoriales, ortogonalidad, operaciones con matrices, descomposición de matrices, cambios de base, proyecciones, valores propios y vectores propios, etc.
- En cuanto al calculo, deberemos entender el cálculo diferencial e integral, derivados parciales, series de Taylor, funciones de valores vectoriales, gradiente, matrices hessianas y jacobianas, etc.
Todos estos conceptos pueden parecer bastante intimidantes en un primer momento. La buena noticia es que existen numerosos cursos en internet y libros para poder aprender y cubrir nuestras lagunas.
Para esta publicación he recopilado una serie de cursos y libros que considero excelentes recursos para el aprendizaje de las matemáticas y que me han ayudado a mí a entender gran parte de estos conceptos.
He excluido de esta lista libros y cursos sobre la estadística y probabilidad, ya que me pareció más interesante tratarlos en otra publicación posterior por separado.
Dicho esto, ¡empecemos con la lista!
Mathematics for Machine Learning
Marc Deisenroth, A. Aldo Faisal y Cheng Soon Ong
Para comenzar el listado, quiero presentaros mi libro favorito para aprender las matemáticas fundamentales necesarias para entender machine learning: Mathematics for Machine Learning.
Antes de nada, debo decir que a mi parecer este libro no es para nada una lectura fácil y apta para personas sin ninguna base en cálculo o álgebra lineal introductoria. Sin embargo, si le dais una oportunidad y os esforzáis en entender su contenido conseguiréis mejorar vuestro entendimiento de la teoría detrás de muchos de los modelos de machine learning.
Podéis descargar este magnifico libro en PDF de manera gratuita desde su página web o comprarlo en formato físico aquí.
Si no tenéis ninguna base matemática o el anterior libro os resulta muy difícil de entender, una muy buena opción es ver primero los videos de la web Khan Academy, especialmente los del curso de algebra lineal y cálculo diferencial. Estos videos son más fáciles de entender y los tenéis disponibles tanto en inglés como en español.
Mathematics for Machine Learning es un libro bastante completo donde el autor cubre muchísimo material en sus 417 páginas y esta divido en dos partes:
- En la primera parte se explican los fundamentos matemáticos que básicamente incluyen el algebra lineal, descomposición de matrices, cálculo vectorial, teoría de la probabilidad y optimización continua.
- Una vez explicados los fundamentes, la segunda parte del libro se centra en los cuatro pilares del machine learning: regresión, reducción de dimensionalidad, estimación de densidad y clasificación con máquinas de vectores de soporte (SVM).
Además, cada capítulo también incluye muchos ejemplos ilustrativos que facilitan la comprensión de la teoría.
Podéis descargar este excelente libro en PDF de manera gratuita desde su página web o comprarlo en formato físico aquí.
Essence Of Linear Algebra y Essence of Calculus
3Blue1Brown
La serie Essence Of Linear Algebra consiste en tan solo 15 excelentes videos en los que se explican muchas de las ideas básicas de esta rama de las matemáticas, desde los vectores hasta los valores y vectores propios.
Lo bueno de estos videos y los que le diferencia del resto de cursos son sus explicaciones desde un punto de vista geométrica con la ayuda de increíble y muy intuitivas visualizaciones.
Debido a su corta duración y sus explicaciones gráficas de los conceptos, esta serie me parece el perfecto acompañamiento para el libro anterior.
Los videos de la serie están disponibles en el canal de Youtube de 3Blue1Brown tanto inglés como en español.
Asimismo, también recomiendo la serie Essence of Calculus del mismo autor, donde se explican, también de forma animada e intuitiva, los conceptos básicos de cálculo: derivadas, regla de la cadena y series de Taylor, entre otros.
Mathematics for Machine Learning: Multivariate Calculus
Imperial College London (Coursera)
Este curso pertenece a la especialización que ofrece la universidad Imperial College London en la plataforma Coursera y ofrece una breve introducción al cálculo necesario para el machine learning.
Entre otros temas, se explica de una manera muy intuitiva la diferenciación de una sola variable, diferenciación multivariable, regla de la cadena, jacobiano, matriz Hessiana, multiplicador de Lagrange y la serie de Taylor.
El único inconveniente que le veo al curso es que los temas no se explican muy en profundidad, por lo que lo utilizaría para refrescar nuestros conocimientos de cálculo o acompañado de los otros recursos del listado.
Estos son los cursos y libros que me han servido a mi para aprender los fundamentos de las matemáticas del machine learning y espero que esta publicación os anime a utilizarlos. Si tenéis vosotros alguna recomendación los invito a compartirla en los comentarios.