Image classification neural networks

US10460211B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10460211-B2
Application numberUS-201615395530-A
CountryUS
Kind codeB2
Filing dateDec 30, 2016
Priority dateFeb 18, 2016
Publication dateOct 29, 2019
Grant dateOct 29, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A neural network system that includes: multiple subnetworks that includes: a first subnetwork including multiple first modules, each first module including: a pass-through convolutional layer configured to process the subnetwork input for the first subnetwork to generate a pass-through output; an average pooling stack of neural network layers that collectively processes the subnetwork input for the first subnetwork to generate an average pooling output; a first stack of convolutional neural network layers configured to collectively process the subnetwork input for the first subnetwork to generate a first stack output; a second stack of convolutional neural network layers that are configured to collectively process the subnetwork input for the first subnetwork to generate a second stack output; and a concatenation layer configured to concatenate the pass-through output, the average pooling output, the first stack output, and the second stack output to generate a first module output for the first module.

First claim

Opening claim text (preview).

What is claimed is: 1. A neural network system implemented by one or more computers, wherein the neural network system is configured to receive an image and to generate a classification output for the input image, and wherein the neural network system comprises: a plurality of subnetworks arranged in a stack on top of each other, wherein each subnetwork is configured to process a subnetwork input to generate a subnetwork output and to provide the subnetwork output as input to another subnetwork above the subnetwork in the stack, and wherein the plurality of subnetworks includes: a first subnetwork comprising a plurality of first modules, each first module comprising: a first pass-through convolutional layer configured to process the subnetwork input for the first subnetwork to generate a first pass-through output; a first average pooling stack of neural network layers, wherein the layers in the first average pooling stack are configured to collectively process the subnetwork input for the first subnetwork to generate a first average pooling output; a first stack of convolutional neural network layers, wherein the layers in the first stack are configured to collectively process the subnetwork input for the first subnetwork to generate a first stack output; a second stack of convolutional neural network layers, wherein the second stack comprises a 1×1 convolutional layer immediately followed by a 3×3 convolutional layer immediately followed by a 3×3 convolutional layer, and wherein the layers in the second stack are configured to collectively process the subnetwork input for the first subnetwork to generate a second stack output; and a first concatenation layer configured to concatenate the first pass-through output, the first average pooling output, the first stack output, and the second stack output to generate a first module output for the first module; and a second subnetwork comprising second modules, each second module comprising: a second pass-through convolutional layer configured to process the subnetwork input for the second subnetwork to generate a second pass-through output; a second average pooling stack of neural network layers, wherein the layers in the second average pooling stack are configured to collectively process the subnetwork input for the second subnetwork to generate a second average pooling output; a third stack of convolutional neural network layers, wherein the third stack includes a 1×1 convolutional layer followed by a 1×7 convolutional layer followed by a 1×7 convolutional layer, and wherein the layers in the third stack are configured to collectively process the subnetwork input for the second subnetwork to generate a third stack output; a fourth stack of convolutional neural network layers, wherein the layers in the fourth stack are configured to collectively process the subnetwork input for the second subnetwork to generate a fourth stack output; and a second concatenation layer configured to concatenate the second pass-through output, the second average pooling output, the third stack output, and the fourth stack output to generate a second module output for the second module. 2. The neural network system of claim 1 , wherein the first subnetwork includes four first modules. 3. The neural network system of claim 1 , wherein the first pass-through convolutional layer is a 1×1 convolutional layer. 4. The neural network system of claim 1 , wherein the first average pooling stack includes an average pooling layer followed by a 1×1 convolutional layer. 5. The neural network system of claim 1 , wherein the first stack includes a 1×1 convolutional layer followed by a 3×3 convolutional layer. 6. The neural network system of claim 1 , wherein the first subnetwork is configured to combine the first module outputs generated by the plurality of first subnetworks to generate a first subnetwork output for the first subnetwork. 7. The neural network system of claim 1 , wherein the first subnetwork receives an input that is 35×35×384 and each first module generates an output that is 35×35×384. 8. One or more non-transitory storage media encoded with instructions that when executed by one or more computers cause the one or more computers to implement a neural network system that is configured to receive an image and to generate a classification output for the input image, wherein the neural network system comprises: a plurality of subnetworks arranged in a stack on top of each other, wherein each subnetwork is configured to process a subnetwork input to generate a subnetwork output and to provide the subnetwork output as input to another subnetwork above the subnetwork in the stack, and wherein the plurality of subnetworks includes: a first subnetwork comprising a plurality of first modules, each first module comprising: a first pass-through convolutional layer configured to process the subnetwork input for the first subnetwork to generate a first pass-through output; a first average pooling stack of neural network layers, wherein the layers in the first average pooling stack are configured to collectively process the subnetwork input for the first subnetwork to generate a first average pooling output; a first stack of convolutional neural network layers, wherein the layers in the first stack are configured to collectively process the subnetwork input for the first subnetwork to generate a first stack output; a second stack of convolutional neural network layers, wherein the second stack comprises a 1×1 convolutional layer immediately followed by a 3×3 convolutional layer immediately followed by a 3×3 convolutional layer, and wherein the layers in the second stack are configured to collectively process the subnetwork input for the first subnetwork to generate a second stack output; and a first concatenation layer configured to concatenate the first pass-through output, the first average pooling output, the first stack output, and the second stack output to generate a first module output for the first module; and a second subnetwork comprising second modules, each second module comprising: a second pass-through convolutional layer configured to process the subnetwork input for the second subnetwork to generate a second pass-through output; a second average pooling stack of neural network layers, wherein the layers in the second average pooling stack are configured to collectively process the subnetwork input for the second subnetwork to generate a second average pooling output; a third stack of convolutional neural network layers, wherein the third stack includes a 1×1 convolutional layer followed by a 1×7 convolutional layer followed by a 1×7 convolutional layer, and wherein the layers in the third stack are configured to collectively process the subnetwork input for the second subnetwork to generate a third stack output a fourth stack of convolutional neural network layers, wherein the layers in the fourth stack are configured to collectively process the subnetwork input for the second subnetwork to generate a fourth stack output; and a second concatenation layer configured to concatenate the second pass-through output, the second average pooling output, the third stack output, and the fourth stack output to generate a second module output for the second module. 9. The one or more non-transitory storage media of claim 8 , wherein the first subnetwork includes four first modules. 10. The one or more non-transitory storage media of claim 8 , wherein the first pass-through convolutional layer is a 1×1 convolutional layer. 11. The one or more non-transitory storage media of claim 8 , wherein the first average pooling stack includes an average pooling layer

Assignees

Inventors

Classifications

  • Classification techniques · CPC title

  • G06V10/454Primary

    Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN] · CPC title

  • Activation functions · CPC title

  • G06N3/045Primary

    Combinations of networks · CPC title

  • Recurrent networks, e.g. Hopfield networks · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10460211B2 cover?
A neural network system that includes: multiple subnetworks that includes: a first subnetwork including multiple first modules, each first module including: a pass-through convolutional layer configured to process the subnetwork input for the first subnetwork to generate a pass-through output; an average pooling stack of neural network layers that collectively processes the subnetwork input for…
Who is the assignee on this patent?
Google Llc
What technology area does this patent fall under?
Primary CPC classification G06V10/454. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 29 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).