¿Hay algún JavaScript Ninja por ahí escribiendo el programa Machine Learning en JavaScript?

Pidió responder,

No soy un ninja javascript. Ni un gurú de aprendizaje automático.

Pero con la experiencia con estos idiomas, diré que cualquier ‘ninja’ de javascript que escriba un aprendizaje automático o un algoritmo estadístico o computacional en javascipt ya no es un ‘ninja’ sino un imbécil de javascript.

Javascript tarda demasiado en computar las cosas. Javascript es ideal para representar tablas grandes que son procesadas por otro idioma en el back-end. Pero para hacer búsquedas, clasificaciones y todo tipo de combinaciones y combinaciones en una tabla grande, json, xml utilizando javacript dentro de un navegador … pfffftt … Uno tiene que ser un tipo especial de estúpido. R, matlab, etc. lleva bastante tiempo para hacer grandes cálculos … javascript te frustrará cuando algún módulo no funcione, y tendrás que depurar.

Hablando de depuración … no me gusta NUNCA intente depurar algoritmos computacionales en javascript. Te llevará una eternidad encontrar un error. La salida de estos (aprendizaje de máquina en su caso) son números y no estados de página o accesorios. Estos (accesorios y estados) son más fáciles de depurar utilizando una herramienta de desarrollo del navegador o usando el propio navegador. Para eso está diseñado javascript. Pero cuando se trata de un número en una tabla , javascript y html creen que hicieron el trabajo correctamente, lo cual es representar en la tabla. No les importará que el resultado sea incorrecto. Por lo tanto, debe buscar en el código de línea 300–3000 para eso (por ejemplo: VarMatrix.SomeModule.SomeCrap.Var4677.Value + VarMatrix.SomeModule.SomeCrap.Var4633.Value debe ser VarMatrix.SomeModule.SomeCrap. SomeModule.SomeCrap.Var4633.Value ) error difícil de alcanzar. ¡Buena suerte con eso!

Por no mencionar que javascript es un lenguaje único que no necesita una declaración explícita de tipos de datos. Vas a ver un montón de parseFloat () s. Largas colas con docenas de parseFloat () s te molestarán. Una vez más, la depuración con esta característica es un tipo especial de tortura. Si pierde una declaración y una de las variables en el cálculo no es un número, R dará un error directo de que es NaN. Puedes rastrear eso donde está. Javascript solo asumirá que es una cadena y procederá como si nada estuviera mal. Como se mencionó anteriormente, tendrá que recorrer manualmente 300–3000 + líneas de código para ese parseFloat () que falta. ¡¡¡Increíble!!! Además, javacsript tiene algunas otras peculiaridades que lo convierten en una opción muy mala para ejecutar cálculos y simulaciones.

No seas esa persona.

Hay algunas bibliotecas para JavaScript que hacen ML. Si desea un clasificador binario basado en características, pruebe PredictScript. Evita las limitaciones de JS al empujar todo el trabajo de datos / capacitación / alojamiento en la nube. Fácil de usar, pero limitado en características.

Si eres programador, no hay ningún problema. Pero, si no es así, entonces puede ser difícil.

Básicamente, R, Python, MATLAB vienen con bibliotecas de ML ya implementadas.

PD: – No sé mucho JavaScript.