Виявлення комутації з імовірнісним програмуванням (pymc)


9

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

По-перше, що можна дізнатись із цього графіка, - це майже 50% поширення, що точка перемикання відбувається в день 45. Хоча що, якби не було пункту комутації? Замість того, щоб припускати, що існує пункт перемикання, а потім намагатися його знайти, я хочу виявити, чи є насправді пункт перемикання.

Автор відповідає на запитання "чи відбулася точка переключення", "Якби не сталося жодних змін чи зміни були б поступовими, задній розподіл був би більш розповсюдженим". Але як ви можете відповісти на це з можливістю поширення, наприклад, є 90% шансів, що комутатор відбудеться, і є 50% шансів, що він відбудеться на 45 день.τ

Чи потрібно змінювати модель? Чи можна відповісти на це поточною моделлю?


Згадування автора книги @ Cam.Davidson.Pilon, який може мати кращу відповідь, ніж моя нижче.
Шон Пасха

Відповіді:


6

У SeanEaster є кілька хороших порад. Коефіцієнт Байєса важко обчислити, але в PyMC2 є кілька хороших публікацій в блозі, спеціально для фактора Байєса.

Закрито пов'язане питання - це корисність моделі. Справедливим методом цього є лише перевірка - плакати можуть дати нам свідчення про корисність. Як цитується:

"Якби жодна зміна не відбулася або якби зміни були поступовими, задній розподіл був би більш розповсюдженим"τ

Це правда. Задня частина досягає свого піку майже під час 45. Як ви кажете> 50% маси припадає на 45, тоді як, якщо не було точки перемикання, маса повинна (теоретично) бути ближчою до 1/80 = 1,125% під час 45.

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

Прошу вибачення за недоброзичливу відповідь, але насправді це основна складність, яку я не подолав ефективно.


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

1
Наприклад, підходить модель: λ1p+λ2(1p), де p=1/(1+exp(βt))? Це, на мій погляд, спрацювало б і дозволило б плавно переходити. Ви правильні, що висновок проβнахил може визначити, чи існує точка перемикання. Мені це дуже подобається, ви повинні вивчити його більше.
Cam.Davidson.Pilon

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

2

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

K=Pr(D|M1)Pr(D|M2)=Pr(θ1|M1)Pr(D|θ1,M1)dθ1Pr(θ2|M2)Pr(D|θ2,M2)dθ2

Якщо є моделлю, що використовує точку комутації, а - модель без, то високе значення для можна інтерпретувати як сильне перевагу моделі комутації. (Пов'язана вище стаття у Вікіпедії дає вказівки щодо того, які значення K мають на увазі.)M1M2K

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

До питання обчислення ймовірності точки перемикання, що еквівалентно вирішенню для . Якщо вважати рівними апріорами для двох моделей, то задні шанси моделей еквівалентні коефіцієнту Байєса. (Див. Слайд 5 тут .) Тоді це лише питання вирішення для використанням коефіцієнта Байєса та вимоги, що для n (ексклюзивні) модельні події, що розглядаються.P(M1|D)P(M1|D)i=1nP(Mi|D)=1

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