python中編寫config文件并及時(shí)更新的方法
0. Intro
- 在pytorch或者其他深度學(xué)習(xí)框架中,有許多超參數(shù)需要調(diào)整,包括
learning_rate,training_data_path等,因此編寫一個(gè)config文件統(tǒng)一存放這些參數(shù),方便調(diào)用/查看/修改還是很有必要的。下面是我使用過的一種很簡單的方式,不是很優(yōu)雅,小模型下初步的微調(diào)已經(jīng)夠用,希望也對你有所幫助,有更好更pro的方式歡迎大家留言~ - 我這里的目錄結(jié)構(gòu):
- MLP
mlp.ipynb: 用于training等config.py:存放超參數(shù)、路徑- data
targets:targets data pathtrain:training data path
1. config.py
這個(gè).py文件實(shí)際上是一個(gè)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. 調(diào)用以及更新
寫成class之后,在mlp.ipynb中調(diào)用只需要引用一下就完事了:
import config # import進(jìn)來 reload(config) ################## 注意這里必須reload!! from config import DefaultConfig # 引入class opt = DefaultConfig() # 實(shí)例config對象 # 這里名字最好保持和clas內(nèi)部一致,方便檢查 batch_size = opt.batch_size train_pct = opt.train_pct vali_pct = opt.vali_pct test_pct = opt.test_pct
注意,很可能當(dāng)我們改動config.py之后,外部文件的參數(shù)不會及時(shí)更新,所以加入reload語句是一個(gè)很好的習(xí)慣
import config # import進(jìn)來 reload(config) ################## 注意這里必須reload!!
到此這篇關(guān)于python中一種編寫config文件并及時(shí)更新的方法的文章就介紹到這了,更多相關(guān)python編寫config文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python方法中self和parent參數(shù)用法詳解
大家好!今天我們來聊一個(gè) Python 中常見但可能讓人困惑的話題:方法參數(shù)里的 self 和 parent,在這篇博客中,我會分三個(gè)章節(jié)逐步講解它們的含義、作用和實(shí)際應(yīng)用,帶你徹底搞懂它們,需要的朋友可以參考下2025-04-04
Windows下的Python 3.6.1的下載與安裝圖文詳解(適合32位和64位)
這篇文章主要介紹了Windows下的Python 3.6.1的下載與安裝圖文詳解(適合32位和64位),需要的朋友可以參考下2018-02-02
使用python讀取CSV文件時(shí)遇到編碼問題解決方案
這篇文章主要介紹了用python讀取CSV文件時(shí)遇到編碼問題,本文給大家分享最優(yōu)解決方案,通過使用csvkit,它使用自動檢測適當(dāng)?shù)木幋a和解碼,需要的朋友可以參考下2023-08-08
Python爬蟲實(shí)戰(zhàn)案例之爬取喜馬拉雅音頻數(shù)據(jù)詳解
這篇文章主要介紹了Python爬蟲實(shí)戰(zhàn)案例之取喜馬拉雅音頻數(shù)據(jù)詳解,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12
快速掌握python權(quán)限功能設(shè)計(jì)實(shí)戰(zhàn)指南
在處理權(quán)限控制時(shí),裝飾器能幫助我們以一種統(tǒng)一且簡潔的方式管理不同用戶對系統(tǒng)資源的訪問權(quán)限,本文將通過幾個(gè)簡單的示例逐步展示如何利用Python裝飾器實(shí)現(xiàn)從基礎(chǔ)到復(fù)雜的權(quán)限控制功能2024-01-01

