Partition a Tensor with Varying Granularity Levels in Shuffled Secure Multiparty Computation
AssigneeMicron Technology, Inc.
InventorAndre Xian Ming Chang
Life of this patent
Estimating the term…
Abstract
Protection of access to a tensor in outsourcing deep learning computations via shuffling. For example, the tensor in the computation of an artificial neural network can be partitioned into portions of different sizes. The computing tasks can be generated for operating on the portions such that the results of the computing tasks can be combined to obtain the result of a computing task operates on the tensor in the computation of the artificial neural network. The computing tasks can be shuffled for distribution out of order to external entities. The partitioning and shuffling can prevent the external entities from accessing and/or reconstructing the tensor.
Claims20
A device, comprising:
- memory;
- and
- at least one microprocessor configured to:
- partition a tensor into a plurality of portions having different sizes;
- generate a plurality of computing tasks, each of the computing tasks configured to operate based on one of the plurality of portions;
- shuffle the computing tasks in distributing the computing tasks among computing apparatuses that are external to the device;
- distribute the computing tasks, as shuffled, to the computing apparatuses to receive results of the computing tasks performed by the computing apparatuses;
- and
- determine, from the results of the computing tasks, a result of a computing task configured to operate on the tensor as a whole.
A method, comprising:
- partitioning, by a computing device, a tensor into a plurality of portions having different sizes;
- generating, by the computing device, a plurality of computing tasks, each of the computing tasks configured to operate based on one of the plurality of portions;
- shuffling, by the computing device, the computing tasks in distributing the computing tasks among computing apparatuses that are external to the computing device;
- distributing, by the computing device, the computing tasks, as shuffled, to the computing apparatuses to receive results of the computing tasks performed by the computing apparatuses;
- and
- determining, by the computing device from the results of the computing tasks, a result of a computing task configured to operate on the tensor as a whole.
A non-transitory computer storage medium storing instructions which, when executed in a computing device, cause the computing device to perform a method, comprising:
- partitioning, by the computing device, a tensor into a plurality of portions having different sizes;
- generating, by the computing device, a plurality of computing tasks, each of the computing tasks configured to operate based on one of the plurality of portions;
- shuffling, by the computing device, the computing tasks in distributing the computing tasks among computing apparatuses that are external to the computing device;
- distributing, by the computing device, the computing tasks, as shuffled, to the computing apparatuses to receive results of the computing tasks performed by the computing apparatuses;
- and
- determining, by the computing device from the results of the computing tasks, a result of a computing task configured to operate on the tensor as a whole.
Dependencies are inferred from the claim text.