用numpy快一年了,然而到现在还经常被axis的概念弄得晕乎乎的。这次希望通过写下博客可以跟大家一块弄清楚这个东西。
当我们要对某个matrix进行np.sum , np.max等方式的处理时,我们可以想象axis是我们要针对的纬度。最直观的体现就在于,比如一个shape为(a,b,c)的矩阵mtx。如果我用np.sum(mtx)处理,那么当axis = 0的时候,输出的shape就为(b,c),同理,当axis=2的时候,输出的shape就成为(a,b)了。
那么计算的方法就是先固定住非axis纬度的值,然后让所对应的np方程处理“从头到尾过所有axis纬度的值”后的结果。
举例:
import numpy as np
exp = np.array([[[1,2,3