当前位置:网站首页>TF flags的简介
TF flags的简介
2020-11-06 01:22:00 【IT界的小小小学生】
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.FLAGS
tf.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("")
遇到问题可以参考:相关解决办法

版权声明
本文为[IT界的小小小学生]所创,转载请带上原文链接,感谢
https://vip01.blog.csdn.net/article/details/102743006
边栏推荐
猜你喜欢
谁说Cat不能做链路跟踪的,给我站出来
JetCache埋点的骚操作,不服不行啊
Examples of unconventional aggregation
Existence judgment in structured data
“颜值经济”的野望:华熙生物净利率六连降,收购案遭上交所问询
Didi elasticsearch cluster cross version upgrade and platform reconfiguration
分布式ID生成服务,真的有必要搞一个
Don't go! Here is a note: picture and text to explain AQS, let's have a look at the source code of AQS (long text)
条码生成软件如何隐藏部分条码文字
Technical director, to just graduated programmers a word - do a good job in small things, can achieve great things
随机推荐
词嵌入教程
读取、创建和运行多个文件的3个Python技巧
GBDT与xgb区别,以及梯度下降法和牛顿法的数学推导
從小公司進入大廠,我都做對了哪些事?
Python自动化测试学习哪些知识?
哇,ElasticSearch多字段权重排序居然可以这么玩
Every day we say we need to do performance optimization. What are we optimizing?
网络安全工程师演示:原来***是这样获取你的计算机管理员权限的!【维持】
“颜值经济”的野望:华熙生物净利率六连降,收购案遭上交所问询
6.7 theme resolver theme style parser (in-depth analysis of SSM and project practice)
Use of vuepress
Query意图识别分析
100元扫货阿里云是怎样的体验?
vite + ts 快速搭建 vue3 專案 以及介紹相關特性
Swagger 3.0 天天刷屏,真的香嗎?
Elasticsearch database | elasticsearch-7.5.0 application construction
数据产品不就是报表吗?大错特错!这分类里有大学问
python 保存list数据
车的换道检测
Azure Data Factory(三)整合 Azure Devops 實現CI/CD