+ 14

Can JavaScript catch upto Python in terms of Machine Learning?

Even though JavaScript have a few libraries for Machine Learning. Python is superior to JavaScript in terms of Machine Learning Libraries it have. But in future will JavaScript catch upto Python? What do you think?

8th Jun 2017, 6:34 PM
Sahil Sunny
Sahil Sunny - avatar
29 ответов
+ 39
Javascript, despite attention on timers and workers, is still single-threaded (automatically binds JS to one CPU...browsers cheat by giving tabs separate process threads). The only real way you get JS multiprocessing performance is by getting GPU (some of the CSS animations here trick the GPU into converting elements into animation shaders...making you -think- javascript is that fast). Multiprocessing/threading is good; you see it really well in GPU's; they're good at SIMD...Single Instruction, Multiple Data...and it's heavily leveraged for ML by: not javascript. A real critical example: A matrix with 100,000 rows (m) and 15 columns (n) can be O(1) with SIMD, while JS has to nest loops...so O(m * n). And this is a small matrix. ES8 (2017, JS core) aims to be asynchronous but there are still many old JS engines around (maybe some bright spark can fix that). Projects for JS to access the GPU for general computing exist (WebCL, like CUDA) but support...? WebCL test: https://highweb-project.github.io/WebCL-conformance/webcl-conformance-tests.html What's coming in ECMAScript 2017 (ES8): https://hackernoon.com/es8-feature-set-javascript-is-getting-asynchronous-2a8a43dd0cbc
10th Jun 2017, 4:57 AM
Kirk Schafer
Kirk Schafer - avatar
+ 18
Really depends on the community. Python was chosen because of its simple yet powerful syntax, which allowed the people with scientific/statistics/mathematics background to learn it quickly and build in it. Its versatility allowed for interoperational approach, which R lacked a bit. JavaScript would have to provide some kind of yet another advantage over Python for the people to switch to it, I think. So far it can be at par at most.
8th Jun 2017, 6:47 PM
Kuba Siekierzyński
Kuba Siekierzyński - avatar
+ 9
There are many reasons why Python is one of the best programing languages. The syntax of Python is really simple compared to other languages. It is a powerful language. In terms of machine learning, There are many well written machine learning libraries in Python. For example, Keras, Theano, Tensorflow, Scikitlearn, etc. Personally, I love Python the most.
9th Jun 2017, 1:20 PM
Fayaz Rahman
Fayaz Rahman - avatar
+ 4
JavaScript amd Python were designed for different purposes. Python has way too many good libraries available for Machine Learning already. I can see client-side JS working together with serverside Python. But it doesn't make sense to reinvent the wheel and write all ML libraries again, unless there are any performance or usage improvements JS can offer.
10th Jun 2017, 4:45 AM
Chinmay Desai
Chinmay Desai - avatar
+ 4
The answer ideally should be No, realistically I noticed the 90% users of js are mostly for web, I was just in one site to check out some js tutorial and it was termed lightweight, it is that way for a reason and maybe it's philosophy isn't for machine learning after all
10th Jun 2017, 7:18 AM
Onyedikachi Nnadi
Onyedikachi Nnadi - avatar
+ 4
Python is a really strong and easy-to-learn language.... It is also one of the reasons why Google is so strong........ But on the other hand, JavaScript is getting stronger and stronger day by day..... So it can be expected that JavaScript might be another machine learning language in the near future....
14th Jun 2017, 4:59 AM
Anurag Gulati
+ 3
Even though JavaScript have a few libraries for Machine Learning. Python is superior to JavaScript in terms of Machine Learning Libraries it have. But in future will JavaScript
14th Jun 2017, 6:46 AM
CHINTAN JAIN
CHINTAN JAIN - avatar
+ 3
I know javascript library for machine learning: synaptic.js
14th Jun 2017, 5:39 PM
Багдаулет Сагынов
Багдаулет Сагынов - avatar
+ 3
I think "No" because python is very handy and its great for data science...
20th Jun 2017, 10:25 PM
Anwar ul kader
Anwar ul kader - avatar
+ 2
Very informative comments.
15th Jun 2017, 1:54 AM
Junior Bulze
Junior Bulze - avatar
+ 2
@abhi I'm gladly will.
21st Jun 2017, 8:19 AM
Ore
Ore - avatar
+ 1
Too many answers which relate to different aspects, criteria or options of software viability focus on the synthetic and not the analytic. Early learners of software need to keep the boundaries of particular software in perspective.
15th Jun 2017, 7:55 AM
Junior Bulze
Junior Bulze - avatar
+ 1
no
16th Jun 2017, 7:18 PM
Raju Mondal
Raju Mondal - avatar
+ 1
听不懂
17th Jun 2017, 3:39 PM
Nadine
Nadine - avatar
+ 1
Yas.
20th Jun 2017, 5:20 AM
Fab.
Fab. - avatar
+ 1
What's machine learning?
21st Jun 2017, 8:17 AM
Ore
Ore - avatar
0
Yes but the enterprise for script is different so you have to start on the basics
10th Jun 2017, 7:00 PM
Jacob
Jacob - avatar
0
Java script should know all d manings of world
14th Jun 2017, 3:04 AM
Aabish
Aabish - avatar
0
software progress seems to me is towards more inclusion of more useless stuff. Frankly getting more and more clunky demanding bigger and faster computers. There isn't anything you can do with Python that you couldn't do with commodore64 basic, except on the C 64 you didn't have such a miriad of choices. x=x+1, but now you can x+=x too. Progress? No. Demands more system resources. I've always felt that software development should be towards leaner and meaner code. Just part of why I hate Microsoft, increasing system requirements with every generation
15th Jun 2017, 5:06 AM
Allan R Manchester
0
It depends upon your skills
16th Jun 2017, 4:01 PM
Shine Santhosh
Shine Santhosh - avatar