MinAI - Về trang chủ
Lý thuyết
5/122 giờ
Đang tải...

Xác suất & Bayes' Theorem

Các khái niệm xác suất cơ bản, xác suất có điều kiện và Bayes' Theorem

0

🎯 Mục tiêu bài học

TB5 min

Sau bài học này, bạn sẽ:

✅ Hiểu các khái niệm cơ bản về xác suất

✅ Nắm vững các quy tắc tính xác suất

✅ Hiểu và tính xác suất có điều kiện

✅ Nắm vững Bayes' Theorem và ứng dụng thực tế

Thời gian: 2 giờ | Độ khó: Intermediate | Yêu cầu: Bài 04

1

📖 Bảng Thuật Ngữ Quan Trọng

TB5 min
Thuật ngữTiếng ViệtMô tả
ExperimentThí nghiệmHành động có kết quả không chắc chắn
Sample SpaceKhông gian mẫuTập hợp tất cả outcomes
EventBiến cốTập con của sample space
Mutually ExclusiveXung khắcHai biến cố không đồng thời xảy ra
IndependentĐộc lậpBiến cố này không ảnh hưởng biến cố kia
Conditional ProbabilityXác suất có điều kiệnP(A|B) = P(A∩B)/P(B)
PriorXác suất tiên nghiệmP(B) trước khi có evidence
PosteriorXác suất hậu nghiệmP(B|A) sau khi có evidence
PermutationHoán vịSắp xếp có thứ tự
CombinationTổ hợpChọn không thứ tự

Checkpoint

Bayes = Prior + Evidence → Posterior. Ghi nhớ!

2

📚 Các khái niệm cơ bản

TB5 min

1.1 Thuật ngữ

Thuật ngữĐịnh nghĩaVí dụ
ExperimentThí nghiệm có kết quả không chắc chắnTung xúc xắc
OutcomeMột kết quả có thể xảy raMặt 3
Sample Space (S)Tập hợp tất cả outcomes6
Event (A)Tập con của sample spaceSố chẵn: 6

1.2 Ví dụ Sample Space

Ví dụ Sample Space

🎯Experiment
3

🎲 Định nghĩa Xác suất

TB5 min

2.1 Classical Probability

P(A)=Soˆˊ outcomes thuận lợiTổng soˆˊ outcomes=n(A)n(S)P(A) = \frac{\text{Số outcomes thuận lợi}}{\text{Tổng số outcomes}} = \frac{n(A)}{n(S)}

Điều kiện: Các outcomes có khả năng xảy ra như nhau (equally likely).

2.2 Ví dụ

Tung 1 xúc xắc cân đối:

  • P(số 3) = 16\frac{1}{6}
  • P(số chẵn) = 36=12\frac{3}{6} = \frac{1}{2}
  • P(số > 4) = 26=13\frac{2}{6} = \frac{1}{3}

Rút 1 lá từ bộ 52 lá:

  • P(Át) = 452=113\frac{4}{52} = \frac{1}{13}
  • P(Cơ) = 1352=14\frac{13}{52} = \frac{1}{4}
  • P(Át Cơ) = 152\frac{1}{52}

2.3 Tính chất cơ bản

Tính chấtCông thức
Xác suất nằm trong [0, 1]0P(A)10 \leq P(A) \leq 1
Xác suất chắc chắnP(S)=1P(S) = 1
Xác suất không thểP()=0P(\emptyset) = 0
Xác suất bùP(A)=1P(A)P(A') = 1 - P(A)
4

➕ Quy tắc cộng (Addition Rule)

TB5 min

3.1 Biến cố xung khắc (Mutually Exclusive)

P(AB)=P(A)+P(B)P(A \cup B) = P(A) + P(B)

Ví dụ: Tung xúc xắc — A = 2, B = 6

  • P(A ∪ B) = 26+26=46\frac{2}{6} + \frac{2}{6} = \frac{4}{6}

3.2 Biến cố không xung khắc

P(AB)=P(A)+P(B)P(AB)P(A \cup B) = P(A) + P(B) - P(A \cap B)

Ví dụ: Rút 1 lá bài — A = Cơ (13 lá), B = Hình (12 lá), A ∩ B = Hình Cơ (3 lá)

P(AB)=1352+1252352=2252P(A \cup B) = \frac{13}{52} + \frac{12}{52} - \frac{3}{52} = \frac{22}{52}

3.3 Code Python

Python
1# Tung xúc xắc
2S = {1, 2, 3, 4, 5, 6}
3A = {1, 2} # số ≤ 2
4B = {5, 6} # số ≥ 5
5C = {2, 4, 6} # số chẵn
6
7# Mutually exclusive
8P_A_or_B = len(A) / len(S) + len(B) / len(S)
9print(f"P(A ∪ B) mutually exclusive: {P_A_or_B:.4f}")
10
11# Not mutually exclusive
12A_and_C = A & C
13P_A_or_C = len(A)/len(S) + len(C)/len(S) - len(A_and_C)/len(S)
14print(f"P(A ∪ C) not mutually exclusive: {P_A_or_C:.4f}")
5

✖️ Quy tắc nhân & Complement

TB5 min

4.1 Biến cố độc lập

P(AB)=P(A)×P(B)P(A \cap B) = P(A) \times P(B)

Ví dụ: Tung đồng xu 2 lần — P(HH) = 12×12=14\frac{1}{2} \times \frac{1}{2} = \frac{1}{4}

4.2 Biến cố phụ thuộc

P(AB)=P(A)×P(BA)P(A \cap B) = P(A) \times P(B|A)

Ví dụ: Rút 2 lá bài KHÔNG hoàn lại — P(2 Át) = 452×351\frac{4}{52} \times \frac{3}{51}

4.3 Xác suất bù (Complement)

P(A)=1P(A)P(A') = 1 - P(A)

Bài toán "ít nhất một": P(ıˊt nhaˆˊt 1)=1P(khoˆng coˊ caˊi naˋo)P(\text{ít nhất 1}) = 1 - P(\text{không có cái nào})

Ví dụ: P(ít nhất 1 Head trong 3 lần tung) = 1P(TTT)=118=781 - P(TTT) = 1 - \frac{1}{8} = \frac{7}{8}

Python
1# P(ít nhất 1 Head trong n lần tung)
2def prob_at_least_one_head(n):
3 P_no_head = (1/2) ** n
4 return 1 - P_no_head
5
6for n in [1, 2, 3, 5, 10]:
7 print(f"n={n}: P(≥1 Head) = {prob_at_least_one_head(n):.4f}")
6

🔢 Counting Techniques

TB5 min

5.1 Permutation (Hoán vị) — có thứ tự

P(n,r)=n!(nr)!P(n, r) = \frac{n!}{(n-r)!}

5.2 Combination (Tổ hợp) — không thứ tự

C(n,r)=(nr)=n!r!(nr)!C(n, r) = \binom{n}{r} = \frac{n!}{r!(n-r)!}

Python
1from math import factorial, comb, perm
2
3n, r = 5, 3
4print(f"P({n},{r}) = {perm(n, r)}") # 60
5print(f"C({n},{r}) = {comb(n, r)}") # 10
6
7# Xổ số: chọn 6 từ 45
8lottery = comb(45, 6)
9print(f"Xác suất trúng xổ số: 1/{lottery:,}")
7

🔮 Xác suất có điều kiện

TB5 min

6.1 Định nghĩa

P(A|B) = Xác suất xảy ra A, biết rằng B đã xảy ra.

P(AB)=P(AB)P(B)P(A|B) = \frac{P(A \cap B)}{P(B)}

6.2 Ví dụ

Tung xúc xắc: B = "Số chẵn" = 6, A = "Số > 3" = 6

P(AB)={4,6}/63/6=23P(A|B) = \frac{|\{4, 6\}|/6}{3/6} = \frac{2}{3}

Khi biết B xảy ra, sample space thu hẹp thành B.

6.3 Chain Rule

P(ABC)=P(A)×P(BA)×P(CAB)P(A \cap B \cap C) = P(A) \times P(B|A) \times P(C|A \cap B)

Ví dụ: Rút 3 lá Át liên tiếp (không hoàn lại): P=452×351×2500.00018P = \frac{4}{52} \times \frac{3}{51} \times \frac{2}{50} \approx 0.00018

6.4 Kiểm tra tính độc lập

A và B độc lập khi: P(AB)=P(A)P(A|B) = P(A), tương đương P(AB)=P(A)×P(B)P(A \cap B) = P(A) \times P(B)

Python
1def check_independence(P_A, P_B, P_A_and_B):
2 expected = P_A * P_B
3 is_independent = abs(P_A_and_B - expected) < 0.0001
4 print(f"P(A)×P(B) = {expected:.4f}, P(A∩B) = {P_A_and_B:.4f}")
5 print(f"Independent: {is_independent}")
6
7check_independence(0.5, 0.3, 0.15) # Độc lập
8check_independence(0.5, 0.3, 0.20) # Không độc lập
8

∑ Law of Total Probability

TB5 min

7.1 Công thức

Nếu B1,B2,...,BnB_1, B_2, ..., B_nphân hoạch của S:

P(A)=i=1nP(ABi)×P(Bi)P(A) = \sum_{i=1}^{n} P(A|B_i) \times P(B_i)

7.2 Ví dụ: Nhà máy sản xuất

  • Máy 1: 60% sản phẩm, tỷ lệ lỗi 3%
  • Máy 2: 40% sản phẩm, tỷ lệ lỗi 5%

P(D)=0.03×0.60+0.05×0.40=0.038P(D) = 0.03 \times 0.60 + 0.05 \times 0.40 = 0.038

Python
1P_D = 0.03 * 0.60 + 0.05 * 0.40
2print(f"P(Defective) = {P_D:.4f}") # 0.038
9

🎯 Bayes' Theorem

TB5 min

8.1 Công thức

P(BA)=P(AB)×P(B)P(A)P(B|A) = \frac{P(A|B) \times P(B)}{P(A)}

Dạng đầy đủ:

P(BiA)=P(ABi)×P(Bi)jP(ABj)×P(Bj)P(B_i|A) = \frac{P(A|B_i) \times P(B_i)}{\sum_{j} P(A|B_j) \times P(B_j)}

8.2 Thuật ngữ

TênKý hiệuÝ nghĩa
PriorP(B)Xác suất ban đầu
LikelihoodP(A|B)Xác suất quan sát A khi B đúng
EvidenceP(A)Xác suất quan sát A
PosteriorP(B|A)Xác suất B sau khi quan sát A

Bayes' Theorem - Cập nhật xác suất

📊Prior P(B)
🔍+ Evidence A
🎯Posterior P(B|A)

8.3 Ví dụ: Chẩn đoán bệnh

  • P(Bệnh) = 0.01, P(+|Bệnh) = 0.99, P(+|Không bệnh) = 0.05

P(+)=0.99×0.01+0.05×0.99=0.0594P(+) = 0.99 \times 0.01 + 0.05 \times 0.99 = 0.0594

P(B+)=0.99×0.010.05940.167P(B|+) = \frac{0.99 \times 0.01}{0.0594} \approx 0.167

Kết quả bất ngờ!

Dù test có độ chính xác 99%, xác suất thực sự mắc bệnh khi dương tính chỉ ~17%! Đây là do base rate thấp.

8.4 Code Python

Python
1def bayes_theorem(P_B, P_A_given_B, P_A_given_not_B):
2 P_not_B = 1 - P_B
3 P_A = P_A_given_B * P_B + P_A_given_not_B * P_not_B
4 P_B_given_A = (P_A_given_B * P_B) / P_A
5 return P_B_given_A, P_A
6
7# Chẩn đoán bệnh
8P_disease_given_positive, P_positive = bayes_theorem(0.01, 0.99, 0.05)
9print(f"P(Dương tính) = {P_positive:.4f}")
10print(f"P(Bệnh | Dương tính) = {P_disease_given_positive:.4f}")

Checkpoint

P(Bệnh|Dương tính) chỉ ~17% dù test 99% chính xác. Tại sao? Vì base rate thấp!

10

💻 Ứng dụng thực tế

TB5 min

9.1 Spam Filter (Naive Bayes)

Python
1def spam_filter(word, P_spam=0.3, P_word_given_spam=0.8, P_word_given_ham=0.1):
2 P_ham = 1 - P_spam
3 P_word = P_word_given_spam * P_spam + P_word_given_ham * P_ham
4 return (P_word_given_spam * P_spam) / P_word
5
6P_spam = spam_filter("FREE")
7print(f"P(Spam | 'FREE') = {P_spam:.4f}") # ~0.77

9.2 Bài toán sinh nhật

Python
1def birthday_problem(n):
2 P_no_match = 1
3 for i in range(n):
4 P_no_match *= (365 - i) / 365
5 return 1 - P_no_match
6
7for n in [10, 23, 30, 50, 70]:
8 print(f"n={n}: P = {birthday_problem(n):.4f}")
9# n=23: P ≈ 50%, n=50: P ≈ 97%
11

🧩 Bài tập thực hành

TB5 min

Bài tập 1: Xúc xắc

Tung 2 xúc xắc: P(tổng = 7)? P(tổng ≥ 10)? P(cả hai giống nhau)?

Bài tập 2: Conditional Probability

Trong lớp 100 sinh viên: 60 nam, 40 nữ. 15 nam và 10 nữ đạt loại giỏi.

  1. P(Giỏi | Nam)?
  2. P(Nam | Giỏi)?
  3. Nam và Giỏi có độc lập không?

Bài tập 3: Bayes

Công ty có 3 nhà máy: A (50%, 2% lỗi), B (30%, 3% lỗi), C (20%, 4% lỗi).

  1. P(Lỗi)?
  2. P(từ nhà máy A | Lỗi)?
12

📝 Tổng Kết

TB5 min
Quy tắcCông thức
Addition (ME)P(AB)=P(A)+P(B)P(A \cup B) = P(A) + P(B)
Addition (General)P(AB)=P(A)+P(B)P(AB)P(A \cup B) = P(A) + P(B) - P(A \cap B)
Multiplication (Ind)P(AB)=P(A)×P(B)P(A \cap B) = P(A) \times P(B)
ConditionalP(AB)=P(AB)/P(B)P(A\|B) = P(A \cap B) / P(B)
Total ProbabilityP(A)=P(ABi)P(Bi)P(A) = \sum P(A\|B_i)P(B_i)
BayesP(BA)=P(AB)P(B)/P(A)P(B\|A) = P(A\|B)P(B) / P(A)
ComplementP(A)=1P(A)P(A') = 1 - P(A)

Câu hỏi tự kiểm tra

  1. Sự khác nhau giữa xác suất có điều kiện P(A|B) và xác suất đồng thời P(A∩B) là gì?
  2. Định lý Bayes giúp giải quyết loại bài toán nào trong thực tế?
  3. Tại sao Base Rate (prior probability) quan trọng và không nên bỏ qua?
  4. Khi nào nên dùng quy tắc Complement P(A') = 1 - P(A) thay vì tính trực tiếp?
Key Takeaways
  1. Xác suất luôn từ 0 đến 1
  2. Complement hữu ích cho bài toán "ít nhất một"
  3. Conditional probability thu hẹp sample space
  4. Bayes' Theorem cập nhật belief dựa trên evidence
  5. Base rate (prior) rất quan trọng — đừng bỏ qua!

🎉 Tuyệt vời! Bạn đã hoàn thành bài học Xác suất & Định lý Bayes!

Tiếp theo: Chúng ta sẽ tìm hiểu các phân phối rời rạc (Binomial, Poisson) — công cụ mạnh mẽ để mô hình hóa dữ liệu đếm.