تخمین گر ML

پاسخ تمرین ۴(تخمین میانگین و واریانس با تخمین گر ML)

یادآوری تخمین گر ML و طرح مسئله

 در بخش قبل درباره ی  تخمین گر ML صحبت کردیم. در این بخش همچنین تمرینی مطرح شد که هدف این بود که مقدار میانگین و واریانس را برای pdf گوسی تخمین بزنیم. همانطور که در این بخش گفته شد، میانگین و واریانس بصورت زیر تخمین زده میشوند:

 

تخمین ML برای میانگین کلاس

تخمین ML برای میانگین کلاس

تخمین ML برای ماتریس کوواریانس

تخمین ML برای ماتریس کوواریانس

 

توضیح کد متلب

در این بخش کد مربوط به این مسئله قرار داده شده است. ابتدا با دستور mvnrnd و با در دست داشتن میانگین(m) و ورایانس (S)، باید ۵۰ دیتای دوبعدی تولید کنیم. بعد از آن با استفاده از فرمول هایی که در بالا مطرح شده  تخمین های میانگین(m_hat) و واریانس(S_hat) را بدست می آوریم(با مقادیر واقعی(mو S) نیز مقایسه کنید). در واقع با این عمل توانستیم مقدار میانگین و واریانس را برای pdf گوسی(که در عمل نامعلوم هستند) را تخمین بزنیم. توجه داشته باشید که همانطور که در اینجا   و اینجا مطرح شد، برای اینکه بتوانیم داده ها را به روش های مختلف کلاس بندی کنیم باید میانگین و واریانس توزیع را داشته باشیم که با روشی که در این بخش مطرح شد براحتی این کار امکان پذیر است. در پایان این بخش می توانید کد مربوطه(به فرمت mat.) را در قالب فایل زیپ دانلود کنید.

 

%%matlabkhoone
%%tamrin4

clc;
clear all;
close all;
%% genrate 50 random data
m = [2 -2]; S = [0.9 0.2; 0.2 .3];
X = mvnrnd(m,S,50)’; %%2D feature vector

% Compute the ML estimates of m and S
[l,N]=size(X);
m_hat=(1/N)*sum(X’)’; %% estimated mean

m_hat_rep=repmat(m_hat,1,N);
S_hat=(1/N)*(X-m_hat_rep)*(X-m_hat_rep)’;%% estimated variance

 

 

لینک دانلود کد متلب


 

اولین کانال آموزش رایگان دروس مربوط به رشته ی مهندسی پزشکی

 لینک کانال  

سوالات و دیدگاه خود را درباره ی این پست با ما درمیان بگذارید

0 پاسخ

دیدگاه خود را ثبت کنید

Want to join the discussion?
Feel free to contribute!

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *