tensorflow 动态获取 BatchSzie 的大小实例


Posted in Python onJune 30, 2020

我就废话不多说了,大家还是直接看代码吧~

import tensorflow as tf
import sys

with tf.variable_scope('ha'):
  a1 = tf.get_variable('a', shape=[], dtype=tf.int32)
  with tf.variable_scope('haha'):
    a2 = tf.get_variable('a', shape=[], dtype=tf.int32)
    with tf.variable_scope('hahaha'):
      a3 = tf.get_variable('a', shape=[], dtype=tf.int32)

with tf.variable_scope('ha', reuse=True):
  # 不会创建新的变量
  a4 = tf.get_variable('a', shape=[], dtype=tf.int32)
  
sum = a1 + a2 + a3 + a4

fts_s = tf.placeholder(tf.float32, shape=(None, 100), name='fts_s')
b = tf.zeros(shape=(tf.shape(fts_s)[0], tf.shape(fts_s)[1]))

concat = tf.concat(axis=1, values=[fts_s, b])

init_op = tf.global_variables_initializer()
with tf.Session() as sess:
  sess.run(init_op)
  for var in tf.global_variables():
    print var.name
  import numpy as np
  ft_sample = np.ones((10, 100))
  con_value = sess.run([concat], feed_dict={fts_s: ft_sample})
  print con_value[0].shape

results:

ha/a:0
ha/haha/a:0
ha/haha/hahaha/a:0
(10, 200)

小总结:

1: 对于未知的shape, 最常用的就是batch-size 通常是 None 代替, 那么在代码中需要用到实际数据的batch size的时候应该怎么做呢?

可以传一个tensor类型, tf.shape(Name) 返回一个tensor 类型的数据, 然后取batchsize 所在的维度即可. 这样就能根据具体的数据去获取batch size的大小

2: 对于变量命名, 要善于用 variable_scope 来规范化命名, 以及 reuse 参数可以控制共享变量

补充知识:tensorflow RNN 使用动态的batch_size

在使用tensorflow实现RNN模型时,需要初始化隐藏状态 tensorflow 动态获取 BatchSzie 的大小实例 如下:

lstm_cell_1 = [tf.nn.rnn_cell.DropoutWrapper(tf.nn.rnn_cell.BasicLSTMCell(HIDDEN_SIZE),output_keep_prob=dropout_keep_prob) for _ in range(NUM_LAYERS)]
cell_1 = tf.nn.rnn_cell.MultiRNNCell(lstm_cell_1)
self.init_state_1 = cell_1.zero_state(self.batch_size,tf.float32)

如果我们直接使用超参数batch_size初始化 tensorflow 动态获取 BatchSzie 的大小实例 在使用模型预测的结果时会很麻烦。我们可以使用动态的batch_size,就是将batch_size作为一个placeholder,在运行时,将batch_size作为输入输入就可以实现根据数据量的大小使用不同的batch_size。

代码实现如下:

self.batch_size = tf.placeholder(tf.int32,[],name='batch_size')

self.state = cell.zero_state(self.batch_size,tf.float32)

以上这篇tensorflow 动态获取 BatchSzie 的大小实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python下线程之间的共享和释放示例
May 04 Python
Python学习笔记整理3之输入输出、python eval函数
Dec 14 Python
浅谈Python生成器generator之next和send的运行流程(详解)
May 08 Python
Pandas 对Dataframe结构排序的实现方法
Apr 10 Python
Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】
Jul 12 Python
解决PyCharm import torch包失败的问题
Oct 13 Python
Python中的引用和拷贝实例解析
Nov 14 Python
Python如何使用vars返回对象的属性列表
Oct 17 Python
python如何写个俄罗斯方块
Nov 06 Python
pycharm 关闭search everywhere的解决操作
Jan 15 Python
Python初学者必备的文件读写指南
Jun 23 Python
python对文档中元素删除,替换操作
Apr 02 Python
浅谈TensorFlow之稀疏张量表示
Jun 30 #Python
tensorflow图像裁剪进行数据增强操作
Jun 30 #Python
浅谈tensorflow 中的图片读取和裁剪方式
Jun 30 #Python
Python openpyxl模块实现excel读写操作
Jun 30 #Python
tensorflow下的图片标准化函数per_image_standardization用法
Jun 30 #Python
Python的控制结构之For、While、If循环问题
Jun 30 #Python
关于tensorflow softmax函数用法解析
Jun 30 #Python
You might like
在wamp集成环境下升级php版本(实现方法)
2013/07/01 PHP
Thinkphp使用mongodb数据库实现多条件查询方法
2014/06/26 PHP
PHP实现批量生成App各种尺寸Logo
2015/03/19 PHP
PHP实现HTTP断点续传的方法
2015/06/17 PHP
PHP使用内置函数file_put_contents写入文件及追加内容的方法
2015/12/07 PHP
浅析php如何实现App常用的秒发功能
2016/08/03 PHP
使用Codeigniter重写insert的方法(推荐)
2017/03/23 PHP
PHP删除数组中指定值的元素常用方法实例分析【4种方法】
2018/08/21 PHP
JScript 脚本实现文件下载 一般用于下载木马
2009/10/29 Javascript
JavaScript 题型问答有答案参考
2010/02/17 Javascript
JS实现模拟风力的雪花飘落效果
2015/05/13 Javascript
基于jQuery实现简单的折叠菜单效果
2015/11/23 Javascript
vue.js初学入门教程(1)
2016/11/03 Javascript
angularjs 的数据绑定实现原理
2018/07/02 Javascript
详解微信小程序实现跑马灯效果(附完整代码)
2019/04/29 Javascript
微信用户访问小程序的登录过程详解
2019/09/20 Javascript
js代码编写无缝轮播图
2020/09/13 Javascript
JS使用setInterval计时器实现挑战10秒
2020/11/08 Javascript
在Python编程过程中用单元测试法调试代码的介绍
2015/04/02 Python
使用Python的urllib2模块处理url和图片的技巧两则
2016/02/18 Python
python学习笔记之列表(list)与元组(tuple)详解
2017/11/23 Python
利用Python求阴影部分的面积实例代码
2018/12/05 Python
详解Python 函数如何重载?
2019/04/23 Python
python GUI库图形界面开发之PyQt5选项卡控件QTabWidget详细使用方法与实例
2020/03/01 Python
在Anaconda3下使用清华镜像源安装TensorFlow(CPU版)
2020/04/19 Python
Python Pandas 对列/行进行选择,增加,删除操作
2020/05/17 Python
python从Oracle读取数据生成图表
2020/10/14 Python
几道数据库的概念性面试题
2014/05/30 面试题
如何查找网页漏洞
2016/06/22 面试题
妇科医生自荐信
2013/11/05 职场文书
英语生日邀请函
2014/01/23 职场文书
黄金酒广告词
2014/03/21 职场文书
求职意向书范文
2014/04/01 职场文书
义诊活动总结
2015/02/04 职场文书
淘宝客服专员岗位职责
2015/04/07 职场文书
餐饮店长岗位职责
2015/04/14 职场文书