IP Library Granted Patent US 12,288,309
Granted Patent B2
US 12,288,309 · App. 18/499,866 · Granted Apr 29, 2025

Remote distribution of neural networks

Inventors: Guohui Wang (Los Angeles, CA); Sumant Milind Hanumante (Marina Del Rey, CA); Ning Xu (Irvine, CA); Yuncheng Li (Los Angeles, CA)
Assignee: Snap Inc.
G06T3/4046G06N3/04G06N3/063G06N3/08G06T1/20G06T11/60G06T2207/20081
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 12,288,309
App. No.
18/499,866
Granted
Apr 29, 2025
Kind
B2
Abstract

Remote distribution of multiple neural network models to various client devices over a network can be implemented by identifying a native neural network and remotely converting the native neural network to a target neural network based on a given client device operating environment. The native neural network can be configured for execution using efficient parameters, and the target neural network can use less efficient but more precise parameters.

Claims (49)

1. A method comprising:

detecting, via a device, a request to execute a task;

identifying a native neural network model associated with the task;

converting the native neural network model to a target neural network model based on a computational resource of the device;

using the target neural network model to execute the task; and

causing display of an output as a result of the execution of the task.

2. The method of claim 1 , the converting the native neural network model to the target neural network model comprises:

reassembling the native neural network model block-by-block into the target neural network model based on the computational resource of the device.

3. The method of claim 1 , wherein the native neural network model is integrated within an application installed on the device.

4. The method of claim 1 , wherein the request to execute the task is detected based on detection of a user interface (UI) based event that triggers the task.

5. The method of claim 4 , wherein the UI based event comprises one or more of a scrolling of a plurality of icons configured to initiate a plurality of image effects, navigation to a pre-specified user interface, and activation of a messaging client application associated with the device.

6. The method of claim 1 , comprising:

determining the target neural network model based on an operating system of the device having a library for parallel execution of neural networks on a plurality of hardware processors.

7. The method of claim 1 , comprising:

specifying a plurality of input parameters of the target neural network model; and

compiling the target neural network model using the plurality of input parameters.

8. The method of claim 1 , wherein the task comprises modification of an image using an image effect associated with the native neural network model.

9. The method of claim 8 , comprising:

identifying the computational resource of the device; and

applying, using the target neural network model, the image effect to the image to generate a modified image based on a plurality of input parameters specified for the target neural network model.

10. The method of claim 1 , wherein the computational resource of the device comprises one or more of a screen size, bandwidth quality, GPU availability, one or more hardware acceleration libraries, multi-core parallel processing capability on a CPU, and multi-core concurrent processing capability on the CPU.

11. A system comprising:

a memory storing instructions; and

one or more hardware processors communicatively coupled to the memory and configured by the instructions to perform operations comprising:

detecting, via a device, a request to execute a task;

identifying a native neural network model associated with the task;

converting the native neural network model to a target neural network model based on a computational resource of the device;

using the target neural network model to execute the task; and

causing display of an output as a result of the execution of the task.

12. The system of claim 11 , the converting the native neural network model to the target neural network model comprises:

reassembling the native neural network model block-by-block into the target neural network model based on the computational resource of the device.

13. The system of claim 11 , wherein the native neural network model is integrated within an application installed on the device.

14. The system of claim 11 , wherein the request to execute the task is detected based on detection of a user interface (UI) based event that triggers the task.

15. The system of claim 14 , wherein the UI based event comprises one or more of a scrolling of a plurality of icons configured to initiate a plurality of image effects, navigation to a pre-specified user interface, and activation of a messaging client application associated with the device.

16. The system of claim 11 , wherein the operations comprise:

determining the target neural network model based on an operating system of the device having a library for parallel execution of neural networks on a plurality of hardware processors.

17. The system of claim 11 , wherein the operations comprise:

specifying a plurality of input parameters of the target neural network model; and

compiling the target neural network model based on the plurality of input parameters.

18. The system of claim 11 , wherein the task comprises modification of an image using an image effect associated with the native neural network model.

19. The system of claim 18 , wherein the operations comprise:

identifying the computational resource of the device; and

applying, using the target neural network model, the image effect to the image to generate a modified image based on a plurality of input parameters specified for the target neural network model.

20. A non-transitory machine-readable storage medium comprising instructions that, when executed by a machine, cause the machine to perform operations comprising:

detecting, via a device, a request to execute a task;

identifying a native neural network model associated with the task;

converting the native neural network model to a target neural network model based on a computational resource of the device;

using the target neural network model to execute the task; and

causing display of an output as a result of the execution of the task.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2023
From: WANG, GUOHUI; HANUMANTE, SUMANT MILIND; XU, NING; LI, YUNCHENG
To: SNAP INC.
Reel/Frame 065425/0345 →
Continuity (4)
Continuation 17714764 · Apr 6, 2022
Continuation 16888171 · May 29, 2020
Continuation 15908461 · Feb 28, 2018
Related Publication 20240062335A1 · Feb 22, 2024
References Cited (19)
US 9607366B1 · Brailovskiy · 2017 [cited by examiner]
US 10713754B1 · Wang et al. · 2020 [cited by applicant]
US 11315219B2 · Wang et al. · 2022 [cited by applicant]
US 20190068895A1 · Hutz · 2019 [cited by examiner]
US 20190228264A1 · Huang · 2019 [cited by examiner]
US 20200294195A1 · Wang et al. · 2020 [cited by applicant]
US 20220230277A1 · Wang et al. · 2022 [cited by applicant]
U.S. Appl. No. 15/908,461 U.S. Pat. No. 10,713,754, filed Feb. 28, 2018, Remote Distribution of Neural Networks. [cited by applicant]
U.S. Appl. No. 16/888,171 U.S. Pat. No. 11,315,219, filed May 29, 2020, Remote Distribution of Neural Networks. [cited by applicant]
U.S. Appl. No. 17/714,764, filed Apr. 6, 2022, Remote Distribution of Neural Networks. [cited by applicant]
“U.S. Appl. No. 15/908,461, Non Final Office Action mailed Nov. 22, 2019”, 6 pgs. [cited by applicant]
“U.S. Appl. No. 15/908,461, Notice of Allowance mailed Mar. 6, 2020”, 7 pgs. [cited by applicant]
“U.S. Appl. No. 15/908,461, Response filed Feb. 24, 2020 to Non Final Office Action mailed Nov. 22, 2019”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 16/888,171, Non Final Office Action mailed Sep. 13, 2021”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 16/888,171, Notice of Allowance mailed Dec. 24, 2021”, 8 pgs. [cited by applicant]
“U.S. Appl. No. 16/888,171, Response filed Dec. 13, 2021 to Non Final Office Action mailed Sep. 13, 2021”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 17/714,764, Non Final Office Action mailed Apr. 6, 2023”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/714,764, Notice of Allowance mailed Jul. 27, 2023”, 7 pgs. [cited by applicant]
“U.S. Appl. No. 17/714,764, Response filed Jul. 6, 2023 to Non Final Office Action mailed Apr. 6, 2023”, 8 pgs. [cited by applicant]