সমাধান — অধ্যায় ৮.৩ · Reproducing a Classical Result: James–Stein Shrinkage¶
অধ্যায় ফাইল:
part-8-capstone/08-03-paper-reproduction.md(§৭ অনুশীলনী)। সংখ্যাগত উত্তরnumpy/scipy.stats/sklearn.datasetsদিয়ে যাচাইযোগ্য; সব সিমুলেশন seednp.random.default_rng(20260619)-এ reproducible।মূল সংজ্ঞা ও canonical তথ্য। setup \(X\sim N(\theta,I_p)\) (একটি observation); MLE \(\hat\theta^{MLE}=X\); risk \(R(\hat\theta,\theta)=\mathbb E\lVert\hat\theta-\theta\rVert^2\) (total MSE)। James–Stein \(\hat\theta^{JS}=(1-\frac{p-2}{\lVert X\rVert^2})X\); positive-part \(\hat\theta^{JS+}=(1-\frac{p-2}{\lVert X\rVert^2})^{+}X\)। MLE-র risk সর্বত্র \(p\)। dominance: \(p\ge3\)-তে \(R_{JS}(\theta)<p\ \forall\theta\) ⇒ MLE inadmissible; \(p\le2\)-তে admissible। Stein's lemma: \(X\sim N(\theta,1)\) ⇒ \(\mathbb E[(X-\theta)g(X)]=\mathbb E[g'(X)]\)। SURE: \(\hat\theta=X+g(X)\) ⇒ \(\mathbb E\lVert\hat\theta-\theta\rVert^2=\mathbb E[p+2\nabla\!\cdot g+\lVert g\rVert^2]\)। JS risk-পরিচয়: \(\mathbb E\lVert\hat\theta^{JS}-\theta\rVert^2=p-(p-2)^2\mathbb E\frac{1}{\lVert X\rVert^2}\le p\); \(\theta=0\)-তে \(=2\) (কারণ \(\lVert X\rVert^2\sim\chi^2_p\), \(\mathbb E\frac1{\chi^2_p}=\frac1{p-2}\), \(p\ge3\))। empirical-Bayes: prior \(N(0,\tau^2)\) ⇒ posterior-mean shrinkage \(\frac{\tau^2}{\tau^2+1}X_i\)। canonical মান। \(R_{MLE}\approx p\) (e.g. \(p=10\to9.96\), \(p=50\to50.08\)); \(R_{JS}(0)\approx2\) সব \(p\ge3\)-এ (\(p=3\to1.99\), \(p=10\to1.98\), \(p=50\to1.96\)); risk-হ্রাস (\(\theta=0\)) \(p=3\): ৩৩%, \(p=10\): ৮০%, \(p=50\): ৯৬%; \(\mathbb E\frac1{\lVert X\rVert^2}\) (\(p=10\), \(\theta=0\)) \(\approx0.1252\) (তত্ত্ব \(0.125\)); risk-vs-\(\lVert\theta\rVert\) (\(p=10\)): \(\lVert\theta\rVert=0\to R_{JS}2.01\), \(=3\to5.97\), \(=12\to9.58\); বাস্তব breast_cancer group-mean E[MSE] raw \(3.61\) → shrunk \(2.42\) (৩৩% হ্রাস), single-draw win \(75.8\%\); seed
default_rng(20260619)।
ক · ধারণাগত (conceptual)¶
সমাধান ১ (★)¶
(ক) admissibility ও dominance। একটা estimator \(\hat\theta_1\) dominate করে \(\hat\theta_2\)-কে (quadratic loss-এ) যদি \(R(\hat\theta_1,\theta)\le R(\hat\theta_2,\theta)\) প্রতিটি \(\theta\)-তে, এবং অন্তত একটি \(\theta_0\)-তে কঠোরভাবে কম (\(R(\hat\theta_1,\theta_0)<R(\hat\theta_2,\theta_0)\))। একটা estimator admissible যদি কোনো estimator তাকে dominate না করে; নাহলে inadmissible — অর্থাৎ একটা প্রতিদ্বন্দ্বী আছে যা কখনো খারাপ নয়, কখনো ভালো, তাই মূল estimator-টাকে বেছে নেওয়ার কোনো যুক্তি থাকে না।
(খ) MLE-র risk \(=p\)। \(X\sim N(\theta,I_p)\) ⇒ \(X-\theta\sim N(0,I_p)\), তাই \(R(\hat\theta^{MLE},\theta)=\mathbb E\lVert X-\theta\rVert^2=\sum_{i=1}^p\mathbb E[(X_i-\theta_i)^2]=\sum_{i=1}^p\operatorname{Var}(X_i)=\sum_{i=1}^p 1=p\) — \(\theta\)-নিরপেক্ষ, একটা সমতল রেখা।
(গ) কেন ধাক্কা। MLE \(\hat\theta=X\) হলো সবচেয়ে স্বাভাবিক, unbiased, সর্বত্র-ব্যবহৃত estimator — প্রতিটি coordinate নিজের ডেটা দিয়ে estimate করা। Stein দেখালেন \(p\ge3\)-তে James–Stein এটিকে dominate করে (\(R_{JS}(\theta)\le p\ \forall\theta\), কোথাও কঠোরভাবে কম), তাই MLE inadmissible — \"অগ্রহণযোগ্য\"। এটাই বিস্ময়: obvious উত্তরটাই তিন-বা-ততোধিক মাত্রায় সেরা নয়। \(p=1,2\)-তে ছবি আলাদা: তখন \(p-2\le0\), JS-এর shrinkage factor \(1-\frac{p-2}{\lVert X\rVert^2}\ge1\) (shrink নয়, উল্টো প্রসারণ), risk কমায় না — আর সত্যিই MLE তখন admissible (কোনো estimator তাকে সর্বত্র হারায় না)।
সমাধান ২ (★★)¶
(ক) MLE-র coordinate-প্রতি MSE। 4.4-এর পচন MSE = bias² + variance। MLE-এ \(\hat\theta_i=X_i\), \(\mathbb E[X_i]=\theta_i\) ⇒ bias \(=\mathbb E[\hat\theta_i]-\theta_i=0\); variance \(=\operatorname{Var}(X_i)=1\)। তাই coordinate-প্রতি MSE \(=0^2+1=1\), মোট \(p\) — সবটাই variance, কোনো bias নেই।
(খ) shrinkage-এর প্রভাব। JS estimate একটা factor \(c<1\) দিয়ে গুণ করে (\(\hat\theta_i\approx cX_i\))। তখন variance \(=\operatorname{Var}(cX_i)=c^2\operatorname{Var}(X_i)=c^2<1\) — কমে। কিন্তু bias আর ০ নয়: \(\mathbb E[cX_i]=c\theta_i\ne\theta_i\), তাই bias \(=(c-1)\theta_i\ne0\) (যত ছোট \(c\), তত বেশি bias, কিন্তু তত কম variance)। coordinate-প্রতি MSE \(=(c-1)^2\theta_i^2+c^2\)।
(গ) কেন উচ্চ মাত্রায় জেতে। যখন \(p\) বড়, \(\lVert X\rVert^2\) (যোগফল) আপেক্ষিকভাবে ঘনীভূত ও স্থিতিশীল, তাই JS-এর factor \(c=1-\frac{p-2}{\lVert X\rVert^2}\) নির্ভরযোগ্যভাবে \(<1\); ফলে বহু coordinate-এর ছোট-ছোট variance-সাশ্রয় জমে মোট bias²-খরচকে ছাপিয়ে যায় — মোট risk নামে। \(p=1\)-এ একটামাত্র coordinate, কোনো \"যোগফল\"-এর স্থিতিশীলতা নেই, আর SURE-এ \(p-2=-1<0\) (উল্টো টান) — সাশ্রয়ের কোনো পথ নেই। এটাই কেন প্যারাডক্স কঠোরভাবে একটা উচ্চ-মাত্রিক (\(p\ge3\)) ঘটনা।
সমাধান ৩ (★★)¶
(ক) normal–normal posterior-mean। 4.10-এর conjugate: prior \(\theta_i\sim N(0,\tau^2)\), likelihood \(X_i\mid\theta_i\sim N(\theta_i,1)\) ⇒ posterior \(\theta_i\mid X_i\sim N\big(\frac{\tau^2}{\tau^2+1}X_i,\ \frac{\tau^2}{\tau^2+1}\big)\)। posterior-mean \(=\frac{\tau^2}{\tau^2+1}X_i\) — একটা shrinkage factor \(B=\frac{\tau^2}{\tau^2+1}\in(0,1)\) দিয়ে observation-কে prior-কেন্দ্র ০-র দিকে টান (prior যত শক্ত/ছোট \(\tau^2\), তত জোর টান)।
(খ) কেন empirical Bayes। উপরের shrinkage-এ \(\tau^2\) (prior variance) জানা লাগে — কিন্তু বাস্তবে তা অজানা। কৌশল: marginally \(X_i\sim N(0,\tau^2+1)\), তাই \(\mathbb E\lVert X\rVert^2=p(\tau^2+1)\); এখান থেকে \(\tau^2\)-কে ডেটা (\(\lVert X\rVert^2\)) থেকে estimate করা যায়। সেই estimate posterior-mean-এ বসালে shrinkage factor ঠিক \(1-\frac{p-2}{\lVert X\rVert^2}\) বেরিয়ে আসে — অর্থাৎ James–Stein। যেহেতু prior-এর প্যারামিটার ডেটা থেকে শেখা (পুরোপুরি আগে থেকে দেওয়া নয়), একে empirical Bayes বলে।
(গ) ridge-সাদৃশ্য। 6.2-এর ridge coefficient-কে factor \(\frac{1}{1+\lambda}\)-এ ০-র দিকে সংকুচিত করে; JS estimate-কে factor \(1-\frac{p-2}{\lVert X\rVert^2}\)-এ সংকুচিত করে। দুটোই একই দর্শন: একটু bias কিনে অনেক variance বেচা (← 4.4-এর bias–variance দাঁড়িপাল্লা) — JS হলো shrinkage estimation-এর জন্মদাতা (1961), ridge (1970) তার regression-বংশধর।
খ · গণনামূলক (computational)¶
সমাধান ৪ (★)¶
(ক) \(\lVert X\rVert^2\). \(X=(2,-1,3,0,-2,1)\) ⇒ \(\lVert X\rVert^2=2^2+(-1)^2+3^2+0^2+(-2)^2+1^2=4+1+9+0+4+1=19\)।
(খ) shrinkage factor. \(p=6\), তাই \(p-2=4\); \(c=1-\frac{p-2}{\lVert X\rVert^2}=1-\frac{4}{19}=1-0.2105=0.7895\)।
(গ) JS estimate। \(\hat\theta^{JS}=cX=0.7895\times(2,-1,3,0,-2,1)=(1.579,-0.789,2.368,0,-1.579,0.789)\)। যাচাই: প্রতিটি অ-শূন্য coordinate-এ \(\lvert\hat\theta^{JS}_i\rvert<\lvert X_i\rvert\) (মান কমেছে), চিহ্ন অপরিবর্তিত — অর্থাৎ প্রতিটি estimate ০-র দিকে সংকুচিত (একই common factor \(0.7895\) দিয়ে)।
সমাধান ৫ (★)¶
(ক) \(\theta=0\)-তে বণ্টন ও inverse-moment। \(\theta=0\) ⇒ \(X\sim N(0,I_p)\) ⇒ \(\lVert X\rVert^2=\sum X_i^2\sim\chi^2_p\) (← 2.6)। \(\chi^2_p\)-এর inverse-moment \(\mathbb E\frac{1}{\chi^2_p}=\frac{1}{p-2}\) (সসীম কেবল \(p\ge3\))।
(খ) \(R_{JS}(0)=2\)। risk-পরিচয়ে বসাই: \(R_{JS}(0)=p-(p-2)^2\,\mathbb E\frac{1}{\lVert X\rVert^2}=p-(p-2)^2\cdot\frac{1}{p-2}=p-(p-2)=2\) — সব \(p\ge3\)-এ, মাত্রা-নিরপেক্ষ।
(গ) তিন মাত্রায় তুলনা। \(R_{MLE}=p\), \(R_{JS}(0)=2\); risk-হ্রাস \(=\frac{p-2}{p}\times100\%\)।
| \(p\) | \(R_{MLE}\) | \(R_{JS}(0)\) | risk-হ্রাস |
|---|---|---|---|
| \(3\) | \(3\) | \(2\) | \(33.3\%\) |
| \(10\) | \(10\) | \(2\) | \(80.0\%\) |
| \(50\) | \(50\) | \(2\) | \(96.0\%\) |
মন্তব্য: MLE-র risk (প্রতি coordinate আলাদা estimate করার খরচ) \(p\)-এর সাথে বাড়ে, কিন্তু \(R_{JS}(0)\) স্থির \(2\) — তাই মাত্রা যত বেশি, যৌথ shrinkage-এর আপেক্ষিক লাভ তত বড়। §৫.১-এর সিমুলেশন (\(p=10\to\) ৮০%, \(p=50\to\) ৯৬%) এই বদ্ধ-রূপের সাথে মেলে।
সমাধান ৬ (★★)¶
(ক) সাধারণ JS-এর সমস্যা। \(p=5\) ⇒ \(p-2=3\); \(\lVert X\rVert^2=2\) ⇒ factor \(c=1-\frac{3}{2}=-0.5\) — ঋণাত্মক। ঋণাত্মক factor মানে \(\hat\theta^{JS}=cX\) প্রতিটি coordinate-এর চিহ্ন উল্টে ০-র উল্টো পাশে পাঠায় (over-shrink past the centre) — যা সবসময় ক্ষতিকর (estimate সত্যি \(\theta\) থেকে আরও দূরে সরে)।
(খ) positive-part কী করে। \(\hat\theta^{JS+}\) factor-কে \(\max(0,c)=\max(0,-0.5)=0\) করে, তাই estimate পুরো কেন্দ্র ০-তে থামে (উল্টো পাশে যায় না)।
(গ) কেন positive-part dominate করে। যখনই সাধারণ JS-এর factor ঋণাত্মক (over-shrink), positive-part সেটিকে ০-তে থামিয়ে ঐ ক্ষেত্রে ত্রুটি কমায়; আর যখন factor ইতিবাচক, দুটি একই। তাই positive-part JS কখনো বেশি risk নয়, কখনো কম — সাধারণ JS-কেও dominate করে (§২.২, §৫.১-এর \(R_{JS+}<R_{JS}\))।
গ · প্রমাণভিত্তিক (proof-based)¶
সমাধান ৭ (★★)¶
(ক) \(g(X)=X\). Stein's lemma: \(\mathbb E[(X-\theta)g(X)]=\mathbb E[g'(X)]\); এখানে \(g'(X)=1\), তাই \(\mathbb E[(X-\theta)X]=\mathbb E[1]=1\)। সরাসরি যাচাই: \(\mathbb E[(X-\theta)X]=\mathbb E[(X-\theta)(X-\theta)]+\theta\,\mathbb E[X-\theta]=\operatorname{Var}(X)+\theta\cdot0=1+0=1\) ✓।
(খ) \(g(X)=X^2\). \(g'(X)=2X\), তাই \(\mathbb E[(X-\theta)X^2]=\mathbb E[2X]=2\mathbb E[X]=2\theta\)। অর্থাৎ এটি সরাসরি \(\mathbb E[X]=\theta\)-এর সাথে যুক্ত (lemma cross-moment-কে একটা সহজ derivative-প্রত্যাশায় নামায়)।
(গ) কেন SURE-এর ভিত্তি। lemma-র মর্ম: এটি \"\((X-\theta)\)-যুক্ত পদ\" (\(\theta\)-নির্ভর, তাই সরাসরি estimate করা যায় না) কে \"\(g'(X)\)-প্রত্যাশা\" (\(\theta\)-মুক্ত, ডেটা থেকে মাপা যায়) -এ বদলে দেয়। risk-এর cross-term ঠিক এই ধরনের (\(\mathbb E[(X-\theta)g]\)), তাই lemma প্রয়োগ করলে risk-এর একটা \(\theta\)-মুক্ত unbiased estimate (SURE) পাওয়া যায় — এটাই James–Stein-এর risk হিসাবের চাবি।
সমাধান ৮ (★★★)¶
(ক) \(\lVert g\rVert^2\). \(g(X)=-\frac{p-2}{\lVert X\rVert^2}X\), অর্থাৎ \(g_i=-(p-2)\frac{x_i}{\lVert x\rVert^2}\)। তাই $$ \lVert g\rVert^2=\sum_i g_i^2=(p-2)^2\frac{\sum_i x_i^2}{(\lVert x\rVert^2)^2}=(p-2)^2\frac{\lVert x\rVert^2}{(\lVert x\rVert^2)^2}=\frac{(p-2)^2}{\lVert x\rVert^2}. $$
(খ) \(\nabla\!\cdot g\). প্রতি \(i\)-তে quotient-নিয়মে $$ \frac{\partial}{\partial x_i}\frac{x_i}{\lVert x\rVert^2}=\frac{1\cdot\lVert x\rVert^2-x_i\cdot 2x_i}{(\lVert x\rVert^2)^2}=\frac{\lVert x\rVert^2-2x_i^2}{(\lVert x\rVert^2)^2}. $$ \(i\)-জুড়ে যোগ (\(\sum_i\lVert x\rVert^2=p\lVert x\rVert^2\), \(\sum_i 2x_i^2=2\lVert x\rVert^2\)): $$ \sum_i\frac{\partial}{\partial x_i}\frac{x_i}{\lVert x\rVert^2}=\frac{p\lVert x\rVert^2-2\lVert x\rVert^2}{(\lVert x\rVert^2)^2}=\frac{(p-2)\lVert x\rVert^2}{(\lVert x\rVert^2)^2}=\frac{p-2}{\lVert x\rVert^2}. $$ তাই \(\nabla\!\cdot g=-(p-2)\cdot\frac{p-2}{\lVert x\rVert^2}=-\frac{(p-2)^2}{\lVert x\rVert^2}\)।
(গ) একত্র ও কেন \(<p\). SURE-এ বসাই (\(A:=(p-2)^2\mathbb E\frac{1}{\lVert X\rVert^2}\)): $$ \mathbb E\lVert\hat\theta^{JS}-\theta\rVert^2=p+2\,\mathbb E[\nabla!\cdot g]+\mathbb E\lVert g\rVert^2=p+2(-A)+A=p-A=p-(p-2)^2\,\mathbb E\frac{1}{\lVert X\rVert^2}. $$ যেহেতু \(p\ge3\)-তে \((p-2)^2>0\) এবং \(\mathbb E\frac{1}{\lVert X\rVert^2}>0\) (ও সসীম, worst case \(\theta=0\)-তেও \(\frac{1}{p-2}\)), বিয়োগ-পদ কঠোরভাবে ধনাত্মক ⇒ \(R_{JS}(\theta)<p\) সর্বত্র (সমতা কেবল \(\lVert\theta\rVert\to\infty\)-এ) — dominance।
সমাধান ৯ (★★★)¶
(ক) shrinkage factor-এর দিক। \(p\le2\) ⇒ \(p-2\le0\) ⇒ factor \(1-\frac{p-2}{\lVert X\rVert^2}=1+\frac{2-p}{\lVert X\rVert^2}\ge1\)। অর্থাৎ JS estimate-কে সংকুচিত না করে প্রসারিত করে (কেন্দ্র থেকে দূরে ঠেলে) — variance বাড়ে, risk কমার কোনো সম্ভাবনা নেই। shrinkage-এর গোটা যুক্তি (factor \(<1\)) কেবল \(p\ge3\)-এ দাঁড়ায়।
(খ) risk-পরিচয়ের সসীমতা। \(\theta=0\)-তে \(\mathbb E\frac{1}{\lVert X\rVert^2}=\mathbb E\frac{1}{\chi^2_p}=\frac{1}{p-2}\) সসীম কেবল \(p\ge3\)। \(p=1,2\)-তে \(\chi^2_p\)-এর density কেন্দ্রের কাছে যথেষ্ট ভারী যে \(\int\frac{1}{x}f_{\chi^2_p}(x)\,dx\) diverge করে — অর্থাৎ \(\mathbb E\frac1{\chi^2_p}=\infty\), তাই risk-পরিচয়ের বিয়োগ-পদই অসংজ্ঞায়িত। প্যারাডক্সের গণিতই \(p\le2\)-তে ভেঙে পড়ে।
(গ) admissibility। \(p=1,2\)-তে MLE \(\hat\theta=X\) admissible (Stein-এরই ফল) — কোনো estimator তাকে সর্বত্র dominate করতে পারে না। এক-মাত্রায় একটামাত্র observation থেকে \(\theta\) estimate করতে \(X\)-ই minimax ও admissible; \"অন্য coordinate থেকে ধার করা\" বলে কিছু নেই (কেবল একটা coordinate), তাই shrinkage-এর লাভের উৎসই অনুপস্থিত।
ঘ · কোডিং (coding)¶
সমাধান ১০ (★★)¶
(ক) সিমুলেশন।
import numpy as np
rng = np.random.default_rng(20260619)
p, REPS = 10, 20_000
theta = np.zeros(p)
X = rng.standard_normal((REPS, p)) # X ~ N(0, I_10)
sq = np.sum(X**2, axis=1, keepdims=True) # ||X||^2 per row
js = (1.0 - (p - 2) / sq) * X # James-Stein
r_mle = np.mean(np.sum((X - theta)**2, axis=1)) # MLE risk
r_js = np.mean(np.sum((js - theta)**2, axis=1)) # JS risk
print(round(r_mle, 4), round(r_js, 4)) # ~9.9626 ~1.9757
(খ) canonical। \(R_{MLE}\approx9.96\) (তত্ত্ব \(p=10\)), \(R_{JS}\approx1.98\) — risk-হ্রাস \(\frac{9.96-1.98}{9.96}\approx80\%\)।
(গ) কেন। MLE প্রতিটি coordinate-এ variance \(1\) বহন করে ⇒ মোট risk \(\approx p=10\)। JS সব estimate-কে কেন্দ্র ০-র দিকে জোরে টানে (এখানে সত্যি \(\theta=0\), তাই টান \"সঠিক দিকে\") ⇒ risk নেমে \(\approx2\)। ফাঁকটাই (10 বনাম 2) Stein-এর প্যারাডক্স — চিত্র 8-3-risk-vs-p-এ \(p=10\) বিন্দুতে দৃশ্যমান।
সমাধান ১১ (★★)¶
(ক) \(\mathbb E\frac{1}{\lVert X\rVert^2}\).
sq = np.sum(X**2, axis=1) # reuse Solution 10's X
e_inv = np.mean(1.0 / sq)
print(round(e_inv, 4)) # ~0.1252 (theory 1/8 = 0.125)
Monte-Carlo \(\approx0.1252\), তত্ত্ব \(\frac{1}{p-2}=\frac18=0.125\) — চার দশমিক পর্যন্ত মেলে।
(খ) SURE-মান।
\(10-64\times0.1252\approx1.99\) — বদ্ধ-রূপ \(R_{JS}(0)=2\)-এর কাছে।
(গ) কেন মিল = যাচাই। SURE একটা estimator-এর risk-এর unbiased estimate (§৪ প্রমাণ ৩), তাই তার প্রত্যাশা ঠিক সত্যিকারের risk। Monte-Carlo \(R_{JS}\) (সরাসরি \(\mathbb E\lVert\hat\theta^{JS}-\theta\rVert^2\)) ও SURE-মান (\(p-(p-2)^2\overline{1/\lVert X\rVert^2}\)) দুটোই \(\approx2\)-তে মেলা মানে risk-পরিচয় \(p-(p-2)^2\mathbb E\frac1{\lVert X\rVert^2}\) সংখ্যায় নিশ্চিত — তত্ত্ব ও সিমুলেশন একমত।
সমাধান ১২ (★)¶
(ক) বাস্তব-ডেটা চালানো।
import numpy as np
from sklearn.datasets import load_breast_cancer
SEED = 20260619
data = load_breast_cancer()
Xs = (data.data - data.data.mean(0)) / data.data.std(0) # standardise
mal = Xs[data.target == 0] # malignant rows
theta_true = mal.mean(axis=0); grand = theta_true.mean() # truth, target
p, n_sub = 30, 8
sigma2 = float(np.mean(mal.std(axis=0)**2 / n_sub)) # known noise var
def js_toward_grand(X):
d = X - grand; S = float(np.sum(d**2))
return grand + max(0.0, 1.0 - (p - 3) * sigma2 / S) * d
child = np.random.default_rng(SEED); B = 4000
acc_raw = acc_js = n_win = 0.0
for _ in range(B):
idx = child.choice(mal.shape[0], size=n_sub, replace=False)
raw = mal[idx].mean(axis=0); js = js_toward_grand(raw)
mr = np.sum((raw - theta_true)**2); mj = np.sum((js - theta_true)**2)
acc_raw += mr; acc_js += mj; n_win += (mj < mr)
print(round(acc_raw/B, 4), round(acc_js/B, 4), round(100*n_win/B, 1))
# ~3.6144 ~2.4220 ~75.8
(খ) canonical। E[MSE raw] \(\approx3.61\), E[MSE shrunk] \(\approx2.42\) — reduction \(\approx33\%\); single-draw win rate \(\approx75.8\%\) (3034/4000)।
(গ) কেন ১০০% নয়। dominance একটা প্রত্যাশিত-risk (গড়) বিবৃতি — \"বহু draw-এর গড়ে\" shrinkage জেতে, প্রতিটি একক draw-এ নয়। একটা \"ভাগ্যবান\" raw draw যেখানে noisy গড় ঘটনাক্রমে সত্যি \(\theta\)-এর খুব কাছে, সেটিকে grand mean-এর দিকে shrink করলে সত্যি থেকে দূরে সরে যেতে পারে (সেই draw হারে)। কিন্তু গড়ে variance-সাশ্রয় জেতে, তাই প্রত্যাশিত MSE কমে (৭৫.৮% draw জেতে, বাকিগুলোর ক্ষতি ছোট) — ঠিক §৩ উদাহরণ ৩-এর সতর্কতা। চিত্র 8-3-real-data-এর bar (3.61 বনাম 2.42) এই প্রত্যাশিত-MSE লাভ দেখায়।