Security for private data inputs to artificial intelligence models

US11256809B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11256809-B2
Application numberUS-201916367515-A
CountryUS
Kind codeB2
Filing dateMar 28, 2019
Priority dateMar 28, 2019
Publication dateFeb 22, 2022
Grant dateFeb 22, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods, systems, and devices for supporting security for private data inputs to artificial intelligence models are described. A device (e.g., an application server) may receive a request to run an artificial intelligence model. The device may run the artificial intelligence model on a public data set and an extended set of data that includes both the public data set and a private data set. The device may determine a first set of outcomes based on running the artificial intelligence model on the public data set and a second set of outcomes based on rerunning the model on the extended set of data. The device may then compare the two sets of outcomes to determine whether a private data value is identifiable based on the second set of outcomes. If a private data value is identifiable, the device may obfuscate the results prior to transmitting the results to the requestor.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for running an artificial intelligence model at a server, comprising: receiving, from a user device, a request to run the artificial intelligence model; running, in memory of the server, the artificial intelligence model on a public data set associated with the request; identifying a first set of outcomes based at least in part on running the artificial intelligence model on the public data set; running, in the memory of the server, the artificial intelligence model on an extended data set associated with the request, the extended data set comprising the public data set and a set of private data associated with the request; identifying a second set of outcomes based at least in part on running the artificial intelligence model on the extended data set; comparing the first set of outcomes with the second set of outcomes to determine whether a difference between the first set of outcomes and the second set of outcomes satisfies a statistical threshold; upon determining that the difference between the first set of outcomes and the second set of outcomes satisfies the statistical threshold: determining that a private data value from the set of private data is identifiable based at least in part on the difference between the first set of outcomes and the second set of outcomes satisfying the statistical threshold; and transmitting, to the user device, a first set of results in response to the request, wherein the first set of results is based at least in part on determining that the private data value is identifiable; and upon determining that the difference between the first set of outcomes and the second set of outcomes fails to satisfy the statistical threshold: transmitting, to the user device, a second set of results in response to the request, wherein the second set of results comprises the second set of outcomes. 2. The method of claim 1 , further comprising: calculating a probability of identifying the private data value from the set of private data based at least in part on the difference between the first set of outcomes and the second set of outcomes satisfying the statistical threshold, wherein determining that the private data value from the set of private data is identifiable is further based at least in part on the probability satisfying a threshold. 3. The method of claim 1 , further comprising: refraining from transmitting, to the user device, the second set of outcomes in response to the request based at least in part on determining that the private data value from the set of private data is identifiable. 4. The method of claim 1 , further comprising: obfuscating the first set of results based at least in part on determining that the private data value from the set of private data is identifiable, wherein transmitting the first set of results comprises determining the obfuscated first set of results. 5. The method of claim 1 , further comprising: receiving, from the user device, a second request to run the artificial intelligence model; identifying a third set of outcomes based at least in part on running the artificial intelligence model on a second public data set; identifying a fourth set of outcomes based at least in part on running the artificial intelligence model on a second extended data set comprising the second public data set and a second set of private data associated with the second request; comparing the third set of outcomes with the fourth set of outcomes to determine that a difference between the third set of outcomes and the fourth set of outcomes satisfies the statistical threshold; determining that each private data value from the second set of private data is not identifiable based at least in part on the difference between the third set of outcomes and the fourth set of outcomes satisfying the statistical threshold; and transmitting, to the user device, a third set of results in response to the second request, wherein the third set of results comprises the fourth set of outcomes. 6. The method of claim 1 , further comprising: identifying the public data set based at least in part on the received request; identifying a first correlation between one or more public data values of the public data set and the first set of outcomes, wherein identifying the first set of outcomes is based at least in part on the first correlation; identifying the extended data set based at least in part on the received request; and identifying a second correlation between one or more private data values of the set of private data, the one or more public data values of the public data set, and the second set of outcomes, wherein identifying the second set of outcomes is based at least in part on the second correlation. 7. The method of claim 6 , further comprising: receiving an update to the public data set, wherein the update comprises addition or deletion of at least one public data value to or from the public data set; and modifying the first correlation based at least in part on the update to the public data set, wherein identifying the first set of outcomes is based at least in part on the modified first correlation. 8. The method of claim 6 , further comprising: receiving an update to the extended data set, wherein the update comprises addition or deletion of at least one private data value to or from the extended data set; and modifying the second correlation based at least in part on the update to the extended data set, wherein identifying the second set of outcomes is based at least in part on the modified second correlation. 9. The method of claim 8 , further comprising: receiving, from the user device, a second request for the update to the extended data set; and transmitting, to the user device, a notification indicating the update to the extended data set. 10. The method of claim 8 , further comprising: transmitting, to the user device, a notification indicating the update to the extended data set based at least in part on receiving the update. 11. The method of claim 8 , further comprising: initiating a process to determine that the update comprises addition or deletion of a threshold number of private data values to or from the extended data set; and transmitting, to the user device, a notification indicating the update to the extended data set based at least in part on determining that the update comprises addition or deletion of the threshold number of private data values to or from the extended data set. 12. The method of claim 1 , further comprising: identifying the public data set based at least in part on the received request; and identifying a data feed associated with the public data set, wherein running the artificial intelligence model on the public data set comprises running the artificial intelligence model on the identified data feed. 13. The method of claim 1 , further comprising: identifying the set of private data based at least in part on the received request; and identifying a data feed associated with the set of private data, wherein running the artificial intelligence model on the extended data set comprises running the artificial intelligence model on the identified data feed. 14. The method of claim 1 , further comprising: receiving, from a second user device, a second request to run the artificial intelligence model; running, in the memory of the server, the artificial intelligence model on a second public data set and a second extended data set associated with the second request; and transmitting, to the second user device, a third set of results in response to the second request based at least i

Assignees

Inventors

Classifications

  • Knowledge representation; Symbolic representation · CPC title

  • Protecting personal data, e.g. for financial or medical purposes · CPC title

  • Machine learning · CPC title

  • Protect user input by software means · CPC title

  • G06F21/57Primary

    Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11256809B2 cover?
Methods, systems, and devices for supporting security for private data inputs to artificial intelligence models are described. A device (e.g., an application server) may receive a request to run an artificial intelligence model. The device may run the artificial intelligence model on a public data set and an extended set of data that includes both the public data set and a private data set. The…
Who is the assignee on this patent?
Salesforce Com Inc
What technology area does this patent fall under?
Primary CPC classification G06F21/6245. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 22 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).