tgoop.com/abba_testing/70
Last Update:
Понимаем процедуру последовательного тестирование mSPRT, часть-4
Проблему SPRT, - точное значение HA, - решила модификация за авторством Роббинса в 1970 (!) и которую применили в 2015.
В примере части-3 у нас были исторические данные. Cейчас: у нас есть исторические данные по проведенным тестам, в рамках которых мы способы подсчитать средний положительный эффект и его дисперсию. Если у вас таких данных нет, штош, "подбирайте" свой приор (бич Байеса)
Но допустим, они в наличии: у нас есть возможность аппроксимировать распределение эффекта, приора, с этим средней и отклонением τ. А где распределение (чаще нормальное), там и вероятность.
1) Тут для простоты пускай распределение будет буквально из трех значений θ_A=[1%, 2%, 3%], отклонение τ, c соотв-щими вероятностями P(θ_A)=[0.25, 0.5, 0.25]
2) Что если при получении новых данных, применяя частично Байеса, перевзвешивать P(θ_A)?
Частично это значит вот что: в примере про лето была формула, когда мы переоценивали вероятность жаркого лета при жарком мае:
P(Ж.Лето|Ж.Май) = P(Ж.Май|Ж.Лето)*P(Ж.Лето) / P(Ж.Май)
Уберем знаменатель:
P(Ж.Лето|Ж.Май) ~ P(Ж.Май|Ж.Лето)*P(Ж.Лето)
Собственно, вот.
В текущем кейсе:
P(θ_A|data) ~ L(data|θ_A)*P(θ_A)
2) Что если вместо значений только B использовать всевозможные разницы между А и B?
A = [100]
B = [101]
B - A = [1]
Эффект = 1%
(более сложный пример далее)
3) При этом для знаменателя θ_0 = 0, нет эффекта
4) То есть у нас в числителе будет L(data|θ_A)*P(θ_A), а в знаменателе только L(data|θ_0 = 0)
L(data|θ_A)*P(θ_A)/L(data|θ_0 = 0)
Пока забудем про *P(θ_A) ->
подсчитаем L(data|θ_A)/L(data|θ_0 = 0), где θ_A=[1%, 2%, 3%]
5) Полученное значение разницы B-А в процентом виде = 1%, считаем L-ки:
5.1. θ_A_1 = 1% - строит распределение со средним = 1% с отклонением τ и смотрим
L(data=1|θ_A=1) = 0.5 (тут и далее данные из головы)
Рассмотрим cо стороны знаменателя:
L(data=1|θ_A=0) = 0.2
Поделим, как это было в SPRT:
L(data=1|θ_A=1)/L(data=1|θ_A=0) = 0.5/0.2 = 2.5
5.2. По аналогии для θ_A_2 = 2%:
L(1|θ_A=2) = 0.2 - тут у нас среднее = 2% с отклонением τ
L(1|θ_A=2)/L(data=1|θ_A=0) = 0.2/0.2 = 1
5.3. По аналогии для θ_A_3 = 3%:
L(1|θ_A=3) = 0.1
L(1|θ_A=3)/L(data=1|θ_A=0) = 0.1/0.2 = 0.5
6) вспоминаем про *P(θ_A)
= [результат 5.1*P(θ_A=1), результат 5.2*P(θ_A=2), результат 5.3*P(θ_A=3)]
= [2.5*0.25, 1*0.5, 0.5*0.25] = [0.625, 0.5, 0.125] -> тут НЕ обязательно должно равно быть единице, переходим в п.7
—-
Для любознательных, если бы не было бы деления и нам надо было бы пересчитать постериор (редко показывают в учебниках):
P(θ_A|data) ~ L(data|θ_A)*P(θ_A)
P(θ_A|data) = [ L(data|θ_A=1)*P(θ_A=1), L(data|θ_A=2)*P(θ_A=2), L(data|θ_A=3)*P(θ_A=3) ] =
= [0.5*0.25, 0.2*0.5, 0.1*0.25] = [0.125, 0.1, 0.025] -> в сумме нет 1 и вот тут это проблема
Чтобы у нас получились корректные вероятности с суммой 1, нужно нормализовать каждое значение на их сумму 0.125+0.1+0.025 =0.25 -> [0.125/0.25, 0.1/0.25, 0.025/0.25] = [0.5, 0.4, 0.1] ~ наш новый P(θ_A), помним, что считали приблизительно.
—-
7) Дальше суммируем [0.625, 0.5, 0.125] = 1.25 -> это мы с вами получили оценку для Λ
Нам бы знак суммы в формуле: L(data|θ_A)*P(θ_A)/L(data|θ_0 = 0), но так как на самом деле θ_A распределяется не так [1%, 2%, 3%], а так [1%, 1.00001%, .... 3%] (так как величина непрерывная), то мы делаем по сути суммирование по бесконечно малому приращению, а это, - ВНЕЗАПНО, - интеграл:
Отсюда полная формула это:
∫ П[ L(all_data|θ_A) / L(all_data|θ_0]*P( θ_A) dθ_A
Обратите внимание: сначала мы считаем поддержку, - L(all_data|θ_A) / L(all_data|θ_0, - в пользу альтернативной гипотезы, заданной распределением, а после делаем умножение с P(θ_A).
Последнее важно сделать, так как в сущности это смягчение оценки поддержки HA с учетом приора этого же HA. Без этого это было бы тоже самое, что, подкинув пару раз монетку, сделать уверенный вывод, что она честная/нечестная; приорные знания оттормаживают наши скороспелые выводы. Без них алгоритм работал бы не лучше правила "вижу значимость - останавливаю". Ну, в целом, это к вопросу, как mSPRT контролирует ошибку 1-го рода
BY Не AБы какие тесты
Share with your friend now:
tgoop.com/abba_testing/70