torch norm() Formalize()

torch中的normalize的功能是将一个向量单位化,比如一个向量为:

x = [1,2,3,4]

则标准化过程为先求出这个向量的二范数,然后将每一个维度上面的值都除以这个二范数。

import torch.nn.functional as F
import torch

x = torch.randn(1,3)
print(x)

z = F.normalize(x)
print(z)

运行结果为:

tensor([[-1.0407, -1.1139, -0.9541]])

设一个向量为x 则x.norm()返回的是这个向量的二范数

import torch

x = torch.tensor([1.0,2.0,3.0])
print(x.norm())

输出为:

tensor(3.7417)

所以如果要对一个向量进行单位化,可以直接F.normalize(x) ,也可以x = x / x.norm()

猜你喜欢

转载自blog.csdn.net/t20134297/article/details/109149975
今日推荐