Back to results
US 2019/0294805 A1Published application
Neural-network training using secure data processing
AssigneeVia Science, Inc.
InventorsJeremy Taylor, Jesús Alejandro Cárdenes Cabré, Kai Chung Cheung, John Christopher Muddle, Colin Gounden
Life of this patent
Estimating the term…
Abstract
Computer instructions corresponding to a neural-network model are received and encrypted using an encryption technique. Training data encrypted using the encryption technique is received from a data source. The model is trained using the training data using, for example, a gradient descent technique. If the model performs in accordance with a quality metric, it is sent to a device of a model user.
Claims20
A computer-implemented method comprising:
- receiving, from a model provider, computer instructions corresponding to a neural-network model, wherein an output of the neural-network model is based at least in part on a set of weights of the model;
- determining encrypted computer instructions by encrypting, using an encryption technique, at least a portion of the computer instructions;
- sending, to a first data source and a second data source, the encrypted computer instructions;
- receiving, from the first data source, first encrypted change data corresponding to the set of weights and the encrypted computer instructions, the first encrypted change data being encrypted using the encryption technique;
- receiving, from the second data source, second encrypted change data corresponding to the set of weights and the encrypted computer instructions, the second encrypted change data being encrypted using the encryption technique;
- determining encrypted summation change data by summing the first encrypted change data and the second encrypted change data;
- determining that a metric associated with the encrypted summation change data satisfies a threshold;
- and
- determining decrypted summation change data by decrypting the encrypted summation change data.
6 more elements
A system comprising:
- at least one processor;
- and
- at least one memory including instructions that, when executed by the at least one processor, cause the system to:
- receive, from a model provider, computer instructions corresponding to a neural-network model, wherein an output of the neural-network model is based at least in part on a set of weights of the model;
- determine encrypted computer instructions by encrypting, using an encryption technique, at least a portion of the computer instructions;
- send, to a first data source and a second data source, the encrypted computer instructions;
- receive, from the first data source, first encrypted change data corresponding to the set of weights and the encrypted computer instructions, the first encrypted change data being encrypted using the encryption technique;
- receive, from the second data source, second encrypted change data corresponding to the set of weights and the encrypted computer instructions, the second encrypted change data being encrypted using the encryption technique;
- determine encrypted summation change data by summing the first encrypted change data and the second encrypted change data;
- determine that a metric associated with the encrypted summation change data satisfies a threshold;
- and
- determine decrypted summation change data by decrypting the encrypted summation change data.
9 more elements
A computer-implemented method comprising:
- receiving, from a model provider, computer instructions corresponding to a neural-network model, wherein an output of the neural-network model is based at least in part on a set of weights of the model;
- determining encrypted computer instructions by encrypting, using a private key and a generator point, at least a portion of the computer instructions;
- sending, to a first data source and a second data source, the encrypted computer instructions;
- receiving, from the first data source, first encrypted change data corresponding to the set of weights and the encrypted computer instructions, the first encrypted change data being encrypted using the private key and a generator point;
- receiving, from the second data source, second encrypted change data corresponding to the set of weights and the encrypted computer instructions, the second encrypted change data being encrypted using the private key and a generator point;
- determining encrypted summation change data by summing the first encrypted change data and the second encrypted change data;
- determining that a metric associated with the encrypted summation change data satisfies a threshold;
- and
- determining decrypted summation change data by decrypting the encrypted summation change data.
6 more elements
Dependencies are inferred from the claim text.