CATEGORY LEARNING NEURAL NETWORKS
First Claim
1. A method, comprising:
- training a categorization neural network to determine trained values of the categorization neural network parameters from initial values of the categorization neural network parameters, comprising, at each of a plurality of iterations;
processing an image depicting an object using the categorization neural network in accordance with current values of categorization neural network parameters to generate an output comprising;
(i) a current prediction for whether the image depicts an object or a background region, and (ii) a current embedding of the image;
determining a plurality of current cluster centers based on the current values of the categorization neural network parameters, wherein each cluster center represents a respective semantic category;
determining a gradient of an objective function that includes a classification loss and a clustering loss, wherein the classification loss depends on the current prediction for whether the image depicts an object or a background region, and wherein the clustering loss depends on a similarity between the current embedding of the image and the current cluster centers; and
determining an update to the current values of the categorization neural network parameters from the gradient;
determining a plurality of final cluster centers based on the trained values of the categorization neural network parameters;
for each of a plurality of images, processing the image using the categorization neural network in accordance with the trained values of the categorization neural network parameters to generate a final embedding of the image; and
determining a clustering of the images into a plurality of semantic categories using the final embeddings of the images and the final cluster centers.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for determining a clustering of images into a plurality of semantic categories. In one aspect, a method comprises: training a categorization neural network, comprising, at each of a plurality of iterations: processing an image depicting an object using the categorization neural network to generate (i) a current prediction for whether the image depicts an object or a background region, and (ii) a current embedding of the image; determining a plurality of current cluster centers based on the current values of the categorization neural network parameters, wherein each cluster center represents a respective semantic category; and determining a gradient of an objective function that includes a classification loss and a clustering loss, wherein the clustering loss depends on a similarity between the current embedding of the image and the current cluster centers.
51 Citations
20 Claims
-
1. A method, comprising:
-
training a categorization neural network to determine trained values of the categorization neural network parameters from initial values of the categorization neural network parameters, comprising, at each of a plurality of iterations; processing an image depicting an object using the categorization neural network in accordance with current values of categorization neural network parameters to generate an output comprising;
(i) a current prediction for whether the image depicts an object or a background region, and (ii) a current embedding of the image;determining a plurality of current cluster centers based on the current values of the categorization neural network parameters, wherein each cluster center represents a respective semantic category; determining a gradient of an objective function that includes a classification loss and a clustering loss, wherein the classification loss depends on the current prediction for whether the image depicts an object or a background region, and wherein the clustering loss depends on a similarity between the current embedding of the image and the current cluster centers; and determining an update to the current values of the categorization neural network parameters from the gradient; determining a plurality of final cluster centers based on the trained values of the categorization neural network parameters; for each of a plurality of images, processing the image using the categorization neural network in accordance with the trained values of the categorization neural network parameters to generate a final embedding of the image; and determining a clustering of the images into a plurality of semantic categories using the final embeddings of the images and the final cluster centers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system, comprising:
-
a data processing apparatus; a memory in data communication with the data processing apparatus and storing instructions that cause the data processing apparatus to perform operations comprising; training a categorization neural network to determine trained values of the categorization neural network parameters from initial values of the categorization neural network parameters, comprising, at each of a plurality of iterations; processing an image depicting an object using the categorization neural network in accordance with current values of categorization neural network parameters to generate an output comprising;
(i) a current prediction for whether the image depicts an object or a background region, and (ii) a current embedding of the image;determining a plurality of current cluster centers based on the current values of the categorization neural network parameters, wherein each cluster center represents a respective semantic category; determining a gradient of an objective function that includes a classification loss and a clustering loss, wherein the classification loss depends on the current prediction for whether the image depicts an object or a background region, and wherein the clustering loss depends on a similarity between the current embedding of the image and the current cluster centers; and determining an update to the current values of the categorization neural network parameters from the gradient; determining a plurality of final cluster centers based on the trained values of the categorization neural network parameters; for each of a plurality of images, processing the image using the categorization neural network in accordance with the trained values of the categorization neural network parameters to generate a final embedding of the image; and determining a clustering of the images into the plurality of semantic categories using the final embeddings of the images and the final cluster centers. - View Dependent Claims (14, 15, 16)
-
-
17. One or more computer storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:
-
training a categorization neural network to determine trained values of the categorization neural network parameters from initial values of the categorization neural network parameters, comprising, at each of a plurality of iterations; processing an image depicting an object using the categorization neural network in accordance with current values of categorization neural network parameters to generate an output comprising;
(i) a current prediction for whether the image depicts an object or a background region, and (ii) a current embedding of the image;determining a plurality of current cluster centers based on the current values of the categorization neural network parameters, wherein each cluster center represents a respective semantic category; determining a gradient of an objective function that includes a classification loss and a clustering loss, wherein the classification loss depends on the current prediction for whether the image depicts an object or a background region, and wherein the clustering loss depends on a similarity between the current embedding of the image and the current cluster centers; and determining an update to the current values of the categorization neural network parameters from the gradient; determining a plurality of final cluster centers based on the trained values of the categorization neural network parameters; for each of a plurality of images, processing the image using the categorization neural network in accordance with the trained values of the categorization neural network parameters to generate a final embedding of the image; and determining a clustering of the images into the plurality of semantic categories using the final embeddings of the images and the final cluster centers. - View Dependent Claims (18, 19, 20)
-
Specification