یادگیری ماشین Instructor : Saeed Shiry & Bishop Ch. 1 یادگیری با ناظر    2 در یادگیری با ناظر مجموعه ای از داده های آموزشی بصورت زیر.

Download Report

Transcript یادگیری ماشین Instructor : Saeed Shiry & Bishop Ch. 1 یادگیری با ناظر    2 در یادگیری با ناظر مجموعه ای از داده های آموزشی بصورت زیر.

‫یادگیری ماشین‬
Instructor : Saeed Shiry
&
Bishop Ch. 1
1
‫یادگیری با ناظر‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪2‬‬
‫در یادگیری با ناظر مجموعه ای از داده های آموزشی‬
‫بصورت زیر تهیه میشود‪:‬‬
‫یک زوج ورودی و خروجی را تشکیل‬
‫که در آن‬
‫می دهد‪ Xi .‬بردار ورودی است و ‪ Yi‬خروجی متناظر با آن‬
‫است‪.‬‬
‫است به‬
‫هدف از یادگیری پیدا کردن تابعی مثل‬
‫نحوی که‪:‬‬
‫انواع اصلی مسئله یادگیری با ناظر‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪3‬‬
‫‪Regression‬‬
‫‪classification‬‬
‫رگراسیون‪:‬‬
‫وقتی که تابع هدف بصورت پیوسته باشد مسئله یادگیری یک مسئله‬
‫رگراسیون خواهد بود‪ .‬مثل یادگیری رابطه قیمت و مساحت خانه ها‬
‫دسته بندی )‪: (classification‬‬
‫وقتی که ‪ y‬بتواند تعداد محدودی مقدار گسسته بگیرد مسئله‬
‫یادگیری یک مسئله دسته بندی خواهد بود‪ .‬مثل‪ :‬آیا خانه مورد نظر‬
‫یک آپارتمان است؟‬
‫روشهای مطرح‬



‫سه نوع روش را برای مسئله های رگراسیون و دسته بندی‬
.‫بررسی خواهیم نمود‬
Linear models for regression and
classification.
Multi-layer neural networks.
Support vector machines. Kernel methods.

4
‫مثالی از رگراسیون‬
‫‪‬‬
‫‪5‬‬
‫فرض کنید داده های زیر جمع آوری شده است و می خواهیم‬
‫تابع ‪ f: X Y‬را برا توصیف رابطه ورودی و خروجی‬
‫بیابیم‪.‬‬
‫بایاس کردن سیستم یادگیر‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪6‬‬
‫یادگیری تابع ‪ f‬یک مسئله ‪ ill posed problem‬است زیرا‬
‫توابع زیادی وجود دارند که می توانند به عنوان پاسخ انتخاب‬
‫شوند‪.‬‬
‫در اینجا الزم است که یک فرض در مورد ماهیت تابعی که به‬
‫دنبال آن هستیم انجام دهیم‪ .‬به این کار بایاس کردن سیستم‬
‫یادگیر می گویند‪.‬‬
‫برای مثال می توان این تابع را خطی فرض کرد‪.‬‬
‫باید توجه داشت که هیچ سیستم یادگیری نمی تواند بدون داشتن‬
‫بایاس کار کند‪.‬‬
‫تعیین پارامترهای تابع‬
‫‪‬‬
‫‪7‬‬
‫حتی با تعیین نوع تابع ( تعیین مدل) نیز تعداد زیادی انتخاب‬
‫وجود خواهد داشت‪ .‬در واقع برای یک رابطه خطی ‪f=ax+b‬‬
‫بازای هر مقدار ‪ a,b‬یک خط می توان رسم نمود‪ .‬که باید‬
‫بهترین تابع از بین آنها انتخاب شوند‪.‬‬
‫ایجاد سازگاری بین مدل و داده‬
‫‪‬‬
‫‪‬‬
‫‪8‬‬
‫برای تعیین بهترین پارامترها باید آنها را طوری انتخاب نمود‬
‫که اختالف بین مدل ‪ M‬و داده های ‪ D‬حداقل شوند‪.‬‬
‫برای این کار یک رابطه خطا تعیین میشود و پارامترهائی که‬
‫کمترین خطا را بوجود می آورند به عنون پارامترهای مدل‬
‫انتخاب میشوند‪ .‬رابطه خطا را به روش های گوناگون می توان‬
‫تعریف نمود‪.‬‬
‫مدل های چند جمله ای‬
‫‪‬‬
‫اگر رابطه بین ورودی و خروجی غیر خطی باشد می توان از‬
‫مدلهای مرتبه باالتر استفاده نمود‪.‬‬
‫‪ ‬این مدل رابطه غیر خطی با ‪X‬‬
‫ولی رابطه خطی با ‪ w‬خواهد‬
‫داشت‪.‬‬
‫‪9‬‬
‫تعیین ضرایب مدل چند جمله ای‬
‫‪‬‬
‫در این حالت نیز یک عبارت خطا تعریف شده و برای تعیین‬
‫بهترین پارامترهای مدل از رابطه خطا نسبت به پارامترها‬
‫مشتق گرفته میشود تا ضرایبی که کمترین خطا را تولید میکنند‬
‫‪t = target value‬‬
‫تعیین شوند‪.‬‬
‫‪n‬‬
‫‪Set Equal to Zero‬‬
‫در این حالت تعداد ‪ M+1‬معادله وجود خواهند داشت که با حل آنها به ضرایب پاسخ بهینه‬
‫*‪ w‬دست پیدا خواهیم نمود‪.‬‬
‫‪10‬‬
‫( در نوع پاسخ‬M) ‫تاثیر تعداد جمالت‬
Poor
Representation
Over fit
Best fit
11
‫‪Over fitting‬‬
‫‪‬‬
‫‪12‬‬
‫با افزایش ‪ M‬تابع بکار رفته در مدل پیچیده تر میشود و این‬
‫امکان وجود خواهد داشت که با پیچیده تر شدن مدل‪ ،‬تابع روی‬
‫داده های آموزشی ‪ Over fit‬شده و علیرغم اینکه خطای بین‬
‫داده های آموزشی و تابع بسیار کاهش می یابد تابع نتواند در‬
‫مورد داده های مشاهده نشده عملکرد خوبی داشته باشد‪.‬‬
‫قدرت تعمیم‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪13‬‬
‫یکی از ویژگی های مهم مدل یادگرفته شده قدرت تعمیم آن‬
‫است‪ .‬قابلیت تعمیم مشخص میکند که مدل با چه دقتی می تواند‬
‫داده های جدید را توصیف نماید‪.‬‬
‫برای نشان دادن اینکه آیا مدل یادگرفته شده قادر است داده های‬
‫جدید را هم بخوبی توصیف نماید از مجموعه داده دیگری که‬
‫داده آزمایشی خوانده میشود استفاده میشود‪ .‬این داده ها به مدل‬
‫یادگرفته شده ارائه شده و خطای مدل اندازه گیری میشود‪.‬‬
‫برای اندازه گیری این خطا از معیار زیر که کارائی بهتری‬
‫دارد استفاده میشود‪.‬‬
‫نتایج داده های آزمایشی‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪14‬‬
‫در شکل مقابل خطای حاصل از‬
‫مدل های مختلف برای داده های‬
‫آموزشی و همچنین داده های‬
‫آزمایشی نشان داده شده است‪.‬‬
‫همانطور که مشاهده میشود مدلی که‬
‫کمترین خطای آموزش را داشته‬
‫است دچار ‪ over fitting‬شده و با‬
‫از دست دادن قدرت تعمیم خطای‬
‫ازمایشی زیادی را بوجود آورده‬
‫است‪.‬‬
‫جالب است که توجه شود مدل مرتبه‬
‫‪ 8‬و مرتبه ‪ 3‬عملکرد های تقریبا‬
‫یکسانی دارند‪.‬‬
‫توجه به ضرایب‬
‫‪‬‬
‫‪15‬‬
‫با بررسی دقیق تر پارامترهای مدل می توان به رفتار نوسانی‬
‫آن در هنگام ‪ over fitting‬پی برد‪.‬‬
‫افزایش تعداد داده های آموزشی‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪16‬‬
‫شکل های زیر رفتار سیستم را در مقابل تغییر داده های آموزشی‬
‫نشان می دهد‪.‬‬
‫برای یک مدل با پیچیدگی یکسان با افزایش تعداد داده های‬
‫آموزشی مسئله ‪ over fitting‬کمتر ظاهر می شود‪.‬‬
‫تعداد داده معموال باید ‪ 5‬تا ‪ 10‬برابر تعداد پارامترهای مدل باشد‪.‬‬
‫‪Regularization‬‬
‫‪‬‬
‫برای غلبه بر مشکل ‪ over fitting‬در هنگام استفاده از روش‬
‫کمترین خطا اضافه کردن جمله رگوالسیون به عبارت خطا می‬
‫باشد‪.‬‬
‫‪‬‬
‫همانطور که دیدیم هنگام بروز ‪ over fitting‬ضرایب چند‬
‫جمله ای خیلی بزرگ می شدند‪ .‬حال اگر مدل هائی که دارای‬
‫ضرایب بزرگ هستند به نوعی جریمه شوند سیستم یادگیر از‬
‫انتخاب آنها پرهیز خواهد نمود‪.‬‬
‫جمله جریمه مناسب به عنوان ترم رگوالسیون به عبارت خطا‬
‫اضافه میشود‪ .‬ضریب اهمیت نسبی جمله رکوالسیون را‬
‫مشخص میکند‪.‬‬
‫‪‬‬
‫‪17‬‬
‫تاثیر رگوالسیون‬
‫‪‬‬
‫‪18‬‬
‫شکل و جداول زیر عملکرد مثال قبلی را با مقدار ‪ M=9‬ولی برای مقادیر مختلف‬
‫رگوالسیون نشان میدهد‪.‬‬
‫رگراسیون در ابعاد باال‬
‫‪‬‬
‫‪‬‬
‫‪19‬‬
‫در ابعاد باال بجای خط از ابر صفحه‬
‫‪ Hyperplane‬استفاده میشود‪.‬‬
‫روش تعرف و استفاده از عبارت خطا مشابه‬
‫حالت یک بعدی است‪.‬‬
‫تست الگوریتم ها یادگیری‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪20‬‬
‫مجموعه داده موجود به دو دسته تست و آموزشی تقسیم میشود‪.‬‬
‫بر اساس داده آموزشی مدل یاد گرفته میشود‬
‫سپس با استفاده از داده های آموزشی مدل یادگرفته شده‬
‫ارزیابی میگردد‪.‬‬
‫مراحل طراحی یک سیستم یادگیر‬
‫‪21‬‬