440 likes | 784 Views
توابع تمایز خطی Linear Discriminant Functions. حسین منتظری کردی دانشکده مهندسی برق و کامپیوتر دانشگاه صنعتی نوشیروانی بابل بهار 93. رئوس مطالب 1- توابع تمایز خطی و سطوح تصمیم 2- توابع تمایز خطی تعمیمیافته 3- مورد دوکلاسهی تفکیکپذیر 4- کمینهکردن تابع معیار پرسپترون
E N D
توابع تمایز خطی Linear Discriminant Functions حسین منتظری کردی دانشکده مهندسی برق و کامپیوتر دانشگاه صنعتی نوشیروانی بابل بهار 93
رئوس مطالب 1- توابع تمایز خطی و سطوح تصمیم 2- توابع تمایز خطی تعمیمیافته 3- مورد دوکلاسهی تفکیکپذیر 4- کمینهکردن تابع معیار پرسپترون 5- روشهای حداقل مجذور خطا 6- تعمیمهای چندکلاسه
5-1- مقدمه • بجای حدسزدن شکل توزیع، فرض میشود که نوع تابع تمایز معلوم است • مسئلهی یافتن یک تابع تمایز خطی بهصورت یک مسئلهی کمینهکردن تابع معیار است • یکیاز توابع معیار واضح برای اهداف طبقهبندی، خطای یادگیری یا خطرپذیری نمونه میباشد • روشهای شیب نزولی، یکیاز راههای کمینهکردن توابع تمایز میباشد • 5-2- توابع تمایز خطی و سطوح تصمیم • 5-2-1- مورد دوکلاسه • یک تابع تمایز خطی بصورت زیر است • بردار w را بردار وزن و w0 را بایاس یا آستانهی وزن مینامند
معادلهی مرز تصمیم از g(x) = 0 حاصل میشود. اگر g(x) خطی باشد، آنگاه مرز تصمیم یک ابرصفحه خواهدبود. • اگر x1 و x2 دو نقطه روی ابرصفحه باشند، آنگاه
بردار وزن w بر هر برداری در سطح تصمیم عمود است • اگر g(x) > 0 باشد، آنگاه x به ω1 اختصاص داشته و در R1 قرار دارد. بنابراین، ناحیهی R1 در سمت مثبت صفحهی تصمیم قرار داشته و R2 در سمت منفی قرار دارد • فاصلهی هر نقطهی x از فضای ویژگی تا مرز تصمیم برابر است با
5-2-2- حالت چندکلاسه • راه حلهای زیادی برای توصیف مسئلهی چند کلاسه وجود دارد. یکیاز روشهای معمول، تقسیم مسئله به c-1 مسئلهی دوکلاسه است • در این حالت، تابع تمایز خطی نقاط منسوب به ωi را از دیگر نقاط فضای ویژگی جدا میکند • یک رهیافت عجیبتر، بکارگیری c (c-1)/2 تابع تمایز خطی میباشد. هر دو رهیافت ممکن است به نواحی طبقهبندی تعریفنشده منجر شوند • برای مسئلهی c کلاسه، تابع تمایز خطی را بصورت زیر تعریف میکنیم • بردار تعلق دارد و در حالت برابری، طبقهبندی تعریف نشده است • این نوع طبقهبند، ماشین خطی نام دارد
یک ماشین خطی موجب تقسیم فضای ویژگی به c ناحیهی تصمیم میشود که درصورت تعلق x به ناحیهی Ri، آنگاه gi(x) بزرگترین تابع تمایز در آن ناحیه خواهدبود • اگر Ri و Rj دو ناحیهی همسایه در فضایویژگی باشند، آنگاه مرز تصمیم بین آنها، بخشی از ابرصفحهی تصمیم Hijبصورت زیر است • در ماشینهای خطی، بردار وزن بتنهایی موثر نیست بلکه اختلاف بین آنها حایز اهمیت است • در ماشین خطی، نیازی به مجاورت مرزهای تصمیم نیست و لذا، تعداد سطوح تصمیم اغلب کمتر از c (c-1)/2 میباشد • 5-3- توابع تمایز خطی تعمیمیافته • یک تابع تمایز خطی قابل نمایش بصورت زیر است
با افزودن حاصلضربهای مولفههای x به رابطهی قبلی، تابع تمایز تربیعی حاصل میشود • باتوجه خاصیت جابجایی ضرب، رابطهی 4 دارای d (d+1)/2 ضریب اضافی جهت تولید یک سطح تصمیم پیچیدهتر است
در این حالت، سطح تصمیم تعریفشده با g(x)= 0 درجهی دوم بوده و سطح ابرتربیعی نام دارد • با افزودن جملات مراتب بالاتر نظیر wijkxixjxk به g(x)توابع تمایز چندجملهای بدست میآید • روابط 3 و 4 میتوانند بعنوان یک بسط از تابع g(x) درنظر گرفته شوند. تابع تمایز خطی تعمیمیافته بصورت زیر قابل نمایش است • در رابطهی بالا، a یک بردار وزن و y نیز یک تابع دلخواه از x میباشد. رابطهی 6 برحسب x خطی نیست، ولی در فضای y یک تابع نمایز خطی را نتیجه میدهد • 5-4- حالت جداپذیر خطی دو کلاسه • 5-4-1- هندسه و اصطلاحات
فرض کنید n نمونه از y1,…, yn وجود دارد که تعدادی از آنها به ω1 و برخی نیز به ω2 تعلق دارند • تابع تمایز خطی را بصورت g(x)= atyدرنظر بگیرید. اگر بردار وزنی وجود داشته باشد که تمام نمونههای یادگیری را با خطای صفر طبقهبندی نماید، آنگاه نمونهها را جداپذیر خطی گویند • نمونهی yi به کلاس ω1اختصاص مییابد، اگر atyi > 0 باشد. با جایگزینی نمونههای متعلق به ω2با مقادیر قرینهاش، نرمالیزه کردن، آنگاه با بردار وزن a تمام نمونهها دارای atyi > 0 خواهندبود. این چنین برداری، بردار جداساز یا بردار راهحل نام دارد. • بردار جداساز یکتا نیست • 5-4-2- روشهای شیب نزولی • یک تابع معیار J (a) تعریف میشود بطوریکه اگر a یک بردار جداساز باشد، آنگاه کمینه خواهدبود. • روش شیب نزولی، حرکت در جهت عکس شیب یک تابع با تنظیم یک پارامتر
تنظیم پارامتر، اینجا بردار جداساز، در مراحل متوالی صورت میگیرد • در رابطهی بالا، η یک ضریب مقیاس مثبت بنام نرخ یادگیری است. اگر این پارامتر را کوچک انتخاب نماییم، سرعت همگرایی کند میشود و اگر آن را بزرگ انتخاب نماییم، ممکن است الگوریتم واگرا گردد. • اگر J (a) قابل تخمین با بسط مرتبهی دوم حول a باشد
در رابطهی قبلی، H ماتریس هِسیَن مشتق مرتبهی دوم J حول a میباشد. آنگاه داریم • در رابطهی بالا، J میتواند کمینه شود، اگر نرخ یادگیری بصورت زیر تنظیم گردد • اگر J (a) یک تابع مرتبهی دوم برحسب a باشد، آنگاه H ثابت بوده و η نیز ثابت و مستقل از مراحل یادگیری، k، خواهدبود. • در روش نیوتن، بردار جداساز در مراحل متوالی بصورت زیر بروز میشود
الگوریتم نیوتن نسبت به شیب نزولی سریعتر همگرا میشود، ولی این الگوریتم درصورت تکیندار بودن H قابل استفاده نیست. همچنین، محاسبات لازم برای گرفتن معکوس H در روش نیوتن نیز وقتگیر میباشد.
5-5- کمینهکردن تابع معیار پرسپترون • 5-5-1- تابع معیار پرسپترون • هدف ساختن یک تابع معیار برای حل نامعادلات خطی atyi > 0 است. یک انتخاب واضح برای J وابستگی آن به نمونههای اشتباه طبقهبندی شده با a میباشد • تابع معیار پرسپترون بصورت زیر است • در رابطهی بالا، y (a) مجموعهی نمونههای اشتباه طبقهبندی شده میباشد • از نظر هندسی، تابع معیار پرسپترون برابر با مجموع فواصل نمونههای اشتباه طبقهبندی شده تا مرز تصمیم میباشد • مولفهی jام از Jp(a) معادل است با
بردار جداساز در هر مرحله بصورت زیر بروز خواهدشد • در رابطهی بالا، ykنمونههای اشتباه طبقهبندی شده با a(k) میباشند • بکارگیری واژهی Batch بدین خاطر است که برای بروز کردن بردار وزن در هر مرحله، گروه بزرگی از نمونهها استفاده میشوند (میتوان بردار وزن را برای هر نمونه بتنهایی بروز کرد) • الگوریتم پرسپترون برای هر مسئلهی جداپذیر خطی منجر به ارایهی یک راهحل میشود
5-5-2- همگرایی برای تصحیح برای هر نمونه • جهت سادگی فرضکنید η(k) ثابت است، حالت گام ثابت نام دارد. در این حالت، η باعث مقیاس کردن نمونه میگردد و میتوان آنرا واحد (η= 1) درنظر گرفت • هر نمونهی اشتباه طبقهبندی شده را در حالت چرخشی با yk نشان میدهیم. با این نوع نمایش، قاعدهی گام ثابت جهت بروز کردن بردار وزن بصورت زیر است • در رابطهی بالا، برقرار است • الگوریتم درصورت جداپذیر بودن خطی نمونهها خاتمه مییابد
قضیه 5.1: اگر نمونههای یادگیری جداپذیر خطی باشند آنگاه رشتهی بردار وزن با الگوریتم 4 همگرا خواهدشد • 5-5-3- برخی از تعمیمهای مستقیم • اگر یک گام متغیر η(k) و یک حاشیه b جهت تصحیح بردار وزن بکار رود، آنگاه تصحیح زمانی انجام خواهدشد که at(k)yk≤ b باشد • این روش برای الگوریتم اصلی پرسپترون نیز قابل استفاده است
در روشهای مذکور، اگر b خیلی کوچکتر از η(k)||yk||2 باشد، آنگاه تاثیر تصحیح روی بردار وزن بسیار ناچیز خواهدبود. همچنین، انتخاب η(k) مناسب نیز اثر زیادی روی همگرایی خواهدداشت • الگوریتم وینو (Winnow) تصحیح بردار وزن را برای کلاس 1 و 2 بطور جداگانه انجام داده و مزیت این روش در این است که وابسته به اندازهی نمونههای یادگیری نیست. همچنین، سرعت همگرایی این روش بیشتر است
5-8- روشهای حداقل مجذور خطا • 5-8-1- حداقل مجذور خطا و شبه معکوس • توابع معیار قبلی روی نمونههای اشتباه طبقهبندی شده متمرکز بودند، حالا هدف درنظر گرفتن تمام نمونهها میباشد • اگر دنبال یافتن بردار وزنی بگردیم که atyi=bi باشد، آنگاه یک سری معادلات خطی خواهیم داشت. پارامتر bi یک عدد مثبت دلخواه ثابت است • اگر Y یک ماتریس n×(d+1) باشد که iامین درایهی آن برابر yit است. همچنین، b یک بردار ستونی بصورت b= (b1, …, bn)t است
مسئلهی موجود یافتن یک بردار وزن a از معادلات خطی زیر است • اگر Y غیر تکین باشد، آنگاه معادلهی بالا راهحل مستقیم دارد. ولی اینگونه نبوده و لذا، یک بردار خطا بصورت زیر تعریف میشود • یک راهحل ممکن، کمینه کردن مجذور خطا بصورت زیر است
با استفاده از روش گرادیان، داریم • مزیت رابطهی بالا در این است که ماتریس YtY مربعی بوده و اغلب غیرتکین است • رابطهی 47 را شبهمعکوس ماتریس Yمینامند
5-8-2- ارتباط با FLD • در روش MSE، بردار وزن نهایی به نحوهی انتخاب b وابسته است • با انتخاب b بطور مناسب، روش MSE منجر به پاسخ FLD میشود • دوباره فرض کنید که n نمونهی d بُعدی متعلق به دو کلاس وجود دارند. نمونهی yi از روی xi با افزودن یک 1 به ابتدای آن ساخته میشود و بردار الگوی افزوده نام دارد • تمام بردارهای الگوی ω2 را در 1- جهت نرمالیزه کردن ضرب میکنیم. همچنین، فرض کنید n1 نمونهی اول از کلاس ω1 و n2 تای بعدی از ω2 میباشند • با این فرضیات، ماتریس Y بصورت زیر خواهدبود
در رابطهی قبلی، 1i یک بردار ستونی با ni تا 1 میباشد و Xi نیز یک ماتریس ni×d با برچسب کلاس ωi است • با دوباره نویسی معادلهی 47 بصورت زیر داریم • رابطهی 49 بصورت ماتریسی زیر قابل نمایش است
با حل معادلات قبلی، داریم • در روابط بالا، m بردار میانگین کل نمونهها است • از آنجاییکه، در راستای m1-m2 بازای هر بردار وزنی است. لذا • پارامتر α میتواند هر اسکالری باشد، داریم • بجز یک ضریب مقیاس غیر مهم، رابطهی 54 با جواب FLD یکی است. • باتوجه به وزن آستانه قاعدهی تصمیم بصورت زیر خواهدبود
5-8-4- روش ویدرو-هاف (Widrow-Hoff) • مزیت روش کمینهکردن در ایناستکه: 1) از تکینبودن YtY اجتناب شدهاست، و 2) از کار با ماتریسهای بزرگ نیز دوری کردیم • باتوجه به گرادیان تابع معیار بالا، ، یک قاعدهی واضح بروز کردن • روش شیب نزولی همواره به یک جواب صرفنظر از وضعیت تکین YtY منجر خواهدشد • روش ویدرو-هاف یا LMS (حداقل میانگین مجذور خطا) بصورت زیر است • یک نکتهی لازم جهت همگرایی، تنظیم نرخ یادگیری بصورت است
5-11- ماشین بردار پشتیبان (SVM) • ماشین بردار پشتیبان (SVM) عملی مشابه ماشین خطی با حاشیه را انجام میدهد، ولی متکیبر پیشپردازش داده در یک فضای بالاتر بطور معمول بیشتر از فضای اصلی ویژگی • با یک نگاشت غیرخطی توسط φ()، دادهی دوکلاسه همواره میتواند با یک ابرصفحه در فضای با بُعد بیشتر جدا شود • فرض هر بردار ویژگی ورودی xk به yk=φ(xk) تبدیل شدهاست • برای n الگوی ورودی، zk=±1 میباشد که مقدار آن برابر 1+ بوده اگر k متعلق به ω1 باشد وگرنه در صورت تعلق به ω2 برابر 1- است • یک تابع تمایز خطی، یک فضای افزودهی y بصورت زیر است • درفضای افزوده (افزودن w0به بردار وزن و افزودن 1 به y)، یک ابرصفحهی جداکننده بصورت زیر است
هدف آموزش یک SVM یافتن ابرصفحهای با بیشترین حاشیه و تعمیم بهتر از طبقهبند میباشد • فاصلهی هر ابرصفحه تا الگوی y برابر است با |g(y)|/||a|| و با فرض وجود یک حاشیهی مثبت b داریم • هدف یافتن بردار وزن بنحوی است که b را بیشینه کند • بردارهای پشتیبان (SV) در واقع الگوهای یادگیری هستند که منجر به حالت تساوی در معادلهی 105 میشوند. بعبارتی دیگر، بردارهای پشتیبان نزدیکترین الگوهای یادگیری به ابرصفحهی جداساز با فاصلهی یکسان از آن میباشند • بردارهای پشتیبان معرف ابرصفحهی جداساز بهینه بوده و سختترین الگوها برای طبقهبندی هستند • اگر تعداد بردارهای پشتیبان Ns باشد، آنگاه نرخ خطا برای n الگوی آموزش محدود است
5-11-1- آموزش SVM • در ابتدا، انتخاب تابع غیرخطی نگاشت مهم است. این تابع میتواند چندجملهای، گوسین، و یا هر تابع پایهی دیگری باشد
با استفاده از ضرایب لاگرانژ میتوان یک مسئلهی مقید را به یک مسئلهی بهینهسازی غیر مقید تبدیل کرد. از معادلهی 106 و هدف کمینهکردن ||a|| داریم • ضرایب لاگرانژ میبایست در αk≥ 0 صدق کنند. با ساختار KKT میتوان معادلهی بالا را به معادلهی زیر تبدیل کرد • معادلات بهینهسازی بالا را میتوان با برنامهنویسی تربیعی حل نمود • یک مزیت مهم SVM دراین است که پیچیدگی طبقهبند حاصل به تعداد بردارهای پشتیبان محدود شده و مستقل از ابعاد فضای نگاشت میباشد
هدف بیشینه کردن معادلهی 109 است • این معادله باتوجه به قیود معادلهی 110 بهینه خواهدشد • 5-12- تعمیم برای چندکلاسه • 5-12-1- ساختار کِسلر • ماشین خطی چندکلاسه با c تابع تمایز خطی بصورت زیر بود • میتوان معادلهی بالا را بصورت زیر نیز نمایش داد • شرط تعلق یک الگو به کلاس iام
فرض کنید که n نمونه بصورت y1, …, yn وجود دارند و هر کلاس شامل ni نمونه است • این مجموعهی c کلاسه را جداپذیر گوییم هرگاه یک ماشین خطی وجود داشته باشد که همهی آنها را به درستی طبقهبندی کند • اگر این نمونهها بطور خطی جداپذیر باشند آنگاه مجموعهای از بردارهای وزن بصورت زیر بازای تمام i ≠ j وجود دارد • فرض کنید که y متعلق به کلاس ω1 باشد، آنگاه معادلهی بالا بصورت زیر خواهدشد • بعبارتی دیگر، تنها c -1 نامساوی جهت بدست آوردن بردار وزن زیر لازم است
بردار وزن حاصل بطور صحیح c -1 مجموعهی زیر را طبقهبندی خواهدکرد • در نمایش بالا، هر مجموعهی η1j مبین الگوهای نرمالیزهی کلاس ω1 برحسب ωj است • بطور کلی، اگر باشد، آنگاه نمونههای یادگیری بُعدی ηij تشکیل میشوند که هر ηij به c زیر بردار قسمت میشود. در هر ηij سطر iام برابر y و jام برابر –y است • بوضوح اگر باشد، آنگاه ماشین خطی بدرستی نمونهها را طبقهبندی میکند • این طبقهبند، ساختار کِسلِر نام دارد که ابعاد داده را در c و تعداد نمونهها را در c -1 ضرب میکند • یکیاز مزایای ساختار کسلر تبدیل روشهای تصحیح خطای چندکلاسه به مسئلهی دوکلاسه جهت تحلیل همگرایی میباشد
5-12-2- قاعدهی گام ثابت • برای n نمونهی جداپذیرخطی، L(k) بیانگر ماشین خطی خواهدبود که بردارهای وزن آن بصورت a1(k), …, ac(k) هستند • فرض در ابتدا L1 وجود داشته باشد و yk برابر kامین نمونه باشد که به تصحیح وزن نیاز دارد. چون yk به اصلاح وزن نیاز دارد، پس حداقل یک j≠i وجود دارد که • آنگاه قاعدهی گام ثابت جهت تصحیح Lk بصورت زیر خواهدبود • یعنی بردار وزن کلاس مربوطه باندازهی الگو زیاد شده و بردار وزن کلاس اشتباه نیز باندازهی الگو کم میشود و مابقی بردارهای وزن تغییری نمیکنند • طبق ساختار کسلر نیز بردار وزن برای هر ماشین خطی Lk بصورت زیر است
برای هر نمونهی متعلق به کلاس iام، c -1 نمونه بصورت ηij وجود دارند طوری که الگوی yk از رابطهی زیر پیروی میکند • آنگاه قاعدهی گام ثابت برای تصحیح Lk بصورت همین قاعده برای تصحیح αk است