tensorflow 利用expand_dims和squeeze扩展和压缩tensor维度方式


Posted in Python onFebruary 07, 2020

在利用tensorflow进行文本挖掘工作的时候,经常涉及到维度扩展和压缩工作。比如对文本进行embedding操作完成之后,若要进行卷积操作,就需要对embedded的向量扩展维度,将[batch_size, embedding_dims]扩展成为[batch_size, embedding_dims, 1],利用tf.expand_dims(input, -1)就可实现,反过来用squeeze(input, -1)或者tf.squeeze(input)也可以把最第三维去掉。

tf.expand_dims()

tf.squeeze()

tf.expand_dims()

tf.expand_dims(input, axis=None, name=None, dim=None)

在第axis位置增加一个维度.

给定张量输入,此操作在输入形状的维度索引轴处插入1的尺寸。 尺寸索引轴从零开始; 如果您指定轴的负数,则从最后向后计数。

如果要将批量维度添加到单个元素,则此操作非常有用。 例如,如果您有一个单一的形状[height,width,channels],您可以使用expand_dims(image,0)使其成为1个图像,这将使形状[1,高度,宽度,通道]。

例子

# 't' is a tensor of shape [2]
shape(expand_dims(t, 0)) ==> [1, 2]
shape(expand_dims(t, 1)) ==> [2, 1]
shape(expand_dims(t, -1)) ==> [2, 1]
# 't2' is a tensor of shape [2, 3, 5]
shape(expand_dims(t2, 0)) ==> [1, 2, 3, 5]
shape(expand_dims(t2, 2)) ==> [2, 3, 1, 5]
shape(expand_dims(t2, 3)) ==> [2, 3, 5, 1]

tf.squeeze()

tf.squeeze(input, axis=None, name=None, squeeze_dims=None)

直接上例子

# 't' is a tensor of shape [1, 2, 1, 3, 1, 1]
 shape(squeeze(t)) ==> [2, 3]
# 't' is a tensor of shape [1, 2, 1, 3, 1, 1]
 shape(squeeze(t, [2, 4])) ==> [1, 2, 3, 1]

以上这篇tensorflow 利用expand_dims和squeeze扩展和压缩tensor维度方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现冒泡,插入,选择排序简单实例
Aug 18 Python
python批量制作雷达图的实现方法
Jul 26 Python
shell命令行,一键创建 python 模板文件脚本方法
Mar 20 Python
Python中max函数用于二维列表的实例
Apr 03 Python
pytorch构建网络模型的4种方法
Apr 13 Python
Python实现直方图均衡基本原理解析
Aug 08 Python
Python流程控制 if else实现解析
Sep 02 Python
Python命令行参数解析工具 docopt 安装和应用过程详解
Sep 26 Python
基于Python生成个性二维码过程详解
Mar 05 Python
5款实用的python 工具推荐
Oct 13 Python
PyCharm 安装与使用配置教程(windows,mac通用)
May 12 Python
Python开发五子棋小游戏
May 02 Python
Tensorflow进行多维矩阵的拆分与拼接实例
Feb 07 #Python
Tensorflow训练模型越来越慢的2种解决方案
Feb 07 #Python
详解python itertools功能
Feb 07 #Python
Python中itertools的用法详解
Feb 07 #Python
Python转换itertools.chain对象为数组的方法
Feb 07 #Python
已安装tensorflow-gpu,但keras无法使用GPU加速的解决
Feb 07 #Python
python十进制转二进制的详解
Feb 07 #Python
You might like
深入理解PHP之require/include顺序 推荐
2011/01/02 PHP
浅析php中json_encode()和json_decode()
2014/05/25 PHP
解决PHP里大量数据循环时内存耗尽的方法
2015/10/10 PHP
Yii中srbac权限扩展模块工作原理与用法分析
2016/07/14 PHP
javascript引用对象的方法
2007/01/11 Javascript
JObj预览一个JS的框架
2008/03/13 Javascript
JavaScript prototype属性深入介绍
2012/11/27 Javascript
javascript每日必学之循环
2016/02/19 Javascript
js微信分享API
2020/10/11 Javascript
webpack+vue.js实现组件化详解
2016/10/12 Javascript
关于webuploader插件使用过程遇到的小问题
2016/11/07 Javascript
基于Vue实现支持按周切换的日历
2020/09/24 Javascript
javascript使用正则实现去掉字符串前面的所有0
2018/07/23 Javascript
webpack4.x开发环境配置详解
2018/08/04 Javascript
详解小程序输入框闪烁及重影BUG解决方案
2018/08/31 Javascript
对Vue.js之事件的绑定(v-on: 或者 @ )详解
2018/09/15 Javascript
详解vue中使用protobuf踩坑记
2019/05/07 Javascript
Vue2.0实现简单分页及跳转效果
2019/07/29 Javascript
如何使用gpu.js改善JavaScript的性能
2020/12/01 Javascript
vue+vant 上传图片需要注意的地方
2021/01/03 Vue.js
利用python模拟sql语句对员工表格进行增删改查
2017/07/05 Python
Django数据库表反向生成实例解析
2018/02/06 Python
python实现俄罗斯方块
2018/06/26 Python
Python任意字符串转16, 32, 64进制的方法
2019/06/12 Python
python 接口实现 供第三方调用的例子
2019/08/13 Python
python3实现单目标粒子群算法
2019/11/14 Python
Python基础之函数基本用法与进阶详解
2020/01/02 Python
Ranorex通过Python将报告发送到邮箱的方法
2020/01/12 Python
python使用opencv resize图像不进行插值的操作
2020/07/05 Python
Python延迟绑定问题原理及解决方案
2020/08/04 Python
Unineed旗下时尚轻奢网站:FABHunt
2019/05/13 全球购物
日常奢侈品,轻松购物:Verishop
2019/08/20 全球购物
团日活动总结书格式
2014/05/08 职场文书
演讲比赛主持词
2015/06/29 职场文书
只用50行Python代码爬取网络美女高清图片
2021/06/02 Python
go语言使用Casbin实现角色的权限控制
2021/06/26 Golang