Оцінка невизначеності у великомірних задачах висновку без вибірки?


9

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

Я дуже хотів би мати можливість зробити деяку оцінку невизначеностей щодо параметрів моделі на додаток до знаходження оцінки ПДЧ.

Ми можемо ефективно обчислити градієнт log-posterior щодо параметрів, тому в довгостроковій перспективі ми прагнемо використовувати Hamiltonian MCMC для певної вибірки, але наразі мене цікавлять оцінки, що не ґрунтуються на вибірці.

Єдиний підхід, про який я знаю, - це обчислити інверсію Гессіана в режимі наближення заднього як багатофакторний нормальний, але навіть це здається нездійсненним для такої великої системи, оскільки навіть якщо ми обчислимо елементи Гессі Я впевнений, що ми не змогли знайти його зворотну сторону.4×106

Хтось може підказати, які типи підходів використовуються у таких випадках?

Дякую!

EDIT - додаткова інформація про проблему

Передумови
Це зворотна проблема, пов'язана з великим фізичним експериментом. У нас є 2D трикутна сітка, яка описує деякі фізичні поля, а параметри нашої моделі - це фізичні значення цих полів у кожній вершині сітки. У сітці є близько 650 вершин, і ми моделюємо 3 поля, тож звідси беруться наші 2000 модельних параметрів.

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

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

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

Набір
даних Набір даних складається з 500x500 зображень, і є по одному зображення для кожної камери, тому загальна кількість даних 500x500x4 = .106

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

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

Для відтворення даних є два етапи; спочатку ми маємо змоделювати світло, яке надходить із плазми на сітку, потім ми маємо змоделювати це світло назад до зображення камери.

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

Припустимо, і є функціями швидкості (яку ми оцінюємо за допомогою інтерполяції), тоді випромінювання в -й вершині mesh задається де - 3 поля, які ми моделюємо на сітці. Отримати вектор викидів до зображення камери досить просто, це просто множення на матрицю яка кодує, які частини сітки переглядає кожен піксель камери.R1R2iЕi

Еi=R1(хi,уi)+ziR2(хi,уi)
(х,у,z)Г

Оскільки помилки є Гауссом, то ймовірність журналу для цієї конкретної камери є

L=-12(ГЕ-г)Σ-1(ГЕ-г)

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

Попередній приклад
У нас є різні пріори, які ефективно встановлюють певні верхні та нижні межі в різних кількостях, але вони, як правило, не надто сильно впливають на проблему. У нас є одна попередня дія, яка діє сильно, що ефективно застосовує згладжування лаплаціанського типу до полів. Він також приймає форму Гаусса:

журнал-пріоритет=-12хSх-12уSу-12zSz


1
Яка модель вам підходить? Лінійна регресія? GP? Ієрархічна модель підрахунку? Байєсова калібрування комп'ютерної моделі? Будь ласка, додайте більше деталей щодо проблеми, яку ви вирішуєте, і я напишу відповідь із плюсами та мінусами VI.
DeltaIV

1
@DeltaIV Я оновив питання ще трохи інформації - можливо, я не уточнив, що саме ви шукали. Якщо так, дайте мені знати, і я зроблю ще одну редакцію, дякую!
CBowman

1
@DeltaIV Ще раз дякую! Додано більше інформації, повідомте мені, чи є ще щось, що я можу додати.
CBowman

1
@DeltaIV зображення даних 500x500, і є по одній для кожної камери, тому загальна кількість даних 500x500x4 = . Дані функції швидкості обчислюються лише один раз - ми зберігаємо їх, потім будуємо з неї сплайн, коли запускається код, а потім цей сплайн використовується для всіх оцінок функції. 106
CBowman

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

Відповіді:


4

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

г=у=(у1,,уN), N=106

бути вашим вектором спостережень (даних) та

х=θ=(θ1,,θp)у=ϕ=(ϕ1,,ϕp)z=ρ=(ρ1,,ρp), p650

ваші вектори параметрів, загальний розмір . Потім, якщо я правильно зрозумів, ви припускаєте модельг=3p2000 рік

у=Гr1(θ,ϕ)+ρГr2(θ,ϕ))+ϵ, ϵN(0,ЯN)

де - матриця інтерполяції сплайну сплайна.ГN×г

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


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

HMC

2000 параметрів - не дуже велика модель, якщо ви не тренуєте цю річ на ноутбуці. Набір даних більший ( точок даних), але все-таки, якщо у вас є доступ до хмарних екземплярів або машин з графічними процесорами, такі рамки, як Pyro або Tensorflow Probability, скоротять таку проблему. Таким чином, ви можете просто використовувати Гамільтоніан Монте-Карло, що працює на GPU.106

Плюси : "точний" висновок, в межах нескінченної кількості зразків з ланцюга.

Мінуси : похибка оцінки не обмежена, діагностичні показники множинної конвергенції не існують, але жодна не є ідеальною.

Велике наближення вибірки

Зловживаючи позначеннями, позначимо через вектор, отриманий шляхом об'єднання трьох ваших векторів параметрів. Тоді, використовуючи байєсівську теорему про граничну границю (Бернштейн-фон Мізес), ви могли наблизити до , де - значення "істинного" параметра, - оцінка MLE а - матриця інформації Фішера, що оцінюється на . Звичайно, невідомий, ми будемо використовуватиθp(θ|у)N(θ0^н,Ян-1(θ0))θ0θ0^нθ0Ян-1(θ0)θ0θ0Ян-1(θ0^н)замість цього. Обгрунтованість теореми Бернштейна фон Мізеса залежить від кількох гіпотез, які ви можете знайти, наприклад, ось тут : у вашому випадку, якщо припустити, що є гладкими та диференційованими, теорема справедлива, оскільки підтримка Гаусса попереднє - це весь простір параметрів. Або, що краще, було б справедливо, якби ваші дані були насправді ідентичними, як ви припускаєте, але я не вірю, що вони є, як я пояснював на початку.R1,R2

Плюси : особливо корисно в випадок. Гарантована конверсія до правильної відповіді, в налаштуваннях iid, коли ймовірність є рівною та диференційованою, а попередня - ненульовою в околиці .p<<Nθ0

Мінуси : Найбільшим недоліком, як ви зазначали, є необхідність інвертувати інформаційну матрицю Фішера. Крім того, я б не знав, як судити про точність наближення емпіричним шляхом, не використовуючи пробник MCMC для отримання зразків з . Звичайно, це перешкоджає насамперед корисності використання B-vM.p(θ|у)

Варіативні умовиводи

В цьому випадку, замість того , щоб знайти точний (що зажадає обчислення idimensional інтеграла), ми вибираємо приблизний з , де належить до сімейства параметрів індексованого параметром вектор . Шукаємо st деяку міру розбіжності між і мінімізовано. Вибираючи цей захід як дивергенцію KL, ми отримуємо метод варіаційного висновку:p(θ|у)г-pqϕ(θ)qQϕϕϕqp

ϕ=аrгмiнϕΦDКL(qϕ(θ)||p(θ|у))

Вимоги до :qϕ(θ)

  • це повинно бути диференційованим щодо , щоб ми могли застосовувати методи для масштабної оптимізації, наприклад, стохастичний градієнт спуску, для вирішення проблеми мінімізації.ϕ
  • він повинен бути досить гнучким, щоб він міг точно наближати для деякого значення , але також досить простий, з якого його легко зробити вибірку. Це тому, що для оцінки розбіжності KL (наша мета оптимізації) необхідна оцінка wrt очікування .p(θ|у)ϕq

Ви можете вибрати який буде повністю розподілений , тобто добуток одновимірного розподілу ймовірностей:qϕ(θ)г

qϕ(θ)=i=1гqϕi(θi)

це так званий метод варіаційного значення Байєса середнього поля . Можна довести (див., Наприклад, глава 10 цієї книги ), що оптимальним рішенням для кожного з факторів єqϕj(θj)

журналqj(θj)=Еij[журналp(у,θ)]+const

де - спільний розподіл параметрів і даних (у вашому випадку це продукт вашої ймовірності Гаусса та пріоритетів Гаусса над параметрами), і очікування щодо інших варіативних одновимірні розподіли . Звичайно, оскільки рішення одного з факторів залежить від усіх інших факторів, ми мусимо застосувати ітераційну процедуру, ініціалізуючи всі розподіли до деяких початкових здогадок, а потім ітеративно оновивши їх один одночасно з рівнянням вище. Зауважте, що замість обчислення очікування вище якp(у,θ)q1(θ1),,qj-1(θj-1),qj+1(θj+1),,qг(θг)qi(θi)(г-1)-мірний інтеграл, який був би непосильним у вашому випадку, коли пріори та ймовірність не поєднуються, ви можете використовувати оцінку Монте-Карло, щоб наблизити очікування.

Алгоритм Variational Bayes середнього поля не є єдиним можливим VI алгоритмом, який ви могли використовувати: Варіаційний автокодер, представлений у Kingma & Welling, 2014, " Автокодування коду варіаційного байєса " є цікавою альтернативою, де замість того, щоб приймати повністю факторизовану форму для , а потім виведення виразу закритої форми для , вважається багатоваріантним гауссом, але з можливо різними параметрами в кожній з точок даних. Для амортизації вартості висновку нейронна мережа використовується для відображення вхідного простору до простору змінних параметрів. Докладний опис алгоритму див. У статті: реалізація VAE знову доступна у всіх основних рамках Deep Learning.qqiqN


що модель незалежності VB може бути жахливим підходом до заходів точності . Зазвичай це приблизне значення для плагіну без коригування. прості приклади не використовують у вас коригування "ступеня свободи"с2і використовуючи звичайний, а не t розподіл. Особливо проблема для гіпер параметрів
ймовірність відомості

@DeltaIV Статистична модель, як правило, досить хороша, помилки між різними камерами дуже незалежні, і різні пікселі в одній камері також будуть в основному незалежними, якщо вони не є буквально сусідніми. Ми могли б кодувати деяку просторову кореляцію в сусідніх пікселях, використовуючи ймовірність процесу Гаусса, але це вимагало б від нас безпосередньо перевернути коваріаційну матрицю, або вирішити розріджену лінійну систему кожен раз, коли ми хочемо оцінити ймовірність, що набагато більше дорого (хоча і не йдеться).
CBowman

2

ви можете перевірити частину програмного забезпечення "bayesX", а можливо, і програмне забезпечення "inla". у них обох, швидше за все, є деякі ідеї, які ви можете спробувати. Google це

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

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