Page 266 - 《软件学报》2026年第2期
P. 266

余欢 等: Antelope: 基于  GPU  的三方隐私保护机器学习框架                                           745


                    ● 卷积运算: 卷积计算占用线性层的大部分运行时间, 因此卷积运算的快慢将很大程度影响线性层的运行速
                 度. 在卷积运算的实验中同样设计了两个维度的对比实验: 图                   4(a) 保持批量大小和卷积核尺寸不变, 改变输入的
                 图像尺寸; 图   4(b) 保持图像尺寸和卷积核尺寸不变, 改变输入批量大小. 同时为了更近似经典卷积神经网络模型
                 中的卷积运算, 在这两个实验中, 设置所有卷积都有                3  个输入通道、64    个输出通道、1×1     的步长和    1×1  的填充,
                 设置卷积核尺寸为       3×3. 此外, 在第  1  组实验中设置批量大小为        128, 在第  2  组实验中设置图像尺寸为       32×32. 实
                 验结果如图     4  所示, 与  CryptGPU  和  Piranha 相比, 本研究的卷积运算具有稳定的性能优势, 较            CryptGPU  快
                 2–3  倍, 较  Piranha 快  2  倍, 并且不会随着输入维度和输入批量大小的改变而改变, 这极大地提升了线性层的计算
                 速度.


                             10 8  Antelope  Piranha  CryptGPU

                            运行时间的对数  6 4                                  3.3  4.2  4.2  4.5  6.1





                              2       1.6  2.2    1.7  2.3  1.8  2.3  2.8  2.8
                                    1.1         1.2
                              0
                                      32          64          128         256         512
                                                            图像尺寸
                                                          (a) 改变图像尺寸

                                   Antelope  Piranha  CryptGPU
                             10 8
                            运行时间的对数  6 4  3.5     3.5  4.2  3.8  4.1  5.2  4.5  4.7  6.1  5.5  6.0  7.1




                              2     2.2  2.6    3.1

                              0
                                      32          64          128         256         512
                                                            批量大小
                                                         (b) 改变批量大小
                                              图 4 安全卷积运算的运行时间比较

                    ● ReLU 激活函数: 对于    ReLU  激活函数, 分别测试在不同输入规模下本文协议和               CryptGPU  协议的运行时间
                 和总通信量. 通过实验分析通信轮数和通信量在不同输入规模下对算法性能的影响, 结果如图                              5  所示. 可以看到,
                 本文  ReLU 协议在实验选取的所有规模的输入下均比               CryptGPU 和 Piranha 要快. 详细来说, 在输入数据量较小时
                    3
                 (<10 ), 本文 ReLU 函数的计算速度较 CryptGPU 提高了近 25 倍, 较      Piranha 提高了近 16 倍. 这可以大大提高小数
                 据量的比较时间, 如 Softmax 损失函数中的输入正则化. 而随着输入规模进一步增加, 本文协议的运行时间与
                 CryptGPU  和  Piranha 逐渐接近, 但也能保持  2–4  倍的加速. 主要是因为通信量的增加, 减弱了通信轮数少带来的优
                 势; 而对于  Piranha, 该协议设计了数据在      GPU 上的存储布局, 并且实际运行时部分需要频繁通信的数据会缓存在
                 CPU  上, 这减小了通信开销, 而     Antelope 为了增加本地计算的速度, 数据始终保存在 GPU 上, 因而在通信时会带
                 来额外的   CPU-GPU  数据迁移开销, 但是在基准测试中可以发现             Antelope 仍展现出较   Piranha 更快的运算速度, 表
                 示本文所设计的      ReLU  对于通信轮数的减小弥补了增大通信量以及              CPU-GPU  数据迁移开销的负担.
   261   262   263   264   265   266   267   268   269   270   271