Definitivamente la respuesta es un gran sí. Hasta ahora hay dos formas amplias de programación: 1. Declarativo. 2. Imperativo. En estilo declarativo, el programador dice qué se espera del programa y el programa genera esa salida. En el estilo imperativo, el programador diseña pasos cuidadosos que la máquina debe seguir para entregar la salida.
Podría haber un nuevo tipo de programación: aprendizaje automático. Aquí, en lugar de decir explícitamente qué salida se necesita o cuáles son los pasos para calcular, el programador solo puede dar ejemplos (datos de entrenamiento para aprender) y la máquina podría generalizar los datos de entrenamiento.
Cómo se logra esto aún no está claro. Hay mucho trabajo por hacer antes de que esto se convierta en realidad. Al igual que los lenguajes de programación funcionales (Scala, Erlang, etc.), alguien puede desarrollar lenguajes de programación de aprendizaje automático. Aunque R y Python son populares para el aprendizaje automático, no están diseñados exclusivamente para el aprendizaje automático.
- ¿Cómo se deriva la fórmula lagrangiana para resolver la máquina de vectores de soporte?
- ¿Qué es el filtrado colaborativo en términos simples?
- ¿Qué tan útiles son los límites de convergencia en la aplicación práctica del aprendizaje automático?
- ¿Por qué los LSTM generalmente se entrenan con backprop y no con EKF?
- Cómo hacer que un estudiante de pre-varsity entienda la diferencia entre estadística paramétrica y no paramétrica
Un verdadero enfoque de ML para la programación reducirá la dependencia de los sistemas basados en reglas. La mayoría de los sistemas actuales están basados en reglas. De hecho, incluso los algoritmos complejos tienden a ser reglas eventualmente codificadas. Eso tiene que desaparecer para liderar un mundo de programación basado en ML.
Aquí hay algunas ideas más sobre este tema: ¿Por qué el aprendizaje automático vale la pena?