1. A computing device, comprising: one or more processors; and memory storing instructions that, when executed by the one or more processors, cause the computing device to: determine a plurality of respective visual words for each image in a first set of images, each visual word describing an area of the image, wherein each image in the first set of images is associated with a description that includes a brand name; determine a plurality of respective visual words for each image in a second set of images, each visual word describing an area of the image, wherein each image in the second set of images is associated with a description that does not include the brand name; determine a respective first count for each co-occurrence of visual words in the first set of images, wherein each co-occurrence is determined based on a pairwise comparison between images in the first set of images; determine a respective second count for each co-occurrence of visual words in the second set of images, wherein each co-occurrence is determined based on a pairwise comparison between images in the first set of images and images in the second set of images; determine, for each visual word of the first set of images and each visual word of the second set of images, a respective likelihood that the brand name is associated with the visual word based at least in part on the respective first counts and the second counts; determine a plurality of visual words that each satisfy a threshold likelihood that the brand name is associated with the visual word; determine respective regions in a first image of the first set of images that correspond to each of the plurality of visual words that each satisfy the threshold likelihood; and determine a portion of the first image that is associated with the brand name, wherein the portion encompasses at least some of the respective regions in the first image that correspond to visual words in the plurality of visual words.
2. The computing device of claim 1 , wherein determining the plurality of respective visual words for each image in the first set of images and each image in the second set of images further causes the device to: identify a plurality of feature points in each image of the first set of images, each feature point corresponding to a specific point in the corresponding image from the first set of images; identify a plurality of feature points in each image of the second set of images, each feature point corresponding to a specific point in the corresponding image from the second set of images; calculate, for each image in the first set of images, respective feature vectors based at least in part on the feature points in the corresponding image from the first set of images; calculate, for each image in the second set of images, respective feature vectors based at least in part on the feature points in the corresponding image from the second set of images; cluster, for each image in the first set of images and each image in the second set of images, the respective feature vectors into a plurality of respective areas; assigning, to each image in the first set of images, respective visual words based at least in part on the clustering; and assigning, to each image in the second set of images, respective visual words based at least in part on the clustering.