记录要跑的text to image,一步步不要太精细
首先,我们需要准备下载text to image 资源,我打算跑的代码地址。
要求的版本然后查看自己的服务器cudn,tensorflow,NLTK,如图
1.tensorflow版本
python
import tensorflow as tf
tf.__version__
如果不报错并显示版本,则安装正确,否则按照安装教程这个链接自行安装。
tf.__path__
路径
直接输入上面的命令,得到这个结果2.tensorlayer版本
tensorlayer tensorlayer安装官方推荐运行在python3上,看上图知道,这是在2.7上。最便捷安装 TensorLayer 只需要一个指令。如下
sudo pip install git+https://github.com/zsdonghao/tensorlayer.git
执行上步骤安装
1.7.3版本3.安装NLTK
sudo pip install -U nltk 即可
在python 的终端里面,输入:import nltk 如果不报错即表明安装成功.然后
4.下载源码
然后clone源码到自己环境里。
sudo git clone https://github.com/zsdonghao/text-to-image.git
等待完成。一秒秒就好了。
5.数据集的下载
我在python2下,有弄module tqdm的问题,所以我用这个命令:pip install tqdm
然后执行python downloads.py下载数据集,封装了,真好呀!然而,需要翻墙的奥!
6.下好之后,执行data_loader.py,对数据经行处理。
python data_loader.py
7.训练模型
python train_txt2im.py
我能说我们实验室都在跑程序吗!
胖程序出错使用下面的命令查看使用情况
nvidia-smi
使用情况100%…………………………
ResourceExhaustedError (see above for traceback): OOM when allocating tensor with shape[64,128,64,64]
…………………………
这个错误一出现。
1.*首先得排除整个显卡上是不是有别的模型在跑?
2.如果没有,检查自己的模型逻辑有没有错误?(很多时候,即使没错也会崩……)
3.*接下来,在进行下一步尝试……
先用invidia-smi命令,看看服务器上有哪些空闲显卡(本地电脑可忽略,重新运行就是了).
对于tensorflow来说,可以用CUDA_VISIBLE_DEVICES=1(,2...) python train.py,命令来运行程序,其中的数字1,2...代表显卡序号。如果你觉得一个显卡不够,或是想让程序跑得快,在不影响别人使用的情况下,可以多选择几块显卡。CUDA_VISIBLE_DEVICES命令是用来确定CUDA允许tensorflow发现的显卡。如果没有,默认情况下tensorflow会利用所有能利用的资源。
对于濒临淘汰的Theano来说,运行时设置device=1(,2,3..),即可。
4.如果还是不行,请回到第二步……不要过度自信……应引用自别人说的