【医学图像隐私保护】PLAN方法:解决 GAN 生成医学图像 Latent 空间中的隐私保护

PLAN方法:解决 GAN 生成医学图像 Latent 空间中的隐私保护方法

    • PLAN 原理
      • StyleGAN 生成视网膜图
      • k-SALSA 生成视网膜图
      • PLAN方法 生成视网膜图
    • 总结

 


PLAN 原理

论文:https://arxiv.org/abs/2307.02984

代码:https://github.com/perceivelab/PLAN

 

生成对抗网络 (GAN) 已经证明了其生成与目标分布匹配的合成样本的能力(比如 Sytle GAN 生成视网膜图)。

然而,从隐私角度来看,使用 GAN 作为数据共享的代理并不是一个安全的解决方案,因为它们往往会在latent空间中嵌入接近重复的真实样本。

最近的研究通过在潜在空间中聚合样本来解决这个问题,是受到k-匿名原则的启发,但这样做的缺点是将数据集的大小减少了k倍。

PLAN方法旨在通过提出一种隐空间(Latent Space)导航策略来缓解这个问题,该策略能够生成多种合成样本,这些样本可以支持深度模型的有效训练,同时以原则性的方式解决隐私问题。

我们的方法利用辅助身份分类器作为指导,以非线性的方式在潜在空间中的点之间行走,最小化与真实样本近似副本的碰撞风险。

论文实证,给定潜在空间中任意一对随机点,我们的行走策略比线性插值更安全。

然后,我们将寻路策略与k-same方法结合起来,并在结核病分类和『糖尿病视网膜病变分类』的两个基准测试中进行了测试,使用我们的方法生成的样本训练模型可以减轻性能下降,同时保持隐私保护。

对于糖尿病视网膜病变分类,使用了APTOS眼底图像数据集,这个数据集包含被眼科医生按照严重程度分为五级的视网膜图像。

为了模拟医学应用中常见的数据量有限的情况,随机选择了950张图像,均匀分布在各个类别中。

所有图像都被调整大小到256×256,并按照70%、10%、20%的比例划分为训练集、验证集和测试集。
 

StyleGAN 生成视网膜图

比如使用StyleGAN来生成视网膜图:

  1. 训练数据收集:首先收集大量真实的视网膜图像作为训练数据集。
  2. 训练StyleGAN:使用这些真实的视网膜图像来训练StyleGAN模型。这个训练过程通过不断的迭代,让生成器(G)学习如何产生看起来真实的视网膜图像,而鉴别器(D)学习如何区分真实图像和生成图像。
  3. 生成图像:训练完成后,可以通过向生成器输入潜在空间中的随机点,生成新的视网膜图像。

但是,如果直接从GAN生成数据,可能会有隐私泄露的风险,特别是在图像与个人健康数据紧密相关的情况下。

因为 GAN 会在 latent 空间中嵌入接近重复的真实样本。
 

k-SALSA 生成视网膜图

k-SALSA是一个应用了k-匿名原则的算法,它在生成合成的视网膜底片图像时尝试保持隐私。

k-SALSA通过将k个真实样本合并成一个合成样本来实现这一点,这样可以保证合成样本不会直接映射回任何个体的真实样本。

选择真实样本:从真实数据集中选择k组样本。

样本聚合:将这k组样本在潜在空间中聚合,生成一个合成样本。这样做的目的是确保任何合成的图像都不会直接对应于任何一个具体的真实样本,从而增加了隐私保护。

风格对齐:k-SALSA方法特别提出了局部风格对齐策略,以确保合成的图像在视觉上类似于原始数据,保持了医学上的有效性,同时避免了暴露任何个人的特定特征。

但通过这种方法生成的数据集大小会减少k倍。

因为每k个真实样本只生成了一个合成样本。

如果原始数据集有N个样本,那么应用k-SALSA之后,只会有 N/k 个合成样本,这显著减少了数据集的大小。
 

PLAN方法 生成视网膜图

而使用PLAN方法生成视网膜图像则添加了隐私保护的步骤:

  1. 使用身份和辅助分类器:在训练过程中,PLAN方法会利用一个身份分类器来识别和隔离与个体身份相关的特征,并使用一个辅助分类器来确保保留与视网膜图像分类相关的特征。
  2. 隐私保护的潜在空间导航:在潜在空间中,PLAN方法会找到一条路径,这条路径上的点可以生成视网膜图像,同时避免泄露任何个人的特定特征。
  3. 生成合成样本:沿着这条导航路径,PLAN方法可以生成新的视网膜图像,这些图像在保留了用于诊断或分析所需特征的同时,不会泄露个人身份信息。

PLAN方法提供了一个额外的隐私保护框架,允许在生成视网膜图像的同时减少潜在的隐私风险。

  • 使用专门的身份分类器来隔离个体身份特征,同时利用辅助分类器确保合成图像保留医学上重要的分类特征。
  • PLAN方法通过在潜在空间中寻找一条安全路径来生成新的视网膜图像
  • 该路径的点被优化以避免生成任何可以追溯到训练集中个体的图像

在这里插入图片描述
PLAN方法 具体步骤:

  1. GAN训练:首先,需要使用真实的视网膜底片图像来训练一个GAN模型,这个模型能够学习和复现真实视网膜图像的分布。在这一阶段,模型的生成器(G)将能够从潜在空间(W)中产生新的图像(X)。

  2. 潜在空间优化:一旦模型被训练好,接下来的步骤是在潜在空间中定义和优化一个隐私保护的轨迹。这意味着我们要找到一组潜在向量 W ‾ ) \overline{W}) W),使得从这些向量生成的图像与训练集中的图像有足够的差异,以保护个人隐私。这个过程需要避免那些可能对应于真实视网膜图像的潜在区域。

    计算潜在空间中轨迹的等距离损失 L d i s t = ∑ i = 1 T − 1 ∥ w ˉ i , w ˉ i + 1 ∥ 2 2 \mathcal{L}_{\mathrm{dist}}=\sum_{i=1}^{T-1}\left\|\bar{\mathbf{w}}_i,\bar{\mathbf{w}}_{i+1}\right\|_2^2 Ldist=i=1T1wˉi,wˉi+122

    这个公式是计算潜在空间中轨迹的“等距离损失”,确保在潜在空间中导航时,连续点之间的距离大致保持一致,以此促进样本多样性并防止模式崩溃。

    • L d i s t \mathcal{L}_{\mathrm{dist}} Ldist:这是等距离损失的表示,用于度量潜在空间中连续点之间的距离。
    • ∑ i = 1 T − 1 \sum_{i=1}^{T-1} i=1T1:这表示对所有T步中的连续点对进行求和。
    • ∥ w ˉ i , w ˉ i + 1 ∥ 2 2 \left\|\bar{\mathbf{w}}_i,\bar{\mathbf{w}}_{i+1}\right\|_2^2 wˉi,wˉi+122:这是计算两个连续潜在点 w ˉ i \bar{\mathbf{w}}_i wˉi w ˉ i + 1 \bar{\mathbf{w}}_{i+1} wˉi+1 之间的欧几里得距离(L2范数)的平方。
       

    用于在PLAN方法中优化潜在空间的路径,确保生成的合成样本具有多样性,同时避免生成与真实样本过于接近的图像

     

    身份损失-隐私保护导航 L i d = ∑ i = 1 T K L [ ϕ i d ( G ( w ˉ i ) ) ∥ U ( 1 / n i d ) ] \mathcal{L}_{\mathrm{id}}=\sum_{i=1}^T\mathrm{KL}[\phi_{id}(G(\bar{\mathbf{w}}_i))\parallel\mathcal{U}(1/n_{\mathrm{id}})] Lid=i=1TKL[ϕid(G(wˉi))U(1/nid)]

    • L i d \mathcal{L}_{\mathrm{id}} Lid:这是身份损失的表示,用于评估生成样本的隐私保护程度。
    • ∑ i = 1 T \sum_{i=1}^T i=1T:这表示对所有生成的潜在点进行求和。
    • K L [ ϕ i d ( G ( w ˉ i ) ) ∥ U ( 1 / n i d ) ] \mathrm{KL}[\phi_{id}(G(\bar{\mathbf{w}}_i))\parallel\mathcal{U}(1/n_{\mathrm{id}})] KL[ϕid(G(wˉi))U(1/nid)]:这是计算 KL 散度,用于衡量由辅助网络 ϕ i d \phi_{id} ϕid 在点 w ˉ i \bar{\mathbf{w}}_i wˉi 上生成的样本的身份分类分布与均匀分布 U ( 1 / n i d ) \mathcal{U}(1/n_{\mathrm{id}}) U(1/nid) 之间的差异。这里的 ϕ i d \phi_{id} ϕid 是身份分类器, G ( w ˉ i ) G(\bar{\mathbf{w}}_i) G(wˉi) 是根据潜在点 w ˉ i \bar{\mathbf{w}}_i wˉi 生成的样本,而 U ( 1 / n i d ) \mathcal{U}(1/n_{\mathrm{id}}) U(1/nid) 是均匀分布,表示所有身份的平均可能性。
    • n i d n_{\mathrm{id}} nid:这表示数据集中不同身份的数量。
       

    用于优化生成样本的身份不确定性,通过最大化与均匀分布的KL散度,来确保生成样本不会与任何特定的训练样本相似

     

    正确分类-保持类别一致性 L c l a s s = ∑ i = 1 T C E [ ϕ c l a s s ( G ( w ˉ i ) ) , y ] \mathcal{L}_{\mathrm{class}}=\sum_{i=1}^T\mathrm{CE}\left[\phi_{\mathrm{class}}(G(\bar{\mathbf{w}}_i)),y\right] Lclass=i=1TCE[ϕclass(G(wˉi)),y]

    • L c l a s s \mathcal{L}_{\mathrm{class}} Lclass:这是类别一致性损失的表示,用于评估生成样本的类别准确性。
    • ∑ i = 1 T \sum_{i=1}^T i=1T:这表示对所有生成的潜在点进行求和。
    • C E [ ϕ c l a s s ( G ( w ˉ i ) ) , y ] \mathrm{CE}\left[\phi_{\mathrm{class}}(G(\bar{\mathbf{w}}_i)),y\right] CE[ϕclass(G(wˉi)),y]:这是计算交叉熵(Cross-Entropy)损失,用于衡量由辅助分类网络 ϕ c l a s s \phi_{\mathrm{class}} ϕclass 在点 w ˉ i \bar{\mathbf{w}}_i wˉi 上生成的样本的预测分类与实际分类 (y) 之间的差异。这里的 ϕ c l a s s \phi_{\mathrm{class}} ϕclass 是用于执行原始数据集分类的辅助分类器,而 G ( w ˉ i ) G(\bar{\mathbf{w}}_i) G(wˉi) 是根据潜在点 w ˉ i \bar{\mathbf{w}}_i wˉi 生成的样本。
    • y y y:这是目标类别标签,表示每个生成样本应该属于的类别。
       

    用于确保在潜在空间中生成的样本不仅隐私安全,而且在医学上具有正确的分类属性。
     

    总损失函数 L P L A N = L d i s t + λ 1 L i d + λ 2 L l a b e l \mathcal{L}_{\mathrm{PLAN}}=\mathcal{L}_{dist}+\lambda_1\mathcal{L}_{id}+\lambda_2\mathcal{L}_{label} LPLAN=Ldist+λ1Lid+λ2Llabel

    • L P L A N \mathcal{L}_{\mathrm{PLAN}} LPLAN:这是PLAN方法的总损失函数。
    • L d i s t \mathcal{L}_{\mathrm{dist}} Ldist:等距离损失,确保潜在空间导航过程中生成的连续样本之间的距离大致一致,促进样本多样性。
    • λ 1 L i d \lambda_1\mathcal{L}_{\mathrm{id}} λ1Lid:身份损失,乘以权重因子 (\lambda_1),用于最大化生成样本的身份不确定性,以增强隐私保护。
    • λ 2 L c l a s s \lambda_2\mathcal{L}_{\mathrm{class}} λ2Lclass:类别一致性损失,乘以权重因子 (\lambda_2),用于确保生成样本在医学分类上的准确性。
    • λ 1 和 λ 2 \lambda_1 和 \lambda_2 λ1λ2:这些是权重系数,用于平衡不同损失函数对总损失的贡献。

     
    这个总损失函数结合了三个关键因素:样本多样性、隐私保护和类别准确性,以生成对下游任务(如疾病诊断)有用且隐私安全的合成医学图像。
     

  3. 合成数据集生成:通过优化的轨迹,我们可以在潜在空间中安全地移动,生成新的合成视网膜底片图像,这些图像既不会揭露个人身份,也包含了临床上有意义的特征,使其适合于如疾病诊断这样的下游任务。

  4. 实际应用:在实际应用中,我们可能会使用一个k-same方法来产生一些合成的视网膜底片图像,然后利用PLAN在这些样本之间的潜在空间进行导航,以增加数据集的大小,同时保留隐私保护。生成的扩展数据集然后可以用来训练下游的分类器 ϕ d o w n \phi_{down} ϕdown,仅使用合成样本。

上面很多,但其实就 2 步:

  • 生成合成视网膜底片图像前需要进行的GAN训练步骤,这是为了让生成器学会如何从潜在空间产生新图像,这些图像在视觉上与真实的视网膜底片图像相似。

  • 一旦GAN训练完成,就进行潜在空间优化,以确保新生成的图像在保护隐私的同时,仍然具有临床应用所需的特征。

使用PLAN方法生成视网膜图像可以比作一种“照相术”:

  1. 拍摄准备(GAN训练):想象一下你有一个非常先进的相机(GAN模型),这个相机可以学习怎样拍摄出看起来像真实视网膜的照片。

    首先,你需要给这个相机展示很多真实的视网膜照片,让它学习这些照片的样子。

    这个学习过程就像是在给相机“训练”。

  2. 拍摄技巧(潜在空间优化):现在相机已经学会了怎样拍出像真实视网膜的照片,接下来的问题是怎样在拍照时保护人们的隐私。

    这就需要用到一些特殊的拍摄技巧:

    • 保持多样性:确保每张照片都有点不同,不要让它们看起来太相似,就像不断改变拍摄角度和设置。
    • 保护身份:用一个特殊的滤镜(身份分类器),确保照片中的人无法被识别。
    • 确保准确性:即使使用滤镜,也要确保照片中的重要特征(如视网膜的医学特征)被保留下来。
  3. 生成照片(生成合成样本):通过这些技巧,相机现在可以生成既看起来像真实视网膜又不会泄露个人信息的照片了。

  4. 实际应用:这些生成的照片可以被用于各种目的,比如帮助医生学习如何诊断眼病,而不必担心泄露病人的隐私信息。

 


总结

  1. 问题:如何生成与真实视网膜图像相似但不泄露个人隐私的图像?

    • 解法:GAN训练
    • 原因:GAN能够学习和模仿真实视网膜图像的分布特征。
  2. 问题:在生成图像的同时,如何确保不泄露任何个人的特定特征?

    • 解法:身份分类器
    • 原因:身份分类器能够识别和隔离与个体身份相关的特征,减少泄露隐私的风险。
  3. 问题:如何保证生成的视网膜图像在医学上有用,即保持必要的医学特征?

    • 解法:辅助分类器
    • 原因:辅助分类器能够确保合成图像保留与视网膜图像分类相关的医学特征。
  4. 问题:如何在潜在空间中安全导航以生成多样化且隐私安全的样本?

    • 解法:潜在空间优化
    • 原因:通过在潜在空间中优化特定轨迹,可以控制生成样本的多样性和隐私安全性。
  5. 问题:在优化过程中,如何量化和平衡不同的目标,例如样本多样性、隐私安全性和类别准确性?

    • 解法:总损失函数
    • 原因:通过结合等距离损失、身份损失和类别一致性损失,可以量化并平衡这些目标。

特征组成:

  • 特征1:GAN的能力在于学习和模仿真实数据的分布。
  • 特征2:身份分类器的关键在于能隔离与个人身份相关的特征。
  • 特征3:辅助分类器的作用是保持生成图像的医学相关性。
  • 特征4:潜在空间优化允许精确控制生成样本的特性。
  • 特征5:总损失函数是多目标优化过程的量化和平衡工具。

PLAN方法 = GAN的学习能力 + 身份分类器的隔离特征 + 辅助分类器的医学保持能力 + 潜在空间优化的控制能力 + 总损失函数的平衡能力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/349202.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第二证券:深夜突发,油价大涨!惊魂一夜,5700亿市值蒸发

当地时间1月25日,美股三大股指延续涨势,前一日大涨的抢手中概股走势分解。成绩低于预期的特斯拉单日大跌逾12%,总市值蒸腾超越5700亿元人民币,其后市目标价还遭多家组织下调。 从隔夜发布的重要经济及政策数据看,美国…

【RabbitMQ】死信(延迟队列)的使用

目录 一、介绍 1、什么是死信队列(延迟队列) 2、应用场景 3、死信队列(延迟队列)的使用 4、死信消息来源 二、案例实践 1、案例一 2、案例二(消息接收确认 ) 3、总结 一、介绍 1、什么是死信队列(延迟队列) 死信,在官网中对应的单词…

【c语言】扫雷

前言: 扫雷是一款经典的单人益智游戏,它的目标是在一个方格矩阵中找出所有的地雷,而不触碰到任何一颗地雷。在计算机编程领域,扫雷也是一个非常受欢迎的项目,因为它涉及到许多重要的编程概念,如数组、循环…

基于卡尔曼滤波的平面轨迹优化

文章目录 概要卡尔曼滤波代码主函数代码CMakeLists.txt概要 在进行目标跟踪时,算法实时测量得到的目标平面位置,是具有误差的,连续观测,所形成的轨迹如下图所示,需要对其进行噪声滤除。这篇博客将使用卡尔曼滤波,对轨迹进行优化。 优化的结果为黄色线。 卡尔曼滤波代码…

带【科技感】的Echarts 图表

Echarts脚本在线地址 https://cdn.jsdelivr.net/npm/echarts5.4.3/dist/echarts.min.js 引入Echarts 脚本后粘贴代码 vue2 代码&#xff1a; <template><div><div ref"col-2-row-2" class"col-2-row-2"></div></div> <…

PHP - Yii2 异步队列

1. 前言使用场景 在 PHP Yii2 中&#xff0c;队列是一种特殊的数据结构&#xff0c;用于处理和管理后台任务。队列允许我们将耗时的任务&#xff08;如发送电子邮件、push通知等&#xff09;放入队列中&#xff0c;然后在后台异步执行。这样可以避免在处理大量请求时阻塞主应用…

sklearn 学习-混淆矩阵 Confusion matrix

混淆矩阵Confusion matrix&#xff1a;也称为误差矩阵&#xff0c;通过计算得出矩阵的结果用来表示分类器的精度。其每一列代表预测值&#xff0c;每一行代表的是实际的类别。 from sklearn.metrics import confusion_matrixy_true [2, 0, 2, 2, 0, 1] y_pred [0, 0, 2, 2, 0…

ICMP协议详解

ICMP&#xff08;Internet Control Message Protocol&#xff09;协议是一个网络层协议。 一个新搭建好的网络&#xff0c;往往需要先进行一个简单的测试&#xff0c;来验证网络是否畅通&#xff1b;但是IP协议并不提供可靠传输。如果丢包了&#xff0c;IP协议并不能通知传输层…

【Kafka】开发实战和Springboot集成kafka

目录 消息的发送与接收生产者消费者 SpringBoot 集成kafka服务端参数配置 消息的发送与接收 生产者 生产者主要的对象有&#xff1a; KafkaProducer &#xff0c; ProducerRecord 。 其中 KafkaProducer 是用于发送消息的类&#xff0c; ProducerRecord 类用于封装Kafka的消息…

2023中国高速公路信息化发展盘点

文章目录 前言一、政策规范(一)《加快建设交通强国五年行动计划(2023—2027年)》(二)《关于推进公路数字化转型 加快智慧公路建设发展的意见》(三)《公路工程设施支持自动驾驶技术指南》(四)《贵州省智慧高速公路建设指南(试行)》(五)江苏省《智慧公路车路协同路…

监听元素宽高变化---new ResizeObserver

参考&#xff1a;ResizeObserver API详解-CSDN博客 有的时候需要监听某个元素的宽高变化&#xff0c;这个时候可以使用JS的 resizeObserver 钩子函数。 用于监视元素的大小变化。它可以观察一个或多个 DOM 元素&#xff0c;以便在元素的大小或形状发生变化时触发回调函数。R…

VsCode提高生产力的插件推荐-持续更新中

别名路径跳转 自定义配置// 文件名别名跳转 "alias-skip.mappings": { "~/": "/src", "views": "/src/views", "assets": "/src/assets", "network": "/src/network", "comm…

深圳工业元宇宙赋能新型工业化,推动工业制造业数字化转型发展

在当今数字化时代&#xff0c;工业制造业正面临着巨大的变革。随着技术的不断进步&#xff0c;工业元宇宙的概念逐渐成为推动工业制造业数字化转型的重要力量。深圳作为中国的高科技之都&#xff0c;在这方面走在了前列&#xff0c;积极探索工业元宇宙的应用&#xff0c;赋能新…

引领未来:云原生在产品、架构与商业模式中的创新与应用

文章目录 一、云原生产品创新二、云原生架构设计三、云原生商业模式变革《云原生落地 产品、架构与商业模式》适读人群编辑推荐内容简介目录 随着云计算技术的不断发展&#xff0c;云原生已经成为企业数字化转型的重要方向。接下来将从产品、架构和商业模式三个方面&#xff0c…

【洛谷】P1135奇怪的电梯(DFS)

这题利用 dfs 解决&#xff0c;编程实现比较简单。 具体来说&#xff0c;每层楼有两种可能&#xff0c;上楼或下楼&#xff0c;因此可以形成一个以 a 楼为根的二叉树&#xff0c;因此只需一个 for 循环遍历某个父节点的两个子节点&#xff0c;之后递归就行。 易错点&#xff…

浅出深入-机器学习

文章目录 一、K近邻算法1.1 先画一个散列图1.2 使用K最近算法建模拟合数据1.3 进行预测1.4 K最近邻算法处理多元分类问题1.5 K最近邻算法用于回归分析1.6 K最近邻算法项目实战-酒的分类1.6.1 对数据进行分析1.6.2 生成训练数据集和测试数据集1.6.3 使用K最近邻算法对数据进行建…

手把手教你用plotly绘制excel中常见的8种图表

目录&#xff1a; 0. 准备工作 1. 柱状图 2. 条形图 3. 折线图 4. 面积图 5. 饼图与圆环图 6. 散点图 7. 气泡图 8. 极坐标(雷达图) 0. 准备工作 我这边是在jupyterlab中演示的plotly图表&#xff0c;如果只安装plotly是无法正常显示图表的&#xff08;会显示为空白…

Mac怎么录屏?简单易懂,关键技巧分享!

随着时代的变迁&#xff0c;人们对mac电脑的使用需求也越来越多样化。其中&#xff0c;屏幕录制成为了很多用户的常用需求&#xff0c;比如录制教程、游戏视频、会议记录等。可是很多用户不知道mac怎么录屏。本文将为你详细介绍两种mac录屏的方法&#xff0c;让大家轻松学会如何…

Internet Download Manager 6.42.3 (IDM) 中文破解免激活绿色版

Internet Download Manager 6.42.3中文破解版&#xff0c;全球最佳下载利器。Internet Download Manager (简称IDM) 是一款Windows 平台功能强大的多线程下载工具&#xff0c;国外非常受欢迎。支持断点续传&#xff0c;支持嗅探视频音频&#xff0c;接管所有浏览器&#xff0c;…

【并发编程】AQS——详细解释公平锁,非公平锁,独占锁,什么是可重入以及condition

目录 1、公平 2.非公平 3.独占锁 4.可重入 5.condition 1、公平 第一步&#xff1a;获取状态的 state 的值。如果 state0 即代表锁没有被其它线程占用&#xff0c;执行第二步。如果 state!0 则代表锁正在被其它线程占用&#xff0c;执行第三步。 第二步&#xff1a;判断队列…
最新文章