22、从深度学习视角生成CAPTCHA

从深度学习视角生成CAPTCHA

1. 基于对抗学习的CAPTCHA生成

我们可以通过生成对抗网络(GAN)来创建CAPTCHA,具体是生成类似于街景房屋号码数据集(SVHN数据集)的图像,并将这些GAN生成的图像用作CAPTCHA。这样做的好处是,在训练好GAN后,我们可以轻松地从噪声分布中采样生成图像,避免了使用更复杂的方法创建CAPTCHA,还能为CAPTCHA中使用的SVHN街景号码增添多样性。

SVHN是一个在机器学习和深度学习领域非常受欢迎的真实世界数据集,常用于目标识别算法。该数据集包含从谷歌街景图像中获取的房屋号码真实图像,可从链接 http:/​/​ufldl.​stanford.​edu/ housenumbers/​ 下载。我们将使用调整大小后的房屋号码数据集,图像尺寸调整为(32, 32),感兴趣的数据集文件是 train_32x32.mat。

在GAN中,有一个生成器(G)和一个判别器(D),它们围绕一个损失函数进行零和极小极大博弈。随着时间的推移,生成器和判别器的性能都会不断提升,直到达到一个稳定点,即损失函数的鞍点,此时两者都无法再进一步优化。对于我们的应用,生成器G会将给定分布P(z)的噪声z转换为房屋号码图像x,即x = G(z)。生成的图像会通过判别器D,判别器会尝试将其识别为假图像,而将SVHN数据集中的真实房屋号码图像识别为真图像。同时,生成器会尝试创建图像x = G(z),使判别器认为这些图像是真实的。如果将真实图像标记为1,生成器生成的假图像标记为0,那么判别器会作为一个二分类网络,尝试最小化二元交叉熵损失。判别器D最小化的损失可以表示为:

判别器D的损失函数:
[
\min_{D} \left[

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值