IP Library Granted Patent US 11,157,815
Granted Patent B2
US 11,157,815 · App. 16/524,410 · Granted Oct 26, 2021

Efficient convolutional neural networks and techniques to reduce associated computational costs

Inventors: Andrew Gerald Howard (Culver City, CA); Bo Chen (Pasadena, CA); Dmitry Kalenichenko (Los Angeles, CA); Tobias Christoph Weyand (Venice, CA); Menglong Zhu (Los Angeles, CA); Marco Andreetto (Pasadena, CA); Weijun Wang (Los Angeles, CA)
Assignee: Google LLC
G06N3/082G06N3/04G06T2207/20084
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 11,157,815
App. No.
16/524,410
Granted
Oct 26, 2021
Kind
B2
Abstract

The present disclosure provides systems and methods to reduce computational costs associated with convolutional neural networks. In addition, the present disclosure provides a class of efficient models termed “MobileNets” for mobile and embedded vision applications. MobileNets are based on a straight-forward architecture that uses depthwise separable convolutions to build light weight deep neural networks. The present disclosure further provides two global hyper-parameters that efficiently trade-off between latency and accuracy. These hyper-parameters allow the entity building the model to select the appropriately sized model for the particular application based on the constraints of the problem. MobileNets and associated computational cost reduction techniques are effective across a wide range of applications and use cases.

Claims (23)

1. A computer-implemented method associated with a convolutional neural network, the method comprising:

receiving, by one or more computing devices, a width multiplier value;

receiving an input feature map by the one or more computing devices, the input feature map associated with a first number of channels, wherein the input feature map can be represented as D F ×D F ×M of an input image, where D F is a spatial width and a height of the input feature map and M is the first number of channels; and

processing, by the one or more computing devices, the input feature map using a depthwise convolution layer in order to generate an output feature map, wherein the depthwise convolution layer has a kernel with kernel size of D K ×D K ×αM, where D K is a spatial dimension of the kernel, M is the first number of channels, and a represents the width multiplier value, and wherein the output feature map is associated with a second number of channels; and

wherein the second number of channels is the first number of channels multiplied by the width multiplier value; and

wherein a computational cost for the depthwise convolution layer is determined as D K ·D K ·D F ·D F ·αM.

2. The computer-implemented method of claim 1 , further comprising:

receiving, by the one or more computing devices, one or more desired performance parameters for the convolutional neural network; and

generating, by the one or more computing devices, the width multiplier value based at least in part on the one or more desired performance parameters.

3. The computer-implemented method of claim 1 , further comprising:

processing, by the one or more computing devices, the output feature map with a pointwise convolution layer.

4. The computer-implemented method of claim 1 , wherein receiving the width multiplier value comprises receiving the width multiplier value as a user input.

5. The computer-implemented method of claim 1 , wherein the width multiplier value controls a trade off between computation and accuracy.

6. A convolutional neural network structure that is stored on a non-transitory computer-readable media and optimized for mobile or embedded applications, the convolutional neural network structure comprising:

a depthwise convolution layer and a pointwise convolution layer;

wherein the depthwise convolution layer is configured to process an input feature map associated with a first number of channels to generate an output feature map associated with a second number of channels, such that the second number of channels is the first number of channels multiplied by a user-specified parameter;

wherein the input feature map can be represented as D F ×D F ×M of an input image, where D F is a spatial width and a height of the input feature map and M is the first number of channels;

the depthwise convolution layer has a kernel with kernel size of D K ×D K ×αM, where D K is a spatial dimension of the kernel, M is the first number of channels, and α represents the user-specified parameter; and

a computational cost for the depthwise convolution layer is determined as D K ·D K ·D F ·D F ·αM.

7. The convolutional neural network structure of claim 6 , wherein the convolutional neural network structure has been generated by modification of an existing convolutional neural network structure.

8. The convolutional neural network structure of claim 7 , wherein the existing convolutional neural network structure comprises a convolutional layer that has an existing number of filters and modification of the existing convolutional neural network structure comprises generation of the depthwise convolution layer that comprises a number of filters equal to the second number of channels.

9. The convolutional neural network structure of claim 6 , wherein the user-specified parameter controls a trade off between computation and accuracy.

10. The convolutional neural network structure of claim 6 , wherein the pointwise convolution layer has a number of filters equal to the second number of channels.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2019
From: HOWARD, ANDREW GERALD; CHEN, BO; KALENICHENKO, DMITRY; WEYAND, TOBIAS CHRISTOPH; ZHU, MENGLONG; ANDREETTO, MARCO; WANG, WEIJUN
To: GOOGLE INC.
Reel/Frame 049886/0171 →
CHANGE OF NAME Recorded Jul 29, 2019
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 049889/0315 →
Continuity (3)
Continuation 15707064 · Sep 18, 2017
Provisional Application 62422529 · Nov 15, 2016
Related Publication 20190347537A1 · Nov 14, 2019