Homomorphic Encryption Data Packing for Convolution Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Homomorphic encryption methods face efficiency issues when performing convolution operations with a stride greater than 1, leading to reduced computational efficiency due to decreased data density in output ciphertexts, which worsens with repeated operations.
Innovation Solution
The proposed solution involves generating packed data by encoding and encrypting an image into a one-dimensional vector, determining a mapping constant based on the tensor dimensions, and performing data packing to maintain high data density during convolution operations, allowing for efficient homomorphic encryption even with larger strides.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If convolution is performed with a stride greater than 1 in homomorphic encryption, then the operation can cover larger data ranges, but the density of valid data in the output ciphertext decreases by the square of the stride, reducing computational efficiency
Solution Approach 1:
The patent segments the convolution operation into two distinct phases: a first convolution with stride 1 that maintains high data density, and a second convolution with stride greater than 1 that achieves broader coverage. This segmentation allows each phase to optimize for its specific purpose, resolving the contradiction between adaptability and productivity.
Solution Approach 2:
The first convolution with stride 1 is performed as a preliminary action before the second convolution with larger stride. This preliminary operation prepares the data by maintaining high density and extracting fine-grained features, which then serve as input for the second operation that covers larger ranges. This sequential approach ensures that computational efficiency is preserved while achieving versatile coverage.
2Adaptability or versatility
If multiple convolutions with stride greater than 1 are performed, then larger data ranges are processed, but computational efficiency continuously decreases by factors such as 16 times and 64 times
Solution Approach 1:
The patent divides the processing into a first convolution stage with stride 1 and a second convolution stage with stride greater than 1. This segmentation ensures that the time-consuming operation is performed only once at the appropriate stage, rather than repeatedly in multiple convolutions with large strides, thereby preventing continuous time loss while maintaining data range coverage.
Solution Approach 2:
The patent maintains continuous useful action by ensuring that each convolution operation processes meaningful data without redundant computations. The first convolution with stride 1 continuously extracts dense features, and the second convolution with larger stride continuously processes these features efficiently, avoiding the repeated time-consuming operations that would occur with multiple large-stride convolutions.
3Productivity
If data is packed densely to improve computational efficiency, then operation speed increases, but the complexity of data packing and mapping increases
Solution Approach 1:
The patent changes the stride parameter between two convolution operations: stride 1 for the first convolution to maximize data density and operation speed, and stride greater than 1 for the second convolution to achieve broader coverage. This parameter change allows the system to optimize for speed when needed while maintaining manageable packing complexity.
Solution Approach 2:
The patent segments the data packing complexity into two manageable parts: the first convolution with stride 1 handles dense packing with simple, repeatable patterns, while the second convolution with larger stride handles sparse packing with reduced complexity due to fewer operations. This segmentation prevents the accumulation of excessive packing complexity while maintaining high operation speed.
Data Source
AI summary
An apparatus includes: one or more processors configured to: generate packed data by performing data packing on an encrypted image; and perform a homomorphic encryption operation based on the packed data and a weight.


