基于同态加密的机器学习模型训练
同态加密(HE)技术允许在加密数据上直接进行计算,为云端机器学习训练提供额外安全层。客户可上传加密训练数据,服务方直接生成加密模型,仅客户能用密钥解密。
同态加密原理
同态加密提供加密数据函数计算的API接口,支持加密数值的加法与乘法操作。通过电路描述函数(仅使用HE版加法/乘法),eval操作可对加密输入计算函数输出。
乘性深度优化
电路效率取决于乘性深度(电路路径中最大乘法次数)。通过优化电路结构,可将计算x⁴+2的乘性深度从3降为2,显著提升计算效率。
同态加密训练逻辑回归模型
客户加密数据并发送至云服务,服务方基于加密数据计算加密模型后返回。核心挑战是将逻辑回归训练函数转换为低深度电路。
技术突破
- 相比原有深度5k(k为小批量数量)的电路,新方案将乘性深度降至2.5k
- 结合线性代数操作工具包与编译器优化技术:
- 循环展开:替换循环体为多副本, enabling further optimizations
- 流水线处理:允许循环迭代重叠执行
- 消除数据依赖:通过计算副本增加电路宽度(并行操作数),降低深度
实验结果
在MNIST手写数字数据集上测试:
- 新电路带宽需求增加80%
- 虽包含4倍于基线方案的乘法操作,但并行实现下训练速度提升6倍(13秒 vs 基线80秒)
- 加密训练模型与明文数据训练模型精度一致
扩展应用
为简化其他机器学习模型的同态加密电路开发,某机构推出同态加密实现工具包(HIT),提供高级API和电路评估器,现已开源。
本文基于WAHC 2020研讨会论文《A low-depth homomorphic circuit for logistic regression model training》,聚焦加密计算与同态密码学应用。