极客云使用备忘录2019-04-15

文件夹

1./input

速度最快,但关机后内容有一定概率会丢失。若机型没有迁移选项,下次开机内容一般情况下不会丢失。

速度要求非常高,建议选择SSD机型并且将数据放入** /input **文件夹后,读取数据训练。

速度要求一般, /root文件夹,之后读取数据训练,这样可以防止下次开机时训练数据丢失。

这个文件夹在SSD硬盘空间不足的时候(剩余空间小于5GB),会保留最近登录此机器的前10个人的/input数据,其余人的/input数据会被清除。

在关机之前把他们复制到/data

2./output

tensorboard监视的文件夹,把tensorboard要求的log输出到这个文件夹

3./data

存放从 我的数据 页面上传的文件夹,是网络存储,直接读取数据运行很慢,把数据拷贝到 /input 文件夹再训练

/data 拷贝所有的数据到/input,使用rsync拷贝会看到拷贝的进度。

此处使用的指令是

rsync -ah --progress /data/mnist_data/ /input/mnist_data/

意思是把 /data/mnist_data/ 这个文件夹的所有内容复制到 /input/mnist_data/ 这个文件夹
/input/data可用

cp /input/dir_you_want /data/

运行

4.训练前后

记得把/input/mnist_data 文件夹当做数据文件夹
常用的解压命令

unzip /data/somefile.zip -d /input/dir_you_want
rsync -ah --progress /data/somefile.gz /input/ && gzip -d /input/somefile.gz
rsync -ah --progress /data/somefile.7z /input/ && 7z x /input/somefile.7z -o/input/
rsync -ah --progress /data/somefile.bz2 /input/ && bzip2 -d /input/somefile.bz2
mkdir -p /input/dir_you_want && rar x /data/somefile.rar /input/dir_you_want/
mkdir -p /input/dir_you_want && tar xvf /data/somefile.tar -C /input/dir_you_want/
mkdir -p /input/dir_you_want && tar zxvf /data/somefile.tar.gz -C /input/dir_you_want/
mkdir -p /input/dir_you_want && tar jxvf /data/somefile.tar.bz2 -C /input/dir_you_want/

技巧:

遇到 tar.7z rar.7z rar.gz rar.bz2 这样扩展名的文件先通过 p7zip gzip bzip2 解压掉最后面的扩展名,
再通过 tar rar 解压出已经解压掉一层的 .tar .rar 文件

然后将训练结果压缩后存入 /data 目录

将 /output/dir_you_want 目录压缩为 /input/file_you_want.zip 文件后移动到 /data/ 目录下

zip -r /input/file_you_want.zip /output/dir_you_want && cp /input/file_you_want.zip /data/


Tensorflow加载预训练模型和保存模型


文件传送用winSCP、xshell、putty

5.自动关机

您可以在命令行中使用** shutdown **指令来关机,

训练完成后自动关机,python代码在训练完之后,执行 /root/shutdown.sh 来自动关机(下为python代码示例)

 import os
 os.system("/root/shutdown.sh")

6.后台执行

命令

setsid python train.py > /tmp/log3 2>&1 &

查看

tail -f /tmp/log3

代码微调

7.print 与 log 问题

在 python 中 print 之后需要调用** sys.stdout.flush() **才能让log实时的重定向到文件中

也可以直接

print("begin", flush=True)

迁移

8.数据迁移

暂无

可视化

9.tensorboard

由于我们的tensorboard的监视目录是 /output ,这里我们可以使用

ln -s /tmp /output

软连接的方式把 /tmp (输出数据的目录)软连接到 /output
可以执行 ll / 看到软连接已经建立完毕
下面执行 tb 回车

alias tb

用以上代码可看到tb具体执行情况
执行一下这个训练程序则可回到 我的云主机 页面,点击tensorboard链接,打开tensorboard页面,在弹出的对话框中点击 确认 按钮,可以看到tensorboard已经可视化显示出了训练的数据。

报错

10.内存或显卡

Out Of Memory 是内存不足
CUDA_ERROR_OUT_OF_MEMORY 是显存不足

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容