[论文解读] On Hiding Neural Networks Inside Neural Networks
本文提出 TrojanNet,一种隐蔽通信框架,通过利用模型的冗余参数容量,在公开发布的载体网络中隐藏一个秘密神经网络。通过秘密密钥在训练过程中对网络权重进行置换,该方法实现了公开任务与秘密任务的不可检测联合训练;在无密钥情况下,秘密模型在计算上与随机权重无异,且检测问题被证明为 NP 完全问题。
Modern neural networks often contain significantly more parameters than the size of their training data. We show that this excess capacity provides an opportunity for embedding secret machine learning models within a trained neural network. Our novel framework hides the existence of a secret neural network with arbitrary desired functionality within a carrier network. We prove theoretically that the secret network's detection is computationally infeasible and demonstrate empirically that the carrier network does not compromise the secret network's disguise. Our paper introduces a previously unknown steganographic technique that can be exploited by adversaries if left unchecked.
研究动机与目标
- 开发一种方法,将秘密神经网络隐蔽地嵌入到公开发布的、看似无害的载体网络中。
- 确保在缺乏秘密密钥的情况下,秘密模型在计算上无法被检测。
- 利用大规模神经网络中的冗余参数容量,实现公开任务与秘密任务的无性能损失同步训练。
- 从理论上证明,检测隐藏模型的存在是 NP 完全问题,从而确保极强的隐蔽性。
- 通过实证验证,证明只有在拥有秘密密钥的情况下才能提取隐藏模型,而载体网络在两项任务上均保持高性能。
提出的方法
- 该方法使用秘密密钥定义训练过程中对网络权重的特定置换,以将隐藏神经网络嵌入预训练的载体网络中。
- 载体网络在训练中同时学习公开任务与秘密任务,通过权重置换实现,且两项任务之间无共享特征。
- 仅通过使用秘密密钥对权重应用逆置换,才能提取秘密模型,从而恢复隐藏网络的原始权重配置。
- 该框架依赖于过参数化神经网络的冗余性,在不增加总参数量的前提下嵌入秘密模型。
- 理论分析表明,判断是否存在某种置换可触发隐藏功能是一个 NP 完全决策问题,从而确保检测在计算上不可行。
- 在 ResNet50 上基于 CIFAR-10 与 CIFAR-100 进行实证验证,结果表明公开任务与秘密任务的性能均与单任务训练相当。
实验结果
研究问题
- RQ1能否以一种在无秘密密钥时计算上不可检测的方式,将一个神经网络隐藏在另一个神经网络中?
- RQ2是否可能训练一个网络,使其在不损害性能的前提下同时完成公开任务与秘密任务?
- RQ3检测载体模型中隐藏神经网络存在的计算复杂度是多少?
- RQ4模型容量如何影响可嵌入的隐藏任务数量以及各模型的性能表现?
- RQ5该方法是否可应用于隐蔽通信之外的场景,如模型水印或版权保护?
主要发现
- 在载体模型中检测隐藏神经网络的存在被证明为 NP 完全决策问题,因此在无密钥情况下计算上不可行。
- 在 CIFAR-10 与 CIFAR-100 上,使用最多 10 个不同密钥训练的 TRN50 模型,其单个模型准确率分别仅下降 1.5% 与 2.9%,证明了高效的权重共享。
- 在无秘密密钥的情况下,隐藏模型的性能与随机权重无异,且载体网络在公开任务上仍保持高准确率。
- 该方法在公开任务与秘密任务上的性能均与独立训练的模型相当,且未增加参数量。
- 更大模型如 TRN50 在嵌入多个秘密模型方面显著优于较小模型如 TRN18,证实了冗余容量的关键作用。
- 该框架可构建去相关性接近独立模型的隐藏模型集合,表明其在内存受限场景下具有提升性能的潜力。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。