Чому норма L1 для розріджених моделей


97

Я читаю книги про лінійну регресію. Про норми L1 та L2 є кілька речень. Я їх знаю, просто не розумію, чому норма L1 для розріджених моделей. Чи може хтось використати дати просте пояснення?


4
В основному, розрідженість викликається гострими краями, що лежать на осі ізоповерхні. Найкраще графічне пояснення, яке я знайшов поки що, - у цьому відео: youtube.com/watch?v=sO4ZirJh9ds
felipeduque

1
Там стаття в блозі на тому ж chioka.in/…
prashanth

Перевірте наступний пост програми "Середній". Це може допомогти medium.com/@vamsi149/…
solver149

Відповіді:


111

Розглянемо вектор де малий. У і норми , відповідно, задаютьсяε>0l1l2xx=(1,ε)R2ε>0l1l2x

||x||1=1+ε,  ||x||22=1+ε2

Тепер скажіть, що в рамках деякої процедури регуляризації ми збираємось зменшити величину одного з елементів на . Якщо змінити на , то отримані норми є δεx11-δxδεx11δ

||x(δ,0)||1=1δ+ε,  ||x(δ,0)||22=12δ+δ2+ε2

З іншого боку, зменшення на дає норми δx2δ

||x(0,δ)||1=1δ+ε,  ||x(0,δ)||22=12εδ+δ2+ε2

Тут слід зауважити, що для штрафу регуляризація більшого терміна призводить до набагато більшого зниження норми, ніж це для меншого терміна . Однак для штрафу зменшення є таким же. Таким чином, при санкціонуванні моделі за допомогою норми вкрай малоймовірно, що щось колись буде встановлено на нуль, оскільки зменшення норми переходить від до , майже не існує, коли невеликий. З іншого боку, зменшення норми завжди дорівнюєx 1 x 20 l 1 l 2 l 2 ε 0 ε l 1 δl2x1x20l1l2l2ε0εl1δнезалежно від кількості штрафу.

Інший спосіб подумати про це: справа не в тому, що покарання заохочують рідкість, а те, що покарання в деякому сенсі відштовхують рідкість, отримуючи зменшувані прибутки, оскільки елементи переміщуються ближче до нуля.l 2l1l2


3
Дякую за вашу відповідь! Я не переконаний останнім пунктом, хоча. Якщо у вас запущена не пенізована лінійна регресія, навряд чи ви отримаєте розріджені рішення (тоді як додавання штрафу L1 часто дасть вам бідність). Тож штрафи за L1 насправді заохочують рідкість, надсилаючи коефіцієнти, які починаються точно від нуля до нуля.
Стефан Вагер

2
@StefanWager, можливо, це трохи завищення, але я думаю, що це правда, що тут немає нічого особливого щодо штрафу штраф для будь-якого також спричинить рідкість, але ви рідше їх бачите на практиці (можливо, тому, що вони невипуклі). Якщо ви справді хочете просто покарання (пропорційне кількості ненульових записів) - це шлях, і так буває, що з цим трохи кошмару. l α α 1 l 0l1lαα1l0
бнаул

1
Так - це правильно. Існує безліч норм, які призводять до розрідженості (наприклад, як ви вже згадували, будь-яка норма Lp з р <= 1). Взагалі, будь-яка норма з гострим кутом в нуль викликає розрідженість. Отже, повертаючись до початкового питання - норма L1 викликає обмеженість, маючи переривчастий градієнт у нуль (і будь-яке інше покарання з цією властивістю теж буде робити це).
Штефан Вагер

3
У разі, якщо хтось хоче прочитати більше, є активна література про невипуклі штрафні функції, які є альтернативою нормі L1 (наприклад, нещодавно, paper.nips.cc/paper/… ).
Стефан Вагер

1
чудова відповідь, я дивувався навколо деякий час, поки я не знайшов це.
Хаді Ельсахар

72

Маючи розріджену модель, ми думаємо про модель, де багато ваг дорівнює 0. Отже, давайте обґрунтуємо, як L1-регуляризація швидше створює 0-ваг.

Розглянемо модель, що складається з ваг .(w1,w2,,wm)

З регуляризацією L1 ви модель функцією втрат =.Σ i | w i |L1(w)Σi|wi|

За допомогою регуляризації L2 ви санкціонуєте модель функцією втрат =1L2(w)12Σiwi2

Якщо ви використовуєте спуск градієнта, ви ітеративно змусите ваги змінюватись у зворотному напрямку градієнта з розміром кроку помноженим на градієнт. Це означає, що більш крутий градієнт змусить нас зробити більший крок, тоді як більш рівний градієнт змусить нас зробити менший крок. Давайте подивимось на градієнти (субградієнт у випадку L1):η

sign(w)=(w1dL1(w)dw=sign(w) , деsign(w)=(w1|w1|,w2|w2|,,wm|wm|)

dL2(w)dw=w

Якщо ми побудуємо функцію втрат і її похідну для моделі, що складається лише з одного параметра, це виглядає так для L1:

введіть тут опис зображення

І ось так для L2:

введіть тут опис зображення

Зауважте, що для градієнт дорівнює 1 або -1, за винятком випадків, коли . Це означає, що регуляризація L1 перемістить будь-яку вагу до 0 з однаковим розміром кроку, незалежно від значення ваги. Навпаки, ви можете бачити, що градієнт лінійно зменшується до 0, коли вага спрямовується до 0. Отже, регуляризація L2 також перемістить будь-яку вагу в бік 0, але буде робити менші та менші кроки, коли вага наближається до 0.w 1 = 0 L 2L1w1=0L2

Спробуйте уявити, що ви починаєте з моделі з і використовуєте . На наступному малюнку ви бачите, як спуск градієнта за допомогою L1-регуляризації робить 10 оновлень , до досягнення моделі з :η = 1w1=5η=12w1:=w1ηdL1(w)dw=w1121w1=0

введіть тут опис зображення

Якщо обмежуватись, з регуляризацією L2, де , градієнт , що призводить до того, що кожен крок буде лише на півдорозі до 0. Тобто ми робимо оновлення Отже, модель ніколи не досягає ваги 0, незалежно від того, скільки кроків ми зробимо:η=12w1w1:=w1ηdL2(w)dw=w112w1

введіть тут опис зображення

Зауважте, що регуляризація L2 може зробити вагу до нуля, якщо розмір кроку настільки високий, що він досягає нуля за один крок. Навіть якщо регуляризація L2 самостійно перевищує або підкреслює 0, вона все одно може досягати ваги 0 при використанні разом із об'єктивною функцією, яка намагається мінімізувати похибки моделі щодо ваг. У цьому випадку пошук найкращих ваг моделі є компромісом між регулюванням (малим вагою) та мінімізацією втрат (підгонки даних про тренування), і результатом цього компромісу може стати те, що найкраще значення для деяких ваг є 0.η


3
Чи може хтось пояснити мені, чому ми не потрапимо в нескінченний цикл, коли беремо стартову вагу w1 = 5,1 замість 5. Нехай w = 0,1, w> 0, отже, наша часткова похідна дорівнює 1 потім зробіть другий крок, тепер w <0 => похідне = -1:Тож ми будемо нескінченно коливатися близько 0.w f i r s t s t e p = 0,1 - 0,5 ( + 1 ) = > w = - 0,4 w s e c o n d s t e p = - 0,4 - 0,5 ( - 1 ) = 0,1
η=0.5
wfirst step=0.10.5(+1)=>w=0.4
wsecondstep=0.40.5(1)=0.1.
Олексій Яшин

5
@AlexYashin це правильно - якщо ми лише оновлювали ваги на основі регуляризації L1, ми можемо в кінцевому підсумку мати ваги, які коливаються біля 0. Але ми ніколи не використовуємо регуляризацію в поодинці для регулювання ваг. Ми використовуємо регуляризацію в поєднанні з оптимізацією функції втрат. Таким чином, регуляризація підштовхує ваги до нуля, тоді як ми в той же час намагаємось підтягнути ваги до значення, яке оптимізує прогнози. Другий аспект - рівень навчання. З меншою швидкістю навчання ми можемо наблизитись до значення, що регуляризація може коливатися навколо, що ми можемо нехтувати нею
Кент Мунт Касперсен

1
Чому dL2(w)/dw"модуль", а не просто лінійний?
mrgloom

1
@mrgloom dL2(w)/dwможна читати як зміну L2(w)за зміну ваги. Оскільки регуляризація L2 має ваги, L2(w)вони змінюватимуться набагато більше за ту саму зміну ваг, коли ми маємо більші ваги. Ось чому ця функція опукла, коли ви будуєте її. Однак для L1 зміна ваги L1(w)за зміну однакова, незалежно від того, які ваги є - це призводить до лінійної функції.
Кент Мунт Касперсен

1
@KentMuntheCaspersen Дивовижне пояснення! Дякую за графіки та зусилля, які ви вклали, щоб зробити це інтуїтивно зрозумілим!
лайсер

15

Малюнок 3.11 з елементів статистичного навчання Хасті, Тібширані та Фрідмана є дуже показовим:введіть тут опис зображення

Пояснення: - оцінка необмежених найменших квадратів. Червоні еліпси є (як пояснено у підписі на цій рисунку) контури функції найменших квадратів помилок з точки зору параметрів та . Без обмежень, функція помилок зводиться до мінімуму в MLE , і її значення збільшується в міру збільшення червоних еліпсів назовні. Діамантові та дискові області є можливими областями для регресії ласо ( ) та регресу хребта ( ) відповідно. Евристично для кожного методу ми шукаємо перетин червоних еліпсів та синьої області, оскільки мета полягає в тому, щоб мінімізувати функцію помилок при збереженні доцільності.β^β1β2β^L1L2

Зважаючи на це, зрозуміло, що обмеження , яке відповідає алмазній області, більш імовірно, створює перетин, який має один компонент розчину нульовий (тобто розріджена модель) завдяки геометричним властивостям еліпсів, дисків та алмазів. Це просто тому, що алмази мають кути (з яких один компонент дорівнює нулю), які легше перетинаються з еліпсами, що розширюються по діагоналі.L1


16
Ілюстрація не дуже переконлива без додаткової інформації. Наприклад, чому контури помилки повинні розташовуватися там, де вони є на малюнку?
ваббіт

@HrishikeshGanu Врешті-решт отримав певний час для редагування публікації.
Zhanxiong

Усі контури матимуть однакову форму ...
kjetil b halvorsen

1
Зауважте, що для ребер L1 переважніше лише тоді, коли має різні відхилення по осі та . Іншими словами, коли розподіл червоної лінії не симетричний по діагоналі осі. Якщо він симетричний, то весь край має однакову відстань / значення / вартість. β^β1β2β1=β2
Таутвидас

13

Подивіться на малюнок 3.11 (стор. 71) Елементи статистичного навчання . Він показує положення необмеженого що мінімізує функцію помилки в квадраті, еліпси, що показують рівні функції квадратної помилки, і де обмежуються і .β^β^1(β^)<t2(β^)<t

Це дозволить вам дуже геометрично зрозуміти, що за умови обмеження ви отримаєте деякі нульові компоненти. Це в основному тому, що куля має "осі" на осях.1 { x : 1 ( x ) 1 }11{x:1(x)1}

Загалом, ця книга є хорошим посиланням на цю тему: і суворі, і добре проілюстровані, чудові пояснення.


3
Я думаю, що ваш другий абзац є ключовим ... принаймні для моєї інтуїції: l1 "кулька" більше схожа на алмаз, який є колоскою по осях, а це означає, що гіперплан, обмежений його ударом, швидше мати нуль на осей.
Уейн

2
Так, я використовую уявлення процесу оптимізації як руху точки, поданої двома силами: притягнення до необмеженого завдяки функції помилки в квадраті, притягнення до 0 норми або . Тут «геометрія» цієї сили притягання змінює поведінку точки. Якщо ви зафіксуєте невеликий або в якій він може вільно рухатися, він ковзатиме по межі кулі, щоб підійти до . Результат показаний на ілюстрації у згаданій книзі ... ; л1л2л1л2 & beta ;β^1212β^
Елвіс

3
Книга хороша, але вона ніколи не пояснює, звідки вона взялася, і математику за нею.
user13985

2

Проста нематематична відповідь повинна бути:

Для L2: Термін покарання є квадратом , тому квадратування невеликого значення зробить його меншим. Нам не потрібно робити нуль, щоб досягти нашої мети отримати мінімальну помилку квадрата, ми отримаємо її до цього.

Для L1: Термін покарання абсолютний , нам може знадобитися перейти до нуля, оскільки немає каталізатора, щоб зробити малі меншими .

Це моя точка зору.


Не дуже переконливо для мене.
Тайлер 十三 将士 归 玉门

2

Норма L1 проти норми L2

На зображенні показані форми площі, зайняті нормою L1 та L2. Друге зображення складається з різних контурів спуску градієнта для різних проблем регресії. На всіх контурних ділянках спостерігайте червоне коло, що перетинає норму хребта або L2. перетин не є на осях. Чорний круг у всіх контурах являє собою той, що перетинає норму L1 або Лассо. Він перетинається відносно близько до осей. Це призводить до отримання коефіцієнтів до 0 і, отже, добору функцій. Отже, норма L1 робить модель рідкою.

Більш детальне пояснення за наступним посиланням: Клацніть Опублікувати назустріч науці даних


Це хороше пояснення, але додатковий коментар щодо вираження прикладних функцій вартості також був би корисним. Тобто, кругла форма помилок здається інтуїтивно зрозумілою, однак вузькоподовжена форма (яка використовується і в більшості інших прикладів) не здається тривіальною і самоосмисленою. (Тут я говорю про верхню ліву функцію витрат на рис. 8 (б): чому основний напрямок спрямований до точки, а не, скажімо, ? Контури будуть інше, і точка мінімізації не була б при 0!)β 1 = 1 β 1 = 0 L 12β1=1β1=0L1
Nutle
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.