python中编写config文件并及时更新的方法
作者:Rilkean?heart 发布时间:2021-08-01 05:44:39
标签:python,config,文件
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!!
来源:https://blog.csdn.net/qq_42147816/article/details/129224306


猜你喜欢
- home.html:<!DOCTYPE html><html lang="en"><hea
- 常用 Git 命令清单。几个专用名词的译名如下。Workspace:工作区Index / Stage:暂存区Repository:仓库区(或
- JavaScript的对象都是实例化了的,只可以使用而不能够创建继承于这些对象的新的子类. window对象为所有对象的Parent win
- 本文实例为大家分享了一组典型数据格式转换的python实现代码,供大家参考,具体内容如下有一组源数据,第一行会是个日期数据,第二行标明字段,
- 我设计第一篇网页的时候,就遇到了字体的设置问题。我发现如果用软件约定的字体大小,则显示效果会很难看的。我是用FrontPage2000作网页
- 1、背景最近有个项目,需要搭建一个socket服务器,一个web服务器,然后实现两个服务器之间的通讯交互。刚开始的方案是用Python中so
- 今天看到同事参与小米的抢购,几经数个星期的尝试,终于抢到了一台小米电视……看了一下小米的抢购流程,似乎可以用程序可破。于是想写点东西玩玩(你
- 本文实例讲述了Python实现PS滤镜Fish lens图像扭曲效果。分享给大家供大家参考,具体如下:这里实现 PS 滤镜中的一种几何变换–
- 1. 一些常用的 MySQL 命令#连接MySQLmysql -h 127.0.0.1 -u UserName -p pwd -
- <?php //本功能主要是利用文件修改时间函数filemtime与现在时间作减法判断是否更新内容。 $cahetime=2;//设置
- 从MySQL 5.0.2开始,通过mysql_stmt_attr_set() C API函数实现了服务器端光标。服务器端光标允许在服务器端生
- 前言今天突然想到之前在书上看到的一个例子,竟然想不起来了.于是翻书找出来,测试一下.--drop table father,soncreat
- Dreamweaver出现乱码,大致为两种情况:一是没有标明主页制作所用的文字,这种情况下很简单就可以
- 前提条件:需要安装easy-install模块,这是一个python的模块打包工具。首先下载easy_setup.py的源代码,下载地址:
- MySQL、Sphinx及许多数据库和搜索引擎中的查询是单线程的。比如说,在一台32个CPU核心、16个磁盘的R910服务器上执
- easy_install 卸载通过easy_install 安装的模块可以直接通过 easy_install -m Packag
- 1.题目2.代码#共有n种图案的印章,每种图案的出现概率相同。小A买了m张印章,求小A集齐n种印章的概率。n,m=map(int,input
- 安装SQL Server 遇到错误提示:以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机!。找了半天
- 1.操作数据库 1.1创建数据库create + database + 数据库名称当然如果我们不知道数据库是否存在,如果存在就不创
- 根据代码中运行的结果来看,主要由以下几种:1. sum():将array中每个元素相加的结果2. axis对应的是维度的相加。比如:1、ax