1. A computer-implemented method comprising: programmatically selecting, from a collection of images, a set of candidate images for a training set; providing the set of candidate images to a user for input; designating images from the set of candidate images for the training set based on input from the user; performing a recognition of an input image; wherein performing the recognition includes comparing the input image with one or more images of the training set, and determining, based at least in part on comparing the input image with the one or more images of the training set, that a confidence value of the recognition satisfies a defined threshold; providing a results of the recognition to the user, wherein the result includes a plurality of images that have a recognized object or face that is represented in an image of the training set; determining an error rate base on user feedback regarding the results, wherein the error rate is associated with a measurement of instances of erroneous recognition of the input image from the plurality of images provided with the result; and in response to the user feedback, adjusting the defined threshold based on the error rate.