Live data from Hacker News

Machine Learning for Developers

xyclade.github.io

81–90 of 99 posts

Re: Machine Learning for Developers

#81
post #41

Earlier quoted context omitted.

I feel that much like programming in the corporate world, Python is often used to teach ML while Java is more often used to implement it.

Two out of three most popular deep learning libraries have python front end (theano and caffe). The third one (torch) uses Lua.

There is a large amount of research, including some hedge fund models, that are exclusively using Clojure, on the JVM, for machine learning. Just because public libraries might often be in Python doesn't mean it is the language of choice for the big guys (it often isn't). You'd be surprised how much in-house ML stuff is done on the JVM.

Re: Machine Learning for Developers

#82

I would love to see something like this in Elixir :)

That was my first thought as well, but as I understand it Elixir seems to faulter when it comes to computationally heavy stuff, but perhaps it could make up for it with it's amazing concurrency and scalability?

Erlang has good C/OS Process interop so the best route would probably be to capitalize on something written in a faster language to do the raw processing and have Elixir there to coordinate resources and report/store results

Re: Machine Learning for Developers

#83
post #41

Earlier quoted context omitted.

Two out of three most popular deep learning libraries have python front end (theano and caffe). The third one (torch) uses Lua.

There is a large amount of research, including some hedge fund models, that are exclusively using Clojure, on the JVM, for machine learning. Just because public libraries might often be in Python doesn't mean it is the language of choice for the big guys (it often isn't). You'd be surprised how much in-house ML stuff is done on the JVM.

I guess I should have clarified that by ML I really meant DL, as this is the most important area of ML currently. Is there anyone writing large CNNs or RNNs using Java or Scala or Clojure? Are there any widely used DL libraries based on those languages?

Re: Machine Learning for Developers

#84
post #83

Earlier quoted context omitted.

There is a large amount of research, including some hedge fund models, that are exclusively using Clojure, on the JVM, for machine learning. Just because public libraries might often be in Python doesn't mean it is the language of choice for the big guys (it often isn't). You'd be surprised how much in-house ML stuff is done on the JVM.

I guess I should have clarified that by ML I really meant DL, as this is the most important area of ML currently. Is there anyone writing large CNNs or RNNs using Java or Scala or Clojure? Are there any widely used DL libraries based on those languages?

There's definitely a popular DL library in Java:

http://deeplearning4j.org/

And at least one seemingly fairly current NN library:

https://github.com/ivan-vasilev/neuralnetworks

An an older "pre deep learning" NN library called Neuroph.

http://neuroph.sourceforge.net/

and another older one called JOONE:

http://sourceforge.net/projects/joone/files/joone-engine/

So in general, the answer is "yes" as to whether or not people are doing Neural Network / DL work in Java. I can't tell you how much such work is happening, or really compare Java/Scala to Python, etc., at that level of granularity though.

And just for a little bit more perspective: IBM Watson is (or was) apparently largely Java based:

http://www.drdobbs.com/jvm/ibms-watson-written-mostly-in-jav...

Re: Machine Learning for Developers

#85
post #46

Earlier quoted context omitted.

The difference is that the software or the elevator will work but the statistical model is wrong and doesn't work. It is like the elevator only lift people above 120 and below 90 and for the others it just don't work or take you to the wrong floor.

> The difference is that the software... will work Lots of software doesn't work. Is there a substantial difference between putting an overfitting model in production, and putting a poorly tested program in production?

That the program is likely to fail loudly and obviously, but the overfitted model will just sit there being subtly yet perniciously much wronger than you think is, forever.

Re: Machine Learning for Developers

#86
post #83

Earlier quoted context omitted.

I guess I should have clarified that by ML I really meant DL, as this is the most important area of ML currently. Is there anyone writing large CNNs or RNNs using Java or Scala or Clojure? Are there any widely used DL libraries based on those languages?

There's definitely a popular DL library in Java: http://deeplearning4j.org/ And at least one seemingly fairly current NN library: https://github.com/ivan-vasilev/neuralnetworks An an older "pre deep learning" NN library called Neuroph. http://neuroph.sourceforge.net/ and another older one called JOONE: http://sourceforge.net/projects/joone/files/joone-engine/ So in general, the answer is "yes" as to whether or not pe…

Ok, I see. Though I'm not sure why anyone who wants to write DL code today would go with anything other than Python on top of CUDA, or just using one of three main DL libraries (Caffe, Torch, Theano).

Re: Machine Learning for Developers

#87
post #3

Java and Scala? Who uses that in ML? Python has long been the best language for ML, with some competition from Matlab.

Our data scientists are learning Scala and Spark (MLLib) as a replacement for Python and R. So sure, maybe Python has long been the "best language for ML" but also one time in the not so far past "MySpace was the best social network"

What kind of tasks your data scientists are working on?

Re: Machine Learning for Developers

#88
post #59
post #42

Earlier quoted context omitted.

Isn't that just the plot of Minority Report? Think of the possibilities of machine learning for detecting precrime!

It's already here. See http://www.predpol.com/

I think the OP meant the use of ML to predict and individual committing a crime, and jailing/arresting them based on that.

Re: Machine Learning for Developers

#89

Is anyone else at least a bit worried about a bunch of developers running around doing "machine learning" without much understanding of mathematics and probability? E.g. consider the creation of fragile models that overfit data being used in finance, infrastructure, medicine, etc.

The main goal of this article is to make Developers understand some of the basics of machine learning, not to make everyone think they can be an expert data scientist after reading just this one article online. This is also stated clearly throughout the article, as there are no golden rules for finding good features, getting the data right, etcetera. Given this I don't think you should be worried about this. Additionally lots of testing and validation mechanisms and people are involved in complex systems that you state to be concerned about.

Re: Machine Learning for Developers

#90
post #60

Earlier quoted context omitted.

Nah. The only topic I would be worried about is cryptography, when used in a non-learning context. That has a high potential to cause harm. Otherwise with machine learning, I don't see how it is necessarily more dangerous than any other software -- databases, network protocols and so on...

Databases, networking protocols and so forth are hardened, relatively speaking (less the occasional heart bleed or PoW-blockchain fork). If you have autonomous systems built on top of hardened infrastructure but behaving according to ML models, the impact of their wrong doings is exponentially higher. It's about top-level autonomy through ML models really: from flash crashes to (future) autopilots. The same effect of…

On top of this, I would add that general trends in information workflow / technological advancement, which ML models like this running the world would certainly fall under, are as close to unstoppable forces as we've ever seen due to the complexity and power of the smaller trends that cause them.

Basically, if this is going to become a thing, then there is no stopping it.

Post reply on HN