numpy sum mean axis

import torch
t=torch.randn(2,2,2)
print(t.sum(0))
print(t.sum(1))
print(t.sum(2))

假设t=[
[ [a, b], [c,d] ],
[ [e, f], [g, h] ]
]
分成3层。第0层即t。第1层有两个数组, t1= t[0]= [ [a, b], [c,d] ], t2=t0[1]= [ [e, f], [g, h] ], 第2层各2个数组, t3=t1[0]=[a,b], t4=t1[1]=[c,d], t5=t2[0]=[e,f], t6=t2[1]=[g,h]
则sum(0),即在轴0上相加,则是[ [a+e, b+f], [c+g, d+h] ].即t[0]与t[1]之间对应的元素相加(如a+e)
sum(1),即轴1上相加。则是t1[0]与t1[1]之间对应元素相加,t2[0]与t2[1]之间对应的元素相加(如a+c)
sum(2), 轴2相加,则是t3[0]与t3[1]相加(这是最底层,所以都是float)(如a+b)

以此类推,4维的话.结果如下图。对应颜色的框相加得到对应颜色的结果。注意观察位置。numpy sum mean axis
numpy sum mean axis
mean的结果则是sum的值除以这个维度的size(t.size()[i])