Наскільки значущим є зв’язок між MLE та крос-ентропією у глибокому навчанні?


12

Я розумію , що даний набір m незалежних спостережень максимального правдоподібності оцінювач (або, що еквівалентно, карта з плоскою / рівномірної до) , який ідентифікує параметрів , які виробляють розподіл моделі що найкраще відповідає цим спостереженнямO={o(1),...,o(m)}θpmodel(;θ)

θML(O)=pmodel(O;θ)=argmaxθi=1mpmodel(o(i);θ)

або, що зручніше

θML(O)=argminθi=1mlogpmodel(o(i);θ)

і подивіться роль, яку може відіграти θML при визначенні функції втрат для багатокласних нейронних мереж, в якій θ відповідає досяжним параметрам мережі (наприклад, θ={W,b}) а спостереження - пари активацій вводу x та відповідні правильні мітки класів y[1,k] , o(i) = { x(i),y(i) }, взявши

pmodel(o(i);θ)pmodel(y(i)|x(i);θ)


Я не розумію, як це стосується так званої "перехресної ентропії" (векторизованого) правильного виводу, та відповідних вихідних активацій мережі , який використовується на практиці при вимірюванні помилки / втрати під час тренування . Є кілька суміжних питань:y(i)a(x(i);θ)

H(o(i);θ)=y(i)loga(x(i);θ)


Активації "як ймовірності"

Одним із кроків у встановленні зв’язку між MLE та перехресною ентропією є використання вихідних активацій "як би" вони є ймовірностями. Але мені незрозуміло, що вони є, або принаймні, що вони є.all

При обчисленні помилки тренінгу, зокрема, називаючи це "перехресною втратою ентропії", - передбачається, що (після нормалізації активації необхідно скласти суму до 1)

(1)pmodel(o(i);θ)ay(i)(x(i);θ)

або

logpmodel(o(i);θ)=logay(i)(x(i);θ)

щоб ми могли писати

(3)logpmodel(o(i);θ)=y(i)loga(x(i);θ)

і, таким чином

θML(O)=argminθi=1mH(o(i);θ)

Але хоча це, безумовно, робить ймовірністю (наскільки це все є), це не встановлює обмежень щодо інших активацій.ay(i)(x(i);θML)

Чи можна насправді вважається PMFs у цьому випадку? Чи є щось, що робить насправді не ймовірними (а просто "люблять" їх) )?ay(i)(x(i);θML)ay(i)(x(i);θML)


Обмеження до категоризації

Найважливіший крок вище у зрівнянні MLE з крос-ентропією повністю покладається на "гарячу" структуру яка характеризує (однозначну) багатокласну проблему навчання. Будь-яка інша структура для унеможливить з до .y(i)y(i)(1)(3)

Чи обмежено рівняння MLE та мінімізацію перехресної ентропії лише випадками, коли є "гарячими"? y(i)


Різні ймовірності навчання та прогнозування

Під час прогнозування це майже завжди так

(2)pmodel(y(i)|x(i);θ)P(argmaxj[1,k]aj(x(i);θ)=y(i))

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

ay(i)(x(i);θML)=P(argmaxj[1,k]aj(x(i);θML)=y(i))

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


Ентропія та теорія інформації

Навіть якщо припустити , що вищевказані проблеми вирішуються і активації поважних Файли PMF (або можуть осмислено розглядатися як такі), так що роль перехресної ентропією в обчисленні є безпроблемним, це не ясно мені, чому корисно чи змістовно говорити про ентропію , оскільки ентропія Шенона застосовується до конкретної вид кодування , який не використовується тим, хто навчається в мережі.θMLa(x(i);θML)

Яку роль відіграє інформаційно-теоретична ентропія в інтерпретації функції витрат, на відміну від просто надання інструменту (у формі перехресної ентропії) для обчислення такої (що відповідає MLE)?

Відповіді:


5

Нейронні мережі не обов'язково надають ймовірності як вихідні дані, але вони можуть бути розроблені для цього. Щоб трактуватись як ймовірності, набір значень повинен бути невід’ємним та сумувати до одиниці. Проектування мережі для виведення ймовірностей зазвичай дорівнює вибору вихідного рівня, який накладає ці обмеження. Наприклад, у проблемі класифікації для класів загальним вибором є вихідний шар softmax з одиницями. Функція softmax змушує результати невід'ємних результатів і сума до одиниці. - й вихідний блок дає можливість того, що клас . Для проблем бінарної класифікації ще одним популярним вибором є використання одного вихідного блоку з логістикоюkkjjфункція активації. Вихід логістичної функції між нулем і одиницею і дає ймовірність того, що клас дорівнює 1. Імовірність того, що клас дорівнює 0, неявно одна мінус цього значення. Якщо мережа не містить прихованих шарів, то ці два приклади еквівалентні багаточленній логістичній регресії та логістичній регресії відповідно.

Поперечна ентропія вимірює різницю між двома розподілами ймовірностей і . Коли перехресна ентропія використовується як функція втрат для дискримінаційних класифікаторів, і це розподіли по мітках класів з урахуванням вхідних даних (тобто конкретної точки даних). - "справжній" розподіл, а - розподіл, передбачений моделлю. У типових проблемах класифікації кожен вхід у набір даних асоціюється з цілою міткою, що представляє справжній клас. У цьому випадку ми використовуємо емпіричний розподіл дляH(p,q)pqpqpqp. Це просто призначає ймовірність 1 справжньому класу точки даних, а ймовірність 0 - всі інші класи. - розподіл ймовірностей класів, передбачених мережею (наприклад, як описано вище).q

Скажімо, дані є iid, - емпіричний розподіл, а - прогнозований розподіл (для ї точки даних). Тоді мінімізація перехресних ентропійних втрат (тобто усереднених по точках даних) еквівалентна максимальній ймовірності даних. Доказ відносно простий. Основна ідея полягає в тому, щоб показати, що втрата перехресної ентропії пропорційна сумі негативних прогнозованих імовірностей журналу точок даних. Це виходить акуратно через форму емпіричного розподілу.piqiiH(pi,qi)

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

Щоб вирішити деякі інші особливості вашого питання:

Різні ймовірності навчання та прогнозування

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

Ентропія Шенона застосовується до певного виду кодування, який не використовується при навчанні мережі.

Перехресна ентропія може бути інтерпретована як кількість біт на повідомлення, необхідне (в середньому) для кодування подій, отриманих з істинного розподілу , якщо використовується оптимальний код для розподілу . Перехресна ентропія приймає мінімальне значення (ентропія Шеннона ), коли . Чим краще відповідність між іH(p,q)pqH(p)pq=pqp, тим коротша довжина повідомлення. Навчання моделі для мінімізації перехресної ентропії можна розглядати як тренування для кращого наближення до справжнього розподілу. У контрольованих проблемах навчання, як ми обговорювали, модель дає розподіл ймовірностей щодо можливих результатів, враховуючи вхідні дані. Явне пошук оптимальних кодів для розподілу не є частиною процесу.


"Це не робиться для навчання з використанням крос-втрати ентропії." Саме так softmax_cross_entropy_with_logitsроблять такі API, як TensorFlow : вони обчислюють і, таким чином, яка визначає мережу, "створену" для отримання ймовірностей (принаймні, у місці розташування мітки). Ні? argminθi=1mH(o(i);θ)θML(O)
orome

Так, перехресна ентропія зведена до мінімуму, а ймовірність - максимальна (принаймні локально). У цьому реченні я мав на увазі рівняння в розділі "різні ймовірності навчання та прогнозування". Подивившись ще раз, мені незрозуміло, що саме ви маєте на увазі під тими рівняннями, тому я просто скажу так: якщо ви використовуєте вихідний шар, де кожна одиниця дає ймовірність класу (наприклад, softmax). Модельні ймовірності однакові під час тренувань та прогнозування. pmodel(y(i)=jx(i);θ)=aj(x(i);θ)
користувач20160

Я розумію , що одні й ті ж значення використовуються - тобто, вчений використовуються для передбачення - але вони використовуються по - різному. Ймовірність того, що модель дізнається для справді , але ймовірність того, що буде спрогнозована навченою моделлю у відповідь на той же вхід, є . Вони не однакові, якщо (2) не відповідає дійсності. apmodel(y(i)|x(i);θML)ay(i)(x(i);θML)y(i)x(i)P(argmaxj[1,k]aj(x(i);θML)=y(i))
orome

І (перше запитання) я розумію це тому, що через роль, визначену в ек. (1), яку відіграє для максимізації , то значення є ймовірності (не тому , що softmax, який лише запевняє, що вони додадуть до 1). Але це не обмежує іншого ; (крім того, що вони дорівнюють ). Тож я не бачу, як як отвір можна вважати PMF. ay(i)(x(i);θ)pmodel(O;θ)ay(i)(x(i);θML)ajjy(i)1ay(i)a(x(i);θML)
orome

Ще один спосіб зробити точку першого питання полягає в тому, що лише коли-небудь беруть участь у процесі ML, і тому лише вони можуть вважатися ймовірними. І хоча відповідна функція активації (наприклад, softmax) гарантує, що сума решти активацій буде ймовірною, зв'язки між будь-якими з них не мають значення. ay(i)
orome

3

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

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

Однак, я думаю, що ви бачите (і це правильно), це те, що вихідні "ймовірності" можуть не мати нічого спільного з фактичною вірогідністю правильності . Це добре відома проблема в ML, яка називається калібрування . Наприклад, якщо ваш класифікатор собак і котів каже , ви б очікували, що якби ви взяли набір прикладів всіх, хто мав , то приблизно 30% вхідних даних буде неправильно класифіковано (оскільки це впевненість лише у 70%).fθDCfθ(xi,C)=P(xi=C|θ)=0.7S={xj} P(xj=C|θ)=0.7

Однак виявляється, що сучасні методи навчання цього зовсім не нав'язують! Див. Гуо та ін, Про калібрування сучасних нейронних мереж, щоб побачити деяке обговорення цього питання.

Іншими словами, "ймовірність" виходу з softmax цілком може не мати нічого спільного з реальною впевненістю моделі. І це не дивно: ми просто хочемо максимально підвищити нашу точність, і кожен вхідний приклад має ймовірність 1 бути його цільовим класом. Мало стимулює модель для досягнення цього права. Якщо не потрібно оцінювати невизначеність, то навіщо це робити? Перехресна ентропія не виправляє це питання; Дійсно, ви говорите йому щоразу переходити до функції дельти!

Багато останніх робіт над нейромережами Байєса намагаються виправити це питання. Такі моделі використовують розподіл за параметрами, заданими даними , які можна інтегрувати для отримання фактичного розподілу ймовірності . Це допомагає гарантувати корисні вимірювання невизначеності та кращу калібрування. Однак обчислювально більш проблематично.P(θ|X)=P(X|θ)P(θ)/P(X)P(yi|xi,X)=P(yi|θ,xi)P(θ|X)dθ

Сподіваюся, я не зрозумів ваше запитання!


Приємна пов’язана робота: arxiv.org/abs/1711.01297
user3658307

0

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

У 1991 р. Річард та Ліппман довели, що нейронні мережі, що рухаються вперед, наближаються до ймовірностей заднього класу, коли навчаються з {0,1} цільовими моделями класу-індикатора [ Richard MD, & Lippmann RP (1991). Класифікатори нейронної мережі оцінюють ймовірність байезіанських і післяотеріальних. Нейрові обчислення, 3, 461–483. ]. У своїй лінії підтвердження вони використовують нейронні нейромережі, що передаються в один прихований шар.

У математичній анотації Duda & Hart [ Duda RO & Hart PE (1973) Класифікація шаблону та аналіз сцен, Wiley ] визначте розподіли функцій, надані як вхідний вектор до нейронної мережі подачі вперед, як , де, наприклад, вектор даних дорівнює , для завдання класифікації з 4 змінними ознак. Індекс вказує на можливі класів, .P(xωi)x=(0.2,10.2,0,2)ini{1,,n}

Класифікатор нейронної мережі, що подає вперед, вивчає задні ймовірності, , коли навчається градієнтному спуску. Бажаний вихідний зразок повинен, наприклад, бути для двокласової проблеми класифікації. Нейронна мережа подачі вперед має один вихідний вузол на клас. Вектор вказує на те, що спостережуваний функціональний вектор належить до 2-го класу.P^(ωix)o=(0,1)(0,1)


Це не питання.
orome

0

Імовірність журналу безпосередньо не пов'язана з ентропією в контексті вашого запитання. Подібність поверхове: обидва мають суми логарифмів імовірнісних величин.

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

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


Чи можете ви виділити, на яку частину питання стосується цього питання?
orome

Як я кажу в ОП, зрозуміло, що використання журналу в другому способі вираження MLE - це просто зручність (ваші перші два абзаци). І ваш останній абзац просто каже, що присутність журналу у виразі для ентропії має сенс - в контексті ентропії (зокрема фізики). Але те, чого бракує (і це питання), є виправданням для зв’язку цих двох різних (і справжніх) спостережень. Я не бачу жодного, крім рівняння після (3), корисного способу виразити друге рівняння для MLE. Можливо, це ви говорите?
orome

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

Так, називаючи це ентропією або припускаючи, що має значення дистрибуції (для яких "ентропія" дає будь-яке розуміння) вводять в оману . ay(i)(x(i);θML)
ороме

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