云服务器深度学习环境搭建

雪夜
发布: 2025-09-27 08:22:01
原创
949人浏览过

在ubuntu 18.04.1系统上配置深度学习环境的步骤如下:

系统初始化环境

  • 操作系统: Ubuntu 18.04.1
  • 内存: 20G
  • CPU: Intel Xeon Sliver 4110 (2.1 GHz) 4核
  • GPU: Tesla P4 1颗

安装Linux下的CUDA驱动

  1. 登录NVIDIA驱动下载页面或打开链接 https://www.php.cn/link/8c7c866a13f952e17395811408d2fd1b

  2. 选择对应的支持DEB包的操作系统(Ubuntu 18.04), 得到下载链接:

    wget http://us.download.nvidia.com/tesla/418.67/nvidia-diag-driver-local-repo-ubuntu1804-418.67_1.0-1_amd64.deb
    登录后复制
  3. 安装软件包:

    sudo dpkg -i nvidia-diag-driver-local-repo-ubuntu1804-418.67_1.0-1_amd64.deb
    登录后复制
  4. 添加key:

    sudo apt-key add /var/nvidia-diag-driver-local-repo-<version>/7fa2af80.pub
    登录后复制
  5. 使用apt-get命令更新软件包:

    sudo apt-get update
    登录后复制
  6. 运行apt-get命令安装驱动:

    sudo apt-get install cuda-drivers
    登录后复制
  7. 运行reboot指令重启

  8. 运行nvidia-smi能输出正确信息代表驱动安装成功

    其中步骤2-6来源于NVIDIA官网教程。此外,rufile安装、rpm包安装、Windows系统安装等方式也可参见PHP中文网文档。

安装Anaconda

注意:建议在普通用户状态下安装,而非root用户下安装。

  1. 进入anaconda官网选择安装包下载:此处选择Linux系统下的Python3.7版本

    wget https://repo.anaconda.com/archive/Anaconda3-2019.07-Linux-x86_64.sh
    登录后复制
  2. 执行安装文件:

    bash Anaconda3-2019.07-Linux-x86_64.sh
    登录后复制
  3. 重启shell(或者直接输入bash指令), 即可使用anaconda3,输入conda指令即可。

    此时控制台输入python,已不再是系统自带的2.7版本,而是anaconda中的python版本。

  4. 当在root用户下输入conda提示无指令/python版本仍为2.7时, 执行以下操作:

    sudo gedit ~/.bashrc
    export PATH="/home/ubuntu/anaconda3/bin:$PATH"
    登录后复制
  5. 若要删除anaconda, 直接将anaconda的安装目录整体删除即可:

    rm -rf /root/anaconda3
    登录后复制
  6. 关于安装anaconda后,Linux的终端shell界面前面出现(base)字样

    原因:在打开终端后,自动执行了conda activate base。

    解决:输入conda deactivate即可。要想再次激活,输入conda activate base即可。

云服务器深度学习环境搭建

创建虚拟环境

  1. 创建python=3.7的名字为keras的虚拟环境:

    conda create --name keras python=3.7
    登录后复制
  2. 激活keras环境:

    conda activate keras
    登录后复制
  3. 如果想检查现有所有的虚拟环境, 可利用conda指令:

    conda env list
    登录后复制

在虚拟环境中安装TensorFlow-GPU

  1. 利用conda指令安装tensorflow-gpu:

    conda install tensorflow-gpu
    登录后复制
  2. 利用代码测试检查TensorFlow是否安装成功, 正确输出即安装成功。

    import tensorflow as tf
    hello = tf.constant('Hello, TensorFlow!')
    sess = tf.Session()
    print(sess.run(hello))
    登录后复制

在虚拟环境中安装Keras

  1. 利用pip指令安装keras:

    pip install keras
    登录后复制
  2. 利用代码测试检查keras是否安装成功, 无报错即安装成功。

    import keras
    登录后复制

在虚拟环境中安装Jupyter

  1. 在虚拟环境中输入jupyter指令, 提示失败。因为并未安装。

    可以使用conda list指令查看已安装的包。

云服务器深度学习环境搭建

  1. 利用conda安装jupyter:

    conda install jupyter
    登录后复制
  2. 打开jupyter:

    jupyter notebook
    登录后复制

    为防止网断导致notebook挂掉,利用screen指令,新开一个screen,以便在后台运行notebook。screen指令的使用,参见附录。

    # 开启screen
    screen
    # 激活环境
    conda activate keras
    # 运行notebook
    jupyter notebook
    # 在网页访问notebook,需要输入token,查看token的方法是jupyter notebook list
    登录后复制

访问远程环境

在本地远程访问虚拟环境中的notebook

  1. 在本地利用ssh指令实现本地端口转发:

    ssh -L8008:localhost:8888 <ip>
    登录后复制

利用MobaxTerm建立隧道连接虚拟环境中的notebook

  1. 点击Tools, 点击Network下的MobaSSHTunnel(Port forwarding)

云服务器深度学习环境搭建

  1. 点击New SSH tunnel

  2. 选择Local port forwarding, 并输入对应内容,点击Save。

    智能网站优化SiteSEO1.52
    智能网站优化SiteSEO1.52

    系统易学易懂,用户只需会上网、不需学习编程及任何语言,只要使用该系统平台,只要会打字,即可在线直接完成建站所有工作。本程序适合不懂php环境配置的新手用来在本机调试智能SiteSEO网站优化软件,安装过程极其简单。您的网站地址:http://localhost您的网站后台:登录地址: http://localhost/admin.php密 码: admin服务器套件所包含的软件:nginx-0.7

    智能网站优化SiteSEO1.52 0
    查看详情 智能网站优化SiteSEO1.52

云服务器深度学习环境搭建云服务器深度学习环境搭建

  1. 输入Name, 点击开始箭头即可。

云服务器深度学习环境搭建

  1. 此时完成隧道建立, 本地浏览器访问127.0.0.1:8008即可访问远程的Jupyter。

配置Windows本地Spyder(3.3.0及以上)连接远程服务器

  1. 服务器端在虚拟环境中, 利用conda/pip指令安装spyer-kernels

    conda install spyder-kernels
    登录后复制
  2. 服务器端在虚拟环境中, 利用命令python -m spyder-kernels.console,开启一个kernel,并生成kernel-.json文件

    python -m spyder_kernels.console
    登录后复制
  3. 服务器端在虚拟环境中, 用命令jupyter --runtime-dir找到kernel文件的路径

    jupyter --runtime-dir
    #输出举例:/home/ubuntu/.local/share/jupyter/runtime/
    登录后复制
  4. 在上述路径中找到kernel-.json文件, 并拷贝到本地端。

  5. 在本地的spyder中, 在ipython console右上侧的设置中找到connect to an existing kernel

云服务器深度学习环境搭建

  1. 选中刚刚拷贝好的kernel文件, 选中this is a remote kernel, 并输入host name与密码。(SSH Keyfile不用管)

云服务器深度学习环境搭建

  1. 点击Ok后, 报错如下“Could not open ssh tunnul. The error was: Paramiko not available”:

云服务器深度学习环境搭建

解决办法为:运行Spyder,在SpyderIPython控制台中输入指令:

   !pip install paramiko
登录后复制

之后,重启spyder,即可。

此时,就可以让spyder连接到服务器了!可以欢快地查看变量了。

云服务器深度学习环境搭建

配置Windows本地Pycharm连接远程服务器

  1. 用pycharm打开一个项目, File -> Settings -> 搜索Project Interpreter -> 在Project Interpreter栏目右侧点击设置图标 -> 选择Add...

云服务器深度学习环境搭建

  1. 点击SSH Interpreter -> 输入远程主机的IP(*..*.)和登录用户名(ubuntu)**

云服务器深度学习环境搭建

  1. 点击后, 输入远程连接的服务器密码

云服务器深度学习环境搭建

  1. 选择远程Interpreter. 点击文件夹图标 -> 选择远程虚拟环境中的python解释器。

    eg:/home/ubuntu/anaconda3/envs/keras/bin/python

    这样虚拟环境就可以使用了。

云服务器深度学习环境搭建

问题1:Pycharm的Python Console控制台出现中文乱码

【问题描述】

Pycharm默认打开时,python console中如果用到windows下cmd里的命令时,会输出乱码。

【问题原因】

cmd默认的编码是gbk(代码页:936),而python console 里面的编码是utf-8(代码页:65001),由于编码不一致,所以输出时会出现乱码。

【解决办法】

  1. File-Setting-Search-console-python console

  2. 添加以下代码

    !chcp 65001
    登录后复制

云服务器深度学习环境搭建

注:file encoding中的编码设置保持默认即可,不要被网上其他博客所误导而乱改,正常如下:

云服务器深度学习环境搭建

  1. 重启python console即可, 效果如下:

云服务器深度学习环境搭建

附录:screen指令使用

常用参数

  • screen -S yourname -> 新建一个叫yourname的session
  • screen -ls -> 列出当前所有的session
  • screen -r yourname -> 回到yourname这个session
  • screen -d yourname -> 远程detach某个session
  • screen -d -r yourname -> 结束当前session并回到yourname这个session
  • screen -S yourname -X quit ->删除当前screen

快捷键

在每个screen session 下,所有命令都以 ctrl+a(C-a) 开始。

  • C-a ? -> 显示所有键绑定信息
  • C-a c -> 创建一个新的运行shell的窗口并切换到该窗口
  • C-a n -> Next,切换到下一个 window
  • C-a p -> Previous,切换到前一个 window
  • C-a 0..9 -> 切换到第 0..9 个 window
  • Ctrl+a [Space] -> 由视窗0循序切换到视窗9
  • C-a C-a -> 在两个最近使用的 window 间切换
  • C-a x -> 锁住当前的 window,需用用户密码解锁
  • C-a d -> detach,暂时离开当前session,将目前的 screen session (可能含有多个 windows) 丢到后台执行,并会回到还没进 screen 时的状态,此时在 screen session 里,每个 window 内运行的 process (无论是前台/后台)都在继续执行,即使 logout 也不影响。
  • C-a z -> 把当前session放到后台执行,用 shell 的 fg 命令则可回去。
  • C-a w -> 显示所有窗口列表
  • C-a t -> Time,显示当前时间,和系统的 load
  • C-a k -> kill window,强行关闭当前的 window
  • C-a [ -> 进入 copy mode,在 copy mode 下可以回滚、搜索、复制就像用使用 vi 一样
    • C-b Backward,PageUp
    • C-f Forward,PageDown
    • H(大写) High,将光标移至左上角
    • L Low,将光标移至左下角
    • 0 移到行首
    • $ 行末
    • w forward one word,以字为单位往前移
    • b backward one word,以字为单位往后移
    • Space 第一次按为标记区起点,第二次按为终点
    • Esc 结束 copy mode
  • C-a ] -> Paste,把刚刚在 copy mode 选定的内容贴上

重点问题

  1. screen的三种状态

    • Attached:有用户登录状态。
    • Detached:暂时离开当前session,将目前的 screen session (可能含有多个 windows) 丢到后台执行,并会回到还没进 screen 时的状态,此时在 screen session 里,每个 window 内运行的 process (无论是前台/后台)都在继续执行,即使 logout 也不影响。 输入screen -d <session-id></session-id>到此状态。 通过screen -r <session-id></session-id>再次进入。
    • Dead:被kill了该screen。
  2. 如何正常退出screen? 在screen中输入exit指令即可。

  3. 当screen状态为Attached时,如何重新登入该screen?

    screen -ls
    screen -D -r <session-id>
    解释:-D -r 先踢掉前一用户,再登陆screen
    其中,-D也可用-d替换。
    登录后复制

以上就是云服务器深度学习环境搭建的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号