• English
  • Español

Cómo empezar con el aprendizaje automático

Machone Learning

¿Cuáles son los fundamentos del aprendizaje automático y cuáles son las herramientas necesarias para evaluar el riesgo y otras preocupaciones en una aplicación de aprendizaje automático?

 

El aprendizaje automático es genéricamente un conjunto de técnicas para encontrar patrones en los datos. Las aplicaciones van desde coches autopropulsados hasta asistentes personales de IA, desde la traducción entre alemán y taiwanés hasta la traducción entre voz y texto. Hay algunas aplicaciones comunes del aprendizaje automático que ya impregnan o podrían impregnar nuestro día a día.

 

Detección de anomalías

 

Reconocer los picos en el tráfico del sitio web o destacar la actividad bancaria anormal.

 

Recomendar contenido similar

 

Encuentra productos que puedas estar buscando o incluso artículos de Revistas que sean relevantes.

 

Predecir el futuro

 

Planifique la ruta de los vehículos vecinos o identifique y extrapole las tendencias del mercado para las existencias.

 

Estas son algunas de las muchas aplicaciones del aprendizaje automático, pero la mayoría de las aplicaciones se relacionan con el aprendizaje de la distribución de datos subyacente. Una distribución especifica los eventos y la probabilidad de cada evento. Por ejemplo:

 

Con un 50% de probabilidad, usted compra un artículo de 5€ o menos.

Con un 25% de probabilidad, usted compra un artículo de 5€-10€.

Con un 24% de probabilidad, usted compra un artículo de 10€-100€.

Con un 1% de probabilidad, usted compra un artículo > 100€.

 

Usando esta distribución, podemos cumplir con todas nuestras tareas anteriores:

 

Detección de anomalías

 

Si se produce una compra de 100€, podemos llamar a esto una anomalía.

 

Recomendar contenido similar

 

Una compra de $3 significa que debemos recomendar más artículos de 5€ o menos.

 

Predecir el futuro

 

Sin ninguna información previa, podemos predecir que la próxima compra será de 5€ o menos.

 

Con una distribución de datos, podemos realizar una miríada de tareas. En resumen, un objetivo en el aprendizaje automático es aprender esta distribución.

 

Aún más genéricamente, nuestro objetivo es aprender una función específica con entradas y salidas particulares. Llamamos a esta función nuestro modelo. Nuestra entrada se denomina x. Digamos que nuestro modelo, que acepta la entrada x, es

 

f(x) = ax

 

Aquí, a es un parámetro de nuestro modelo. Cada parámetro corresponde a una instancia diferente de nuestro modelo. En otras palabras, el modelo donde a=2 es diferente del modelo donde a=3. En el aprendizaje automático, nuestro objetivo es aprender este parámetro, cambiándolo hasta que lo hagamos "bien". ¿Cómo determinamos qué valores de un do "bien"?

 

Necesitamos definir una forma de evaluar nuestro modelo, para cada parámetro a. Para empezar, la salida de f(x) es nuestra predicción. Nos referiremos a y como nuestra etiqueta, lo que significa el resultado verdadero y deseado. Con nuestras predicciones y nuestras etiquetas, podemos definir una función de pérdida. Una de estas funciones de pérdida es simplemente la diferencia entre nuestra predicción y nuestra etiqueta, |f(x) - y|. Usando esta función de pérdida, podemos evaluar diferentes parámetros para nuestro modelo. Elegir el mejor parámetro para nuestro modelo se conoce como entrenamiento. Si tenemos unos pocos parámetros posibles, podemos simplemente probar cada parámetro y elegir el que tenga la menor pérdida!

 

Sin embargo, la mayoría de los problemas no son tan simples. ¿Qué sucede si hay un número infinito de parámetros diferentes? Digamos que todos los valores decimales entre 0 y 1? ¿Entre 0 y el infinito? Esto nos lleva al siguiente tema: abstracciones en el aprendizaje automático. Discutiremos diferentes facetas del aprendizaje automático, para compartimentar su conocimiento en datos, modelos, objetivos y métodos de resolución de objetivos. Más allá del aprendizaje del parámetro adecuado, existen muchos otros desafíos: ¿cómo podemos resolver un problema tan complejo como el control de un robot? ¿Cómo controlamos un coche que se conduce por sí solo? ¿Qué significa entrenar a un modelo que identifica rostros? La siguiente sección le ayudará a organizar las respuestas a estas preguntas.

 

Abstracciones

Hay innumerables temas en el aprendizaje automático - en varios niveles de especificidad. Para entender mejor dónde encaja cada pieza en el panorama general, considere las siguientes abstracciones para el aprendizaje automático. Estas abstracciones compartimentan nuestra discusión de los temas de aprendizaje de la máquina, y conocerlos hará que sea más fácil para usted enmarcar los temas. Las siguientes clasificaciones han sido tomadas del profesor Jonathan Shewchuck de la Universidad de California en Berkeley:

 

1. Aplicaciones y datos

 

Considere las posibles entradas y la salida deseada para el problema.

 

Preguntas: ¿Cuál es su objetivo? ¿Cómo están estructurados sus datos? ¿Hay etiquetas? ¿Es razonable para nosotros extraer la salida de las entradas proporcionadas?

Ejemplo: El objetivo es clasificar las imágenes de los dígitos manuscritos. La entrada es una imagen de un número manuscrito. La salida es un número.

 

2. Modelo

 

Determinar la clase de funciones a considerar.

 

Preguntas: ¿Son suficientes las funciones lineales? ¿Funciones cuadráticas? ¿Polinomios? ¿Qué tipos de patrones nos interesan? ¿Son apropiadas las redes neuronales? ¿Regresión logística?

Ejemplo: Regresión lineal

 

3. Problema de optimización

 

Formular un objetivo concreto en matemáticas.

 

Preguntas: ¿Cómo definimos pérdida? ¿Cómo definimos el éxito? ¿Deberíamos aplicar sanciones adicionales para sesgar nuestro algoritmo? ¿Existen desequilibrios en los datos que nuestro objetivo debe tener en cuenta?

Ejemplo: Encuentra `x` que minimice |Ax-b|^2

 

4. Algoritmo de optimización

 

Determine cómo resolverá el problema de optimización.

 

Preguntas: ¿Podemos calcular una solución a mano? ¿Necesitamos un algoritmo iterativo? ¿Podemos convertir este problema en un objetivo equivalente pero más fácil de resolver, y resolverlo?

Ejemplo: Tomar una derivación de la función. Ponlo a cero. Resuelve para nuestro parámetro óptimo.

 

Conclusión

 

En este artículo, hemos visto temas importantes en los fundamentos del aprendizaje de la máquina. Usando las abstracciones anteriores, ahora tiene un marco para discutir los problemas de aprendizaje de la máquina y sus soluciones. Usando los temas fundamentales de arriba, ahora también tiene conceptos esenciales para aprender más, dándole las herramientas necesarias para evaluar el riesgo y otras preocupaciones en una aplicación de aprendizaje de máquina.

Imagen de Josep Navarro
Josep Navarro es Licenciado en Económicas por la UB, especializado en Inspecciones Tributarias, con más de 25 años de experiencia en asesoría fiscal para empresas y particulares en España.