ارزیابی فرضیه ها Instructor : Saeed Shiry مقدمه یک الگوریتم یادگیری با استفاده از داده های آموزشی فرضیه ای را بوجود میآورد
Download
Report
Transcript ارزیابی فرضیه ها Instructor : Saeed Shiry مقدمه یک الگوریتم یادگیری با استفاده از داده های آموزشی فرضیه ای را بوجود میآورد
ارزیابی فرضیه ها
Instructor : Saeed Shiry
مقدمه
یک الگوریتم یادگیری با استفاده از داده های آموزشی فرضیه
ای را بوجود میآورد .قبل از استفاده از این فرضیه ممکن
است که الزم شود تا دقت این فرضیه مورد ارزیابی قرار گیرد.
Hypothesis
Learning
Algorithm
Data
Performance Assessment
اینکار از دو جهت اهمیت دارد:
.1
.2
دقت فرضیه را برای مثالهای نادیده حدس بزنیم.
گاهی اوقات ارزیابی فرضیه جزئی از الگوریتم یادگیری است :مثل حرس
کردن درخت تصمیم.
روشهای آماری
.1
.2
.3
در این فصل سعی میشود تا روشهای آماری مناسب برای حدس
زدن دقت فرضیه ها معرفی گردند .مبنای کار در جهت پاسخگوئی
به سه سوال زیر است:
اگر دقت یک فرضیه برای داده های محدودی معلوم باشد دقت آن
برای سایر مثالها چه قدر خواهد بود؟
اگر یک فرضیه برای داده های محدودی بهتر از فرضیه دیگری
عمل کند احتمال اینکه این وضعیت در حالت کلی نیز صادق باشد
چقدر است؟
وقتی که داده آموزشی اندکی موجود باشد بهترین راه برای اینکه
هم فرضیه را یاد بگیریم و هم دقت آنرا اندازه گیری کنیم چیست؟
کمی داده های آموزشی
وقتی که داده آموزشی محدود باشد این امکان وجود دارد که
این مثالها نشان دهنده توزیع کلی داده ها نباشند
مشکل کمی داده
وقتی که یادگیری با استفاده از داده های محدودی انجام میشود دو
مشکل ممکن است رخ دهند:
Bias in the estimate .1
دقت یک فرضیه بر روی مثالهای آموزشی تخمین مناسبی برای دقت آن
برای مثالهای نادیده نیست .زیرا فرضیه یاد گرفته شده بر اساس این
داده ها برای مثالهای آتی بصورت optimisticعمل خواهد نمود .
برای رهائی از این امر میتوان از مجموعه داده ها ی تست استفاده
کرد.
Variance in the estimate .2
حتی با وجود استفاده از مجموعه تست این امکان وجود دارد که خطای
اندازه گیری شده با خطای واقعی اختالف داشته باشد
Bias and Variance in the Estimate
Estimated
Accuracy
Variance
accuracy
True accuracy
Bias
sample size
تخمین دقت فرضیه
در یک مثال یادگیری میتوان برای فضای مثالهای ورودی یک تابع
توزیع احتمال نامعلوم Dدر نظر گرفت که احتمال رخداد هر نمونه
xرا با ) p(xمشخص مینماید .
)p(X
Input Space X
در اینصورت با دو سوال زیر مواجه هستیم:
.1
.2
اگر فرضیه hو تعداد nنمونه داشته باشیم که بصورت تصادفی از مثالهائی با توزیع D
انتخاب شده باشند ،بهترین تخمین برای دقت hبرای مثالهائی با همان توزیع چیست؟
خطای احتمالی در این تخمین دقت چقدر است؟
خطای نمونه و خطای واقعی
خطای نمونه
عبارت است از خطای فرضیه روی مجموعه مثالهای موجود
)آموزشی و یا تست (
خطای نمونه فرضیه hنسبت به تابع هدف fو داده نمونه
sبصورت زیر بیان میشود:
))errors(h)= 1/n xS(f(x),h(x
که در ان nتعداد مثالهای sومقدار )) (f(x),h(xبرابر با 1
است اگر) f(x) h(xو در غیر اینصورت برابر با 0است.
خطای نمونه و خطای واقعی
خطای واقعی
عبارت است از خطای فرضیه روی مجموعه تمام مثالهای
با توزیع نامعلوم Dو برابر است با احتمال اینکه یک
نمونه تصادفی به غلط دسته بندی شود.
خطای واقعی فرضیه hنسبت به تابع هدف fو داده با
توزیع Dبصورت زیر بیان میشود:
])errorD(h)= PrxD[f(x) h(x
آنچه که در دست داریم خطای نمونه است در حالیکه آنچه که به دنبال آن هستیم خطای واقعی است .
در اینصورت باید به این سوال پاسخ دهیم که خطای نمونه تا چه حد ی میتواند تخمین خوبی برای
خطای واقعی باشد؟
مثال
یک مجموعه داده 6تائی با توزیع احتمال زیر وجود دارد:
P(X1) = 0.2 P(X4) = 0.1
P(X2) = 0.1 P(X5) = 0.2
P(X3) = 0.3 P(X6) = 0.1
فرضیه hبرای مجموعه نمونه} {X1, X2, X3, X4میتواند X1, X2, X3را بدرستی
دسته بندی کند ولی قادربه دسته بندی صحیح X4نیست .دراین صورت خطای نمونه
برابر است با:
¼ (0 + 0 + 0 + 1) = ¼ = 0.25
اگر این فرضیه برای X6صحیح و برای X5نادرست باشد در اینصورت خطای واقعی برابر
است با:
0.2(0) + 0.1(0) + 0.3(0) + 0.1(1) + 0.2(1) + 0.1(0) = 0.3
فاصله اطمینان برای فرضیه های با مقادیر
گسسته
اگرشرایط زیر برقرار باشند:
نمونه Sدارای nمثال باشد که مستقل از یکدیگر و مستقل از hبرپایه
توزیع احتمال Dانتخاب شده باشند و
5
فرضیه hمنجر به rخطا برروی این مثالها گردد
nباشد و
errorS(h)=r/n
تحت این شرایط میتوان بر پایه قضایای آماری ادعا نمود که
.1اگر اطالعات بیشتری موجود نباشد ،محتملترین مقدار برای )errorD(hبرابر با )errorS(hخواهد
بود
.2با احتمال 95%خطای واقعی بین فاصله زیر قرار داردerror s h1 error s h :
h
1
.
96
error
n
s
مثال
فرض کنید که sدارای n=40مثال بوده و فرضیه hمنجر
به r=12خطا بر روی این داده شود .در اینصورت:
خطای نمونه برابر است با errorS(h)=12/40=.30
اگر این آزمایش را بارها و بارها برای 40نمونه جدید تکرار
کنیم متوجه خواهیم شد که در 95%مواقع خطای محاسبه شده
در فاصله زیر قرار خواهد داشت:
0.30 1.96 .07 0.30 .14
فاصله اطمینان برای فرضیه های با مقادیر
گسسته
عبارت فوق را میتوان بجای فاصله اطمینان 95%برای هر فاصله
دیگری نظیر N%نیز ذکر نمود:
error h1 error h
h
error
Z
n
مقدار ثابت ZNبرای درصدهای مختلف را میتوان از جدول زیر بدست
آورد:
این تقریب زمانی بهترین نتیجه را دارد که:
n errorS(h)(1 - errorS(h)) 5
s
s
N
s
مقدمه ای بر تئوری نمونه برداری
مروری بر بحثهای زیر
میانگین
واریانس
توزیع دوجمله ای
توزیع نرمال
فواصل یک طرفه و دو طرفه
تخمین خطا
سوال :تاثیر اندازه داده های نمونه بر اختالف بین خطای نمونه و خطای
واقعی چیست؟
در واقع پاسخ این سوال را متخصصین آمار داده اند!
میتوان اندازه گیری خطای نمونه را به آزمایشی با نتیجه تصادفی تشبیه
کرد .اگر به دفعات nنمونه با توزیع احتمال Dبصورت تصادفی
انتخاب و خطای نمونه برای هر کدام اندازه گیری شود ،بعلت متفاوت
بودن نمونه ها مقدار خطا نیز متفاوت خواهد بود .نتیجه حاصل از هر
آزمایش یک متغیر تصادفی خواهد بود.
چنین آزمایشی را میتوان با استفاده از توزیع دو جمله ای توصیف نمود.
توزیع دوجمله ای
.1
.2
.3
.4
توزیع دو جمله ای برای آزمایشاتی استفاده میشود که دارای
خواص زیر باشند:
آزمایش به تعداد nدفعه تکرار شود n ،مقداری ثابت و
ازقبل دانسته است.
هر آزمایش دارای دو نتیجه درست و یا غلط باشد.
آزمایشات مستقل از همدیگر باشند ،به نحویکه نتیجه یک
آزمایش تاثیری بر سایر آزمایشات نداشته باشد.
احتمال وقوع نتیجه درست برای تمام آزمایشات ثابت باشد.
مثال
در پرتاب یک سکه به تعداد 8دفعه:
n=8
آزمایش دارای دو نتیجه شیر یا خط است
نتیجه هر پرتاب سکه مستقل از پرتاب های قبلی است
احتمال آمدن شیر برای هر پرتاب p=1/2است
احتمال دوجمله ای
احتمال وقوع rموفقیت در Nبار تکرار یک آزمایش از
رابطه زیر محاسبه میشود:
1 p
N r
r
!N
Pr
p
!r!N r
که در آن pاحتمال وقوع موفقیت در هر بار تکرار آزمایش
است .
توزیع دوجمله ای برای
n=40, p=.3
40
30
20
10
0
مثال
احتمال آمدن 6خط در 8بار پرتاب یک سکه چقدر است؟
p .5
.055
1.5
8 6
!8
6
P6
6!8 6!.5
خطای نمونه برداری
این خطا را میتوان با پرتاب سکه مقایسه نمود:
پرتاب سکه و دیدن یک خط
انتخاب یک نمونه از Dو تعیین اینکه آیا hآنرا غلط ارزیابی میکند یا
نه
احتمال اینکه در یک پرتاب واحد یک خط داشته باشیم
احتمال اینکه یک نمونه غلط ارزیابی شود
دیدن تعداد rخط در Nبار پرتاب سکه
تعداد ارزیابی های غلط از بین Nنمونه انتخاب شده
میانگین
مقدارمیانگین ) و یا (Expected Valueیک متغیر
تصادفی Yکه ممکن است مقادیر y1,...,ynرا داشته باشد
عبارت است از:
)E[Y] = i=1n yi Pr(Y=yi
برای یک متغیر تصادفی با توزیع دوجمله ای این مقدار برابر
است با:
E[Y] = np
واریانس
واریانس گستردگی توزیع احتمال و فاصله متغیر تصادفی از
مقدار میانگین را مشخص میکند .واریانس یک متغیر تصادفی
Yعبارت است از:
]Var[Y] = E[(Y-E[Y])2
ریشه دوم واریانس انحراف معیار نامیده میشود.
برای یک متغیر تصادفی با توزیع دوجمله ای این مقادیر
برابراند با:
) np(1 p
Y
)Var[Y ] np(1 p
بایاس تخمین
اگر rتعداد خطا ی فرضیه برای نمونه ای با اندازه nباشد در
اینصورت:
errorS(h) = r/n and errorD(h) = p
که pاحتمال دسته بندی غلط یک نمونه انتخاب شده از Dاست
متخصصین آمار )errorS(hرا یک تخمین زننده
)(estimatorمینامند.
اختالف بین مقدار تخمین زده شده و مقدار واقعی بایاس
E[Y] – p
تخمین نامیده میشود
اگر مقدار بایاس صفر باشد ،تخمین زننده بدون بایاس نامیده میشود.
انحراف معیار خطای نمونه
اگر در یک نمونه nعضوی تعداد rخطا داشته باشیم،
انحراف معیار خطای نمونه برابر است با
)p(1 p
n
r
n
)(h
error
s
این مقدار را میتوان بصورت زیر تقریب زد:
))(h)(1 error S (h
n
S
error
error
)( h
s
فاصله اطمینان
برای یک توزیع دوجمله ای مقدار میانگین برابر با ) errorD(hو
مقدارانحراف معیار برابر است با
))(h)(1 error S (h
n
S
error
error
)( h
s
از اینرو برای بدست آوردن فاصله اطمینان 95%میبایست
فاصله ای حول میانگین پیدا کینم که 95%احتمال را در بر
داشته باشد.
از آنجائیکه برای توزیع دوجمله ای محاسبه این مقدار مشکل
بوده و از طرفی از آنجائیکه برای نمونه های زیاد توزیع
دوجمله ای به توزیع نرمال نزدیک میشود ،میتوان برای
محاسبه فاصله اطمینان از توزیع نرمال بهره گرفت.
تقریب با توزیع نرمال
برای توزیع نرمال با میانگین mو واریانس فاصله
اطمینان N%بصورت زیر است:
m zN
از اینرو تقریب ما بصورت زیر خواهد بود:
error s h1 error s h
h
error s Z N
n
برای بدست آوردن این رابطه دو تقریب زده شده است:
.1
.2
در محاسبه انحراف معیار بجای )errorD(hاز )errors(hاستفاده شده است
توزیع دوجمله ای با توزیع نرمال تقریب زده شده است.
حدود یکطرفه و دوطرفه
فاصله بدست آمده در مثال فوق یک فاصله دوطرفه است .
گاهی الزم میشود که این فاصله بصورت یکطرفه بیان شود:
احتمال اینکه ) errorD(hحداکثر Uباشد چقدر است؟
با توجه به اینکه توزیع نرمال حول میانگین متقارن است،
میتوان یک فاصله اطمینان دوطرفه را به فاصله اطمینان یک
طرفه معادلی با دو برابر اطمینان تبدیل نمود.
100(1-a/2)%
[L
100(1-a)%
100(1-a/2)%
]U
]U
[L
اختالف خطای فرضیه ها
حالتی را در نظر بگیرید که دو فرضیه h1, h2موجود
باشند:
h1بر روی مجموعه s1که شامل n1عضو است تست شده
و h2بر روی مجموعه s2که شامل n2عضو بوده و دارای
همان توزیع است تست گردیده است .
میخواهیم بدانیم اختالف خطای واقعی این دوفرضیه چیست؟
d error Dh1error Dh2
تخمین زننده
برای تخمین مقدار dاز یک تخمین زننده استفاده میکنیم:
d error s1h1error s2h2
نشاد داده میشود که d
میدهد یعنی
تخمینی بایاس نشده از dرا بدست
E d d
انحراف معیار
از آنجائیکه برای مقادیر بزرگ نمونه توزیع احتمال
)errors2(h2و ) errors1(h1تقریبا نرمال است ،لذا
را نیزمیتوان بصورت نرمال در نظر گرفت:
احتمال
توزیع d
h11error s1h1 error s2h21error s2h2
n2
n1
error s1
2
d
به همین ترتیب فاصله اطمینان این تقریب بصورت زیر خواهد
بود.
error s1h11error s1h1 error s2h21error s2h2
n2
n1
d zN
مقایسه الگوریتم های یادگیری
چگونه میتوان عملکرد دو الگوریتم یادگیری مختلف ) مثل
شبکه عصبی و درخت تصمیم ( را مقایسه کرد؟
LA
LB
Type B
Type A
مقایسه الگوریتم های یادگیری
روشهای مختلفی برای اینکار معرفی شده ولی هنوز روشی که
بتواند اتفاق آرا را کسب کند ارائه نگردیده است!
یک روش عبارت است از مقایسه میانگین عملکرد دو
الگوریتم بر روی تمامی مجموعه های آموزشی با اندازه n
که بصورت تصادفی از نمونه با توزیع Dانتخاب میشوند.
بعبارت دیگر میخواهیم مقدار اختالف مورد انتظار درخطای
آندو را تخمین بزنیم.
]))ESD [errorD(LA(S))-errorD(LB(S
مشکل کمی داده
در عمل فقط تعدا کمی داده نمونه برای مقایسه دو الگوریتم
وجود دارد .در چنین حالتی داده موجود به دو مجموعه داده
آموزشی S0ومجموعه داده تست T0تقسیم میشود.از داده
آموزشی برای آموزش هر دو الگوریتم استفاده شده و داده
تست نیز برای ارزیابی هر دو الگوریتم استفاده میشود.
در اینصورت مقدار زیر برای مقایسه دو الگوریتم بکار میرود.
))errorT0(LA(S0))-errorT0(LB(S0
ایراد این کاراینجاست که بجای استفاده از تمامی مجموعه های
موجود در Dفقط خطای موجود در مجموعه آموزشی مورد
استفاده قرار میگیرد.
k-Fold Cross-Validation
:یک راه حل استفاده از الگوریتم زیر است
1. Partition the available data D0 into k disjoint subsets
T1, T2, …, Tk of equal size, where this size is at least 30.
2. For i from 1 to k, do
use Ti for the test set, and the remaining data for
training set Si
•
Si <- {D0 - Ti}
•
hA <- LA(Si)
•
hB <- LB(Si)
•
i <- errorTi(hA)-errorTi(hB)
3. Return the value avg(), where
.
avg() = 1/k i=1k i
فاصله اطمینان
مقدار تقریبی فاصله اطمینان N%برای تخمین
]))ESD0[errorD(LA(S))-errorD(LB(Sعبارت است
از:
)avg()tN,k-1savg(
که در آن tN,k-1مقداری شبیه به ZNبوده و مقادیر آن از
جدول 5-6بدست میآید savg() ،تخمینی از انحراف معیار
مربوط به توزیع ) avg(میباشد:
savg())=1/k(k-1) i=1k (i -avg())2
Paired Test
اگر تست دو فرضیه یادگیری با استفاده ازمجموعه مثالهای
یکسانی انجام شود paired testنامیده میشود.
نتیجه چنین آزمایشاتی معموال منجر به فواصل اطمینان بسته
تری میگردد زیرا اختالف مشاهده شده در خطا مربوط به
اختالف بین فرضیه هاست در حالیکه وقتی فرضیه ها با
استفاده از مجموعه داده های متفاوتی تست میشوند امکان تاثیر
گذاری اختالف بین دو مجموعه داده زیاد میشود.