Como Trevor Sullivan ya ha dicho Python, y ha indicado la amplia gama de bibliotecas disponibles para los programadores de Python, creo que no es necesario explicarlo más. Sin embargo, aquí hay algunas otras opciones:
- Scala: Puede que no lo parezca, pero Scala está a la vanguardia de la revolución del análisis de datos, porque es el lenguaje utilizado para programar Apache Spark, que se considera ampliamente el marco de transmisión de datos más prometedor que existe ahora. Scala es un lenguaje de tipo estático, tiene una sintaxis más fácil y está diseñado teniendo en cuenta el procesamiento paralelo. Se ejecuta en la máquina virtual Java relativamente rápida (que alguna vez fue lenta pero en los últimos años se ha vuelto tan rápida como cualquier otro marco). También tiene la ventaja de poder usar las bibliotecas ya construidas para Java. Spark también tiene MLlib, que es una biblioteca de aprendizaje automático que implementa enfoques comunes de aprendizaje automático (algoritmos de clasificación y regresión típicos y una o dos variantes avanzadas)
- R: El lenguaje R para computación estadística es un lenguaje de programación antiguo pero útil para construir aplicaciones intensivas en datos y para hacer ciencia de datos. En este contexto, las bibliotecas de aprendizaje automático que ya están presentes en R se pueden usar para convertir el código ML muy rápido (ciclo de producción en cuanto al tiempo). La funcionalidad de alto nivel de R y el hecho de que está diseñado para los estadísticos hace que sea un lenguaje útil para aquellos que no son realmente programadores pero que tienen antecedentes estadísticos y quieren usar el aprendizaje automático para resolver problemas.
- Java: todavía se están desarrollando bibliotecas en Java para programar redes neuronales, aunque no hay muchas aplicaciones específicas de datos que se centren en ML aparte de lo que ya existe dentro de Hadoop y la pila de tecnología relacionada.