Здесь вы найдете все упражнения и ответы к ним. Для некоторых упражнений есть несколько способов решения, поэтому я дам как минимум один вариант.
У1. Перепишите утверждения ниже, используя математическую нотацию из этой главы:
• вероятность дождя низкая;
• вероятность дождя при условии облачности высокая;
• вероятность, что вы с зонтом при условии дождя выше, чем просто вероятность, что вы с зонтом.
О1.
У2. Запишите, используя математические обозначения из этой главы, данные из такой истории. Придумайте гипотезу, объясняющую эти данные.
Вы приходите домой с работы и замечаете, что дверь открыта, а окно разбито. Войдя, вы видите, что вашего ноутбука нет на месте.
О2. Сначала необходимо описать наши данные с помощью переменной:
D= дверь открыта, окно разбито, ноутбук отсутствует.
Эти данные представляют три факта, которые вы наблюдали по прибытии домой. Непосредственным объяснением этих данных является то, что вас ограбили! Математически это можно выразить так:
H1= вас ограбили!
Теперь мы можем выразить это в виде «Вероятность увидеть все это при условии, что вас ограбили», следующим образом:
P (D | H1).
У3. Дополним историю выше новыми данными. Покажите, как новая информация меняет ваши представления, и придумайте новую гипотезу для объяснения данных. Используйте обозначения из этой главы!
К вам подбегает соседский ребенок и долго извиняется, что случайно попал камнем в ваше окно. Он говорит, что заметил ноутбук и испугался, что его украдут. Открыв дверь, он унес его к себе до вашего прихода.
О3. Теперь у нас есть другая гипотеза о наблюдаемых данных:
H2= ребенок случайно разбил окно и взял ноутбук на хранение.
Мы можем выразить это следующим образом:
P (D | H2) >> P (D | H1).
И ожидаем получить:
Конечно, вы можете подумать, что ребенок тот еще шутник и все в округе знают его как хулигана. Это может изменить ваше мнение о том, насколько правдоподобно его объяснение, и привести к гипотезе о том, что он украл ноутбук. В процессе чтения этой книги вы узнаете больше о том, как это можно отразить математически.
У1. Какова вероятность бросить два шестигранных кубика и получить в сумме больше 7?
О1. Существует 36 возможных способов бросить два кубика (если считать, что единица и шестерка отличаются от шестерки и единицы). Можно выписать все на бумаге (или найти способ сделать это с помощью кода, что будет быстрее). Пятнадцать пар из этих 36 больше 7. Таким образом, вероятность получения значения больше 7 составляет 15/36.
У2. Какова вероятность бросить три шестигранных кубика и получить в сумме больше 7?
О2. При трех бросках существует 216 различных возможных результатов. Вы можете записать их на листе бумаги, и это допустимо, но займет довольно много времени. Вы можете понять, почему изучение основ написания кода полезно, поскольку есть масса программ (даже запутанных), которые можно написать для решения этой проблемы. Например, мы можем найти ответ с помощью этого простого набора циклов for в R:
count <- 0
for(roll1 in c(1:6)){
for(roll2 in c(1:6)){
for(roll3 in c(1:6)){
count <- count + ifelse(roll1+roll2+roll3 > 7,1,0)
}
}
}
Счетчик равен 181, поэтому вероятность того, что выпадет больше 7, равна 181/216. Но как уже отмечалось, существует множество способов вычислить это значение. Альтернативой является эта единственная (трудно читаемая!) строка R-кода, которая выполняет то же самое, что и цикл for:
sum(apply(expand.grid(c(1:6),c(1:6),c(1:6)),1,sum) > 7)
При обучении программированию вы должны сосредоточиться на получении правильного ответа, а не на использовании определенного подхода для его получения.
У3. Играют команды «Янки» и «Ред Сокс». Вы — преданный фанат «Соксов» и заключаете с другом пари на их выигрыш. Если «Соксы» проиграют — вы платите другу 30 долларов, если выиграют — друг платит вам 5 долларов. Какую вероятность вы присвоили гипотезе, что «Ред Сокс» выиграет?
О3. Мы видим, что предполагаемые шансы победы «Ред Сокс» составляют:
.
Вспоминая нашу формулу для преобразования шансов в вероятности, мы можем преобразовать шансы в вероятность того, что выиграет «Ред Сокс»:
.
Итак, основываясь на сделанной ставке, вы можете сказать, что вероятность того, что «Ред Сокс» выиграет, составляет около 86 %.
У1. Какова вероятность выкинуть 20 на 20-гранной игральной кости три раза подряд?
О1. Вероятность выпадения 20 составляет 1/20, и чтобы определить вероятность выпадения трех 20 подряд, мы должны использовать правило произведения вероятностей:
.
У2. Прогноз погоды сообщает, что завтра с 10 %-ной вероятностью пойдет дождь. Вы забываете зонтик дома в половине случаев. Какова вероятность, что завтра вы окажетесь под дождем без зонта?
О2. Опять же мы можем использовать правило произведения вероятностей, чтобы решить эту проблему. Мы знаем, что P (дождя) = 0,1 и P (забывания зонта) = 0,5, поэтому:
P (дождя, забывания зонта) =P (дождя) ×P (забывания зонта) = 0,05.
Как видите, вероятность того, что вы окажетесь под дождем без зонта, составляет всего 5 %.
У3. Сырые яйца с вероятностью 1/20 000 заражены сальмонеллой. Вы съели два сырых яйца, какова вероятность, что вы съели яйцо с сальмонеллой?
О3. Для решения этой задачи нужно использовать правило суммы вероятностей, потому что если какое-либо яйцо содержит сальмонеллу, вы заболеете:
…что составляет всего лишь менее 1/10 000.
У4. Какова вероятность выкинуть два орла за два броска монеты или три шестерки за три броска шестигранного кубика?
О4. Для этого упражнения нам нужно объединить правило произведения и правило суммы. Сначала давайте посчитаем P (двух орлов) и P (трех шестерок) отдельно. Для каждой вероятности используется правило произведения:
Теперь нужно использовать правило суммы, чтобы вычислить вероятность того, что произойдет одно из этих событий, P (двух орлов или трех шестерок):
…что составляет чуть больше 25 %.
У1. Каковы параметры биномиального распределения для вероятности выкинуть 1 или 20 на 20-гранной кости, если бросить кость 12 раз?
О1. Мы рассматриваем событие, происходящее 1 раз из 12 попыток, поэтому n= 12 и k= 1. Мы имеем 20 сторон, и важны две из них, поэтому p= 2/20 = 1/10.
У2. В колоде из 52 карт 4 туза. Вы вытягиваете карту, возвращаете ее обратно, тасуете колоду и снова вытягиваете карту. Сколькими способами можно вытянуть только одного туза за пять попыток?
О2. Для этого нам даже не нужна комбинаторика. Если представить, что A означает «туз», а x — что-то еще, остается пять возможных случаев:
• Axxxx
• xAxxx
• xxAxx
• xxxAx
• xxxxA
Можно было бы просто назвать это или, как в R, choose(5,1). В любом случае ответ — 5.
У3. Продолжая предыдущую задачу: какова вероятность вытянуть пять тузов за десять попыток (помните, что карта возвращается в колоду)?
О3. Это то же самое, что и B(5; 10, 1/13). Как и ожидалось, вероятность этого крайне мала: около 1/32 000.
У4. При поиске новой работы полезно иметь больше одного предложения — это открывает возможность поторговаться. Пусть вероятность получить после собеседования предложение о работе равна 1/5, и за месяц вы проходите семь собеседований. Какова вероятность, что к концу месяца вы получите хотя бы два предложения?
О4. Мы можем использовать следующий код R для вычисления ответа:
> pbinom(1,7,1/5,lower.tail = FALSE)
0.4232832
Как видите, вероятность получения двух или более предложений о работе составляет около 42 %, если вы были на интервью в семи компаниях.
У5. Вы получили немало писем от рекрутеров и обнаружили, что в следующем месяце у вас 25 собеседований. Ох, это утомительно, а вероятность получить предложение о работе, когда проходишь собеседование усталым, падает до 1/10. Вы готовы пройти 25 собеседований, только если это в два раза повысит вероятность получить хотя бы два предложения. Надо ли проходить 25 собеседований или остановиться на 7?
О5. Давайте напишем еще немного кода на R, чтобы разобраться в этом:
p.two.or.more.7 <- pbinom(1,7,1/5,lower.tail = FALSE)
p.two.or.more.25 <- pbinom(1,25,1/10,lower.tail = FALSE)
Даже с уменьшенной вероятностью предложения ваша вероятность получить по крайней мере два предложения за 25 собеседований составляет 73 %. Однако у вас получится это сделать только при наличии вдвое больше шансов.
Как мы видим в R:
> p.two.or.more.25/p.two.or.more.7
[1] 1.721765
…у вас всего в 1,72 раза больше шансов получить два или более предложений, так что хлопоты того не стоят.
У1. Вы хотите использовать бета-распределение, чтобы определить, честная ли монетка — то есть равны ли для нее вероятности выкинуть орел и решку. Вы подбрасываете монетку 10 раз и получаете 4 орла и 6 решек. Используя бета-распределение, найдите вероятность того, что орел выпадает в более чем 60 % бросков.
О1. Мы бы смоделировали это как Beta(4,6). Нужно вычислить интеграл от 0,6 до 1, что мы можем сделать в R следующим образом:
integrate(function(x) dbeta(x,4,6),0.6,1)
Это говорит о 10 %-ной вероятности того, что истинная вероятность выпадения орла составляет 60 % или больше.
У2. Вы еще 10 раз подбрасываете монетку и в итоге получаете 9 орлов и 11 решек. Какова вероятность того, что монетка честная, при использовании нашего определения честности плюс-минус 5 %?
О2. Теперь мы имеем распределение Beta(9,11). Но нам нужно знать вероятность того, что монетка честная, то есть шанс выпадения орла составляет 0,5 в любом случае с вероятностью 0,05. Это означает, что нужно интегрировать новое распределение между 0,45 и 0,55. Мы можем сделать это с помощью такой строки кода в R:
integrate(function(x) dbeta(x,9,11),0.45,0.55)
Теперь мы видим, что существует 30 %-ная вероятность того, что монетка честная, с учетом новых имеющихся данных.
У3. Данные — лучший способ убедиться в верности своих утверждений. Вы еще 200 раз подбрасываете монетку и в итоге получаете 109 орлов и 111 решек. Какова теперь вероятность того, что монетка честная (плюс-минус 5 %)?
О3. Учитывая предыдущее упражнение, ответ довольно прост:
integrate(function(x) dbeta(x,109,111),0.45,0.55)
Теперь мы на 86 % уверены, что монетка достаточно честная. Обратите внимание, что ключом к большей уверенности было добавление большего количества данных.
У1. Мы хотим использовать теорему Байеса для определения вероятности того, что в 2010 году пациент с синдромом Гийена — Барре был привит от гриппа. Какая информация нам нужна?
О1. Мы хотим выяснить P (вакцины против гриппа | синдрома Гийена — Барре). Можно решить эту задачу, используя теорему Байеса, при условии, что вся эта информация у нас имеется:
Из этих сведений мы не знаем только вероятность получения вакцины от гриппа в первую очередь. Вероятно, мы могли бы получить эту информацию из Центров по контролю и профилактике заболеваний или другой национальной службы сбора данных.
У2. Какова вероятность того, что случайно выбранный из всей популяции человек — женщина и не дальтоник?
О2. Мы знаем, что P (женщины) = 0,5 и что P (дальтоника | женщины) = 0,005, но мы хотим знать вероятность того, что кто-то является женщиной и не дальтоником, что равно 1 – P (дальтоника | женщины) = 0,995. Итак:
P (женщина, не дальтоник) =P (женщина) ×P (не дальтоник | женщина) = 0,5 × 0,995 = 0,4975.
У3. Какова вероятность того, что мужчина, привитый от гриппа в 2010 году, будет страдать либо от дальтонизма, либо от синдрома Гийена — Барре?
О3. Эта задача поначалу может показаться сложной, но мы можем ее немного упростить. Давайте начнем с того, что просто поработаем над вероятностью получения дальтонизма, если выбранный человек — мужчина, и вероятностью наличия синдрома Гийена — Барре, если он был привит от гриппа. Обратите внимание, что мы идем по сокращенному пути, поскольку наличие мужского пола не зависит от наличия синдрома Гийена — Барре (насколько нам известно), а прививка от гриппа не влияет на дальтонизм. Мы сделаем каждую из них отдельной вероятностью:
P (A) =P (дальтоник | женщина).
P (B) =P (синдром Гийена — Барре | грипп).
К счастью, мы уже проделали всю эту работу ранее в этой главе, поэтому мы знаем, что P (A) = 4/1000 и P (B) = 3/100 000. Теперь можно просто использовать правило суммы вероятностей, чтобы решить эту задачу:
P (A или B) =P (A) + P (B) – P (A) ×P (B | A).
И поскольку вероятность наличия дальтонизма, насколько нам известно, не имеет ничего общего с вероятностью наличия синдрома Гийена — Барре, мы знаем, что P (В | А) =Р (В). Подставляя числа, мы получаем ответ: 100 747/25 000 000, или 0,00403. Это немного больше, чем шанс быть дальтоником и мужчиной, потому что вероятность наличия синдрома Гийена — Барре очень мала.
У1. Канзас-Сити, вопреки названию, стоит на границе двух штатов, Миссури и Канзаса. Агломерация Канзас-Сити состоит из 15 округов: 9 в штате Миссури и 6 в Канзасе. В штате Канзас всего 105 округов, в Миссури — 114. Используя теорему Байеса, вычислите вероятность, что человек, переехавший в агломерацию Канзас-Сити, окажется в штате Канзас. Используйте P (Канзас), P (Канзас-Сити) и P (Канзас-Сити | Канзас).
О1. Надеюсь, очевидно, что в районе Канзас-Сити 15 округов, и 6 из них находятся в Канзасе, поэтому вероятность оказаться в Канзасе, учитывая, что вы знаете, что кто-то живет в районе Канзас-Сити, должна составлять 6/15, что эквивалентно 2/5. Однако цель этого упражнения — не просто получить ответ, а показать, что теорема Байеса предоставляет инструменты для его решения. При работе над более сложными задачами будет очень полезно укрепить доверие к теореме Байеса.
Итак, чтобы вычислить P (Канзаса | Канзас-Сити), мы можем использовать теорему Байеса следующим образом:
Учитывая имеющиеся данные, мы знаем, что из 105 округов Канзаса 6 находятся в районе Канзас-Сити:
И между Миссури и Канзасом находится 219 округов, 105 из которых находятся в Канзасе:
И из этого общего количества 219 округов 15 находятся в районе Канзас-Сити:
Таким образом, заполнение всех частей теоремы Байеса дает результат:
У2. В колоде 52 красные и черные карты, в том числе четыре туза: два красных и два черных. Вы вынули из колоды черный туз и перемешали ее. Ваш друг вытянул карту черной масти. Какова вероятность, что это туз?
О2. Как и в предыдущем вопросе, мы можем легко увидеть, что есть 26 черных карт и 2 из них — тузы, и вероятность вытащить туза составляет 2/26, или 1/13, если мы вытянули черную карту. Но, опять же, мы хотим укрепить некоторое доверие к теореме Байеса и не использовать так много математических умственных сокращений. Используя теорему Байеса, мы получаем:
В колоде 26 черных карт из имеющейся 51 карты, так как мы убрали 1 красного туза. Если мы знаем, что вытянули туз, вероятность того, что он черный, равна:
В колоде теперь 51 карта, из которых только 3 туза, поэтому мы имеем:
Наконец, мы знаем, что из оставшейся 51 карты 26 черных, так что:
Теперь у нас есть достаточно информации, чтобы решить задачу:
.
У1. Как уже говорилось, вы можете не согласиться с нашей оценкой правдоподобия для первой гипотезы.
Как это повлияет на меру нашей убежденности в превосходстве H1 над H2?
О1. Для начала запомните следующее:
P (разбитое окно, открытая дверь, пропавший ноутбук | ограбление) =P (D | H1).
Чтобы увидеть, как это меняет убеждения, все, что нам нужно сделать, это заменить эту часть в соотношении:
.
Мы уже знаем, что знаменатель формулы равен 1/21 900 000, а P (H1) =1/1000, поэтому, чтобы получить ответ, нам просто нужно добавить измененное убеждение в P (D | H1):
.
Итак, когда мы считаем, что (D | H1) в 10 раз меньше вероятности, соотношение будет в 10 раз меньше (хотя все еще в значительной степени будет говорить в пользу H1).
У2. Насколько малой должна быть априорная вероятность ограбления, чтобы гипотезы H1 и H2 при имеющихся данных были равновероятны?
О2. В предыдущем ответе уменьшение вероятности P (D | H1) в 10 раз уменьшило соотношение. На этот раз мы хотим изменить P (H1) так, чтобы соотношение было равно 1, это означает, что нужно сделать его в 657 раз меньше:
.
Итак, новая вероятность P (H1) должна быть равна 1/657 000, а это является довольно сильным убеждением в маловероятности того, что вас ограбили!
У1. Друг находит монетку на земле, подбрасывает ее и получает шесть орлов подряд, а затем одну решку. Найдите бета-распределение, которое описывает этот случай. Используйте интегрирование, чтобы определить вероятность того, что истинная вероятность выпадения орла находится в диапазоне от 0,4 до 0,6. Это значит, что монетка является относительно честной.
О1. Мы можем представить это как бета-распределение с α= 6 и β= 1, поскольку мы получили шесть орлов и одну решку. В R можно интегрировать это следующим образом:
> integrate(function(x) dbeta(x,6,1),0.4,0.6)
0.04256 with absolute error < 4.7e-16
С вероятностью около 4 % эта монетка честная, и исходя только из правдоподобности, мы сочли бы ее нечестной.
У2. Придумайте априорную вероятность того, что монетка честная. Используйте бета-распределение таким образом, чтобы с вероятностью не менее 95 % истинная вероятность выпадения орла составляла от 0,4 до 0,6.
О2. Любое αаприорное =βаприорное даст нам честную априорную вероятность, и чем больше эти значения, тем сильнее априорная вероятность. Например, при использовании 10 мы получим:
> prior.val <- 10
> integrate(function(x) dbeta(x,6+prior.val,1+prior.val),0.4,0.6)
0.4996537 with absolute error < 5.5e-15
Но, конечно, вероятность того, что монетка честная, составляет всего 50 %. Методом проб и ошибок мы можем найти число, которое нам подходит. Используя αаприорное=βаприорное= 55, мы находим, что это дает априорную вероятность, которая соответствует цели:
> prior.val <- 55
> integrate(function(x) dbeta(x,6+prior.val,1+prior.val),0.4,0.6)
0.9527469 with absolute error < 1.5e-11
У3. Теперь посмотрите, сколько еще орлов (без решек) потребуется, чтобы убедить вас в существовании реальной вероятности того, что монетка нечестная. В этом случае наша вера в то, что вероятность монетки составляет от 0,4 до 0,6, падает ниже 0,5.
О3. Опять же, мы можем решить эту проблему просто методом проб и ошибок, пока не получим работающий ответ. Помните, что мы все еще используем Beta(55,55) в качестве априорной вероятности. На этот раз мы хотим увидеть, сколько можно добавить к α, чтобы повысить вероятность получения честной монетки примерно до 50 %. Мы видим, что с еще пятью орлами наша апостериорная вероятность опускается до 90 %.
> more.heads <- 5
> integrate(function(x) dbeta(x,6+prior.val+more.heads,1+
prior.val),0.4,0.6)
0.9046876 with absolute error < 3.2e-11
И если бы выпало еще 23 орла, мы бы обнаружили, что вероятность того, что монетка будет честной сейчас, составит около 50 %. Это показывает, что даже сильную априорную вероятность можно преодолеть с помощью большего количества данных.
У1. Можно получить ошибки, не в полной мере взаимоисключающие. По шкале Фаренгейта 98,6 градуса — это нормальная температура тела, а 100,4 градуса — типичный порог лихорадки. Скажем, вы ухаживаете за ребенком, которому жарко и который кажется больным, но все повторные показания термометра находятся между 99,5 и 100,0 градуса: высоковато, но не совсем лихорадка. Вы ставите термометр самому себе и получаете несколько показаний между 97,5 и 98. Что может быть не так с термометром?
О1. Похоже, что термометр может давать смещенные измерения, которые, как правило, отклоняются на 1 градус по Фаренгейту. Если добавить 1 градус к результатам, мы увидим, что они располагаются между 98,5 и 99, что кажется правильным для тех, кто обычно имеет температуру тела, равную 98,6 градуса по Фаренгейту.
У2. Учитывая, что вы чувствуете себя здоровым и у вас всегда стабильная нормальная температура, как можно изменить измерения 100, 99,5, 99,6 и 100,2, чтобы оценить, есть ли у ребенка температура?
О2. Если измерения смещены, это означает, что они систематически ошибочны, поэтому никакая выборка не исправит это сама по себе. Чтобы исправить исходные измерения, мы могли бы просто добавить 1 градус к каждому.
У1. Одним из преимуществ расхождения является то, что возведение в квадрат различий делает штрафы экспоненциальными. Приведите несколько примеров, когда это будет полезно.
О1. Экспоненциальные штрафы очень полезны во многих повседневных ситуациях. Одна из наиболее очевидных — физическое расстояние. Предположим, кто-то изобрел телепорт, который может перенести вас в другое место. Если вы промахнетесь на метр, ничего страшного; 5 километров тоже можно простить; но смещение на 50 километров может быть невероятно опасным. В этом случае нужно, чтобы штраф за удаленность от цели становился намного более суровым по мере ее увеличения.
У2. Рассчитайте среднее значение, расхождение и стандартное отклонение для следующих значений: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10.
О2. Среднее значение = 5,5, расхождение = 8,25, стандартное отклонение = 2,87.
О стандартном отклонении
R имеет встроенную функцию sd, которая вычисляет выборочное стандартное отклонение, отличающееся от стандартного отклонения, обсуждаемого в этой книге. Идея выборочного стандартного отклонения заключается в том, что вместо n усредняется n – 1. Выборочное стандартное отклонение используется в классической статистике для оценки математического ожидания при заданных значениях. В примере функция my.sd вычисляет стандартное отклонение, которое мы использовали в книге:
my.sd <- function(val){
val.mean <- mean(val)
sqrt(mean((val.mean-val)^2))
}
По мере роста количества данных разница между выборочным стандартным отклонением и настоящим стандартным отклонением становится несущественной. Однако при небольшом количестве данных из примеров в этой книге можно ощутить небольшое различие. Для всех примеров из главы 12 используется my.sd, но иногда, удобства ради, я буду использовать sd по умолчанию.
У1. Какова вероятность наблюдения значения на пять сигм большего или меньшего, чем среднее значение?
О1. Мы можем использовать integrate() для нормального распределения со средним значением 0 и стандартным отклонением 1. Затем мы просто интегрируем от 5 до некоторого достаточно большого числа, например 100:
> integrate(function(x) dnorm(x,mean=0,sd=1),5,100)
2.88167e-07 with absolute error < 5.6e-07
У2. Лихорадка — это любая температура выше 100,4 градуса по шкале Фаренгейта. Учитывая следующие измерения, какова вероятность того, что у пациента жар?
100,0, 99,8, 101,0, 100,5, 99,7
О2. Начнем с определения среднего и стандартного отклонения данных:
temp.data <- c(100.0, 99.8, 101.0, 100.5, 99.7)
temp.mean <- mean(temp.data)
temp.sd <- my.sd(temp.data)
Затем мы просто используем integrate(), чтобы определить вероятность того, что температура превышает 100,4:
> integrate(function(x) dnorm(x,mean=temp.mean,sd=temp.sd),100.4,200)
0.3402821 with absolute error < 1.1e-08
При таких измерениях вероятность повышения температуры составляет около 34 %.
У3. Предположим, что в главе 11 мы попытались измерить глубину колодца по времени падения монет и получили следующие значения:
2,5, 3, 3,5, 4, 2
Расстояние, на которое падает объект, может быть рассчитано (в метрах) по следующей формуле:
расстояние = 1/2 ×G× время2,
где G составляет 9,8 м2/с. Какова вероятность того, что глубина колодца превышает 500 метров?
О3. Начнем с помещения наших данных о времени в R:
time.data <- c(2.5,3,3.5,4,2)
time.data.mean <- mean(time.data)
time.data.sd <- my.sd(time.data)
Далее нужно выяснить, сколько времени необходимо, чтобы достичь 500 метров. Вычислим:
.
Если G равно 9,8, мы можем вычислить, что время (t) составляет около 10,10 секунды (также можно рассчитать это, создав функцию в R и вручную выполняя итерацию, или поискать решение на чем-то вроде Wolfram Alpha). Теперь нужно просто интегрировать нормальное распределение за пределами 10.1:
> integrate(function(x)
dnorm(x,mean=time.data.mean,sd=time.data.sd),10.1,200)
2.056582e-24 with absolute error < 4.1e-24
Это дает практически нулевую вероятность, поэтому мы можем быть уверены, что глубина скважины не равна 500 метрам.
У4. Какова вероятность того, что колодца нет (то есть колодец имеет фактическую глубину 0 метров)? Вы заметите, что вероятность выше, чем можно было бы ожидать, учитывая наблюдения, что колодец есть. Есть два хороших объяснения того, что эта вероятность выше, чем должна быть. Во-первых, нормальное распределение является плохой моделью для измерений; во-вторых, при составлении чисел для примера я выбрал значения, которые вы вряд ли увидите в реальной жизни. Что для вас более вероятно?
A4. Если мы проделаем то же самое интегрирование, но с –1 до 0, то получим:
> integrate(function(x)
dnorm(x,mean=time.data.mean,sd=time.data.sd),-1,0)
1.103754e-05 with absolute error < 1.2e-19
Это мало, но вероятность того, что колодца нет, превышает 1/100 000. Но ведь мы видим колодец! Он прямо перед нами! Таким образом, даже если вероятность мала, она не так уж близка к нулю. Стоит подвергать сомнению модель или данные? Как байесовец вы должны ставить под сомнение модель, но не данные. Например, движение цен на акции обычно сопровождается очень высокими событиями сигма во время финансовых кризисов. Это означает, что нормальное распределение — плохая модель динамики запасов. Однако в этом примере нет причин подвергать сомнению предположения о нормальном распределении, и на самом деле проблема в исходных числах, которые я выбрал для предыдущей главы, пока мой научный редактор не указала, что значения кажутся слишком разбросанными.
Одно из величайших достоинств статистического анализа — скептицизм. На практике я несколько раз получал плохие данные для работы. Несмотря на то что модели всегда несовершенны, очень важно убедиться, что можно доверять данным. Посмотрите, верны ли ваши предположения о мире, а если нет, то убедитесь, что вы все еще доверяете и модели, и данным.
У1. Используя пример кода для построения PDF на с. 155, постройте функции CDF и квантильную.
О1. Взяв код из главы, просто замените dbeta() на pbeta() для CDF следующим образом:
xs <- seq(0.005,0.01,by=0.00001)
plot(xs,pbeta(xs,300,40000-300),type='l',lwd=3,
ylab="Cumulative probability",
xlab="Probability of subscription",
main="CDF Beta(300,39700)")
Для квантильной функции нужно заменить xs на фактические квантили:
xs <- seq(0.001,0.99,by=0.001)
plot(xs,qbeta(xs,300,40000-300),type='l',lwd=3,
ylab="Probability of subscription",
xlab="Quantile",
main="Quantile of Beta(300,39700)")
У2. Возвращаясь к задаче измерения снегопада из главы 10, скажем, у вас есть следующие измерения (в дюймах) снежного покрова:
7,8, 9,4, 10,0, 7,9, 9,4, 7,0, 7,0, 7,1, 8,9, 7,4
Каков 99,9 %-ный доверительный интервал для истинного значения снежного покрова?
О2. Сначала вычислим среднее значение и стандартное отклонение для этих данных:
snow.data <- c(7.8, 9.4, 10.0, 7.9, 9.4, 7.0, 7.0, 7.1, 8.9, 7.4)
snow.mean <- mean(snow.data)
snow.sd <- sd(snow.data)
Затем используем qnorm() для вычисления верхней и нижней границ доверительного интервала 99,9 %.
• Нижний — qnorm(0,0005,mean=snow.mean,sd=snow.sd) = 4,46.
• Верхний — qnorm(0,9995,mean=snow.mean,sd = snow.sd)= 11,92.
Это означает, что мы очень уверены в том, что выпадает не менее 4,46 дюйма снега и не более 11,92 дюйма.
У3. Девочка продает конфеты. Пока она посетила 30 домов и продала 10 конфет. Сегодня она посетит еще 40 домов. Каков 95 %-ный доверительный интервал для проданных за остаток дня конфет?
О3. Сначала нужно рассчитать 95 % доверительный интервал для вероятности продажи конфеты. Мы можем смоделировать это как Beta(10,20), а затем использовать qbeta(), чтобы вычислить значения:
• Нижнее значение — qbeta(0,025,10,20)= 0,18.
• Верхнее значение — qbeta(0,975,10,20)= 0,51.
Учитывая, что осталось посетить 40 домов, мы можем ожидать, что она продаст от 40 × 0,18 = 7,2 до 40 × 0,51 = 20,4 конфеты. Конечно, девочка может продать только целые конфеты, поэтому мы уверены, что она продаст от 7 до 20 конфет.
Если нужна конкретика, мы могли бы фактически вычислить квантильную функцию для биномиального распределения на каждом экстремуме ее уровня продаж с помощью qbinom()! Я оставлю это в качестве упражнения, которое вы можете изучить самостоятельно.
У1. Предположим, вы играете в аэрохоккей с друзьями и подбрасываете монетку, чтобы узнать, кто будет подавать шайбу. Проиграв 12 раз, вы понимаете, что друг, который приносит монету, почти всегда идет первым: 9 из 12 раз. Некоторые из ваших друзей начинают что-то подозревать. Определите априорное распределение вероятностей для следующих убеждений:
• убеждения человека, который слабо верит, что друг обманывает, и реальная скорость выпадения орла ближе к 70 %;
• убеждения человека, который очень сильно верит, что монетка честная, и дает 50 %-ную вероятность выпадения орла;
• убеждения человека, который твердо верит, что монета склонна к выпадению орла в 70 % случаев.
О1. Выбор этих априорных значений немного субъективен, но вот несколько примеров, которые соответствуют каждому убеждению:
• Beta(7,3) — достаточно слабое априорное значение, представляющее уверенность в том, что показатель приближается к 70 %.
• Beta(1000,1000) — очень сильное убеждение в том, что монетка честная.
• Beta(70,30) — это гораздо более сильное убеждение в том, что монетка смещена до 70 %-ной вероятности выпадения орла.
У2. Чтобы проверить монету, вы подбрасываете ее еще 20 раз и получаете 9 орлов и 11 решек. Используя априорные вероятности, которые вы рассчитали в предыдущем вопросе, определите обновленные апостериорные убеждения в истинной вероятности выпадения орла с точки зрения 95 %-ного доверительного интервала.
О2. Теперь у нас есть обновленный набор данных с 32 наблюдениями, которые включают 18 орлов и 14 решек. Используя qbeta() в R и априорные вероятности из предыдущих задач, мы можем получить 95 %-ный доверительный интервал для этих различных убеждений.
Просто рассмотрим код для Beta(7,3), поскольку другие примеры идентичны этому.
• Нижняя граница для 95 %-ного интервала — qbeta (0,025,18 + 7,14 + 3)= 0,445, а верхняя граница — qbeta (0,975,18 + 7,14 + 3)= 0,737.
• Для Beta(1000,1000) имеем: 0,479 – 0,523.
• И для Beta(70,30) имеем: 0,5843 – 0,744.
Итак, как вы можете видеть, слабая априорная вероятность обеспечивает самый широкий диапазон возможностей, очень сильная априорная вероятность честности монетки остается вполне правдоподобной, а сильная априорная вероятность в 70 % по-прежнему склоняется к более высокому диапазону возможных значений истинной честности монетки.
У1. Предположим, опытный директор по маркетингу говорит вам о своей уверенности в том, что вариант без картинок (B) не будет работать иначе, чем исходный вариант. Как это объяснить в нашей модели? Внедрите это изменение и посмотрите, как изменятся окончательные выводы.
О1. Вы можете объяснить это, увеличив силу априорной вероятности. Например:
prior.alpha <- 300
prior.beta <- 700
Это потребует гораздо больше доказательств для изменения убеждений. Чтобы увидеть, как это меняет выводы, мы можем перезапустить код:
a.samples <- rbeta(n.trials,36+prior.alpha,114+prior.beta)
b.samples <- rbeta(n.trials,50+prior.alpha,100+prior.beta)
p.b_superior <- sum(b.samples > a.samples)/n.trials
Тогда новое значение p.b_superior равно 0,74, что намного ниже, чем исходное значение 0,96.
У2. Ведущий дизайнер видит ваши результаты и настаивает на том, что вариант B без картинок не будет работать лучше. Она считает, что вы должны принять коэффициент конверсии для варианта B, близкий к 20 %, а не к 30 %. Реализуйте решение для этого и снова просмотрите результаты анализа.
О2. Вместо того чтобы использовать одну априорную вероятность для изменения убеждений, стоит использовать две — одну, отражающую исходную априорную вероятность, для A, и другую, отражающую веру ведущего дизайнера, для B. Вместо того чтобы использовать слабую априорную вероятность, мы будем использовать немного более сильную:
a.prior.alpha <- 30
a.prior.beta <- 70
b.prior.alpha <- 20
b.prior.beta <- 80
При запуске этого моделирования нужно использовать два отдельных априорных значения:
a.samples <- rbeta(n.trials,36+a.prior.alpha,114+a.prior.beta)
b.samples <- rbeta(n.trials,50+b.prior.alpha,100+b.prior.beta)
p.b_superior <- sum(b.samples > a.samples)/n.trials
На этот раз p.b_superior составляет 0,66, что ниже, чем раньше, но это все же дает небольшую уверенность в том, что B может быть лучшим вариантом.
У3. Предположим, что 95 %-ная уверенность означает, что вы более или менее убеждены в правильности гипотезы. Также предположим, что больше нет ограничений на количество писем, которые можно отправить в тесте. Если истинное преобразование для A составляет 0,25, а для B — 0,3, изучите, сколько выборок потребуется, чтобы убедить директора по маркетингу в том, что B на самом деле лучше. Изучите то же самое для ведущего дизайнера. Можно сгенерировать образцы конверсий с помощью следующего фрагмента R:
true.rate <- 0.25
number.of.samples <- 100
results <- runif(number.of.samples) <= true.rate
О3. Вот основной код для решения этой задачи в случае директора по маркетингу (для ведущего дизайнера вам нужно добавить отдельные априорные вероятности). Можно использовать цикл while в R для перебора примеров (или просто вручную пробовать новые значения).
a.true.rate <- 0.25
b.true.rate <- 0.3
prior.alpha <- 300
prior.beta <- 700
number.of.samples <- 0
#using this as an initial value so that the loop starts
p.b_superior <- -1
while(p.b_superior < 0.95){
number.of.samples <- number.of.samples + 100
a.results <- runif(number.of.samples/2) <= a.true.rate
b.results <- runif(number.of.samples/2) <= b.true.rate
a.samples <- rbeta(n.trials,
sum(a.results==TRUE)+prior.alpha,
sum(a.results==FALSE)+prior.beta)
b.samples <- rbeta(n.trials,
sum(b.results==TRUE)+prior.alpha,
sum(b.results==FALSE)+prior.beta)
p.b_superior <- sum(b.samples > a.samples)/n.trials
}
Обратите внимание, что поскольку этот код сам по себе является моделированием, вы будете получать разные результаты при каждом запуске, поэтому запустите его несколько раз (или создайте более сложный пример, который запускается еще несколько раз).
Чтобы убедить директора по маркетингу, нужно около 1200 образцов. Ведущему дизайнеру должно хватить около 1000 образцов. Обратите внимание, что хотя ведущий дизайнер считает, что B хуже, в нашем примере он имеет также более слабые априорные вероятности, поэтому требуется меньше доказательств, чтобы изменить его мнение.
У1. Возвращаясь к задаче с игральными костями, предположим, что ваш друг допустил ошибку и внезапно осознал, что на самом деле было две нечестные кости и только одна честная. Как это изменит априорный и, следовательно, апостериорный шансы этой задачи? Вы более склонны верить, что бросаемая кость нечестная?
О1. Первоначальные априорные шансы были следующими:
.
И коэффициент Байеса составил 3,77, что дало нам апостериорные шансы со значением 1,89. Наши новые априорные шансы следующие:
.
Итак, апостериорные шансы составляют 2 × 3,77 = 7,54. Сейчас мы определенно более склонны верить, что бросаемая кость нечестная, но апостериорные шансы все еще не очень высоки. Мы бы хотели собрать больше доказательств, прежде чем полностью сдаться.
У2. Вернемся к примеру с редкими заболеваниями. Предположим, вы обратились к врачу и после чистки ушей заметили, что симптомы не исчезли. Еще хуже, появился новый симптом: головокружение. Врач предлагает другое возможное объяснение, лабиринтит — вирусную инфекцию внутреннего уха, при которой в 98 % случаев возникает головокружение. Однако потеря слуха и шум в ушах менее распространены при этом заболевании; потеря слуха происходит только в 30 % случаев, а шум в ушах — только в 28 %. Головокружение также является возможным симптомом вестибулярной шванномы, но встречается только в 49 % случаев. В общей численности населения 35 человек на миллион заболевают лабиринтитом ежегодно. Каковы апостериорные шансы гипотезы, что у вас лабиринтит, по сравнению с гипотезой о вестибулярной шванноме?
A2. Мы немного запутаем ситуацию и сделаем H1 вероятностью лабиринтита, а H2 — вероятностью вестибулярной шванномы, поскольку мы уже видели, насколько маловероятна вестибулярная шваннома. Необходимо пересчитать каждую часть апостериорных шансов, потому что мы рассматриваем новую часть данных, «имеет головокружение», а также совершенно новую гипотезу.
Начнем с коэффициента Байеса. Для H1 мы имеем:
P (D | H1) = 0,98 × 0,30 × 0,28 = 0,082.
Новая вероятность для H2:
P (D | H2) = 0,63 × 0,55 × 0,49 = 0,170.
Таким образом, коэффициент Байеса для новой гипотезы:
.
Это означает, что, учитывая только коэффициент Байеса, наличие вестибулярной шванномы является примерно в два раза лучшим объяснением, чем лабиринтит. Теперь нужно посмотреть на соотношение шансов:
.
Лабиринтит встречается гораздо реже, чем избыток ушной серы, и лишь примерно в три раза чаще, чем вестибулярная шваннома. При сложении апостериорных шансов мы можем увидеть:
.
Конечным результатом является то, что лабиринтит — лишь немного лучшее объяснение, чем вестибулярная шваннома.
У1. Каждый раз, когда вы с другом встречаетесь, чтобы посмотреть фильм, вы подбрасываете монетку, чтобы определить, кто выберет фильм. Друг всегда выбирает орла, и каждую пятницу в течение 10 недель выпадает орел. Вы выдвигаете гипотезу, что у монетки два орла, а не орел и решка. Вычислите коэффициент Байеса для гипотезы о том, что монетка нечестная, в отношении к гипотезе о том, что монетка честная. Что одно только это соотношение говорит о том, обманывает ваш друг или нет.
A1. Допустим, H1 — это гипотеза о том, что монетка на самом деле с подвохом, а H2 — гипотеза о том, что монетка честная. Если монетка действительно имеет подвох, вероятность выпадения 10 орлов подряд равна 1, поэтому мы знаем, что:
.
И если монетка честная, то вероятность выбросить 10 орлов составляет 0,510= 1/1,024. Итак, мы знаем, что:
.
Коэффициент Байеса утверждает, что:
.
Это означает, что, учитывая только коэффициент Байеса, мы в 1024 раза более уверены, что монетка с подвохом.
У2. Теперь представьте три случая: ваш друг немного шутник, ваш друг большую часть времени честен, но иногда может схитрить и ваш друг очень надежный. В каждом случае оцените некоторые априорные коэффициенты шансов для вашей гипотезы и вычислите апостериорные шансы.
О2. Это немного субъективно, но давайте сделаем некоторые оценки. Нужно найти три различных отношения априорных шансов. Для каждого случая мы просто умножаем априорные шансы на коэффициент Байеса из предыдущей задачи, чтобы получить апостериорную вероятность.
Если ваш друг — шутник, то он, скорее всего, обманет вас, поэтому мы установим O (H1) = 10. Тогда апостериорные шансы станут равны 10 × 1024 = 10 240.
Если ваш друг в основном честен, но может схитрить, вы не удивитесь, если он вас обманет, но не стоит ожидать этого, поэтому мы сделаем априорные шансы равными O (H1) = 1/4, это означает, что апостериорные шансы равны 240.
Если вы действительно доверяете своему другу, вы, возможно, захотите задать априорные шансы для обмана. Априорные шансы здесь могут быть равны O (H1) = 1/10 000, что дает апостериорные шансы со значением примерно 1/10, то есть вы по-прежнему в 10 раз более уверены в том, что монетка честная, чем в том, что ваш друг обманывает.
У3. Предположим, вы очень доверяете другу. Задайте априорные шансы обмана равными 1/10 000. Сколько раз должен выпасть орел, прежде чем вы начнете сомневаться в невиновности друга — скажем, с апостериорными шансами 1?
О3. При 14 подбрасываниях монеты коэффициент Байеса будет следующим:
.
Апостериорные шансы будут равны 16 384/10 000 = 1,64. В этот момент вы начинаете чувствовать неуверенность в невиновности вашего друга. Но, бросив монетку менее 14 раз, вы все равно можете поддержать идею о том, что монетка честная.
У4. Другой ваш друг также общается с вышеописанным другом, и после лишь четырех недель выпадения орла он твердо решил, что вас обманывают. Такая уверенность подразумевает апостериорные шансы около 100. Какую ценность вы бы присвоили априорному убеждению этого друга, что первый друг — мошенник?
О4. Мы можем решить эту задачу, заполнив пробелы. Исходя из того что мы знаем, коэффициент Байеса будет равен 16:
.
Нужно просто найти значение, которое мы затем умножим на 16, что равно 100.
И теперь мы присвоили точное значение априорным шансам вашего подозревающего друга!
У1. Когда две гипотезы одинаково хорошо объясняют данные, один из способов изменить мнение — посмотреть, можно ли воздействовать на априорную вероятность. Какие факторы могут повысить вашу априорную веру в экстрасенсорные способности друга?
О1. Поскольку мы говорим об априорных убеждениях, ответы на этот вопрос, вероятно, будут немного разными для всех. Мне кажется, что просто предсказать результат броска кубика особенно легко. Хотелось бы увидеть, как этот друг продемонстрирует экстрасенсорные способности в эксперименте по моему выбору. Например, он мог бы угадать последнюю цифру номера долларовых купюр в моем кошельке — так ему будет намного труднее обмануть меня.
У22. Эксперимент утверждает, что, когда люди слышат слово «Флорида», они думают о пенсионерах и это влияет на скорость их ходьбы. Чтобы проверить это, мы собрали две группы из 15 студентов, которые идут по комнате; одна группа слышит слово «Флорида», а другая — нет. Предположим, что H1 = группы не двигаются с разной скоростью, а H2 = группа «Флорида» двигаются медленнее, потому что слышит слово «Флорида». Также предположим:
.
Эксперимент показывает, что H2 имеет коэффициент Байеса, равный 19. Предположим, что кто-то не убежден в этом эксперименте, потому что у H2 были более низкие шансы на выигрыш. Какие априорные шансы объяснили бы, что кого-то не убедили, и каким должен быть КБ, чтобы довести апостериорные шансы до 50 для этого неубежденного человека?
О2. Этот вопрос взят из существующей статьи «Автоматичность социального поведения».
Если эксперимент кажется вам сомнительным, значит, вы не одиноки. Известно, что результаты исследования было сложно воспроизвести.
Если вас это не убедило, мы скажем, что априорные шансы должны быть равны около 1/19, чтобы отрицать результаты. Чтобы иметь апостериорные шансы, равные 50, потребуется:
.
Теперь предположим, что априорные шансы не изменили мнение скептика. Подумайте об альтернативной Н3, которая объясняет наблюдение, что группа «Флорида» двигается медленнее. Помните, если H2 и H3 объясняют данные одинаково хорошо, только априорные шансы в пользу H3 заставят кого-то утверждать, что H3 вернее H2, поэтому нужно переосмыслить эксперимент, чтобы уменьшить эти шансы. Придумайте эксперимент, который может изменить априорные шансы H3 по сравнению с H2.
Вполне возможно, что вторая группа двигалась в среднем медленнее. Нетрудно представить, что в группе из всего 15 человек, услышавшей слово «Флорида», было больше людей невысокого роста, которые могли пройти небольшое расстояние за более длительное время. Чтобы убедиться в этом, мне нужно как минимум увидеть, как этот эксперимент многократно воспроизводится с множеством разных групп людей, чтобы убедиться, что не случайность привела к тому, что группа, услышавшая слово «Флорида», замедлила движение.
У1. Коэффициент Байеса предполагал, что мы рассматриваем H1:P(приз) = 0,5. Это позволило нам получить версию бета-распределения со значением альфа 1 и бета 1. Будет ли иметь значение выбор другой вероятности для H1? Предположим, что H1:P(приз) = 0,24, а затем посмотрим, отличается ли результирующее распределение, однажды нормализованное до суммы 1, от исходной гипотезы.
О1. Мы можем повторно запустить весь код, но на этот раз создадим одну группу bfs для версии 0,5, а другую — для версии 0,24:
dx <- 0.01
hypotheses <- seq(0,1,by=0.01)
bayes.factor <- function(h_top,h_bottom){
((h_top)^24*(1-h_top)^76)/((h_bottom)^24*(1-h_bottom)^76)
}
bfs.v1 <- bayes.factor(hypotheses,0.5)
bfs.v2 <- bayes.factor(hypotheses,0.24)
Затем построим каждую из них отдельно:
plot(hypotheses,bfs.v1,type='l')
plot(hypotheses,bfs.v2,type=’l’)
Здесь мы видим единственное отличие — ось Y. Выбор более слабой или более сильной гипотезы меняет только масштаб распределения, но не его форму. Если мы нормализуем и построим эти два графика вместе, то увидим, что они идентичны:
plot(hypotheses,bfs.v1/sum(bfs.v1),type='l')
points(hypotheses,bfs.v2/sum(bfs.v2))
У2. Напишите априорную вероятность для распределения, в котором каждая гипотеза в 1,05 раза более вероятна, чем предыдущая (предположим, что dx остается неизменным).
О2. Давайте воссоздадим bfs из оригинала (см. код в предыдущем ответе для первой части вычислений):
bfs <- bayes.factor(hypotheses,0.5)
Далее новые априорные значения будут начинаться с 1 (поскольку предыдущей гипотезы не существует), затем 1,05, 1,05*1,05, 1,05*1,05*1,05 и т.д. Есть несколько способов сделать это, но мы просто начнем с вектора 1,05 на единицу меньше длины нашей гипотезы (поскольку первая равна 1), используя функцию replicate() в R:
vals <- replicate(length(hypotheses)-1,1.05)
Затем добавим 1 в этот список и сможем использовать функцию cumprod() (которая похожа на cumsum(), но для умножения) для создания априорных вероятностей:
vals <- c(1,vals)
priors <- cumprod(vals)
Наконец, мы просто вычисляем апостериорные вероятности и нормализуем их, а затем можем визуализировать новое распределение:
posteriors <- bfs*priors
p.posteriors <- posteriors/sum(posteriors)
plot(hypotheses,p.posteriors,type='l')
#add the bfs alone for comparison
points(hypotheses,bfs/sum(bfs))
Обратите внимание, что это не сильно меняет наше окончательное распределение. Несмотря на то что оно дает гораздо более сильные априорные шансы для последней гипотезы — она примерно в 125 раз вероятнее остальных, — коэффициент Байеса настолько низок, что в конечном итоге не имеет большого значения.
У3. Предположим, вы наблюдали еще одну игру с уточками, где было 34 уточки с призами и 66 уточек без призов. Какую проверку вы бы сделали, чтобы ответить на вопрос: какова вероятность того, что шансов выиграть приз в этой игре больше, чем в той игре, которая приводилась в нашем примере? Реализация этой проверки намного сложнее, чем то, что было показано в этой книге, но наверняка вы сможете изучить все самостоятельно и отправиться в собственное приключение по миру более продвинутой байесовской статистики!
О3. Очевидно, что для решения этой задачи нам нужно настроить A/B-тест, как в главе 15. Мы можем легко придумать два распределения для примера «34 утки с призами, 66 без призов», просто повторяя процесс, который уже рассматривался в этой главе. Сложная часть — это выборка из априорной вероятности, которую мы создали сами. В прошлом для выборки из известного распределения мы использовали встроенные функции, такие как rbeta(), но для этого случая нет эквивалентной функции. Чтобы решить эту задачу, следует использовать продвинутую технику выборки, например выборку отбраковки или даже алгоритм Метрополиса — Хастингса. Если вы хотите решить эту задачу, самое время приступить к изучению более продвинутой книги по байесовскому анализу. Гордитесь собой, так как вы хорошо разобрались в основах байесовской статистики!
Джон А. Барг (John A. Bargh), Марк Чен (Mark Chen) и Лара Берроуз (Lara Burrows), «Automaticity of Social Behavior: Direct Effects of Trait Construct and Stereotype Activation on Action», Journal of Personality and Social Psychology 71, номер 2 (1996).