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中使用urllib2获取http请求状态码的代码例子
Jul 07 Python
在CentOS上配置Nginx+Gunicorn+Python+Flask环境的教程
Jun 07 Python
python常见排序算法基础教程
Apr 13 Python
Python优先队列实现方法示例
Sep 21 Python
python中从str中提取元素到list以及将list转换为str的方法
Jun 26 Python
Django中数据库的数据关系:一对一,一对多,多对多
Oct 21 Python
Python字符串逆序输出的实例讲解
Feb 16 Python
基于django传递数据到后端的例子
Aug 16 Python
python实现信号时域统计特征提取代码
Feb 26 Python
python如何使用代码运行助手
Jul 03 Python
scrapy结合selenium解析动态页面的实现
Sep 28 Python
Django视图类型总结
Feb 17 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
PHP 身份证号验证函数
2009/05/07 PHP
php中Array2xml类实现数组转化成XML实例
2014/12/08 PHP
PHP扩展框架之Yaf框架的安装与使用
2016/05/18 PHP
ThinkPHP3.2.3实现分页的方法详解
2016/06/03 PHP
基于ThinkPHP删除目录及目录文件函数
2020/10/28 PHP
JQuery 1.4 中的Ajax问题
2010/01/23 Javascript
jquery乱码与contentType属性设置问题解决方案
2013/01/07 Javascript
将字符串转换成gb2312或者utf-8编码的参数(js版)
2013/04/10 Javascript
JavaScript插件化开发教程 (二)
2015/01/27 Javascript
JavaScript中的getTimezoneOffset()方法使用详解
2015/06/10 Javascript
实例详解angularjs和ajax的结合使用
2015/10/22 Javascript
探寻JavaScript中this指针指向
2016/04/23 Javascript
相册展示PhotoSwipe.js插件实现
2016/08/25 Javascript
深入理解Angularjs中$http.post与$.post
2017/05/19 Javascript
bootstrap table插件的分页与checkbox使用详解
2017/07/23 Javascript
JavaScript实现的超简单计算器功能示例
2017/12/23 Javascript
vue实现todolist功能、todolist组件拆分及todolist的删除功能
2019/04/11 Javascript
node.js中对Event Loop事件循环的理解与应用实例分析
2020/02/14 Javascript
Vue路由的模块自动化与统一加载实现
2020/06/05 Javascript
深入解读VUE中的异步渲染的实现
2020/06/19 Javascript
手写Vue2.0 数据劫持的示例
2021/03/04 Vue.js
[49:08]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第一场 11.27
2020/12/01 DOTA
详解Python3中yield生成器的用法
2015/08/20 Python
Python使用gensim计算文档相似性
2016/04/10 Python
Python 安装 virturalenv 虚拟环境的教程详解
2020/02/21 Python
浅谈Python 命令行参数argparse写入图片路径操作
2020/07/12 Python
Python3如何使用多线程升程序运行速度
2020/08/11 Python
python,Java,JavaScript实现indexOf
2020/09/09 Python
Python爬取你好李焕英豆瓣短评生成词云的示例代码
2021/02/24 Python
Ted Baker英国官网:男士和女士服装及配件
2017/03/13 全球购物
艺术应用与设计个人的自我评价
2013/11/23 职场文书
个人自荐书
2013/12/20 职场文书
大学宣传委员竞选稿
2015/11/19 职场文书
总结几个非常实用的Python库
2021/06/26 Python
Java实现给Word文件添加文字水印
2022/02/15 Java/Android
浅谈Redis的事件驱动模型
2022/05/30 Redis