WnioskowanieStatystyczne/Twierdzenie Bayesa: Różnice pomiędzy wersjami

Z Brain-wiki
Linia 132: Linia 132:
 
Podobnie jak powyższy, ten przykład również zaczerpnięto z cytowanego poniżej tekstu d'Agostiniego:
 
Podobnie jak powyższy, ten przykład również zaczerpnięto z cytowanego poniżej tekstu d'Agostiniego:
  
 
+
<cite>
''Przypadkowo wybrany z populacji (w której na 60
+
Przypadkowo wybrany z populacji (w której na 60
 
milionów jest około stu tysięcy nosicieli wirusa) obywatel poddany
 
milionów jest około stu tysięcy nosicieli wirusa) obywatel poddany
 
jest testowi na obecność wirusa HIV. Użyty test wykrywa niemal 100% przypadków zakażenia, i daje około 0,2% „fałszywych alarmów”. Jakie jest prawdopodobieństwo, że badany obywatel jest
 
jest testowi na obecność wirusa HIV. Użyty test wykrywa niemal 100% przypadków zakażenia, i daje około 0,2% „fałszywych alarmów”. Jakie jest prawdopodobieństwo, że badany obywatel jest
nosicielem wirusa, jeśli test dał wynik pozytywny?''
+
nosicielem wirusa, jeśli test dał wynik pozytywny?
 
+
</cite>
  
 
Na pierwszy rzut oka wydaje się, że skoro test wykrywa wirusa fałszywie tylko w dwu  
 
Na pierwszy rzut oka wydaje się, że skoro test wykrywa wirusa fałszywie tylko w dwu  

Wersja z 09:10, 16 maj 2017

Wnioskowanie_Statystyczne_-_wykład


Twierdzenie Bayesa

Twierdzenie Bayesa można wyprowadzić z elementarnych reguł prawdopodobieństwa, wychodząc z definicji prawdopodobieństwa warunkowego. Ponieważ interesuje nas głównie weryfikacja hipotez statystycznych, przekształćmy ten wzór, wstawiając od razu zamiast zdarzeń [math]A[/math] i [math]B[/math] hipotezę [math]H[/math] i dane [math]D[/math]. Wtedy [math]P(D\mid H)[/math] będzie prawdopodobieństwem "wylosowania danych [math]D[/math] pod warunkiem, że prawdziwa jest hipoteza [math]H[/math]":

[math] P(D\mid H)=\frac{P(D\cap H)}{P(H)} \Longrightarrow P(D\cap H)=P(D\mid H) P(H). [/math]

Analogicznie

[math] P(H\mid D) = \frac{P(H\cap D)}{P(D)} \Longrightarrow P(H\cap D)=P(H\mid D) P(D). [/math]

Tak naprawdę interesuje nas prawdopodobieństwo prawdziwości hipotezy [math]H[/math] w świetle zdarzenia opisanego obserwowanymi danymi [math]D[/math]. Ponieważ [math]P(D\cap H)=P(H\cap D)[/math], czyli [math]P(D\mid H) P(H) = P(H\mid D) P(D)[/math], dostajemy

[math] P(H\mid D)=\frac{P(D\mid H) P(H)}{P(D)}. [/math]

Prawdopodobieństwo [math]P(D)[/math] uzyskania w doświadczeniu danych [math]D[/math] trudno ocenić bezpośrednio, jeśli nie wiemy, czy prawdziwa jest odnosząca się do nich hipoteza [math]H[/math]. W tej sytuacji należy wziąć pod uwagę wszystkie możliwe hipotezy [math]H_i[/math], tworzące kompletny, czyli pokrywający całą przestrzeń [math]\Omega[/math]: [math]\sum_i H_i=\Omega[/math] zbiór hipotez [math]H_i[/math] wykluczających się wzajemnie [math]\left( P(H_i\cap H_j\right)=0[/math]. Wtedy

[math] P(D)=P(D\cap\Omega)=\sum_i P(D\cap H_i). [/math]

Korzystając z (1) dostajemy

[math] P(D)=\sum_i P(D\mid H_i) P(H_i). [/math]

Wstawiając tę zależność do (2), i podstawiając za [math]H[/math] jedną z możliwych [math]H_i[/math], dostajemy wzór wyrażający twierdzenie Bayesa:

[math] P(H_i\mid D)=\frac{P(D\mid H_i)P(H_i)}{\sum_j P(D\mid H_j)P(H_j)}. [/math]

Prawdopodobieństwo hipotezy [math]H_i[/math] wyrażone jest przez:

  • prawdopodobieństwo uzyskania w jej świetle danych [math]D[/math], czyli [math]P(D\mid H_i)[/math]
  • stopień naszego zaufania do hipotezy [math]H_i[/math] (niezależny od eksperymentu, w którym uzyskaliśmy dane [math]D[/math]), czyli [math]P(H_i)[/math]
  • całkowite prawdopodobieństwo uzyskania danych [math]D[/math] w świetle wszystkich możliwych hipotez [math]H_j[/math], czyli [math]\sum_j P(D\mid H_j)P(H_j)[/math]

Najbardziej bulwersujące jest tu [math]P(H_i)[/math], wyrażające naszą wiarę w hipotezę [math]H_i[/math] niezależną od danych [math]D[/math]. Wielkość tę określa się mianem prawdopodobieństwa "a priori" , lub jak proponuje R. Nowak, "prawdopodobieństwem zaczątkowym" lub "zaczątkiem" . Dla odróżnienia od (szukanego) prawdopodobieństwa [math]P(H)[/math] oznaczmy zaczątek jako [math]P_0[/math]; wzór Bayesa przyjmie wtedy postać

[math] P(H_i\mid D)=\frac{P(D\mid H_i)P_0(H_i)}{\sum_j P(D\mid H_j)P_0(H_j)}. [/math]

Jeśli nie dysponujemy informacją o kompletnym zbiorze hipotez [math]H_i[/math], możemy badać stosunek prawdopodobieństw dwóch hipotez [math]H_1[/math] i [math]H_2[/math]:

[math] \frac{P(H_1\mid D)}{P(H_2\mid D)} = \frac{P(D\mid H_1)P_0(H_1)}{P(D\mid H_2)P_0(H_2)}. [/math]

Poniższe przykłady, zaczerpnięte z raportu Giuglio D'Agostini "Bayesian Reasoning in High Energy Physics - Principles and Applications", ilustrują twierdzenie Bayesa.



Uaktualnianie prawdopodobnieńswa zaczątkowego czyli Bayes w barze

Spotykamy w barze znajomego, który dla wyboru kto płaci za drinki proponuje prostą grę losową, na przykład płaci ten kto wyciągnie z zakrytej talii niższą kartę. Zgadzamy się wierząc w losowość gry (czyli uczciwość znajomego, który grę prowadzi), ale jeśli przegramy kilka razy z rzędu zaczynamy wątpić. Opiszmy to liczbami:

Na początku przyjmujemy, że znajomy proponuje uczciwą grę losową, z prawdopodobieństwem na przykład [math]P_0(U)=0.95[/math]. Poziom naszej początkowej wiary z możliwość przeciwną, czyli że jeteśmy oszukiwani, wynosi wtedy [math]P_0(O)=0.05[/math]. Dla uproszczenia załóżmy, że jeśli prowadzący grę znajomy oszukuje, to zawsze wygra, czyli prawdopodobieństwo wygrania w każdej z gier wyniesie wtedy [math]P(W|C)=1[/math]. Jeśli gra byłaby uczciwa (losowa), to prawdopodobieństwo wygrania w każdej grze wynosiłoby [math]0.5[/math], czyli [math]P(W|U)=2^{-1}[/math]. Jeśli kolejne gry są zdarzeniami niezależnymi, to prawdopodobieństwo wygrania w [math]n[/math] kolejnych grach wyniesie [math]P(W_n|U)=2^{-n}[/math]

Ostatecznie

[math] P(O|W_n)=\frac{ P(W_n|O) P_0(O) }{ P(W_n|O) P_0(O) + P(W_n|U) P_0(U) } [/math]


[math] P(O|W_n)=\frac{P_0(O) }{ P_0(O) +2^{-n} [1 - P_0(O)] } [/math]

import matplotlib.pyplot as plt
import numpy
t = numpy.arange(0, 20.0, 1.0)
def p(n,p0c):
	return p0c/(p0c+(1-p0c)*0.5**n)
plt.plot(t, p(t, 0.01), label='$p_0=0.01$')
plt.plot(t, p(t, 0.05), label='$p_0=0.05$')
plt.plot(t, p(t, 0.5), label='$p_0=0.5$')
plt.xlabel('n')
plt.ylabel('P')
plt.grid(True)
plt.legend()
plt.show()
Bayes w barze.png

'Prawdziwe' prawdopodobieństwo zarażenia w świetle wyników testu na HIV

Podobnie jak powyższy, ten przykład również zaczerpnięto z cytowanego poniżej tekstu d'Agostiniego:

Przypadkowo wybrany z populacji (w której na 60 milionów jest około stu tysięcy nosicieli wirusa) obywatel poddany jest testowi na obecność wirusa HIV. Użyty test wykrywa niemal 100% przypadków zakażenia, i daje około 0,2% „fałszywych alarmów”. Jakie jest prawdopodobieństwo, że badany obywatel jest nosicielem wirusa, jeśli test dał wynik pozytywny?

Na pierwszy rzut oka wydaje się, że skoro test wykrywa wirusa fałszywie tylko w dwu przypadkach na tysiąc, to szukane prawdopodobieństwo wynosi 1-0,2%[math]\approx[/math] 99.8%. Jednakże, jeśli wziąć pod uwagę prawdopodobieństwo a priori (zaczątek) wynoszące 100 000/60 000 000 [math]\approx[/math] 2% otrzymamy wartość bliską 50%!

Na początek wyobraźmy sobie wynik tego testu na całej populacji: będzie on pozytywny dla stu tysięcy zarażonych i dla 0,2% pozostałych, czyli w sumie 220 tysięcy. Wśród nich faktycznych nosicieli będzie tylko sto tysięcy, pozostali będą ofiarami błędu testu. Prawdopodobieństwo, że jesteśmy nosicielem, jeśli znaleźliśmy się w tej grupie, jest równe [math]\frac{100 000}{220000}\approx[/math] 45% (a nie 99,8%!).

Formalnie możemy dowieść tego wyniku korzystając z (2) i (4). Oznaczmy:

  • [math]P(+)[/math] --- prawdopodobieństwo pozytywnego wyniku testu,
  • [math]P(HIV)[/math] --- prawdopodobieństwo, że badany jest nosicielem (zaczątek),
  • [math]P(\overline{HIV})[/math] --- prawdopodobieństwo, że badany nie jest nosicielem (również zaczątek).


Z opisu przykładu dostaniemy: [math]P(+|HIV)\approx 1[/math],

[math]P(+|\overline{HIV})=0,002[/math],

[math]P(HIV)= \frac{100 000}{60 000 000} = \frac{1}{600}[/math]

[math]P(\overline{HIV}) \approx 1[/math].

Szukamy [math]P(HIV|+)[/math]:

[math]\begin{matrix} P(HIV|+)& =& \frac{P(+|HIV)P(HIV)}{P(+)}\\ P(\overline{HIV}|+)& = &\frac{P(+|\overline{HIV})P(\overline{HIV})}{P(+)}\\ \frac{P(HIV|+)}{P(\overline{HIV}|+)}&=&\frac{P(+|HIV)P(HIV)}{P(+|\overline{HIV})P(\overline{HIV})} = \frac{1 \cdot \frac{1}{600}}{0,002 \cdot 1} = \frac{1}{1,2}. \end{matrix}[/math]

Ponieważ [math]P(HIV|+) + P(\overline{HIV}|+) = 1[/math], dostajemy [math]P(\overline{HIV}|+) \approx 0.455[/math], czyli ok. 45%

Referencja

Polecam doskonały tekst Giuglio D'Agostini z 1995 roku pt. "Probability and Measurement Uncertainty in Physics - a Bayesian Primer", dostępny z https://arxiv.org/abs/hep-ph/9512295