Download presentation
Presentation is loading. Please wait.
1
Instructor : Saeed Shiry & Mitchell Ch. 6
شبکه های باور بیزی Instructor : Saeed Shiry & Mitchell Ch. 6
2
مقدمه در عمل پیاده سازی Bayes Optimal Classifier بسیار پرهزینه است.
همانگونه که دیدیم دسته بندی کننده Naive Bayes Classifier بر این اصل استوار بود که مقادیر ویژگی ها مستقل شرطی باشند. اما این یک شرط بسیار محدود کننده است که غالبا برآورده نمیشود. شبکه های باور بیزی یاBayesian Belief Networks که Bayes Nets هم نامیده میشود روشی است برای توصیف توزیع احتمال توام مجموعه ای از متغیرها. BBN استقلال شرطی زیر مجموعه ای ازمتغیرها راقابل توصیف کرده و امکان ترکیب دانش قبلی درباره وابستگی متغیرها را با داده های آموزشی فراهم میاورد.
3
مقدمه دسته بندی کننده ساده بیزی شبکه باور بیزی X1 X2 xn … Concept C
P(x1,x2,…xn,c) = P(c) P(x1|c) P(x2|c) … P(xn|c) X1 X2 x4 Concept C X3 P(x1,x2,…xn,c) = P(c) P(x1|c) P(x2|c) P(x3|x1,x2,c)P(x4,c)
4
مقدمه اگر a1,a2,...an مجموعه ای از ویژگیها و یا متغیرها باشندBN میتواند احتمال هر ترکیبی از آنان را بیان کند. اگرچه در هنگام استفاده از BN هم ناگزیر به استفاده از شروط استقلال خواهیم بود اما BN راه حل میانه تری است که محدودیت کمتری دارد.
5
مثال Storm Bus Tour Group Lightning Campfire Thunder Forest Fire
Node = variables Arc = dependency Direction on arc representing causality Storm Bus Tour Group Lightning Campfire Thunder Forest Fire P (Campfire=True | Storm=True, BusTourGroup=True ) = ? Variable A with parents B1, …., Bn has a conditional probability table P (A | B1, …., Bn)
6
کاربرد BN تشخیص P(cause|symptom)=? پیش بینی P(symptom|cause)=?
دسته بندی تصمیم گیری ) در صورت وجود تابع ارزش( مثال: Speech recognition, Stock market, Text Classification, Computer troubleshooting, medical diagnostic systems, real-time weapons scheduling, Intel processor fault diagnosis (Intel) generator monitoring expert system (General Electric) troubleshooting (Microsoft) cause symptom
7
کاربرد BN خواستگاه BN به ترکیب احتمال با سیستم های خبره بر میگردد و این زمینه یکی از کاربردهای مهم آنرا تشکیل میدهد. BN را میتوان دربسیاری از کاربردهائی که سیستم های knowledge based متداول مورد استفاده هستند بکار برد. BN در مقایسه با شبکه های عصبی دارای مزایای زیر است: میتوان از اطلاعات افراد خبره در ساخت BN استفاده کرد. فهم و توسعه ساختار BN ساده تر است. BN میتواند با داده های ناقص کار کند.
8
استقلال شرطی تعریف استقلال شرطی
اگر X,Y,Z سه متغیر تصادفی با مقادیر گسسته باشند میگوئیم که X با دانستن Z بطور شرطی از Y مستقل است اگر با دانستن Z توزیع احتمال X مستقل از مقدار Y باشد. تعریف مشابهی را میتوان برای مجموعه ای از متغیرها بکار برد:
9
نمایش BN یک BN مدلی گرافیکی برای نشان دادن توزیع احتمال توام مجموعه ای از متغیرها است. دانش بدست آمده برای یک مسئله بصورت اطلاعات کمی و کیفی در این گراف مدل میشود. اینکار با مشخص کردن مجموعه ای از فرضیات استقلال خطی توسط کمانهای گراف، همراه با ذکرمقادیر احتمال شرطی گره ها انجام میشود. هر متغیری از فضای توام بصورت یک گره در BN نمایش داده شده و برای هر متغیر دو نوع اطلاعات ارائه میگردد: lung Cancer Smoking X-ray Bronchitis Dyspnoea P(D|C,B) P(B|S) P(S) P(X|C,S) P(C|S) کمانهای شبکه برای نشان دادن رابطه استقلال شرطی بکار میرود:یک متغیربا دانستن والدین آن از گره های غیر فرزند آن مستقل است. جدولی نیز ارائه میگردد که توزیع احتمال هرگره برای والدین بلافصل آنرا مشخص میکند.
10
Campfire با دانستن والدینش مستقل از lightining است
نمایش BN Campfire با دانستن والدینش مستقل از lightining است Storm Bus Tour Group Lightning Thunder Campfire Forest Fire P(L|S) P(B) P(S) P(F|C,S,L) P(C|S,B) P(T|L,S) CPD: S B C=0 C=1 با دانستن Storm و BusTourGroup متغیرهای Lightning و Thunder اطلاعات اضافی دیگری برای Campfire ارائه نمیدهند.
11
توزیع احتمال توام در BN برای محاسبه توزیع احتمال توام مجموعه ای از متغیرها از رابطه زیر استفاده میشود: که والدین یک گره، گره های قبلی بلافصل آن میباشند. مثال P(Campfire, Storm, BusGroupTour, Lightning, Thunder, ForestFire)? P(Storm)P(BusTourGroup)P(Campfire|Storm,BusTourGroup) P(Lightning|Storm)P(Thunder|Lightning) P(ForestFire|Lightning,Storm,Campfire).
12
مثال احتمال شرطی P(Campfire=true|Storm=true,BusTourGroup=true) = 0.4
S,B S,~B ~S,B ~S,~B C ~C P(Campfire=true|Storm=true,BusTourGroup=true) = 0.4
13
مثال عیب یابی پرینتر
14
نحوه ساخت BN بصورت دستی ، توسط یک خبره
بصورت اتوماتیک، توسط روشهای یادگیری ماشین
15
استنتاج توسط BN Age Income
How likely are elderly rich people to buy DallasNews? P( paper = DallasNews | Age>60, Income > 60k) House Owner Living Location Newspaper Preference … Voting Pattern
16
استنتاج ارتباط بین BN و دسته بندی:
اگر مقادیر همه متغیرها از پیش معلوم باشد انجام چنین استنتاجی ساده است ولی معمولا فقط مقداربخشی از متغیرها مشاهده میشود. مثلا ممکن است بخواهیم با مشاهده Thunder , BusTourGroup در مورد Forestfire نتیجه گیری کنیم.
17
حالت کلی اگر یکی از متغیرها مقدارهدف بوده و بخواهیم آنرا با داشتن مقدار سایر متغیرها محاسبه کنیم X1 X2 xn … Concept C P(x1,x2,…xn,c) = P(c) P(x1|c) P(x2|c) … P(xn|c) X1 X2 x4 Concept C X3 دسته بندی کننده بیزی ساده شبکه باور بیزی P(x1,x2,…xn,c) = P(c) P(x1|c) P(x2|c) P(x3|x1,x2,c)P(x4,c)
18
استنتاج روشهای مختلف: روشهای دقیق روشهای تقریبی Monte Carlo
Dynamic programming Variable elimination
19
مثال A: p(A) = 0.1p(~A) = 0.9 B: p(B) = 0.4p(~B) = 0.6
CPD: A B C=0 C=1 A C B A: p(A) = 0.1p(~A) = 0.9 B: p(B) = 0.4p(~B) = 0.6 The initialized Probability of C: p(C) =p(CAB) + p(C~AB) + p(CA~B) + p(C~A~B) =p(C | AB) * p(AB) + p(C | ~AB) * p(~AB) +p(C | A~B) * p(A~B) + p(C | ~A~B) * p(~A~B) =p(C | AB) * p(A) * p(B) + p(C | ~AB) * p(~A) * p(B) + p(C | A~B) * p(A) * p(~B) +p(C | ~A~B) * p(~A) * p(~B) =0.518 با دانستن احتمال A , B میتوان احتمال درستی C را محاسبه نمود.
20
مثال A: p(A) = 0.1 p(~A) = 0.9 B: p(B) = 0.4 p(~B) = 0.6 C: p(c)= 0.58
CPD: A B C=0 C=1 A C B A: p(A) = 0.1 p(~A) = 0.9 B: p(B) = 0.4 p(~B) = 0.6 C: p(c)= 0.58 p(B | C) =( p( C | B) * p(B) ) / p(C)=( ( p(C | AB) * p(A) + p(C | ~AB) * p(~A) ) * p(B) ) / p(C) =( (0.8 * * 0.9) * 0.4 ) / 0.518=0.409 p(A | C) =( p( C | A) * p(A) ) / p(C)=( ( p(C | AB) * p(B) + p(C | A~B) * p(~B) ) * p(A) ) / p(C)= ( (0.8 * * 0.6) * 0.1 ) / 0.518=0.131 در صورتیکه بدانیم C درست است میتوان با استفاده از تئوری بیز و احتمال اولیه C احتمال اینکه کدامیک از A یا B علت وقوع آن بوده را محاسبه نمائیم. لذا در صورت صحیح بودن c میتوان چنین گفت که احتمال اینکه B عامل آن بوده باشد بیشتر است.
21
یادگیری یک BN چگونه میتوان یک BN را از روی داده های آموزشی یاد گرفت؟
ممکن است ساختار شبکه از قبل معلوم باشد، و بخواهیم پارامترهای آن یعنی مقادیر احتمال شرطی متغیرها را یاد بگیریم ولی فقط برخی از متغیرها قابل مشاهده باشند. ممکن است ساختار شبکه معلوم نبوده و مجبور باشیم ساختار گراف و پارامترهای آنر از داده های آموزشی استنتاج کنیم C S B D X P(S) P(B|S) P(X|C,S) P(C|S) P(D|C,B) C S B D X
22
یادگیری یک BN در صورتی که ساختار شبکه معلوم بوده وتمامی متغیرها قابل مشاهده باشند میتوان براحتی جدول احتمال شرطی را از روی داده های آموزشی یاد گرفت )مشابه یادگیری بیزی ساده( در صورتیکه ساختار شبکه از قبل معلوم بوده ولی فقط برخی از مقادیر متغیرها قابل مشاهده باشند، یادگیری مشکلتر خواهد بود. اینکار شبیه یادگیری وزنهای لایه مخفی شبکه های عصبی است. در صورتیکه ساختار شبکه معلوم نباشد یادگیری مشکل بوده و از روشهای جستجوئی نظیر K2 برای جستجو در فضای ساختارهای ممکن استفاده میشود.
23
روشهای یادگیری BN روشهای یادگیری BN بسته به اینکه ساختار شبکه از قبل معلوم باشد و همچنین قابلیت مشاهده داده بصورت زیر است: Method Observability Structure Maximum Likelihood Estimation Full Known EM (or gradient ascent) Partial Search through model space Unknown EM + search through model space
24
روشهای یادگیری ساختار BN
روشها ی scoring-based که در آنها بهترین BN ساختاری است که بیشترین تطابق با داده را داشته باشد. این روشها بدنبال ماکزیمم کردن MDL بیزی و یا تابع آنتروپی Kullback-Leibler (KL) هستند. روشهایconstraint-based که در آن ساختار BN با مشخص کردن رابطه استقلال شرطی بین گره ها بدست میآید. نشان داده اند که روش اول کارائی کمتری داشته و دسته بندی کننده ضعیفی را بدست میدهد.
25
الگوریتم EM : یادگیری با داده های غیر قابل مشاهده
در برخی از کاربردها فقط برخی از ویژگیها قابل مشاهده هستند. راههای متفاوتی برای یادگیری در چنین مواقعی ارائه شده است. در شرایطی که شکل کلی توزیع احتمال متغیری معلوم باشد، میتوان از الگوریتم (Expectation-Maximization) EM برای یادگیری متغیری استفاده نمود که بطور کامل مشاهده نشده است. این الگوریتم برای آموزش BN بکار میرود. علاوه بر آن در الگوریتمهای دسته بندی بدون ناظر و یادگیری HMM نیز کاربرد دارد.
26
تخمین میانگین k تابع گاوسی
مثال یک مجموعه آموزشی D را در نظر بگیرید که دارای نمونه هائی باشد که مخلوطی از k توزیع نرمال مجزا باشد. برای تولید هر نمونه: یکی از K توزیع احتمال گاوسی با احتمال یکنواختی انتخاب میشود. داده بصورت تصادفی و با استفاده از توزیع فوق انتخاب میگردد.
27
الگوریتمEM برای تخمین میانگین k تابع گاوسی
ورودی: نمونه های x که به صورت مخلوطی از k توزیع گاوسی درست شده است اطلاعاتی که نداریم: مقادیر k میانگین <m1,... mk> اینکه کدام نمونه توسط کدام توزیع تولید شده است پیدا کنید: مقدار MLتخمین هر یک از مقادیر میانگین <m1,... mk>
28
اطلاعات ناقص اگر نمایش هر نمونه را بصورت زیر نشان دهیم:
Yi= <xi,zi1,zi2> که در آنzij برابر با یک است اگر نمونهxi توسط توزیع Jام درست شده باشد. xi نمونه مشاهده شده است. اگر نمونه کامل را داشتیم چگونه میشد m1,... mk را محاسبه کرد اگر m1,... mk را داشته باشیم چگونه میتوان مقادیر zij را حدس زد.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.