同态加密加速机器学习模型训练

本文介绍了一种基于同态加密的机器学习模型训练新方法,通过优化电路深度将加密数据训练速度提升六倍,同时保持模型准确性,涉及线性代数工具包和编译器优化技术。

基于同态加密的机器学习模型训练

同态加密(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》,聚焦加密计算与同态密码学应用。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计