您的位置:首页 > 其它

TensorFlow的reshape操作 tf.reshape

2018-03-30 15:43 309 查看

https://www.cnblogs.com/qggg/p/6836238.html

TF-调整矩阵维度 tf.reshape 介绍

函数原型为 def reshape(tensor, shape, name=None)第1个参数为被调整维度的张量。第2个参数为要调整为的形状。返回一个shape形状的新tensor注意shape里最多有一个维度的值可以填写为-1,表示自动计算此维度。很简单的函数,如下,根据shape为[5,8]的tensor,生成一个新的tensor
import tensorflow as tf

alist = [[1, 2, 3, 4, 5, 6 ,7, 8],
[7, 6 ,5 ,4 ,3 ,2, 1, 0],
[3, 3, 3, 3, 3, 3, 3, 3],
[1, 1, 1, 1, 1, 1, 1, 1],
[2, 2, 2, 2, 2, 2, 2, 2]]
oriarray = tf.constant(alist)

oplist = []
a1 = tf.reshape(oriarray, [1, 2, 5, 4])
oplist.append([a1, 'case 1, 2, 5, 4'])

a1 = tf.reshape(oriarray, [-1, 2, 5, 4])
oplist.append([a1, 'case -1, 2, 5, 4'])

a1 = tf.reshape(oriarray, [8, 5, 1, 1])
oplist.append([a1, 'case 8, 5, 1, 1'])

with tf.Session() as asess:
for aop in oplist:
print('--------{}---------'.format(aop[1]))
print(asess.run(aop[0]))
print('--------------------------\n\n')

运行结果为
--------case 1, 2, 5, 4---------
2017-05-10 15:26:04.020848: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE instructions, but these are available on your machine and could speed up CPU computations.
2017-05-10 15:26:04.020848: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE2 instructions, but these are available on your machine and could speed up CPU computations.
2017-05-10 15:26:04.020848: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
2017-05-10 15:26:04.020848: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2017-05-10 15:26:04.021848: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2017-05-10 15:26:04.021848: W c:\tf_jenkins\home\workspace\release-win\device\cpu\os\windows\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use AVX instructions, but these are available on your machine and could speed up CPU computations.
[[[[1 2 3 4]
[5 6 7 8]
[7 6 5 4]
[3 2 1 0]
[3 3 3 3]]

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

--------case -1, 2, 5, 4---------
[[[[1 2 3 4]
[5 6 7 8]
[7 6 5 4]
[3 2 1 0]
[3 3 3 3]]

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

--------case 8, 5, 1, 1---------
[[[[1]]

[[2]]

[[3]]

[[4]]

[[5]]]

[[[6]]

[[7]]

[[8]]

[[7]]

[[6]]]

[[[5]]

[[4]]

[[3]]

[[2]]

[[1]]]

[[[0]]

[[3]]

[[3]]

[[3]]

[[3]]]

[[[3]]

[[3]]

[[3]]

[[3]]

[[1]]]

[[[1]]

[[1]]

[[1]]

[[1]]

[[1]]]

[[[1]]

[[1]]

[[2]]

[[2]]

[[2]]]

[[[2]]

[[2]]

[[2]]

[[2]]

[[2]]]]
--------------------------

Process finished with exit code 0

 不对之处欢迎指正
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: