邪道方法-字典转字符串以传参字典给多GPU训练的mmseg

引言

  • 我想把字典传参给多GPU训练,但一直报错,各种类型的报错。
  • 于是我试着将字典转为字符串形式,在模型内部解析为字典,可行。
  • 我懒得把代码从服务器上搞过来了,所以这里只给截图,反正大家也用不到我的参数,思路用到的代码也不多。
  • 还有其它的解决方法,比如一个个传,不用字典形式,但是很丑,我不喜欢。
  • 也可以通过临时文件作为中转,传参就传个文件目录

解决方法

  • 对于下面给定的字典,我想把它作为参数,使用多GPU训练的方式传入。
    multiGPUParam1.png
  • 把它转为无空格与换行的字符串形式,并将" ( ) ,四个字符使用其他形式表示,我这里用拼音表示。
    注意字典开头结尾的",好像是传参时需要它?不过加上没错就是了。
    multiGPUParam2.png
  • 在传入后,将其通过 ast.literal_eval 转为字典形式,并将变为 strint, float 恢复,下图的最后四行就是恢复的代码。
    multiGPUParam3.png
  • 它转为字符串后的形式
    multiGPUParam4.png
  • 它在多 GPU 训练时的样子
    multiGPUParam5.png

You may also like...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

上传图片
CAPTCHAis initialing...