使用服务器训练模型的注意事项

一、图像展示

1.1、用VS Code远程连接服务器时,当我们想用matplotlib库来进行图像展示的时候,需要设置DISPLAY变量。

复制代码
# 用终端工具(XShell)SSH远程服务器,在终端上输入下列语句
# 如果使用了anaconda的虚拟环境,那么需要先进行入虚拟环境中

echo $DISPLAY

# 输出例子如下:
localhost:10.0

# 然后到VS Code的终端里面,注意也是要在虚拟环境中,输入下列语句
export DISPLAY="localhost:10.0"

二、训练模型

2.1、用服务器训练模型时,效果比windows差很多,甚至无法收敛

原因:服务器一般是Linux系统,那么在训练过程中,读取数据集的时候就需要注意:Linux读取文件是乱序的,所以需要加上"sorted"函数,先排序,再遍历数据集。

2.2、模型训练日志保存路径

需要用os库中的一个函数来定义编译器工作路径,设置好了后就可以之间使用"./"来保存文件和读取数据了

复制代码
import os

os.chdir('/home/....../Projects')

2.3、指定GPU训练模型

服务器一般有多卡,那么如果想要指定GPU来训练我们的模型,我们需要设置一个变量,后续的程序中直接使用.cuda()就可以了。

复制代码
import os

os.environ['CUDA_VISIBLE_DEVICES'] = 'gpu_id_0, gpu_id_1'

三、Tensorboard使用

3.1、用服务器训练模型时,tensorboard无法启动

原因:第一次使用一般都是可以打开的,但一旦在vs code里面关闭它时,其实是没有完全关闭的,所以需要在终端中输入以下指令:

复制代码
kill -9 $(ps -ef|grep tensorboard|grep -v grep|awk '{print $2}')

3.2、用服务器训练模型时,tensorboard一直展示上一个项目的训练日志

原因:Tensorboard一直展示前一个项目的数据-CSDN博客

相关推荐
AI+程序员在路上8 分钟前
Linux C 条件变量阻塞线程用法:等待时CPU占用率为0
linux·运维·c语言
HABuo25 分钟前
【linux线程(三)】生产者消费者模型(条件变量阻塞队列版本、信号量环形队列版本)详细剖析
linux·运维·服务器·c语言·c++·ubuntu·centos
运维行者_42 分钟前
使用 Applications Manager 实现 AWS 云监控:保障业务应用高效运行
大数据·运维·服务器·网络·数据库·云计算·aws
安科士andxe1 小时前
深度解析|安科士100G QSFP28 30km光模块核心技术,破解中长距传输痛点
运维·服务器·网络
01传说1 小时前
nginx部署教程实战
运维·nginx
Java面试题总结1 小时前
Linux根分区爆满(占用81%)排查与解决实战
linux·运维·服务器
Bert.Cai1 小时前
Linux touch命令详解
linux·运维
想要入门的程序猿1 小时前
VTK与PCL源码编译(Ubuntu 20.04.6)
linux·运维·服务器
EmbeddedCore1 小时前
轻量级消息防重模块全解析:从原理到高性能优化
linux·运维·服务器·嵌入式硬件
发光小北2 小时前
SG-UHF110 系列远距离超高频 RFID 读写器如何应用?
服务器·网络