390 likes | 889 Views
یادگیری بیزی. Instructor : Saeed Shiry & Mitchell Ch. 6. مقدمه. استدلال بیزی روشی بر پایه احتمالات برای استنتاج کردن است
E N D
یادگیریبیزی Instructor : Saeed Shiry & Mitchell Ch. 6
مقدمه • استدلالبیزیروشیبرپایهاحتمالاتبرایاستنتاجکردناست • اساساینروشبرایناصلاستواراستکهبرایهرکمیتییکتوزیعاحتمالوجودداردکهبامشاهدهیکدادهجدیدواستدلالدرموردتوزیعاحتمالآنمیتوانتصمیماتبهینهایاتخاذکرد.
اهمیتیادگیریبیزی • دربرخیکاربردها )نظیردستهبندیمتن (استفادهازروشهاییادگیریبیزی )نظیردستهبندیکنندهبیزیساده( توانستهاستراهحلهایعملیمفیدیراارائهکند. نشاندادهشدهاستکهکارائیاینروشقابلمقایسهبادرختتصمیموشبکهعصبیبودهاست. • مطالعهیادگیریبیزیبهفهمسایرروشهاییادگیریکهبطورمستقیمازاحتمالاتاستفادهنمیکنندکمکمیکند.
نگرشبیزیبهیادگیریماشین نگرشبیزیبهیادگیریماشین ) ویاهرفراینددیگر(بصورتزیراست: • دانشموجوددربارهموضوعرابصورتاحتمالاتیفرمولهمیکنیم • برایاینکارمقادیرکیفیدانشرابصورتتوزیعاحتمال،فرضیاتاستقلالوغیرهمدلمینمائیم. اینمدلدارایپارامترهایناشناختهایخواهدبود. • برایهریکازمقادیرناشناخته،توزیعاحتمالاولیهایدرنظرگرفتهمیشودکهبازگوکنندهباورمابهمحتملبودنهریکازاینمقادیربدوندیدندادهاست. • دادهراجمعآوریمینمائیم • بامشاهدهدادههامقدارتوزیعاحتمالثانویهرامحاسبهمیکنیم • بااستفادهازایناحتمالثانویه: • بهیکنتیجهگیریدرموردعدمقطعیتمیرسیم • بامیانگینگیریرویمقادیراحتمالثانویهپیشبینیانجاممیدهیم • برایکاهشخطایثانویهموردانتظارتصمیمگیریمیکنیم
ویژگیهاییادگیریبیزی • مشاهدههرمثالمیتواندبصورتجزئیباعثافزایشویاکاهشاحتمالدرستبودنیکفرضیهگردد. • برایبدستآوردناحتمالیکفرضیهمیتواندانشقبلیرابامثالمشاهدهشدهترکیبکرد.ایندانشقبلیبهدوطریقبدستمیاید: • احتمالقبلیبرایهرفرضیهموجودباشد • برایدادهمشاهدهشدهتوزیعاحتمالهرفرضیهممکنموجودباشد • روشهایبیزیفرضیههائیارائهمیدهندکهقادربهپیشبینیاحتمالیهستند) مثلبیماربهاحتمال 93% بهبودمییابد( • مثالهایجدیدرامیتوانباترکیبوزنیچندینفرضیهدستهبندینمود. • حتیدرمواردیکهروشهایبیزیقابلمحاسبهنباشند،میتوانازآنهابهعنوانمعیاریبرایارزیابیروشهایدیگراستفادهکرد
مشکلاتعملی • نیازبهدانشاولیهدرموردتعدادزیادیمقادیراحتمالدارد. وقتیکهایناطلاعاتموجودنباشنداغلبناگزیربهتخمینزدنآنهستیم. برایاینکارازاطلاعاتزمینه،دادههائیکهقبلاجمعآوریشدهاند،وفرضیاتیدرموردتوزیعاحتمالاستفادهمیشود. • محاسبهفرضیاتبهینهبیزیبسیارهزینهبراست ) تعدادفرضیههایکاندیدخطیاست(
ساختاراینفصل • معرفیتئوریبیز، ML , MAP روشهاییادگیریبیزیشامل: • Optimal classifier, Gibbs alg., • Naive Bayes learning • Bayesian belief network learning • رابطهتئوریبیزوسایرروشهاییادگیری
تئوریبیز • دریادگیریماشینمعمولادرفضایفرضیه H بدنبالبهترینفرضیهایهستیمکهدرمورددادههایآموزشی D صدقکند. یکراهتعیینبهترینفرضیه،ایناستکهبدنبالمحتملترینفرضیهایباشیمکهباداشتندادههایآموزشی D واحتمالقبلیدرموردفرضیههایمختلفمیتوانانتظارداشت. • تئوریبیزچنینراهحلیراارائهمیدهد.اینروشراهحلمستقیمیاستکهنیازیبهجستجوندارد.
تئوریبیز: تعریفمفاهیماولیه • فرضکنیدکهفضایفرضیه H ومجموعهمثالهایآموزش D موجودباشند. مقادیراحتمالزیرراتعریفمیکنیم: • =P(h) احتمالاولیهایکهفرضیه h قبلازمشاهدهمثالآموزشیD داشتهاست (priorprobablity) .اگرچنیناحتمالیموجودنباشدمیتوانبهتمامیفرضیههااحتمالیکسانینسبتداد. • =P(D) احتمالاولیهایکهدادهآموزشی D مشاهدهخواهدشد. • =P(D|h) احتمالمشاهدهدادهآموزشی D بهفرضآنکهفرضیه h صادقباشد. • دریادگیریماشینعلاقه مندبهدانستن P(h|D) یعنیاحتمالاینکهبامشاهدهدادهآموزشی D فرضیه h صادقباشد،هستیم. اینرابطهاحتمالثانویه (posterior probablity) نامیدهمیشود. • توجهشودکهاحتمالاولیهمستقلازدادهآموزشیاستولیاحتمالثانویهتاثیردادهآموزشیرامنعکسمیکند.
تئوریبیز • سنگبناییادگیریبیزیراتئوریبیزتشکیلمیدهد. اینتئوریامکانمحاسبهاحتمالثانویهرابرمبنایاحتمالاتاولیهمیدهد: Likelihood Prior probability Posterior probability Evidence
تئوریبیز • همانطورکهمشاهدهمیشودباافزایش P(D) مقدار P(h|D) کاهشمییابد. زیراهرچهاحتمالمشاهده D مستقلاز h بیشترباشدبهاینمعناخواهدبودکه D شواهدکمتریدرحمایتاز hدربردارد.
Maximum A Posteriori (MAP) hypothesis • درمسایلیکهمجموعهایازفرضیههای H وجودداشتهوبخواهیممحتملترینفرضیهراازمیانآنانانتخاببکنیم،فرضیهباحداکثراحتمال Maximum A Posteriori (MAP) hypothesis نامیدهمیشودوازرابطهزیربدستمیآید. دراینرابطهمقدار P(D) مستقلاز h بودهوحذفمیشود
Maximum likelihood (ML) hypothesis • درمواقعیکههیچاطلاعیدرمورد P(h) وجودنداشتهباشدمیتوانفرضکردکهتمامفرضیههای H دارایاحتمالاولیهیکسانیهستند. دراینصورتبرایمحاسبهفرضیهباحداکثراحتمالمیتوانفقطمقدارP(D | h) رادرنظرگرفت. اینمقدار liklihood داده D بافرض h نامیدهمیشودوهرفرضیهایکهمقدارآنراماکزیممکندفرضیه maximum liklihood (ML) نامیدهمیشود: hML=argmaxhHP(D | h)
مثال:تشخیصبیماری • دریکمسئلهتشخیصبیماریبادوفرصیهروبروهستیم: -1 بیماردارایسرطاناست -2 بیمارسالماست • داداهایآزمایشگاهینشانمیدهدکه 0.008 جمعیتدارایاینبیماریهستند. • بعلتنادقیقبودنتستهایآزمایشگاهینتایجآنبصورتزیراست: • در 98% مواقعیکهشخصواقعابیماراستنتیجهصحیحمثبتحاصلمیشود. • در 97% مواقعیکهبیمارسالماستنتیجهصحیحمنفیحاصلمیشود. P(cancer)=0.008, P(+|cancer)=0.98, P(+|~cancer)=0.03, P(~cancer)=0.992, P(-|cancer)=0.02, P(-|~cancer)=0.97
مثال:تشخیصبیماری • حالاگربیمارجدیدیمشاهدهشودکهجوابآزمایشگاهمثبتباشد،آیابایدبیماررامبتلابهسرطانبدانیم؟ • احتمالابتلایبیماربهسرطانعبارتاستاز: P(cancer|+) = P(+|cancer) P(cancer) / P(+) = (0.98)(0.008) / P(+) = 0.0078 / P(+) • احتمالنداشتنسرطانعبارتاستاز: P(~cancer|+) = P(+|~cancer) P(~cancer) / P(+) = (0.03)(0.992) / P(+) = 0.0298 / P(+) • لذافرضیه MAP عبارتخواهدبوداز: hmap=~cancer
Brute-force MAP Learning • میتوانبااستفادهازتئوریبیزیالگوریتمیبراییادگیریمفهومارائهنمودکهبتواندفرضیهبابیشتریناحتمالرابدستدهد: Brute-force MAP Learning Algorithmَ • برایهرفرضیه h موجوددر Hمقداراحتمالثانویهراحسابمیکنیم. • فرضیه h MAPراکهبیشتریناحتمالثانویهراداردمشخصمیکنیم.
دستهبندیکنندهبیزیبهینهBayes Optimal Classifier • الگوریتم Brute-Force MAP learning درپیپاسخگوئیبهاینسوالاست: محتملترینفرضیهبرایمجموعهدادهآموزشیچیست؟ • درحالیکهاغلبدنبالیافتنپاسخاینسوالهستیم:محتملتریندستهبندییکنمونهمشاهدهشدهچیست؟ • اگرچهبهنظرمیرسدکهپاسخسوالدومرامیتوانبااعمالفرضیه MAP بهنمونهموردنظربدستآورد،روشبهتریبرایاینکاروجوددارد: • درعملمحتملتریندستهبندیبراییکنمونهجدیدازترکیبپیشبینیتمامیفرضیههابدستمیاید. مقدارپیشبینیهرفرضیهدراحتمالثانویهآنضربشدهوحاصلآنهاباهمترکیبمیشود.
مثال • فرضکنید 3 فرضیه h1,h2,h3 برایدادههایآموزشیدارایاحتمالثانویهزیرباشند: P(h1|D) = 0.4, P(h2|D) = 0.3, P(h3|D) = 0.3 درنتیجه h1 فرضیه MAP میباشد. • اگربهنمونهجدیدیمثل x بربخوریمکه P(h1) = +, P(h2) = - and P(h3) = - • دراینصورتاحتمالمثبتبودن x برابربا .4 واحتمالمنفیبودنآن .6 استدراینصورتدستهبندی x چیست؟
دستهبندیکنندهبیزیبهینهBayes Optimal Classifier • درعملمحتملتریندستهبندیبراییکنمونهجدیدازترکیبوزنیپیشبینیتمامیفرضیههابدستمیاید. اگردستهبندیمثالجدیدبتواندهرمقدار vjازمجموعه V راداشتهباشددراینصورتاحتمالاینکهمثالجدیددستهبندی Vjراداشتهباشدبرابراستبا: • مقدارماکزیممرابطهفوقدستهبندیبهینهایننمونهرامشخصخواهدنمود: Bayes Optimal Classification
دستهبندیبهینهOptimal Classification • برایمثالفوقدستهبندیبهینهبیزیبصورتزیرخواهدبود. P(h1|D) = 0.4 P(-|h1) = 0 P(+|h1) = 1 P(h2|D) = 0.3 P(-|h2) = 1 P(+|h2) = 0 P(h3|D) = 0.3 P(-|h3) = 1 P(+|h3) = 0 • لذا Σi P( + | hi ) P (hi | D) = 0.4 and Σi P( - | hi ) P (hi | D) = 0.6 • درنتیجهایننمونهبصورتمنفیدستهبندیخواهدشد. . استفادهازاینروشبرایفضاهایفرضیههایبزرگغیرعملیاست
Naive Bayes Classifier • یکروشیادگیریبسیارعملیروش Naive Bayes learner است. درکاربردهائینظیردستهبندیمتنوتشخیصپزشکیاینروشکارائیقابلمقایسهایباشبکههایعصبیودرختتصمیمدارد. • اینروشدرمسایلیکاربردداردکه: • نمونه x توسطترکیبعطفیویژگیهاقابلتوصیفبودهو • اینویژگیهابصورتشرطیمستقلازیکدیگرباشند. • تابعهدفf(x) بتواندهرمقداریراازمجموعهمحدود v داشتهباشد. • مجموعهمثالهایآموزشینسبتازیادیدردستباشد
Naive Bayes Classifier • تابعهدفزیررادرنظربگیرید f : X V کهدرآنهرنمونه x توسطویژگیزیرمشخصمیشود (a1,…an) • صورتمسئله: براییکنمونهمشاهدهشدهمقدارتابعهدفیابعبارتدیگردستهبندیآنرامشخصکنید. • درروشبیزیبرایحلمسئلهمحتملترینمقدارهدف vmapمحاسبهمیشود: اینرابطهبااستفادهازتئوریبیزبصورتزیرنوشتهمیشود:
Naive Bayes Classifier • دررابطهفوقمقدار P(vj) باشمارشدفعاتیکهvjدرمثالهایآموزشیمشاهدهشدهاستمحاسبهمیشود. • امامحاسبه P(a1,…an | vj) چندانعملینیستمگراینکهمجموعهدادهآموزشیبسیاربسیاربزرگیدردستباشد. • روشیادگیری Naive Bayes Classifierبرپایهاینفرضساده (Naive) عملمیکندکه: مقادیرویژگیهابصورتشرطیمستقلهستند • دراینصورتبراییکمقدارهدفمشخصاحتمالمشاهدهترکیبعطفی(a1,…an) برابراستباحاصلضرباحتمالتکتکویژگیها.دراینصورترابطهفوقبصورتزیردرمیآید: Naive Bayes Classifier
Naive Bayes Classifier خلاصه: • درروشیادگیری Naive Bayes Classifierمقادیرمختلف P(vj) و P(ai| vj) بااستفادهازدفعاتتکرارآنهاتخمینزدهمیشود • مجموعهاینتخمینهافرضیهایراتشکیلمیدهدکهبااستفادهازرابطهزیربرایدستهبندیدادهجدیدبکارمیرود: • دراینروشهیچگونهعملجستجویآشکاریوجودندارد.
مثال • اعمالدستهبندیکنندهسادهبیزیبهمسئلهدستهبندیروزهابراساساینکهبازیتنیسدرآنانجامخواهدشدبانه؟ • دادههایاینمثالدرجدولزیرنشاندادهشدهاست:
مثال • میخواهیمبااینروشدستهمثالزیررامشخصکنیم: x:(Outl=Sunny, Temp=Cool, Hum=High,Wind=strong) • بااعمالرابطهدستهبندیکنندهسادهبیزیداریم: • برایمحاسبهاینمقداربایدتعداد 10 مقداراحتمالراتخمینبزنیم.
مثال • اینکارباشمارشدفعاتتکراردرمثالهایآموزشیانجاممیشود:
تخمینمقادیراحتمال • درمثالقبلمقداراحتمالاتبراساسنسبتتعدادمشاهدهشدهیکمقداربهتعدادکلحالاتممکنمحاسبهگردید nc/n • اگرچهاینمقدارمشاهدهشدهمیتواندتخمینخوبیازمقداراحتمالباشدبااینوجوداگرمقدارncخیلیکوچکویاصفرباشدمیتواندمنجربهنتایجغلطیشود. • اگربرایدسته vj مقدارaiهرگزمشاهدهنشود،مقدار P(ai|vj)=0شدهودرنتیجهکلحاصلضربصفرخواهدشد. برایجلوگیریازاینمشکلازروشیبهنام m-estimate استفادهمیشود. • کهدرآن nc و n همانمقادیرقبلیبودهو p تخمیناولیهازمقداراحتمالیاستکهبدنبالآنهستیموm تعدادمثالهایمجازیاست. معمولامقدار p بصورتیکنواختدرنظرگرفتهشدهوبرابربا p=1/k درنظرگرفتهمیشودکه k تعدادمقادیرممکنبرایویژگیهاست. m-estimate of probablity
دستهبندیمتن مثالهائیازدستهبندیمتن: • تعیینمقالههایموردعلاقهیکشخص • دستهبندیصفحاتوببراساسموضوع برایچنینکاربردهائیدستهبندیکنندهسادهبیزیمیتواندبسیارموثرعملکند .اگرچهدرعملشرطاستقلالویژگیهابرقرارنیست ) مثلااحتمالدیدنکلمهماشینبعدازکلمهیادگیریزیاداست(
دستهبندیمتن درطراحییکراهحلبرایچنینمسئلهایبادونکتهمواجههستیم • تصمیمگیریدرمورداینکهیکمتندلخواهراچگونهبصورتمقادیرویژگینشاندهیم. • تصمیمگیریدرمورداینکهمقادیراحتمالموردنیازراچگونهتخمینبزنیم.
نشاندادنیکمتنبصورتمقادیرویژگی • دوراهبرایاینکارامتحانشدهاست: • موقعیتهرکلمهدرمتنبصورتیکویژگیدرنظرگرفتهمیشود. مثلامتنیکه 100 کلمهدارددارای 100 ویژگینیزخواهدبود. • هرکلمهموجوددرفرهنگلغاتبهعنوانیکویژگیدرنظرگرفتهشده ) حدود (50000 وتعدادتکرارآنهادرمتنشمارشمیشود.
نمایشمتن • درروشاولهرمتنبهبرداریازکلماتتبدیلشدهوبازایموقعیتهرکلمهیکویژگینسبتدادهمیشود. کهمقدارآنویژگیبرابرباآنکلمهخواهدبود . doc = (a1=w1, ai=wk, … , an=wn) • برایمثالفرضکنیدکهازتعداد 1000 متنآموزشیتعداد 700 متنبصورت dislike و 300 متنبصورت like دستهبندیشدهباشند. دراینصورتبرایدستهبندییکمتنجدیدبا 100 کلمهمیتوانرابطهدستهبندیکنندهسادهبیزیرابصورتزیربکاربرد: .
یکاشکالاساسی • استفادهازفرضاستقلالبیزیدراینمثالبوضوحغلطاستیعنینمیتوانفرضکردکهاحتمالبودنیککلمهدریکمحلمستقلازکلماتیاستکهدرسایرمحلهاقرارگرفتهاند. بااینوجودچونچارهدیگرینداریمناگزیرازاستفادهازاینفرضهستیم. درعملنشاندادهشدهکهعلیرغماینفرضنادرست،استفادهازدستهبندیکنندهبیزیسادهنتایجخوبیداشتهاست.
محاسبهمقادیراحتمال • برایمحاسبه P(vj) تعدادهرکلاسدردادهآموزشیشمارشمیشود. • برایمحاسبه P(ai=wk|vj) بایدتعدادبسیارزیادیمقداراحتمالمحاسبهشودکهعملیناشدنیاست. ازاینرودرعملفرضمیشودکهاحتمالمشاهدهیککلمهمشخص wk مستقلازمحلقرارگرفتنآنباشد. بعبارتدیگرکلمجموعه P(a1=wk|vj), P(a2=wk|vj),... با P(wk|vj) تخمینزدهمیشودکهمعادلبامحاسبهتقریبا 2*50000 مقداراحتمالخواهدبود. • همچنینبرایمحاسبهمقداراحتمالازروش m-estimate استفادهخواهدشد.
الگوریتمیادگیری LEARN_NAIVE_BAYES_TEXT( Examples, V ) 1. collect all words and other tokens that occur in Examples • Vocabulary all distinct words and other tokens in Examples 2. calculate the required P( vj) and P( wk| vj) probability terms • For each target value vj in V do – docsj subset of Examples for which the target value is vj – P( vj) |docsj|/| Examples| – Textj a single document created by concatenating all members of docsj – n total number of words in Textj (counting duplicate words multiple times) – for each word wk in Vocabulary • nk number of times word wk occurs in Textj • P( wk| vj) ( nk + 1) / ( n + | Vocabulary|)
الگوریتمدستهبندی CLASSIFY_NAIVE_BAYES_TEXT ( Doc) • positions all word positions in Doc that contain tokens found in Vocabulary • Return vNB, where vNB = argmax vj in V P( vj)Pi in positions P( ai| vj)
نتایجتجربی: یادگیری news group • هدف: تعیناینکهیکمقالهموردبررسیبهکدامیکاز 20 گروهخبریزیراختصاصدارد: • دادهآموزشی: تعداد 1000 متنبههمراهگروهخبریمربوطه • نتیجهدستهبندی 89 % : دقتدردستهبندیحاصلگردید comp.graphics misc.forsale comp.os.ms-windows.misc rec.autos comp.sys.ibm.pc.hardware rec.motorcycles comp.sys.mac.hardware rec.sport.baseball comp.windows.x rec.sport.hockey alt.atheism sci.space sci.med soc.religion.christian sci.crypt talk.religion.misc sci.electronics talk.politics.mideast talk.politics.misc talk.politics.guns دراینمثال 100 کلمهمتداولنظیر the ازمجموعهلغاتحذفشدهاست.همجنینکلماتیکهتعدادتکرارآنهااز 3 کمتربودهنیزحذفگردیدهاست. درمجموعتعدا 38500 کلمهدرلغتنامهوجودداشتهاست.