Tensorflow tf.tile()的用法实例分析


Posted in Python onMay 22, 2020

tf.tile()应用于需要张量扩展的场景,具体说来就是:

如果现有一个形状如[width, height]的张量,需要得到一个基于原张量的,形状如[batch_size,width,height]的张量,其中每一个batch的内容都和原张量一模一样。tf.tile使用方法如:

tile(
  input,
  multiples,
  name=None
)
import tensorflow as tf
a = tf.constant([7,19])
a1 = tf.tile(a,multiples=[3]) #第一个维度扩充3遍
b = tf.constant([[4,5],[3,5]])
b1 = tf.tile(b,multiples=[2,3])#第一个维度扩充2遍,第二个维度扩充3遍
with tf.Session() as sess:
  print(sess.run(a))
  print(sess.run(a1))
  print(sess.run(b))
  print(sess.run(b1))

Tensorflow tf.tile()的用法实例分析

补充知识:tf.tile() 和 tf.contrib.seq2seq.tile_batch()

简单介绍这两个函数的基本用法, 以及区别. 以及在 BeamSearch 的时候用哪个?

# 将input的某一维度复制多少次, len(input.shape()) 等于 len(multiples)
# tf.tile(input, multiples, name=None)
t = tf.constant([[1, 1, 1, 9], [2, 2, 2, 9], [7, 7, 7, 9]])
# 第一维度和第二维度都保持不变
z0 = tf.tile(t, multiples=[1, 1])
# 第1维度不变, 第二维度复制为2份
z1 = tf.tile(t, multiples=[1, 2])
# 第1维度复制为两份, 第二维度不变
z2 = tf.tile(t, multiples=[2, 1])
# tf.contrib.seq2seq.tile_batch(encoder_outputs, multiplier=self.beam_size)
encoder_outputs = tf.constant([[[1, 3, 1], [2, 3, 2]], [[2, 3, 4], [2, 3, 2]]])
print(encoder_outputs.get_shape()) # (2, 2, 3)
# 将batch内的每个样本复制3次, tile_batch() 的第2个参数是一个 int 类型数据
z4 = tf.contrib.seq2seq.tile_batch(encoder_outputs, multiplier=3)

with tf.Session() as sess:
  print(sess.run(z0))
  print(sess.run(z1))
  print(sess.run(z2))
 输出: 
 [[1 1 1 9]
 [2 2 2 9]
 [7 7 7 9]]
 
[[1 1 1 9 1 1 1 9]
 [2 2 2 9 2 2 2 9]
 [7 7 7 9 7 7 7 9]]
 
[[1 1 1 9]
 [2 2 2 9]
 [7 7 7 9]
 [1 1 1 9]
 [2 2 2 9]
 [7 7 7 9]]
 
[[[1 3 1]
 [2 3 2]]

 [[1 3 1]
 [2 3 2]]

 [[1 3 1]
 [2 3 2]]

 [[2 3 4]
 [2 3 2]]

 [[2 3 4]
 [2 3 2]]

 [[2 3 4]
 [2 3 2]]]

以上这篇Tensorflow tf.tile()的用法实例分析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python读取浮点数和读取文本文件示例
May 06 Python
常见的在Python中实现单例模式的三种方法
Apr 08 Python
Python 正则表达式入门(初级篇)
Dec 07 Python
python 3利用BeautifulSoup抓取div标签的方法示例
May 28 Python
EM算法的python实现的方法步骤
Jan 02 Python
使用python实现http及ftp服务进行数据传输的方法
Oct 26 Python
40个你可能不知道的Python技巧附代码
Jan 29 Python
Python守护进程实现过程详解
Feb 10 Python
Python requests模块基础使用方法实例及高级应用(自动登陆,抓取网页源码)实例详解
Feb 14 Python
Pycharm+Python工程,引用子模块的实现
Mar 09 Python
python3 自动打印出最新版本执行的mysql2redis实例
Apr 09 Python
python3读取文件指定行的三种方法
May 24 Python
python代码实现将列表中重复元素之间的内容全部滤除
May 22 #Python
Tensorflow实现将标签变为one-hot形式
May 22 #Python
Python selenium爬取微博数据代码实例
May 22 #Python
python实现文法左递归的消除方法
May 22 #Python
使用Django搭建网站实现商品分页功能
May 22 #Python
Tensorflow卷积实现原理+手写python代码实现卷积教程
May 22 #Python
Python实现发票自动校核微信机器人的方法
May 22 #Python
You might like
多重?l件?合查?(一)
2006/10/09 PHP
对squid中refresh_pattern的一些理解和建议
2009/04/17 PHP
PHP中创建空文件的代码[file_put_contents vs touch]
2012/01/20 PHP
深入file_get_contents函数抓取内容失败的原因分析
2013/06/25 PHP
PHP获取数组的键与值方法小结
2015/06/13 PHP
php版微信公众号自定义分享内容实现方法
2016/09/22 PHP
php实现算术验证码功能
2018/12/05 PHP
Ctrl+Enter提交内容信息
2006/06/26 Javascript
Uploadify上传文件方法
2016/03/16 Javascript
JSON字符串和对象相互转换实例分析
2016/06/16 Javascript
jQuery通用的全局遍历方法$.each()用法实例
2016/07/04 Javascript
Javascript生成带参数的二维码示例
2016/10/10 Javascript
js正则表达式最长匹配(贪婪匹配)和最短匹配(懒惰匹配)用法分析
2016/12/27 Javascript
微信小程序 setData使用方法及常用错误解决办法
2017/05/11 Javascript
Vue项目报错:Uncaught SyntaxError: Unexpected token
2018/11/10 Javascript
js中的reduce()函数讲解
2019/01/18 Javascript
微信小程序图片自适应实现解析
2020/01/21 Javascript
vuecli3.x中轻松4步带你使用tinymce的步骤
2020/06/25 Javascript
python字符类型的一些方法小结
2016/05/16 Python
linux环境下python中MySQLdb模块的安装方法
2017/06/16 Python
Python 查找list中的某个元素的所有的下标方法
2018/06/27 Python
python opencv调用笔记本摄像头
2019/08/28 Python
在Django中实现添加user到group并查看
2019/11/18 Python
Django实现任意文件上传(最简单的方法)
2020/06/03 Python
python学习将数据写入文件并保存方法
2020/06/07 Python
Python map及filter函数使用方法解析
2020/08/06 Python
django使用graphql的实例
2020/09/02 Python
python unichr函数知识点总结
2020/12/16 Python
Html5 滚动穿透的方法
2019/05/13 HTML / CSS
中国最大的潮流商品购物网站:YOHO!BUY有货
2017/01/07 全球购物
中学运动会广播稿
2014/01/19 职场文书
个人承诺书怎么写
2014/05/24 职场文书
村主任“四风”问题个人整改措施
2014/10/04 职场文书
婚礼答谢词
2015/01/04 职场文书
30岁前绝不能错过的10本书
2019/08/08 职场文书
详解CSS开发过程中的20个快速提升技巧
2021/05/21 HTML / CSS