python随机数据增强_随机裁剪数据增强卷积神经网络

本文探讨了随机裁剪在深度学习数据增强中的重要性,指出它能够提高卷积网络的鲁棒性,通过产生不同的激活值和前向传递,使网络学习到更广泛的特征。随机裁剪可以看作是为训练提供新的视角,增强了模型对图像微小变化的适应能力。同时,作者建议使用预先计算的有效角点进行裁剪,以避免重复并确保多样性。
摘要由CSDN通过智能技术生成

在我看来,随机裁剪有助于数据增长的原因是,在保留图像语义的同时(除非您选择了一个非常糟糕的裁剪,但我们假设您设置了随机裁剪,以便这是非常低的概率),您在conv网中获得的激活值是不同的。因此,实际上我们的conv网络学习将更广泛的空间激活统计信息与某个类标签相关联,因此通过随机裁剪进行数据增强有助于提高我们的特征检测器在conv网络中的鲁棒性。同样地,随机裁剪会产生不同的中间激活值,并产生不同的前向传递,因此它就像一个“新的训练点”

这也不是小事。看看最近关于神经网络中的对抗性例子的研究(相对于AlexNet的大小来说比较浅)。当我们通过一个顶部带有softmax分类器的神经网络时,从语义上看大致相同的图像,我们可以得到完全不同的类概率。因此,从语义的角度来看,细微的变化最终会使不同的转发通过conv网。有关详细信息,请参见Intriguing properties of neural networks。

为了回答你问题的最后一部分:我通常只做我自己的随机裁剪脚本。假设我的图像是(3256256)(3个RGB通道,256x256空间大小),你可以通过随机选择一个有效的角点来编码一个循环,这个循环将对你的图像进行224x224次随机裁剪。所以我通常会计算一个有效的角点数组,如果我想随机抽取10个角点,我会从这个集合中随机抽取10个不同的角点,比如我选择(x0,y0)作为我的左上角点,我会选择裁剪X[x0:x0+224,y0:y0+224],就像这样。我个人喜欢从一组预先计算好的有效角点中随机选择,而不是一次随机选择一个角点,因为这样我保证不会得到重复的作物,尽管在现实中,这可能是低概率的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值