Noise
motivation
提高网络的一个有用的技巧就是增加训练数据: 真实数据, 或者用GAN拟合的数据.
这里想要研究的是, 噪声是否能够算作这类数据. 以CIFAR-10为例, 令
即除了原先的10类外, 额外增加一类为噪声类. 类似的思想好像在检测领域有用过(背景信息)?
本文的损失函数可以说是:
其中分别是真实数据和噪声的对抗样本, .
个人觉得, 如果二者用同一个batch normalization, 那么滑动平均会非常振荡, 故额外考虑group normalization 和 让给干净样本分配一个BN, 噪声样本一个BN.
settings
- batch_size: 64
- beta1: 0.9
- beta2: 0.999
- dataset: cifar10
- description: AT=bn=64-0.5=default-sgd-0.1=pgd-linf-0.0314-0.25-10=64=default
- epochs: 200
- epsilon: 0.03137254901960784
- learning_policy: [100, 150]
- leverage: 0.5
- loss: cross_entropy
- lr: 0.1
- model: resnet18
- momentum: 0.9
- noise_batch_size: 64
- norm_layer: bn
- optimizer: sgd
- progress: False
- resume: False
- seed: 1
- steps: 10
- stepsize: 0.25
- transform: default
- weight_decay: 0.0005
results
Loss | Accuracy | Robustness | |
---|---|---|---|
BN | ![]() |
![]() |
![]() |
GN | ![]() |
![]() |
![]() |
TN | ![]() |
![]() |
![]() |
用了两个BN后的确稳定下来了, 精度和鲁棒性的确和标准的AT一致了. 但是也仅仅是一致而已, 个人感觉noise太容易被分辨出来了, 或许增大攻击noise的epsilon会有改进, 后续再看.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix