CH 20Phase 3 · Probability & Statistics for AI

Conditional Probability

১৫–২৫ মিনিট বাংলা · Math · Python
📖 একটি ছোট গল্প

আকাশে মেঘ দেখে আপনি ছাতা নেন। কেন? কারণ "মেঘ আছে" শর্তে "বৃষ্টি হবে"-এর probability বেড়ে যায়। এটাই Conditional Probability — নতুন information আসলে probability কীভাবে update হয়।

Intuitive Explanation

"B ঘটেছে — এই শর্তে A ঘটার probability" — symbol: P(A|B)

P(A|B) = P(A ∩ B) / P(B), যদি P(B) > 0

Sample space "shrink" হয়ে যায় — পুরো Ω-এর বদলে শুধু B-এর ভেতরে A কতটুকু আছে দেখি।

একটি Concrete Example

একটি dice roll। A = "৩-এর বেশি" = {4,5,6}, B = "জোড়" = {2,4,6}

P(A) = 3/6 = 0.5
P(A ∩ B) = |{4,6}| / 6 = 2/6
P(A|B) = (2/6) / (3/6) = 2/3

"জোড় এসেছে" জানার পর A-এর probability 0.5 → 0.667 বেড়ে গেল।

Chain Rule & Independence

Chain rule (multiplication rule)

P(A ∩ B) = P(A|B) · P(B) = P(B|A) · P(A)
P(A ∩ B ∩ C) = P(A) · P(B|A) · P(C|A ∩ B)

Independence

A এবং B independent হলে — একে অপরের probability change করে না:

P(A|B) = P(A), এবং P(A ∩ B) = P(A) · P(B)
⚠️ সতর্কতা
Conditional independence ≠ marginal independence। দুটি event marginally dependent হলেও তৃতীয় event-এর শর্তে independent হতে পারে — Naive Bayes-এর key assumption।

Python Implementation

pythonPython · NumPy
import numpy as np

# Empirical conditional probability from data
np.random.seed(0)
n = 100_000
dice = np.random.randint(1, 7, n)

A = dice > 3            # {4,5,6}
B = dice % 2 == 0       # {2,4,6}

p_a = A.mean()
p_b = B.mean()
p_ab = (A & B).mean()
p_a_given_b = p_ab / p_b

print(f"P(A) = {p_a:.4f}")
print(f"P(B) = {p_b:.4f}")
print(f"P(A ∩ B) = {p_ab:.4f}")
print(f"P(A|B) = {p_a_given_b:.4f}  (theoretical: 2/3 = 0.6667)")

# Independence check
print(f"\nP(A) * P(B) = {p_a * p_b:.4f}")
print(f"P(A ∩ B)    = {p_ab:.4f}")
print(f"=> A and B are {'independent' if abs(p_a*p_b - p_ab) < 0.01 else 'NOT independent'}")

AI/ML সংযোগ

  • Language model: next token prediction = P(wt | w1,...,wt−1)
  • Naive Bayes classifier: feature-গুলো class-এর শর্তে conditionally independent ধরে নেয়।
  • Hidden Markov Model: P(observation | state)
  • Diffusion model: P(xt−1 | xt) — সব denoising step একটি conditional।

Common Mistakes

  • P(A|B) = P(B|A) ধরে নেওয়া — ভুল (এটা base-rate fallacy)।
  • Independence assume করা যখন data clearly correlated।
  • P(B) = 0 হলে P(A|B) undefined।

Practice Tasks

  1. ২টি dice-এ sum = 8 জানা গেছে — দুটোই even হওয়ার probability কত?
  2. একটি family-তে ২ সন্তান। অন্তত একটি ছেলে — দুটোই ছেলে হওয়ার probability?
  3. ৫২ card থেকে ২টি card টানা হলো replacement ছাড়া। প্রথমটি ace — দ্বিতীয়টিও ace হওয়ার probability?

Assignment

একটি দোকানে ২টি urn আছে। Urn 1: ৭ red, ৩ blue। Urn 2: ৪ red, ৬ blue। একটি urn randomly বেছে একটি ball টানা হলো — red হলো। কোন urn থেকে এসেছে সবচেয়ে সম্ভব? Conditional probability দিয়ে দেখান।

Interview Questions

  1. P(A|B) এবং P(B|A)-এর মধ্যে সম্পর্ক?
  2. Independence এবং conditional independence-এর পার্থক্য — example সহ।
  3. Naive Bayes-এ "naive" শব্দটি কেন?

Mini Project

"Email Spam Filter (Naive Bayes)" — কিছু labeled email নিয়ে word frequency থেকে P(word | spam) এবংP(word | ham) calculate করে নতুন email-কে classify করুন।

Summary · সারসংক্ষেপ

  • P(A|B) = P(A ∩ B) / P(B) — sample space shrink হয়।
  • Chain rule = joint probability-কে conditional-এর product হিসেবে লেখা।
  • Independence: P(A|B) = P(A)
  • আধুনিক AI-এর প্রায় সব generative ও sequential model conditional probability-এর উপর দাঁড়ানো।
✨ পরবর্তী পদক্ষেপ
Chapter 21-এ Bayes Theorem — conditional probability-কে উল্টিয়ে দেওয়ার জাদু।