
Neural Networks in JavaScript - chrtze
http://blog.webkid.io/neural-networks-in-javascript/
======
sarreph
From the article:

> Within the last years, multiple Javascript frameworks were developed that
> can help you to create, train and use Neural Networks for different
> purposes.

Due to the popular discourse on how 'unsuitable' JS is for anything but front-
end development°, does anybody have any insight on how the efficiency of JS
neural net libraries compares to that of the classic Python et al. tools? I've
been trying to get started in neural nets for a while now, but am curious as
to if learning it via JS will be a limiting factor that I will ultimately have
to switch to a more efficient/suited platform.

° Something that I do not agree with myself, as a Node.js and back-end JS
developer

~~~
netheril96
For any non trivial deep network, any CPU based training is horrendously slow,
even if multithreaded. So, Javascript is doomed at it. Python is not, as it
can interact with native binaries which may talk with the GPU.

> Something that I do not agree with myself, as a Node.js and back-end JS
> developer

NodeJS mostly works when CPU time is not the limiting factor, that is,
powering the Web. Neural network is the polar opposite.

~~~
lucideer
> Python is not, as it can interact with native binaries

It sounds like what you actually mean here is that Python is equally as
unsuitable and must instead use native binaries. Which one could just as
easily do with JS...

A reasonable argument could be that such native binaries are available in the
Python community and already in use as stable existing solutions, but that's
more about ecosystem than language suitability.

Additionally, while I'm not too sure what convnet, node-mind, brain.js, etc.
referenced in the article are using internally, there are gpu-oriented
solutions being written in JS like
[https://www.npmjs.com/package/weblas](https://www.npmjs.com/package/weblas)

~~~
adrianN
Python is dog slow. This is why it is used as a glue language for C modules.
This is the canonical way to do things. Javascript OTOH is decently fast on
its own, but you can't really interact with libraries written in C or FORTRAN,
as far as I know.

~~~
15155
[https://github.com/node-ffi/node-ffi](https://github.com/node-ffi/node-ffi)

~~~
adrianN
Cool, good to know.

------
tempodox
I heard there are people who doubt the existence of anything, hardware or
software, that was not written in JS.

