Noticias y Blog

Diseño de algoritmos: De lo tradicional al aprendizaje automático

Artículo 2 - Columna de Giribona
Lucha contra el blanqueo de capitales y cumplimiento normativoNoticias

Diseño de algoritmos: De lo tradicional al aprendizaje automático

Editado por Pier Giuseppe Giribone

En el artículo anterior de esta columna, analizamos la diferencia entre Inteligencia Artificial (IA) y Aprendizaje Automático (AA), explicando por qué este último podría considerarse un caso especial.

En este segundo artículo, intentaremos ofrecer una definición de aprendizaje automático y aclarar las principales diferencias de funcionamiento entre un algoritmo tradicional y uno diseñado según los paradigmas de aprendizaje modernos.

Intuitivamente, el aprendizaje automático abarca la ciencia (y el arte) de programar una computadora para que pueda "aprender" de los datos de forma autónoma.

Históricamente, este concepto ya había sido expresado en términos visionarios en 1959 por el científico informático estadounidense Arthur Lee Samuel, quien definió el aprendizaje automático como aquel campo de estudio que otorga a las computadoras la capacidad de aprender sin ser programadas explícitamente.

En 1997, el científico Tom Michael Mitchell proporcionó una definición más técnica y, en cierto sentido, más precisa del aprendizaje automático: “Se dice que un programa informático aprende de la experiencia. E con respecto a alguna tarea asignada T y alguna medida de rendimiento P, si su desempeño para completar la tarea T, medido por PMejora con la experiencia. E.

Esta definición, que puede no resultar intuitiva de inmediato, sin duda merece un ejemplo aclaratorio.

En general, estamos familiarizados con el software que nos permite gestionar el correo electrónico y, en particular, sabemos qué se entiende por "filtro de spam" (es decir, el algoritmo que utiliza paradigmas modernos de aprendizaje automático para filtrar los correos electrónicos no deseados).

Este es un programa típico de aprendizaje automático (ML) que, a partir de ejemplos de correos electrónicos considerados spam (marcados por el propio usuario) y/o correos electrónicos recibidos considerados normales (aquellos que no son no deseados pero a los que el usuario ha respondido), puede aprender de forma autónoma a marcar automáticamente un correo electrónico como spam.

Los ejemplos que el sistema utiliza para aprender definen el conjunto de entrenamiento. Cada conjunto de datos proporcionado para el entrenamiento se denomina instancia de entrenamiento o muestra.

En este caso, según la definición proporcionada por Mitchell, podría decirse que la tarea T para el filtro de spam es marcar un nuevo correo electrónico como no deseado, la experiencia E Se obtiene a partir de los datos de entrenamiento y el rendimiento. P, que mide el nivel de aprendizaje, puede definirse, por ejemplo, como el porcentaje de correos electrónicos clasificados correctamente por el sistema.

Un algoritmo que dispone de una gran cantidad de datos, pero al que no se le asigna un objetivo específico ni una métrica de rendimiento relacionada para medir a lo largo del tiempo la eficiencia con la que logra la convergencia, no puede considerarse un programa que funcione siguiendo los paradigmas del aprendizaje automático.

Si se descargara una copia estática de Wikipedia a un ordenador, este tendría una enorme cantidad de información y datos, pero como estos datos no están gestionados ni organizados, no generaría ningún conocimiento nuevo. ¿Qué tipo de tareas aprendería a realizar mejor el software? La simple descarga programática de una copia de una enciclopedia no constituye aprendizaje automático.

Para comprender la diferencia de diseño entre un algoritmo tradicional y uno que implementa paradigmas de aprendizaje automático, pongámonos en el lugar de un desarrollador que pretende escribir la lógica para el programa de filtro de spam mencionado anteriormente.

El enfoque algorítmico tradicional implicaría un diagrama de flujo que contendría las siguientes instrucciones:

  1. I) Considere todos los elementos que suelen caracterizar el spam. Por ejemplo, podría observar palabras o frases recurrentes en el asunto del correo electrónico, como "4U", "tarjeta de crédito" y "gratis". También podría detectar otros patrones potencialmente útiles en la dirección o el cuerpo del correo.
  2. II) Se escribiría un algoritmo de detección para cada uno de los patrones que surgieron en el análisis anterior, y el software marcaría los correos electrónicos no deseados si se detectara un cierto número de estos patrones.

III) El programa será probado y los pasos I) y II) se repetirán hasta que el algoritmo haya alcanzado un rendimiento satisfactorio.

Es evidente que, al tratarse de un problema complejo, el programa se caracterizará por una larga lista de reglas bastante complejas que deberán mantenerse de forma eficiente.

Un filtro de spam basado en aprendizaje automático aprende automáticamente qué palabras y frases son buenos indicadores de spam, detectando patrones inusuales que distinguen los correos electrónicos no deseados de los legítimos, basándose en comparaciones realizadas en el conjunto de entrenamiento.

De este modo, el programa será más eficiente, más fácil de mantener y con mayor probabilidad de ser preciso.

¿Qué podría ocurrir si un remitente de spam informa que todos los correos electrónicos que contienen "4U" están bloqueados? Podría simplemente empezar a escribir "For U". Un filtro de spam que utiliza técnicas de programación tradicionales debería actualizarse con una nueva regla que también bloquee los correos electrónicos que contengan "For U".

Si el remitente de spam detecta que nuestro sistema de filtrado es inadecuado, debemos definir y añadir nuevas reglas constantemente.

A diferencia de los enfoques de programación tradicionales, un filtro de spam basado en técnicas de aprendizaje automático tiene la capacidad automática de detectar que las palabras "Para ti" se han vuelto inusualmente frecuentes entre los mensajes marcados como spam por el usuario y tomar las medidas correspondientes.

Por lo tanto, el algoritmo comenzará a marcar automáticamente este tipo de correo electrónico sin intervención manual del usuario: ha aprendido una nueva regla, guiada por la experiencia del usuario.

Por lo tanto, el uso de algoritmos de aprendizaje automático resulta particularmente interesante para resolver problemas complejos, para los cuales las reglas que rigen el sistema a representar no pueden definirse a priori.

Una vez comprendido el significado de Aprendizaje Automático y las principales diferencias en el diseño algorítmico entre un programa tradicional y uno dedicado al aprendizaje automático, el siguiente artículo se centrará en la clasificación de los diferentes tipos de Aprendizaje Automático en función de los distintos tipos de aprendizaje.

Arthur Lee Samuel, pionero en los campos de la inteligencia artificial y los videojuegos, acuñó el término "aprendizaje automático" en 1959. Creó con éxito el primer programa de damas basado en aprendizaje automático, lo que proporcionó una demostración temprana de los conceptos fundamentales de la inteligencia artificial.

Seleccione los campos que se mostrarán. Otros estarán ocultos. Arrastre y suelte para reorganizar el orden.
  • Imagen
  • (SKU)
  • Valoración
  • Precio
  • Stock
  • Disponibilidad
  • Añadir al carrito
  • Mareas Ideales para Lecciones
  • Contenido
  • Peso
  • Dimensiones
  • Información Adicional
Haga clic fuera para ocultar la barra de comparación
Compara