在服务器上运行论文中的深度学习模型

前言

首先需要在服务器上搭建运行环境,参见上一篇博客:【服务器上搭建深度学习模型运行环境:ubuntu
本文主要讲在搭建好运行环境的情况下如何跑开源模型,以Inf-Net: Automatic COVID-19 Lung Infection Segmentation from CT Images这篇论文为例。
以下部分我已在本地下载完毕并上传至服务器文件夹。
在这里插入图片描述

过程与问题

  1. 在执行第二步下载时出现MemoryError问题;
    解决方案:pip --no-cache-dir install -r requirements.txt即可(因为由于pip的缓存机制尝试将希望安装库的整个文件缓存到内存,而在限制缓存大小的环境中如果安装包较大就会出现MemoryError的这个错误。
    在这里插入图片描述

  2. 写到这里我才想起来,我并没有在虚拟环境中安装这些库
    解决方案:

    • 首先激活环境:source activate SINetSINet为环境名
    • 注意要切换到该文件夹路径:cd /path/path为文件在服务器中的路径
    • 然后pip即可。
  3. 下载THOP时用pip install thop否则会失败。

  4. 运行时切到对应目录下,python test.py即可。

使用XShell连接服务器并运行

因为之前的服务器不带GPU,所以换了个服务器,先设置了代理,再使用XShell连接服务器,所以下面介绍这个过程。

创建虚拟环境时出现CondaHTTPError: HTTP 000 CONNECTION FAILED for url问题:

  1. 打开编辑文件:vim ~/.condarc
  2. 单击i
  3. 输入要改的东西
  4. 点击Esc按键
  5. 输入:wq保存并退出(:q不保存直接退出)
  6. 输入 conda clean -i

运行代码

下载好代码和数据集就可以开始运行代码了。

参数问题
parser.add_argument()可以增加命令行运行的参数,用法详解见:python之parser.add_argument()用法——命令行选项、参数和子命令解析器
t2.py:

import argparse
if __name__ == "__main__":
  parser = argparse.ArgumentParser()
  parser.add_argument('--aa', type=str, default = None)
  parser.add_argument('--bb', type=int, default=32)
  args = parser.parse_args()
  if(args.bb==3):
    print(f'hello world, args.bb={
      
      args.bb}')
  else:
    print(f'sorry, args.bb is not 3, but ={
      
      args.bb}')

命令:
python t2.py --aa=15 --bb=3
python t2.py --aa=15 --bb=10

猜你喜欢

转载自blog.csdn.net/qq_46056318/article/details/129371775