¿Qué hace que un problema sea un problema de aprendizaje automático?

La respuesta más simple sería datos . Siempre que tenga datos, y le gustaría usarlos como ejemplos para futuras predicciones , tiene a mano un problema de Aprendizaje automático.

Eso también se aplica al revés. Si sabe que puede usar algún tipo de datos para razonar sobre algún problema, puede organizar los datos para que se convierta en un problema de aprendizaje automático.

Con el diseño clásico de algoritmos, tratamos de codificar el conocimiento en un algoritmo para resolver un problema. A la inversa, con Machine Learning dejamos que los algoritmos aprendan el conocimiento (modelos) de la evidencia pasada para resolver el problema.

Lo que NO es una buena idea para el aprendizaje automático es intentar resolver problemas de manera algorítmica. Por ejemplo, ordenación, búsqueda, transformaciones, etc. El tema común en estos problemas es que requerimos soluciones exactas, y el tiempo de ejecución es importante. En resumen, no uses un hacha para tallar una estatua; Hay mejores herramientas para eso.

Por otro lado, los problemas típicos de Machine Learning son algo así:

  • Reconocimiento de voz (por ejemplo, marcación rápida)
  • Visión por computadora (por ejemplo, detección de rostros)
  • Reconocimiento de caracteres escrito a mano (por ejemplo, entrega de cartas)
  • Recuperación de información (por ejemplo, indexación de imágenes y videos)
  • Sistemas operativos (por ejemplo, almacenamiento en caché)
  • Detección de fraude (por ejemplo, tarjetas de crédito)
  • Filtrado de texto (por ejemplo, filtros de correo no deseado)
  • Juego (por ejemplo, predicción de estrategia)
  • Robótica (por ejemplo, predicción de la vida útil de la batería)

(Esto no es de ninguna manera una lista completa)

Nuevamente, si tuviera que diseñar un algoritmo para estos problemas, terminará con algoritmos realmente grandes y complicados. Entonces, en estos casos, el aprendizaje automático se adapta mejor, ya que puede aprender estos “algoritmos” a partir de los datos .

Dejame darte un ejemplo.

Diariamente usted está recibiendo gran cantidad de correos electrónicos. Hay muchos correos electrónicos que clasificaste como spam. Estás cansado de esta tarea y por lo tanto querías una solución automatizada. Pero no puede escribir un programa que especifique todas las reglas para el correo no deseado porque era demasiado engorroso.

Más bien, tiene toda la lista anterior de correos clasificados como spam. Así que alimentará estos datos a un programa y hará que la máquina aprenda a clasificar automáticamente los correos electrónicos futuros como spam / no spam.

Cualquier problema que requiera una salida prevista basada en datos anteriores es un problema de aprendizaje automático.