IP Library Granted Patent US 11,409,653
Granted Patent B2
US 11,409,653 · App. 16/900,597 · Granted Aug 9, 2022

Method for AI model transferring with address randomization

Inventors: Yueqiang Cheng (Sunnyvale, CA); Hefei Zhu (Sunnyvale, CA)
Assignees: BAIDU USA LLC; KUNLUNXIN TECHNOLOGY (BEIJING) COMPANY LIMITED
G06F12/06G06F9/5027G06N20/10
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,409,653
App. No.
16/900,597
Granted
Aug 9, 2022
Kind
B2
Abstract

A method to transfer an artificial intelligence (AI) model includes identifying a plurality of layers of an AI model, wherein each layer of the plurality of layers is associated with a memory address. The method further includes randomizing the memory address associated with each layer of the plurality of layers, and transferring the plurality of layers with the randomized memory addresses to a data processing accelerator to execute the AI model.

Claims (40)

1. A method to transfer an artificial intelligence (AI) model, comprising:

identifying a plurality of layers of an AI model, wherein each layer of the plurality of layers is associated with a memory address;

randomizing, by a processing device, the memory address associated with each layer of the plurality of layers; and

transferring the plurality of layers with the randomized memory addresses to a data processing accelerator to execute the AI model, wherein the memory address of each of the layers of the AI model references to a specific memory location within the data processing accelerator at which the corresponding layer of the AI model is to be loaded.

2. The method of claim 1 , wherein randomizing the memory addresses comprises:

determining an address space of the data processing accelerator; and

randomly assigning an address of the address space to each of the layers of the AI model.

3. The method of claim 1 , further comprising:

forwarding the randomized memory addresses to the data processing accelerator for the data processing accelerator to reconstruct the AI model.

4. The method of claim 1 , wherein the memory address associated with each layer is a base address for the corresponding layer.

5. The method of claim 4 , wherein a kernel function is associated with each layer of the plurality of layers.

6. The method of claim 5 , wherein each kernel function uses the base memory address to retrieve weights from a corresponding layer associated with the kernel function.

7. The method of claim 1 , wherein the data processing accelerator comprises an AI accelerator.

8. A system to transfer an artificial intelligence (AI) model, the system comprising:

a memory; and

a processing device operatively coupled to the memory, the processing device to:

identify a plurality of layers of an AI model, wherein each layer of the plurality of layers is associated with a memory address;

randomize the memory address associated with each layer of the plurality of layers; and

transfer the plurality of layers with the randomized memory addresses to a data processing accelerator to execute the AI model, wherein the memory address of each of the layers of the AI model references to a specific memory location within the data processing accelerator at which the corresponding layer of the AI model is to be loaded.

9. The system of claim 8 , wherein to randomize the memory addresses the processing device is to:

determine an address space of the data processing accelerator; and

randomly assign an address of the address space to each of the layers of the AI model.

10. The system of claim 9 , wherein the processing device is further to:

forward the randomized memory addresses to the data processing accelerator for the data processing accelerator to reconstruct the AI model.

11. The system of claim 9 , wherein the memory address associated with each layer is a base address for the corresponding layer.

12. The system of claim 11 , wherein a kernel function is associated with each layer of the plurality of layers.

13. The system of claim 12 , wherein each kernel function uses the base memory address to retrieve weights from a corresponding layer associated with the kernel function.

14. The system of claim 8 , wherein the data processing accelerator comprises an AI accelerator.

15. A non-transitory machine readable storage medium storing instructions that, when executed by a processing device, perform operations comprising:

identifying a plurality of layers of an AI model, wherein each layer of the plurality of layers is associated with a memory address;

randomizing, by a processing device, the memory address associated with each layer of the plurality of layers; and

transferring the plurality of layers with the randomized memory addresses to a data processing accelerator to execute the AI model, wherein the memory address of each of the layers of the AI model references to a specific memory location within the data processing accelerator at which the corresponding layer of the AI model is to be loaded.

16. The non-transitory machine readable storage medium of claim 15 , wherein randomizing the memory addresses comprises:

determining an address space of the data processing accelerator; and

randomly assigning an address of the address space to each of the layers of the AI model.

17. The non-transitory machine readable storage medium of claim 16 , further comprising:

forwarding the randomized memory addresses to the data processing accelerator for the data processing accelerator to reconstruct the AI model.

18. The non-transitory machine readable storage medium of claim 16 , wherein the memory address associated with each layer is a base address for the corresponding layer.

19. The non-transitory machine readable storage medium of claim 18 , wherein a kernel function is associated with each layer of the plurality of layers.

20. The non-transitory machine readable storage medium of claim 19 , wherein each kernel function uses the base memory address to retrieve weights from a corresponding layer associated with the kernel function.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2021
From: BAIDU USA LLC
To: BAIDU USA LLC; KUNLUNXIN TECHNOLOGY (BEIJING) COMPANY LIMITED
Reel/Frame 057829/0213 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 12, 2020
From: CHENG, YUEQIANG; ZHU, HEFEI
To: BAIDU USA LLC
Reel/Frame 052932/0032 →
Continuity (1)
Related Publication 20210390047A1 · Dec 16, 2021