В настоящее время я читаю "книгу" вероятностного программирования и байесовских методов для хакеров . Я прочитал несколько глав, и я думал о первой главе, где первый пример с pymc состоит из обнаружения точки ведьмы в текстовых сообщениях. В этом примере случайная величина, указывающая, когда происходит точка переключения, указывается с помощью . После шага MCMC заднее распределение задано:
Во-первых, из этого графика можно извлечь то, что почти на 50% вероятность того, что точка переключения произошла на 45-й день. Хотя что, если бы не было точки переключения? Вместо того, чтобы предполагать, что существует точка переключения, а затем пытаться ее найти, я хочу определить, существует ли на самом деле точка переключения.
Автор отвечает на вопрос «произошла ли точка переключения»: «Если бы не произошло никаких изменений, или если бы изменение было постепенным с течением времени, последующее распределение было бы более распространенным». Но как вы можете ответить на это с вероятностью, например, есть вероятность 90%, что точка переключения произошла, и есть вероятность 50%, что это произошло в день 45.
Нужно ли менять модель? Или можно ответить с текущей моделью?
источник
Ответы:
У SeanEaster есть несколько полезных советов. Байесовский фактор может быть сложно вычислить, но в PyMC2 есть несколько хороших постов в блоге, специально посвященных байесовскому фактору.
Тесно связанный вопрос - это соответствие модели. Справедливый метод для этого - просто проверка - авторы могут дать нам свидетельство соответствия. Как цитата:
Это правда. Задняя точка довольно пик около времени 45. Как вы говорите,> 50% массы находится в 45, тогда как если бы не было точки переключения, масса должна (теоретически) быть ближе к 1/80 = 1,125% в момент времени 45.
То, что вы намереваетесь сделать, это точно восстановить набор данных наблюдений, учитывая вашу модель. В Главе 2 они представляют собой модели генерации поддельных данных. Если ваши наблюдаемые данные сильно отличаются от ваших искусственных данных, то, скорее всего, ваша модель не подходит.
Я прошу прощения за нестандартный ответ, но на самом деле это главная трудность, которую я не смог эффективно преодолеть.
источник
Это скорее вопрос сравнения моделей: интерес заключается в том, лучше ли объясняет данные модель без точки переключения, чем модель с точкой переключения. Один из подходов к ответу на этот вопрос состоит в том, чтобы вычислить байесовский фактор моделей с и без точки переключения. Короче говоря, фактор Байеса - это отношение вероятностей данных в обеих моделях:
Также обратите внимание, что в контексте MCMC вышеуказанные интегралы будут заменены суммами значений параметров из цепочек MCMC. Более подробное рассмотрение байесовских факторов с примерами доступно здесь .
источник