Як SVM може «знайти» нескінченний простір, де завжди можливий лінійний поділ?


36

В чому полягає інтуїція того факту, що SVM з гауссовим ядром має кінцевий розмірний простір функцій?


1
Я не дуже розумію питання. Ви хочете пояснити, чому відповідний простір функцій є нескінченним розміром або інтерпретація того, що означає результуюча гіперплан?
Marc Claesen

1
Я б не проти слухати обох!
user36162

5
Я думаю, що це цікаве питання (+1)

Відповіді:


39

Ця відповідь пояснює наступне:

  1. Чому ідеальне розділення завжди можливо з чіткими точками та ядром Гаусса (достатньо малої пропускної здатності)
  2. Як цей поділ може бути інтерпретований як лінійний, але лише в абстрактному просторі, який відрізняється від простору, де живуть дані
  3. Як "знайдено" відображення з простору даних у простір. Спойлер: SVM його не знайдено, воно неявно визначається вибраним вами ядром.
  4. Чому простір функцій є нескінченним.

1. Досягнення ідеальної розлуки

Ідеальне розділення завжди можливо з ядром Гаусса (за умови, що два пункти у різних класів ніколи не є абсолютно однаковими) через властивості локалізації ядра, які призводять до довільно гнучкої межі рішення. Для досить невеликої пропускної здатності ядра межа рішення буде виглядати так, що ви просто намалювали невеликі кола навколо точок, коли вони потрібні для розділення позитивних та негативних прикладів:

Щось на зразок цього

(Кредит: онлайн-курс машинного навчання Ендрю Нг ).

Отже, чому це відбувається з математичної точки зору?

Розглянемо стандартне налаштування: у вас є ядра Гаусса і навчальні дані , де значення . Ми хочемо вивчити функцію класифікатора( x ( 1 ) , y ( 1 ) ) , ( x ( 2 ) , y ( 2 ) ) , , ( x ( n ) , y ( n ) ) y (K(x,z)=exp(||xz||2/σ2)(x(1),y(1)),(x(2),y(2)),,(x(n),y(n)) ±1y(i)±1

y^(x)=iwiy(i)K(x(i),x)

Тепер, як ми коли-небудь призначимо ваги ? Чи потрібні нам нескінченні розмірні простори та алгоритм квадратичного програмування? Ні, тому що я просто хочу показати, що я можу відмінно розділити бали. Тож я роблю в мільярд разів менше, ніж найменше розділенняміж будь-якими двома прикладами навчання, і я просто встановив . Це означає, що всі навчальні бали - це мільярд сигм, наскільки це стосується ядра, і кожна точка повністю контролює знак у своєму районі. Формально у нас є σ | | x ( i ) - x ( j ) | | ж я = 1 уwiσ||x(i)x(j)||wi=1y^

y^(x(k))=i=1ny(k)K(x(i),x(k))=y(k)K(x(k),x(k))+iky(i)K(x(i),x(k))=y(k)+ϵ

де - якесь довільно крихітне значення. Ми знаємо, що крихітний, тому що знаходиться на мільярд сигм від будь-якої іншої точки, тому для всіх ми маємоϵ x ( k ) i kϵϵx(k)ik

K(x(i),x(k))=exp(||x(i)x(k)||2/σ2)0.

Оскільки настільки малий, напевно має такий самий знак, як , і класифікатор досягає ідеальної точності на даних тренувань.у ( х ( до ) ) у ( до )ϵy^(x(k))y(k)

2. Навчання ядра SVM як лінійне розділення

Той факт, що це можна інтерпретувати як "ідеальне лінійне розділення у нескінченному просторовому просторі ознак", походить від хитрості ядра, яка дозволяє інтерпретувати ядро ​​як внутрішній продукт у (потенційно нескінченномірному) просторі функцій:

K(x(i),x(j))=Φ(x(i)),Φ(x(j))

де - відображення з простору даних у простір функцій. З цього випливає, що функція як лінійна функція в просторі функцій:у ( х )Φ(x)y^(x)

y^(x)=iwiy(i)Φ(x(i)),Φ(x)=L(Φ(x))

де лінійна функція визначена у векторах простору функцій якvL(v)v

L(v)=iwiy(i)Φ(x(i)),v

Ця функція лінійна в тому що це лише лінійна комбінація внутрішніх добутків із фіксованими векторами. У просторі функцій межами рішення є просто , набір рівня лінійної функції. Це саме визначення гіперплану в просторі функцій.у ( х ) = 0 л ( v ) = 0vy^(x)=0L(v)=0

3. Розуміння простору відображення та функцій

Примітка. У цьому розділі позначенняпосилається на довільний набір збалів, а не на дані тренувань. Це чиста математика; дані тренінгу взагалі не включаються до цього розділу! nx(i)n

Методи ядра ніколи фактично не «знаходять» або «обчислюють» простір функцій або відображення чітко. Методи навчання ядра, такі як SVM, не потребують їх роботи; вони потрібні тільки функції ядра .КΦK

Однак, можна записати формулу для . Простір функцій, на який відображається є абстрактним (і потенційно нескінченномірним), але по суті, для відображення просто використовується ядро, щоб зробити просту інженерію функцій. Що стосується кінцевого результату, модель, в якій ви закінчуєте навчання, використовуючи ядра, нічим не відрізняється від традиційної інженерії функцій, яка широко застосовується в лінійній регресії та моделюванні GLM, як прийняття журналу позитивної змінної предиктора перед подачею його у формулу регресії. Математика здебільшого лише там, щоб гарантувати, що ядро ​​добре грає з алгоритмом SVM, який має свої оцінені переваги вкрай і масштабування для великих наборів даних.ΦΦΦ

Якщо ви все ще зацікавлені, ось як це працює. По суті, ми беремо особу, яку ми хочемо зберегти, та побудуйте простір і внутрішній продукт таким чином, щоб він міг визначатись. Для цього ми визначаємо абстрактний векторний простір де кожен вектор є функцією від простору, в якому живуть дані, , до реальних чисел . Вектор в - це функція, утворена з кінцевої лінійної комбінації зрізів ядра: Зручно писати більш компактно, як У Й Р е V е ( х ) = п Σ я = 1 α я До ( х ( я ) , х ) е е = п Σ я = 1 α i K x ( i ) K xΦ(x),Φ(y)=K(x,y)VXRfV

f(x)=i=1nαiK(x(i),x)
f
f=i=1nαiKx(i)
де - це функція, що дає "фрагмент" ядра в .xKx(y)=K(x,y)x

Внутрішній продукт у просторі - це не звичайний крапковий продукт, а абстрактний внутрішній продукт на основі ядра:

i=1nαiKx(i),j=1nβjKx(j)=i,jαiβjK(x(i),x(j))

З таким простором, визначеним таким чином, - це відображення , переносячи кожну точку до "фрагмента ядра" в цій точці:XV xΦXVx

Φ(x)=Kx,whereKx(y)=K(x,y).

Ви можете довести, що - це внутрішній простір продукту, коли - ядро, яке є позитивним. Докладніше див. У цьому документі. (Kudos to f copenpens for show it this!)КVK

4. Чому простір функції нескінченномірний?

Ця відповідь дає приємне пояснення лінійної алгебри, але ось геометрична перспектива з інтуїцією та доказом.

Інтуїція

Для будь-якої фіксованої точки нас є функція зрізу ядра . Графік - це просто гауссова шишка, зосереджена в . Тепер, якби простір функцій був лише кінцевим розміром, це означало б, що ми можемо взяти кінцевий набір ударів у фіксованому наборі точок і сформувати будь-який гауссовий удар в будь-якому іншому місці. Але очевидно, що ми не можемо це зробити; ви не можете зробити нову шишку зі старих шишок, тому що нова шишка може бути дуже далекою від старої. Отже, незалежно від того, скільки функціональних векторів (ударів) у нас є, ми завжди можемо додавати нові удари, а в просторі функцій - це нові незалежні вектори. Тому простір функцій не може бути кінцевим розміром; це повинно бути нескінченним.K z ( x ) = K ( z , x ) K z zzKz(x)=K(z,x)Kzz

Доказ

Ми використовуємо індукцію. Припустимо, у вас є довільний набір точок такий, що вектори лінійно незалежні в просторі функцій. Тепер знайдіть точку відмінну від цих точок, насправді мільярд сигм від усіх них. Ми стверджуємо, що лінійно незалежний від перших функціональних векторів . Φ( x ( i ) ) x ( n + 1 ) nΦ( x ( n + 1 ) )nΦ( x ( i ) )x(1),x(2),,x(n)Φ(x(i))x(n+1)nΦ(x(n+1))nΦ(x(i))

Доведення протиріччям. Припустимо, навпаки, що

Φ(x(n+1))=i=1nαiΦ(x(i))

Тепер візьміть внутрішній продукт з обох сторін з довільним . По ідентичності отримуємоФ ( г ) , Ф ( х ) = К ( г , х )xΦ(z),Φ(x)=K(z,x)

K(x(n+1),x)=i=1nαiK(x(i),x)

Тут є вільною змінною, тому це рівняння є тотожністю, що свідчить про те, що дві функції однакові. Зокрема, йдеться про те, що Гаусс із центром у може бути представлений як лінійна комбінація гауссів у інших точках . Геометрично очевидно, що не можна створити гауссову шишку, зосереджену в одній точці, від кінцевої комбінації гауссових шишок, зосереджених в інших точках, особливо коли всі ці інші гаусові шишки розташовані в мільярді сигм. Отже, наше припущення про лінійну залежність призвело до суперечності, як ми маємо на меті показати.x ( n + 1 ) x ( i )xx(n+1)x(i)


6
Ідеальне розлучення неможливо. Контрприклад: (0,0, ClassA), (0,0, ClassB). Удачі, розділивши цей набір даних!
Аноні-Мус

4
Це ... технічно правильно, найкращий вид правильний! Майте нагороду. Я додам записку в дописі.
Пол

3
(Думаю, ваша думка має сенс, якщо вам потрібна мінімальна відстань між зразками різних класів. Можливо, варто зазначити, що в цьому сценарії SVM стає класифікатором найближчого сусіда)
Anonymous-Mousse

1
Я розглядаю лише випадок обмеженого навчального набору, тому завжди існує мінімальна відстань між балами, як тільки нам надають навчальний набір із яти різних точок, з якими потрібно працювати. n
Пол

@Paul Щодо вашого розділу 2, у мене є питання. Нехай є представником у нашій RKHS для точки навчання а для довільної нової точки так що , так що функція для деякого . Для мене це схоже на те, що версія простору функцій знаходиться в просторі стовпців для лінійної регресії і саме звідси походить лінійність. Чи відповідає цей опис точним? Я все ще дуже вивчаю цей RKHS матеріал. х ( я ) до й й у ( х ) = Σ я ш я у ( я )до я , до й= Σ я ш я у ( я ) K я ( х ) у = Σ я г я K я г яR у Йkix(i)kxxy^(x)=iwiy(i)ki,kx=iwiy(i)ki(x)y^=izikiziRy^X
jld

12

Ядро матриці ядра Гаусса завжди має повний ранг для відмінних . Це означає, що щоразу, коли ви додаєте новий приклад, ранг збільшується на . Найпростіше це побачити, якщо встановити дуже мало. Тоді матриця ядра майже діагональна. 1σx1,...,xm1σ

Те, що ранг завжди збільшується на один, означає, що всі проекції у просторі характеристик лінійно незалежні (не ортогональні, а незалежні). Тому кожен приклад додає новий вимір до діапазону проекцій . Оскільки ви можете додавати незліченно нескінченно багато прикладів, простір функцій повинен мати нескінченний розмір. Цікаво, що всі проекції вхідного простору в простір зображень лежать на кулі, оскільки . Тим не менш, геометрія сфери плоска. Більше про це можна прочитати вΦ ( х 1 ) , . . . , Φ ( х м ) | | Φ ( x ) | | ² H = k ( x , x ) = 1Φ(x)Φ(x1),...,Φ(xm)||Φ(x)||H²=k(x,x)=1

Burges, CJC (1999). Геометрія та інваріантність методів на основі ядра. У B. Schölkopf, CJC Burges та AJ Smola (ред.) Досягнення в галузі методів ядра підтримують векторне навчання (с. 89–116). MIT Press.


Я все ще не розумію цього, але ви все-таки заробили нагороду :)
stmax

Ти маєш на увазі, ти не розумієш, чому геометрія плоска або чому вона нескінченна? Дякую за підсумки.
fabee

Якщо у мене є 100 прикладів, чи є мій простір функцій 100-мірним або вже нескінченним? Чому я можу додавати "незліченно" нескінченно багато прикладів? Хіба це не рахується нескінченність? Чому тут має значення чисельний / незліченний? Я навіть навіть не намагався думати про "плоску сферу": D Дякую за ваші пояснення!
stmax

5
Я сподіваюся, ви мені повірите, що кожен новий приклад лінійно незалежний від усіх раніше (крім одного і того ж ). У ви не можете цього зробити: Кожна точка, що перевищує повинна лінійно залежати від інших. Для гауссових РКХС, якщо у вас є 100 різних прикладів, вони охоплюють 100-мірний підпростір нескінченного простору. Отже, проміжок є кінцевим розміром, але простір функцій, в якому вони живуть, є нескінченним. Нескінченність незліченна, тому що кожна нова точка в - це новий вимір, і в є незліченно багато точок . R n n R n R nxRnnRnRn
fabee

@fabee: Я спробував це по-іншому, ти, здається, знаєш багато про це, чи можеш ти поглянути на мою відповідь, чи я зрозумів це більш-менш «правильно»?

5

Для передісторії та позначень я посилаюся на відповідь Як обчислити межу рішення з векторів підтримки? .

Таким чином, особливості в просторі "оригінал" - це вектори , двійковий результат а множники Лагранжа - .xiyi{1,+1}αi

Відомо, що ядро ​​можна записати як (' ' являє собою внутрішній добуток.) ​​Де - (неявна і невідома) перетворення в новий простір.K(x,y)=Φ(x)Φ(y)Φ

Я спробую дати деяке «інтуїтивне» пояснення того, як виглядає ця , тому ця відповідь не є офіційним доказом, вона просто хоче дати певне відчуття, як я думаю, що це працює. Не соромтеся виправити мене, якщо я помиляюся. Підставою для мого пояснення є розділ 2.2.1 цього PDFΦ

Я повинен "перетворити" простір моїх функцій (так що мій ) в якийсь "новий" простір, в якому буде вирішено лінійне розділення.xi

Для кожного спостереження я визначаю функції , тому у мене є функція для кожного елемента мого навчального зразка. Ці функції охоплюють векторний простір. Векторний простір, що охоплюється , відзначте його . ( - розмір зразка для навчання).xiϕi(x)=K(xi,x)ϕiϕiϕiV=span(ϕi,i=1,2,N)N

Я спробую стверджувати, що цей векторний простір - це векторний простір, в якому можливе лінійне розділення. V За визначенням прольоту кожен вектор у векторному просторі може бути записаний як лінійна комбінація , тобто: , де - дійсні числа. Отже, насправдіVϕii=1NγiϕiγiV={v=i=1Nγiϕi|(γ1,γ2,γN)RN}

Слід зазначити , що є координатами вектора в векторному просторі .(γ1,γ2,γN)vV

N - розмір навчального зразка, і тому розмірність векторного простору може до , залежно від того, чи лінійно незалежні. Оскільки (див. Вище, ми визначили таким чином), це означає, що розмірність залежить від використовуваного ядра і може підходити до розміру навчальної вибірки.VNϕiϕi(x)=K(xi,x)ϕV

Якщо ядро ​​'досить складне', то буде незалежним, і тоді розмірність буде , розмір навчальної вибірки.ϕi(x)=K(xi,x)VN

Перетворення, яке відображає мій вихідний простір функцій у , визначається якV

Φ:xiϕi(x)=K(xi,x) .

Ця карта відображає мій вихідний простір зображень на векторний простір, який може мати розмірність, що відповідає розміру мого навчального зразка. ΦОтже відображає кожне спостереження в моїй навчальній вибірці у векторному просторі, де функціонують вектори. Вектор з мого навчального зразка 'відображається' на вектор у , а саме вектор з координатами, рівними нулю, крім - координати дорівнює 1.ΦxiVϕii

Очевидно, що це перетворення (a) залежить від ядра, (b) залежить від значень у навчальному зразку, і (c) може залежно від мого ядра мати розмірність, що відповідає розміру мого навчального зразка та ( г) вектори виглядають як , де - дійсні числа.xiVi=1Nγiϕiγi

Дивлячись на функцію у розділі Як обчислити межу рішення з векторів підтримки? видно, що . Межа рішення, знайдена SVM, є .f(x)f(x)=iyiαiϕi(x)+bf(x)=0

Іншими словами, - лінійна комбінація а - лінійна роздільна гіперплан у просторі : це особливий вибір а саме ! f(x)ϕi f(x)=0Vγiγi=αiyi

У відомі з наших спостережень є множниками Лагранжа , що SVM знайшла. Іншими словами, SVM виявляє, використовуючи ядро ​​і вирішуючи задачу квадратичного програмування, лінійне розділення у просторі.α i VyiαiV

Це моє інтуїтивне розуміння того, як «фокус ядра» дозволяє «неявно» перетворити оригінальний простір функцій у новий простір функцій з іншим виміром. Цей параметр залежить від ядра, яке ви використовуєте, і для ядра RBF цей параметр може перевищувати розмір навчальної вибірки. Оскільки навчальні зразки можуть мати будь-який розмір, це може піднятися до "нескінченності" . Очевидно, що в дуже великих розмірних просторах ризик переобладнання збільшиться.V

Отже, ядра - це техніка, яка дозволяє SVM трансформувати ваш простір функцій. Дивіться також, Що робить ядро ​​Гаусса таким магічним для PCA, а також загалом?


+1 це суцільно. Я переклав цей матеріал у власному стилі експозиції та додав його до своєї відповіді.
Пол

5

На жаль, пояснення fcop є досить невірним. Перш за все він говорить: "Відомо, що ядро ​​можна записати як ... де ... - це (неявна і невідома) трансформація в новий простір функцій". НЕ невідомо. Насправді це простір, на який відображені функції, і це простір, який може бути нескінченним розміром, як у випадку RBF. Все, що ядро ​​робить, це взяти внутрішній добуток цього трансформованого векторного ознаки з перетвореним вектором ознак тренінгового прикладу і застосувати деяку функцію до результату. Таким чином, це неявно представляє цей вектор більш високого розміру. Подумайте, наприклад, написати (x + y) ^ 2 замість x ^ 2 + 2xy + y ^ 2. Тепер подумайте, який нескінченний ряд представлений неявно експоненціальною функцією ... там у вас є нескінченний простір функцій.

Правильний спосіб думати про SVM - полягає в тому, що ви відображаєте свої функції в можливо нескінченний розмірний простір характеристик, який, мабуть, неявно представлений у ще одному кінцевому розмірі простору "Ядро", розмір якого може бути таким же, як розмір навчального набору.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.