# 1.L2归一化介绍

在深度神经网络中,偶尔会出现多个量纲不同的向量拼接在一起的情况,此时就可以使用L2归一化统一拼接后的向量的量纲,使得网络能够快速收敛。

归一化公式:

yi=xik=1Nxk

# 2. tensorflow2.math.l2_normalize函数

参数 作用
x 输入tensor
axis 沿着哪个轴归一化
epsilon 归一化的最小值,当norm的结果小于epsilon时返回epsilon
name 可选参数,操作名称
```python import tensorflow as tf x = tf.constant([[1.,2],[3.,4]]) tf.math.l2_normalize(x, axis=0).numpy() ```

输出:array([[0.31622776, 0.4472136 ],[0.94868326, 0.8944272 ]], dtype=float32)

计算方式:

[[112+32,222+42][312+32,422+42]]
import tensorflow as tf
x = tf.constant([[1.,2],[3.,4]])
tf.math.l2_normalize(x, axis=1).numpy()

输出:array([[0.4472136, 0.8944272],[0.6, 0.8]], dtype=float32)

计算方式:

[[112+22,212+22][332+42,432+42]]

# 3.pytorch中的normalize API

>>> x=torch.tensor([[1,2],[3,4.]])
>>> n = torch.nn.functional.normalize(x,p=2,dim=0)
>>> n
tensor([[0.3162, 0.4472],
        [0.9487, 0.8944]])
>>> n = torch.nn.functional.normalize(x,p=2,dim=1)
>>> n
tensor([[0.4472, 0.8944],
        [0.6000, 0.8000]])

(adsbygoogle = window.adsbygoogle || []).push({});

# 参考资料