IP Library › Granted Patent US 11,930,030
Granted Patent B1
US 11,930,030 · App. 18/504,995 · Granted Mar 12, 2024

Detecting and responding to malicious acts directed towards machine learning models

Inventors: Tanner Burns (Austin, TX); Chris Sestito (Austin, TX); James Ballard (Fredericksburg, VA)
Assignee: HiddenLayer Inc.
H04L63/1425H04L41/16H04L41/22
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,930,030
App. No.
18/504,995
Granted
Mar 12, 2024
Kind
B1
Abstract

A system detects and responds to malicious acts directed towards machine learning models. Data fed into and output by a machine learning model is collected by a sensor. The data fed into the model includes vectorization data, which is generated from raw data provided from a requester, such as for example a stream of timeseries data. The output data may include a prediction or other output generated by the machine learning model in response to receiving the vectorization data. The vectorization data and machine learning model output data are processed to determine whether the machine learning model is being subject to a malicious act (e.g., attack). The output of the processing may indicate an attack score. A response for handling the request by a requester may be selected based on the output that includes the attack score, and the response may be applied to the requestor.

Claims (59)

1. A method for monitoring a machine learning-based system for malicious acts comprising:

receiving vectorization data by a sensor being executed on a server, the vectorization data derived from input data intended for a first machine learning model and provided by a requestor;

receiving, by the sensor, an output generated by the machine learning model, the machine learning model generating the output in response to receiving the vectorization data;

transmitting vectorization data and the output to a processing engine by the sensor;

processing the vectorization data and the output by the processing engine to generate an attack score, the attack score indicating a likelihood of a malicious action towards the machine learning model via the vectorization data; and

applying a response to a request associated with the requestor, the response based at least in part on the attack score, the response applied in place of the output of the first machine learning model, the applying of the response including:

selecting, by a response engine, a response based on an output by a second machine learning model within the processing engine, the output of the second machine learning model including a prediction of an attack on the first machine learning model; and

causing the output of the first machine learning model to be modified or causing the requestor to be disconnected.

2. The method of claim 1 , further comprising collecting the vectorization data by a sensor component, the sensor component transmitting the collected vectorization data to the processing engine on the server.

3. The method of claim 2 , wherein the sensor component is created in a computing environment that proxies the first machine learning model.

4. The method of claim 2 , further including:

collecting the output generated by the first machine learning model by the sensor component;

coupling the vectorization data and output by the sensor component; and

transmitting the coupled vectorization data and output to the processing engine by the sensor component.

5. The method of claim 2 , further including:

intercepting the output of the first machine learning model by a sensor component; and

transmitting a response generated by the sensor to the requestor in place of the output, the response generated based at least in part on the attack score.

6. The method of claim 1 , further comprising generating an alert based on the attack score.

7. The method of claim 1 , further comprising reporting attack data to a user through a graphical interface, the attack data based at least in part on the attack score.

8. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor to perform operations for monitoring a machine learning-based system for malicious acts, the operations comprising:

receiving vectorization data by a sensor, the vectorization data derived from input data intended for a first machine learning model and provided by a requestor;

receiving, by the sensor, an output generated by the machine learning model, the machine learning model generating the output in response to receiving the vectorization data;

transmitting the vectorization data and the output to a processing engine by the sensor;

processing the vectorization data and the output by the processing engine to generate an attack score, the attack score indicating a likelihood of a malicious action towards the machine learning model via the vectorization data; and

applying a response to a request associated with the requestor, the response based at least in part on the attack score, the response applied in place of the output of the first machine learning model, the applying of the response including:

selecting, by a response engine, a response based on an output by a second machine learning model within the processing engine, the output of the second machine learning model including a prediction of an attack on the first machine learning model; and

causing the output of the first machine learning model to be modified or causing the requestor to be disconnected.

9. The non-transitory computer readable storage medium of claim 8 , wherein the operations further comprise: collecting the vectorization data by a sensor component, the sensor component transmitting the collected vectorization data to the processing engine.

10. The non-transitory computer readable storage medium of claim 9 , wherein the sensor component is created in a computing environment that implements the first machine learning model.

11. The non-transitory computer readable storage medium of claim 9 , wherein the operations further comprise:

collecting the output generated by the first machine learning model by the sensor component;

coupling the vectorization data and output by the sensor component; and

transmitting the coupled vectorization data and output to the processing engine by the sensor component.

12. The non-transitory computer readable storage medium of claim 9 , wherein the operations further comprise:

intercepting the output of the first machine learning model by a sensor component; and

transmitting a response generated by the sensor to the requestor in place of the output, the response generated based at least in part on the attack score.

13. The non-transitory computer readable storage medium of claim 8 , wherein the operations further comprise: generating an alert based on the attack score.

14. The non-transitory computer readable storage medium of claim 8 , wherein the operations further comprise: reporting attack data to a user through a graphical interface, the attack data based at least in part on the attack score.

15. A system for monitoring a machine learning-based system for malicious acts, comprising:

at least one data processor; and

memory for storing instructions which, when executed by the at least one data processor, result in operations comprising:

receiving vectorization data derived from input data intended for a first machine learning model and provided by a requestor;

receiving an output generated by the machine learning model, the machine learning model generating the output in response to receiving the vectorization data;

transmitting vectorization data and the output to a processing engine;

processing the vectorization data and the output by the processing engine to generate an attack score, the attack score indicating a likelihood of a malicious action towards the machine learning model via the vectorization data; and

causing a response to a request associated with the requestor to be applied, the response based at least in part on the attack score, the response applied in place of the output of the first machine learning model, the causing including:

selecting, by a response engine, a response based on an output by a second machine learning model within the processing engine, the output of the second machine learning model including a prediction of an attack on the first machine learning model; and

causing the output of the first machine learning model to be modified or causing the requestor to be disconnected.

16. The system of claim 15 , wherein the operations further comprise: collecting the vectorization data by a sensor component, the sensor component transmitting the collected vectorization data to the processing engine.

17. The system of claim 16 , wherein the sensor component is created in a computing environment that implements the first machine learning model.

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

collecting the output generated by the first machine learning model by the sensor component;

coupling the vectorization data and output by the sensor component; and

transmitting the coupled vectorization data and output to the processing engine by the sensor component.

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

intercepting the output of the first machine learning model by a sensor component; and

transmitting a response generated by the sensor to the requestor in place of the output, the response generated based at least in part on the attack score.

20. The system of claim 15 , wherein the operations further comprise:

generating an alert based on the attack score.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2023
From: BURNS, TANNER; SESTITO, CHRIS; BALLARD, JAMES
To: HIDDENLAYER, INC.
Reel/Frame 065607/0295 →
Continuity (1)
Continuation 17866051 · Jul 15, 2022
Cited By (13)
US 12,328,331 US 12,475,215 US 12,505,648 US 12,549,598 US 12,554,855 US 12,572,777 US 12,596,839 US 12,608,861 US 12,632,545 US 12,657,297 US 12,717,909 US 12,724,883 US 12,724,894