G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard

admin 2022年10月1日21:01:56安全闲碎评论18 views2973字阅读9分54秒阅读模式

今天为大家推荐的论文是来自CISPA张阳老师研究组投稿的关于自监督学习模型的水印嵌入算法研究 SSLGuard: A Watermarking Scheme for Self-supervised Learning Pre-trained Encoders, 目前该工作已经被CCS 2022接收。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard

背景介绍

在图像分类任务中,以监督学习(Supervised learning)为主的深度学习模型在过去几年里取得巨大成功,但是监督学习依赖高质量的有标签的数据,且泛化能力较差。与此同时,无标签的数据随时随地都能生成,自监督学习(Self-supervised learning)试图解决如何利用没有标签的数据预训练出和监督学习性能相当的编码器,预训练好的编码器可以被下游任务使用,如后接一个线性层进行分类任务。对比学习(Contrastive learning)是自监督学习的经典范式,其核心是构建正负样本集来产生“标签”,从而指导模型进行训练。SimCLR, MoCo和BYOL是近年来最经典的对比学习算法。

由于自监督预训练编码器可以在多个下游任务场景中使用,并且训练成本昂贵,模型的基本信息(结构,参数等)通常被视为模型持有者的知识产权。在实际生活中,想使用自监督编码器的个体通常难以承受训练成本,因此AI公司可以将自监督学习编码器部署在云端使其商业化,即Encoder-as-a-Service (EaaS),如GPT-3。EaaS通常向客户提供API来上传数据和返回计算结果(embedding)。但是,敌手可以同样访问此API来发起模型窃取攻击,进而在本地训练出性能相当的编码器,并且训练成本极低。敌手可以生成盗版模型(surrogate encoders)以本地使用来减少访问费用,甚至可以部署到云端形成商业竞品,侵犯原模型持有者的知识产权。因此,本文通过向自监督学习编码器嵌入水印来保护模型的知识产权。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard
图1:攻击场景

工作概述

本文提出SSLGuard框架,通过在预训练编码器中嵌入水印,来保护模型的知识产权。SSLGuard是首个针对自监督学习模型的水印算法。同时,针对自监督学习模型的模型窃取攻击也是被首次研究。以往针对监督学习模型的水印算法被证明很难抵抗模型窃取攻击(知识蒸馏),SSLGuard通过引入shadow encoder来本地模拟模型窃取攻击,从而保证SSLGuard可以在surrogate encoder中提取出水印信息。另外,SSLGuard不受下游任务限制,仅从embbeding层面进行水印的嵌入与提取。

SSLGuard的工作流程如下图所示。给定一个要保护的目标编码器(绿色),SSLGuard可以生成一个嵌有水印的编码器(黄色)以及水印验证组件(key-tuple)。模型持有者能够利用key-tuple完成模型水印的提取,以及将水印编码器部署到云端来抵抗模型窃取攻击。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard
图2:SSLGuard工作流程

算法介绍

SSLGuard的设计需要满足以下5条性质:

  • 保真性 (Fidelity):SSLGuard需最小化对原模型性能的影响,即原模型的预测准确率基本保持不变

  • 有效性 (Effectiveness):模型拥有者可以成功地从嵌有水印的模型中提取出水印信息

  • 不可检测性 (Undetectability):非模型拥有者无法谎称模型的版权拥有,即无法从水印模型中成功提取出水印

  • 高效性 (Efficiency):SSLGuard嵌入水印所需计算成本要低

  • 鲁棒性 (Robustness):SSLGuard需抵抗多种水印擦除攻击

A. 水印嵌入

SSLGuard嵌入水印的流程包括以下3个步骤:

(1)训练shadow encoder:此部分是用来模拟模型窃取攻击。通过把来自shadow dataset的同一张图片分别输入clean encoder和shadow encoder,使其embedding的相似度变高来训练shadow encoder。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard
图3:训练shadow encoder

(2)训练trigger和decoder:SSLGuard的目标是把的图片编码到事先指定的秘钥sk附近(cosine similarity较高),而来自非的图片产生的embedding都远离sk。同样,我们需保证此性质在shadow encoder中成立。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard
图4:训练trigger和decoder

(3) 训练水印模型:嵌入水印的模型首先要保证保真性,即对于来自(与预训练数据集的分布相同)数据集的图片产生的embedding,需与原模型的embedding相似,同时还需保证可以成功提取出sk。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard
图5:训练水印模型

B. 水印提取

SSLGuard利用key-tuple中的验证数据集,以及解码器,从待验证的编码器中获得解码向量sk’,若sk’与sk的余弦相似度大于设定阈值 (如0.5),即可判断模型的归属权。作者利用watermark rate (WR) 作为判断模型所有权的检测值,即验证数据集中的图片被编码到sk附近的比率。需要说明的是,在高维空间中,两个随机向量几乎是正交的,即其夹角的余弦值分布近似成均值为0的高斯分布,且维度越高,余弦值为0的概率越大。此条性质可以保证提取出与sk余弦值靠近的sk‘是证明模型所有权的“强信号”,且可保证SSLGuard性质中的不可检测性。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard
图6:水印提取

实验结果

A. 模型窃取攻击

作者首先验证了自监督编码器易遭受模型窃取攻击。通过embedding的靠近,敌手可以训练出盗版编码器。根据敌手的背景知识不同,作者讨论了surrogate encoder训练中使用的损失函数,网络结构以及训练数据对surrogate encoder性能的影响。实验结果表明,surrogate encoder在4个下游任务的表现(DA, Downstream accuracy)与原模型的性能相近,即自监督编码器容易遭受模型窃取攻击。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard
图7:模型窃取攻击

作者同时通过训练成本的对比来表明模型窃取攻击的动机。如下表所示,攻击所需成本与原训练成本相差巨大!在不考虑原自监督算法调参,实验等人力物力的成本下,训练一个盗版模型的金钱成本也仅需~1%。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard

B. 水印算法结果分析

作者设计实验来证明SSLGuard满足设计所需性质。针对于保真性,作者在多个下游分类任务上证明了SSLGuard不会对原模型的性能造成影响。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard

同时,作者还验证了SSLGuard可以抵抗多种水印清理攻击。例如对输入图片以及输出的embedding进行扰动。实验结果表明,在不影响模型性能的同时,SSLGuard依旧可以提取出sk。

G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard
图8:SSLGuard鲁棒性分析

最后,作者还进行了消融实验,证明了算法设计中shadow encoder引入的必要性。如果没有shadow encoder,模型拥有者则无法从surrogate encoder中提取出水印信息。

论文链接:https://arxiv.org/abs/2201.11692

作者介绍

丛天硕 清华大学

清华大学高等研究院博士研究生,德国CISPA张阳老师课题组访问博士生。研究方向为机器学习的隐私与安全,密码学。

个人主页:https://tianshuocong.github.io/


原文始发于微信公众号(安全研究GoSSIP):G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年10月1日21:01:56
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  G.O.S.S.I.P 阅读推荐 2022-09-19 SSLGuard http://cn-sec.com/archives/1305835.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: