Pycharm连接远程服务器、使用Pycharm运行深度学习项目、Pycharm使用总结以及Pycharm报错和解决办法

Pycharm连接远程服务器,使用Pycharm运行深度学习项目以及Pycharm的使用总结


文章目录

  • Pycharm连接远程服务器,使用Pycharm运行深度学习项目以及Pycharm的使用总结
  • 前言
  • 一、Pycharm连接远程服务器
  • 1、配置Deployment
  • 2、配置使用服务器端的Python环境
  • 3、使用远程服务器运行项目
  • 二、Pycharm运行深度学习项目
  • 1、配置深度学习环境
  • 2、下载数据集
  • 3、配置参数
  • 三、Pycharm使用总结及使用技巧
  • 1、Pycharm快捷键
  • 2、Pycharm调试
  • 四、Pycharm遇到的错误及解决方法
  • 总结

  • 前言

    Pycharm和Vscode是最受欢迎的Python编辑工具,这边文章就主要讲解Pycharm的使用,包括Pycharm连接远程服务器、Pycharm运行深度学习模型以及Pycharm的使用总结。


    一、Pycharm连接远程服务器

    大家在实际的学习工作中都可能会遇到这种情况:自己的轻薄笔记本没有显卡,或者显卡性能过低,在运行深度学习项目的时候很浪费时间。如果大家所在的实验室或者单位有用于深度学习的服务器的话,那么就积极地去使用这些资源吧,毕竟服务器的显卡算力要远远高于笔记本的显卡算力的,下面就介绍一下Pycharm如何连接远程服务器。

    1、配置Deployment

    Deployment英文名称为部署,在pycharm中就是将本地的Python项目文件部署到服务器那个文件夹中。
    (1)首先点击file->settings->Build, Execution, Deployment->Deployment打开部署页面,点击加号,选择SFTP,并在弹出的对话框输入部署的名称(这个名称可以随便起)。

    (2)接下来是对右边箭头指向的两部分内容(连接和映射)进行配置。

    Connection配置主要配置SSH configuration,点击SSH configuration之后,在弹出的面板进行配置,配置内容说明:

    Host 为服务器的访问路由,输入你的服务器IP即可。
    User name 为你在该服务器上分配的用户名。
    Authentication type 未认证方式,我这里选择Password。
    Password 你的用户名对应的密码。
    其余的保持下图所示即可。


    Mappings配置本地和远程服务器对应的文件夹映射关系(因为你要把本地代码在服务器上运行,服务器上肯定需要映射你的本地代码),这里可以首先在服务器创建一个文件夹用于映射本地的文件。

    Local path 表示本地的文件夹路径。
    Deployment path 表示要映射到服务器上的文件夹路径。


    Excluded Paths 为不进行映射的文件(可能在你的项目中,你不想让一些文件映射到服务器上,你可以在这里设置,由于我没有用到,因此这里不做配置)。Connection和Mappings配置完成之后,点击ApplyDeployment配置就OK了。

    2、配置使用服务器端的Python环境

    (1)点击 file->settings->Project->Python Interpreter,进入Python翻译器选择界面:

    (2)点击右侧的设置图标,点击Add,进入Python翻译器添加界面,选择其中的SSH:

    (3)选择New server configuration,Host和Username分别是上面提到的服务器Ip地址和你在该服务器上分配的用户名,填写之后点击Next。
    (4)输入密码,点击Next。
    (5)进入选择Python解释器页面。

    这里主要配置两个内容 Interpreter和Sync folders
    Interpreter 指的是你要是用的服务器上的Python环境,我这里使用的是服务器上anaconda安装的pytorch1.10环境。
    Sync folders指的是本地项目和服务器端项目的映射,我这里选的和Deployment配置步骤的服务器端项目文件夹一致。

    配置完成之后点击Finish

    3、使用远程服务器运行项目

    进入项目Run/Debug的配置页面,在configuration面板中,可以看到Python Interpreter选项,点开之后发现我们刚刚配置的远程Python环境已经在里面了,选中该环境。

    再运行项目的时候,查看Run的日志输出,发现项目已经在远程服务器上运行了。

    注意,每次在pycharm上更改完代码之后都需要将更改上传到服务器上,否则服务器不会运行你在pycharm上做的更改,上传到服务器上的方法如下图所示:


    二、Pycharm运行深度学习项目

    运行深度学习项目通常首先需要配置环境,然后下载需要使用到的数据集,并将数据集放置于合适的位置,最后是配置项目运行的各种参数。

    1、配置深度学习环境

    现在常用的深度学习框架有TensorFlow和Pytorch两个,可以根据自己的情况选择安装任何一个合适版本的深度学习框架,深度学习环境现在通常使用anaconda创建,这里就不详细展开环境如何搭建,如果大家感兴趣,我可以后期出一个环境搭建的教程。

    2、下载数据集

    如果你要复现一篇定会的论文,你首先要找到该论文使用的数据集,然后查询数据集下载方法,将下载好的数据集放置到合适的位置,并修改模型内的参数,去使用该数据集。数据集下载的方法以及难度因其本身而异,这里也不再展开。

    3、配置参数

    (1)如果在Windows系统上运行,最简单的方式就是在pycharm运行项目的时候配置参数,在项目Run/Debug的配置页面进行参数配置。

    点击Parameters最右侧的图标,进入参数编辑页面,在该页面将项目需要配置的参数进行添加即可:

    添加完成之后点击运行,项目就能成功跑起来。

    (2)如果在Linux服务器上运行,通常会指定一个配置文件或者一个可执行的.sh文件,通过运行该配置文件的方式就能顺利启动该项目。

    上图展示了一个项目的JSON格式的配置文件,在该文件中对项目需要的所有参数进行配置,运行的时候使用该配置文件即可,下面代码是在jupyter上执行的,在启动项目的时候,携带参数config,这个config对应的是参数配置的JSON文件的路径,通过这种方式为项目进行参数配置。

    %run main.py --config ./config/conll03.json
    

    当然也可以通过一个.sh文件更方便进行项目参数配置和启动:

    下图展示一个项目的.sh配置文件,该配置文件对项目参数进行了配置,而且对项目数据集的使用也进行了处理,非常方便,在Linux服务器里,cd到该.sh文件所在的目录,然后使用./run_mtmner_crf.sh即可运行项目。


    三、Pycharm使用总结及使用技巧

    1、Pycharm快捷键

    我们都知道快捷键能够有效提高开发效率,所以首先讲解一下Pycharm好用的快捷键,后续会持续更新

    // 在当前文件搜索(字符串)
    ctrl+f
    // 在当前项目所有文件搜索
    ctrl+shift+f
    // 替换字符串
    ctrl+r
    // 智能提示,对报错信息以及引用信息进行智能提示
    alt+enter
    // 任意位置换行,无论光标是不是在该行的末尾,使用shift+enter均能实现换行
    shift+enter
    // 复制当前行到下一行
    ctrl+d
    //剪切当前行
    ctrl+x
    //删除当前行
    ctrl+y
    //查看函数的参数信息
    ctrl+p
    //包裹代码
    ctrl+alt+t
    //单行注释和块注释
    ctrl+/  ctrl+shift+/
    // 逐步选择代码
     ctrl+w
    //逐步取消选择代码
     ctrl+shift+w
    //代码格式化
     ctrl+alt+l
    //代码向后缩进
    tab
    //代码向前取消缩进
    shift+tab
    // 运行代码
    shift+f10
    // 调试代码
     shift+f9
     
    

    2、Pycharm调试

    调试是在程序设计过程中非常重要的方法,很多初学者往往使用print打印输出,忽略了调试的作用,实际上,学会调试才更有利于对程序的掌握

    调试的过程
    1、打断点
    2、以调试的方式运行程序
    3、在调试中具体查看程序运行的各个变量的信息
    常用的调试操作有step over、step into、step out、Resume program六种。
    step over(F8):如果在单步执行时遇到子函数,则将子函数作为一步,运行完再停止,在没有子函数的情况下和step into一样。
    step into(F7):如果有子函数,跳入子函数再执行。
    step into my code (alt+shift+F7):遇到子函数就进入,并继续单步执行,但不会进入源码中(让debug回到自己的代码中)。
    step out(shift+F8):跳出当前函数体
    Resume program(F9):继续恢复程序,直接运行到下一个端点处。


    四、Pycharm遇到的错误及解决方法

    这个模块以后会记录自己在使用pycharm中遇到的问题以及解决方法,方便后续查看解决问题。


    总结

    这篇文章主要讲解了Pycharm连接远程服务器,Pycharm运行深度学习项目以及Pycharm的使用总结,使用总结目前包括两部分:Pycharm好用的快捷键总结和Pycharm调试总结。以后会持续更新pycharm使用总结和错误解决办法。

    物联沃分享整理
    物联沃-IOTWORD物联网 » Pycharm连接远程服务器、使用Pycharm运行深度学习项目、Pycharm使用总结以及Pycharm报错和解决办法

    发表评论