Page 344 - 《软件学报》2026年第6期
P. 344

白浩 等: 基于秘密分享的高效隐私保护卷积神经网络预测                                                     2663



                                                            e
                    在线阶段: 这个阶段包括两个步骤. 首先, 客户端将              X= X − R 发送给服务器, 因此    X 被秘密分享在客户端和服
                 务器之间. 最后, 服务器计算       W ·(X − R)+M  作为输出, 而客户端持有在离线阶段获得的            N  作为输出. 在线阶段结
                 束之后, 客户端和服务器获得         W · X  的秘密分享份额.
                    基于协议    1  完成线性层   W · X  的安全计算, 且计算结果正确, 具体见第         4.1  节正确性分析, 因此基于秘密分享
                 完成线性层安全计算并不会影响隐私保护预测结果.
                  3.2   安全非线性层
                    由于安全计算非线性层的          ReLU  激活函数通常需要依赖计算耗时的混淆电路, 并且会导致系统开销进一步增
                 加. 现有的研究工作大多采用线性近似替换              ReLU  激活函数. 然而, 这种近似处理会导致预测准确率下降. 为了克
                 服这一问题, 提出了使用参数化二次多项式进行近似处理的方案. 通过这种方法, 可以在保持预测准确率的同时,
                 以秘密共享的方式安全地完成近似计算.
                                                                                         2
                    ReLU  激活函数可以表示为       max(x,0). 与之前的研究工作类似      [9,11] , 将用二次多项式函数  x  来近似替换   ReLU.
                 完成协议   1 后, 云服务器   S  获得   M, 客户端   C  获得   N. 将云服务器的  W ·(X − R)+M 表示为   Q, 客户端的   N 表示为  P.
                                                  2               2         2                        S  本
                    为了安全地计算非线性层中的            (P+Q) , 展开表达式得到     P +2P·Q+Q . 使用线性层的输出, 云服务器
                                          2
                        2                P . 云服务器和客户端运行协议          2        P·Q, 使得双方都拥有秘密共享, 即
                 地计算   Q , 客户端  C  本地计算                             安全计算
                 U +V = P·Q. 最后, 非线性计算的结果进行秘密分享, 以确保非线性层的安全性                   (即, 云服务器持有     Q +2U, 客户
                                                                                               2
                       P +2V). 协议  2  中所述的转换过程分为: 降维转换        (即, 步骤  1), 升维转换  (即, 步骤  5  和步骤  6) 和扩充转
                        2
                 端持有
                 换  (即, 步骤  2). 具体地, 降维转换是将矩阵按行顺序转换到一维向量; 而升维转换是将向量按行顺序转换到矩阵.
                 扩充转换则是将矩阵按行顺序填充到新矩阵对角位置, 其余位置填                      0. 如图  3  所示.
                 协议  2. 非线性层计算协议.
                                                   x×y
                                   x×y
                 输入:   S  输入矩阵  Q ∈ R ,  C  输入矩阵  P ∈ R ;
                                                   x×y
                                   x×y
                 输出:   S  得到矩阵  U ∈ R ,  C  得到矩阵  V ∈ R , 其中  V +U = P·Q.
                 // 数据准备
                                               ˆ
                 1.  S  将  Q ∈ R x×y   降维转换为一维行向量  Q ∈ R 1×xy .
                 2.  C  将  P ∈ R x×y   扩充转换为矩阵   ˆ P ∈ R xy×xy  , 其中将   P ∈ R x×y  的元素填充到对角位置, 其余位置填  0.
                 3.  C  生成盲化矩阵  Z ∈ R xy×xy .
                 // 结果计算
                                                 ˆ
                         ,
                 4.   ˆ U ∈ R 1×xy ˆ V ∈ R 1×xy   矩阵分解计算协议  (Q, ˆ P, Z).
                                              x×y
                 5.  S  将   ˆ U ∈ R 1×xy   升维转换为矩阵  U ∈ R .
                 6.  C  将   ˆ V ∈ R 1×xy   升维转换为矩阵  V ∈ R .
                                              x×y


                                                      降维转换
                                              x 1  x 2
                                                                x 1  x 2  x 3  x 4
                                              x 3  x 4  升维转换
                                                                    0  0   0
                                                                x 1
                                                                0      0   0
                                                      扩充转换
                                              x 1  x 2              x 2
                                                                0   0      0
                                              x 3  x 4                 x 3
                                                                0   0  0   x 4
                                           图 3 降维转换、升维转换和扩充转换示意图
   339   340   341   342   343   344   345   346   347   348   349