머신러닝 프레임워크를 활용한 비교사(Unsupervised) 학습 모델 구현 프로젝트
Unsupervised Learning Model Implementation Project Using Machine Learning Framework
- GAN, LSGAN, WGAN are have same generator and discriminator
CNN structure.
- No data augmentation.
| dataset |
MNIST(20 epoch) |
fashion-mnist(20 epoch) |
| result image |
 |
 |
| loss D |
 |
 |
| loss D_real |
 |
 |
| loss D_gen |
 |
 |
| loss G |
 |
 |
| dataset |
CIFAR10(20 epoch) |
LLD(20 epoch) |
| result image |
 |
 |
| loss D |
 |
 |
| loss D_real |
 |
 |
| loss D_gen |
 |
 |
| loss G |
 |
 |
| dataset |
MNIST(20 epoch) |
fashion-mnist(20 epoch) |
| result image |
 |
 |
| loss D |
 |
 |
| loss D_real |
 |
 |
| loss D_gen |
 |
 |
| loss G |
 |
 |
| dataset |
CIFAR10(20 epoch) |
LLD(20 epoch) |
| result image |
 |
 |
| loss D |
 |
 |
| loss D_real |
 |
 |
| loss D_gen |
 |
 |
| loss G |
 |
 |
| dataset |
MNIST(20 epoch) |
fashion-mnist(20 epoch) |
| result image |
 |
 |
| loss D |
 |
 |
| loss D_real |
 |
 |
| loss D_gen |
 |
 |
| loss G |
 |
 |
| dataset |
CIFAR10(20 epoch) |
LLD(20 epoch) |
| result image |
 |
 |
| loss D |
 |
 |
| loss D_real |
 |
 |
| loss D_gen |
 |
 |
| loss G |
 |
 |
 |
| WGAN result - after training LLD dataset for 5 epoch |
MNIST dataset is easy for GAN, LSGAN, WGAN.
- Training with
Fashion-MNIST dataset, GAN is slightly better others.
- Training with
CIFAR 10 dataset, WGAN are better than others. but clearly does not generate looks pretty image like original image.
- Training with
LLD dataset, three GANs generate similar image.
Compare with original image, three GANs generate ugly image.
Compare other GANs, WGAN generate best image in less epoch, but after 5 epoch generate worse than others.
Above loss of generator and discriminator, generator overpowered discriminator.
GANs trained outline of all original dataset(fashion-mnist, CIFAR10, LLD), but did not train detail.
python ./setup.py install and follow console (If you already installed dependencies, follow step 2.)
- Run bench code
python ./main.py
- If you want to run another instance, modify
workbench/bench_code.py.
├─data # default dataset
├─data_handler
├─dict_keys
├─instance # default model instance
├─model
├─unit_test
├─util
├─visualizer
└─workbench # bench code, DatasetHelper
- Python 3.5+
- matplotlib (2.1.2)
- numpy (1.14.0)
- pandas (0.22.0)
- Pillow (5.0.0)
- scikit-image (0.13.1)
- scikit-learn (0.19.1)
- scipy (1.0.0)
- tensorflow (1.4.1)
- tensorflow-gpu (1.4.1)
- tensorflow-tensorboard (0.4.0)
- opencv-python (3.4.0.12)
- requests (2.18.4)