云服务上部署深度学习框架(keras)实战
背景:本人由于本地电脑(1080单卡)配置不够,后面便在服务器上部署环境进行深度学习的训练,目前是租了两台2080在用,跑的是语义分割模型。
前期准备:
要使用云服务器必须要有能进行传输文件和代码操作的软件,我推荐以下两个工具:
1、 xshell6 (用于远程登录linux系统进行操作)
2、 xftp6(用于传输本地的文件或者保存云服务器的文件到本地 )
注意事项:xshell别下商业版的,用一段时间就不行了,去官网申请个人和学校的版本,会给你邮箱发个下载链接,直接安装就行
登入服务器:
由于登录xshell与xftp的步骤差别不大,我主要记录一下xshell如何登录
一般我们租好服务器之后都会给你发生一些服务器的登录信息,具体信息可以参照下图:
名称:自己随便设置一个就行
协议:一般的都是SSH,具体的你租服务器的时候都会在邮件告诉你
主机:你租的服务器的ip,一般都在邮件里面
端口号:这个一定要填对了,不然进不去
填完之后点连接就行,之后会跳个界面要你输入用户名和密码,一般用户名默认是:root,密码上邮件去找就行,之后记住密码就行了,下次直接可以登上。
环境安装:
登上服务器后就是一些基本的linux操作了,我是使用的Anaconda,安装基本和Windows下差不多,可以参考一下这位大哥的博客,讲的特别详细:
linux下安装anaconda
安装完之后记得虚拟一个环境专门用于自己实验的环境,以后直接激活就行了,由于我租的服务器是配了TensorFlow-gpu的环境的,cuda是10.0版本的,后面我直接在服务器端安装了keras、opencv-python、tqdm等一些库直接就能够用了,比较推荐大家使用xftp来进行文件传输,确实很方便
注意事项:
我在使用过程中遇到不少问题,现在给大家提一提,对大家可能产生一点帮助:
1) 直接环境下安装opencv-python:
pip install opencv-python
报错:ImportError: libGL.so.1: cannot open shared object file: No such file
解决方案:
apt-get install libgl1-mesa-dev
2) linux 下如何清显存:
sudo fuser /dev/nvidia*
kill -9 pid
3)python 运行 tensorflow 时 对于 ImportError: cannot import name 'descriptor' 报错的解决:
pip uninstall tensorflow
pip uninstall protobuf
# 这里一定要添加 --no-cache-dir 参数
# 我使用的版本是 2.1.0 ,大家在使用该语句时可以自行修改版本号
pip install --no-cache-dir tensorflow-gpu==1.14.0
大家需要具体的安装包的可以下方留言,或者想咨询具体细节的也可以留言,新手一枚,多多关照