码迷,mamicode.com
首页 > 其他好文 > 详细

tf.reverse()

时间:2020-03-22 19:50:54      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:就是   倒数   complex   反转   范围   案例   三维   constant   rank   

一 函数原型
tf.reverse(
    tensor,
    axis,
    name=None
)

参数:

tensor:需要进行反转的张量,类型必须为其中的一个uint8, int8, uint16, int16, int32, int64, bool, bfloat16, half, float32, float64, complex64, complex128, string。最高维度为8-D

axis:需要反转的axis,注意axis的范围是[-rank(tensor),rank(tensor))之间。

name:可选的

二 案例
很显然可以看出,axis=[3]的时候也就是在最里面那一层进行reverse,axis=[2]的时候就是在倒数第二层进行reverse,那么就是对两个三维数组分别进行reverse,颠倒顺序,

axis=[1]的时候在最外层进行颠倒,那么就将两个三维数组直接互换位置即可。

import tensorflow as tf
import numpy as np

t = tf.constant([[[[0, 1, 2, 3],
                   [4, 5, 6, 7],
                   [8, 9, 10, 11]],
                  [[12, 13, 14, 15],
                   [16, 17, 18, 19],
                   [20, 21, 22, 23]]]])
# tensor ‘t‘ shape is [1, 2, 3, 4]

with tf.Session() as sess:
    print("t")
    print(sess.run(t))
    print("reverse at axis=[3]")
    print(sess.run(tf.reverse(t, axis=[3])))
    print("reverse at axis=[-1]")
    print(sess.run(tf.reverse(t, [-1])))#和axis=[3]一样
    print("reverse at axis=[1]")
    print(sess.run(tf.reverse(t, axis=[1])))
    print("reverse at axis=[2]")
    print(sess.run(tf.reverse(t, axis=[2])))

t
[[[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]

[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]]]
reverse at axis=[3]
[[[[ 3 2 1 0]
[ 7 6 5 4]
[11 10 9 8]]

[[15 14 13 12]
[19 18 17 16]
[23 22 21 20]]]]
reverse at axis=[-1]
[[[[ 3 2 1 0]
[ 7 6 5 4]
[11 10 9 8]]

[[15 14 13 12]
[19 18 17 16]
[23 22 21 20]]]]
reverse at axis=[1]
[[[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]

[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]]]
reverse at axis=[2]
[[[[ 8 9 10 11]
[ 4 5 6 7]
[ 0 1 2 3]]

[[20 21 22 23]
[16 17 18 19]
[12 13 14 15]]]]

 

tf.reverse()

标签:就是   倒数   complex   反转   范围   案例   三维   constant   rank   

原文地址:https://www.cnblogs.com/tingtin/p/12547582.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!