問題2 機器學習篇 正則化L1和L2有什麼區別?

2021-08-20 13:00:45 字數 1828 閱讀 6183

先要知道什麼是正則化,再談他們的區別。後面引用區《機器學習損失函式、l1-l2正則化的前世今生》很值得看。

答: 1)什麼是正則化

在機器學習中,l1和l2被稱為正則化。

他們在其他學科中的叫法不一樣,在統計學中稱為罰項,數學中對應的是範數,本質是相同的。

2)正則化的提出

在《機器學習損失函式、l1-l2正則化的前世今生》中提到的lasso regression和ridge regression在求整體損失最小時分別使用了l1正則化和l2正則化。

3)為什麼要正則化

正則化的提出是為了使模型更好的擬合實際情況。這裡說得不明確,繼續往下讀。

4)正則化的一般形式

在李航的書中說到結構風險化策略如下式,一般形式為 mi

nf∈f

1n∑i

=1nl

(yi,

f(x)

)+λj

(f) min

f∈f1

n∑i=

1nl(

yi,f

(x))

+λj(

f)

其中第一項為損失函式,第二項為正則化項。 l2

l

2範數;

另外還有hinge loss,exp-loss, log-loss等等。4)j

(f) j(f

)常用距離度量表示

最常用的是閔可夫斯基距離(minkowski distance) di

stmk

(xi,

xj)=

(∑u=

1n|x

iu−x

ju|p

)1/p

d is

tmk(

xi,x

j)=(

∑u=1

n|xi

u−xj

u|p)

1/

p簡單說說三種情況:

a) p =1, 為曼哈頓距離 di

stma

n(xi

,xj)

=∑u=

1n|x

iu−x

ju|=

||xi

−xj|

|1d is

tman

(xi,

xj)=

∑u=1

n|xi

u−xj

u|=|

|xi−

xj||

1b) p =2, 為歐氏距離 di

stma

n(xi

,xj)

=∑u=

1n|x

iu−x

ju|2

−−−−

−−−−

−−−−

√=||

xi−x

j||2

d is

tman

(xi,

xj)=

∑u=1

n|xi

u−xj

u|2=

||xi

−xj|

|2

c) p 趨於無窮大為切比雪夫距離

上面a)b)兩種情況中的表示式已經寫成了範數的形式,也就是l1和l2。

5) 其他範數

機器學習損失函式、l1-l2正則化的前世今生:

周志華 《機器學習》

0 範數、1 範數、2 範數有什麼區別? - 魏通的回答 - 知乎

0 範數、1 範數、2 範數有什麼區別? - 凌空的回答 - 知乎

校招演算法工程師常見面試題及答案總結01——l1和l2正則化

L1和L2正則化

l1和l2正則化 l1與l2正則化都是防止模型過擬合,其方式略有不同。具體請見下文。1 l1 正則化l1正則化 1範數 是指,各權值 變數 特徵 絕對值之和。其作用是產生權值的稀疏模型,也就是讓大部分權值為0.為什麼能產生權值稀疏模型?因為如下圖所示,各權值絕對值之和後得到乙個矩陣,很容易在矩陣的頂...

l1和l2正則化

import tensorflow as tf import tensorflow.contrib as contrib weight tf.constant 1.0,2.0 3.0,4.0 with tf.session as sess print sess.run contrib.layers....

L1和L2正則化

l0範數指的是向量中非零元素的個數,l0正則化就是限制非零元素的個數在一定的範圍,這很明顯會帶來稀疏。一般而言,用l0範數實現稀疏是乙個np hard問題,因此人們一般使用l1正則化來對模型進行稀疏約束。稀疏性 參考 另外一種解釋 假設費用函式l與某個引數w的關係如圖所示 則最優的 w在綠點處,w非...