关于np.max及tf.reduce_mean的计算轴axis的理解

版权声明:本文为博主自我学习原创文章,欢迎转载,转载请注明出处。 https://blog.csdn.net/Jack_kun/article/details/84973262

    np.max(axis=), tf.reduce_mean(axis=)的理解。下面以np.max作理解

    import numpy as np
    
    a = [[[1,2,3],[11,22,33]],[[10,20,30],[110,220,330]],[[101,201,301],[11001,22001,33001]],[[55,66,77],[550,660,770]]]
    
    b = np.array(a)
    
    print(b)
    
    [[[    1     2     3]
      [   11    22    33]]
    
     [[   10    20    30]
      [  110   220   330]]
    
     [[  101   201   301]
      [11001 22001 33001]]
    
     [[   55    66    77]
      [  550   660   770]]]
    
    print(b.max(axis=0))  
    
    [[  101   201   301]
     [11001 22001 33001]]
    
    print(b.max(axis=1))
    
    [[   11    22    33]
     [  110   220   330]
     [11001 22001 33001]
     [  550   660   770]]
    
    print(b.max(axis=2))
    
    [[    3    33]
     [   30   330]
     [  301 33001]
     [   77   770]]
    
    b.shape
    
    (4, 2, 3)
    

    shape=[x, y, z],从这里结果看:

    1. axis=0,返回shape=[y,z]
      每个x中的全部[y,z]作比较,即每个x元素的比较
    2. axis=1,返回shape=[x,z]
      在每个x元素内,每个y中的z维度元组比较
    3. axis=2,返回shape=[x,y]
      在每个z中的内部元素做比较

    axis=n表示在n维比较各个元素,对应数值位置,最后消除了n维度。

    在这里插入图片描述

    
    

    猜你喜欢

    转载自blog.csdn.net/Jack_kun/article/details/84973262