IP Library Granted Patent US 11,580,356
Granted Patent B2
US 11,580,356 · App. 16/932,496 · Granted Feb 14, 2023

Efficient inferencing with piecewise pointwise convolution

Inventors: Jamie Menjay Lin (San Diego, CA); Jin Won Lee (San Diego, CA); Jilei Hou (San Diego, CA)
Assignee: Qualcomm Incorporated
G06N3/04G06F11/3058G06F17/15G06K9/6267
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,580,356
App. No.
16/932,496
Granted
Feb 14, 2023
Kind
B2
Abstract

Certain aspects of the present disclosure provide techniques for performing piecewise pointwise convolution, comprising: performing a first piecewise pointwise convolution on a first subset of data received via a first branch input at a piecewise pointwise convolution layer of a convolutional neural network (CNN) model; performing a second piecewise pointwise convolution on a second subset of data received via a second branch input at the piecewise pointwise convolution layer; determining a piecewise pointwise convolution output by summing a result of the first piecewise pointwise convolution and a result of the second piecewise pointwise convolution; and providing the piecewise pointwise convolution output to a second layer of the CNN model.

Claims (66)

1. A method, comprising:

performing a first piecewise pointwise convolution on a first subset of data received via a first branch input at a piecewise pointwise convolution layer of a convolutional neural network (CNN) model;

performing a second piecewise pointwise convolution on a second subset of data received via a second branch input at the piecewise pointwise convolution layer;

determining a piecewise pointwise convolution output by summing a result of the first piecewise pointwise convolution and a result of the second piecewise pointwise convolution; and

providing the piecewise pointwise convolution output to a second layer of the CNN model.

2. The method of claim 1 , wherein the piecewise pointwise convolution output, Y, is determined according to Y=Σ m=0 m=M−1 P m/M (W)*P m/M (X), wherein W is a weight tensor, X is an activation tensor, and M is a number of input branches to the piecewise pointwise convolution layer.

3. The method of claim 1 , further comprising:

storing the result of the first piecewise pointwise convolution in a portion of a memory; and

overwriting the portion of the memory with a sum of the first piecewise pointwise convolution and the second piecewise pointwise convolution.

4. The method of claim 1 , further comprising:

generating a model output from the CNN model; and

providing the model output generated to a low-power application running on a mobile electronic device.

5. The method of claim 1 , wherein:

a first processor performs the first piecewise pointwise convolution, and

a second processor performs the second piecewise pointwise convolution.

6. The method of claim 1 , wherein the input data is one of image data or audio data.

7. The method of claim 1 , wherein:

the input data is received from a sensor in a mobile electronic device, and

the input data is associated with an application running on the mobile electronic device and configured for at least one of: biometric feature detection, human presence detection, environmental condition detection, object detection, or object classification.

8. A processing system, comprising:

a memory comprising computer-executable instructions;

a first processor configured to execute the computer-executable instructions and cause the processing system to:

perform a first piecewise pointwise convolution on a first subset of data received via a first branch input at a piecewise pointwise convolution layer of a convolutional neural network (CNN) model;

perform a second piecewise pointwise convolution on a second subset of data received via a second branch input at the piecewise pointwise convolution layer;

determine a piecewise pointwise convolution output by summing a result of the first piecewise pointwise convolution and a result of the second piecewise pointwise convolution; and

provide the piecewise pointwise convolution output to a second layer of the CNN model.

9. The processing system of claim 8 , wherein the piecewise pointwise convolution output, Y, is determined according to Y=Σ m=0 m=M−1 P m/M (W)*P m/M (X), wherein W is a weight tensor, X is an activation tensor, and M is a number of input branches to the piecewise pointwise convolution layer.

10. The processing system of claim 8 , wherein the first processor is further configured to cause the processing system to:

store the result of the first piecewise pointwise convolution in a portion of the memory; and

overwrite the portion of the memory with a sum of the first piecewise pointwise convolution and the second piecewise pointwise convolution.

11. The processing system of claim 8 , wherein the first processor is further configured to cause the processing system to:

generate a model output from the CNN model; and

provide the model output generated to a low-power application running on the processing system.

12. The processing system of claim 8 , further comprising:

a second processor, wherein:

the first processor performs the first piecewise pointwise convolution, and

the second processor performs the second piecewise pointwise convolution.

13. The processing system of claim 8 , wherein the input data is one of image data or audio data.

14. The processing system of claim 8 , further comprising:

a sensor, wherein:

the input data is received from the sensor, and

the input data is associated with an application running on the processing system and configured for at least one of: biometric feature detection, human presence detection, environmental condition detection, object detection, or object classification.

15. A non-transitory computer-readable medium comprising instructions that, when executed by a first processor of a processing system, cause the processing system to perform a method, the method comprising:

performing a first piecewise pointwise convolution on a first subset of data received via a first branch input at a piecewise pointwise convolution layer of a convolutional neural network (CNN) model;

performing a second piecewise pointwise convolution on a second subset of data received via a second branch input at the piecewise pointwise convolution layer;

determining a piecewise pointwise convolution output by summing a result of the first piecewise pointwise convolution and a result of the second piecewise pointwise convolution; and

providing the piecewise pointwise convolution output to a second layer of the CNN model.

16. The non-transitory computer-readable medium of claim 15 , wherein the piecewise pointwise convolution output, Y, is determined according to Y=Σ m=0 m=M−1 P m/M (W)*P m/M (X), wherein W is a weight tensor, Xis an activation tensor, and M is a number of input branches to the piecewise pointwise convolution layer.

17. The non-transitory computer-readable medium of claim 15 , wherein the method further comprises:

storing the result of the first piecewise pointwise convolution in a portion of a memory; and

overwriting the portion of the memory with a sum of the first piecewise pointwise convolution and the second piecewise pointwise convolution.

18. The non-transitory computer-readable medium of claim 15 , wherein the method further comprises:

generating a model output from the CNN model; and

providing the model output generated to a low-power application running on the processing system.

19. The non-transitory computer-readable medium of claim 15 , wherein:

the first processor performs the first piecewise pointwise convolution, and

a second processor of the processing system performs the second piecewise pointwise convolution.

20. The non-transitory computer-readable medium of claim 15 , wherein the input data is one of image data or audio data.

21. The non-transitory computer-readable medium of claim 15 , wherein:

the input data is received from a sensor in the processing system, and

the input data is associated with an application running on the processing system and configured for at least one of: biometric feature detection, human presence detection, environmental condition detection, object detection, or object classification.

22. A processing system, comprising:

means for performing a first piecewise pointwise convolution on a first subset of data received via a first branch input at a piecewise pointwise convolution layer of a convolutional neural network (CNN) model;

means for performing a second piecewise pointwise convolution on a second subset of data received via a second branch input at the piecewise pointwise convolution layer;

means for determining a piecewise pointwise convolution output by summing a result of the first piecewise pointwise convolution and a result of the second piecewise pointwise convolution; and

means for providing the piecewise pointwise convolution output to a second layer of the CNN model.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 25, 2021
From: LIN, JAMIE MENJAY; LEE, JIN WON; HOU, JILEI
To: QUALCOMM INCORPORATED
Reel/Frame 056346/0218 →
Continuity (2)
Provisional Application 62876297 · Jul 19, 2019
Related Publication 20210019593A1 · Jan 21, 2021