GCN代码中argparse解读

GCN代码中argparse解读

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--no-cuda', action='store_true', default=False,
                    help='Disables CUDA training.')
parser.add_argument('--fastmode', action='store_true', default=False,
                    help='Validate during training pass.')
parser.add_argument('--seed', type=int, default=42, help='Random seed.')
parser.add_argument('--epochs', type=int, default=200,
                    help='Number of epochs to train.')
parser.add_argument('--lr', type=float, default=0.01,
                    help='Initial learning rate.')
parser.add_argument('--weight_decay', type=float, default=5e-4,
                    help='Weight decay (L2 loss on parameters).')
parser.add_argument('--hidden', type=int, default=16,
                    help='Number of hidden units.')
parser.add_argument('--dropout', type=float, default=0.5,
                    help='Dropout rate (1 - keep probability).')
args = parser.parse_args()

#===========================以下为自己添加的内容==================
no_cuda = args.no_cuda
fastmode = args.fastmode
seed = args.seed
epochs = args.epochs
lr = args.lr

print( ' no_cuda:',no_cuda,'\n',
        'fastmode:',fastmode,'\n',
        'seed:',seed,'\n',
        'epochs:',epochs,'\n',
        'lr:',lr,'\n')

argparse 可以认为是从终端输入参数相关的包

首先,在终端输入命令python demo.py
运行结果如下:
在这里插入图片描述
以上所有的参数输出的都是add_argument中的default的值

输入命令python demo.py -h ,输出结果如下
前面一列带有-或者--是在终端中的输入样式,也就是说,要向改变某个参数的值,首先得按照下面的格式输出。要改变LR,首先得输入--lr,以此类推
在这里插入图片描述
如何通过接受终端输入的参数代替默认值呢?
对于intfloat这样的类型的数据,我们按照上一步给出的一些参数(红色框框)可以在终端直接输入想给定的参数。
在这里插入图片描述
例如输入命令python demo.py --seed 58 --epochs 100 --lr 0.5,结果如下
在这里插入图片描述
此时,seed epochs lr 都不再是默认值,而变成了我们通过终端输入的参数

那么问题来了?对于逻辑类型的,比如此处的no_cuda fastmode,可不可以直接输入参数True呢?通过尝试,是不能够直接输入True的,对于逻辑类型的,add_argument中设定了action参数,只要直接输入参数--no-cuda或者--fastmode即可,相当于电路开关一样,按下就通,相当于执行了store_true

输入命令如下python demo.py --no-cuda --fastmode,运行结果如下:
在这里插入图片描述
由默认False变为了True

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值