L2 normalization and Cosine Similarity
L2归一化后,两个向量的欧拉距离的平方与 cosine 相似度的关系为 d 2 ( X , Y ) = 2 ( 1 − c o s ( X , Y ) ) d^2(X,Y) = 2(1-cos(X,Y)) d2(X,Y)=2(1−cos(X,Y)),推导如下
先看看 L2 归一化的形式
向量 X = [ x 1 , x 2 , . . . , x n ] X = [x_1, x_2, ... , x_n] X=[x1,x2,...,xn] 做 L2 归一化后得到 X ˉ = [ x 1 ˉ , x 2 ˉ , . . . , x n ˉ ] \bar{X} = [\bar{x_1}, \bar{x_2}, ... , \bar{x_n}] Xˉ=[x1ˉ,x2ˉ,...,xnˉ],
x i ˉ = x i ∑ i = 1 n x i 2 \bar{x_i} = \frac{x_i}{\sqrt{\sum_{i=1}^{n}x_i^2}} xiˉ=∑i=1nxi2xi, x i ˉ ∈ [ − 1 , 1 ] \bar{x_i}\in [-1, 1] xiˉ∈[−1,1],且 ∑ i = 1 n x i ˉ 2 = 1 \sum_{i=1}^{n}\bar{x_i}^2 = 1 ∑i=1nxiˉ2=1
再看看 cosine 相似度
c o s ( X , Y ) = X ⋅ Y ∣ X ∣ ⋅ ∣ Y ∣ = ∑ i = 1 n X i ⋅ Y i ∑ i = 1 n X i 2 ⋅ ∑ i = 1 n Y i 2 cos(X,Y) = \frac{X \cdot Y}{\left | X \right | \cdot \left | Y \right |} = \frac{ \sum_{i=1}^n X_i \cdot Y_i}{\sqrt{ \sum_{i=1}^nX_i^2} \cdot \sqrt{ \sum_{i=1}^nY_i^2}} cos(X,Y)=∣X∣⋅∣Y∣X⋅Y=∑i=1nXi2⋅∑i=1nYi2∑i=1nXi⋅Yi
d 2 ( X , Y ) = ∑ i = 1 n ( X n − Y n ) 2 (欧氏距离) = ∑ i = 1 n X i 2 − 2 ∑ i = 1 n X i ⋅ Y i + ∑ i = 1 n Y i 2 = 2 − 2 ∑ i = 1 n X i ⋅ Y i = 2 ( 1 − ∑ i = 1 n X i ⋅ Y i ) = 2 ( 1 − ∑ i = 1 n X i ⋅ Y i 1 ⋅ 1 ) = 2 ( 1 − ∑ i = 1 n X i ⋅ Y i ∑ i = 1 n X i 2 ⋅ ∑ i = 1 n Y i 2 ) = 2 ( 1 − c o s ( X , Y ) ) ( c o s i n e 相似度) \begin{align*} d^2(X,Y) &= \sum_{i=1}^n(X_n - Y_n)^2(欧氏距离) \\ &= \sum_{i=1}^nX_i^2 - 2 \sum_{i=1}^n X_i \cdot Y_i + \sum_{i=1}^nY_i^2 \\ &= 2- 2 \sum_{i=1}^n X_i \cdot Y_i \\ &= 2(1- \sum_{i=1}^n X_i \cdot Y_i) \\ &= 2(1- \frac{ \sum_{i=1}^n X_i \cdot Y_i}{\sqrt{1} \cdot \sqrt{1}}) \\ & =2(1- \frac{ \sum_{i=1}^n X_i \cdot Y_i}{\sqrt{ \sum_{i=1}^nX_i^2} \cdot \sqrt{ \sum_{i=1}^nY_i^2}}) \\ & = 2(1-cos(X,Y))(cosine 相似度) \\ \end{align*} d2(X,Y)=i=1∑n(Xn−Yn)2(欧氏距离)=i=1∑nXi2−2i=1∑nXi⋅Yi+i=1∑nYi2=2−2i=1∑nXi⋅Yi=2(1−i=1∑nXi⋅Yi)=2(1−1⋅1∑i=1nXi⋅Yi)=2(1−∑i=1nXi2⋅∑i=1nYi2∑i=1nXi⋅Yi)=2(1−cos(X,Y))(cosine相似度)
L0、L1、L2 regularization
- 0范数,向量中非零元素的个数。
- 1范数,为绝对值之和。
- 2范数,就是通常意义上的模。
如何去防止过拟合,我们首先想到的就是控制
N
N
N 的数量吧,即让
N
N
N 最小化吧,而让
N
N
N 最小化,其实就是让
W
W
W 向量中项的个数最小化吧?
其中,
W
=
(
w
0
,
w
1
,
w
2
,
w
3
,
.
.
.
w
N
)
W=(w_{0} ,w_{1} ,w_{2} ,w_{3} ,...w_{N} )
W=(w0,w1,w2,w3,...wN)
-
1范数和0范数可以实现稀疏,1因具有比L0更好的优化求解特性而被广泛应用。
-
L2 范数是指向量各元素的平方和然后求平方根。我们让 L2 范数的正则项 ∣ ∣ W ∣ ∣ 2 ||W||^2 ∣∣W∣∣2 最小,可以使得 W 的每个元素都很小,都接近于0,但与L1范数不同,它不会让它等于0,而是接近于0,这里是有很大的区别的哦;所以大家比起1范数,更钟爱2范数。
-
L1 相当于先验拉普拉斯分布,获得稀疏解
L2 相当于先验高斯分布,获得非0稠密解 -
对于线性回归模型,使用 L1 正则化的模型建叫做 Lasso回归,使用 L2 正则化的模型叫做 Ridg 回归(岭回归)
-
如果事先假定只有非常少数的特征是重要的,可以用 L1
-
L2 防止过拟合的解释 (来自机器学习中正则化项L1和L2的直观理解(★★★★★))
因为一般认为参数值小的模型比较简单,能适应不同的数据集,也在一定程度上避免了过拟合现象。可以设想一下对于一个线性回归方程,若参数很大,那么只要数据偏移一点点,就会对结果造成很大的影响;但如果参数足够小,数据偏移得多一点也不会对结果造成什么影响,专业一点的说法是『抗扰动能力强』。
softmax 也是归一化