آشنایی با روشهای تخمین MLE، MAP و استنتاج بیزین و مقایسه عملکرد آنها با مثال

\(\)

در این مقاله، با مفاهیم تخمین حداکثر درستنمایی (Maximum Likelihood Estimation – MLE)، تخمین حداکثر احتمال پسین (Maximum A Posteriori – MAP) و استنتاج بیزین (Bayesian Inference) که از مفاهیم پایه و اساسی در آمار و احتمال؛ علوم داده و یادگیری ماشین هستند، آشنا میشویم. هر روش با مثال مشابه که پرتاب یک سکه نامتقارن است، توضیح داده میشود و نتایج آزمایش به صورت تحلیلی و عددی (برای روش بیزین) محاسبه و مقایسه شده و تفاوتها بررسی میشوند.

خواهیم آموخت که روش MLE، احتمال درستنمایی را حداکثر میکند که معادل انتخاب پارامترها به نحوی است که درستنمایی داده مشاهده را حداکثر کند. روش MAP، یک پیش‌فرض اضافه میکند که دانش قبلی بر روی پارامترها است و به نوعی فضای خالی بین دیدگاه مفهومی کثرت‌گرایی خالص و دیدگاه بیزین را پر میکند. در نهایت، روش بیزین بیشترین اطلاعات را به ما میدهد، اما به لحاظ اجرا و پیاده‌سازی نیز دشوارترین روش است. این روش، شامل مدل کردن کامل توزیع پیشین پارامترها با فرض داشتن داده‌، میشود که دقیقا نقطه مقابل دو روش قبلی است که تنها تخمین نقطه‌ای ارائه میکنند.

اجازه دهید تا کار را با این توضیحات اضافی آغاز کنیم که ضرورتا، برای هر مساله یادگیری، به دنبال یک مدل یا مجموعه پارامترها هستیم که داده مشاهده شده را به بهترین شکل ممکن توصیف کند. برای این کار و حل مساله مذکور، نیاز به یک نگاشت یا توزیع احتمال از داده مشاهده شده به فضای پارامترها هستیم:

$$ p(\theta|x)=\frac{p(x|\theta)p(\theta)}{p(x)} $$

 

معمولا، این موارد به شکل زیر نامگذاری میشوند:

$$ p(posterior)=\frac{likelihood \times prior}{evidence} $$

 

توزیع شرطی پارامترها با فرض داده در دسترس، تحت عنوان توزیع پسین (Posterior)  شناخته میشود که بخش مطلوب و مورد نظر ما است. درستنمایی (Likelihood)، توزیع شرطی داده با فرض داشتن مقدار پارامترها است. این مورد همچنان که از نام آن نیز برمی‌آید، احتمال داده را با فرض داشتن پارامترهای منتخب توصیف میکند. توزیع پیشین (Prior)، پیش‌فرض یا به عبارتی اعتقاد ما درباره پارامترها را توصیف میکند که انتظار ما از وضعیت آنها را قبل از مشاهده هر نوع داده‌ای نشان میدهد. در نهایت، یک مقدار ثابت نیز برای تبدیل توزیع پسین به یک توزیع احتمال، لازم است. این توزیع، داده مشاهده شده را به طور کامل توصیف میکند که معمولا به لحاظ محاسبه دشوار و حتی سرکش و رام‌نشدنی است که یکی از دلایل اصلی دشوار بودن روش استنتاج بیزین نیز همین موضوع است.

با توجه به توضیحات و فرمولهای ارائه شده در این بخش، در ادامه میخواهیم مفاهیم MLE/MAP و بیزین را با ذکر مثال، عمیق‌تر بررسی کنیم. اما در ابتدا ضروری است تا مثال مورد استفاده در  این روشها را توضیح دهیم.

 

مساله بازی: تخمین پارامترهای سکه نامتقارن.

برای بررسی دقیق‌تر مفاهیم گفته شده در بالا، از مثال پرتاب سکه نامتقارن استفاده میکنیم: فرض کنید که سکه‌ای داریم با احتمال نشستن شیر \( \theta \) و احتمال نشستن خط \( 1- \theta \). در اینجا \( \theta \) برای ما مجهول و ناشناخته است و میخواهیم پس از آزمایش با سکه، آن را تخمین بزنیم. به عبارت دیگر فرض کنیم که با داشتن یک مجموعه داده از نتایج پرتاب سکه، با استفاده از روشهای MLE، MAP و استنتاج بیزین، تخمینی از \( \theta \) را بدست آوریم.

قبل از ادامه کار، اجازه دهید تا مقدار عددی را که در تمامی بخشهای پیش رو به آن نیاز داریم را توضیح دهیم: درستنمایی. پرتاب یک سکه از توزیع برنولی (Bernoulli) پیروی میکند. در پرتاب سکه به تعداد \( N \) بار،  تعداد دفعاتی که نتیجه شیر است را \( N_h \) و تعداد دفعاتی که خط می‌آید را \( N_t \) می‌نامیم.

یک پیش‌فرض اساسی در این آزمایش، استقلال پرتابها از یکدیگر است. پرتابها از هم مستقل و با توزیع یکسان فرض میشوند که به این نوع آزمایش i.i.d (independent and identically distributed) گفته میشود. به این ترتیب، درستنمایی کل را میتوان به صورت حاصلضرب تک‌تک درستنمایی‌ها نوشت. به طور خاص، داریم:

$$ p(x|\theta) = \prod_i p(x_i|\theta) $$

 

و با فرض توزیع برنولی، نتیجه زیر حاصل میشود:

$$ p(x|\theta) = \prod_i \theta^{x_i}(1-\theta)^{(1-x_i)} $$

 

در اینجا، پرتاب سکه را با یک متغیر باینری مدل میکنیم که مقدار 1 به معنی شیر آمدن و مقدار 0 به معنی خط آمدن است.

از آنجاییکه تابع لگاریتم یکنوا (monotonic) است و در تقابل با جمعها، ساده‌تر میتوان کار کرد، تابع لگاریتم را به عبارت بالا اعمال میکنیم تا به فرمول‌بندی جدید زیر برسیم:

$$ p(x|\theta) = \sum_i x_i log(\theta)+(1-x_i)log(1-\theta) \\ \\ = N_hlog(\theta)+N_t log(1-\theta) $$

 

مجموعه داده

قبل از ادامه کار، میخواهیم یک مجموعه داده حاصل از پرتاب سکه نامقارن را تعریف کنیم که در تمامی بخشهای بعدی برای نمایش نتایج روشهای مختلف، از آن استفاده میشود.

فرض کنید که با سکه نامتقارنی را به تعداد 100 پرتاب میکنیم که برای آن مقدار پارامتر \( \theta = 0.3 \) است و حاصل این پرتابها 36 بار شیر و 64 بار خط شده است.

 

تخمین به روش حداکثرسازی درستنمایی (MLE)

میخواهیم به اولین مفهوم در روشهای تخمین بپردازیم، MLE. در اینجا میخواهیم مجموعه‌ای از پارامترها را بیابیم که درستنمایی داده مشاهده شده را حداکثر میکند. بدین منظور، تابع درستنمایی را تشکیل داده و مشتق آن نسبت به پارامترهای مطلوب را محاسبه کرده و ریشه‌های آن را بدست می‌آوریم. دقت کنید که حتی اگر قبلا این نام را نمیدانستید، بسیار محتمل است که از این مفهوم استفاده کرده باشید و به عبارتی این مفهوم در اکثر الگوریتمهای یادگیری ماشین، پایه‌ای و بنیادی است. یک شبکه عصبی را تصور کنید که مساله رگرسیون یا کلاسبندی را میخواهد حل کند: تابع هزینه درجه 2 (L2) یا آنتروپی میتواند تحت عنوان درستنمایی، تفسیر شود و به دنبال آن روش کاهش گرادیان (Gradient Descent) برای یافتن نقاط بهینه استفاده شود.

بنابراین، میخواهیم تابع درستنمایی که بالاتر ارائه شد را در نظر گرفته و مقدار theta که آن را ماکزیمم میکند، پیدا کنیم. به عبارت دیگر باید مشتق آن را محاسبه کرده و برابر صفر قرار دهیم:

$$ \frac{p(x|\theta)}{\theta}=\frac{N_H}{\theta}+\frac{-N_T}{1-\theta} $$

 

با حل معادله و فرمول‌بندی مجدد آن، تخمین MLE برای \( \theta \) را خواهیم داشت:

$$ \theta=\frac{N_H}{N} $$

 

این نتیجه به لحاظ شهودی نیز قابل درک است: پارامتر \( \theta \)، یا همان احتمال آمدن شیر در پرتاب سکه، حتی بدون داشتن اطلاع قبلی یا هر محدودیتی، باید برابر با نسبت نتایج شیر آمدن‌ها و کل نتایج حاصل از پرتابها باشد.

با توجه به مجموعه داده که در  اختیار داریم، نتیجه حاصل برای تخمین MLE به صورت زیر است:

$$ \theta_{MLE} = 0.36 $$

 

تخمین به روش احتمال پسین حداکثر (MAP)

روش MLE، تابع درستنمایی را حداکثر میکند و مقادیر پارامترها را طوری پیدا میکند که به بهترین شکل و بدون داشتن هرگونه اطلاعات قبلی یا محدودیت، داده را توضیح دهد. حال میخواهیم روش MAP را بررسی کنیم که شامل معرفی اطلاعات قبلی بر روی پارامترها است و در واقع معادل یافتن حداکثر توزیع احتمال پسین است.

MLE و MAP، مثالهای خوبی برای مباحثه بین طرفداران کثرت‌گرا و بیزین است. در حالیکه کثرت‌گراها، احتمالها را به سادگی، نتیجه مشاهدات تصادفی میدانند که همان وقایع تکرارپذیر هستند، مفهوم بیزین، به دنبال مدل‌سازی هر چیزی است که شامل پارامترها به شکل متغیر تصادفی میشود که با مشاهدات جدید، به روز میشوند. در حالیکه مفاهیم بیزین، معمولا نتایج قوی‌تری ارائه میکنند، انتقاد اصلی که به آن وارد میشود، نیاز به اطلاعات قبلی است که باید از جایی تامین شود و ممکن است که این اطلاعات ناصحیح باشد.

دقت کنید که اضافه کردن شرط تنظیم‌سازی (Regularization) به مدلهای یادگیری ماشین در واقع معادل روش MAP در مقایسه فقدان این شرط که معادل MLE است، در نظر گرفته میشود.

فرمول اولیه را مجدد تجسم کنید:

$$ p(\theta|x)=\frac{p(x|\theta)p(\theta)}{p(x)} $$

 

از آنجاییکه، \( p(x) \) ثابت است و همچنین مستقل از \( \theta \)، زمانیکه مشتق نسبت به \( \theta \) محاسبه میشود و برابر صفر قرار داده میشود، این مقدار ناپدید میشود. بنابراین، MAP، میزان تخمین نقطه‌ای \( \theta \) را که توزیع پسین را ماکزیمم میکند، به ما ارائه میدهد. تمام آنچه که نیاز هست، اطلاعات قبلی است. در اینجا از توزیع بتا (Beta) که توزیع با شرط داشتن \( \theta \) آن به شکل زیر است، استفاده میکنیم:

$$ beta(\alpha, \beta, \theta)=\frac{1}{B(\alpha, \beta)}\theta^{\alpha-1}(1-\theta)^{\beta-1} $$

 

علت استفاده از این توزیع در قسمت بعد داده خواهد شد.

برای سادگی بیشتر، مجدد از لگاریتم استفاده میشود که مساله را به شکل زیر صورت‌بندی میکند:

$$ \theta = arg.max_{\theta}(\sum_i log. p(x|\theta)+log.p(\theta))$$

 

بنابراین، با مشتق‌گیری و برابر صفر قرار دادن، هر بخش زیر عبارت جمع، به طور مستقل در نظر گرفته شده و از قبل نیز عبارت زیر را داریم:

$$ \frac{p(x|\theta)}{\theta}=\frac{N_H}{\theta}+\frac{-N_T}{1-\theta} $$

 

برای بخش بعدی نیز باید مشتق را محاسبه کنیم:

$$ \frac{d}{d\theta}log(p(\theta)) \\ \\ =\frac{d}{d\theta}(\alpha-1)log(\theta)+(\beta-1)log(1-\theta)-log(B(\alpha,\beta)) $$

 

عبارت مشتق کلی به شکل زیر در می‌آید:

$$ \frac{d}{d\theta}log(p(\theta))=\frac{\alpha-1}{\theta}-\frac{\beta-1}{1-\theta} \\ \\ \frac{N_H} {\theta}+\frac{-N_T}{1-\theta} + \frac{\alpha-1}{\theta}-\frac{\beta-1}{1-\theta} = 0 $$

 

با فرمول‌بندی مجدد، تخمین MAP برای \( \theta \) به شکل زیر بدست می‌آید:

$$ \theta_{MAP}=\frac{N_H+\alpha-1}{N+\alpha+\beta-2} $$

 

برای استفاده از این فرمول، ابتدا باید وضعیت اطلاعات قبلی را مشخص کنیم. فرض کنید که تولید کننده سکه اطلاع داده است که احتمال شیر آمدن حدود 0.3 است اما ما خیلی در این باره مطمئن نیستیم.

برای مدل کردن این وضعیت، توزیع بتا با \( \alpha = 4 \) و \( \beta = 10 \) در نظر میگیریم. توزیع به شکل زیر قابل محاسبه در پایتون است:

import matplotlib.pyplot as plt

from scipy.stats import beta

x = np.linspace(0, 1, 100)

plt.plot(x, beta.pdf(x, 4, 10))

plt.show()

\(\)

که به شکل زیر منجر میشود:

شکل 1- چگالی احتمال بتا با \( \alpha = 4, \beta = 10 \)

 

با استفاده از این اطلاع قبلی، داریم:

$$ \theta_{MAP}=0.348 $$

 

استنتاج بیزین

حال میخواهیم به روش استنتاج کامل بیزین بپردازیم و توزیع احتمال پسین را به طور کامل و نه نقطه‌ای، برای پارامترها تخمین بزنیم. به عبارت دیگر، یک توزیع احتمال بر روی پارامترها مشروط بر داده مشاهده شده، بدست می‌آوریم.

ابتدا صورت عبارت احتمال پسین را بررسی میکنیم:

$$ p(x|\theta)p(\theta) $$

 

با اعمال توزیعهای محاسبه شده قبلی به فرمول بالا، داریم:

$$ p(x|\theta)p(\theta) \\ \\ =\theta^{N_H}(1-\theta)^{N-N_H}\frac{\theta^{\alpha-1}(1-\theta)^{\beta-1}}{B(\alpha,\beta)} \\ \\ =\frac{1}{B(\alpha,\beta)}\theta^{N_H+\alpha-1}(1-\theta)^{N-N_H+\beta-1} \\ \\ = \frac{1}{B(\alpha,\beta). beta(\alpha+H_H,\beta+N-N_H,\theta)} $$

 

در اینجا مفهوم جذاب اطلاعات قبلی مزدوج (conjugate priors) ظاهر میشود: اگر توزیع حاصل هم خانواده توزیع پیشین (اطلاعات قبلی) باشد، توزیع پیشین را مزدوج قبلی تابع درستنمایی گویند. که خود به معنی هم خانواده بودن توزیع پسین با قبلی است.

حال به مخرج که مشاهدات است میپردازیم. این بخش معمولا حاوی نکاتی است و به لحاظ دنبال کردن، دشوار زیرا شامل در نظر گرفتن تمام حالتهای ممکن برای پارامترها میشود:

$$ p(x) = \int_{\theta}p(x|\theta)p(\theta) $$

 

انتگرال بالا معمولا برای محاسبه دشوار است و حتی غیر قابل دنبال و خود دلیل اصلی دشوار بودن روش بیزین است. هر چند که، همانطور که بعدا خواهیم دید، معمولا به دنبال حل آنالیزی آن نیستیم و به روشهای تقریب مختلفی که نتایج رضایت‌بخشی دارند، متوسل میشویم.

برای مثال ما، یک روش تحلیل و به فرم بسته وجود دارد. با بررسی انتگرال، متوجه میشویم که داخل آن مشابه محاسباتی قبلی در بالا است:

$$ p(x) = \frac{1}{B(\alpha,\beta)} \int_0^1 \theta^{N_H+\alpha-1}(1-\theta)^{N-N_H-\beta-1} $$

 

با دنبال کردن تعریف تابع بتا، مشاهده میکنیم که این عبارت همان تابع بتا در \( N_H+\alpha \) و \( N-N_H-1 \) است:

$$ p(x) = \frac{B(N_H+\alpha,N-N_H+\beta)}{B(\alpha,\beta)} $$

 

حال میتوان صورت و مخرج را بر روی هم گذاشت تا به فرم بسته زیر برای احتمال پسین برسیم:

$$ p(\theta|x) = beta(N_H+\alpha,N-N_H+\beta) $$

 

با همان مقادیر قبلی \( \alpha =4 \) و \( \beta = 10 \)، شکل توزیع به صورت زیر است:

شکل 2- چگالی احتمال پسین با فرض احتمال پیشین بتا

 

با استفاده از دانش فعلی درباره توزیع بتا، متوسط متغیر تصادفی x با توزیع بتا با پارامترهای \( \alpha \) و \( \beta \) به شکل زیر محاسبه میشود:

$$ \mu(X)=\frac{\alpha -1}{\alpha+\beta-2} $$

 

که برای مثال ما منجر به نتیجه‌ای مشابه روش MAP، یعنی 0.348 میشود.

برای واریانس داریم:

$$ var(X)=\frac{\alpha . \beta}{(\alpha+\beta)^2(\alpha + \beta +1)} $$

 

بحث بر روی نتایج

در این بخش میخواهیم نتایج قبلی را بررسی و مقایسه کنیم.

روش MLE پارامتر \( \theta \) یا همان احتمال نشستن شیر برای سکه را 0.36 تخمین میزند که دقیقا همان نسبت تکرار شیر در پرتابها به کل است. به نظر منطقی میرسد. بدون هرگونه اطلاعات قبلی یا پیشین، پارامتری که به بهترین شکل، داده رو توصیف میکند همان مقداری است که آن را از مشاهدات میتوان محاسبه کرد که برای مثال ما، مقدار 0.36 است.

تخمین روش MAP، مقدار 0.348 است که به مقدار صحیح 0.3، نزدیکتر از تخمین قبلی است و همچنین نزدیکتر به مود اطلاعات پیشین. از آنجاییکه اطلاعات قبلی ما حول مقدار 0.3 با مقدار واریانس کم است، این نکته در نتیجه نهایی تخمین قابل مشاهده است.

برای درک اثر اطلاعات پیشین روی تخمین نهایی، حالت با واریانس بالا برای اطلاعات پیشین را در نظر میگیریم. مثلا \( \alpha=2, \beta=3 \):

شکل 3- تابع چگالی احتمال پیشین با واریانس بالا

 

در این حالت، تخمین برابر با 0.359 میشود که به مقدار تخمین MLE که کمتر متاثر از اطلاعات پیشین است، نزدیکتر است.

روش استنتاج بیزین یک توزیع احتمال پسین کامل را ارائه میکند. تخمین آن 0.348 که با مقدار MAP یکسان است. این نتیجه را انتظار داشتیم، زیرا MAP، راه‌حل تخمین نقطه‌ای برای توزیع پسین است. هرچند که، با داشتن توزیع پسین کامل، به مساله دید و شهود بهتری خواهیم داشت که در ادامه توضیح داده میشود.

 

تقریب عددی توزیع پسین

برای مثال فعلی، ما به دنبال یافتن راه‌حل به فرم بسته برای توزیع پسین بودیم تا بتوانیم مساله استنتاج بیزین را به صورت آنالیزی حل کنیم. هر چند که، همانطور که قبلا گفته شد، این کار دشوار و غیرقابل دنبال کردن است. خوشبختانه، در عمل ما نیاز به این کار نداریم و اغلب حتی تلاشی برای حل مساله به صورت آنالیزی انجام نمیدهیم اما به جای آن متوسل به راه‌حل تقریب عددی میشویم.

برای این کار، روشهای متعددی وجود دارد که در اینجا از روش تقریب عددی با استفاده از زنجیره مارکوف مونت کارلو یا MCMC استفاده میکنیم. صرفا مفاهیم کلیدی را در مورد این روش بررسی میکنیم. روشهای مبتنی بر MCMC از طریق تعریف یک زنجیره مارکوف که نمونه‌برداری از آن نسبتا ساده است و توزیع ایستان آن همان توزیع هدف است، شروع به کار میکنند. سپس این زنجیره دنبال شده و از آن N نمونه داده مستقل تولید میشود که به دلیل خاصیت ایستان بودن، معادل نمونه‌برداری از توزیع هدف است.

در اینجا میخواهیم این قاعده را اعمال کرده و به طور خاص از الگوریتم Metropolis-Hastings برای تقریب توزیع پسین که در بالا به شکل آنالیزی حل شد، استفاده کنیم.

کد پایتون زیر، این کار را انجام میدهد:

import matplotlib.pyplot as plt
import numpy as np
import scipy.stats

THETA_TRUE = 0.3  # True probability for landing heads
# Parameters defining the beta prior distribution
ALPHA_PRIOR = 4
BETA_PRIOR = 10
NUM_SAMPLES = 100000  # Number of MCMC steps

# Fake a dataset which equals the one assumed in the previous sections
D = np.asarray([1] * 36 + [0] * 64)

# Define prior distribution
prior = scipy.stats.beta(ALPHA_PRIOR, BETA_PRIOR)

def likelihood_ratio(theta_1, theta_2):
    return (theta_1 / theta_2) ** np.sum(D == 1) * (
        (1 - theta_1) / (1 - theta_2)
    ) ** np.sum(D == 0)

def norm_ratio(theta_1, theta_2):
    return prior.pdf(theta_1) / prior.pdf(theta_2)

# Step 1
x = np.random.uniform(0, 1)

# Proposal distribution
q = scipy.stats.norm(0, 0.1)

samples = []

for i in range(NUM_SAMPLES):
    # Step 2
    y = x + q.rvs()
    # Step 3
    ratio = likelihood_ratio(y, x) * norm_ratio(y, x)
    p = min(ratio * q.pdf(x - y) / q.pdf(y - x), 1)
    # Step 4
    u = np.random.uniform(0, 1)
    # Step 5
    x = y if u <= p and 0 <= y <= 1 else x
    samples.append(x)

# Plot the sampled posterior distribution
plt.hist(samples, density=True, bins=100)
# Plot the posterior distribution obtained by the analytical solution
x_values = np.linspace(0, 1, 100)
plt.plot(x_values, scipy.stats.beta.pdf(x_values, 36 + ALPHA_PRIOR, 100 - 36 + BETA_PRIOR))

plt.show()
\(\)

دو خط آخر کد، توزیع پسین نمونه‌برداری شده (هیستوگرام) را در مقایسه با نمودار توزیع محاسبه شده تحلیلی (خط ممتد) رسم میکند و برهمنهی این دو کاملا مشهود است.

شکل 4- هیستوگرام توزیع پسین نمونه‌برداری شده در مقایسه نمودار خط توزیع پسین تحلیلی

 

چرا از استنتاج بیزین استفاده کنیم؟

تا اینجای کار، ممکن است این سوال مطرح شود که تمام روشهای گفته شده در بالا، تقریبا توزیع پسین یکسانی را ارائه میدهند که به تخمین پارامتر تا حدودی یکسان، منتهی میشود. چرا باید روش پیچیده و دشوار بیزین را اتخاذ کنیم؟

قبل از پاسخ به این سوال، مزایای آورده شده توسط روش بیزین را بررسی میکنیم و سپس با یک مثال آن را بهتر توضیح میدهیم.

استفاده از روش استنتاج بیزین، اطلاعات فراوانی به ما ارائه میکند. نه تنها توزیع پسین را در اختیار قرار میدهد، بلکه توزیع کامل را نیز فراهم میکند. میتوان این موضوع را تحقیق کرد، گشتاورهای دیگر همچون واریانس را محاسبه کنید و به طور کلی درک بهتری از مساله را حاصل کنید. به طور خاص، از این طریق، حس عدم قطعیتی گرفته میشود که ممکن است حتی به رد کردن فرض اولیه نسبت به داده، ختم شود. این را با مثالی توضیح میدهیم.

فرض کنید که مساله تحلیل سکه به یک بازی تبدیل شود: دو سکه داریم و میخواهیم نمونه منصفانه‌تر (با احتمال شیر یا خط آمدن برابر) را انتخاب کنیم.

دو سکه به شما نشان داده میشود:

    • سکه اول، 8 بار انداخته شده و در 4 بار، شیر می‌آید.
    • سکه دوم، 100 بار انداخته شده و در 50 بار، شیر می‌آید.

 

در نگاه اول، احتمال شیر در هر دو 0.5 به نظر میرسد. هر چند که، به طور شهودی، اکثر افراد به طور قطع سکه دوم را انتخاب میکنند که در آن اندازه فضای نمونه بزرگتری داریم. ممکن است شما به سرعت، روش ماکزیمم احتمال پسین را در ذهن مرور کنید. توزیع بتا با \( \alpha = \beta = 2 \) را انتخاب میکنید که به شما یک توزیع متقارن روی بازه \( [0,1] \) با مد 0.5 میدهد.

از محاسبات ریاضی برای محاسبه تخمین به روش MAP برای theta داریم:

$$ \theta_1=(4+2-1)/(8+2+2-2)=0.5 $$

$$ \theta_2=(50+2-1)/(100+2+2-2)=0.5 $$

 

بنابراین، بر اساس MAP، هر دو سکه نتیجه دقیقا یکسانی دارند.

حال بیایید توزیع پسین کامل هر دو را که از روش استنتاج بیزین حاصل میشود، رسم کنیم.

شکل 5- توزیع پسین کامل سکه‌های بازی

 

حال با توجه به انتظاری که داریم، توزیع پسین سکه دوم، واریانس خیلی کمتری دارد (عرض بخش زنگوله‌ای شکل) که انتخاب سکه دوم به عنوان سکه منصفانه‌تر را توجیه میکند.

 

نتیجه‌گیری

در این نوشته، روشهای تخمین MLE, MAP و استنتاج بیزین معرفی شدند. از مثال سکه نامتقارن برای همه روشها استفاده شد.

روش MLE پارامتر را به شکلی محاسبه میکند که احتمال درستنمایی حداکثر شود. روش MAP یک توزیع پیشین روی پارامترها لحاظ میکند و طوری پارامتر را تخمین میزند که توزیع کامل پسین، حداکثر شود. بنابراین هر دو روش، تخمین نقطه‌ای ارائه میکنند. در مقابل، روش استنتاج بیزین، توزیع پسین کامل را مدل میکند. این فرآیند معمولا پیچیده است و دشوار اما بسیار قدرتمند است، همچنانکه دید بهتری نسبت به توزیع احتمال و پارامترهای حاصل از آن همچون واریانس، به ما میدهد.

 

 

 

 

منبع: www.towardsdatascience.com

نوشته قبلی

فناوری چند‌ورودی – چندخروجی – MIMO

نوشته بعدی

پردازش سیگنال چه تاثیری در زندگی ما دارد؟

دیدگاهتان را بنویسید

سبد خرید
ورود

هنوز حساب کاربری ندارید؟

ایجاد حساب کاربری