当前位置:   article > 正文

如何将本地深度学习项目放到阿里云服务器(CentOS 7)上运行(基本完整)_将深度学习模型部署在阿里云平台

将深度学习模型部署在阿里云平台

由于比赛需要,需要将本地的一个Python项目(keras框架的深度学习代码)放到云服务器上运行,以下是我的历程,以及踩过的坑,希望对有相同需要的人有所帮助。

步骤一:购买学生机

  1. 阿里云官网认证学生用户(24周岁以下)
    认证页面
  2. 返回阿里云首页,查看产品,选择云服务器ECS
    选择云服务器ECS
  3. 点进去之后页面拉到最底端,选择学生机
    学生机选择
  4. 选择系统CentOS(好不容易有个Linux系统,怎么可以选Windows呢)和地域
    学生机选择
    问了客服,好像没有给个人用的GPU的服务器,只有给企业用的,而且炒鸡贵,不过经过测试,CPU的服务器跑深度学习的代码也不算很慢。
  5. 购买完之后需要进入控制台,查看自己服务器相关信息,在之后可能会用到
    查看云服务器信息
    点进去之后查看公网ip,之后有用
    查看公网ip

步骤二:在服务器上放行相关端口(现在我觉得计网不是白学的)

  1. 打开服务器管理控制台,选择实例
    放行相关端口
    在这里插入图片描述
  2. 放行相关端口(照我的放行吧)
    放行端口
    放行端口

步骤三:安装Xshell和Xftp

这一步是为了方便连接云服务器和向服务器上上传文件,Xshell相当于一个访问服务器并对服务器进行操作的窗口,Xftp相当于一个向服务器上传文件的窗口,当然也可以不下载这两个,直接通过网页阿里云服务器的控制台进行操作,网页操作有个缺点是,一段时间没有响应,就需要重新连接服务器。
下载Xshell和Xftp链接参考:点击跳转下载教程
下载的时候提示你购买软件什么的直接关掉就行。

步骤四:打开Xshell连接云服务器

连接云服务器
在这里插入图片描述
点击连接之后输入服务器用户名和密码即可。

步骤五:安装Anaconda以及Python3

参考链接:安装Anaconda教程
!!点进去先看我这里,该博主使用的是PuTTY连接云服务器并进行安装,由于上一步我们已经通过Xshell连接服务器了,所以可直接跳过该博主安装PuTTY的步骤以及连接服务器步骤,直接进行后面的代码操作。

步骤六:配置keras环境

  1. 配置keras环境
    需要说明的是要执行conda前必须先执行 source ~/.bashrc
source ~/.bashrc
conda create -n keras python=3.7
  • 1
  • 2

配置完后结果如下图:
配置keras环境截图

  1. 配置tensorflow环境
    首先进入keras环境,进入keras环境后配置tensorflow环境
conda activate keras
pip install tensorflow
  • 1
  • 2

在这里插入图片描述
ok,到目前为止都不算什么,基本一切顺利,环境配好之后,现在可以把自己的项目放到服务器上运行下试试。

步骤七:将自己的Python项目放到服务器上

  1. 打开之前安装的Xftp并连接自己的服务器
    打开Xftp
    连接服务器
  2. 将自己的Python项目文件整个地拖进去
    上传项目

步骤八:通过Xshell在服务器上运行自己的Python项目

  1. 首先进入keras环境
source ~/.bashrc
conda activate keras
cd 你的项目所在文件夹
python 你想执行的python文件名.py
  • 1
  • 2
  • 3
  • 4

注意:
1.这里如果报 ImportError: Something is wrong with the numpy installation. 这种错那就是因为该路径下有多个版本的的numpy,只要把所有的numpy uninstall之后再install一个就好了,一定要在tensorflow环境下进行
参考链接:解决上述错误的原文链接
2.如果在进入tensorflow环境时报错,,那是因为忘记配置tensorflow环境了,,我就要让大家走走弯路,,太痛苦了,
然后退出环境,来配置tensorflow环境

source ~/.bashrc
conda create -n keras python=3.7
  • 1
  • 2

然后接着运行
3.如果出现下述错误(大BOSS):
ImportError: /lib64/libstdc++.so.6: version CXXABI_1.3.9' not found (required by............) 或 ImportError: /lib64/libstdc++.so.6: versionCXXABI_1.3.8’ not found (required by…)之类的,请按下面步骤操作,不要问我为什么,我只知道解决这个问题炒鸡痛苦,如果把整个过程花的时间当做1,这个问题的解决至少占了0.7吧,,也可能只是因为我太菜了
我参考的几个典型的解决方案如下,不过最终都没能解决我的问题,可能是我的问题的特殊性,大家可以参考下,万一有用:
方案一
方案二
其实我参考的远不止这些,为了避免大家看着头疼我还是不列了
1.请先参考链接:通用解决方案
连接中提到的 libstdc++.so.6.0.24 下载地址请看该博客的评论区
2.下载到本地之后会发现下载后的文件名是libstdc.so.6.0.24 ,而非libstdc++.so.6.0.24,这个文件本身是对的,只是文件名不对而已,请大家下载后直接将文件名改成libstdc++.so.6.0.24就好,然后将下载的libstdc++.so.6.0.24通过Xftp拖至/root/lib64文件夹下,再接着按上面博主的做法继续执行,,
然后这里又有一个坑,就是在执行博主的rm -rf libstdc++.so.6代码时,先进入/root/lib64再执行,不然不能成功
在这里插入图片描述
3.上面完成之后重新运行你的python程序,你可能又遇到错了,就是/lib64/libm.so.6: version `GLIBC_2.23’ not found
跟上面的错很像
解决方案
升级make
最后再运行运行一下程序,应该就可以了,本人小白一枚,有什么写的不专业的还望批评指正,希望有所帮助吧。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/1014680
推荐阅读
相关标签
  

闽ICP备14008679号