TF flags的简介
1、TF flags的简介
1、flags可以帮助我们通过命令行来动态的更改代码中的参数。Tensorflow 使用flags定义命令行参数的方法。ML的模型中有大量需要tuning的超参数,所以此方法,迎合了需要一种灵活的方式对代码某些参数进行调整的需求
(1)、比如,在这个py文件中,首先定义了一些参数,然后将参数统一保存到变量FLAGS中,相当于赋值,后边调用这些参数的时候直接使用FLAGS参数即可
(2)、基本参数类型有三种flags.DEFINE_integer、flags.DEFINE_float、flags.DEFINE_boolean。
(3)、第一个是参数名称,第二个参数是默认值,第三个是参数描述
2、使用过程
#第一步,调用flags = tf.app.flags,进行定义参数名称,并可给定初值、参数说明
#第二步,flags参数直接赋值
#第三步,运行tf.app.run()
FLAGS = tf.flags.FLAGStf.flags.DEFINE_string('name', 'default', 'name of the model')
tf.flags.DEFINE_integer('num_seqs', 100, 'number of seqs in one batch')
tf.flags.DEFINE_integer('num_steps', 100, 'length of one seq')
tf.flags.DEFINE_integer('lstm_size', 128, 'size of hidden state of lstm')
tf.flags.DEFINE_integer('num_layers', 2, 'number of lstm layers')
tf.flags.DEFINE_boolean('use_embedding', False, 'whether to use embedding')
tf.flags.DEFINE_integer('embedding_size', 128, 'size of embedding')
tf.flags.DEFINE_float('learning_rate', 0.001, 'learning_rate')
tf.flags.DEFINE_float('train_keep_prob', 0.5, 'dropout rate during training')
tf.flags.DEFINE_string('input_file', '', 'utf8 encoded text file')
tf.flags.DEFINE_integer('max_steps', 100000, 'max steps to train')
tf.flags.DEFINE_integer('save_every_n', 1000, 'save the model every n steps')
tf.flags.DEFINE_integer('log_every_n', 10, 'log to the screen every n steps')
tf.flags.DEFINE_integer('max_vocab', 3500, 'max char number')
示例如下:
import tensorflow as tf
#取上述代码中一部分进行实验
tf.flags.DEFINE_integer('num_seqs', 100, 'number of seqs in one batch')
tf.flags.DEFINE_integer('num_steps', 100, 'length of one seq')
tf.flags.DEFINE_integer('lstm_size', 128, 'size of hidden state of lstm')#通过print()确定下面内容的功能
FLAGS = tf.flags.FLAGS #FLAGS保存命令行参数的数据
FLAGS._parse_flags() #将其解析成字典存储到FLAGS.__flags中
print(FLAGS.__flags)print(FLAGS.num_seqs)print("\nParameters:")
for attr, value in sorted(FLAGS.__flags.items()):print("{}={}".format(attr.upper(), value))
print("")
遇到问题可以参考:相关解决办法
TF flags的简介相关推荐
- TF之TF flags:TF flags(命令行解析)的简介、安装、使用方法之详细攻略
TF之TF flags:TF flags(命令行解析)的简介.安装.使用方法之详细攻略 目录 TF flags的简介 TF flags的安装 TF flags的使用方法 TF flags的简介 1.f ...
- Python命令行解析:IDE内点击Run运行代码直接得出结果、基于TF flags(或argparse、sys.argv)在Dos内命令行(一条命令)调用代码文件得出结果
Python命令行解析:IDE内点击Run运行代码直接得出结果.基于TF flags(或argparse.sys.argv)在Dos内命令行(一条命令)调用代码文件得出结果 目录 命令行解析 T1.采 ...
- tf.train.MonitoredSession 简介
在run过程中的集成一些操作,比如输出log,保存,summary 等 基类一般用在infer阶段,训练阶段使用它的子类 tf.train.MonitoredTrainingSession 1 Mon ...
- tf.app.flags和tf.app.run的使用
tf.app.flags和tf.app.run的使用 tf.app.flags主要用于处理命令行参数的解析工作,其实可以理解为一个封装好了的argparse包(argparse是一种结构化的数据存储格 ...
- python获取命令行参数 flags_命令行参数--tf.app.flags和python argparse
在实际工作中我们一般通过运行脚本时获取命令行的参数,有两种方式: 一.利用tf.app.flags组件 tf定义了tf.app.flags,用于接受命令行传递参数,相当于接受argv.首先调用自带的D ...
- tf.app.flags.DEFINE_string()和tf.app.flags.FLAGS和tf.app.run()
tf.app.flags tf.app.flags主要用于处理命令行参数的解析工作,其实可以理解为一个封装好了的argparse包(argparse是一种结构化的数据存储格式,类似于Json.XML) ...
- Py之argparse:Python库之argparse(命令行解析)简介、安装、使用方法之详细攻略
Py之argparse:Python库之argparse(命令行解析)简介.安装.使用方法之详细攻略 导读 python中的命令行解析最简单最原始的方法是使用sys.argv来实现,更高级的可以使用a ...
- 深度学习-Tensorflow2.2-tf.data输入模块{2}-tf.data基础用法-09
TF.DATA 模块 tf.data模块简介 import tensorflow as tf # 使用一个列表建立dataset dataset = tf.data.Dataset.from_tens ...
- Tensorflow之flags的用法介绍
1.功能解释 tensorflow中flags用于接收命令行传递参数,可以全局的更改代码中的参数.Tensorflow使用flags类定义命令行参数.网络模型中有大量的超参数需要我们赋值,所以此方法, ...
- tensorflow代码中的tf.app.run()
一般 if __name__ == '__main__':之后紧接着的是主函数的运行入口,但在tensorflow的代码里头经常可以看到其后面的是tf.app.run(),这个究竟是什么意思呢??? ...
最新文章
- 转贴一篇关于NAT(DNAT)以及PAT的讨论
- MYSQL AND OR的联用
- mcu比较器技巧和诀窍_如何准备技术面试-技巧和窍门,以帮助您表现最好
- [Axios] 基于Promise封装属于自己的Ajax库
- 如何将CSS3 transforms应用于背景图像
- 中国最大照明企业贱卖给外资 创始人遭下狱 刘强东怒斥:有些人没有道德底线!...
- hadoop longwritable类
- Kalman Filter—Data Fusion, Covarince Matrix, State Space Representation, Observation
- docker 镜像源_前端 Docker 镜像体积优化
- Python软件安装教程
- SVN安装及使用教程图文详解
- 为什么有些蓝牙耳机有底噪?高音质便宜实惠的蓝牙耳机分享
- 计算机登录域时很慢,新装WIN7电脑加入域后,变的很慢
- 深度学习论文阅读图像分类篇(六):SENet《Squeeze-and-Excitation Networks》
- Kotlin Suppress 的非常规用法
- 输入一个三位数,输出它 个位、十位、百位 数字之和
- 求职有 Pulsar | 小红书、Shopee 新加坡、StreamNative 多个热招岗位
- 漫反射实现 - UnityShader
- 网页制作:一个简易美观的登录界面
- 解题记录 LeetCode 下一个更大元素 单调栈
热门文章
- win10怎么录制电脑屏幕 电脑录制视频
- NB-IoT窄带物联网的优势特点
- 数据统计并制作韦恩图
- Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day33】—— 手撸算法2
- java 视频分辨率_javaCV开发详解之15:视频帧像素格式转换
- Python学习笔记4---类和对象
- java统计误码率_MATLAB通信工具箱来计算误码率
- Flutter: Dart 参数,以及 @required 与 required
- numpy使用np.dot函数或者@操作符计算两个numpy数组的点积数量积(dot product、scalar product)
- 1和new Number(1)的区别