0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一个基于PyTorch的隐私保护机器学习框架

倩倩 来源:星集 2020-04-15 17:49 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

CrypTen

CrypTen是一个基于PyTorch的隐私保护机器学习框架。其目标是使机器学习从业人员可以访问安全的计算技术。它目前将Secure Multiparty Computation 作为其安全计算后端来实现,并为ML研究人员提供了三个主要好处:

首先是机器学习。该框架通过CrypTensor 外观与感觉完全像PyTorch 的对象来呈现协议Tensor。这使用户可以使用类似于PyTorch中的自动区分和神经网络模块。CrypTen基于库。就像PyTorch一样,它实现了张量库。这使从业人员更容易调试,试验和探索ML模型。该框架的构建考虑了现实世界中的挑战。CrypTen不会缩减规模或简化安全协议的实现。这是一些CrypTen代码,用于加密和解密张量并添加它们

import torchimport cryptencrypten.init()x = torch.tensor([1.0, 2.0. 3.0])x_enc = crypten.cryptensor(x) # encryptx_dec = x_enc.get_plain_text() # decrypty_enc = crypten.cryptensor([2.0, 3.0, 4.0])sum_xy = x_enc + y_enc # add encrypted tensorssum_xy_dec = sum_xy.get_plain_text() # decrypt sum它目前尚未量产,其主要用途是作为研究框架。

安装CrypTen

CrypTen当前在Linux和Mac上运行。它还需要每晚进行一次PyTorch构建。不支持Windows。我们目前还不支持在GPU上进行计算。

安装Anaconda 2019.07或更高版本,然后执行以下操作:

对于Linux或Mac

conda create -n crypten-env python=3.7conda activate crypten-envconda install pytorch torchvision -c pytorchgit clone github.com/facebookresearch/CrypTen.gitcd CrypTenpip install -e .如果要在examples目录中运行示例,还应该执行以下操作

pip install -r requirements.examples.txt例子

我们在examples目录中提供了涵盖各种模型的示例

线性SVM示例mpc_linear_svm生成随机数据,并在加密数据上训练SVM分类器。LeNet示例mpc_cifar以明文形式在CIFAR上训练LeNet的改编,并加密模型和数据以进行推理。TFE基准示例,tfe_benchmarks以明文形式在MNIST上训练了三种不同的网络体系结构,并对经过训练的模型和数据进行加密以进行推理。土匪示例,bandits在加密数据(MNIST)上训练了上下文土匪模型。imagenet示例mpc_imagenet对的预训练模型进行推断torchvision。对于以明文形式训练的示例,我们还在model每个示例子目录的子目录中以明文形式提供了预先训练的模型。

您可以通过执行以下操作检查所有示例特定的命令行选项;此处显示的是tfe_benchmarks:

$ python3 examples/tfe_benchmarks/launcher.py --helpCrypTen如何工作

tutorials目录中有一组教程,展示了CrypTen的工作方式。这些作为Jupyter笔记本电脑出现,因此请在conda环境中安装以下内容

conda install ipython jupyterpip install -r requirements.examples.txtIntroduction.ipynb-安全多方计算简介;CrypTen的基础安全计算协议;我们尝试解决的用例以及我们假设的威胁模型。Tutorial_1_Basics_of_CrypTen_Tensors.ipynb-引入了CrypTensorCrypTen的加密张量对象,并展示了如何使用它对该对象执行各种操作。Tutorial_2_Inside_CrypTensors.ipynb–深入研究CrypTensor以显示内部工作原理;具体来说,如何CrypTensor将MPCTensor其后端以及两种不同类型的共享(算术和二进制)用于两种不同类型的函数。它还显示了CrypTen的MPI启发式 编程模型。Tutorial_3_Introduction_to_Access_Control.ipynb -显示如何使用CrypTen训练线性模型,并在适用的情况下显示数据标记,特征聚合,数据集扩充和模型隐藏的各种场景。Tutorial_4_Classification_with_Encrypted_Neural_Networks.ipynb –显示CrypTen如何加载预先训练的PyTorch模型,对其进行加密,然后对加密数据进行推断。Tutorial_5_Under_the_hood_of_Encrypted_Networks.ipynb -检查CrypTen如何加载PyTorch模型,如何对其进行加密以及数据如何通过多层网络传输。Tutorial_6_CrypTen_on_AWS_instances.ipynb-显示了如何scrips/aws_launcher.py 在AWS上启动我们的示例。它也可以与您用CrypTen编写的代码一起使用。Tutorial_7_Training_an_Encrypted_Neural_Network.ipynb-引入AutogradCrypTensor了一个包装器,该包装器将自动区分功能添加到CrypTensor。这使您可以在CrypTen中训练神经网络。我们希望CrypTensor在将来的版本中将此功能移至对象中。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • gpu
    gpu
    +关注

    关注

    28

    文章

    5099

    浏览量

    134459
  • 线性
    +关注

    关注

    0

    文章

    218

    浏览量

    26138
  • pytorch
    +关注

    关注

    2

    文章

    813

    浏览量

    14699
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    发布元服务配置隐私声明

    元服务必须先使用AGC的隐私声明托管服务生成自己的隐私声明,才能在版本信息页面选择到。详细内容参见配置隐私声明(元服务)和配置用户协议。 登录AppGallery Connect,点击“APP与元
    发表于 11-25 11:24

    发布元服务配置隐私说明

    如果检测到元服务中涉及获取敏感隐私权限或者使用受限开放权限,需要填写“应用隐私说明”。 注意 如果软件包中声明使用了受限开放权限,请确保创建的发布Profile也申请了对应权限,否则元服务审核时将会
    发表于 11-24 15:19

    超小型Neuton机器学习模型, 在任何系统级芯片(SoC)上解锁边缘人工智能应用.

    Neuton 是家边缘AI 公司,致力于让机器 学习模型更易于使用。它创建的模型比竞争对手的框架小10 倍,速度也快10 倍,甚至可以在最先进的边缘设备上进行人工智能处理。在这篇博文
    发表于 07-31 11:38

    大成建设(Taisei)图像数据隐私保护与AI开发协同案例解析

    基于数字化转型下的图像数据隐私保护与AI开发难题,本文以Taisei公司为例,详解客户实际需求,匹配隐私保护和数据效用完美均衡的深度自然匿名化方案,推动其人工智能的开发。
    的头像 发表于 07-30 10:23 525次阅读
    大成建设(Taisei)图像数据<b class='flag-5'>隐私</b><b class='flag-5'>保护</b>与AI开发协同案例解析

    【HarmonyOS 5】鸿蒙应用隐私保护详解

    【HarmonyOS 5】鸿蒙应用隐私保护详解 ##鸿蒙开发能力 ##HarmonyOS SDK应用服务##鸿蒙金融类应用 (金融理财# 、前言 在今天这个手机不离手的时代,我们每天用手机支付
    的头像 发表于 07-11 18:30 956次阅读

    Nordic收购 Neuton.AI 关于产品技术的分析

    Nordic Semiconductor 于 2025 年收购了 Neuton.AI,这是家专注于超小型机器学习(TinyML)解决方案的公司。 Neuton 开发了种独特的神经网
    发表于 06-28 14:18

    【「# ROS 2智能机器人开发实践」阅读体验】机器人入门的引路书

    的限制和调控) 本书还有很多前沿技术项目的扩展 比如神经网络识别例程,机器学习图像识别的原理,yolo图像追踪的原理 机器学习训练三大点: 先准备
    发表于 04-30 01:05

    STM32如何移植Audio框架

    最近在学习音频解码,想用下Audio框架。 1、这个该如何移植到自己创建的BSP并对接到device框架中?看了官方移植文档没有对没有对该部分的描述。 2、我只想实现
    发表于 04-01 08:08

    如何在Arm Ethos-U85上使用ExecuTorch

    在快速发展的机器学习领域,PyTorch 凭借其灵活性和全面的生态系统,已成为模型开发的热门框架。Arm 与 Meta 合作在 ExecuTorch 中引入了对 Arm 平台的支持,进
    的头像 发表于 02-14 14:23 1015次阅读
    如何在Arm Ethos-U85上使用ExecuTorch

    苹果研发ELEGNT框架,推动家用机器人动作自然化

    ELEGNT框架的有效性,研究团队设计了款类似皮克斯动画《Luxo Jr.》中台灯形象的机器人原型。这款机器人配备了6轴机械臂,并拥有
    的头像 发表于 02-08 11:11 901次阅读

    深度自然匿名化:隐私保护与视觉完整性并存的未来!

    在科技快速发展的当下,个人隐私保护的需求日益凸显。如何能在隐私保护的基础上,保持视觉完整性,从而推动企业开发与创新? 深度自然匿名化(DNAT)已被证明是传统模糊化方法的更优替代方案,
    的头像 发表于 01-15 15:57 4803次阅读
    深度自然匿名化:<b class='flag-5'>隐私</b><b class='flag-5'>保护</b>与视觉完整性并存的未来!

    【「具身智能机器人系统」阅读体验】+两本互为支持的书

    如何使用PyTorch进行数字图像处理,它借助摄像头来获取视频的图像信息,然后通过已有的图像识别框架模型经深度学习和优化以达到更精准的识别结果,从而为进步的执行处理提供数据支持和依据
    发表于 01-01 15:50

    传统机器学习方法和应用指导

    用于开发生物学数据的机器学习方法。尽管深度学习般指神经网络算法)是强大的工具,目前也非常
    的头像 发表于 12-30 09:16 1982次阅读
    传统<b class='flag-5'>机器</b><b class='flag-5'>学习</b>方法和应用指导

    Triton编译器在机器学习中的应用

    多种深度学习框架,如TensorFlow、PyTorch、ONNX等,使得开发者能够轻松地将不同框架下训练的模型部署到GPU上。 2. Triton编译器的工作原理 Triton编译器
    的头像 发表于 12-24 18:13 1629次阅读

    利用Arm Kleidi技术实现PyTorch优化

    PyTorch广泛应用的开源机器学习 (ML) 库。近年来,Arm 与合作伙伴通力协作,持续改进
    的头像 发表于 12-23 09:19 1619次阅读
    利用Arm Kleidi技术实现<b class='flag-5'>PyTorch</b>优化