Jak zastosować twierdzenie bayesa w r


Twierdzenie Bayesa stwierdza, co następuje dla dwóch zdarzeń A i B :

P(A|B) = P(A)*P(B|A) / P(B)

Złoto:

  • P(A|B): Prawdopodobieństwo, że zdarzenie A przy danym zdarzeniu B miało miejsce.
  • P(B|A): Prawdopodobieństwo, że zdarzenie B miało miejsce, przy założeniu, że wystąpiło zdarzenie A.
  • P(A): Prawdopodobieństwo zdarzenia A.
  • P(B): Prawdopodobieństwo zdarzenia B.

Załóżmy na przykład, że prawdopodobieństwo, że pogoda będzie pochmurna, wynosi 40%. Załóżmy również, że prawdopodobieństwo opadów deszczu w danym dniu wynosi 20%, a prawdopodobieństwo zachmurzenia w deszczowy dzień wynosi 85%.

Jeśli danego dnia na zewnątrz jest pochmurno, jakie jest prawdopodobieństwo, że tego dnia będzie padać deszcz?

Rozwiązanie :

  • P(pochmurno) = 0,40
  • P(deszcz) = 0,20
  • P(pochmurno | deszcz) = 0,85

W ten sposób możemy obliczyć:

  • P(deszcz | pochmurno) = P(deszcz) * P(pochmurno | deszcz) / P(pochmurno)
  • P(deszcz | pochmurno) = 0,20 * 0,85 / 0,40
  • P(deszcz | pochmurno) = 0,425

Jeśli w danym dniu na zewnątrz jest pochmurno, szansa na deszcz w tym dniu wynosi 42,5% .

Możemy utworzyć następującą prostą funkcję, aby zastosować twierdzenie Bayesa w R:

 bayesTheorem <- function (pA, pB, pBA) {
  pAB <- pA * pBA / pB
  return (pAB)
}

Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.

Przykład: Twierdzenie Bayesa w R

Załóżmy, że znamy następujące prawdopodobieństwa:

  • P(deszcz) = 0,20
  • P(pochmurno) = 0,40
  • P(pochmurno | deszcz) = 0,85

Aby obliczyć P(deszcz | pochmurno), możemy zastosować następującą składnię:

 #define function for Bayes' Theorem
bayesTheorem <- function (pA, pB, pBA) {
  pAB <- pA * pBA / pB
  return (pAB)
}

#define probabilities
pRain <- 0.2
pCloudy <- 0.4
pCloudyRain <- .85

#use function to calculate conditional probability
bayesTheorem(pRain, pCloudy, pCloudyRain)

[1] 0.425

Oznacza to, że jeśli danego dnia na zewnątrz jest pochmurno, prawdopodobieństwo, że tego dnia spadnie deszcz, wynosi 0,425 lub 42,5% .

Odpowiada to wartości, którą obliczyliśmy wcześniej ręcznie.

Dodatkowe zasoby

Poniższe tutoriale wyjaśniają, jak obliczyć inne prawdopodobieństwa w R:

Jak obliczyć prawdopodobieństwo warunkowe w R
Jak obliczyć średnią warunkową w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *