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是否相等。