当前位置: 首页 > news >正文

北京品牌网站定制公司病毒式营销

北京品牌网站定制公司,病毒式营销,网站建设工作内容,长沙网站设计工作室最近在写代码,发现随着网络的增加,代码变得越来越冗余,所以就想着写一个网络的配置文件,把网络的配置放到一个文件中,而不再主函数中,这样代码开起来就好看了,调试的时候也方便了。之前写过一篇…

最近在写代码,发现随着网络的增加,代码变得越来越冗余,所以就想着写一个网络的配置文件,把网络的配置放到一个文件中,而不再主函数中,这样代码开起来就好看了,调试的时候也方便了。之前写过一篇神经网络配置文件的文章:config配置文件原理及使用,但是这篇文章不适用于我现在的情况,这篇文章需要写一个config.py文件,然后再写一个config.yaml文件,有些网络的配置是在config.py文件中写的,我想的是针对于某个网络单独建立一下config.yaml文件,把他的配置写到里面,然后在更新到config.py文件中,可是这样写完报错,原因就是config.yaml文件中定义的变量必须在config.py文件中有定义,但是这样针对目前我的工程有多个神经网络,就不符合解决代码冗长的初衷了,所以就选择了本文的方案,这里记录一下方便以后查阅。

yaml配置文件

  • yaml介绍
    • 基本语法
    • 数据类型
  • 安装PyYAML
  • PyYAML使用
  • 参考资料

yaml介绍

YAML是"YAML Ain't a Markup Language"(YAML不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:"Yet Another Markup Language"仍是一种标记语言),但为了强调这种语言以数据做为中心,而不是以标记语言为重点,而用反向缩略语重命名。

YAML是一种数据序列化格式,优点是:

  • 对于人类可读性更友好
  • 方便与脚本语言进行交互使用

基本语法

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进不允许使用tab,只允许空格
  • 缩进的空格数不重要,只要相同层级的元素左对齐即可
  • #表示注释

数据类型

  • 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
  • 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
  • 纯量(scalars):单个的、不可再分的值

安装PyYAML

pip install PyYAML

安装的时候总是报错:

在这里插入图片描述
本以为是网络的问题,重复运行上面的安装代码好几次,还是不行,这就有可能不是网络的问题了,然后就尝试着更新一下库:

sudo apt-get update

然后再尝试着安装,结果一次成功:

在这里插入图片描述

PyYAML使用

首先在config.yaml配置文件中定义可配置信息:

DATA_AUGMENTATION : 5
KERNEL_L_CONV1 : 1EMBED_DIM_T : 150
EMBED_DIM_C : 62
HEADS_T : 5
HEADS_C : 2
ACT_ATTEN : 'elu'
DROPOUT_ATTEN : 0.3DROPOUTRATE : 0.3
KERNEL_L_SEPARABLE : 3
DEPTHWISE : 5
AVGPOOL_DEPTHWISE : 2
AVGPOOL_SEPARABLE : 4AVGPOOL_SIZE_CLA : 1
FC_IN_CLA : 25
N_CLASSES : 3

使用PyYAML模块解析config.yaml配置文件,主要步骤如下:

  • 使用open()打开config.yaml配置文件,然后使用read()读取
  • 使用yaml.load(stream, Loader)加载读取的配置文件数据,生成一个y的对象
  • 使用字典的形式访问生成的y对象中的配置信息
def build_SelfAtten_Mixer(yaml_path):# 使用open()函数读取config.yaml文件yaml_file = open(yaml_path, "r", encoding="utf-8")# 读取文件中的内容file_data = yaml_file.read()# 加载数据流,返回字典类型数据config = yaml.load(file_data, Loader=yaml.FullLoader)"""build SelfAtten_Mixer model from config"""model = SelfAtten_Mixer(data_augmentation = config['DATA_AUGMENTATION'],kernel_L_conv1 = config['KERNEL_L_CONV1'],embed_dim_T = config['EMBED_DIM_T'],embed_dim_C = config['EMBED_DIM_C'],heads_T = config['HEADS_T'],heads_C = config['HEADS_C'],act_atten = config['ACT_ATTEN'],dropout_atten = config['DROPOUT_ATTEN'],dropoutRate = config['DROPOUTRATE'],kernel_L_separable = config['KERNEL_L_SEPARABLE'],depthwise = config['DEPTHWISE'],avgpool_depthwise = config['AVGPOOL_DEPTHWISE'],avgpool_separable = config['AVGPOOL_SEPARABLE'],avgpool_size_cla = config['AVGPOOL_SIZE_CLA'],fc_in_cla = config['FC_IN_CLA'],n_classes = config['N_CLASSES'],)return model

参考资料

深度学习项目中在yaml文件中定义配置,以及使用的python的PyYAML库包读取解析yaml配置文件

Python的logging日志工具 & 深度学习项目yaml配置文件

http://www.hkea.cn/news/33432/

相关文章:

  • 做品牌折扣的网站百度推广的五大优势
  • 南宁比较有好的网站制作公司百度推广后台登录页面
  • 长沙企业网站排名优化windows优化大师和360哪个好
  • 珠海网站开发维护科技公司免费的网络推广渠道有哪些
  • wp建站系统微信营销管理软件
  • 本地打开WordPress慢百度seo优化分析
  • 适合友情链接的网站排名函数
  • 开发公司岗位设置广州seo招聘网
  • 国内web设计网站宣传推广
  • 深圳高端网站定制公司小时seo
  • wordpress主菜单下拉箭头怎么设置台州seo排名优化
  • 网站系统管理员模块关键词查找工具
  • 望江县建设局网站外贸seo推广招聘
  • 微信网站上传图片手机怎么制作网站
  • 简单做网站需要学什么搜索引擎有哪些网站
  • 网站备案信息加到哪里如何进行网站推广
  • 昭通网站制作aso优化技巧
  • 制作网站时怎样做滚动字幕新网站多久会被百度收录
  • 余姚物流做网站微信指数是搜索量吗
  • 怎样做网站轮播今日国内重大新闻事件
  • 想给大学做网站百度网盘搜索神器
  • jsp网站开发论文官方app下载安装
  • 关于机场建设的网站今日疫情最新情况
  • 网站域名注册服务商google浏览器官方
  • 通过网站开发工具怎么改自动跳网站百度指数有哪些功能
  • 可以发锚文本的网站百度搜索官方网站
  • 东莞网站建设企慕简述如何优化网站的方法
  • 可以做网站的公司seo外包
  • 自己怎么做网站视频赚钱5g网络优化培训
  • 数据库修改网站管理员密码seo网站有优化培训吗