Як баєси перевіряють свої методи, використовуючи методи моделювання Монте-Карло?


11

Передумови : я маю доктор наук із соціальної психології, де теоретична статистика та математика ледь не висвітлювалися в моїх кількісних курсових роботах. Через школу середньої та середньої школи мене викладали (як, мабуть, багато хто з вас і в соціальних науках) через "класичну" частотистську структуру. Тепер, я теж люблю R і з допомогою методів моделювання , щоб перевірити , що методи роботи робить шляхбільше сенсу для мене, ніж математичні докази (знову ж таки: передумови в кількісній суспільствознавстві, а не теоретична статистика). Часті методи та методи моделювання разом складають для мене тону сенсу. Тому що часто відвідувачі бачать ймовірність як довгострокові шанси (наприклад, якщо я це роблю довільно велику кількість разів, і це відбувається 50% часу, то ймовірність 50%). Ми можемо моделювати цей довгий біг методами Монте-Карло!

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

Введіть Майо : Поміркувавши, що "Баєсіан - це, мабуть, шлях майбутнього" на деякий час, я прочитав " Статистичні умовиводи Дебора Майо" як серйозні випробування . Вона каже, що не вибирає сторону на початку книги, але це робить: вона є частою партією, і багато книг захищає частоталістичні методології. Я не хочу обов'язково вступати в дискусію про те, чи ми вважаємо, чи дійсно те, як вона бачить докази, дійсне, але це змусило мене задуматися: чи справді Байєс все, що рекламується? Я маю на увазі, натовп Байєса настільки розбитий, що я навіть не знаю "правильного" способу часто аналізувати дані в байєсівських рамках. Зазвичай я б просто користувавсяrstanarmі представити точкові оцінки та достовірні інтервали ..., які часто тісно узгоджуються з частофілістськими оцінками та довірчими інтервалами. Я можу зробити порівняння моделей, але я завжди боюся описувати фактори Байєса як заднє порівняння ймовірностей тощо.

Більше роздумів : Про що я продовжував думати в книзі Майо: «Існує спосіб, за допомогою якого можна використовувати комп’ютери, щоб переконатись, що наші частістські методи працюють, тому що ймовірність - це те, що ми бачимо в довгостроковій перспективі, і ми можемо імітувати це. Байєси навіть не можуть погодитись, яка ймовірність насправді, здається, залежно від байєсівської школи (за замовчуванням, суб'єктивної тощо). Що призводить мене до мого питання:

Питання : Яким чином байєси перевіряють, що їх методи правильно визначають невизначеність (тобто обчислюють дійсні достовірні інтервали та задній розподіл), використовуючи методи моделювання Монте-Карло, якщо ймовірність не визначається як швидкість у довгостроковій перспективі?

Приклад : я створюю генератор даних. Це просто буде імітувати розподіл Бернуллі з вірогідністю .5:

set.seed(1839)
p <- .50
n <- 100
gen_dat <- function(n, p) {
  rbinom(n, 1, p)
}

Тепер, скажімо, я хочу переконатися, що інтервали довіри в логістичній регресії справді дійсні. Я можу симулювати регресію у великій кількості разів і переконатися, що фактична цінність населення падає на 95% довірчий інтервал 95% часу. Це лише модель перехоплення, тому я просто хочу переконатися, що я pправильно оцінюю:

set.seed(1839)
iter <- 10000
results <- sapply(seq_len(iter), function(zzz) {
  mod <- glm(gen_dat(n, p) ~ 1, binomial)
  conf <- suppressMessages(confint(mod))
  log(p / (1 - p)) < max(conf) & log(p / (1 - p)) > min(conf)
})
mean(results)

На це потрібно кілька хвилин, але ми закінчуємо mean(results)дзвінок, який нам надає 0.9416. Це близько 95%, і я впевнено кажу, що glmкоманда справедливо описує невизначеність. Я впевнений, що наблизився би прямо до носа на 95%, якби я піднявся iterі хотів довше почекати тут на своєму ноутбуці.

З іншого боку, давайте підходимо байєсівській моделі для того ж самого:

library(rstanarm)
set.seed(1839)
dat <- data.frame(y = gen_dat(n, p))
stan_mod <- stan_glm(y ~ 1, binomial, dat)
summary(stan_mod)

Частково це дає мені:

Estimates:
                mean   sd    2.5%   25%   50%   75%   97.5%
(Intercept)    -0.1    0.2  -0.5   -0.2  -0.1   0.0   0.3  
mean_PPD        0.5    0.1   0.3    0.4   0.5   0.5   0.6  
log-posterior -73.0    0.7 -75.1  -73.1 -72.7 -72.5 -72.5  

Оскільки байєси не визначають ймовірність як те, що ми бачимо в довгостроковій перспективі, як я можу використовувати методи моделювання для перевірки, ніж stan_glm точно фіксує невизначеність? Тобто, як я можу повірити, що ці достовірні інтервали дійсні, використовуючи методи моделювання? І зараз я навіть не визначаю пріоритету - як тут буде грати включення пріорів, оскільки це вплине на наші заходи невизначеності?

Коли я намагався один раз записати бета-регресію з компонентом моделі перешкод у Стен з нуля, мені хтось порекомендував: "Імітуйте дані. Зробіть це багато разів, і справжні оцінки повинні бути в достовірному проміжку приблизно 95 % часу ". Але для мене це суперечить тому, в що вірять байєси! Це покладається на часті розуміння ймовірності! Отже, як би переконав мене баєс у тому, що я отримую надійний інтервалsummary() дзвінка до моєї моделі, точно описує невизначеність, використовуючи методи моделювання?

Мета питання : Це банальний приклад, але багато разів клієнти надають мені складні проблеми. І я пробую речі, які мені незнайомі, тому я часто проводжу імітаційне дослідження, щоб переконатися, що те, що я роблю, є дійсним. Якби я писав на Стенті користувальницьку модель, як би я знав, що те, що я роблю, це законно? Як я міг використати методи моделювання, щоб переконатися, що те, що я роблю в Стен, насправді збирається сказати мені, що я хочу знати?


3
Гарне питання. Два коментарі: 1. Ми можемо використовувати сим-методи для «перевірки» частофілістських моделей, але одне лише моделювання не може повністю повідомити нас про надійність частолістської моделі. 2: Існують способи знати, що модель Байєса / Стана НЕ надійна для висновку. Наприклад, розбіжні переходи спостерігалися після періоду розминки.
JTH

1
Я думаю, що ви плутаєте два різні види "невизначеності". Часті методи використовують справу з алеторною невизначеністю і виправдовуються їх довготривалими властивостями. Байєсівські методи мають справу з епістемічною невизначеністю і їх не потрібно обґрунтовувати на основі їх довготривалих властивостей. Зокрема, 95% достовірних інтервалів не повинні бути довірчими інтервалами 95%. Тим не менш, навіть байєси можуть побажати бути «каліброваними», тобто відповідати частотам імовірностей. Див .: Рубін, ДБ. "Байєсіанські обгрунтовані та відповідні обчислення частоти для
прикладу

якщо ви живете в суб'єктивної ймовірності світі може бути , вам не потрібно , щоб перевірити все, що ви ніколи не помиляється
аксакал

Ви можете поглянути на stats.stackexchange.com/questions/2272/…, щоб побачити, чому ви не можете робити те, що ви думаєте робити, принаймні на інтервали.
Дейв Харріс

Відповіді:


5

Я думаю, ви бачите логічну проблему у своєму питанні. У парадигмі частолістської ідеї чудово припускати популяційну істину, генерувати дані та дивитись, чи оцінки мають хороше висвітлення, адже саме так вони і повинні робити. Однак у парадигмі Байєса немає основної істини для отримання даних! Байєси задають дані про істинність даних даних, тому для моделювання нам потрібні різні істини, які породжують дані і потім обумовлюють дані. На практиці доводиться моделювати закон умовної ймовірності, який, на щастя, завжди відповідає визначенню. Цю проблему я зайняв у «Rouder, 2014», «Психономічний вісник» та «Огляд». https://dx.doi.org/10.3758/s13423-014-0595-4


1

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

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

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

π(θ|х)=f(Х|θ)π(θ)θΘf(Х|θ)π(θ)гθ,
f(Х|θ)π(θ)f(Х|θ)π(θ|Х)сум до однієї. Мета MCMC - визначити нижнє число. Зверніть увагу, що нижнє число є постійною. Це очікувана ймовірність.

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

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

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

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

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

θΘf(Х|θ)π(θ)гθ.

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

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

Пр(мк)=N(7,22)σ2N(25,.12)

По-п’яте, і ви повинні зробити це, перш ніж почати Стен, в першу чергу, намітити свої граничні ймовірності в одному або двох вимірах. Чи є десь сюрпризи, які можуть заважати алгоритму?

Оскільки байєси не визначають ймовірність як те, що ми бачимо в довгостроковій перспективі, як я можу використовувати методи моделювання, щоб перевірити, чим stan_glm точно фіксує невизначеність? Тобто, як я можу повірити, що ці достовірні інтервали дійсні, використовуючи методи моделювання? І зараз я навіть не визначаю пріоритету - як тут буде грати включення пріорів, оскільки це вплине на наші заходи невизначеності?

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

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

EDIT Я зрозумів, що не дав жодної конкретної відповіді. Це було до питання

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

Х

p1-pp{1/3,1/2,2/3}

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

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

Н0:p=1/3,

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

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

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

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

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

Знову ж таки, якщо у вас немає справжнього попередника, то чому ви використовуєте байєсівський метод?


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