Page 263 - 《软件学报》2026年第2期
P. 263
742 软件学报 2026 年第 37 卷第 2 期
使用本文提出的最高符号位获取协议和比特转换协议高效实现. 为保证最高符号位获取协议的正确性, 选取质数
p = 2 −1, 因为此协议中进行比较的数据量仅为 32 bit, 通信量的增加不会明显影响算法性能.
61
3.5 Softmax 损失函数
Softmax 损失函数将模型的原始预测值转换为概率分布, 然后使用交叉熵损失函数来计算预测结果与真实标
签之间的差异. 对于 d-分类网络模型而言, Softmax 函数的输入是向量 x = (x ,..., x (n−1) ), 计算公式为:
(0)
( )
exp x ( j)
( j) ( j)
x ,→ x 7→ = y ↠ y =: Softmax(x).
d−1
∑ ( )
exp x (k)
k=0
(0)
记 max(x) := max{x ,..., x (n−1) }, 浅显的观察是 Softmax(x) = Softmax(x−max(x)). 问题转化为 exp 函数的计算
以及倒数 Reciprocal 协议的实现. 文献 [21] 的方案是计算 exp(x) = 2 xlog 2 e , 然后转而设计计算 x 7→ 2 的协议, 具体
x
是将 x 分为整数部分和小数部分, 整数部分采用类似于快速幂的手法累乘, 小数部分的计算依据拟合函数实现. 在
本文中, 我们没有使用将数划分为整数部分和小数部分的手法, 这是因为直接使用多项式拟合方法带来的精度已
经满足 Antelope 所支持的神经网络结构的精度要求, 并且 Antelope 利用多项式
( x ) 2 m
p m (x) := 1+
2 m
直接拟合 exp 函数, 这个函数在 (−∞,0) 范围内相比 Taylor 对于 exp 的拟合效果更好, 例如, p m (x) → 0 (x → −∞)
x
∑ n
m
但是 → ∞. 具体实现时, ·/2 直接使用 Truncate 协议实现, 而外层的幂运算可以使用倍增思想快速实现, 总
n!
n⩽m
体能够实现精度上的小损失带来计算复杂度的降低. Reciprocal 协议的实现类似 InvSqrt 协议, 基于 Newton 迭代
x n+1 = x n (2−zx n ) 以及 第 3.4 节中的迭代初值选定算法.
4 实验分析
4.1 实验环境
本文实验在阿里云的 3 台 GPU 计算实例上进行, 以模仿真实的三方场景. 每个实例运行 Ubuntu 18.4 操作系
统, CPU 为英特尔至强 8163 (Skylake), 主频为 2.5 GHz, 运行内存为 32 GB. 每个实例配置一张英伟达 Tesla V100,
GPU 内存为 16 GB. 3 台云服务器通过内网连接, 带宽为 2.5 GB/s, 平均通信延迟为 0.15 ms. 我们选择在 3 个标准
图片分类数据集上进行测试, 即 MNIST [27] 、CIFAR-10 [28] 和 Tiny ImageNet [29] . 这 3 个数据集的计算数据量逐渐增
加, 同时分类类别也在增加, 详见表 2. 此外, 在几个具有代表性的卷积神经网络模型上测试安全推理和训练的性
[31]
[32]
[30]
能, 即 LeNet 、AlexNet 和 VGG-16 . 在上述网络模型中将 ReLU 层置于池化层之后, 并对 AlexNet 和 VGG-16
针对小数据集进行了调整, 使得全连接层能匹配输入大小和分类的数量. 虽然 Antelope 框架支持最大值池化计算,
但是与 CryptGPU 一样, 本文用平均池化取代了最大池化. 我们对之前的工作进行了相同的调整.
表 2 实验数据集
数据集 图片尺寸 图片类型 类别数量
MNIST 28×28 GRAY 10
CIFAR-10 32×32 RGB 10
Tiny ImageNet 64×64 RGB 200
本文采用交叉熵损失函数进行分类训练, 所有模型的权重均使用 Xavier 初始化. 训练过程在三方安全计算环
境下执行, 所有计算均由 Antelope 的秘密共享协议支持. 此外, 我们遵循 PPML 领域的实验标准, 确保训练过程的
可复现性.
4.2 安全训练和预测性能分析
为了减少误差, 对每组实验计算 10 次端到端运行时间, 取平均值作为结果.

