GAN的学习笔记(1)

1.本文是我的新手作,主要是记录一些学习GAN(生成式对抗网络)的过程和心得体会,能够提供一些学习的动力,各位看官能看就看。用到的是系统和相关软件是WIN7+Anaconda3+TensorFlow-gpu-1.8.0,Python版本是3.5.5。至于为什么不用Ubuntu系统,emm主要是怕折腾,以为win7用起来顺手,最后发现掉进了大坑再见。。。。


2.软件安装和环境配置什么的不想多说,网上一搜有大把。这里说几点要注意的(开始填坑):

(1)因为用的是GPU版本的tensorflow,必须先安装CUDA+Cudnn,而且CUDA版本必须与VS版本对应(坑1:没有VS的先去装VS),博主这里一开始用的是CUDA9.2,然后装的VS2017,,然后发现CUDA9.2怎么都安装失败(坑2:VS2017还没有适配CUDA9.2),无奈再用CUDA9.0,可以安装成功了。再去下载与CUDA9.0对应的cudnn版本,具体操作请百度。

(2)安装好了TensorFlow-gpu之后需要配置Anaconda3,主要是要pip安装一大堆东西,如果直接pip install+xxx的话(比如pip instal spyder),下载速度会很慢(坑3)。这里会用一个豆瓣的镜像,操作很简单:在C:\Users\Administrator路径下新建一个文件夹,命名为pip,pip文件夹内新建一个名为pip.ini的文件,打开pip.ini,输入以下内容:

[global]
timeout = 6000
index-url = https://pypi.douban.com/simple

trusted-host = https://pypi.douban.com

保存之后,再在命令窗口或Anaconda Prompt下(注意要先激活tensorflow-gpu环境,如下图所示),输入pip instal+xxx的命令,它就会从豆瓣的镜像进行下载安装,速度极快。博主这里是已经安装好了的界面。



(3)一般说来,为了更快更方便的学习(其实是为了更快让小白入坑。。),我们会在tensorflow的基础上安装keras框架,直接pip install keras即可。这里附一个Keras中文文档 http://keras-cn.readthedocs.io/en/latest/。

这些坑都填完了之后,就可以愉(tong)快(ku)地进行GAN的学习了,以及下一步的填坑微笑


3.安装完之后,可以用conda list命令来检查tensorflow-gpu环境下安装的各种库及其版本。


然后可以跑跑MNIST数据集,看看生成些啥。可以在Spyder中IPython Console窗口输入run命令,用的是DCGAN,现成的轮子,代码就不贴了,看看效果:

左上图是初始的噪声,右上图是一个epoch之后的生成图,左下图是3个epoch之后的,右下图是10个epoch之后的,可以看出已经初具数字模样。

这是跑完25个epoch的生成图,大多数数字已经清晰可见。计时显示,将一个6万多图片的数据集(patch size为128)跑完25个epoch,时间大约为22分钟,完全跑完100个epoch估计在100分钟以内(未测试),效率比用cpu快了将近20倍(Nvidia 1070 Ti显卡)。

       最后提一下怎样用nvidia-smi.exe看GPU使用率:直接在C:\Program Files\NVIDIA Corporation\NVSMI下找到nvidia-smi.exe文件,复制到桌面备用,打开Anaconda Prompt,直接拖动nvidia-smi.exe图标到Anaconda Prompt窗口内回车,得到下图,可以看到GPU的占用率为40%。



暂时占个坑,以后在慢慢补充。。。

猜你喜欢

转载自blog.csdn.net/qq_31935127/article/details/80854358