Una Introducción al Aprendizaje automático

Una Introducción al Aprendizaje automático

El aprendizaje automático es un subcampo de la Inteligencia Artificial, con el objetivo de comprender la estructura de los datos y ajustarlos en modelos que puedan ser entendidos y utilizados por las personas. Se considera una de las tecnologías más influyentes hoy día y todavía no estamos cerca de conocer todo su potencial. 

El aprendizaje automático es una herramienta que funciona para convertir información en conocimiento. En los últimos 50 años, la cantidad de datos generados es abrumadora, y esa masa por sí sola es completamente inútil.

Pero algunas técnicas de aprendizaje automático logran encontrar patrones ocultos en el interior para una óptima interpretación. Los patrones ocultos y el conocimiento sobre un problema se pueden usar para predecir eventos futuros y realizar todo tipo de toma de decisiones complejas.

La mayoría de nosotros interactuamos a diario con aprendizaje automático o Machine Learning como se le conoce en inglés, pero desconocemos que lo estamos haciendo. Por ejemplo, cuando hacemos búsquedas en Google, cuando escuchamos una canción o incluso cuando tomamos fotos desde algunos dispositivos, usamos esta tecnología.

Básicamente es el motor detrás de muchas de las tecnologías cotidianas en el mundo. Por tanto, es valioso conocer una introducción al aprendizaje automático, e intentaremos proporcionar esta información a continuación.

Historia del Aprendizaje automático

El primer sistema de Machine Learning se creó en 1940, con el primer sistema informático operado manualmente, ENIAC (Electronic Numerical Integrator and Computer). Hasta ese momento, las computadoras no eran máquinas, sino personas  con capacidades intensivas de computación numérica, por lo tanto, ENIAC se llamaba una máquina de computación numérica.

Puede que de inmediato no encuentres la relación con el aprendizaje automático, pero desde el principio, la idea era construir una máquina capaz de emular el pensamiento y el aprendizaje humano.

En 1950 se crea el primero programa de juegos de computadora que retaba a los mejores jugadores de damas del mundo. Casi al mismo tiempo, Frank Rosenblatt inventó el Perceptron, que era un clasificador muy, muy simple, pero cuando se combinó en grandes cantidades de datos en redes, fue muy poderoso para el momento.

Las redes neuronales estuvieron un tiempo sin nuevas noticias después de esto, pero gracias a las estadísticas, el aprendizaje automático se hizo muy famoso en la década de 1990.

Se creó una intersección entre la estadística y la programación, y esto dio origen a los enfoques probabilísticos en IA y transformó el campo con una orientación basada en datos.

Fue entonces cuando el sistema Deep Blue de IBM venció al campeón mundial de ajedrez, el gran maestro Garry Kasparov. Deep Blue es el gran punto de referencia del éxito del aprendizaje automático y actualmente se encuentra en exposición en un museo. 

Tipos de aprendizaje automático

El aprendizaje automático se puede clasificar en 3 tipos de algoritmos:

  • Aprendizaje supervisado 
  • Aprendizaje no supervisado 
  • Aprendizaje de refuerzo

Los explicamos a continuación:

Algoritmo de aprendizaje supervisado

Es un sistema basado en IA con datos etiquetados, cada uno con la etiqueta correcta. El objetivo es aproximar la función de mapeo tan bien que cuando tenga nuevos datos de entrada (x) que pueda predecir las variables de salida (Y) para esos datos. Por ejemplo, puedes tomar un conjunto de datos y marcarlos como ‘Spam’ o ‘No Spam’; el modelo supervisado de entrenamiento utiliza estos datos etiquetados para entrenarse, y una vez que está capacitado se puede probar el modelo con correos nuevos de prueba. La comprobación del modelo puede predecir la salida correcta.

Existen dos tipos de aprendizaje supervisado:

  • Clasificación: Un problema de clasificación es cuando la variable de salida es una categoría, como "rojo" o "azul".
  • Regresión: Un problema de regresión es cuando la variable de salida es un valor real, como "dólares" o "talla".

Como ejemplo actual de este tipo de aprendizaje, tenemos cómo Google DeepMind ha utilizado el aprendizaje por refuerzo en la investigación para jugar juegos Go y Atari a niveles sobrehumanos.

Algoritmo de aprendizaje no supervisado

El aprendizaje no supervisado es un sistema de inteligencia artificial con datos sin etiquetar y sin clasificar. Estos algoritmos actúan sobre los datos sin capacitación previa. La salida depende de los algoritmos codificados. Someter un sistema a un aprendizaje no supervisado es una forma de probar la IA.

Un modelo no supervisado tiene la capacidad de separar caracteres al observar el tipo de datos y modelar la estructura o distribución subyacente en los datos para obtener más información al respecto.

Estos son los dos tipos de aprendizaje no autorizado:

  • Agrupación: un problema de agrupación se usa para descubrir las agrupaciones inherentes en los datos, como agrupar clientes por comportamiento de compra.
  • Asociación: un problema de aprendizaje de reglas de asociación sirve para descubrir reglas qué describen grandes porciones de sus datos, como que las personas que compran X también tienden a comprar Y.

Algoritmo de aprendizaje por refuerzo 

El algoritmo de aprendizaje por refuerzo aprende a medida que actúa con su entorno. El algoritmo o agente recibe recompensas por realizar correctamente y sanciones por realizar incorrectamente. Tiene la capacidad de aprender sin intervención humana, maximizando su recompensa y minimizando su penalización.

Esto funciona a través de un sistema de programación dinámica de recompensa y castigo. El agente aprovecha las recompensas obtenidas y mejora su conocimiento del entorno para seleccionar la siguiente acción.

Más información en: Aprendizaje por refuerzo

Métodos de aprendizaje automático

Para comprender mejor el aprendizaje automático se recomienda estar relacionado con las estadísticas computacionales, pues es útil para aprovechar mejor estos algoritmos.

Los enfoques de aprendizaje automático se desarrollan continuamente, pero veremos algunos enfoques muy populares últimamente:

k-vecinos más cercano

Es un modelo de reconocimiento de patrones que se puede utilizar para la clasificación y la regresión. A menudo se abrevia K-NN, es un número entero positivo, generalmente pequeño. Tanto en la clasificación como en la regresión, la entrada consistirá en los k ejemplos de entrenamiento más cercanos dentro de un espacio.

En este método, la salida es membresía de clase y se asignará un nuevo objeto a la clase más común entre sus k vecinos más cercanos. Por ejemplo en k = 1, el objeto se asigna a la clase del vecino más cercano.

Entre los algoritmos de aprendizaje automático más básicos, k-vecinos más cercanos se considera un tipo de aprendizaje diferido, pues la generalización no se produce sino hasta que se realiza una consulta al sistema.

Árbol de decisión de aprendizaje

Los árboles de decisión se emplean para representar visualmente las decisiones y mostrar o informar la toma de decisiones. Estos modelos se utilizan como modelos predictivos en el aprendizaje automático y la minería de datos. Se encargan de asignar observaciones sobre datos a conclusiones sobre el valor objetivo de los datos.

El objetivo del árbol de decisión de aprendizaje es crear un modelo que prediga el valor de un objetivo en función de las variables de entrada. Los atributos de los datos que se determinan mediante la observación están representados por las ramas y las conclusiones vienen a ser las hojas. 

En este método de aprendizaje, los datos de origen se dividen en subconjuntos en función de una prueba de valor de atributo, que se repite en cada uno de los subconjuntos derivados de forma recursiva. Una vez que el subconjunto en un nodo tiene el valor equivalente al valor objetivo, el proceso de recursión se completará.

Un verdadero conjunto de datos del árbol de clasificación tiene muchas características, pero se deben hacer determinaciones, eligiendo solo algunas así como las condiciones que se deben usar para dividir y comprender cuándo el árbol de decisiones ha llegado a un final claro.

Aprendizaje profundo

El aprendizaje profundo intenta imitar el cerebro humano, en su capacidad de procesa estímulos externos como la luz y el sonido, en la visión y el oído respectivamente. La arquitectura de esta metodología se inspira en las redes neuronales biológicas y consta de múltiples capas en una red neuronal artificial compuesta de hardware y GPU.

Más información en: Aprendizaje Profundo

Esta metodología utiliza una cascada de capas de unidades de procesamiento no lineales para extraer o transformar características o representaciones de los datos. La salida de una capa sirve como entrada de la capa sucesiva. Con aprendizaje profundo, los algoritmos pueden supervisarse y servir para clasificar datos, pero también sin supervisión se puede realizar análisis de patrones.

A la fecha se han utilizado muchos algoritmos de aprendizaje automático, pero ninguno ha podido absorber la cantidad de datos que absorbe el aprendizaje profundo, que incluso ha sido capaz de vencer a humanos en algunas tareas cognitivas (Deep Blue). Gracias a todos estos atributos, el aprendizaje profundo se ha convertido en el enfoque con un potencial significativo en el espacio de inteligencia artificial.

Ahora mismo, la visión por computadora  y el reconocimiento de voz han logrado avances significativos de los enfoques de aprendizaje profundo. Uno de los ejemplos más conocidos de sistemas que aprovechan el aprendizaje profundo sería IBM Watson. 

Estos han sido algunos de los métodos y enfoques más comunes de aprendizaje automático. Hemos revisado también los tipos principales de algoritmos y cómo estos actúan sobre los datos. Pero es importante concluir que el aprendizaje automático es un campo que se está innovando continuamente, por tanto, estos métodos y algoritmos continuarán cambiando. Se tienen buenas perspectivas de avances en estas tecnologías en la próxima década.