python中编写config文件并及时更新的方法
短信预约 -IT技能 免费直播动态提醒
0. Intro
- 在pytorch或者其他深度学习框架中,有许多超参数需要调整,包括
learning_rate
,training_data_path
等,因此编写一个config
文件统一存放这些参数,方便调用/查看/修改还是很有必要的。下面是我使用过的一种很简单的方式,不是很优雅,小模型下初步的微调已经够用,希望也对你有所帮助,有更好更pro的方式欢迎大家留言~ - 我这里的目录结构:
- MLP
mlp.ipynb
: 用于training等config.py:
存放超参数、路径- data
targets
:targets data pathtrain
:training data path
1. config.py
这个.py
文件实际上是一个class,大概如下:
class DefaultConfig(object):
# dataset划分
batch_size = 40
train_pct = 0.7
vali_pct = 0.2
test_pct = 0.1
#learning rate
learning_rate = 1e-3
# Training data
train_path = r"../data/train"
target_path_metric = r"../data/targets"
2. 调用以及更新
写成class之后,在mlp.ipynb
中调用只需要引用一下就完事了:
import config # import进来
reload(config) ################## 注意这里必须reload!!
from config import DefaultConfig # 引入class
opt = DefaultConfig() # 实例config对象
# 这里名字最好保持和clas内部一致,方便检查
batch_size = opt.batch_size
train_pct = opt.train_pct
vali_pct = opt.vali_pct
test_pct = opt.test_pct
注意,很可能当我们改动config.py
之后,外部文件的参数不会及时更新,所以加入reload
语句是一个很好的习惯
import config # import进来
reload(config) ################## 注意这里必须reload!!
到此这篇关于python中一种编写config文件并及时更新的方法的文章就介绍到这了,更多相关python编写config文件内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341