Xshell+docker镜像/容器+tensorflow环境下的模型训练全过程

首先介绍实验背景,需要在远程服务器上搭建tensorflow1.0版本环境并训练一个实体识别模型

xshell

首先,看看本地服务器是否有需要的镜像

docker images

可以看到我所用的服务器有我所需要的tensorflow1.0版本镜像

如果本地没有所需镜像可以输入

docker search tensorflow
或
docker search tensorflow1.12

可以在docker hub 公共仓库中找到相关镜像

接着

docker pull 镜像名

就可以将镜像拉到本地了

然后就可以依赖本地已有的或者刚pull下来的镜像启动容器


docker run -it --name xxx -v /data1/home/test/bert-bilstm-crf-ner-master-new:/work votiethuy/tensorflow1.12-gpu-base:latest bash
其中
1、xxx是给这个容器起一个名字

2、/data1/home/test/bert-bilstm-crf-ner-master-new是我上传到服务器的全部代码(代码本地路径)

3、/work votiethuy/tensorflow1.12-gpu-base:latest是在votiethuy/tensorflow1.12-gpu-base这个镜像下的work文件路径(代码容器路径),latest是镜像的tag(版本号,一般是几点几)

这样其实是做了一个映射,当容器启动后在work文件夹内就会有我保存在服务器中的代码,而且当服务器中的代码改变时,容器中的代码会同步变化

这里遇到了一个问题就是bert-bilstm-crf-ner-master-new这个文件夹名一开始是有大写字母的,导致每次启容器都失败,后来我全改成小写才成功

当出现上图时就意味着启动容器成功

接着进入到work文件夹中找到代码直接python3 run.py就开始训练了

本地代码更新 

如果要进行调参或者该模型时在服务器终端直接看代码会很费劲,本机的pycharm或者vscode这些专业的IDE就会方便很多,这就需要将本地的IDE与服务器进行连接,以pycharm为例

 在马赛克的位置输入服务器地址,接着进入Mappings

local path不用填,这是你本机的代码路径

需要填写的是deployment path 这是之前传到服务器的代码地址,填写相应地址即可连接

这里需要注意的一点是connection中的root path和deployment path两个路径加起来才是整个服务器的路径,如果都填很容易出错,我的建议是root path不写,将绝对路径填入deployment path就完事了) 

等到在本地修改完代码,只需要单击右键upload即可完成服务器和容器中的代码更新

结束~

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值