基于隐语的VisionTransformer框架

第 12 课:基于隐语的VisionTransformer框架

一、MPCViT Vision Transformer :安全且高效的 架构 MPC友好型

1.MPC下ViT隐私推理总体框架

(1).基于半诚实威胁模型的2PC的秘密分享方案

• 参与方诚实且好奇,均严格遵循既定的通信协议,但是在协议执行中仍然会学习尽可能多的信息

• 将秘密以适当的方式拆分,拆分后的每一个份额由不同参与方保存,单个参与者无法恢复秘密信息,只有若干个参与者协作才能恢复秘密消息

(2).Vision Transformer模型架构

• ViT基于Transformer的encoder架构,由输入embedding层、

Transformer块以及分类层组成。其中,每一个Transformer块包含

一个多头注意力层和MLP块,MLP块又包含两个线性层和一个GeLU

• 不同于CNN,ViT模型的主要通信瓶颈在于多头注意力机制,以及

MLP中的GeLU

2.MPCViT的三大研究动机

(1). ViT延迟分解及通信瓶颈

在SEMI-2K和Cheetah协议下的延迟分解 

(2). 不是所有的注意力都同等重要

有工作[1]发现浅层注意力更不重要,也有工作[2]发现

第二个头比较重要,下图为工作[2]中的图

(3). 不同注意力机制变体对比

对比了不同注意力的准确率和延迟

  1. MPCViT的整体算法流程
  1. .设计合适的搜索空间(三种不同的粒度)

(2).MPC感知神经架构搜索(可微分搜索) 

(3).基于延迟限 制的架构参数二值化(灵活适应) 

(4).重训练异构 注意力ViT(借助知识蒸馏提升模型性能)

4.MPCViT具体算法

• 粗粒度:Transformer层级粒度

• 中粒度:注意力头级粒度

• 细粒度:注意力行级粒度(token级)

(1).自蒸馏技术

将原始Softmax注意力机制ViT作为教师模型,

无需引入任何额外训练和推理开销

(2).传统的基于logits的蒸馏

也称为软标签蒸馏

(3).基于特征的token蒸馏

更加细粒度蒸馏,本文取最后一层特征蒸馏

二、搭建基于SecretFlow的Vision Transformer框架

1.基于SecretFlow搭建ViT框架

(1).SecretFlow Secure

Processing Unit (SPU)

(2).隐私推理协议及通信参数配置

通信协议、通信带宽、传输延迟

(3).基于Jax的ViT模型搭建

Embedding、Attention、MLP

(4).ViT模型隐私推理

SPU环境、密态运算

2.SecretFlow Secure Processing Unit (SPU)

(1).前端:High-level的模型编写

(2).编译器:针对MPC设计的优化

(3).Runtime:映射到底层MPC协议

3.隐私推理协议及模拟网络参数配置

隐私推理协议及节点配置

模拟网络参数配置throttle.sh

• WAN:局域网

• LAN:广域网

4.基于Jax的ViT模型搭建

(1).图像Patch Embedding搭建

(2).用kernel size等于patch size的卷积实现patch embedding

(3).注意力机制搭建

(4).MLP模块搭建

• 通常在较小的架构上,ViT的mlp_ratio取2

• GeLU的维度很大,是embedding dim的mlp_ratio倍

(5).Transformer模块搭建

5.ViT模型隐私推理

(1).ViT Benchmark文件

初始化SPU环境

设置输入变量维度

创建对象(某个运算/注意力层/Transformer块)

指定设备及函数

重复执行多次:

加密输入,在密文环境计算函数,输出

(2).ViT隐私推理操作流程

[1]. 配置Python环境及安装SPU,并激活Python环境

[2]. 配置并模拟通信网络环境(以WAN设置为例)

• bash ./throttle.sh del

• bash ./throttle.sh wan

[3]. 模拟MPC环境及协议

• python -m spu.binding.util.distributed -c semi2k_spdz_2pc.json up

[4]. 执行隐私推理

• 以一个4-head单个注意力层(emb=256)的隐私推理为例

三、MPCViT主要实验结果

1.主要实验结果——与近年来相关工作的对比

  1. .实验特色:

[1]. 丰富的baseline模型

Linformer (FaceBook 2020), THE-X (ACL 2021),

MPCFormer (ICLR 2023)

[2]. 三种不同的数据集

CIFAR-10, CIFAR-100, Tiny-ImageNet

(2)..主要结论:在Tiny-ImageNet数据集上,和基线ViT、MPCFormer、THE-X相比,MPCViT降低了6.2×、2.9×和1.9×延迟,并且提高了1.9%、1.3%和3.6%的准确率。

2.消融实验——知识蒸馏

(1).主要结论:

[1].与仅使用交叉熵损失函数相比,基于logits和基于特征的知识蒸馏都显著提高了ViT的性能;

[2].结合两种知识蒸馏损失函数进一步提高了准确率,特别是在一个更大的数据集上。

以上结果表明了知识蒸馏对于ViT训练重要性以及训练损失函数中三部分的不可或缺。

3.神经架构搜索的一致性和扩展性

(1).注意力头的架构参数可视化

(2).ViT层级推理延迟和通信可视化

[1].主要结论:

• 在不同的λ、不同的数据集、不同的注意力头数量的设置下,搜索结构都表现出一致性;

• 架构参数可视化与层级可视化一致,中间靠前的注意力更倾向于保留

四、课程总结

1.首先介绍了MPCViT的总体框架、研究动机、算法流程

2.该工作借助SecretFlow-SPU搭建ViT框架,并测试不同模型架构的推理效率

3.介绍了SecretFlow-SPU的特点和功能,并展开讲解了基于SecretFlow和Jax的ViT框架搭建流程

4.最后,呈现了该工作的主要实验结果,效果均优于基线模型

VisionTransformer是一种基于Transformer模型的视觉处理框架,它利用自注意力机制来建模输入图像的全局上下文。然而,VisionTransformer模型在处理图像时可能会忽略一些重要的细节信息,尤其是在处理密集的场景或具有大量小尺寸物体的图像时。

为了解决这个问题,基于隐语的VisionTransformer框架引入了隐语编码器,它可以更好地捕捉图像中的局部细节信息。隐语编码器是一个额外的编码器模块,它以多尺度的方式对输入图像进行编码,并在多个层次上提供语义信息。

具体而言,基于隐语的VisionTransformer框架包括以下步骤:

  1. 输入图像被传递给VisionTransformer编码器,该编码器将图像分割成多个小块,并对每个小块进行编码。这些小块的编码结果被送入Transformer编码器中。

  2. 在Transformer编码器中,自注意力机制被用来建模每个小块与其他小块之间的上下文关系。这样,全局的上下文信息可以被获取。

  3. 隐语编码器接受原始图像作为输入,并对其进行多尺度编码。这个编码器可以通过卷积神经网络或其他特征提取器来实现。

  4. 隐语编码器的输出被整合到Transformer编码器中,以提供更丰富的局部视觉信息。这可以通过将隐语编码器的输出与Transformer编码器的输入连接起来来实现。

  5. 使用整合了局部细节信息的Transformer编码器进行后续的任务,如图像分类、目标检测或图像生成。

基于隐语的VisionTransformer框架可以帮助提高VisionTransformer模型在处理图像时的性能,尤其是在需要捕捉细节信息的场景下。通过引入隐语编码器,该框架能够更好地处理密集的场景、小尺寸物体或其他具有细节特征的图像。

隐语框架与TEE(可信执行环境)的配合可以实现数据加密。隐语框架主要解决的是数据隐私保护和安全计算的问题,而TEE是一种安全的硬件或软件环境,可以提供可信的执行环境来保护数据和计算过程的安全性。通过将隐语框架与TEE结合,可以实现数据在计算过程中的加密和保护。 在隐语框架中,数据可以使用全密态计算或明密文混合计算的方式进行加密。全密态计算是一种在密文环境中进行计算的方式,数据在计算过程中一直保持加密状态,可以使用Secure Aggregation算法、MPC密态引擎、同态加密等技术来进行计算。而明密文混合计算则是将部分计算从密文环境搬到明文环境,在明文环境中进行计算可以提升计算的性能,同时通过安全退让来保证数据的安全性。 TEE提供了一个可信的执行环境,可以保护计算过程中的数据和代码安全。在隐语框架中,可以使用TEE来实现数据的加密和解密操作,以及进行安全计算。TEE可以提供硬件级的安全保护,例如Intel SGX和ARM TrustZone等,也可以通过软件模拟的方式提供安全执行环境。 通过隐语框架配合TEE实现数据加密,可以在保护数据隐私的前提下,进行安全的计算和数据交换。这种组合可以应用于各种场景,例如联邦学习、数据交易市场等,为数据安全和隐私保护提供了一种可行的解决方案。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [隐私计算技术|深度解读可信隐私计算框架隐语”](https://blog.youkuaiyun.com/m0_69580723/article/details/126662952)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值