程序调试经验记录

目录

PYTHON

  1. 有路径的地方要注意区别“/”和“\”。ubuntu使用“/”分割文件夹;
  2. 对于别人的代码,首先仔细阅读readme中的内容,如果需要修改相应的部分来适配自己的环境或者数据集,在修改的过程中要做好标记,便于在代码调试的过程中改正错误(报错通常出现在我们修改代码的字段);
  3. 将原代码中的多数据集训练改为单数据集训练的过程中,不要只顾修改数据集的路径以及注释部分数据集的使用,还要兼顾其它配置数据,防止代码报错;
  4. 程序的进程数(num_works)设为0(使用主进程),通常会首先排除一些错误(由于CPU算力的原因,多线程CPU也可能也不会对多进程产生效果,所以一般设为1或0);
  5. batch_size应从小到大进行实验,这样才能发挥GPU的最佳性能,同时也不会导致程序报错(通常是显存不够用了);
  6. 程序报错了之后,首先将报错原因直接输入搜索引擎查找类似的博客,通常会找到一模一样的报错及有效的解决办法,如果按照博客中的方法不能解决问题,那么就在Traceback的最后一个文件对应的报错位置加“断点”,然后DEBUG分析原因,通常能够很快解决问题。如果还是未能解决问题,考虑将电脑配置严格与原作者的配置对齐;

UBUNTU

  1. 如要删除ubuntu中建立的文件,需在ubuntu中进行删除,如在windows中删除,可能会造成删除不干净的情况;