"Machine Learning es el campo de estudio que da habilidades a las computadoras para aprendan sin necesitad de programarlas explícitamente" - Arthur Samuel, 1959
Un ejemplo sencillo es un spam filter, esto puede utilizar Machine Learning ya que se suministran ejemplos de emails spam y ejemplos de emails normales, después este programa puede aprender a identificar un email spam.
Algunos términos que se deben tener claros:
- Training Set: Son los ejemplos (datos) que el sistema usa para aprender. Cada uno de esto ejemplos se les llama training instance.
- Accuracy: Forma en la que medimos el rendimiento de nuestro sistema, que tanto porcentaje de las predicciones son correctas.
- Data Mining: Técnicas de Machine Learning que analizan grandes cantidades de datos para descubrir patrones.
El Machine Learning resuelve problemas que usando la programación tradicional posiblemente no encontremos una buena solución, quizás usando el ML si la encontremos. Las soluciones con Machine Learning mejoran a las tradicionales ya que se puede adaptar a los cambios.
Tipos de sistemas de Machine Learning
Existen tres tipos muy conocidos de sistemas clasificados según como se entrenan:
- Supervised learning: Se entrena con un set de datos que incluyen las soluciones (labels), por ejemplo, se tiene un training set de correos, cada correo esta clasificado con un label con "spam" o "no spam".
- Unsupervised learning: Los datos de entrenamientos no están etiquetados, el sistema intenta aprender sin un guía.
- Reinforcement learning: Este aprende por prueba y error, recibiendo recompensas o penalizaciones.