知识图到文本的生成——柒

2021SC@SDUSC

目录

pargs方法


上篇博客对pargs.py中的pargs方法的一部分进行分析,接下来会对pargs方法的剩余部分进行分析。

pargs方法

由于下面分析代码需要,先在此列出。

parser.add_argument()添加命令行选项

ArgumentParser.add_argument(name or flags...[, action][, nargs][, const][, default][, type][, choices][, required][, help][, metavar][, dest])

  • name or flags - 一个命名或者一个选项字符串的列表,例如 foo 或 -f, --foo。
  • action - 当参数在命令行中出现时使用的动作基本类型。
  1. store:存储参数的值。这是默认的动作
  2. store_const:存储被const命名参数指定的值。
  3. store_true和store_false :这些是 'store_const' 分别用作存储 True 和 False 值的特殊用例。
  4. append:存储一个列表,并且将每个参数值追加到列表中。使用与一个选项多次出现的情况。
  5. append_const:这存储一个列表,并将const命名参数指定的值追加到列表中。
  6. count:计算一个关键字参数出现的数目或次数。
  • nargs - 命令行参数应当消耗的数目。
  1. N:N个参数形成一个列表
  2. ?:从命令行中消耗一个参数,并产生一个单一项。如果当前没有命令行参数,则会产生default值
  3. *: 所有当前命令行参数被聚集到一个列表中
  4. +:所有当前命令行参数被聚集到一个列表中。另外,当前没有至少一个命令行参数时会产生一个错误信息
  • const - 被一些 action 和 nargs 选择所需求的常数。
  • default - 当参数未在命令行中出现时使用的值。
  • type - 命令行参数应当被转换成的类型。
  • choices - 可用的参数的容器。
  • required - 此命令行选项是否可省略 (仅选项可用)。
  • help - 一个此选项作用的简单描述。
  • metavar - 在使用方法消息(-h)中使用的参数值示例。
  • dest - 被添加到 parse_args() 所返回对象上的属性名。
#parser.add_argument('-max_grad_norm', type=int, default=1)//-max_grad_norm一个选项字符串的列表,当参数未在命令行中出现时使用值1,命令行参数应当被转换成类型int
#data
parser.add_argument("-nosave",action='store_false',help='dont save')//-nosave一个选项字符串的列表,'store_const' 用作存储False,此选项作用是dont save
parser.add_argument("-save",required=True,help="where to save model")//-save一个选项字符串的列表,此命令行选项可以省略,此选项作用是where to save model
parser.add_argument("-outunk",default=5,type=int,help="unk @ for targets")//-outunk一个选项字符串的列表,当参数未在命令行中出现时使用值5,命令行参数应当被转换成类型int,此选项作用是unk @ for targets
parser.add_argument("-entunk",default=5,type=int,help="unk @ for entity vocabulary")//-entunk一个选项字符串的列表,当参数未在命令行中出现时使用值5,命令行参数应当被转换成类型int,此选项作用是unk @ for entity vocabulary
parser.add_argument("-datadir",default="data/")//-datadir一个选项字符串的列表,当参数未在命令行中出现时使用值data/
parser.add_argument("-data",default="preprocessed.train.tsv",help="preprocessed data")//-data一个选项字符串的列表,当参数未在命令行中出现时使用值reprocessed.train.tsv,此选项作用是preprocessed data
parser.add_argument("-traindata",default="preprocessed.train.tsv",help="preprocessed train data")//-traindata一个选项字符串的列表,当参数未在命令行中出现时使用值reprocessed.train.tsv,此选项作用是preprocessed train data
parser.add_argument("-relvocab",default="relations.vocab",type=str,help='vocabulary of graph relations')//-relvocab一个选项字符串的列表,当参数未在命令行中出现时使用值relations.vocab,命令行参数应当被转换成类型str,此选项作用是vocabulary of graph relations
parser.add_argument("-savevocab",default=None,type=str)//-savevocab一个选项字符串的列表,当参数未在命令行中出现时使用值None,命令行参数应当被转换成类型str
parser.add_argument("-loadvocab",default=None,type=str)//-loadvocab一个选项字符串的列表,当参数未在命令行中出现时使用值None,命令行参数应当被转换成类型str
#eval
parser.add_argument("-eval",action='store_true')//-eval一个选项字符串的列表,'store_const' 用作存储True
#inference
parser.add_argument("-max",default=200,type=int,help="max length of generation")//-max一个选项字符串的列表,当参数未在命令行中出现时使用值200,命令行参数应当被转换成类型int,此选项作用是max length of generation
parser.add_argument("-test",action='store_true')//-test一个选项字符串的列表,'store_const' 用作存储True
#parser.add_argument("-sample",action='store_true')//-sample一个选项字符串的列表,'store_const' 用作存储True
parser.add_argument("-inputs",default="../data/fullGraph.test.tsv",type=str)//-inputs一个选项字符串的列表,当参数未在命令行中出现时使用值../data/fullGraph.test.tsv,命令行参数应当被转换成类型str
parser.add_argument("-sparse",action='store_true',help="sparse graphs (NOT CURRENTLY IMPLEMENTED)")//-sparse一个选项字符串的列表,'store_const' 用作存储True,此选项作用是sparse graphs (NOT CURRENTLY IMPLEMENTED)
parser.add_argument("-plan",action='store_true',help="plan and write (NOT IMPLEMENTED)")//-plan一个选项字符串的列表,'store_const' 用作存储True,此选项作用是plan and write (NOT IMPLEMENTED)
parser.add_argument("-ckpt",default=None,type=str,help='load checkpoint')//-ckpt一个选项字符串的列表,当参数未在命令行中出现时使用值None,命令行参数应当被转换成类型str,此选项作用是load checkpoint
parser.add_argument("-plweight",default=0.2,type=float,help="plan weight (NOT IMPLEMENTED)")//-plweight一个选项字符串的列表,当参数未在命令行中出现时使用值0.2,命令行参数应当被转换成类型float,此选项作用是plan weight (NOT IMPLEMENTED)
parser.add_argument("-entdetach",action='store_true',help='dont backprop into entity embeddings')//-entdetach'store_const' 用作存储True,此选项作用是dont backprop into entity embeddings
parser.add_argument("-gpu",default=0,type=int)//-gpu一个选项字符串的列表,当参数未在命令行中出现时使用值0,命令行参数应当被转换成类型int
args = parser.parse_args()//ArgumentParser 通过parse_args()方法解析参数。它将检查命令行,把每个参数转换为适当的类型然后调用相应的操作。在大多数情况下,这意味着一个简单的 Namespace 对象将从命令行解析出的属性构建,在脚本中,通常 parse_args() 会被不带参数调用,而 ArgumentParser 将自动从 sys.argv 中确定命令行参数。
if args.gpu == -1://如果gpu没有被使用
  args.gpu = 'cpu'//那么使用cpu
args.device = torch.device(args.gpu)//torch.device代表将torch.Tensor分配到的设备的对象
#args.options_file = "../elmo/elmo_2x2048_256_2048cnn_1xhighway_options.json"
#args.weight_file = "../elmo/elmo_2x2048_256_2048cnn_1xhighway_weights.hdf5"
return args//返回参数args
至此,pargs.py中的pargs方法全部分析完毕。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值