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

 

转载于:https://www.cnblogs.com/qggg/p/6836238.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值