0Pricing
Learn AI with Python · Lekcja

Prawdopodobieństwo i twierdzenie Bayesa

Prawdopodobieństwo łączne i warunkowe, niezależność oraz twierdzenie Bayesa na rzeczywistych przykładach AI.

Prawdopodobieństwo i twierdzenie Bayesa to bezpłatna lekcja Learn AI with Python na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Learn AI with Python, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Learn AI with Python zawiera 4 lekcji w sumie.

Podstawy prawdopodobieństwa

Prawdopodobieństwo to liczba od 0 do 1 mierząca, jak możliwe jest wystąpienie zdarzenia. Prawdopodobieństwo warunkowe P(A|B) to szansa wystąpienia A przy założeniu, że zaszło B.

Prawdopodobieństwo warunkowe

P(A|B) = P(A and B) / P(B). Warunkowanie zawęża przestrzeń prób do przypadków, w których B jest prawdziwe.

p_a_and_b = 0.12
p_b = 0.30
print(p_a_and_b / p_b)   # P(A | B) = 0.4

Twierdzenie Bayesa

Twierdzenie Bayesa odwraca warunkowanie: P(A|B) = P(B|A) * P(A) / P(B). Aktualizuje ono początkowe przekonanie P(A) do przekonania a posteriori po zaobserwowaniu dowodu B.

Nazewnictwo składników

Prior P(A): przekonanie przed uzyskaniem dowodu. Likelihood P(B|A): stopień, w jakim A wyjaśnia dowód. Posterior P(A|B): zaktualizowane przekonanie. Evidence P(B): suma normalizująca.

Prawo całkowitego prawdopodobieństwa

Mianownik P(B) znajduje się przez zsumowanie wszystkich przypadków: P(B) = P(B|A)*P(A) + P(B|not A)*P(not A). W ten sposób dowód zostaje rozłożony na znane składniki.

p_a = 0.01            # prior
p_b_given_a = 0.99   # likelihood
p_b_given_not_a = 0.05
p_not_a = 1 - p_a
p_b = p_b_given_a * p_a + p_b_given_not_a * p_not_a
print(p_b)

Przykład testu medycznego

Choroba dotyczy 1 procenta osób. Test ma czułość 99 procent, ale odsetek wyników fałszywie dodatnich wynosi 5 procent. Jakie jest prawdopodobieństwo, że jest Pan/Pani chory/chora PRZY DODATNIM WYNIKU testu?

posterior = (p_b_given_a * p_a) / p_b
print(round(posterior, 3))   # about 0.167

Zaskakujący wynik

Mimo że test ma skuteczność 99 procent, wynik pozytywny oznacza tylko 17-procentowe prawdopodobieństwo choroby. Rzadka częstość bazowa (początkowe prawdopodobieństwo 1 procent) dominuje — jest to klasyczny błąd częstości bazowej.

Niezależność

Dwa zdarzenia są niezależne, gdy P(A|B) = P(A), więc zaobserwowanie B nie dostarcza żadnej informacji o A. Wtedy P(A and B) = P(A) * P(B).

p_a, p_b = 0.5, 0.5
print(p_a * p_b)   # 0.25 if independent (e.g. two fair coins)

Problem Monty Halla

Za trojgiem drzwi znajduje się jeden samochód. Wybiera Pan/Pani jedne drzwi, a prowadzący otwiera inne, pokazując kozę, po czym proponuje zmianę wyboru. Wbrew intuicji zmiana wygrywa w 2/3 przypadków.

Symulowanie problemu Monty Halla

Symulacja potwierdza obliczenia. Zmiana wyboru prowadzi do wygranej zawsze wtedy, gdy pierwszy wybór był błędny, co zdarza się w 2 na 3 przypadki.

import random
def trial(switch):
    car = random.randint(0, 2)
    pick = random.randint(0, 2)
    if switch:
        return pick != car   # switching wins if first pick was wrong
    return pick == car

wins = sum(trial(True) for _ in range(100000))
print(wins / 100000)   # about 0.667

Dlaczego zmiana wyboru prowadzi do wygranej

Pierwszy wybór jest trafny w 1/3 przypadków. Odkrycie prowadzącego skupia pozostałe 2/3 prawdopodobieństwa na jedynych nieotwartych drzwiach, więc zmiana wyboru daje te 2/3 prawdopodobieństwa.

Szybkie sprawdzenie

Proszę sprawdzić swoje rozumowanie probabilistyczne.

Podsumowanie

Najważniejsze zagadnienia dotyczące prawdopodobieństwa:

  • Warunkowe: P(A|B) = P(A and B)/P(B)
  • Bayes: P(A|B) = P(B|A)P(A)/P(B) aktualizuje prawdopodobieństwo początkowe do prawdopodobieństwa a posteriori
  • Prawo całkowitego prawdopodobieństwa rozkłada P(B) na składniki
  • Błąd częstości bazowej: rzadkie warunki prowadzą do niskich prawdopodobieństw a posteriori mimo dokładnych testów
  • Monty Hall: zmiana wyboru prowadzi do wygranej w 2/3 przypadków

Często zadawane pytania

Czy lekcja „Prawdopodobieństwo i twierdzenie Bayesa” jest bezpłatna?

Tak — pełny tekst „Prawdopodobieństwo i twierdzenie Bayesa” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Learn AI with Python, przejdź na CoddyKit PRO. Kurs Learn AI with Python zawiera 4 lekcji w sumie.

Co nauczysz się w „Prawdopodobieństwo i twierdzenie Bayesa”?

Prawdopodobieństwo łączne i warunkowe, niezależność oraz twierdzenie Bayesa na rzeczywistych przykładach AI. Ćwiczysz Learn AI with Python z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Learn AI with Python?

Nie wymagamy żadnego doświadczenia. Learn AI with Python w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Prawdopodobieństwo i twierdzenie Bayesa”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Learn AI with Python?

Tak. Każda lekcja Learn AI with Python zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Statystyki opisowe i rozkłady
  2. Prawdopodobieństwo i twierdzenie Bayesa
  3. Testowanie hipotez
  4. Korelacja i kowariancja
← Powrót do Learn AI with Python