News for hackers. Stuff that matters.
Re:Does Deep Learning Have Deep Flaws? by agibsonccc on Thursday June 19, 2014 @01:13PM (#7917159)
I think just like any machine learning algorithm, especially with computer vision, you need to prepare things properly. More robust data and images such as moving window on image patches and image rotations, even going as far as applying filters like sobel for edge detection will make your algorithm a lot better.

Any algorithms have weaknesses. It's a matter of being aware of them and compensating for them in your model, possibly by using another model.

Re:Does Deep Learning Have Deep Flaws? by jre on Thursday June 19, 2014 @02:05PM (#7917418)
The problem raised in the paper is that most of the time, you can safely assume that if you have a new data point that is very close to a bunch of correctly-classified data points and far away from points of different classes, the new data point will be correctly classified. In other words, you assume the classification probability is locally smooth.

The problem is that the adversarial examples they are able to come up with are very close to the original images, so this means the smoothness assumption seem to be invalid for deep learning models. As they put it in the paper : "Our main result is that for deep neural networks, the smoothness assumption that underlies many kernel methods does not hold."

It's going to be interesting to see what happen when other researchers try to replicate the results for other models and datasets.

Re:Does Deep Learning Have Deep Flaws? by darkmighty on Thursday June 19, 2014 @08:16PM (#7918969)
What if they introduced smoothness artifically? You can easily do that by averaging with a certain window function the decision value.

To accomplish that, for example, they could take perturbations of the input and then e.g. take a majority majority vote.

Re:Does Deep Learning Have Deep Flaws? by JabavuAdams on Thursday June 19, 2014 @01:36PM (#7917265)
The value proposition of deep learning is to eliminate these kind of hand-coded features and to discover the features automagically.

However, maybe there's a middle ground. I.e. maybe we don't need the more esoteric features that SIFT uses, but it just makes sense to do edge detection, and say a Fourier transform for audio.

Re:Does Deep Learning Have Deep Flaws? by agibsonccc on Thursday June 19, 2014 @02:19PM (#7917497)
I wrote [1], I'm plenty aware of the "feature discovery" that goes on, but it can still be an enhancer. See my recent talk[2] for a good overall idea of the situation.

Normalization and other data transforms are still required for discovery of features.

[1]: http://deeplearning4j.org/

[2]: https://www.youtube.com/watch?v=hykoKDl1AtE

Re:Does Deep Learning Have Deep Flaws? by wantrepeneur on Friday June 20, 2014 @03:54AM (#7919892)
That library looks like garbage. The website describes convnets as a "type of restricted Boltzmann machine." How can anyone trust a library with that level of misinformation?
Re:Does Deep Learning Have Deep Flaws? by agibsonccc on Friday June 20, 2014 @01:18PM (#7921660)
I appreciate the feedback. I need to clarify the implementation in DL4j in the documentation.

The impl is a convolutional RBM. That being said, where's your deep learning library? ;)

The documentation is still being worked on. If that's the only thing you can cherry pick from a new project, I must not be doing too bad.

Edit: Clarified. I know you're just a troll account, but I'll throw this out there anyways, I think anyone who judges the quality of a lib based on a 2 second reading isn't qualified to judge much. A lot of it does rely on me with the documentation, but I'd love to chat with you one on one if you think I'm not qualified. Trash me all day, I'll either learn something or embarrass you. Both are fine with me ;).

Re:Does Deep Learning Have Deep Flaws? by wantrepeneur on Friday June 20, 2014 @03:03PM (#7922271)
A lot of people like Torch. I haven't looked at pylearn2 in a while, but that might be good too. Then there are a few researcher libraries with limited documentation. Nitish Srivastava has his DeepNet library and George Dahl has gdbn and there are certainly a few others too. Who knows, maybe people will start contributing documentation.

I would probably recommend Torch at this point. The incentives don't exist for the experts to make really good open source projects and spend all the time required maintaining them and helping people with them.

Re:Does Deep Learning Have Deep Flaws? by agibsonccc on Friday June 20, 2014 @03:08PM (#7922296)
That's fine. I do this full time. Despite it being new, I'm coming at it from a stand point of providing a platform for newer users and apps around it. You would be surprised the demand for industry.

You're right about this which is why I started a company around it.

I've already talked with andrew ng and yoshua bengio. My incentives are different from there's, however, I do have their blessings to continue doing this.

I walked in to this expecting skeptics. That being said, I love deep learning as a field and will be implementing every possible neural net I can. Since my incentives are different, I can explore the different use cases with customers and help further the field in different directions that might not make sense for say baidu, facebook ,or google.

[1] http://www.skymind.io/

Re:Does Deep Learning Have Deep Flaws? by Punoxysm on Thursday June 19, 2014 @02:11PM (#7917454)
The true value proposition of deep learning is not to avoid hand-coded features, but to make better use of scale in data and computational resources.

More specifically, adding SIFT or edge detection to your raw pixel input will almost always strictly improve a deep model's performance (though they might be redundant) at a not-particularly-large computational cost.

It wouldn't solve the adversarial example problem though, except to the extent that it makes calculating gradients harder.

Re:Does Deep Learning Have Deep Flaws? by joe_the_user on Thursday June 19, 2014 @02:15PM (#7917474)
The value proposition of deep learning is to eliminate these kind of hand-coded features and to discover the features automagically.

Yes and just to clarify - this seems like an indication that however useful, deep learning can't follow through with that promise. And I think the ability to do this the key thing - all the approaches work at some level but without this "automagicity", each become hostage to brow-wrinkling experts who become the only one to understand the black-magic of algorithm tuning.