«

python中编写config文件并及时更新的方法是什么

时间:2024-8-6 09:04     作者:韩俊     分类: Python


这篇“python中编写config文件并及时更新的方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“python中编写config文件并及时更新的方法是什么”文章吧。

0. Intro

    在pytorch或者其他深度学习框架中,有许多超参数需要调整,包括

    learning_rate
    training_data_path
    等,因此编写一个
    config
    文件统一存放这些参数,方便调用/查看/修改还是很有必要的。

    我这里的目录结构:

    MLP

    mlp.ipynb
    : 用于training等

    config.py:
    存放超参数、路径

    data

    targets
    :targets data path

    train
    :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

热门推荐