Pytorch——统计属性的方法

1、norm 求范数

范数最为一个统计信息,是最常用的。

如何简单的使用norm这个api

a=torch.full([8],1)  #表示使用full函数生成长度为8的数值全是1的tensor
b=a.view(2,4) 
c=a.view(2,2,2)
print(a) #输出[[1.,1.,1.,1.],
               [1.,1.,1.,1.]]
print(c) #输出[[[1.,1.],[1.,1.]],
                [[1.,1.],[1.,1.]]]

#1范数是所有元素绝对值求和
a.norm(1) #输出tensor(8.)

b.norm(1) #输出tensor(8.)

c.norm(1) #输出tensor(8.)

#2范数是所有元素的绝对值的平方和以后再开根号
a.norm(2) #输出tensor(2.8284)
b.norm(2) #输出tensor(2.8284)
c.norm(2) #输出tensor(2.8284)


b.norm(1,dim=1) #输出tensor([4.,4.])
#给定一个dim=1表示再这个维度上所有数的1范数

b.norm(2,dim=1) #输出tensor([2.,2.])
#给定一个dim=1表示再这个维度上所有数的2范数

c.norm(1,dim=0) #输出tensor([[2.,2.],[2.,2.]])

c.norm(2,dim=0) #输出tensor([[1.4142,1.4142],[1.4142,1.4142]])

2、mean sum 求和

3、prod

4、max、min、argmin、argmax 求最大值,最小值以及他们的位置

a=torch.arrage(8).view(2,4).float()
#输出[[1,2,3,4],[4,5,6,7]]

a.min()#最小值
a.max()#最小值
a.mean()#均值
a.prod()#累乘

a.sum() #求和

#数据会被打平,然后求最大值最小值所在的索引
a.argmax()
a.argmin() #直接返回一个数

a.argmin(dim=1,keepdim=Ture) #就会返回一个向量形式

5、kthvalue、topk 第几个的值和第几个的位置,以及top的值和位置

a=torch.rand(4,10)

a.topk(3,dim=1)#表示返回概率最大的前三个

a.topk(3,dim=1,largest=False)#示返回概率最小的前三个


#与topk功能类似的就是kthvalue
a.kthvalue(8,dim=1)

6、基本的比较的操作

>,>=,<,<=,!=,==

torch.eq(a,b) 表示a和b是否相等。

猜你喜欢

转载自blog.csdn.net/qq_42012782/article/details/124143363
今日推荐