MACHINE LEARNING Y MATEMÁTICAS

MACHINE LEARNING Y MATEMÁTICAS

A diario me contactan personas que comparten su entusiasmo por adentrarse en el mundo de la ciencia de los datos y utilizar técnicas de Machine Learning (Ver explicación sencilla) para investigar los patrones estadísticos y crear productos basados en datos.

Sin embargo, he observado que algunos realmente carecen de la base matemática necesaria y el marco para obtener resultados útiles.

El Machine Learning es un campo que combina aspectos estadísticos, probabilísticos y matemáticos, que surgen del aprendizaje de forma iterativa a partir de datos, y la búsqueda de ideas ocultas que pueden utilizarse para crear aplicaciones inteligentes.

A pesar de las inmensas posibilidades del Machine Learning, se necesita una comprensión matemática profunda de muchas de estas técnicas para comprender bien el funcionamiento interno de los algoritmos y obtener buenos resultados. Es importante:

  1. Seleccionar el algoritmo correcto, en función de lo preciso que sea, el tiempo de entrenamiento que necesite, la complejidad del modelo, el número de parámetros y el número de características.
  2. Elegir las estrategias de validación y de diagnosis, para saber con certeza si el método ha funcionado bien o no.

Aunque muchas personas que no tienen base matemática se adentran en este campo e incluso hacen análisis con softwares que venden para trabajar de forma automática, creo que esto no es lo correcto.

Para hacer las cosas bien hay que tener una base analítica mínima. En particular, para desarrollar de manera correcta modelos con Machine Learning hay que tener conocimientos básicos de Álgebra Lineal y Teoría de la Probabilidad y Estadística, además de algo de Cálculo y Algoritmia centrada sobre todo en Optimización. Vamos a ver un poquito qué es cada una de estas cosas:

  1. Álgebra Lineal. Así dicho, más de uno se habrá llevado las manos a la cabeza. Sin embargo, en muchas de las cosas que se hacen en cualquier departamento de investigación de una empresa, se aplica Álgebra Lineal, por ejemplo al hacer un análisis de Componentes Principales. El álgebra lineal es una rama de las matemáticas que estudia conceptos tales como vectores, matrices, sistemas de ecuaciones lineales, espacios vectoriales y sus transformaciones lineales. Es un área que tiene conexiones con muchas áreas dentro y fuera de las matemáticas, como el análisis funcional, las ecuaciones diferenciales, la investigación de operaciones, las gráficas por computadora, la ingeniería, etc.
  2. Teoría de la Probabilidad y Estadística. El Machine Learning y la Estadística son campos bastante parecidos. En realidad, el machine Learning es Estadística hecha por las máquinas. Por lo tanto, hay muchas cosas que el analista en este campo tiene que conocer: Combinatoria, Reglas de Probabilidad, Teorema de Bayes, Variables Aleatorias, Varianza, Distribuciones Condicionales y Conjuntas, Distribuciones Estándar (Bernoulli, Binomial, Multinomial, Uniforme y Gaussiana), Estimación de Máxima Verosimilitud, Estimación Máxima a Posteriori, Métodos de Muestreo, etc.
  3. Cálculo multivariante. Que es la extensión del cálculo infinitesimal a funciones escalares y vectoriales de varias variables, y que será clave para temas de optimización. En el cálculo multivariante, pasamos de trabajar con números en una línea a puntos en el espacio. Nos brinda las herramientas para liberarse de las limitaciones de una dimensión, usar funciones para describir el espacio y espacio para describir funciones. Cosas que hay que saber hacer o al menos conocer: cálculo diferencial e integral, derivadas parciales, funciones de valores vectoriales, gradiente direccional, matriz Hessiana, Jacobiano, Laplaciano y función Lagragiana.
  4. Algoritmos y optimizaciones. Importante para comprender la eficiencia computacional y la escalabilidad de nuestro algoritmo de Machine Learning. Se necesitan conocimientos de Estructuras de Datos, Programación Dinámica, Algoritmos Aleatorizados y Sublineales, Gráficos, Gradientes/Descendientes Estocásticos y Métodos Primal-Dual.

En fin, no se trata de asustar a nadie, pero sí de tratar las cosas en su justa medida y poner en sobre aviso a aquellos que pagan por este tipo de servicios: no vale todo. Aplicar Técnicas de Machine Learning no consiste exclusivamente en dar a una palanca y poner la máquina a trabajar. Cuanta más base matemática haya en el equipo detrás del análisis, mayor seguridad tendremos de que la manera en la que se están haciendo las cosas es la mejor, y mayor será la confianza en el resultado.

Menos miedo a la amenaza de las máquinas, y más al análisis hecho de cualquier manera.

Artículo original: https://bit.ly/2ExFH64

 

 

Comentarios

  1. Excelente escrito. Muy enriquecedor para aquellos que piensan que solo es el software el que hace todo. Saludos desde México.

  2. Muy buena entrada, yo soy de la opinión de que no solo es necesario un gran conocimiento matemático sino también un conocimiento del problema a modelizar así como del negocio donde se enmarca el problema en si, para que el resultado sea coherente, accionable, medible etc.!

  3. Muy buen post, estoy totalmente de acuerdo. De hecho, me encuentro repasando y aprendiendo mucho de lo que mencionas.
    Saludos.

    1. Gracias Jorge. Acabo de incluir la referencia en al artículo.

  4. Yo no creo que sean tan necesario matematicas, de todos modos yo estudié matemáticas discretas y matemática aplicada además de tener conocimiento en Java C# y python, android nativo y flutter con dart tanto en backend con firebase y frontend, yo estoy mas que listo para aprender machine learning tu no me vas a detener, no quieras asustar a las personas que tratan de aprender no seas egoista y deja que la gente aprenda, tranquilo que nadie te quitará tu empleo hay lugar para todos en el área de IA

    1. Muy bien Jorge solo le hizo falta un curso de sentido común y buenos modales , Éxitos con tu aprendizaje.

  5. Hola, contundente post, muy preciso sobre las bases matemáticas que se deberían considerar antes de entrar en todo el mundo del ML. Soy Ingeniero de Sistemas, conozco de programación y realmente me ha costado mucho la parte matemática, pero con esto despejo muchas dudas de por donde empezar a realizar un repaso. Muchas gracias!!

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *