Чому функції витрат використовують квадратну помилку?


73

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

Я дізнався, що існує гіпотеза, яка є:

hθ(x)=θ0+θ1x

Щоб дізнатися хороші значення параметрів та ми хочемо мінімізувати різницю між обчисленим результатом та фактичним результатом наших тестових даних. Отже ми віднімаємоθ 1θ0θ1

hθ(x(i))y(i)

для всіх від до . Отже, ми обчислюємо суму над цією різницею, а потім обчислюємо середнє, множимо суму на . Все йде нормально. Це призведе до:1 м 1i1m1m

1mi=1mhθ(x(i))y(i)

Але це не те, що було запропоновано. Натомість курс пропонує взяти квадратне значення різниці та помножити на . Тож формула така:12m

12mi=1m(hθ(x(i))y(i))2

Чому так? Чому ми тут використовуємо функцію квадрата і чому ми множимо на замість ? 112m1m


3
Питання, пов’язані з цим на сайті stats.stackexchange.com
user1205197

Також подивіться на пояснення Кріса МакКорміка на goo.gl/VNiUR5
vimdude

тому що це розбіжність Брегмана
Ендрю

Відповіді:


41

Ваша функція втрати не працює, оскільки стимулює встановлення на будь-яке кінцеве значення і до .θ1θ0

Назвемо залишкового для .r(x,y)=1mi=1mhθ(x(i))yh

Ваша мета - зробити максимально близьким до нуля , а не просто мінімізувати його . Високе негативне значення так само погано, як і високе позитивне значення.r

EDIT: Ви можете протидіяти цьому, штучно обмеживши простір параметрів (наприклад, ви хочете ). У цьому випадку оптимальні параметри лежатимуть у певних точках на межі простору параметрів. Дивіться https://math.stackexchange.com/q/896388/12467 . Це не те, чого ти хочеш.Θ|θ0|<10

Чому ми використовуємо квадратну втрату

Похибка квадрата змушує та збігатися. Він зведений до мінімуму при , якщо це можливо, і завжди , тому що це квадрат від реального числа .h(x)yu=v0uv

|uv|також буде працювати для вищезгаданої мети, як і , маючи деяке додатне ціле число. Перший з них фактично використовується (він називається втратою; ви також можете натрапити на втрату , що є іншою назвою для помилки у квадраті).(uv)2nn12

Отже, чому квадратна втрата краща за ці? Це глибоке запитання, пов’язане із зв’язком між частотою і байєсівським висновком. Коротше кажучи, помилка квадрата стосується Гауссового шуму .

Якщо ваші дані не відповідають точно всім точкам, тобто не дорівнює нулю протягом певного моменту, незалежно від того, що ви виберете (як це завжди буде на практиці), це може бути через шум . У будь-якій складній системі буде багато невеликих незалежних причин для різниці між вашою моделі і реальності : помилка вимірювання, чинники навколишнього середовища і т.д. До центральної граничної теореми (ЦПТ), загальний рівень шуму буде поширюватися Зазвичай , тобто в відповідно до Гауссова розподіл . Ми хочемо вибрати найкращеh(x)yθ h yθвраховуючи це розподіл шуму. Припустимо, , частина яку ваша модель не може пояснити, слід Гауссовому розподілу . Ми використовуємо великі літери, тому що зараз ми говоримо про випадкові величини.R=h(X)YyN(μ,σ)

Розподіл Гаусса має два параметри, середнє і дисперсія . Дивіться тут, щоб краще зрозуміти ці терміни.μ=E[R]=1mihθ(X(i))Y(i))σ2=E[R2]=1mi(hθ(X(i))Y(i)))2

  • Поміркуй , це систематична помилка наших вимірювань. Використовуйте для виправлення систематичної помилки, так що (вправа для читача). Тут більше нічого робити.μh ( x ) = h ( x ) - μ μ = E [ R ] = 0h(x)=h(x)μμ=E[R]=0

  • σ являє собою випадкову помилку , яку також називають шумом . Після того, як ми подбали про систематичний компонент шуму, як у попередньому пункті, найкращий предиктор отримується, коли зведено до мінімуму. Інакше кажучи, найкращим прогноктором є той, який має найточніший розподіл (найменшу дисперсію) навколо прогнозованого значення, тобто найменшу дисперсію. Мінімізація найменших втрат у квадраті - це те саме, що мінімізувати дисперсію! Це пояснює, чому найменший збиток працює для широкого кола проблем. Основний шум дуже часто є гауссовим через CLT, і мінімізація помилки в квадраті виявляється правильноюσ 2 = 1σ2=1mi(hθ(X(i))Y(i)))2 що робити!

Щоб одночасно враховувати як середнє, так і відхилення, ми включаємо в наш класифікатор термін зміщення (для обробки систематичної помилки ), а потім мінімізуємо втрати квадрата.μ

Подальші питання:

  • Найменша втрата квадратів = гауссова помилка. Чи відповідає будь-яка інша функція втрат також деякому розподілу шуму? Так. Наприклад, втрата (мінімізація абсолютного значення замість квадратичної помилки) відповідає розподілу Лапласа (Подивіться на формулу для PDF у інформаційному полі - це просто гаусс із замість ). Популярною втратою для розподілу ймовірностей є KL-дивергенція . -Гауссова розподіл дуже добре мотивований через теорему про центральний межа1|xμ|(xμ)21, про яку ми говорили раніше. Коли правильна модель шуму розподілу Лапласа? Є деякі обставини , коли мова йде про природу, але частіше , як регуляризатора для забезпечення розрідженості : втрати є НЕ менш опуклим серед всіх опуклих втрат.1

    • Як згадує Ян у коментарях, мінімізатор квадратних відхилень - це середнє значення, а мінімізатор суми абсолютних відхилень - медіана . Чому ми хотіли б знайти медіану залишків замість середньої? На відміну від середньої, медіану не скидає одна дуже велика чужа. Отже, втрати використовуються для підвищення надійності. Іноді використовується комбінація двох.1
  • Чи бувають ситуації, коли ми мінімізуємо як середнє, так і відхилене? Так. Подивіться Bias дисперсионного Компроміс . Тут ми розглядаємо набір класифікаторів і запитуємо, який з них найкращий. Якщо ми запитаємо, який набір класифікаторів є найкращим для проблеми, важливе значення має мінімізація як зміщення, так і відхилення. Виявляється, що між ними завжди є компроміс, і ми використовуємо регуляризацію для досягнення компромісу.hθH

Щодо терміна12

1/2 не має значення і насправді, ні - вони обидві константи. Оптимальне значення залишатиметься однаковим в обох випадках.mθ

  • Вираз для градієнта стає гарнішим з , оскільки 2 з квадратного члена скасовується.12

    • Коли ми пишемо код або алгоритми, ми зазвичай більше стурбовані градієнтом, тому це допомагає зберігати його стисло. Ви можете перевірити прогрес, просто перевіривши норму градієнта. Сама функція втрати іноді опускається з коду, оскільки вона використовується лише для перевірки остаточної відповіді.
  • корисний , якщо ви вирішити цю проблему з допомогою градієнтного спуску. Тоді ваш градієнт стає середнім доданків замість суми, тому його масштаб не змінюється, коли ви додаєте більше точок даних.mm

    • Я раніше стикався з цією проблемою: я тестую код з невеликою кількістю очок, і він працює добре, але коли ви тестуєте його з усім набором даних, втрачається точність і іноді надмірно / недостатньо перетікає, тобто ваш градієнт стає nanабо inf. Щоб цього уникнути, просто нормалізуйте кількість wrt точок даних.
  • Ці естетичні рішення використовуються тут для підтримки узгодженості з майбутніми рівняннями, де ви додасте терміни регуляризації . Якщо ви включите , параметр регуляризації не залежатиме від розміру набору даних і він буде більш інтерпретованим через проблеми.mλm


Ви сказали: "Коли ви берете похідну, вираз буде краснішим, тому що 2 скасовує 2 із квадратного терміна". Але чому ми хочемо взяти його похідну?
DrGeneral

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

1
Суворо, пробачте, наївно, але чому б не використовувати абсолютне значення замість квадрата?
Олександр Сурафель

1
Абсолютна помилка також може спрацювати, але в такому випадку ви повернетесь до очікуваної медіани замість середньої. Візьміть невеликий список цифр і подивіться, як відрізняються втрати, змістивши оцінку (як у квадраті, так і в абсолютній помилці)
Ян ван дер Вегт

@AlexanderSuraphel Вибачте за затримку з відповіддю :) Я додав розділ вище, щоб вирішити цю проблему
Суворий

25

Коефіцієнт 1/2 - це лише для зручності; це робить похідну, яка є функцією, яка фактично оптимізована, виглядати приємніше. 1 / м є більш фундаментальним; це говорить про те, що нас цікавить середня помилка квадрата. Це дозволяє проводити справедливі порівняння при зміні розміру вибірки та запобігає переповненню. Так звані "стохастичні" оптимізатори використовують підмножину набору даних (m '<m). Коли ви вводите регуляризатор (додаток до цільової функції), використання коефіцієнта 1 / м дозволяє використовувати той же коефіцієнт для регулятора, незалежно від розміру вибірки.

Що стосується питання, чому квадрат, а не просто різниця: ви не хочете, щоб заниження були покарані аналогічно завищенням? Квадратура усуває дію ознаки помилки. Прийняття абсолютного значення (норма L1) теж є, але його похідне не визначено за походженням, тому воно потребує більшої складності для використання. Норма L1 має свою користь, тому пам’ятайте про це і, можливо, поцікавтесь у вчителя, чи він збирається її покрити.


4
Крім диференційованості, норма є унікальною для норм тим, що це простір Гільберта. Той факт, що норма виникає із внутрішнього продукту, робить для величезну кількість машин, які не доступні для інших норм. L p L 2L2LpL2
Стівен Губкін

6

Міра помилки у функції втрат - це «статистична відстань»; на відміну від популярного та попереднього розуміння відстані між двома векторами в евклідовому просторі. За допомогою «статистичної відстані» ми намагаємось відобразити «невідповідність» між оцінною моделлю та оптимальною моделлю на евклідовий простір.

Не існує обмежувального правила щодо формулювання цієї "статистичної відстані", але якщо вибір є відповідним, то прогресивне зменшення цієї "відстані" під час оптимізації означає перехідне вдосконалення оцінки моделі. Отже, вибір "статистичної відстані" або міри помилки пов'язаний з базовим розподілом даних.

Насправді існує кілька чітко визначених заходів відстані / помилок для різних класів статистичних розподілів. Доцільно вибирати міру помилок, виходячи з розподілу даних у руці. Так буває, що розподіл Гаусса є всюдисущим, і, отже, пов'язаний з ним міра відстані, L2-норма - найпопулярніший показник помилок. Однак це не правило, і існують дані реального світу, для яких "ефективна" * оптимізаційна реалізація повинна прийняти інший показник помилок, ніж норма L2.

Розглянемо безліч розбіжностей Брегмана . Канонічне подання цієї міри розбіжності - норма L2 (помилка квадрата). Вона також включає відносну ентропію (розбіжність Кульбека-Ліблера), узагальнену евклідову відстань (метрика махаланобіса) та функцію Ітакура-Сайто. Детальніше про це ви можете прочитати в цьому документі про функціональну дивергенцію Брегмана та байєсівську оцінку розподілів .

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

* "Відповідна" міра помилок зробила б функцію втрат опуклою для оптимізації, що дуже корисно, на відміну від іншого вимірювання помилок, коли функція втрати не випукла і, таким чином, вкрай складна.


5

На додаток до ключових моментів, зроблених іншими, використання квадратичної помилки робить більший наголос на більшій помилці (що трапляється з 1/2, коли ви розподіляєте її проти 3/2?).

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

Використання квадратичної помилки використовує помилку як мається на увазі важливість ваги для коригування прогнозування.


Отже, яка довільна помилка
jeza

3

У своїй формулюванні ви намагаєтеся отримати середнє відхилення вашого наближення від спостережуваних даних.

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

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

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