.py文件做配置文件,可以定义多个字典,字典定义好后可以通过**符号直接再组合。


eval_config = {"model_state_dict_dir": "./default_log_dir",  # if use wandb,# set"./wandb", or set "./default_log_dir" if you use default logger"run_ids": ["1a70p109", ],"last_k_model": 1,"test_data": "*test*.json",  # "*test*.json"# results"save_res": False,"save_res_dir": "../results",# score: set true only if test set is tagged"score": True,"hyper_parameters": {"batch_size": 16,"force_split": False,"max_seq_len": 512,"sliding_len": 50,},
}
common = {"exp_name": "duie2",  # ace05_lu"rel2id": "rel2id.json","ent2id": "ent2id.json","device_num": 0,#"encoder": "BiLSTM","encoder": "BERT", "hyper_parameters": {"shaking_type": "cln_plus","inner_enc_type": "lstm",# match_pattern: only_head_text (nyt_star, webnlg_star),# whole_text (nyt, webnlg), only_head_index, whole_span, event_extraction"match_pattern": "whole_span",},
}hyper_params = {**common["hyper_parameters"], **eval_config["hyper_parameters"]}
eval_config = {**eval_config, **common, "hyper_parameters": hyper_params}

.yaml文件作为配置文件。可以直接按字典的方式定义

import yamltry:from yaml import CLoader as Loader, CDumper as Dumper
except ImportError:from yaml import Loader, Dumper
config = yaml.load(open("build_data_config.yaml", "r"), Loader=yaml.FullLoader)exp_name = config["exp_name"]
data_path = os.path.join(config["extra_data_dir"], exp_name)
save_path = os.path.join(config["data_in_dir"], exp_name)
exp_name: nyt
run_name: TP2+Cat+Dist+BiLSTMtrain_data: train_data.json
valid_data: valid_data.json
rel2id: rel2id.jsondevice_num: 0# set logger
# if use default logger, must provide a log path and a path to save model, if use wandb, model state will be upload to the cloud
logger: wandb # wandb, default# logger: default
# log_path: ./default.log
# path_to_save_model: ./model_state# encoder: BERT
# data_home: ../data4bert
# bert_path: /home/wangyucheng/opt/transformers_models_h5/bert-base-casedencoder: BiLSTM
token2idx: token2idx.json
data_home: ../data4bilstm
pretrained_word_embedding_path: ../pretrained_word_emb/glove_300_nyt.embhyper_parameters:batch_size: 24epochs: 200lr: 1e-3seed: 2333log_interval: 10max_seq_len: 100sliding_len: 20shaking_type: catdist_emb_size: 512tok_pair_sample_rate: 1# CosineAnnealingWarmRestartsscheduler: CAWR # StepT_mult: 1rewarm_epoch_num: 2#  # StepLR
#  scheduler: Step
#  decay_rate: 0.99
#  decay_steps: 100#  scheduler: ReduceLROnPlateau#  # for BiLSTM
#  enc_hidden_size: 128
#  dec_hidden_size: 256
#  emb_dropout: 0.1
#  rnn_dropout: 0.1
#  word_embedding_dim: 100# whether train from scratch
fr_scratch: true
note: start from scratch
# when to save the model state dict
f1_2_save: 0.0# if not, give a model_state_dict
model_state_dict_path: stake

.py文件和.yaml文件作为配置文件相关推荐

  1. OpenCV中XML文件和YAML文件的读写

    OpenCV中XML文件和YAML文件的读写 代码如下: #include <opencv2/core/core.hpp> #include <iostream> #inclu ...

  2. python 3读取文件-Python3 yaml文件读写操作

    简介 yaml作为配置文件是非常友好的一种格式,前面一篇讲了yaml的一些基础语法和读取方法,本篇继续讲yaml文件写入方法 用yaml模块写入字典嵌套字典这种复杂的数据,会出现大括号{ },不是真正 ...

  3. k8s查看pod的yaml文件_k8s yaml文件说明

    nginx yaml文件说明 --- #定义nginx命名空间 apiVersion: v1 kind: Namespace metadata: name: k8s-nginx #自定义的命名空间 - ...

  4. k8s启动centos7的yaml文件_K8S yaml文件详解

    apiVersion: extensions/v1beta1 #接口版本 kind: Deployment #接口类型 metadata: name: ptengine-demo #Deploymen ...

  5. python数据驱动+读取yaml文件+读取excel文件+mySQL

    简介 1.安装 pip install ddt 2.使用 import unittest,ddtdata=[{"user":'admin',"pwd":2222 ...

  6. .net core 上 K8S(三)Yaml文件运行.netcore程序

    正文 上一章我们通过kubectl run简单运行了一个.netcore网站,但实际的开发中,我们都是通过yaml来实现的. 1.编写yaml文件 关于yaml文件的格式在此就不多描述了,不熟悉的可以 ...

  7. YAML文件的基本语法

    以前的配置文件多数采用xxx.xml文件.YAML文件其实比xml.json等更适合做配置文件.它以数据为中心,用空格缩进,属性与值之间必须有空格. YAML基本语法 使用缩进表示层级关系 缩进时不允 ...

  8. 利用opencv中的类FileStorage生成和读取XML和YAML文件

    有时候程序中的变量值.字符串.数组等数据也需要独立于源代码本身保存,这个时候就需要用到XML和YAML文件进行保存. OpenCV4提供了用于生成和读取XML文件和YAML文件的类FileStorag ...

  9. opencv C艹:读取视频文件,保存图像,视频文件,读取保存XML YAML文件

    <opencv4快速入门> 认识认识模块 D:\opencv\build\include\opencv2 路径下 calib3d 主要包含相机标定,立体视觉的功能:物体姿势估计,三维重建, ...

最新文章

  1. 用express-generator创建express项目骨架
  2. yolov3 get_next_batch 异常
  3. [SpringBoot2]@MatrixVariableUrlPathHelper
  4. 在 java 的 bin 目录下,jdk 提供了很多使用的工具,下面学习一些监控和故障处理的工具。...
  5. kohana框架的入门学习 2.0版本的
  6. TreeMap源码解析
  7. 华为6p连接计算机设置在哪里设置密码,华为路由器和华为手机如何不用密码连接...
  8. base64编码 vba_[VBA]Base64编码和Base64解码
  9. UML用例图分析——铁路售票系统
  10. 【BZOJ 3097】 Hash Killer I
  11. 程序员们,你会考虑使用中文编程吗?
  12. 日本公司研发出一款可食用的便签纸
  13. MusicLibrary:一个丰富的音乐播放封装库
  14. QT自定义控件--时钟
  15. 2017年10米分辨率全球土地覆盖产品(FROM-GLC10)Python下载爬虫
  16. Latex公式内行间距,字体大小控制
  17. 云服务器和云虚拟主机有什么区别
  18. html中列表前面的序号带圆圈,js动态添加带圆圈序号列表方法
  19. 数据平台权限控制-基于猛犸
  20. 自然语言处理(一)——文法(形式语言)基本概念

热门文章

  1. matlab变压器空载合闸,变压器空载合闸
  2. SunTorque今日分享|螺栓连接的拧紧与防松研究
  3. 一位蜗牛程序员十一年工作总结-2019
  4. 收割大厂offer需要具备的条件
  5. 企业自己如何快速开发一个简单实用的CRM客户管理系统?
  6. Greenshot — 支持多种插件的截图工具,一键上传网盘
  7. JAVA控制台注册用户
  8. V4l2框架-平台V4L2驱动共性
  9. FTP共享文件服务器
  10. Lattice Diamond 生成VME文件