1. A system for identifying a particular data object of a data type in a database comprising data objects of the data type, the system comprises: one or more processors configured to: compose a search query to identify a candidate data object being a candidate for the particular data object, wherein the one or more processors receive as an input an image and compose the search query from the received image to include a feature matrix; identify, based on the search query, the candidate data object in the database by comparing feature matrices of images in a database with the feature matrix of the search query and identifying the candidate image as an image in the database with a feature matrix that is similar to the feature matrix of the search query; present the candidate data object to the user; receive user feedback on the relevance or irrelevance of at least two segments of a plurality of segments of the same candidate data object, wherein the at least two segments of the plurality of segments of the candidate data object includes user defined segments of the candidate data object, wherein at least one of the at least two segments is relevant and the other of the at least two segments is irrelevant, wherein each of the user defined segments is a different defined portion of the image that pertains to a particular feature and the at least one of the at least two segments is deemed relevant in response to the user feedback and the other of the at least two segments is deemed irrelevant in response to the user feedback; and identify an improved candidate data object in response to the received user feedback, wherein the improved candidate data object is an improved candidate for the particular data object.