共计 1801 个字符,预计需要花费 5 分钟才能阅读完成。
【摘要】海量训练数据是人工智能技术在各个领域胜利利用的重要条件。例如,计算机视觉和商务经融举荐零碎中的 AI 算法都依附大规模标记良好的数据能力取得较好的推理成果。然而在医疗、银行以及一些政务畛域中,行业内对数据隐衷的爱护越来越强,造成可用数据重大匮乏的现状。针对上述问题,华为云可信智能计算服务(TICS)专为突破银行、政企等行业的数据壁垒,实现数据安全共享,设计了多方联邦学习计划。
本篇博客次要介绍了华为云可信智能计算服务(TICS)采纳的纵向联邦逻辑回归(LR)计划。
一、什么是逻辑回归?
回归是形容自变量和因变量之间相互依赖关系的统计分析办法。线性回归作为一种常见的回归办法,罕用作线性模型(或线性关系)的拟合。
逻辑回归(logistic regression)尽管也称为回归,却不是一种模型拟合办法,而是一种简略的“二分类”算法。具备实现简略,算法高效等诸多长处。
图 1.1 二维线性回归
图 1.2 三维线性回归
1.1 线性回归(linear regression)
图 1.1、1.2 别离示意二维和三维线性回归模型,图 1.1 的拟合间接(蓝线)可示意为 y=ax+b,所有数据点(红点)到直线的总欧式间隔最短,欧式间隔罕用作计算指标损失函数,进而求解模型;相似的,图 1.2 的所有数据点到二维立体的总欧式间隔最短。所以线性回归模型通常能够示意为:
其中 θ 示意模型系数。
1.2 逻辑回归(LR)
LR 是一种简略的有监督机器学习算法,对输出 x,逻辑回归模型能够给出 y<0 or y>0 的概率,进而推断出样本为正样本还是负样本。
LR 引入 sigmoid 函数来推断样本为正样本的概率,输出样本 x 为正样本的概率能够示意为:P(y|x) = g(y),其中 g() 为 sigmoid 函数,
曲线图如图 1.3 所示,输入区间为 0~1:
图 1.3 sigmoid 曲线
对于已知模型 θ 和样本 x,y= 1 的概率能够示意为:
所以 sigmoid 尤其实用于二分类问题,当 g(y) > 0.5 时,示意 P(y=1|x) > 0.5,将其判为正样本,对应 y>0;反之,当 g(y) < 0.5 时,示意 P(y=1|x) < 0.5,将其判为负样本,对应 y<0。
1.3 LR 损失函数
LR 采纳对数损失函数,对于训练集 x∈S,损失函数能够示意为(参考 https://zhuanlan.zhihu.com/p/…):
梯度降落算法是 LR 模型的经典解法之一,模型迭代更新的表达式如下:
其中
- l()为指标损失函数,实质为均匀对数损失函数。
- S’ 为批处理数据集(大小为 batchsize),通过批处理形式引入随机扰动,使得模型权重更加疾速迫近最优值。
- α 为学习率,间接影响模型的收敛速度,学习率过大会导致 loss 左右震荡无奈达到极值点,学习率太小会导致 loss 收敛速度过慢,长时间找不到极值点。
二、纵向联邦学习场景下的 LR
对于纵向联邦学习的介绍曾经不足为奇,市面上也涌现出很多优良的产品,比方 FATE、华为可信智能计算 TICS 等。纵向联邦能够实现多用户在不裸露己方数据的前提下,共享数据和特色,训练出精度更高的模型,对于金融和政务等泛滥行业具备重要意义。
图 2.1 纵向联邦 LR
2.1 LR 的纵向联邦实现
纵向联邦学习的参与方都是抱着共享数据、不裸露己方数据的目标退出到联邦中,所以任何敏感数据都必须通过加密能力出己方信赖域(图 2.1,参考 https://arxiv.org/pdf/1711.10…),这就引入了同态加密算法。同态加密为密文计算提供了可行性,同时也肯定水平上影响了机器学习算法的性能。常见的同态加密库包含 seal、paillier 等。
LR 的纵向联邦流程如图 2.2 所示,host 示意只有特色的一方,guest 示意蕴含标签的一方。
图 2.2 纵向联邦 LR 算法实现流程
- 在训练开始之前,作业单方须要替换同态公钥。
- 每轮 epoch(迭代)的 batch(一轮 batchsize 的计算为一个 batch)循环中,蕴含 calEncryptedU–>calEncryptedGradient–>decryptGradient–>updateLrModel 四步,guest 和 host 都须要按此程序执行一遍(流程图中只体现了 guest 作为发起方的执行流程)。
A2 步骤中梯度加随机噪声的目标是为了避免己方 U 泄露,造成平安问题。
因为同态加密计算只反对整数、浮点数的加法和乘法,所以将 1.3 中的模型迭代公式中的指数局部示意成泰勒表达式模式: