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模拟登陆淘宝并统计淘宝消费情况的代码实例分享
Jul 04 Python
解决seaborn在pycharm中绘图不出图的问题
May 24 Python
Python sorted函数详解(高级篇)
Sep 18 Python
在python3中pyqt5和mayavi不兼容问题的解决方法
Jan 08 Python
python使用 zip 同时迭代多个序列示例
Jul 06 Python
python实现字符串完美拆分split()的方法
Jul 16 Python
Python Opencv任意形状目标检测并绘制框图
Jul 23 Python
基于Python新建用户并产生随机密码过程解析
Oct 08 Python
Python2.7:使用Pyhook模块监听鼠标键盘事件-获取坐标实例
Mar 14 Python
在Matplotlib图中插入LaTex公式实例
Apr 17 Python
anaconda3安装及jupyter环境配置全教程
Aug 24 Python
利用python进行数据加载
Jun 20 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
dedecms中显示数字验证码的修改方法
2007/03/21 PHP
php 中文和编码判断代码
2010/05/16 PHP
Drupal7连接多个数据库及常见问题解决
2014/03/02 PHP
Apache PHP MySql安装配置图文教程
2016/08/27 PHP
ThinkPHP3.2框架使用addAll()批量插入数据的方法
2017/03/16 PHP
详解JavaScript函数绑定
2013/08/18 Javascript
JQuery打造省市下拉框联动效果
2014/05/18 Javascript
js style动态设置table高度
2014/10/21 Javascript
开源的javascript项目Kissy介绍
2014/11/28 Javascript
详解Javascript动态操作CSS
2014/12/08 Javascript
jQuery调用ajax请求的常见方法汇总
2015/03/24 Javascript
异步安全加载javascript文件的方法
2015/07/21 Javascript
Javascript函数式编程语言
2015/10/11 Javascript
JS组件Bootstrap Table表格行拖拽效果实现代码
2020/08/27 Javascript
JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面
2016/08/04 Javascript
简单谈谈Vue 模板各类数据绑定
2016/09/25 Javascript
浅谈layer的iframe弹窗给里面的标签赋值的问题
2016/11/10 Javascript
JS中对数组元素进行增删改移的方法总结
2016/12/15 Javascript
jQuery层级选择器实例代码
2017/02/06 Javascript
JS实现图片居中悬浮效果
2017/12/25 Javascript
Layui数据表格 前后端json数据接收的方法
2019/09/19 Javascript
微信小程序组件生命周期的踩坑记录
2021/03/03 Javascript
python list删除元素时要注意的坑点分享
2018/04/18 Python
Python操作Excel工作簿的示例代码(\*.xlsx)
2020/03/23 Python
python3.4中清屏的处理方法
2020/07/06 Python
浅谈pandas dataframe对除数是零的处理
2020/07/20 Python
html5音频_动力节点Java学院整理
2018/08/22 HTML / CSS
详解如何解决使用JSON.stringify时遇到的循环引用问题
2021/03/23 Javascript
应届大学生的推荐信
2013/11/20 职场文书
学校采购员岗位职责
2014/01/02 职场文书
抽奖活动主持词
2014/03/31 职场文书
防灾减灾日活动总结
2014/08/26 职场文书
2014年安全生产工作总结
2014/11/13 职场文书
2016年党员干部廉政承诺书
2016/03/24 职场文书
2019年描写人生经典诗句大全
2019/07/08 职场文书
Django实现聊天机器人
2021/05/31 Python