初入深度学习的大门。
最近刚了解了GAN(生成对抗网络),在网上找了一下demo想运行一下看看结果。
参考的是这一篇文献【1】http://blog.csdn.net/amds123/article/details/54604038
代码使用的是https://github.com/carpedm20/DCGAN-tensorflow
从GitHub上下载了这个代码后按照参考的文章的方法会报错。
后来根据错误参考了另一篇文章尝试解决,文章出处【2】http://blog.csdn.net/gbbb1234/article/details/77507863
但是还是没法运行,依旧会报错。后来经过修改终于能够运行,所以将几个重点记录了下来。、
1.命令行运行失效
不知道是不是源代码在GitHub上被修改过,还是我用的是win7+anaconda的原因,我按照参考文献【1】所给的命令行方式
运行源代码没成功,而且我发现我在命令行中无法指定图片的输入尺寸、训练代数等信息。所以我只好在源代码上进行修改,
修改的地方在代码中的main.py文件中的。如下图的地方
2.图片格式
源码中在给出输入的图片的格式是“*.jpg”的,这里如果你输入的图片的后缀名不是的话,
就会报这样的错:
imreadImg = imread(self.data[0]);
IndexError: list index out of range
这个可以在源代码上进行修改,修改的地方则是在和重点1一样的地方。
3.图片的输入尺寸和输出尺寸
这里也是需要在重点1中图片所示的地方进行修改,有一点要注意如果设置input_height为具体数字,而input_width为none,那么程序会默认图片的高和宽是一样的,output_heigth与之同理。如果图片的输入尺寸(输出暂时没尝试是否会有影响)与你提供的图片的尺寸不一,会这样的错:ValueError: Trying to share variable discriminator/d_h4_lin/Matrix, but specified shape (8192, 1) and found shape (25088, 1).
4.数据集的地址
在源代码的main.py中的dataset表示的是dataset的名称,这里有celebA,mnist,lsun三个。在源码的model.py中如下图所示的地方
有个判断,在这里可以看到如果数据集不是mnist的话,就会在源代码的同一级目录下寻找叫做data的文件夹,在该文件夹下寻找装有数据的文件夹。所以,只需要在重点【1】中所示的地方找到dataset,修改其中数据集的名称部分即可。然后,在源码的文件同级目录下新建一个data文件夹,再将整理好的装有数据的文件放到data文件夹下即可。
5.杂项
我本人用的是pycharm来运行的源码,在pycharm中,语句from ops import * 和from utils import *都会有红线标出表示有错误,找不到原因,但是代码可以正常运行。希望有神牛可以指点指点。
来源:CSDN
作者:kkhehehe
链接:https://blog.csdn.net/kkhehehe/article/details/79190102