A machine learning enthusiast wrote about neural network image classification, centered on one post about a leopard print sofa.
HN commenters often cite the leopard sofa post as an example of how convolutional networks rely on texture and misclassify objects.
> In 2009 (ish) computer vision was a joke that could recognize very few objects a small percent of the time. Based on only simple color and texture, and sometimes basic shapes.
This is completely inaccurate and totally ignores the history of machine vision.
Computer vision was in no way a "joke" in 2009. OCR and manufacturing inspection systems have been successfully deployed since the 1980s. Neural networks were being applied to computer vision in autonomous vehicles in 1989: https://www.youtube.com/watch?v=ilP4aPDTBPE
> We already have super-human visual cortexes.
No we don't: http://rocknrollnerd.github.io/ml/2015/05/27/leopard-sofa.html (see also the HN discussion: https://news.ycombinator.com/item?id=9749660)
I remember reading about a similar thing that happened in the 1980s to some DARPA funded project that was trying to apply neural networks to tank/vehicle detection: the network got really good at recognizing the foliage that the training images had in them.
Robust scene understanding is a very hard problem and still far from solved. Again, research on this has been going on since the 1960s.
> But that's no concern, AI advances on from first principles. AI researchers invent better and better algorithms every day, without having a clue what neuroscientists are up to.
Do you realize what the 'neural' in neural networks refers to? People working on AI did not suddenly stop paying attention to neuroscience after Perceptrons were invented.
Sure, it wouldn't do any harm to move to relevant and well-sourced examples, or construct such demonstrations specifically for the class. This HN discussion alone has gathered several instances of classifiers overfitting or fitting to features that do not generalize outside the training set as well as it first may appear, e.g. the curious case of leopard sofa [1] linked by andreasvc [2] demonstrates more or less same problem as the tank parable (leopard detector performs quite well but in reality is not detecting the exact thing we'd expect).
However, also consider that the tank parable has circulated in textbooks and undergraduate introductory lectures for several decades. The main lesson I learned from the story that after training a model, one should validate it to see if it does generalize to detecting tanks both during night and daytime. Is it really a surprise that it might be difficult find egregiously naive mistakes?
[1] http://rocknrollnerd.github.io/ml/2015/05/27/leopard-sofa.html
[2] https://news.ycombinator.com/item?id=15486441
There are different kinds of attacks. This one, and related ones that minutely change the input, require you to know some details about the model. There are other kinds of attacks, where you don't need to know what the specific model is. For example, http://rocknrollnerd.github.io/ml/2015/05/27/leopard-sofa.html
The fundamental problem is that there are only so many training examples and layers that you can fit in a gpu's memory. The current state of the art neural networks work well for very specific tasks (ie handwriting recognition), but don't generalize.
Do you really think any reasonable person is going to mistake this couch for a cat?
https://rocknrollnerd.github.io/assets/article_images/2015-05-27-leopard-sofa/sofa.jpg
The software does:
https://rocknrollnerd.github.io/ml/2015/05/27/leopard-sofa.html
Sure, you can fool a human. But there are things AI is missing that would be embarrassing if a human made the same mistake. It's hard to say, based on anecdotes like this, how big that gap is, but it's there.
Let me remind you of sofas being classified as cats[0] and people being classified as gorillas[1]. You're overestimating the guesswork convnets are able to do, based on fragile training (which is still better guesswork than what previous models did).
[0] http://rocknrollnerd.github.io/ml/2015/05/27/leopard-sofa.html
[1] https://www.theverge.com/2015/7/1/8880363/google-apologizes-photos-app-tags-two-black-people-gorillas
Well, you can try this one, it is open source and based on Caffe : http://imgdetect.alexgirard.com/#
The image link: http://rocknrollnerd.github.io/assets/article_images/2015-05-27-leopard-sofa/sofa.jpg
It says 'studio couch, day bed' with 97% accuracy. Very likely because it is part of Imagenet.