সমাধান — Chapter 2.3: Random Variables & Discrete Distributions¶
অধ্যায়
part-2-probability-foundations/02-03-random-variables-discrete.md-এর §৭ অনুশীলনীর পূর্ণ সমাধান।
৭.১ Conceptual¶
Q1 (★) — কোনগুলো discrete¶
একটা random variable discrete যদি তার সম্ভাব্য মানগুলো গণনাযোগ্য (countable — সসীম বা গণনাযোগ্য-অসীম) হয়।
- (ক) দোকানে ক্রেতার সংখ্যা — discrete। মান \(\{0,1,2,\dots\}\), গণনাযোগ্য।
- (খ) মানুষের ঠিক উচ্চতা — discrete নয় (continuous)। একটা ব্যবধির যেকোনো বাস্তব মান নিতে পারে (যেমন \(170.0\), \(170.001\), …)।
- (গ) ১০ toss-এ head-সংখ্যা — discrete। মান \(\{0,1,\dots,10\}\), সসীম। (এটা Binomial\((10,p)\)।)
- (ঘ) bus-এর অপেক্ষার সময় — discrete নয় (continuous)। \([0,\infty)\)-এর যেকোনো মান।
মূল কথা: গোনা যায় এমন জিনিস (সংখ্যা, count) → discrete; মাপা যায় এমন জিনিস (দৈর্ঘ্য, সময়, ওজন) → সাধারণত continuous (2.4)।
Q2 (★) — কেন random variable একটা function¶
০.১-এ function-এর সংজ্ঞা: এক set-এর প্রতিটি উপাদানের জন্য আরেক set-এ ঠিক একটা মান নির্দিষ্ট করে এমন নিয়ম। Random variable \(X:\Omega\to\mathbb{R}\) ঠিক তাই করে — প্রতিটি outcome \(\omega\in\Omega\)-কে একটা নির্দিষ্ট বাস্তব সংখ্যা \(X(\omega)\)-তে পাঠায়। তাই এটা domain \(\Omega\) ও codomain \(\mathbb{R}\)-যুক্ত একটা function।
"\(X=2\)" আসলে একটা সংখ্যা নয়, বরং একটা event (subset): \(\{\omega\in\Omega \mid X(\omega)=2\}\) — অর্থাৎ যেসব outcome-এ \(X\)-এর মান \(2\), তাদের set। এর probability-ই \(p_X(2)=P(X=2)\)।
Q3 (★★) — সব count data কি Poisson?¶
ভুলটা হলো ধরে নেওয়া যে count মানেই mean \(=\) variance। বাস্তব count data-তে প্রায়ই overdispersion দেখা যায় — variance, mean-এর চেয়ে বড় (যেমন গুচ্ছবদ্ধ বা ভিন্নধর্মী ঘটনা, যেখানে rate নিজেই ওঠানামা করে)। Poisson সেই ক্ষেত্রে spread কম-আন্দাজ করে (underestimate)।
তখন উপযুক্ত হলো Negative Binomial\((r,p)\) (§২.৬), যার একটা অতিরিক্ত parameter আছে; এতে variance স্বাধীনভাবে mean-এর চেয়ে বড় হতে পারে (\(\mathrm{Var}>\mathbb{E}\))। তাই Negative Binomial-কে প্রায়ই "overdispersed Poisson"-এর বিকল্প হিসেবে count modeling-এ ব্যবহার করা হয়। (উল্টোদিকে underdispersion-ও সম্ভব, তবে তা বিরল।)
৭.২ Computational¶
Q4 (★) — Bernoulli(0.7)¶
\(X\sim\) Bernoulli\((p)\) with \(p=0.7\)।
(ক) PMF: \(p_X(1)=0.7,\quad p_X(0)=1-0.7=0.3\)।
(খ) §২.৫ সূত্র দিয়ে: $$ \mathbb{E}[X]=p=0.7, \qquad \mathrm{Var}(X)=p(1-p)=0.7\times0.3=0.21. $$ (\(\sigma=\sqrt{0.21}\approx0.458\)।)
Q5 (★★) — call center, Poisson(4)¶
(ক) \(P(X=5)=\dfrac{4^5 e^{-4}}{5!}=\dfrac{1024\,e^{-4}}{120}\approx \mathbf{0.1563}\)।
(খ) \(P(X>2)=1-P(X\le2)=1-\big[p(0)+p(1)+p(2)\big]\)। এখানে \(p(0)=e^{-4}\approx0.0183\), \(p(1)=4e^{-4}\approx0.0733\), \(p(2)=8e^{-4}\approx0.1465\), তাই \(P(X\le2)\approx0.2381\), এবং $$ P(X>2)\approx 1-0.2381 = \mathbf{0.7619}. $$
(গ) Poisson rate সময়ের সাথে সমানুপাতিক: ঘণ্টায় \(\lambda=4\) হলে আধ ঘণ্টায় \(\lambda'=4\times\tfrac12=\mathbf{2}\)। সেই আধ ঘণ্টায় কোনো call না আসার probability: $$ P(X=0)=e^{-\lambda'}=e^{-2}\approx \mathbf{0.1353}. $$
Q6 (★★) — পরীক্ষা, Binomial(8, 0.6)¶
(ক) \(P(X=5)=\binom{8}{5}(0.6)^5(0.4)^3 = 56\times0.07776\times0.064 \approx \mathbf{0.2787}\)।
(খ) \(\mathbb{E}[X]=np=8\times0.6=\mathbf{4.8}\) সঠিক উত্তর প্রত্যাশিত; \(\mathrm{Var}(X)=np(1-p)=8(0.6)(0.4)=1.92\), তাই \(\sigma=\sqrt{1.92}\approx\mathbf{1.386}\)।
(গ) "প্রথম ভুল উত্তর \(4\)নং প্রশ্নে" — এখানে "ভুল হওয়া" কে success ধরি, যার probability \(p_{\text{fail}}=1-0.6=0.4\)। প্রথম তিনটি সঠিক (probability \(0.6\) প্রতিটি), চতুর্থটি ভুল — Geometric: $$ P(X=4)=(0.6)^3(0.4)=0.216\times0.4=\mathbf{0.0864}. $$
৭.৩ Proof-based¶
Q7 (★★) — Geometric PMF যোগফল \(1\)¶
$$ \sum_{k=1}^{\infty}(1-p)^{k-1}p = p\sum_{k=1}^{\infty}(1-p)^{k-1}. $$ ভেতরের যোগফলে \(j=k-1\) ধরলে \(\sum_{j=0}^{\infty}(1-p)^{j}\) — একটা geometric series যেখানে অনুপাত \(r=1-p\) এবং \(0<r<1\) (ধরে নিচ্ছি \(0<p<1\))। তাই \(\sum_{j=0}^{\infty}r^j = \dfrac{1}{1-r}=\dfrac{1}{1-(1-p)}=\dfrac{1}{p}\)। ফলে $$ \sum_{k=1}^{\infty}(1-p)^{k-1}p = p\cdot\frac{1}{p}=1. \qquad\blacksquare $$ (এটাই §৪.৪খ-এর Poisson-যোগফল প্রমাণের অনুরূপ গঠন — শুধু exponential series-এর বদলে geometric series।)
Q8 (★★★) — Binomial mean linearity দিয়ে; কেন variance-এ independence লাগে¶
\(X\sim\) Binomial\((n,p)\)-কে লিখি \(X=\sum_{i=1}^n Y_i\), যেখানে প্রতিটি \(Y_i\sim\) Bernoulli\((p)\) এবং \(Y_i=1\) যদি \(i\)-তম trial success। প্রতিটির \(\mathbb{E}[Y_i]=p\)। Linearity of expectation (§২.৪) যেকোনো random variable-এর যোগফলে খাটে — independence লাগে না: $$ \mathbb{E}[X]=\mathbb{E}\Big[\sum_{i=1}^n Y_i\Big]=\sum_{i=1}^n\mathbb{E}[Y_i]=\sum_{i=1}^n p = np. \qquad\blacksquare $$
কেন variance-এ অতিরিক্ত ধর্ম লাগে: variance যোগফলে সাধারণভাবে যোগ হয় না। সাধারণ সূত্র (Part 2.5): $$ \mathrm{Var}\Big(\sum_i Y_i\Big)=\sum_i \mathrm{Var}(Y_i) + \sum_{i\ne j}\mathrm{Cov}(Y_i,Y_j). $$ Covariance পদগুলো শূন্য হয় কেবল যদি \(Y_i\)-রা (জোড়ায়) uncorrelated — যা independence থেকে পাওয়া যায়। Binomial-এ trial-গুলো স্বাধীন বলেই \(\mathrm{Cov}(Y_i,Y_j)=0\), এবং তখন $$ \mathrm{Var}(X)=\sum_{i=1}^n \mathrm{Var}(Y_i)=\sum_{i=1}^n p(1-p)=np(1-p). $$ Mean-এ linearity নিঃশর্ত, কিন্তু variance-এর additivity শর্তসাপেক্ষ (uncorrelated/independent) — এটাই মূল পার্থক্য। independence (স্বাধীনতা) না থাকলে (যেমন Hypergeometric, without replacement) variance ভিন্ন হয়।
৭.৪ Coding¶
Q9 (★★) — discrete_summary¶
def discrete_summary(pmf_dict):
"""key=মান k, value=P(X=k)। ফেরত: (sum, E[X], Var(X))।"""
total = sum(pmf_dict.values())
assert abs(total - 1.0) < 1e-9, f"PMF যোগফল 1 নয়: {total}"
EX = sum(k * pk for k, pk in pmf_dict.items())
EX2 = sum(k**2 * pk for k, pk in pmf_dict.items())
var = EX2 - EX**2 # §৪.৩ সূত্র
return total, EX, var
die = {k: 1/6 for k in range(1, 7)} # uniform ছক্কা
total, EX, var = discrete_summary(die)
print("sum =", round(total, 6)) # 1.0
print("E[X] =", round(EX, 4)) # 3.5
print("Var =", round(var, 4)) # 2.9167 (= 35/12)
আউটপুট:
\(\mathbb{E}[X]=3.5\) ও \(\mathrm{Var}(X)=35/12\approx2.9167\) — প্রত্যাশিত মান, ০.২-এ আলোচিত uniform die-এর সাথে সঙ্গতিপূর্ণ।
Q10 (★★★) — Geometric simulation ও memoryless¶
import numpy as np
rng = np.random.default_rng(0)
p = 0.2
s = rng.geometric(p, size=100_000) # numpy geometric: k = trial-সংখ্যা, k >= 1
# (ক) mean ও variance theory-র সাথে
print("emp mean =", round(s.mean(), 3), " theory 1/p =", 1/p) # ~5.0
print("emp var =", round(s.var(), 3), " theory (1-p)/p^2 =", (1-p)/p**2) # ~20
# (খ) memoryless: P(X > 5+3 | X > 5) বনাম P(X > 3)
cond = (s[s > 5] > 8).mean() # X>5 শর্তে, কতগুলো >8
marg = (s > 3).mean()
print("P(X>8 | X>5) ~", round(cond, 4))
print("P(X>3) ~", round(marg, 4), " theory (1-p)^3 =", round((1-p)**3, 4))
আউটপুট:
emp mean = 4.987 theory 1/p = 5.0
emp var = 20.084 theory (1-p)/p^2 = 20.0
P(X>8 | X>5) ~ 0.5108
P(X>3) ~ 0.5088 theory (1-p)^3 = 0.512
(ক) empirical mean \(\approx4.99\approx5=1/p\) ও variance \(\approx20.08\approx20=(1-p)/p^2\) — theory-র সাথে চমৎকার মিল।
(খ) \(P(X>8\mid X>5)\approx0.511\) আর \(P(X>3)\approx0.509\) — দুটো প্রায় সমান, এবং উভয়ই তত্ত্বীয় মান \((1-p)^3=0.8^3=0.512\)-এর কাছে। অর্থাৎ ইতিমধ্যে \(5\)টা ব্যর্থতা হয়ে গেলেও, পরবর্তী \(3\)টা trial-এ success না-পাওয়ার probability ঠিক ততটাই যেন নতুন করে শুরু — memoryless ধর্ম (§৪.৫) সংখ্যায় নিশ