机器在学习
Python编程中flags可以帮助我们通过命令行来动态的更改代码中的参数。以bert为例,在运行代码的时候,有很多flag需要配置
flags
export BERT_BASE_DIR=/Users/mtdp/Desktop/code/data/tmp/chinese_L-12_H-768_A-12export SERVE_DIR=/Users/mtdp/Desktop/code/data/tmp/bert_multi_data/predictpython main.py \ --task_name=fserve \ --do_train=True \ --do_eval=False \ --do_predict=True \ --do_export=True \ --data_dir=$SERVE_DIR \ --vocab_file=$BERT_BASE_DIR/vocab.txt \ --bert_config_file=$BERT_BASE_DIR/bert_config.json \ --init_checkpoint= \ --max_seq_length=300 \ --train_batch_size=1 \ --learning_rate=5e-5 \ --num_train_epochs=1 \ --output_dir=/Users/lisiyuan/Desktop/code/data/tmp/serve_output/
通常来说,我们会把上面的这些代码写到一个sh脚本中,通过执行sh脚本,就可以启动bert的训练过程,但在代码开发过程中,我们经常会需要进行debug,查看代码中一些变量的值,shape等属性,这对于熟悉模型结构而言,非常重要,使用sh脚本启动训练过程,不是很方便进行debug。
我注意到Eclipse中,可以设置flags,但平时我主要还是使用Pycharm进行开发,找了一下,发现「tensorflow flags 最全 pycharm 运行时输入参数 list string int float」有提到使用pycharm配置flags,但说的不是特别详细,因此本文在上述博文的基础上进行了补充说明。
首先,点击【Run】–>【Edit Configurations】进入设置
进入设置后,选择你需要配置flags参数的py文件,然后再点击Parameters框右侧的图标,添加flag
按照下图中的格式,在框内输入你的参数
--task_nameMRPC--output_diroutput--do_evalflase--do_traintrue--data_dir../GLUE/glue_data/MRPC--vocab_file../GLUE/BERT_BASE_DIR/uncased_L-12_H-768_A-12/vocab.txt--bert_config_file../GLUE/BERT_BASE_DIR/uncased_L-12_H-768_A-12/bert_config.json
上面是我的参数,可以供大家参考。
配置好参数后,点击“OK”确认即可。最后,点击鼠标右键,选择【Run ‘run_classifier’ with Coverage】就可以使用刚刚配置的参数运行Python文件了
运行Python文件,可以方便地进行debug,达到查看模型内部详细信息的目的。
需要注意的是,这只是方便进行本地调试的方法,如果代码需要到服务器运行,还是需要使用sh脚本进行部署的
The End
已发布
分类
标签:
好
您的电子邮箱地址不会被公开。 必填项已用*标注
评论 *
显示名称
电子邮箱地址
网站地址
Δ
发表回复