Comments (8)
谢谢对我们工作的关注,读于您的问题,我理解如下,有不对的请批评指正:
-
GAN中判别器只是一个二分类器,其作用只是判断生成数据和真实数据是否同一个风格(可以理解为数据分布是否相似),而数据是生成器生成的,没有混淆背景的验证码生成时需要将背景参数设置为false。
-
Pre-processing model的作用是去除真实验证码中的背景和干扰线,或者是填充空心字符。其训练数据全部由生成数据组成,即有背景(干扰线)和无背景(干扰线)的生成验证码。
-
LeNet-5的训练也是使用生成的无背景(干扰线)的验证码,仅在模型迁移是使用了少量的去除背景(干扰线)的真实验证码数据。
-
对于调整生成参数的步骤,我们主要**是把参数枚举出来,然后选择生成最好的那一组参数,所以训练比较慢。这里还有待完善,在后续的实验中我们发现,把可变参数的初始值调大(例如把字符旋转角度调整为[-50,50],涵盖真实数据中的旋转角度),也可以不用调整生成参数。
from captcha_solver.
感谢你的回答,根据你的回答,我说下我的理解
- 对于第一个GAN,生成器输入(通过Opencv,Pillow生成的图片,记为Data1),输出(记为Data2),判别器区分Data2和真实数据(记为Data3)
- 对于第二个GAN,生成器输入Data2,输出(记为Data4),判别器区分Data4和Data1
- pre_trained阶段:Data1->GAN1->GAN2->LeNet5
- fine-tune阶段:真实数据Data3->GAN2->LeNet5
from captcha_solver.
Pre_trained阶段直接是Data1->GAN1->LeNet5,这里的Data1是生成没有背景或干扰线的验证码图片。
from captcha_solver.
我的理解是应该有3个生成器
- 传统验证码生成器,就是我前面说的通过OpenCV或者Pillow生成的,目的是生成与真实验证码长得差不多的验证码(不需要特别像)
- GAN验证码生成器,目的通过pix级别微调传统验证码生成器生成的验证码,使其长得更像真实验证码,生成器的输入时传统验证码生成器生成的验证码,目标输出是真实验证码
- preprocessing,应该也是一种GAN生成器,目的是将有security features的验证码变成没有security features的验证码,方便后续LeNet5的分类,生成器的输入是第一个GAN的输出,目标输出是传统验证码生成器生成的验证码
from captcha_solver.
是这样。Pre_trained阶段是Data1->GAN1->LeNet5,这里的Data1是生成没有背景或干扰线的验证码图片。
from captcha_solver.
是这样。Pre_trained阶段是Data1->GAN1->LeNet5,这里的Data1是生成没有背景或干扰线的验证码图片。
好的,非常感谢,就是pre_trained不需要用到preprocessing,只有fine-tune才用到preprocessing的意思吧
from captcha_solver.
是的,pre_trained用的是生成数据,传统生成器可以直接生成无security features的验证码。
from captcha_solver.
谢谢对我们工作的关注,读于您的问题,我理解如下,有不对的请批评指正:
- GAN中判别器只是一个二分类器,其作用只是判断生成数据和真实数据是否同一个风格(可以理解为数据分布是否相似),而数据是生成器生成的,没有混淆背景的验证码生成时需要将背景参数设置为false。
- Pre-processing model的作用是去除真实验证码中的背景和干扰线,或者是填充空心字符。其训练数据全部由生成数据组成,即有背景(干扰线)和无背景(干扰线)的生成验证码。
- LeNet-5的训练也是使用生成的无背景(干扰线)的验证码,仅在模型迁移是使用了少量的去除背景(干扰线)的真实验证码数据。
- 对于调整生成参数的步骤,我们主要**是把参数枚举出来,然后选择生成最好的那一组参数,所以训练比较慢。这里还有待完善,在后续的实验中我们发现,把可变参数的初始值调大(例如把字符旋转角度调整为[-50,50],涵盖真实数据中的旋转角度),也可以不用调整生成参数。
请问参数是怎么训练出来的,论文中说是网格搜索,那怎么判断哪组参数最优呢,如果是判别器反向传播来获得的,那loss是怎么影响网格搜索的呢。
from captcha_solver.
Related Issues (20)
- Example code? HOT 1
- About Test data-set
- 对于Synthesizer有些不太理解的地方 HOT 1
- the question about Generator HOT 1
- whether the code is wholeness HOT 1
- 500 image samples for Synthetic generator HOT 1
- Code to remove security features before training it in PIX2PIX
- Lenet model overfitting HOT 1
- Lenet model overfitting
- Lenet model overfitting
- Lenet model overfitting
- Lenet model overfitting
- Training Loss
- captcha Synthesizerh关于验证码合成器 HOT 1
- questions about CAPTCHA solver
- Release of dataset?
- About the parameter settings of Captcha Synthesizer HOT 22
- file real/real_train.txt
- captcha preprocessing codes HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from captcha_solver.