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 用户登录验证的小例子
Mar 06 Python
Python中字典的基础知识归纳小结
Aug 19 Python
Python爬取网易云音乐热门评论
Mar 31 Python
Python Unittest自动化单元测试框架详解
Apr 04 Python
修改python plot折线图的坐标轴刻度方法
Dec 13 Python
解决pycharm每次新建项目都要重新安装一些第三方库的问题
Jan 17 Python
python yield关键词案例测试
Oct 15 Python
Pytest mark使用实例及原理解析
Feb 22 Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
Feb 27 Python
python基于win32api实现键盘输入
Dec 09 Python
教你使用Python pypinyin库实现汉字转拼音
May 27 Python
微信小程序调用python模型
Apr 21 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中is_file不能替代file_exists的理由
2014/03/04 PHP
php实现信用卡校验位算法THE LUHN MOD-10示例
2014/05/07 PHP
PHP中使用substr()截取字符串出现中文乱码问题该怎么办
2015/10/21 PHP
php实现简单的上传进度条
2015/11/17 PHP
php实现当前页面点击下载文件的简单方法
2016/09/22 PHP
PHP多进程编程之僵尸进程问题的理解
2017/10/15 PHP
php处理抢购类功能的高并发请求
2018/02/08 PHP
Swoole4.4协程抢占式调度器详解
2019/05/23 PHP
prototype 源码中文说明之 prototype.js
2006/09/22 Javascript
Jquery判断IE6等浏览器的代码
2011/04/05 Javascript
jquery方法+js一般方法+js面向对象方法实现拖拽效果
2012/08/30 Javascript
在图片上显示左右箭头类似翻页的代码
2013/03/04 Javascript
jQuery在html有效在jsp无效的原因及解决方法
2013/08/02 Javascript
js中的cookie的读写操作示例详解
2014/04/17 Javascript
jQuery实现仿美橙互联两级导航菜单的方法
2015/03/09 Javascript
js正则表达式中exec用法实例
2015/07/23 Javascript
jquery获取复选框的值的简单实例
2016/05/26 Javascript
AngularJS入门教程之模块化操作用法示例
2016/11/02 Javascript
JS检测是否可以访问公网服务器功能代码
2017/06/19 Javascript
axios异步提交表单数据的几种方法
2019/08/11 Javascript
SSM+layUI 根据登录信息显示不同的页面方法
2019/09/20 Javascript
微信小程序实现分享商品海报功能
2019/09/30 Javascript
vue实现简单加法计算器
2020/10/22 Javascript
JavaScript动态生成表格的示例
2020/11/02 Javascript
[01:04]DOTA2上海特锦赛现场采访 FreeAgain遭众解说围攻
2016/03/25 DOTA
[56:20]LGD vs VP Supermajor 败者组决赛 BO3 第三场 6.10
2018/07/04 DOTA
跟老齐学Python之集合(set)
2014/09/24 Python
利用python实现xml与数据库读取转换的方法
2017/06/17 Python
Python通过paramiko远程下载Linux服务器上的文件实例
2018/12/27 Python
Python批量生成特定尺寸图片及图画任意文字的实例
2019/01/30 Python
python实现计算器功能
2019/10/31 Python
大学毕业生自我评价
2015/03/02 职场文书
《秋天的雨》教学反思
2016/02/19 职场文书
不要在HTML中滥用div
2021/05/08 HTML / CSS
Python anaconda安装库命令详解
2021/10/16 Python
游戏《铁拳》动画化!2022年年内播出
2022/03/21 日漫