IP Library Granted Patent US 10,977,529
Granted Patent B2
US 10,977,529 · App. 16/846,924 · Granted Apr 13, 2021

Processing images using deep neural networks

Inventors: Christian Szegedy (Mountain View, CA); Vincent O. Vanhoucke (San Francisco, CA)
Assignee: Google LLC
G06K9/66G06N3/0454G06N3/063G06N3/084
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,977,529
App. No.
16/846,924
Granted
Apr 13, 2021
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for image processing using deep neural networks. One of the methods includes receiving data characterizing an input image; processing the data characterizing the input image using a deep neural network to generate an alternative representation of the input image, wherein the deep neural network comprises a plurality of subnetworks, wherein the subnetworks are arranged in a sequence from lowest to highest, and wherein processing the data characterizing the input image using the deep neural network comprises processing the data through each of the subnetworks in the sequence; and processing the alternative representation of the input image through an output layer to generate an output from the input image.

Claims (26)

1. A system comprising one or more computers and one or more storage devices storing instructions that, when executed by the one or more computers, cause the one or more computers to implement:

a deep neural network configured to process data characterizing an input image to generate an alternative representation of the input image, the deep neural network comprising:

a plurality of subnetworks arranged in a sequence from lowest to highest, the plurality of subnetworks configured to process the data according to the sequence, the plurality of subnetworks comprising a plurality of module subnetworks, each of the module subnetworks comprising:

a pass-through convolutional layer configured to process a preceding output representation generated by a preceding subnetwork in the sequence and generate a pass-through output,

a plurality of groups of neural network layers configured to process the preceding output representation to generate a respective group output for each of the plurality of groups, wherein a first group of the plurality of groups includes at least two successive convolutional layers, a second group of the plurality of groups includes at least two successive convolutional layers, and a third group of the plurality of groups includes a pooling layer followed by a 1×1 convolutional layer, and

a concatenation layer configured to concatenate the pass-through output and the group outputs to generate an output representation for the module subnetwork; and

an output layer configured to process the alternative representation of the input image to generate an output from the input image.

2. The system of claim 1 , wherein the pass-through convolutional layer is a 1×1 convolutional layer.

3. The system of claim 1 , wherein the at least two successive convolutional layers included in the first group of the plurality of groups comprises a 1×1 convolutional layer followed by a 3×3 convolutional layer.

4. The system of claim 3 , wherein the at least two successive convolutional layers included in the second group of the plurality of groups comprises a 1×1 convolutional layer followed by a 3×3 convolutional layer.

5. The system of claim 1 , wherein the at least two successive convolutional layers included in the first group of the plurality of groups of neural network layers includes a 1×1 convolutional layer followed by a 1×7 convolutional layer.

6. The system of claim 5 , wherein the at least two successive convolutional layers included in the second group of the plurality of groups of neural network layers includes a 1×1 convolutional layer followed by a 1×7 convolutional layer.

7. The system of claim 1 , wherein the at least two successive convolutional layers included in the first group of the plurality of groups of neural network layers includes a 1×1 convolutional layer followed by a 1×3 convolutional layer.

8. The system of claim 7 , wherein the at least two successive convolutional layers included in the second group of the plurality of groups of neural network layers includes a 1×1 convolutional layer followed by a 1×3 convolutional layer.

9. The system of claim 1 , wherein the output layer is a softmax output layer.

10. The system of claim 1 , wherein the plurality of subnetworks comprises a training subnetwork that includes one or more average pooling layers.

11. The system of claim 1 , wherein the plurality of subnetworks comprise an additional module subnetwork, the additional module subnetwork comprising:

a second plurality of groups of neural network layers configured to process the preceding output representation to generate a respective group output for each of second plurality of groups, wherein a first group of the second plurality of groups includes a 1×1 convolutional layer followed by a 3×3 convolutional layer, a second group of the second plurality of groups includes a 1×1 convolutional layer followed by a 1×7 convolutional layer, and a third group of the second plurality of groups includes a max-pooling layer; and

a concatenation layer configured to concatenate the outputs of the second plurality of groups of neural network layers to generate an output representation for the additional module subnetwork.

12. The system of claim 11 , wherein the max-pooling layer is a 3×3 max-pooling layer.

13. The system of claim 1 , wherein the plurality of subnetworks comprises one or more initial convolutional layers.

14. The system of claim 1 , wherein the alternative representation of the input image is an image classification of the input image.

15. The system of claim 1 , wherein the alternative representation of the input image includes data for one or more objects detected in the input image, including a location of the one or more objects in the input image or a size of the one or more objects in the input image.

16. The system of claim 1 , wherein the plurality of subnetworks comprise an additional module subnetwork, the additional module subnetwork comprising:

a second plurality of groups of neural network layers configured to process the preceding output representation to generate a respective group output for each of second plurality of groups, wherein a first group of the second plurality of groups includes a 1×1 convolutional layer followed by a 3×3 convolutional layer, a second group of the second plurality of groups includes a 3×3 convolutional layer, and a third group of the second plurality of groups includes a 3×3 max-pooling layer; and

a concatenation layer configured to concatenate the outputs of the second plurality of groups to generate an output representation for the additional module subnetwork.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2020
From: SZEGEDY, CHRISTIAN; VANHOUCKE, VINCENT O.
To: GOOGLE INC.
Reel/Frame 052770/0946 →
CHANGE OF NAME Recorded May 27, 2020
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 052769/0638 →
Continuity (5)
Continuation 15868587 · Jan 11, 2018
Continuation 15649947 · Jul 14, 2017
Continuation 14839452 · Aug 28, 2015
Provisional Application 62043865 · Aug 29, 2014
Related Publication 20200311491A1 · Oct 1, 2020
Cited By (1)
US 12,620,408