Identification – especially when based on unstructured data such as audio or vision – is a problem that often requires sophisticated machine learning methods. The problem of identification is distinct from both image recognition and visual object detection. Where image recognition and visual object detection work on classes of images, identification deals with particular instances.

Where an object detector might be trying to detect dogs in an image, an identification system will be looking for a particular dog and work to tell it apart from other dogs. Similarly, one might do face detection: that is, detect faces in images and return their coordinates; or identification: trying to recognize a particular individual by their particular face.

The special challenge in identification systems is that the number of instances is generally much larger than the number of classes: it can be virtually unbounded and there does not even have to be a fixed number of them at design time (e.g. new customers buying smartphones with face recognition capabilities). These problems will therefore usually need different approaches than image recognition and visual object detection do.