In order to reduce the overall time and communication overhead, of course, we must start with the basic computation. From the micro perspective, neural network includes linear computation and nonlinear computation. The linear computation mainly consists in the matrix multiplication of the fully connected layer and the convolutional layer, that is, addition and multiplication. The nonlinear computation consists in maxpool layers and nonlinear activation functions, such as rectified linear unit (ReLU), Sigmoid, and Softmax. The basic nonlinear computation involved includes comparison, division, and exponential. Generally, Secret Sharing is more efficient for linear computation, among which addition is free, multiplication can be computed by the pre-computed multiplication triplets, but it is less efficient for nonlinear computation or even cannot be computed, whereas Garbled Circuit can express these functions. However, for linear computation, the circuit has high depth and low efficiency. At the same time, Garbled Circuit needs to introduce a large amount of communication, and the garbler needs to express the entire computation as a circuit and send the truth table to the decoder. Consequently, the huge amount of communication will also reduce the efficiency. Regarding the advantages of the two cryptographic methods, the main research direction of the current study is to mix the two methods: the linear part is computed by Secret Sharing, and the nonlinear part is computed by Garbled Circuit. However, the conversion of the two types of secret also brings considerable overheads. ABY[1]}, SecureML and ABY\(^3\)  have optimized a lot in this regard. For emphasis, in the computation of the neural network, the matrix multiplication still accounts for more of the whole process, so the most important thing is to express more nonlinear computation as a way to compute using Secret Sharing. While reducing the number of calling for Garbled Circuit, the overhead of secret conversion can also be further reduced.
