易妖游戏网
您的当前位置:首页使用shell脚本运行python程序

使用shell脚本运行python程序

来源:易妖游戏网

在训练深度学习模型时,为了生产力,避免手动调参等,一般写成shell脚本的形式,执行一次shell就可以把所有的python程序给运行完毕。

例如,我需要探究batchsize的影响,一般新手入门可能这样做:

如果用shell就可以这样写:

train.sh:

#!/bin/bash

$python main.py --bs 8
$python main.py --bs 16
$python main.py --bs 32
$python main.py --bs 

当然也可以这样写:

train.sh

#!/bin/bash

# 指定参数范围
BS=(8 16 32 )

# 循环遍历所有的参数
for i in "${BS[@]}"
do
	# 调用 main.py,并传递当前的i值作为参数
	$python main.py --bs $i
done

然后,一行代码就可以执行上述train.sh文件:

$ bash train.sh

接下来是本文的重点,如何解决运行脚本路径问题?

一般我们会在python工程下新建一个scripts文件,并将所有的脚本.sh文件全面放在这里。下面介绍如何执行scripts文件下的脚本。

我的python工程文件树如下:

My_project
|-- datasets
|-- logs
|-- models
|-- scripts
|   `-- train1.sh
|   `-- train2.sh
|   `-- train3.sh
|-- main.py

其中,train1.sh代码如下:

#!/bin/bash

$python main.py --bs 8
$python main.py --bs 16
$python main.py --bs 32
$python main.py --bs 

正确运行train1.sh代码的方式:

  1. 通过cd将路径切换到根目录My_project下 (不要进入scripts文件夹下)。
  2. 在当前My_project 路径下执行:$ bash scripts/train1.sh

因篇幅问题不能全部显示,请点此查看更多更全内容