一文搞懂隐私计算

隐私计算(Privacy computing)是指在保证数据不对外泄露的前提下,由两个或多个参与方联合完成数据分析计算相关技术的统称。

隐私计算作为跨学科技术,以密码学为核心理论, 结合了大数据、人工智能、区块链等多领域知识。其这些技术路线中,以安全多方计算为代表的基于密码学的隐私计算技术、以联邦学习为代表的人工智能与隐私保护技术融合衍生的隐私计算技术、以可信执行环境为代表的基于可信硬件的隐私计算技术是目前隐私计算的三大主流关键技术。

1. 安全多方计算

安全多方计算SMC,Secure Multi-party Computation)是指在一个互不信任的多用户网络中, n n n个参与者 P 1 , P 2 , . . . , P n P_1,P_2,...,P_n P1,P2,...,Pn,每个持有秘密数据 x i x_i xi,希望共同计算出函数 f ( x 1 , x 2 , . . . , x n ) = ( y 1 , y 2 , . . . , y n ) f(x_1,x_2,...,x_n)=(y_1,y_2,...,y_n) f(x1,x2,...,xn)=(y1,y2,...,yn) P i P_i Pi仅得到结果 y i y_i yi,并且不泄露 x i x_i xi给其他参与者。

安全多方计算问题由由中国计算机科学家、2000年图灵奖获得者姚启智教授于1982年在论文《Protocols for secure computations》中以百万富翁问题(提出,开创了密码学研究的新领域。

安全多方计算主要聚焦于秘密共享同态加密比特承诺零知识证明混合网络不经意传输等基本模块的研究,以及隐私集合交集(PSI,Private Set Intersection)、隐私信息检索(PIR,Private Information Retrieval)等特定安全多方计算问题的解决。

2. 联邦学习

联邦学习(FL,Federated Learning)的基本思想是各参与方从中心服务器下载现有参数模型,然后使用本地原始数据进行模型训练,并将训练后的更新模型加密上传至中心服务器,中心服务器将收集到的各参与方的更新模型进行聚合计算,最终产生新的适用全局的最佳模型。

联邦学习以数据收集最小化为原则,参与方原始数据不出本地库,只交换加密的中间结果,有效实现了 参与方数据的隐私保护。

根据参与方提供的训练数据的样本和特征重合情况,联邦学习分为横向联邦学习、纵向联邦学习以及联邦迁移学习。

(1)横向联邦学习适用于样本重合度低、特征重合度高的场景,通过增加具有相同特征的样本数量来提升模型训练效果。在这里插入图片描述
(2)纵向联邦学习适用于样本重合度高、 特征重合度低的场景,通过丰富相同 样本的特征维度来优化模型。

在这里插入图片描述
(3)联邦迁移学习适用 于样本重合度低、特征重合度也低的场景,通过迁移学习解决单边数据规模小以及标签缺失或样本少的问题,以提升模型 训练效果。
在这里插入图片描述

3. 可信执行环境

可信执行环境(TEE,Trusted Execution Environment, )是一种基于软硬件的安全架构,通过复用中央处理器或划分部分内存为安全区域,构建出一个与外部相隔离的安全计算环境,所有敏感数据均汇聚在该安全区域内进行计算,未经授权访问 ,其他任何外部攻击者,包括系统管理人员均无法控制环境内的运算执行,也无法获取环境内的敏感数据,硬件隔离充分保证了环境内敏感数据 隐私计算的安全性。

目前可信执行环境的实现技术 主要有Intel的SGX、ARM 的 TrustZone等。

4. 隐私计算三类技术比较

  • 安全多方计算因其基于密码学原理,安全性高,且不依赖于可信第三方,相对联邦学习和可信执行环境技术成熟度高,不过由于其基于密码学操作,随着参与方的不断增多会导致计算复杂度的增加。
  • 联邦学习因原始数据不流出,一定程度上满足了数据的隐私安全需求,且不依赖于可信第三方,可解决算法复杂的建模问题,因此性能方面存在一定的瓶颈,需结合其他隐私保护技术才能保证数据隐私安全。
  • 可信执行环境通用性好、准确性高,因原始数据不流出硬件隔离环境故安全性高,可单独用于隐私计算,也可以与其他隐私保护技术相结合,计算性能高,但需要确认硬件厂商是否可信。
关键技术安全多方计算联邦学习可信执行环境
基本思想基于密码学数据不动模型动基于可信硬件
性能低到中
通用性
准确性中到高
安全性中到高
可信方不需要不需要需要
成熟度成熟快速增长的创新阶段快速增长的创新阶段
数据流动原始数据加密后流出原始数据不流出原始数据不流出
计算模式分布式分布式中心化
硬件要求通用硬件通用硬件专用硬件
实现难度开发难度大易开发开发难度大
支持场景任意计算机器学习建模任意计算
### YOLOv8 的主要特性和使用教程 #### 一、YOLOv8的主要特性 YOLOv8 是目标检测领域的一个重要进展,具有多个显著特点: - **轻量级跨尺度特征融合(CCFM)**:通过引入 CCFM 模块实现了更有效的多尺度特征提取和融合,提升了模型性能的同时保持了较低的计算成本[^3]。 - **改进的数据增强方式**:采用更加多样化且高效的数据增广手段来提高泛化能力,在不同场景下均能取得良好效果[^4]。 - **优化后的骨干网络设计**:相较于前代版本,YOLOv8 对其基础架构进行了调整与优化,使得整体效率更高,速度更快[^1]。 - **支持多种任务类型**:除了常规的目标分类外,还能够处理实例分割等复杂视觉识别挑战。 #### 二、YOLOv8 使用教程 ##### 安装依赖库并准备环境 为了顺利地安装和运行 YOLOv8 ,建议先创建一个新的 Python 虚拟环境,并按照官方文档中的指导完成必要的软件包安装工作。通常情况下这会涉及到 PyTorch 及其他辅助工具链的选择与配置。 ```bash conda create -n yolov8 python=3.9 conda activate yolov8 pip install ultralytics ``` ##### 准备数据集 准备好用于训练或测试目的图像资料集合非常重要;这些素材应该被妥善整理成标准格式以便于后续操作。对于自定义项目而言,则需参照特定框架的要求来进行相应预处理步骤。 ##### 编写配置文件 编写合适的 `.yaml` 文件以指定各项超参数设定以及输入源信息等内容。此过程可能涉及但不限于设置锚框尺寸、类别数目以及其他影响最终输出质量的关键因素。 ```yaml train: ./datasets/train/images/ val: ./datasets/valid/images/ nc: 80 names: ['person', 'bicycle', ... ] ``` ##### 启动训练进程 当一切准备工作就绪之后就可以调用命令行接口执行实际的学习任务了。这里需要注意的是具体选项可能会依据个人需求有所差异,请务必仔细阅读相关说明材料后再做决定。 ```python from ultralytics import YOLO model = YOLO('yolov8.yaml') results = model.train(data='coco128.yaml', epochs=100, imgsz=640) ``` ##### 进行预测评估 最后一步则是利用已经训练好的权重文件对未知样本实施推断作业,并据此作出合理的判断结论。同样可以通过简单的 API 接口轻松达成这一目标。 ```python predictions = model.predict(source="https://ultralytics.com/images/bus.jpg", conf=0.5) print(predictions) ```
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

隐私无忧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值