Presentation is loading. Please wait.

Presentation is loading. Please wait.

یادگیری بر پایه نمونه Instance Based Learning Instructor : Saeed Shiry

Similar presentations


Presentation on theme: "یادگیری بر پایه نمونه Instance Based Learning Instructor : Saeed Shiry"— Presentation transcript:

1 یادگیری بر پایه نمونه Instance Based Learning Instructor : Saeed Shiry
With little change by: Keyvanrad & Mitchell Ch. 8 (2)

2 مقدمه در روشهائی که تاکنون بررسی کردیم، سعی بر این بود که با استفاده از مثالهای آموزشی تابعی پیدا کنیم که بتواند توصیف کننده داده ها باشد. در روش یادگیری IBL بسادگی فقط مثالها را ذخیره میکنیم و هرگونه تعمیم تا مشاهده مثال جدید به تعویق میافتد. به همین دلیل این روش گاهی روش تنبل یا lazy هم نامیده میشود. با مشاهده مثالهای جدید رابطه آن با نمونه های ذخیره شده بررسی شده و یک مقدار برای تابع هدف آن نسبت داده میشود. در روش IBL یک فرضیه عمومی مشخص برای داده ها بدست نخواهد آمد بلکه دسته بندی هر نمونه جدید هنگام مشاهده آن و بر اساس نزدیکترین مثالهای ذخیره شده، انجام خواهد شد.

3 Instance-based Learning
Its very similar to a Desktop!!

4 یک تفاوت اساسی روش IBL برای هر نمونه جدید، تقریب جداگانه ای از تابع هدف را ایجاد میکند. این تقریب فقط به همسایگی نمونه جدید قابل اعمال بوده و هرگز نمیتواند بر روی فضای تمام نمونه ها عمل کند. کاربرد این روش هنگامی موثر است که تابع هدف خیلی پیچیده بوده ولی در عین حال قابل نمایش توسط توابع ساده تر محلی باشد.

5 Instance-based Learning
When To Consider IBL Instances map to points Less than 20 attributes per instance Lots of training data Advantages: Training is very fast Learn complex target functions Don't lose information Disadvantages: Slow at query time Easily fooled by irrelevant attributes

6 مشخصه ها این روش دارای 3 مشخصه اصلی است: تابع شباهت:
مشخص میکند که دو نمونه چقدر نزدیک به هم هستند.انتخاب این تابع میتواند بسیار مشکل باشد. مثلا چگونه میتوان شباهت رنگ موی 2 نفر را بیان نمود؟ انتخاب نمونه ها برای ذخیره: در این الگوریتم سعی میشود نمونه هائی ذخیره شوند که عمومی تر باشند. تشخیص اینکه آیا یک نمونه عمومیت دارد یا خیر، میتواند کار مشکلی باشد. تابع دسته بندی کننده: تابعی است که بامشاهده یک مثال دسته بندی آنرا تعیین میکند.

7 مشکلات دسته بندی داده جدید میتواند بسیار پرهزینه باشد. زیرا در مرحله آموزش عملی صورت نمی پذیرد و تمامی محاسبات در هنگام دسته بندی انجام میگردند. از اینرو برای کاهش زمان دسته بندی از تکنیک های ایندکس استفاده میشود. مثل روش درخت باینری در اغلب روشهای IBL برای بازخوانی مثالهای مشابه از تمامی ویژگی های موجود استفاده میشود. بنابراین اگر تابع هدف فقط به برخی از ویژگی ها بستگی داشته باشد، مثالهائی که واقعا مشابه هستند ممکن است بسیار از یکدیگر دور شوند.

8 مثالی از کاربردها Image Scene Classification
برای هر تصویر با استفاده از مقادیر پیکسلهای آن یک signature محاسبه شده و از آن برای مقایسه تصویر ورودی با تصاویر موجود در دیتا بیس استفاده میشود.

9 مثالی از کاربردها image size: 82x100 pixels 5NN is used for prediction
error rate is about 9.5% 5NN performs best among LVQ, CART, NN, … .

10 روشهای مختلف K-Nearest Neighbor (KNN) Locally Weighted Regression
Discrete Target Functions Continuous Target Functions Distance Weighted Locally Weighted Regression Radial Basis Function Networks Case-Based Reasoning General Regression Neural Networks

11 K-Nearest Neighbor Learning (k-NN)

12 فاصله اقلیدسی اگر یک مثال دلخواه را بصورت یک بردار ویژگی نمایش دهیم:
فاصله بین دو مثال xi و xj بصورت زیر تعریف میشود:

13 الگوریتم k-NN برای تابع هدف گسسته
برای یک تابع هدف گسسته بصورت الگوریتم k-NN بصورت زیر است: الگوریتم یادگیری هر مثال آموزشی <x , f(x) >را به لیست training_examples اضافه کنید. الگوریتم دسته بندی: برای نمونه مورد بررسی : xq نزدیک ترین نمونه هائی از training_examples به آنرا با x1 … xk نمایش دهید. مقدار زیر را محاسبه نموده و برگردانید.

14 مثال اگر k=1 انتخاب شود الگوریتم 1-NN مقدار نزدیکترین نمونه به xq را انتخاب خواهد نمود. برای مقادیر بزرگتر k متداولترین مقدار بین k همسایه نزدیک انتخاب خواهد شد. + - Xq در این مثال xq در حالت 1-NN مثبت و برای 5-NN منفی خواهد بود.

15 فضای فرضیه ماهیت فضای فرضیه ضمنی درنظر گرفته شده توسط الگوریتم k-NN چیست؟ اگرچه این الگوریتم هرگز فرضیه عمومی مشخصی ایجاد نمیکند، با این وجود ممکن است سطح تصمیم القا شده توسط الگوریتم برای یک فضای دو بعدی را بصورت ترکیبی از چندوجهی ها نشان داد که هر چند وجهی مجموعه ای از نقاطی را که توسط آن دسته بندی خواهند شد مشخص مینماید. نقاط خارج چندوجهی نقاطی خواهند بود که توسط سایر چندوجهی ها دسته بندی خواهند شد. این نوع نمودار Voronoi diagramخوانده می شوند.

16 Voronoi diagram query point qf nearest neighbor qi مثال 1 مثال 2

17 بایاس استقرا بایاس استقرا الگوریتم k-NN را میتوان بصورت زیر در نظر گرفت: دسته بندی یک نمونه مشابه دسته نمونه های دیگری خواهد بود که در نزدیکی آن قرار دارند

18 الگوریتم k-NN برای تابع هدف پیوسته
الگوریتم k-NN را میتوان بسادگی برای توابع هدف پیوسته نیز استفاده نمود. در این حالت بجای انتخاب متداولترین مقدار موجود در همسایگی، مقدار میانگین k مثال همسایه محاسبه میشود. در نتیجه در خط آخر الگوریتم از رابطه زیر استفاده میشود:

19 k-NN برای تابع هدف پیوسته
1-nearest neighbor 3-nearest neighbor

20 مثال one two three four five six seven Eight ?
More Mondrians. I hope you don’t think that I am trivialising Machine Learning by using the Mondrian example. I chose it because it illustrates very clearly some of the algorithms. I could just as well be talking about: medical diagnosis (link on web page to estimated incidence of failure to progress in labour) other problems (get some examples) The question is is painting 8 a genuine Mondrian. seven Eight ? برخی از این نقاشی ها طبق جدول بعد متعلق به نقاشی به نام Mondrian هستند. مشخص کنید که آیا نقاشی هشتم نیز به وی تعلق دارد؟

21 Training data Test instance OK here is the data.
Now let’s calculate the distance between this example and all the others. Do on the overhead projector using pen. So distance between 8 and 7 is SQRT ( ) = SQRT(27)= 5.2 THINK a moment. DOES this seem sensible to you? Isn’t the calculation being skewed by the large values of the rectangle data relative to the other data? Test instance

22 نرمالیزه کردن داده های آموزشی
یک راه نرمالیزه کردن داده آموزشی ar(x) به a´r(x) عبارت است از The test instance would have to be normalised (using the training data average and standard deviation)

23 Normalised training data
Test instance

24 Distances of test instance from training data
Classification 1-NN Yes 3-NN Yes 5-NN No 7-NN No Here are the distances Before clicking to reveal classification table So what would a 1-nearest neighbour classifier predict for the test instance? What would a 3-nearest neighbour predict?

25 Distance-weighted k-NN
در حالت گسسته: در حالت پیوسته در صورت اعمال وزن این امکان وجود خواهد داشت که به جای k نمونه همسایه از تمامی نمونه ها برای دسته بندی استفاده کنیم. اما این انتخاب باعث کند شدن عمل دسته بندی خواهد شد.

26 نکاتی در مورد الگوریتم k-NN
الگوریتم Distance-weighted k-NN بطور موثری در مسائل عملی مختلفی برای استنتاج استقرائی بکار رفته است. این روش نسبت به نویز مقاوم بوده و در مواردی که داده آموزشی زیادی موجود باشد بسیار کاراست.

27 The curse of dimensionality
از آنجائیکه برای محاسبه فاصله از تمامی ویژگی ها استفاده میشود این امکان وجود دارد که حتی ویژگی های نامرتبط در امر دسته بندی مورد استفاده قرار گیرند. این امر بر خلاف روشهائی مثل درخت تصمیم است که در آن سعی میشد تا فقط از ویژگی های مرتبط استفاده شود. برای مثال فرض کنید که هر نمونه با 20 ویژگی مشخص شوند که از میان آنان فقط 2 ویژگی برای دسته بندی کافی باشند در اینصورت ممکن است نمونه های ذخیره شده ای که در ایندو ویژگی مشابه هستند بسیار از هم فاصله داشته باشند. دراینصورت معیارفاصله مورد استفاده در k-NN میتواند بسیار گمراه کننده باشد. این مسئله curse of dimensionality نامیده میشود.

28 Cross-validation یک راه حل این مشکل استفاده از وزن بیشتربرای ویژگی های مرتبط است. این امر مشابه تغییر مقیاس محور هاست: محور ویژگی های مرتبط کوتاهتر و محور ویژگی های نامرتبط طولانی تر میشوند. برای تعیین وزن ویژگی ها میتوان از روش cross-validation استفاده نمود: مجموعه ای از داده ها به عنوان داده های آموزشی انتخاب میشوند. مقادیر z1,…,zn بعنوان ضرایبی که باید در هر محور ضرب شوند انتخاب میگردند. این انتخاب بنحوی است که خطای دسته بندی درباقیمانده مثالها کاهش یابد. میتوان با قرار دادن zj=0 اثر یک ویژگی را بکلی حذف نمود.

29 Indexing از آنجائیکه در روشK-NN دسته بندی مثالها تا زمان برخورد با آن مثال به تعویق میافتد استفاده از Indexing برای مرتب کردن مثالهای آموزشی میتواند بطور چشمگیری کارائی الگوریتم را افزایش دهد. روش kd-tree(k-dimensional tree) یک روش برای ایندکس کردن است که در آن نمونه ها در سطح یک درخت ذخیره شده و نمونه های نزدیک به هم در همان گره و یا گره های نزدیک به هم ذخیره میشوند.

30 ویژگیهای یادگیری نمونه
مزایا: میتواند توابع پیچیده را مدل کند اطلاعات موجود در مثالهای آموزشی از بین نمیرود میتواند از نمایش سمبلیک نمونه ها استفاده کند (در روش case-based reasoning) معایب: بازده الگوریتم هنگام انجام دسته بندی کم است تعیین یک تابع فاصله مناسب مشکل است ویژگیهای نامرتبط تاثیر منفی در معیار فاصله دارند ممکن است به حافظه بسیار زیادی نیاز داشته باشد

31 لغت نامه استفاده شده در منابع دیگر
: regressionعبارت است از تقریب یک تابع با مقدار حقیقی : Residual عبارت است از مقدار خطای حاصل از تقریب تابع :Kernel Function عبارت است از تابعی که با استفاده از فاصله، مقدار وزنهای مثالهای آموزشی را معین میکند.

32 توابع Kernel معمولا با فاصله رابطه معکوس دارند تا نقاط نزدیکتر وزن بیشتری بگیرند. K(d(xi,xq)) 1/d2 e-d 1/(1+d)

33 توابع Kernel K(d(xq,xi)) = K(d(xq,xi)) = K(d(xq,xi)) = 1/ d(xq,xi)2
1/(d0+d(xq,xi))2 K(d(xq,xi)) = exp(-(d(xq,xi)/0)2)

34 Locally Weighted Regression
الگوریتم LWR تعمیمی بر الگوریتم K-NN است که تقریب صریحی از تابع f حول ناحیه محلی در برگیرنده نمونه مورد بررسی xq بدست می دهد. این تقریب محلی با استفاده از مثالهای نزدیک هم و یا مثالهای distance-weighted انجام می شود. این تابع ممکن است یک تابع خطی، درجه دو و یا یک شبکه عصبی باشد. دلیل نامگذاری: :local از مثالهای نزدیک نمونه مورد بررسی استفاده می کند :Weighted اثر هر مثال آموزشی با درنظر گرفتن فاصله آن منظور می شود :Regression برای تقریب یک تابع با مقدار حقیقی بکار می رود

35 Predicted value using simple regression
f1 (simple regression) Locally-weighted regression f2 Locally-weighted regression f3 Locally-weighted regression f4 Training data Predicted value using simple regression Predicted value using locally weighted (piece-wise) regression

36 Locally Weighted Linear Regression
این روش از یک تابع خطی برای تقریب تابع هدف در نزدیکی مثال مورد بررسی استفاده میکند: این تابع مشابه تابع مورد استفاده در فصل 6 برای محاسبه وزنهای یک پرسپترون است که در آن وزنها طوری انتخاب میشدند که مقدار خطای زیر حداقل گردد: که برای اینکار از قانون آموزش gradient descent استفاده میشد.

37 رابطه محلی؟ قانون دلتا یک پروسیجر تقریب کلی است در حالیکه در روش nearest neighbor به دنبال یک رابطه برای تقریب محلی هستیم. سوال: چگونه میتوان با استفاده از رابطه کلی قانون دلتا رابطه محلی مورد نظر را بدست آوریم؟

38 استفاده از خطای محلی به نظر میرسد که ساده ترین راه، تعریف مجدد رابطه خطاست بنحویکه با مثالهای محلی آموزشی تطبیق نماید. اینکار را به سه روش میتوان انجام داد: -1 استفاده از k مثال همسایگی -2 استفاده از تمامی مثالها با تخصیص یک مقدار وزنی به آنها -3 ترکیبی از روشهای 1 و2

39 قانون تغییر وزنها در انتخابهای فوق E1فاصله را در نظر نمیگیرد

40 انتخاب مقدار k اگر k خیلی کوچک باشد، نسبت به نویز حساس خواهد بود
Large k: less sensitive to noise (particularly class noise) better probability estimates for discrete classes larger training sets allow larger values of k Small k: captures fine structure of space better may be necessary with small training sets Balance between large and small k

41 Radial Basis Functions
روشی برای تقریب توابع است. یادگیری با RBF ارتباط نزدیکی با شبکه های عصبی مصنوعی و Distance-weighted regression دارد. در این روش فرضیه یادگرفته شده بصورت زیر میباشد: در این روش از تعداد k تابع کرنل برای تقریب تابع استفاده میشود .تابع کرنل معمولا بصورت یک تابع گاوسی انتخاب میشود:

42 Radial Basis Functions
نشان داده شده است که در صورتیکه تعداد کافی تابع کرنل گاوسی انتخاب شوند، با استفاده از RBF میتوان هر تابعی را با خطای نسبتا کمی تقریب زد. رابطه فوق را میتوان به یک شبکه عصبی دو لایه تشبیه نمود که لایه اول مقادیر کرنل ها و لایه دوم مجموع آنها را محاسبه مینماید. f(x) W0 w1 wk w2 1 K1 K2 Kk x1 x x xn

43 آموزش RBF در صورت داشتن مجموعه ای از مثالهای آموزشی ، آموزش RBF در دو مرحله صورت میگیرد: تعداد توابع کرنل انتخاب میشود. بعبارت دیگر با انتخاب مقداری برای ,K مقادیر xu , s2u برای هر تابع کرنل تعیین میگردد. وزنهای شبکه طوری انتخاب میشوند که شبکه با داده های آموزشی منطبق گردد. اینکار با استفاده از رابطه خطای کلی زیر انجام میشود

44 نحوه انتخاب تعداد واحدهای مخفی
نحوه انتخاب تعداد واحدهای مخفی بازا هر مثال آموزشی<xi,f(xi)> یک کرنل گاوسی تخصیص داده میشود. این تابع به مرکزیت xi بوده و برای تمامی آنها مقدار یکسان s2 در نظر گرفته میشود. شبکه RBF طوری آموزش داده میشود که بتواند تقریبی کلی برای تابع هدف پیدا کند. توجه شود که هر مثال آموزشی فقط میتواند در همسایگی xi تابع تقریب زده شده را تحت تاثیر قرار دهد. وزنها طوری محاسبه میشوند که بازا هر مثال آموزشی<xi,f(xi)> درخروجی شبکه رابطه برقرار باشد. بدین ترتیب شبکه RBF بطور کامل با مثالهای آموزشی انطباق خواهد داشت.

45 نحوه انتخاب تعداد واحدهای مخفی
نحوه انتخاب تعداد واحدهای مخفی در این روش تعداد تابع کرنل انتخاب شده کمتر از تعداد مثالهاست. این روش بازدهی بیشتری از روش قبلی دارد. مرکز کرنل ها را میتوان بصورت یکنواخت انتخاب نمود. در حالتیکه توزیع نمونه ها غیر یکنواخت باشند میتوان توزیع کرنل ها را هم بصورت مشابهی انتخاب نمود. یک راه دیگر کلاسترینگ نمونه ها و تخصیص یک کرنل به هر کلاستر است. K1 K2

46 ویژگی های شبکه RBF آموزش این شبکه ها آسانتر از شبکه های عصبی معمولی است که از روش Back Propagation استفاده میکنند. این شبکه یک تقریب کلی از تابع را با استفاده از مجموع تقریبات محلی محاسبه میکند.

47 Case Based Reasoning

48 Case Based Reasoning سه خاصیت اصلی سیستم های یادگیری بر پایه نمونه:
سه خاصیت اصلی سیستم های یادگیری بر پایه نمونه: روشهای یادگیری تنبلی هستند که عمل تعمیم تا مشاهده نمونه جدید به تعویق میافتد برای دسته بندی نمونه جدید ازمثالهای مشابه استفاده میشود نمونه ها توسط نقاطی با مقادیر حقیقی در فضای n بعدی نشان داده میشوند روش یادگیریCBR ازدو ویژگی اول تبعیت میکند در حالی که برای نمایش نمونه ها از روش سمبلیک استفاده مینماید. به همین دلیل بدست آوردن نمونه های مشابه مشکل تر است

49 مسائلی را که به شیوه CBR حل میکنیم
پزشکی: اغلب پزشکان نمونه های قبلی بیماران را بخاطر سپرده و در مواجهه با بیماران جدید از تجربه گذشته سود میبرند. حقوق: قضاوت درکشورهائی مثل امریکا و انگلستان بر اساس اختلافات گذشته و رای هائی که برای آنها صادر شده است انجام میشود. بنگاه مسکن: معمولا قیمت خانه ها بر اساس خانه های مشابهی که اخیرا فروش رفته اند تعیین میگردند.

50 اجزا سیستم CBR Case-base Retrieval of relevant cases
یک دیتا بیس از مثالهای قبلی Retrieval of relevant cases استفاده از ایندکس برای مثالهای موجود در دیتا بیس قابلیت تطبیق با شبیه ترین مثالها بدست آوردن راه حل با استفاده از مثالهای مشابه Adaptation of solution تغییر دادن راه حل بنحویکه اختلاف بین مثال مورد بررسی و نمونه های پیدا شده در دیتا بیس را در نظر بگیرد.

51 CBR Solving Problems Solution Review Retain Database Adapt Retrieve
Similar New Problem

52 مثالی از :CBR تعیین نرخ مسکن
Terraced housing consists of continuous row houses with open spaces at the front and back semi-detached houses have front, rear and any one side open spaces individual detached houses have open spaces on all sides Test instance

53 چگونگی ایجاد قوانین مثالهائی را پیدا میکنیم که تا حد زیادی شبیه هم باشند case 1 and case 2 قانون : R1 اگر تعداد recep-rooms از 2 به 1 تغییر کند قیمت را £5,000 کاهش دهید. case 3 and case 4 قانون : R2 اگر Type از semi به terraced تغییر کند قیمت را £7,000 کاهش دهید.

54 انطباق مثال مورد بررسی را با مثالهای ذخیره شده مقایسه کرده و موارد انطباق را مشخص میکنیم: matches(5,1) = 3 matches(5,2) = 3 matches(5,3) = 2 matches(5,4) = 1 The matching items in case 1 are number of bedrooms number of floors condition The matching items in case 2 are number of reception rooms Suppose for the sake of argument that we have a rule in the rule-base that says (within reason) that the number of reception rooms is more important than the condition. So we would say that case 2 was the best match and estimate the price of property 5 as £25,000 Estimate price of case 5 is £25,000

55 Adaptation قانون 2 معکوس میشود: اعمال قانون معکوس
قانون : R2 اگر Type از semi به terraced تغییر کند قیمت را £7,000 افزایش دهید. اعمال قانون معکوس پیش بینی جدید از قیمت مسکن مورد نظر £32,000 است Adapting may involve adapting rule in the rule-base and then applying them to the closest matching case. Thus we finally suggest that property 5 should fetch £32,000

56 یادگیری بدین ترتیب یک case جدید و یک قیمت جدید تخمین زده شده است.
در این مرحله چیزی به دیتا بیس اضافه نمیشود. اگر در آینده این خانه به قیمت £35,000 فروش برود این مورد به عنوان یک case جدید اضاقه شده و یک قانون جدید هم اضافه میشود اگر از 8 به 7 تغییر کند قیمت را به میزان £3,000 اضافه میشود.


Download ppt "یادگیری بر پایه نمونه Instance Based Learning Instructor : Saeed Shiry"

Similar presentations


Ads by Google