بیش برازش، کم برازش، و مبادله بایاس واریانس مفاهیم اساسی در یادگیری ماشین هستند. آنها مهم هستند زیرا وضعیت یک مدل را بر اساس عملکردشان توضیح می دهند. بهترین راه برای درک این اصطلاحات این است که آنها را به عنوان یک مبادله بین بایاس و واریانس مدل در نظر بگیریم. بیایید پدیده بیش برازش (overfitting) و کم برازش (underfitting) را بیشتر توضیح دهیم:
بیش برازش زمانی اتفاق می افتد که یک مدل آماری یا الگوریتم یادگیری ماشینی نویز داده ها را ضبط کند. به طور شهودی، بیش برازش زمانی اتفاق میافتد که مدل یا الگوریتم به خوبی با دادهها مطابقت داشته باشد. به طور خاص، اگر مدل یا الگوریتم بایاس کم اما واریانس بالا را نشان دهد، بیش برازش اتفاق میافتد. بیش برازش اغلب نتیجه یک مدل بیش از حد پیچیده است و می توان با برازش چندین مدل و استفاده از اعتبارسنجی یا اعتبارسنجی متقابل برای مقایسه دقت پیش بینی آنها در داده های آزمایشی از آن جلوگیری کرد.
کم برازش زمانی اتفاق می افتد که یک مدل آماری یا الگوریتم یادگیری ماشینی نتواند روند اساسی داده ها را ثبت کند. به طور شهودی، کم برازش زمانی اتفاق میافتد که مدل یا الگوریتم به اندازه کافی با دادهها تناسب نداشته باشد. به طور خاص، اگر مدل یا الگوریتم واریانس کم اما بایاس زیاد را نشان دهد، کم برازش رخ میدهد. کم برازش اغلب نتیجه یک مدل بسیار ساده است.
هم بیش برازش و هم کم برازش منجر به پیش بینی ضعیف در مجموعه داده های جدید می شود.
خوب، بیایید بایاس و واریانس را به زبان سادهتر درک کنیم. (اصطلاحات بسیار ساده تر!)
بایاس چیست؟
بایاس تفاوت بین میانگین پیشبینی مدل ما و مقدار صحیحی است که در تلاش برای پیشبینی آن هستیم. یک مدل با بایاس بالا توجه بسیار کمی به داده های آموزشی می کند و مدل را بیش از حد ساده می کند.
تعریف ساده: "خطای ناشی از داده های آموزشی!"
واریانس چیست؟
واریانس تغییرپذیری پیشبینی مدل برای یک نقطه داده یا مقداری است که به ما پراکندگی دادهها را نشان می دهد. یک مدل با واریانس بالا توجه زیادی به داده های آموزشی می کند و به داده هایی که قبلاً ندیده است تعمیم نمی دهد.
تعریف ساده: "خطای حاصل از داده های تست!"
خوب، برای درک بهتر و واضح تر مفاهیم، مفاهیم را به دو بخش بایاس و واریانس در مورد رگرسیون و همچنین مدل های طبقه بندی تقسیم می نماییم.
در نظر گرفتن مدل های رگرسیون:
ما به وضوح میبینیم که Model-1 و Model-3 به ترتیب Underfitting و Overfitting هستند.
مدل-1 روندها را به درستی ثبت نکرده است، یا مدل بسیار ساده است، بنابراین بدیهی است که دقت آموزش و آزمون با مشکل مواجه خواهد شد!
همانطور که قبلاً گفتیم، "Bias خطای ناشی از مجموعه آموزشی است، در حالی که واریانس خطای ناشی از مجموعه تست است!". مدل-1 دقت آموزش و تست کمتری خواهد داشت، یعنی دارای بایاس زیاد (خطای آموزش بالا) و واریانس بالا (خطای تست بالا) است.
به طور مشابه، برای Model-3، این مدل در مورد داده های آموزشی بسیار خوب آموزش دیده است، دلیل آن عدم موفقیت در آزمایش داده ها (دقت تست پایین). از آنجایی که دقت آموزش برای مدل-3 بالا و دقت تست پایین است، مدل-3 دارای بایاس کم (خطای آموزش کم) و واریانس بالا (خطای تست بالا) خواهد بود.
با در نظر گرفتن Model-2، از آنجایی که مدل-2 در وضعیت "درست" قرار دارد، این مدل به ترتیب در آموزش و همچنین یک مجموعه تست به خوبی آموزش دیده است. به همین دلیل، مدل دارای دقت آموزشی بالا (بایاس کم-خطای آموزش کم) و دقت تست بالا (خطای تست کم واریانس کم) است.
حال، بیایید شرایط را برای مدل های طبقه بندی در نظر بگیریم، لطفاً به تصویر توضیح داده شده زیر نگاه کنید!
در اینجا 3 مدل داریم که خطاهای آموزش و تست زیر را دارند.
همانطور که می بینیم طبقه بندی مدل1 ما دارای خطای آموزشی کم (2%)، در حالی که دارای خطای تست بالا (18%) است. همانطور که مفاهیم قبلا توضیح داده شد، میتوان نتیجه گرفت که مدل دارای بایاس کم (خطای آموزش کم) و واریانس بالا (خطای تست بالا) است، یعنی مدل 1 به وضوح بیش برازش دارد
به طور مشابه، ما میتوانیم مدل طبقهبندی 2 خود را بهعنوان یک مدل کاملاً مناسب نتیجه بگیریم. با رسیدن به مدل 3، این مدل به عنوان تعمیمیافتهترین یا توصیهشدهترین مدل برای آموزش در نظر گرفته میشود!
خب این توضیحی بود برای مدل های Underfitting، Overfitting، Bais و Variance for Regression و Classification!.
حالا بیایید نگاهی به نمودار گرافیکی این مفاهیم بیندازیم. لطفا به شکل زیر نگاه کنید!
با توجه به شکل 3، خط نقطه چینی که از نقاط می گذرد، نقاطی هستند که باید مدل خود را برای آنها طراحی کنیم که «تعمیم یافته ترین مدل» خواهد بود.
مرجع:
https://medium.com/analytics-vidhya/elucidating-bias-variance-under-fitting-and-over-fitting-273846621622