یادگیری ماشین

روش Holdout در یادگیری ماشین(machine learning)

روش Holdout در یادگیری ماشین(machine learning)

روش Holdout تو یادگیری ماشین چیست؟ اعتبارسنجی متقابل فرآیند ارزیابی چگونگی تعمیم نتایج یک تجزیه و تحلیل آماری به یک مجموعه داده مستقل هست.تو یک پیش‌بینی، معمولاً به یک مدل مجموعه داده‌ای، از داده‌های شناخته شده داده می‌شه که آموزش بر روی آنها اجرا می‌شه (مجموعه داده‌های آموزشی)، و مجموعه داده‌ای از داده‌های ناشناخته (یا داده‌هایی که برای اولین بار دیده شده‌اند) که مدل بر اساس اون آزمایش می‌شه (به نام مجموعه داده اعتبارسنجی یا آزمایش).

هدف اعتبارسنجی متقاطع تعریف مجموعه داده ای برای “آزمایش” مدل تو مرحله آموزش (یعنی مجموعه اعتبارسنجی)، به منظور محدود کردن مشکلاتی مثل بیش برازش، ارائه بینشی در مورد نحوه تعمیم مدل، به یک مجموعه داده مستقل هست.

دو نوع اعتبار متقاطع داریم، اعتبارسنجی متقابل جامع و غیر جامع. روش‌های جامع اعتبارسنجی متقابل، روش‌های اعتبارسنجی متقاطع هستند که همه روش‌های ممکن برای تقسیم نمونه اصلی به یک مجموعه آموزشی و یک مجموعه اعتبارسنجی ( مانند اعتبارسنجی متقاطع Leave-p-out و اعتبار سنجی متقاطع Leave-one-out ) رو یاد می‌گیرن و آزمایش می‌کنن.

روش های غیر جامع اعتبار سنجی متقابل، همه روش های تقسیم نمونه اصلی رو محاسبه نمی کنن. روش‌های اعتبارسنجی متقاطع غیر جامع شامل روش Holdout و اعتبارسنجی متقاطع k-fold هست.

Holdout در machine learning

این «ساده‌ترین نوع اعتبارسنجی متقابل» کلاسیک هست. این روش اغلب به‌عنوان یک نوع «اعتبارسنجی ساده، به جای شکل ساده یا منحط اعتبارسنجی متقابل» طبقه‌بندی می‌شه. در این روش، داده‌های خودمون رو به‌طور تصادفی به دو بخش آموزش (train) و تست (test) /اعتبار (validate) یعنی hold-out تقسیم می‌کنیم. سپس مدل رو بر روی مجموعه داده آموزشی آموزش می‌دیم و مدل رو روی مجموعه داده‌های Test/Validation ارزیابی می‌کنیم.

تکنیک‌های ارزیابی مدل مورد استفاده تو مجموعه داده اعتبارسنجی برای محاسبه خطا به نوع چالشی که ما با اون کار می‌کنیم، مثل MSE که برای چالش رگرسیون استفاده می‌شه، بستگی داره، در حالی که معیارهای مختلف با نرخ طبقه‌بندی اشتباه به یافتن خطا برای مشکلات طبقه‌بندی کمک می‌کنه. به طور معمول مجموعه داده آموزشی بزرگتر از مجموعه داده نگهدارنده ست. نسبت‌های معمولی مورد استفاده برای تقسیم مجموعه داده‌ها شامل 60:40، 80:20 و غیره است. این روش تنها زمانی استفاده می‌شه که ما فقط یک مدل برای ارزیابی داشته باشیم و هیچ پارامتری برای تنظیم وجود نداشته باشه.

holdout

محدودیت این روش این که خطای یافت شده تو مجموعه داده آزمایشی می تونه به شدت به مشاهدات موجود تو مجموعه داده های آموزش (train) و آزمایش(test) بستگی داشته باشه. همچنین اگر مجموعه داده‌های آموزش یا آزمایشی قادر به نمایش داده‌های کاملا واقعی نباشن،یعنی با نمونه های واقعی که قرار است مدل برای آن کار کنه متفاوت باشه نتایج مجموعه‌های آزمایشی رو می‌تونه منحرف کنه.

این روش برای مقایسه چند مدل و تنظیم فراپارامترهای(hyperparameters) اونها موثر نیست. پس باید به شکل دیگه از روش Hold-out استفاده کنیم که شامل تقسیم داده ها نه به دو، بلکه به سه مجموعه جداگانه ست.تو اینجا مجموعه داده آموزشی رو به مجموعه آموزشی و اعتبار سنجی تقسیم کرده بودیم، پس حالا مجموعه داده اصلی رو به مجموعه آموزشی، اعتبار سنجی و تست تقسیم می کنیم.

Hyperparameters

تو یادگیری ماشین، هایپرپارامتر به پارامتری گفته می‌شه که مقدار اون، قبل از آغازِ فرآیند یادگیری، تعیین می‌شه. برخلاف پارامترهای دیگه مدل، که در حین فرآیند یادگیری مشخص می‌شن. تو یادگیری عمیق (deep learning)، هایپرپارامتر‌ها شامل متغیرهایی هستن که برای تنظیم شبکه عصبی استفاده می‌شن، مثل رگولاریزاسیون و نرخ یادگیری (learning rate).
الگوریتم‌های یادگیری مختلف، هایپرپارامتر‌های متفاوتی دارن و الگوریتم‌های ساده‌تر، مانند ordinary least squares، هیچ هایپرپارامتری ندارن.
از اونجایی که تنظیم هایپرپارامتر‌‌‌ها می‌تونن چالش برانگیز باشن، کتابخانه‌هایی مخصوصِ تنظیم هایپرپارامترها وجود داره. به عنوان مثال، Arbiter، کتابخانه‌ای است که برای تنظیم بهینه هایپرپارامتر‌های شبکه‌های عصبی استفاده می‌شه.
hold out

مراحل معمول برای اجرای اعتبارسنجی مدل تو اینجا شامل آموزش مدل یا معمولاً چندین مدل تو مجموعه آموزشی هست. مجموعه اعتبار سنجی که بخشی از مجموعه آموزشی هست، که کنار گذاشته شده، که برای بهینه سازی hyper-parameter مدل ها و ارزیابی مدل استفاده می شه.

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

پس، دقتی که از مجموعه اعتبار سنجی دریافت می کنیم، نهایی در نظر گرفته نمی شه و مجموعه داده های hold-out دیگری که مجموعه داده آزمایشی هست برای ارزیابی مدل انتخابی نهایی استفاده می شه و خطای یافت شده در اینجا به عنوان خطای تعمیم در نظر گرفته می شه.

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

برای مطالعه مقاله ۵ کتابخانه برتر پایتون برای طراحی نمودار بر روی لینک کلیک کنید

کلمات کلیدی: روش Holdout در یادگیری ماشین، روش Holdout،روش Holdout در یادگیری ماشین چیست؟،Holdout در machine learning،Holdout در یادگیری ماشین

امیرحسین باقری

امیرحسین باقری هستم عاشق برنامه نویسی مخصوصا با python و همینطور طراح قالب و متخصص فرانت اند؛ از دانشی که تو این مدت بدست آوردم میشه به HTML, CSS, Bootstrap, Flexbox, SASS, Python, Django, DRF و هوش مصنوعی اشاره کرد.

دیدگاهتان را بنویسید

دکمه بازگشت به بالا