roozitalabt
roozitalabt
خواندن ۷ دقیقه·۳ سال پیش

رابطه واریانس و بایاس در یادگیری ماشین

1. بایاس:

خطای کلی مرتبط با "داده های آموزشی" به عنوان بایاس نامیده می شود. هنگامی که خطای داده های آموزشی افزایش می یابد یا دقت داده های آموزشی کاهش می یابد، به آن بایاس بالا و زمانی که خطای داده های آموزشی کاهش می یابد یا دقت داده های آموزشی افزایش می یابد، به آن بایاس کم گفته می شود.

بایاس زیاد: خطای داده آموزشی بالا / دقت کم داده آموزشی.

بایاس کم: خطای کم داده های آموزشی / دقت داده های آموزشی بالا.

2. واریانس:

توجه داشته باشید که واریانس با "داده های تست" مرتبط است در حالی که بایاس با "داده های آموزشی" مرتبط است. خطای کلی مرتبط با داده های آزمایشی واریانس نامیده می شود. هنگامی که خطاهای مرتبط با داده های تست افزایش می یابد، به آن واریانس بالا و بالعکس برای واریانس کم گفته می شود.

واریانس بالا: خطای داده تست بالا / دقت داده تست پایین.

واریانس کم: خطای داده های تست پایین / دقت داده های تست بالا.

مثال دنیای واقعی:

مورد دانش آموزی به نام «شیوام» را در نظر بگیرید که برای آزمون ورودی IIT درس می خواند. شیوام در یک برنامه مربیگری ثبت نام می کند تا به هدف خود یعنی قبولی در یکی از IIT دست یابد. این مربی در دو سال گذشته با شیوام همکاری داشته است. در این مربیگری، شیوام در آزمون های تمرینی متعدد برای سنجش آمادگی خود شرکت خواهد کرد. این "داده های آموزشی" برای شیوام است. در نهایت، پس از دو سال مطالعه، شیوام در آزمون JEE شرکت خواهد کرد که به عنوان "داده های تست" شیوام عمل می کند. زیرا دقت خروجی شیوام را ارزیابی می کند.

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

بیایید اکنون به واریانس نگاهی بیندازیم زیرا مربوط به داده های آزمایشی است. امتحان نهایی JEE به عنوان داده های آزمایشی برای Shivam عمل می کند. شیوام یا عصبی یا با اعتماد به نفس (بسته به آموزش) زمانی که در نهایت پس از 2 سال آمادگی فشرده برای امتحان JEE ظاهر می شود، خواهد بود. گفته می شود که شیوام در آزمون صدک بالایی کسب کرده است. این یک مورد کم واریانس است. از آنجایی که دقت تست بالا و خطای تست کم است. اگر شیوام در آزمون JEE به طور بدی شکست بخورد، واریانس بالایی است.

IAS مبادله واریانس

رابطه بین بایاس، واریانس و خطای مدل در این بخش از مقاله بررسی خواهد شد. در شکل زیر، محور X پیچیدگی الگوریتم یا درجه چند جمله ای را نشان می دهد، در حالی که محور Yخطای ارائه شده توسط مدل را نشان می دهد. هدف اصلی در اینجا کاهش خطا در محور y با متعادل کردن بایاس و واریانس است.

واریانس با منحنی زرد نشان داده می شود و بدیهی است که با افزایش پیچیدگی الگوریتم یا درجه چند جمله ای، واریانس افزایش می یابد و باعث می شود که خطای مدل در محور y به صورت تصاعدی افزایش یابد. با این حال، Bias در منحنی سفید رفتار متفاوتی دارد: با افزایش پیچیدگی الگوریتم در محور x، Bias^2 به صورت تصاعدی کاهش می‌یابد و باعث کاهش خطای مدل در محور y می‌شود.

در اینجا، ما قرار است یک نقطه شیرین / نقطه بهینه را پیدا کنیم که در آن خطا از نظر بایاس و واریانس کم است. خطای کلی نشان داده شده توسط منحنی های زرد و سفید با منحنی قرمز نشان داده می شود. نقطه بهینه در این منحنی قرمز نقطه ای است که کمترین مقدار خطا را دارد. این دقیقا همان چیزی است که ما می خواستیم.

اکنون که در مورد بایاس و تنوع آموخته اید، آماده اید که ادامه دهید. بیایید به چند سناریو نگاهی بیندازیم.

1) واریانس زیاد بایاس بالا:

وقتی دقت داده‌های آموزشی و آزمایشی ضعیف است، یا زمانی که خطای داده‌های آموزش و آزمایش بالا است، «واریانس بالا» به آن اشاره می‌شود. هشدار اصطلاحات!!!! برای توصیف این وضعیت از اصطلاح "کم تناسب" استفاده می شود. وضعیت عدم اتصال در نمودار زیر نشان داده شده است. در نتیجه، تعداد بیشتری از خطاها را با داده‌های آموزشی امکان‌پذیر می‌کند که منجر به یک حالت بایاس بالا می‌شود. این منجر به یک مدل ضعیف می شود که نمی تواند روی داده های آزمایشی جدید عملکرد خوبی داشته باشد و در نتیجه یک سناریوی واریانس بالا ایجاد می شود.

بایاس بالا واریانس بالا:

مثال دنیای واقعی

بیایید یک بار دیگر از Shivamبه عنوان مثال استفاده کنیم. فرض کنید شیوام همیشه با HC Verma، OP Tondon و R.D. Sharma مبارزه کرده است. او در تمام امتحانات تمرینی آموزشی در مربیگری و سپس در آزمون JEEنیز ضعیف عمل کرد. از آنجایی که هم دقت آموزش و هم دقت تست در این شرایط ضعیف است، به عنوان یک موقعیت بایاس بالا و واریانس بالا در نظر گرفته می شود. (مادرش می خواهد او را تا سر حد مرگ بزند... و او به خوبی از این موضوع آگاه است. پسر بیچاره!!!)

با کد درک کنید

برای درک این ایده، از الگوریتم K-Nearest Neighbor (KNN) در این بخش استفاده خواهیم کرد. می دانیم که K فراپارامتری است که باید تنظیم شود.

قبل از شروع، چیزی وجود دارد که باید درک کنید: -

هنگامی که مقدار k بزرگ است، گفته می شود که شرایط کمتر از حد مناسب است. در نتیجه، مدل دقت ضعیفی در داده های آموزشی ارائه می دهد.

کم بایاس واریانس بالا:

زمانی که دقت داده‌های آموزشی بالا و دقت داده‌های تست ضعیف باشد، به شرایط بایاس کم و واریانس بالا گفته می‌شود. هشدار: اصطلاحات!!! برای توصیف این وضعیت، از کلمه “overfitting” استفاده می شود.

سناریوی overfitting در نمودار زیر نشان داده شده است. در این سناریو، مدل تمام اطلاعات مربوط به داده‌های آموزشی، از جمله نویز غیرضروری را جمع‌آوری می‌کند که منجر به دقت مدل بالا برای داده‌های آموزشی، اما شکست برای داده‌های آزمایش جدید می‌شود.

کم بایاس واریانس بالا

https://images.app.goo.gl/Xeh81rAQGtCPkRve8

مثال دنیای واقعی

شیوام یک بار دیگر ظاهر می شود تا چیزها را برای شما توضیح دهد. این مورد زمانی است که شیوام در تمام امتحانات تمرینی در مربیگری خوب عمل کرده بود اما به دلیل اعصاب یا عوامل دیگر در آزمون JEE عملکرد بدی داشته است.

با کد درک کنید

هنگامی که k کم باشد، به عنوان یک شرایط بیش از حد برازش در نظر گرفته می شود، به این معنی که الگوریتم تمام اطلاعات مربوط به داده های آموزشی، از جمله نویز را دریافت می کند. در نتیجه، مدل با داده های آموزشی بسیار خوب عمل می کند اما با داده های آزمایشی ضعیف است. در این مثال از k=1 (overfitting) برای طبقه بندی متغیر admit استفاده می کنیم.

کد زیر دقت مدل را برای داده های آموزشی با (k = 1) ارزیابی می کند. ما می‌توانیم ببینیم که این مدل نه تنها الگو را در تمرین، بلکه نویز را نیز به تصویر می‌کشد. در این مورد دقت آن بیش از 99 درصد است. -> بایاس کم

با کد درک کنید

بنابراین، ما ارزیابی دقت داده های آموزشی را به پایان رسانده ایم. بیایید به دنبال داده های آزمایشی بگردیم. از کد زیر مشخص است که مدل نتوانسته دقت خوبی ارائه دهد. این تنها دقت 65% را برای داده های تست ارائه می دهد. ——> واریانس بالا.

این تنها دقت 65% را برای داده های تست ارائه می دهد

3) واریانس کم بایاس کم:

این بهترین سناریو است. دقت آموزش و تست در اینجا بالاست. این به عنوان داشتن بایاس کم و واریانس کم شناخته می شود. این دقیقاً همان وضعیتی است که ما می خواهیم. با آموزش مدل با تنظیم هایپرپارامتر قادر به دستیابی به این مورد خواهیم بود.

شکل زیر وضعیت واریانس کم بایاس کم را نشان می دهد. این مدل نویز موجود در داده‌های آموزشی را ضبط نمی‌کند و برای داده‌های آموزشی و آزمایشی با دقت مناسبی عملکرد قابل‌تحسین‌آوری خواهد داشت.

کم بایاس واریانس کم

https://images.app.goo.gl/Xeh81rAQGtCPkRve8

مثال دنیای واقعی

فرض کنید، شیوام در تمام امتحانات تمرینی مربیگری عالی بود، و زمانی که در نهایت در JEE شرکت کرد، صدک خوبی دریافت کرد و در IIT رویایی خود پذیرفته شد (اکنون مادرش خوشحال است و او می تواند غذای مورد علاقه خود را بخورد. امشب :)).

با کد درک کنید

با تنظیم هایپرپارامترها، باید بتوانیم بهترین مقدار را برای k پیدا کنیم. بیایید به مقدار kصحیح برای داده های آموزشی نگاه کنیم. کد زیر دقت مدل را برای مقادیر مختلف k نشان می دهد. برای k=8، بالاترین دقت را ارائه می دهد. یعنی «74.33 درصد». بنابراین ما به این مقدار kپایبند خواهیم بود.

دقت

مطابق کد زیر، دقت مدل برای آموزش داده‌های با k=8 73.66 درصد است.

k=8 73.66 درصد است

دقت مدل برای آزمایش داده ها با k=8 72 درصد است. در این مورد با داده های آموزشی و آزمایشی به خوبی کار می کند. شرایط Overfitting و underfitting در این مورد وجود ندارد.

k=8 72% است

امیدوارم این مقاله به شما در درک بهتر مفهوم کمک کرده باشد. ما در مورد بایاس و واریانس و موارد مختلف مرتبط با آنها، مانند کم بایاس low v، یاد گرفتیم

یادگیری ماشینواریانسبایاس
شاید از این پست‌ها خوشتان بیاید