对抗攻击——生成的对抗样本变灰

多媒体安全的大作业中,生成对抗样本时,发现图会变灰:

检查代码:(BIM攻击关键在于最后一句的(-1,1)。

# BIM攻击
for_inrange(self.num_iters):
adv_img.stop_gradient = False# 确保adv_img可以计算梯度
# 前向传播
outputs = self.model(adv_img)
# 计算损失
loss = self.criterion(outputs, tensor_label)
# 计算梯度
loss.backward()
# 根据梯度符号更新图像
grad = paddle.to_tensor(adv_img.grad)
grad = paddle.sign(grad)
# 使用alpha更新图像
adv_img = adv_img.detach() + self.alpha * grad
# 将扰动裁剪到epsilon范围内
eta = paddle.clip(adv_img - tensor_img, -self.epsilon, self.epsilon)
# 将扰动后的图像裁剪到有效范围
adv_img = paddle.clip(tensor_img + eta, -1, 1)
一开始是(0,1),导致图像的像素值只能在127.5及以上,导致图像变灰
像素值恢复: (normalized_pixel + 1 )*127.5

感谢你的阅读


欢迎评论交流


忽如一夜春风来,千树万树梨花开。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇