IP Library Granted Patent US 11,645,586
Granted Patent B2
US 11,645,586 · App. 16/598,086 · Granted May 9, 2023

Watermark unit for a data processing accelerator

Inventors: Yueqiang Cheng (Sunnyvale, CA); Yong Liu (Sunnyvale, CA)
Assignees: BAIDU USA LLC; KUNLUNXIN TECHNOLOGY (BEIJING) COMPANY LIMITED
G06N20/10G06F21/16G06N5/02G06F2221/0733
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,645,586
App. No.
16/598,086
Filed
Oct 10, 2019
Granted
May 9, 2023
Kind
B2
Examiner
KUO, CHENYUH
Art Unit
3685
USPC
706/16
Abstract

In one embodiment, a computer-implemented method performed by a data processing (DP) accelerator, the method includes receiving, at the DP accelerator, first data representing a set of training data from a host processor and performing training of an artificial intelligence (AI) model based on the set of training data within the DP accelerator. The method further includes implanting, by the DP accelerator, a watermark within the trained AI model and transmitting second data representing the trained AI model having the watermark implanted therein to the host processor. In an embodiment, the method further includes receiving a pre-trained machine learning model; and performing training for the pre-trained AI model based on the set of training data within the DP accelerator.

Claims (53)

1. A computer-implemented method performed by a data processing (DP) accelerator, the method comprising:

receiving, by the DP accelerator, first data, wherein the first data comprises a set of training data from a host processor;

training, by the DP accelerator, an artificial intelligence (AI) model based on the received first data using an artificial intelligence (AI) unit of the DP accelerator;

receiving, by the DP accelerator, a request to implant a watermark into the trained AI model from the host processor, wherein the request to implant the watermark includes a watermark algorithm identifier (ID) corresponding to a watermark algorithm, wherein the watermark algorithm ID is one of a plurality of watermark algorithm IDs corresponding to a plurality of watermark algorithms stored in the DP accelerator;

generating, by the DP accelerator, the watermark using the watermark algorithm associated with the received watermark algorithm ID via a watermark unit of the DP accelerator;

implanting, by the DP accelerator, the watermark within the trained AI model based on the watermark algorithm ID using the watermark unit; and

transmitting, by the DP accelerator, second data, wherein the second data comprises the trained AI model implanted with the watermark to the host processor.

2. The method of claim 1 , further comprising:

receiving, by the DP accelerator, a pre-trained AI model; and

wherein training the artificial intelligence (AI) model further comprises training the pre-trained AI model based on the received first data.

3. The method of claim 1 , further comprising:

extracting, by the DP accelerator, the watermark algorithm identifier (ID) from the request to implant the watermark.

4. The method of claim 1 , prior to receiving the request to implant the watermark, the method further comprising:

transmitting, by the DP acceleration, a notification to the host processor, wherein the notification comprises information that the AI model has been trained.

5. The method of claim 2 , further comprising:

receiving, by the DP accelerator, a watermark algorithm identifier (ID) from the host processor, wherein the host processor selects a watermark algorithm that is supported by the DP accelerator.

6. The method of claim 1 , wherein implanting the watermark in the AI model further comprises embedding the watermark in one or more nodes of the AI model.

7. The method of claim 6 , wherein the watermark is implanted in one or more weight variables of the one or more nodes of the AI model.

8. The method of claim 6 , wherein the watermark is stored in one or more bias variables of the one or more nodes of the AI model.

9. The method of claim 1 , wherein implanting the watermark in the AI model further comprises creating one or more additional nodes of the AI model during the training to store the watermark.

10. A data processing (DP) accelerator, comprising:

one or more processors;

an artificial intelligence (AI) unit; and

a watermark unit;

wherein the one or more processors are configured to:

receive first data, wherein the first data comprises a set of training data from a host processor;

train an artificial intelligence (AI) model based on the received first data using the AI unit;

receive a request to implant a watermark in the trained AI model from the host processor, wherein the request to implant the watermark includes a watermark algorithm identifier (ID) corresponding to a watermark algorithm, wherein the watermark algorithm ID is one of a plurality of watermark algorithm IDs corresponding to a plurality of watermark algorithms stored in the DP accelerator;

generate, using the watermark unit, the watermark using the watermark algorithm associated with the received watermark algorithm ID;

implanting the watermark within the trained AI model based on the watermark algorithm ID using the watermark unit; and

transmit second data, wherein the second data comprises the trained AI model implanted with the watermark to the host processor.

11. The DP accelerator of claim 10 , wherein the one or more processors are further configured to:

receive a pre-trained AI model; and

wherein training the AI model further comprises training the pre-trained AI model based on the received first data.

12. The DP accelerator of claim 10 , wherein the one or more processors are further configured to:

extract the watermark algorithm identifier (ID) from the request to implant the watermark.

13. The DP accelerator of claim 10 , wherein, prior to receiving the request to implant the watermark, the one or more processors are further configured to:

transmit a notification to the host processor, wherein the notification comprises information that the AI model has been trained.

14. The DP accelerator of claim 11 , wherein the one or more processors are further configured to:

receive a watermark algorithm identifier (ID) from the host processor, wherein the host processor selects a watermark algorithm that is supported by the DP accelerator.

15. The DP accelerator of claim 10 , wherein implanting the watermark in the AI model further comprises embedding the watermark in one or more nodes of the AI model.

16. The DP accelerator of claim 15 , wherein the watermark is implanted in one or more weight variables of the one or more nodes of the AI model.

17. The DP accelerator of claim 15 , wherein the watermark is stored in one or more bias variables of one or more nodes of the AI model.

18. The DP accelerator of claim 10 , wherein implanting the watermark in the AI model further comprises creating one or more additional nodes of the AI model during the training to store the watermark.

19. A non-transitory machine-readable medium having instructions stored therein, which when executed by a data processing (DP) accelerator, cause the DP accelerator to perform operations, the operations comprising:

receiving first data, wherein the first data comprises a set of training data from a host processor;

training an artificial intelligence (AI) model based on the received first data using an artificial intelligence (AI) unit of the DP accelerator;

receiving a request to implant a watermark in the trained AI model from the host processor, wherein the request to implant the watermark includes a watermark algorithm identifier (ID) corresponding to a watermark algorithm, wherein the watermark algorithm ID is one of a plurality of watermark algorithm IDs corresponding to a plurality of watermark algorithms stored in the DP accelerator;

generating the watermark using the watermark algorithm associated with the received watermark algorithm ID via a watermark unit of the DP accelerator;

implanting the watermark within the trained AI model based on the watermark algorithm ID using the watermark unit of the DP accelerator; and

transmitting second data, wherein the second data comprises the trained AI model implanted with the watermark to the host processor.

20. The machine-readable medium of claim 19 , wherein the instructions, which when executed by the DP accelerator, further cause the DP accelerator to perform the operations comprising:

extracting a watermark algorithm identifier (ID) from the request to implant a watermark.

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 Oct 11, 2019
From: CHENG, YUEQIANG; LIU, YONG
To: BAIDU USA LLC
Reel/Frame 050690/0136 →
Continuity (1)
Related Publication 20210110311A1 · Apr 15, 2021