Deep neural networks require lots of examples to learn tasks like image classification, and object recognition. On the other hand, we humans can learn and identify object just by looking at it once. Is there any method that allows us to do object detection just with one example? I tried to search for it, but couldn't get any satisfactory solution.


Can you train an algorithm to recognize a class with a single example? Yes, this is called one-shot learning. However, you will of course have little guarantee that it works well.

But don't we humans learn from single examples too? Not really. You may recognize someone after seeing them only once, or even after only seeing a single picture of them. But that is after you have already learned to recognize many different people's faces, and after you have already learned to discern a myriad of other things from a human face.

An algorithm can do this too, through transfer learning, where an 'unrelated' task is used to learn the general task of image recognition. If you already know that all images in your task are faces, you can use that information to your advantage and use transfer learning based on other facial recognition data, or you could use an existing pre-trained network as a starting point.

Depending on the application you have in mind, it can in fact work reasonably well. See for example this example,$^\dagger$ of a network that can do 3D reconstruction of a face from a single example.

$\dagger$: Jackson et al. (2017): Large Pose 3D Face Reconstruction from a Single Image via Direct Volumetric Regression. International Conference on Computer Vision

| cite | improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.