Hay una infraestructura de ML mucho más pequeña disponible en Go. El más grande y mejor de ellos es, por supuesto, TensorFlow. Google los hace a ambos, pero Go es claramente un idioma secundario para TensorFlow. Hacen muchas advertencias sobre la estabilidad de la API y menos del 100% de cobertura de las funciones que están disponibles en Python. El entorno general de programación numérica y científica es más rico en Python, sin duda. Go tiene muchas tuberías agradables para hacer este tipo de programación, pero no hay un impulso real para construirlo.
Ahora a por qué. Si está haciendo ML exploratorio, es probable que su tiempo sea más valioso que el de la computadora. Estas personas necesitan minimizar el tiempo que invierten con código y maximizar el trabajo con los datos y resultados. Python es un gran lenguaje para eso. Ir es mejor que la mayoría, pero tiene algunos obstáculos. Un REPL hace una buena diferencia. Todo el concepto de cuaderno es otro. La escritura dinámica también es más fácil de usar para abordar muchos problemas. Si no eres un experto en informática, estas cosas son mucho más importantes que la velocidad de la carrera.
- ¿A qué distancia estamos de las interfaces utilizables cerebro-computadora?
- ¿Cuáles son los beneficios de Cloud9?
- ¿Hay muchos investigadores de aprendizaje automático que son escépticos sobre el éxito del aprendizaje profundo?
- ¿Qué tan bueno es el departamento de informática de la Universidad de Brown?
- ¿Cuál es el RPM del esquema de copia de Excel?
En cuanto a la velocidad, aquí no hay tanta diferencia como puedas pensar. Los cálculos subyacentes a menudo ocurren en bibliotecas altamente optimizadas que usan ambos idiomas. La diferencia en la velocidad es la preparación y el análisis de las llamadas ML. Esos son a menudo relativamente pequeños en comparación. Donde hay una necesidad de velocidad, el implementador puede usar herramientas como Cython o Numba, o contratar un programador para convertir el código a C / C ++.