我们在pycharm中经常会配置参数例如这样:
import argparse
parser = argparse.ArgumentParser()
# parser.add_argument('-net', type=str, required=True, help='net type')
parser.add_argument('-gpu', action='store_true', default=True, help='use gpu or not')
parser.add_argument('-b', type=int, default=2, help='batch size for dataloader')
parser.add_argument('-warm', type=int, default=0, help='warm up training phase')
parser.add_argument('-lr', type=float, default=0.001, help='initial learning rate')
parser.add_argument('-resume', action='store_true', default=False, help='resume training')
args = parser.parse_args()
# 在你的代码中使用这些参数值
print(args.gpu) # 示例,打印是否使用 GPU
print(args.b) # 示例,打印 batch size
print(args.warm) # 示例,打印 warm up 训练阶段
print(args.lr) # 示例,打印学习率
print(args.resume) # 示例,打印是否恢复训练
输出结果为:
那么在jupyternotebook中怎么配置参数呢,
class Args:
def __init__(self):
self.gpu = True # 默认值
self.b = 2 # 默认值
self.warm = 0 # 默认值
self.lr = 0.001 # 默认值
self.resume = False # 默认值
self.net = 'vgg16' # 默认值
args = Args() # 创建参数对象
# 手动设置参数值,模拟命令行传递参数的行为
args.gpu = True # 设置是否使用 GPU
args.b = 4 # 设置 batch size
args.warm = 5 # 设置 warm up 训练阶段
args.lr = 0.01 # 设置学习率
# 在你的代码中使用这些参数值
print(args.gpu) # 示例,打印是否使用 GPU
print(args.b) # 示例,打印 batch size
print(args.warm) # 示例,打印 warm up 训练阶段
print(args.lr) # 示例,打印学习率
print(args.resume) # 示例,打印是否恢复训练
print(args.net) # 示例,打印是否恢复训练
输出结果为
这样在.py文件中配置的一些参数,我们在jupyternotebook中就也可以使用了