1、动机
最近多次看到该方法出现,于是准备了解一下,搜了后发现原来是所谓的L2 norm计算
2、简介函数定义
torch.nn.functional.
normalize
(input, p=2.0, dim=1, eps=1e-12, out=None)
功能:将某一个维度除以那个维度对应的范数(默认是2范数)。
使用:
F.normalize(data, p=2/1, dim=0/1/-1) 将某一个维度除以那个维度对应的范数(默认是2范数)
data:输入的数据(tensor)
p:L2/L1_norm运算
dim:0表示按列操作,则每列都是除以该列下平方和的开方;1表示按行操作,则每行都是除以该行下所有元素平方和的开方
3、举例
最后dim=0,是1/根号下1平方+1平方,2/根号下2平方+2平方,3/根号下3平方+3平方,所以都是0.7071
官方学习手册
torch.nn.functional.normalize()函数解读
torch.nn.functional.normalize详解
理解PyTorch中维度的概念