Re: [問題] L1與L2正規化的差別

看板DataScience作者 (function(){})()時間6年前 (2018/04/12 07:18), 6年前編輯推噓6(603)
留言9則, 5人參與, 6年前最新討論串3/3 (看更多)
※ 引述《bokxko1023 (bokxko1023)》之銘言: : 在網路上看了不少文章,但還是無法理解為何L1會具有稀疏的特性?這兩者的具體差別到 : 底是什麼呢,能用gradient descent 在微分時的差別來解釋嗎? : 另外想請問大家是怎麼選正規化的權重alpha的?雖說知道是用trial and error,但數字 : 範圍這麼廣,有沒有限縮範圍的方法呢? : 感謝大家 推文裡提到一些觀點都不太嚴謹 (可能是我想像力太差) 1. 每次梯度下降的大小是L1>L2: 格局太小不說(離了GD推論就無效), 迭代的過程只是想當然耳, 每一步用的梯度大小應該只影響收斂速度而非收斂到的值, 難道是原來就有稀疏解, 只是用L1比較快? 那麼不用L1但增加learning rate或多迭代幾次, 為什麼不會解到零? 2. 等高線優先撞到角角、相當於lagrange的某個式子...: 更複雜的想當然耳, 為什麼極值一定在邊邊角角? 又為什麼邊上的每個點機率是一樣的? 碰到線段上的某定點的機率是0, 應該是「很難」碰到頂點吧? 甚至, 如果降到1維, 整個推論就變得很荒謬: 因為 x 的範圍都在 [-C, +C], 線段一樣, 頂點一樣, 範圍裡等高線也一樣, 此時 L1, L2, L3, ... 沒有差別, 而且一定收斂到 -C 或 +C (保證不稀疏) 這解釋跟本禁不起推敲 其實可以直接求"存在稀疏解"的條件 假設原損失函數 f(x) 在 x=0 可微, R(x) 是 regularization term, a 是 regularization 的權重 則 f(x) + a R(x) 在 x=0 處有最小值(稀疏解) 的定義是: 存在一點 x0 > 0, 使得 for all h in [-x0, x0] 恒有 f(h) + a R(h) >= f(0) + a R(0), 即 f(h) - f(0) >= -a [ R(h) - R(0) ] 把式子兩邊同時除以 h,並分別取 0 的左右極限 因為是不等式, 所以 h 的正負需分開討論 <=> lim{h->0+} [f(h)-f(0)]/h >= lim{h->0+} -a [R(h)-R(0)]/h 且 lim{h->0-} [f(h)-f(0)]/h <= lim{h->0-} -a [R(h)-R(0)]/h 由於 f 在 0 可微, 所以上兩式的左項相等, 即 f'(0) 整理得 <=> -a R'(0+) <= f'(0) <= -a R'(0-) 其中 R'(0+) 為 R 在 0 的右導數, R'(0-) 為 R 在 0 的左導數. 所以, L1: R(x) = |x|, R'(0+)=1, R'(0-)=-1, 有稀疏解的充要條件是 -a <= f'(0) <= a L2: R(x) = x^2, R'(0+)=0, R'(0-)=0 , 有稀疏解的充要條件是 0 <= f'(0) <= 0 換句話說: 用 L1 時, 只要 f 在原點的梯度絕對值 <= 正則的權重, x=0 就會是區域極小 甚至 f 沒有極值都可以 (e.g., x^3 + |x|) 可以想成 "無論f是什麼樣子, 只要在0附近足夠平緩, 加上L1就會有稀疏解" 當然能不能解到是另一回事 但用 L2 時, 只有原來 f'(0) = 0 才會有稀疏解, 也就是說加上 L2, 對稀疏解沒有幫助 也可以機率的觀點來看 regularization相當於強迫參數服從於特定的prior distribution 而L1對應的分佈 相較L2集中在零點 這有機會再說了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 174.119.85.87 ※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1523488715.A.DAE.html ※ 編輯: bibo9901 (174.119.85.87), 04/12/2018 07:20:54 ※ 編輯: bibo9901 (174.119.85.87), 04/12/2018 09:12:14 ※ 編輯: bibo9901 (174.119.85.87), 04/12/2018 09:13:34

04/12 12:33, 6年前 , 1F
04/12 12:33, 1F

04/12 12:55, 6年前 , 2F
04/12 12:55, 2F
※ 編輯: bibo9901 (174.119.85.87), 04/12/2018 13:51:29 ※ 編輯: bibo9901 (174.119.85.87), 04/12/2018 14:06:14

04/12 15:42, 6年前 , 3F
推 數據科學家的超能力不是數學運算 是數學想像力!
04/12 15:42, 3F

04/13 12:52, 6年前 , 4F
大推! 從input來看扣掉需要非0 filter的features 其
04/13 12:52, 4F

04/13 12:52, 6年前 , 5F
它dof是在學noise 用L2的話noise只是rescale 用L1的
04/13 12:52, 5F

04/13 12:52, 6年前 , 6F
話就是把scattering<regularization strength的砍掉
04/13 12:52, 6F

04/13 15:26, 6年前 , 7F
話說我一直覺得regularization用機率的角度來看他的
04/13 15:26, 7F

04/13 15:27, 6年前 , 8F
假設會不會太強啊 一直有這種疑問XD
04/13 15:27, 8F

05/02 15:09, 6年前 , 9F
推推
05/02 15:09, 9F
文章代碼(AID): #1QpfVBsk (DataScience)
討論串 (同標題文章)
文章代碼(AID): #1QpfVBsk (DataScience)