1
$\begingroup$

So this is an exam question:

Software for organizing pictures on a computer, nowadays, often contains AI methods that can, for instance, detect faces in a picture, and label those faces with the name of a person (if that person’s face was labeled on earlier pictures). Assume your software already contains a good face detector, but it has to learn how to associate faces with names. To that aim, it can present the user with pictures from the users collection, with faces indicated on them, and ask the user which person this is. Characterize this learning problem as precisely as possible.

This lead to some discussion as most of my classmates agreed on supervised classification due to the users input. I however think it's a trick question and that it's actually unsupervised clustering (clustering-based prediction).

My reasoning goes as follows; I think there's a reason why the application is explained in detail, given that it's about organizing by faces and thus target classes (and amount of them) are not know in advance (some faces are only seen once, new faces don't have to belong to previous seen faces, etc), it just seems more like a clustering problem. This software will often only ask you to identify only a few faces, showing that the main task of the software is to find similar faces (cluster) which is not done using your input (hence unsupervised), the latter will merely help to merge some clusters every so often. I see that the user identifying a person as "John" will create a local model of that cluster that every person is "John". This local model is then used for new pictures in a clustering-based prediction.

The reasoning is partly inspired by what Craig Federighi said in this interview

$\endgroup$
0
$\begingroup$

Asking the user to label faces means that it is supervised.

I don't see an explicit requirement to, e.g., cluster images and ask the user to label only clusters (which probably is too hard to do). I also do not see any reinforcement, or active / semi-supervised things (yes, the user will not label all the data, but I don't see an interactice feedback loop mentioned, where the algorithm would select images it needs to have labeled). But if any, active semi-supervised classification may be appropriate.

$\endgroup$
1
$\begingroup$

I highly doubt that the purpose of such a system would be "to find similar faces", this doesn't make any sense. Its purpose is to classify known individuals that appear on unseen photos, i.e. identify the same pattern (face) in unseen data. The act of asking the user for the names of individuals in some photos is the phase of preparing a training set by assigning labels to its inputs. When new photos of the already known individuals arrive, the trained model will associate labels (names) accordingly. This is purely a supervised classification problem.

If the system was in fact supposed to "find similar faces", e.g. guess who is related to whom, then there would be an unsupervised learning element there, but like I said it's highly doubtful that this is your business case here. There is also an unsupervised element in the face detector system, but it's specifically stated that it is outside the scope of your problem.

$\endgroup$
  • $\begingroup$ How would the system differentiate known from unknown faces when given an unknown face? Isn't the fact that every example has a class a basic assumption of every classification problem? And for most faces it would only ask you once who it is which would mean very little labeled examples per class? Maybe I shouldn't think to much about the practical implementation and more about what is actually stated ... $\endgroup$ – Lejafar Jan 12 '18 at 10:17
  • 1
    $\begingroup$ It is nowhere stated in you problem description that every individual will appear in only one photo (that wouldn't be at all realistic). Input samples (individuals) are associated to class labels (names), this is your training set right there. If you use faces of unknown individuals (class labels not in the training set) and try to predict their names, then your model will obviously misclassify them. That would be a semi-supervised scenario but it is nowhere implied in your description. $\endgroup$ – Digio Jan 12 '18 at 10:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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