pytorch近似运算

.floor() 往下取整数

.ceil() 网上取整数

.round() 四舍五入 >=0.5向上取整,<0.5向下取整

.trunc() 裁剪,只取整数部分

.frac() 只取小数部分

 

如何查看梯度的模

w.grad.norm(2) 梯度的二范数,可以用于观测梯度是否爆炸(一般都比较小,10左右,100都算比较大了)

梯度裁剪时,会用到,gradient clipping

a = torch.rand(2, 3)*15
print(a)
#clamp(min), 将小于min的值变为min
b = a.clamp(10)
print(b)

#out: tensor([[ 2.3666,  5.2836,  4.2964],
#out:         [ 8.5975, 11.7687,  5.1429]])
#out: tensor([[10.0000, 10.0000, 10.0000],
#out:         [10.0000, 11.7687, 10.0000]])

#另一种是.clamp(min,  max)
#将小于min的变为min,将大于max的变为max

 

你可能感兴趣的:(pytorch~)