El aprendizaje automático es necesario para tareas que son demasiado complejas para que los humanos las codifiquen directamente. Algunas tareas son tan complejas que es poco práctico, si no imposible, que los humanos resuelvan todos los matices y el código explícitamente. Entonces, en cambio, proporcionamos una gran cantidad de datos a un algoritmo de aprendizaje automático y dejamos que el algoritmo lo resuelva explorando esos datos y buscando un modelo que logre lo que los programadores se propusieron.
El rendimiento del modelo está determinado por una función de costo proporcionada por el programador y la tarea del algoritmo es encontrar un modelo que minimice la función de costo.
Los ejemplos más intuitivos de esto son las diversas aplicaciones para el aprendizaje de refuerzo, como los automóviles autónomos y los helicópteros autónomos. En el aprendizaje por refuerzo, el algoritmo se entrena como un perro, recibiendo recompensas cuando hace las cosas bien y castigos cuando lo hace mal. Este método fue utilizado por los estudiantes de Stanford hace casi una década para entrenar un helicóptero controlado por radio para hacer todo tipo de acrobacias increíbles, incluyendo volteretas y revoloteando boca abajo. Simplemente no puede codificar explícitamente ese tipo de cosas porque hay demasiadas variables a considerar y demasiados matices en el modelo.
- ¿El problema NP es fácil de resolver?
- ¿Cómo empezaste con el aprendizaje automático?
- ¿Puede un solo GTX 970 ejecutar juegos de triple monitor?
- ¿Por qué el problema abierto de P vs PSPACE no es tan importante como P vs NP dado que NP está contenido en PSPACE?
- ¿Cuál es la diferencia entre evaluación y validación en el aprendizaje automático?