Могу ли я проверить достоверность ранее предоставленных данных?

10

проблема

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

В этом вопросе мне интересно узнать, как оценить априор. Предыдущие вопросы охватывали механизм постановки информированных приоров ( здесь и здесь .)

В следующих случаях может потребоваться переоценка предыдущего:

  • данные представляют собой крайний случай, который не был учтен при
  • ошибки в данных (например, если данные даны в единицах g, а предшествующее - в кг)
  • неправильный априор был выбран из набора доступных априоров из-за ошибки в коде

В первом случае априоры, как правило, все еще достаточно диффузны, так что данные обычно будут подавлять их, если только значения данных не лежат в неподдерживаемом диапазоне (например, <0 для logN или Gamma). Другие случаи - ошибки или ошибки.

Вопросов

  1. Есть ли какие-либо проблемы, связанные с достоверностью использования данных для оценки предшествующего уровня?
  2. какой-либо конкретный тест лучше всего подходит для этой проблемы?

Примеры

Вот два набора данных, которые до этого плохо соответствовали поскольку они относятся к совокупности с (красный) или (синий).logN(0,1)N(0,5)N(8,0.5)

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

введите описание изображения здесь

 set.seed(1)
 x<- seq(0.01,15,by=0.1)
 plot(x, dlnorm(x), type = 'l', xlim = c(-15,15),xlab='',ylab='')
 points(rnorm(50,0,5),jitter(rep(0,50),factor =0.2), cex = 0.3, col = 'red')
 points(rnorm(50,8,0.5),jitter(rep(0,50),factor =0.4), cex = 0.3, col = 'blue')
Дэвид Лебауэр
источник

Ответы:

4

Вам должно быть понятно, что вы подразумеваете под «предыдущим». Например, если вас интересует мое предыдущее мнение об ожидаемой продолжительности жизни в Великобритании, это не может быть ошибкой. Это моя вера! Это может быть несовместимо с наблюдаемыми данными, но это совсем другое дело.

Также контекст имеет значение. Например, предположим, что мы заинтересованы в населении чего-то. Мой предыдущий утверждает, что это количество должно быть строго неотрицательным. Однако данные были обнаружены с ошибкой, и мы имеем отрицательные измерения. В этом случае априор не является недействительным, это просто априор для скрытого процесса.

Чтобы ответить на ваши вопросы,

  1. Есть ли какие-либо проблемы, связанные с достоверностью использования данных для оценки предшествующего уровня?

Пурист будет утверждать, что вы не должны использовать данные дважды. Тем не менее, прагматичный человек просто возразит, что вы недостаточно задумывались о предшествующем.

2 Какой конкретный тест лучше всего подходит для этой проблемы?

Это действительно зависит от рассматриваемой модели. Я полагаю, что самое простое можно сравнить предыдущий диапазон с диапазоном данных.

csgillespie
источник
спасибо за ваш ответ, особенно на # 1 полезно. Для теста я думал об этом, но диапазон большинства априорных значений будет иметь предел в , поэтому я подумал о том, чтобы, возможно, сравнить границы интервалов квантилей, например, отправить предупреждение, если: 80-й квантиль данных> 99-й квантиль из предыдущего или если: любые данные больше, чем 100-10e-log (n) -й квантиль), хотя мне пришлось бы поиграться с числами, чтобы я уловил правильные ошибки.
Дэвид Лебауэр
3

Вот мои два цента:

  1. Я думаю, что вы должны быть обеспокоены более чем параметрами, связанными с коэффициентами.

  2. Вы говорите об информативном априоре, но я думаю, что вы должны предупредить пользователей о том, что такое разумный неинформативный априор. Я имею в виду, что иногда норма с нулевым средним и дисперсией 100 довольно неинформативна, а иногда она информативна, в зависимости от используемых шкал. Например, если вы регрессируете заработную плату на высотах (сантиметрах), то вышеизложенное достаточно информативно. Однако, если вы регрессируете логарифмическую заработную плату на высотах (метрах), то вышеизложенное не является информативным.

  3. Если вы используете априор, который является результатом предыдущего анализа, т. Е. Новый априор на самом деле является старым апостериором предыдущего анализа, то все иначе. Я предполагаю, что это на всякий случай.

Маноэль Галдино
источник
не могли бы вы уточнить пункт 1? в отношении пункта 2, как уже упоминалось в ФП, меня не очень интересует этот вопрос о том, как установить предыдущий; пункт 3: многие из информированных априоров основаны на анализе доступных данных (подбирая подходящее распределение к данным), тогда как другие основаны на экспертных знаниях (обычно они менее ограничены).
Дэвид Лебауэр
Предположим, вы подходите для такой модели, как: y ~ a + b * x / z. Если нет никаких ограничений на значения Z (если они могут быть положительными или отрицательными), то трудно понять, чего ожидать от сигнала от b. Более того, если Z может быть около нуля, то b может быть слишком низким или слишком большим. Это может сделать ваш предыдущий необоснованным. Смотрите эту запись в блоге Гельмана: stat.columbia.edu/~cook/movabletype/archives/2011/06/…
Маноэль Гальдино
№ 3: Как указано, будьте осторожны при использовании данных дважды. Например, на тонком уровне иерархическая модель, а другая - выбрать априор, который согласуется с вероятностью. В дальнейшем я буду заниматься таким анализом. Я вижу выбор априора в качестве инструмента регуляризации.
Маноэль Гальдино