Creo que un “lenguaje” con el que puede estar satisfecho es el de los modelos generativos y, en particular, los modelos gráficos probabilísticos.
Los modelos gráficos son para el aprendizaje automático casi lo que los diagramas de entidad-relación para las bases de datos o UML son para la programación orientada a objetos, le dan un modelo de sus algoritmos. Un ejemplo del modelo gráfico subyacente a la asignación de Dirichlet latente (imagen tomada del blog de @ shuyo: http://shuyo.wordpress.com/2011/…)
Empieza escribiendo variables relevantes para sus problemas. Estos generalmente están segmentados en cosas que puede observar y variables latentes que corresponden a causas ocultas subyacentes. El segundo paso es tratar de modelar la estructura de relación probabilística entre estas variables. Por lo general, significa relaciones de independencia condicional, que pueden ilustrarse como gráficos de diferente tipo. De ahí el nombre de modelos gráficos. Una vez que haya especificado su modelo probabilístico de esta manera, hay varios métodos de inferencia que puede elegir, que varían en velocidad y precisión. Los ejemplos incluyen propagación de expectativas, MCMC, aprendizaje de máxima probabilidad, EM, etc.
- ¿Cómo se puede utilizar el aprendizaje automático para construir un sistema de predicción del comportamiento del cliente?
- ¿Qué se considera estado de arte para la traducción automática neuronal?
- ¿Qué tipos de imágenes se usan generalmente para la clasificación del uso del suelo?
- ¿Cuál es el tamaño del conjunto de datos de Cifar?
- ¿Cuáles son algunas buenas ideas para proyectos de aprendizaje automático? Yo uso Python
Hay varios buenos libros que puedes leer sobre esto, y el aprendizaje automático probabilístico en general. Los exámenes son:
Modelos gráficos probabilísticos: principios y técnicas http://amzn.to/MgiZ2F
Razonamiento bayesiano y aprendizaje automático [pdf gratuito] http://web4.cs.ucl.ac.uk/staff/D…
Reconocimiento de patrones y aprendizaje automático http://research.microsoft.com/en…
También, vea las conferencias de Zoubin Ghahramani aquí http://videolectures.net/mlss07_…
Si tiene interés y experiencia en lenguajes de programación, como se desprende de su pregunta, examinaría los llamados lenguajes de programación probabilísticos como infer.net o CHURCH. Puede que no sea la herramienta que quiera usar todos los días para resolver problemas, pero son buenos para ilustrar el concepto. El punto es que aquí escribes un programa, que expresa cómo generarías un conjunto de datos como el que tienes, luego un compilador lo compila en otro programa que implementa un algoritmo de aprendizaje automático para inferencia.
infer.net: http://research.microsoft.com/en…
IGLESIA: http://projects.csail.mit.edu/ch…