اصطلاحات یادگیری ماشین مهم که باید بدانید – ۴۰ اصطلاح کاربردی به زبان ساده – فرادرس

اصطلاحات یادگیری ماشین مهم که باید بدانید – ۴۰ اصطلاح کاربردی به زبان ساده – فرادرس

[ad_1]

«یادگیری ماشین» (Machine Learning) یکی از زیرشاخه‌های مهم «هوش مصنوعی» (Artificial Intelligence | AI) است که در کاربردهای فراوانی مورد استفاده قرار می‌گیرد. از طرفی دیگر، به‌دلیل حجم زیاد مطالب و داده‌های موجود، ممکن است دچار سردرگمی شده و در ادامه نتوانیم آموزش‌های مورد نظر را دنبال کنیم. در این مطلب از مجله فرادرس، به شرح و توضیح اصطلاحات یادگیری ماشین مهم که باید بدانید می‌پردازیم.

فهرست مطالب این نوشته

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

تعریف ما از هوش مصنوعی چیست؟

«هوش مصنوعی» (Artificial Intelligence | AI) زیرشاخه‌ای از علوم کامپیوتر، با هدف ساخت ماشین‌های هوشمند و مقلد مهارت‌های انسان است. مهارت‌هایی همچون دانش، استدلال، حل مسئله، ادراک، یادگیری، برنامه‌ریزی و مهارت تغییر و جابه‌جایی در موقعیت اشیاء که انسان را منحصربه‌فرد می‌سازند. به‌طور خلاصه، هدف هوش مصنوعی ساخت ماشین‌های هوشمندی است که مانند انسان رفتار و واکنش نشان دهند.

اصطلاحات کاربردی یادگیری ماشین

«یادگیری ماشین» (Machine Learning) بخشی مهم از هوش مصنوعی است و سیستم‌های مختلف را قادر می‌سازد تا به‌طور خودکار یاد گرفته و بدون آن‌که توسط انسان برنامه‌نویسی شده باشند و تنها از طریق تجربه، مهارت‌های خود را بهبود بخشند. فرایند یادگیری برای ماشین‌های هوشمند با مشاهده آغاز می‌شود. ماشین‌های هوشمند ابتدا مواردی همچون مثال‌های پیشین، تجربیات و دستورالعمل‌ها را مشاهده کرده و پس از کشف الگوهای موجود در داده‌ها، تصمیمات بهتری اتخاذ می‌کنند. یادگیری خودکار کامپیوترها بدون دخالت یا کمک انسان و سپس تطبیق پیدا کردن با محیط، هدف نهایی یادگیری ماشین است.

در ادامه این مطلب، چند نمونه مهم و کاربردی از اصطلاحات یادگیری ماشین را بررسی می‌کنیم.

۱. یادگیری نظارت شده

«یادگیری نظارت شده» (Supervised Learning) از اصطلاحات مهم و یکی از مجموعه روش‌های یادگیری ماشین است. وظیفه اصلی یادگیری نظارت شده، فراگرفتن تابعی است که یک ورودی را بر اساس جفت ورودی-خروجی‌های پیشین به یک خروجی نسبت می‌دهد. الگوریتم یادگیری نظارت شده، مجموعه آموزشی شامل نمونه‌های پیشین را بررسی کرده و تابعی پیش‌بینی‌کننده را نتیجه می‌دهد؛ تابعی که می‌تواند برای پیش‌بینی خروجی نمونه‌های جدید مورد استفاده قرار بگیرد. در یادگیری نظارت شده داده‌های آموزشی برچسب دارند و خروجی هر نمونه از پیش مشخص است.

۲. یادگیری نظارت نشده

«یادگیری نظارت نشده» (Unsupervised Learning) یکی دیگر از اصطلاحات و زیرمجموعه‌ای از یادگیری ماشین است که پیش‌بینی‌های خود را از مجموعه‌داده‌ای بدون برچسب یا پاسخ استنتاج می‌کند. هدف از اجرای الگوریتم یادگیری نظارت نشده، طراحی مدلی است که بتواند ساختار یا توزیع داده‌های یک مجموعه را برای یادگیری بیش‌تر استخراج کند.

دو روش «خوشه‌بندی» (Clustering) و «انجمنی» (Association) از جمله تکنیک‌های یادگیری نظارت نشده هستند.

۳. یادگیری تقویتی

«یادگیری تقویتی» (Reinforcement Learning)، همان‌گونه که در کتاب Bishop به مفهوم آن اشاره می‌شود، روشی است که در آن برای هر مسئله و در جهت بیشینه‌سازی «پاداش» (Reward)، مناسب‌ترین «عمل‌ها» (Actions) پیدا و انتخاب می‌شوند. در ابتدا اهداف صریحی برای الگوریتم‌های تقویتی مشخص نمی‌شوند؛ در عوض با قرارگیری در محیطی مشخص، و «آزمون و خطا» (Trial and Error)، خود اهداف بهینه را پیدا می‌کنند. به عنوان مثال در یک بازی ویدئویی، الگوریتم یادگیری تقویتی می‌تواند با آزمون و خطا، بهینه‌ترین دکمه‌هایی که به ماندگاری بیش‌تر بازیکن در بازی کمک می‌کنند را پیدا کرده و به «جایگاه بهینه‌ای» (Optimal State) در بازی برسد.

۴. روش دسته‌بندی

به مسائلی که در آن‌ها وظیفه هر مدل، تقسیم داده‌ها به چند کلاس مجزا از یک‌دیگر است، مسائل «دسته‌بندی» (Classification) گفته می‌شود. ورودی مدل‌های دسته‌بندی در «مرحله آموزش» (Training) را «مجموعه‌داده آموزشی» (Training Data) می‌نامند. برای آن‌که مدل بتواند از داده‌های مجموعه آموزشی یاد بگیرد، هر نمونه مجموعه آموزشی از قبل برچسب‌گذاری شده و پاسخ مشخصی دارد. سپس مجموعه‌داده‌ای بدون برچسب و متفاوت از مجموعه آموزشی به عنوان ورودی می‌گیرد تا پیش‌بینی مدل نسبت به کلاس حقیقی هر نمونه داده مورد سنجش قرار گیرد.

مثال دسته‌بندی با ۲ کلاس

«درخت تصمیم» (Decision Tree) و «ماشین بردار پشتیبان» (Support Vector Machine | SVM) دو نمونه مطرح از روش‌های دسته‌بندی هستند. از آن‌جایی که الگوریتم‌های دسته‌بندی نیازمند برچسب‌گذاری صریح داده‌ها هستند، در گروه روش‌های یادگیری نظارت شده قرار می‌گیرند.

۵. روش خوشه‌بندی

روش «خوشه‌بندی» (Clustering) برای تجزیه و تحلیل مسائلی مورد استفاده قرار می‌گیرد که نمونه داده‌های برچسب‌گذاری شده نداشته باشند. در این روش، داده‌ها بر اساس مکانیزیم حداکثرسازی شباهت «میان‌کلاسی» (Intraclass) و حداقل‌سازی شباهت «درون‌کلاسی» (Interclass) گروه‌بندی می‌شوند. به زبان ساده‌تر در این الگوریتم، نمونه‌هایی که شباهت بیشتری به یک‌دیگر دارند در یک گروه و سایر نمونه‌ها که متفاوت از هم هستند در گروه‌های مجزایی قرار می‌گیرند. تکنیک «K میانگین» (K-Means)، یکی از شناخته‌شده‌ترین الگوریتم‌های خوشه‌بندی است.

مثال خوشه‌بندی با ۳ کلاس

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

۶. روش انجمنی

مثال رایج و شناخته‌شده‌ای که برای «روش انجمنی» (Association) مطرح می‌شود، مثال سبد خرید است. در مثال سبد خرید، به تجزیه و تحلیل رابطه میان محصولات مختلف قرار داده شده در سبد خرید توسط فرد خریدار می‌پردازیم. در این روش از معیارهایی همچون «پشتیبانی» (Support) و «اطمینان» (Confidence) برای مقایسه استفاده می‌شود؛ همچنین مقادیر این معیارها بر اساس روش‌های «بازاریابی متقابل» (Cross-Marketing) و تحلیل رفتار مشتری مشخص می‌شود. روش انجمنی در واقع نمونه عمومی‌سازی شده مثال بررسی سبد خرید است و به‌جز تفاوت در نحوه پیش‌بینی کلاس داده‌ها، شباهت بسیاری با روش دسته‌بندی دارد. الگوریتم «اپریوری» (Apriori) شناخته‌شده‌ترین مثال روش انجمنی است. روش انجمنی نمونه‌ای از یادگیری نظارت نشده است.

۷. رگرسیون

روش «رگرسیون» (Regression) از نظر عملکرد مشابه روش دسته‌بندی است. در حالی که کلاس‌های پیش‌بینی شده روش دسته‌بندی گسسته هستند، روش رگرسیون بر روی مسائلی با مقادیر خروجی پیوسته اعمال می‌شود. «رگرسیون خطی» (Linear Regression) و «رگرسیون لجستیک» (Logistic Regression) دو نمونه از روش‌های رگرسیون هستند.

۸. رگرسیون خطی

«رگرسیون خطی» (Linear Regression) یکی از الگوریتم‌های یادگیری نظارت شده است. مدل‌های رگرسیون بر اساس چند متغیر مستقل، مدلی برای پیش‌بینی مقادیر ورودی جدید طراحی می‌کنند. از رگرسیون خطی بیشتر در یافتن رابطه میان متغیرها و همچنین انجام عمل پیش‌بینی استفاده می‌شود. پیش‌بینی قیمت خانه بر اساس مشخصات آن، یکی از کاربردهای شناخته شده رگرسیون خطی است.

مثال تابع رگرسیون خطی

به عنوان نمونه‌ای از «تابع هزینه»‌ (Cost Function) برای رگرسیون خطی، می‌توان به تابع «جذر میانگین مربعات خطا» (Root Mean Squared Error | RMSE) اشاره کرد. وظیفه تابع هزینه، محاسبه تفاوت میان مقدار «خروجی حقیقی» (True y) و «خروجی پیش‌بینی شده» (Predicted y) است.

۹. رگرسیون لجستیک

«رگرسیون لجستیک» (Logistic Regression) از جمله الگوریتم‌های یادگیری نظارت شده است که از آن در مسائل «دسته‌بندی» (Classification) استفاده می‌شود. رگرسیون لجستیک یک الگوریتم دسته‌بندی است که هر ورودی را به مجموعه گسسته‌ای از خروجی یا کلاس‌ها نسبت می‌دهد. جداسازی هرزنامه از ایمیل‌های معمولی و همچنین دسته‌بندی موارد مشکوک به کلاهبرداری از سالم در تراکنش‌های آنلاین، از جمله مسائلی است که برای حل آن‌ها می‌توان از روش رگرسیون لجستیک استفاده کرد.

نمودار رگرسیون لاجستیک برای مثال نسبت میزان مطالعه به احتمال قبولی

رگرسیون لجستیک برای تبدیل خروجی خود از یک مقدار عددی به احتمال، از «تابع سیگموئید» (Sigmoid Function) بهره می‌برد. رگرسیون لجستیک را می‌توان به دو زیر روش «دودویی» (Binary) و «چندکلاسه» (Multi-Class) تقسیم کرد.

۱۰. روش نزدیک ترین K همسایه

«نزدیک‌ترین K همسایه» (K-Nearest Neighbors | KNN) الگوریتمی ساده و راحت برای پیاده‌سازی در دسته الگوریتم‌های یادگیری نظارت شده است و از از آن می‌توان در حل مسائل دسته‌بندی و رگرسیون استفاده کرد. نزدیک‌ترین K همسایه، فرض را بر نزدیکی نمونه‌های شبیه به هم می‌گذارد. به بیانی ساده‌تر، نمونه‌های مشابه فاصله اندکی با یک‌دیگر دارند. «سیستم‌های توصیه‌گر» (Recommender Systems)، یکی دیگر از موارد استفاده این الگوریتم هستند.

نحوه کارکرد الگوریتم KNN

روش کار الگوریتم KNN به این صورت است که ابتدا و پس از دریافت یک ورودی، فاصله آن نمونه را با سایر نمونه‌های موجود در مجموعه‌داده مقایسه و تعداد K مورد از نزدیک‌ترین نمونه‌ها را انتخاب می‌کند. سپس اگر با مسئله دسته‌بندی روبه‌رو باشیم، برچسب یا خروجی که بیشترین تکرار را میان نمونه‌ها داشته برای ورودی جدید انتخاب می‌شود؛ همچنین اگر مسئله رگرسیون باشد، میانگین برچسب‌ها به ورودی نسبت داده می‌شود.

۱۱. درخت تصمیم

«درخت تصمیم» (Decision Tree) الگوریتمی «بالا-پایین» (Top-Down)، «بازگشتی» (Recursive) و «تقسیم و حل» (Divide and Conquer) است. درخت تصمیم از دو راهکار «استقرار» (Induction) و هرس «Pruning» تشکیل می‌شود. در راهکار استقرار، مجموعه‌ای از نمونه‌های از پیش دسته‌بندی شده به عنوان ورودی انتخاب و بر اساس مناسب‌ترین ویژگی‌های متمایزکننده از یک‌دیگر جدا می‌شوند. سپس به‌صورت بازگشتی، همین فرایند بر روی نمونه‌های جدا شده نیز مجدد انجام می‌شود؛ تا زمانی که تمامی نمونه‌های موجود در مجموعه‌داده طبقه‌بندی شوند. در هنگام ایجاد درخت، ویژگی‌هایی برای جداسازی انتخاب می‌شوند که تفکیک آن‌ها به خالص‌ترین «گره‌های فرزند» ختم شود. ویژگی‌هایی که تنها یک کلاس از گره‌های فرزند را نتیجه دهند. با استفاده از این تکنیک، تعداد جداسازی‌های مورد نیاز برای دسته‌بندی تمامی نمونه‌های مجموعه‌داده به حداقل می‌رسد. میزان «خلوص» (Purity) یک ویژگی با استفاده از معیاری به نام «بهره اطلاعاتی» (Information Gain) سنجیده می‌شود.

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

۱۲. جنگل تصادفی

«جنگل تصادفی» (Random Forest) یکی از اصطلاحات و الگوریتم‌های محبوب یادگیری ماشین است که هم برای مسائل رگرسیون و هم دسته‌بندی مورد استفاده قرار می‌گیرد. این الگوریتم شامل تعداد بسیاری «درخت تصمیم» (Decision Tree) است که به شکل گروهی با یک‌دیگر فعالیت می‌کنند. هر درخت تصمیم در الگوریتم جنگل تصادفی، پیش‌بینی منحصربه‌فرد خود را نتیجه می‌دهد و در انتها برچسبی که بیشترین تکرار را در میان همه درخت‌های تصمیم داشته باشد، به عنوان پیش‌بینی نهایی مدل انتخاب می‌شود. به‌طور کلی در الگوریتم جنگل تصادفی با مشکل «بیش‌برازش» (Overfitting) روبه‌رو نمی‌شویم؛ اگر هم در مواقعی این مشکل وجود داشته باشد، به راحتی قابل جلوگیری است. در یک مدل جنگل تصادفی، نیازی به یک «مجموعه اعتبارسنجی» (Validation Set) جداگانه نیست. داشتن «توزیع نرمال» (Normal Distribution) یا خطی بودن داده‌ها، از جمله فرضیات جنگل تصادفی نیست. «مهندسی ویژگی» (Feature Engineering) یکی دیگر از تکنیک‌هایی است که به‌ندرت در مدل‌های جنگل تصادفی به آن نیاز پیدا می‌کنیم.

۱۳. ماشین بردار پشتیبان

با استفاده از روش «ماشین بردار پشتیبان» (Support Vector Machine | SVM) می‌توان هر دو نوع داده خطی و غیرخطی را دسته‌بندی کرد. هدف SVM انتقال مجموعه‌داده آموزشی به ابعاد بالاتر است. ابعاد بالاتری که در ادامه و از طریق آن‌ها بتوان مرز یا مرزهای بهینه میان کلاس‌های مختلف پیدا کرد. در SVM، به این مرزها «ابر صفحه» (Hyperplanes) گفته می‌شود. معیار تشخیص هر ابر صفحه، موقعیت بردارهای پشتیبان یا همان نمونه‌هایی که هر کلاس را نمایندگی می‌کنند و همچنین فاصله‌ایست که با ابر صفحه دارند.

ایده بنیادین روش SVM بر این اساس است که اگر ابعاد بالایی داشته باشیم، می‌توان هر دو کلاسی را از یک‌دیگر جدا و نمونه‌های داده را به چند کلاس تقسیم کرد. با تکرار این فرایند به میزان کافی، به میزانی ابر صفحه ایجاد می‌شود که قادر به جداسازی تمامی کلاس‌ها در یک فضای n بعدی باشند.

۱۴. معیار سوگیری

«سوگیری» (Bias) معیاری است که میزان انحراف میانگین پیش‌بینی‌ها از مقادیر حقیقی را اندازه می‌گیرد. سوگیری زمانی اتفاق می‌افتد که سعی کنیم مسئله پیچیده‌ای را با مدلی ساده تطبیق دهیم. پیش‌بینی‌های مدلی با «سوگیری بالا» (High Bias) شباهت زیادی به هم دارند؛ در نتیجه به این خاطر که مدل نتوانسته تفاوت میان نمونه‌های مختلف را به خوبی درک کند، چه روی «مجموعه‌داده آموزشی» (Training Set) و چه در «مجموعه‌داده آزمون» (Test Set) عملکرد مناسبی از خود نشان نمی‌دهد. در حقیقت مدل‌هایی که سوگیری بالایی دارند، با مشکل کم‌برازش روبه‌رو هستند.

۱۵. معیار واریانس

«واریانس» (Variance) برخلاف معیار سوگیری، از حساسیت بالایی نسبت به هر گونه تغییر در مجموعه‌داده آموزشی برخوردار است. مدلی «واریانس بالا» (High Variance) دارد که تحت تاثیر هر تغییر کوچک یا نویزی در مجموعه‌داده آموزشی قرار بگیرد. حتی امکان دسته‌بندی نمونه‌های خارج از دسته‌بندی‌های رایج (Outliers) نیز توسط چنین مدلی وجود دارد.

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

۱۶. رویکرد بیزی

هنگامی که صحبت از «احتمال» (Probability) می‌شود، دو دیدگاه فکری شاخص مورد بحث قرار می‌گیرند. دیدگاه اول رویکرد کلاسیک یا «فراوانی‌گرا» (Frequentist) نام دارد که احتمال را در میزان تکرار چند رویداد تصادفی می‌بیند. در طرف مقابل، دیدگاه دوم یا «رویکرد بیزی» (Bayesian Approach) از احتمال، معیار اندازه‌گیری «عدم قطعیتی» (Uncertainty) است که پس از مشاهده و اثبات وجود هر نمونه جدید، میزان احتمال را افزایش می‌دهد. اگر مقدار احتمالات به‌دست آمده به میزان حقیقی رسیده و به فرضیات مختلفی نسبت داده شدند، یعنی در حال یادگیری مراتب مختلفی از «قطعیت» (Certainty) هستیم.

۱۷. تابع زیان لگاریتمی

«زیان لگاریتمی» (Log Loss) معیاری برای ارزیابی عملکرد مدل‌های دسته‌بندی است. خروجی الگوریتم‌های دسته‌بندی، به‌طور معمول «مقادیر احتمالاتی» (Probability Values) هستند که میزان تعلق داشتن نمونه داده‌ای به کلاسی مشخص را نشان می‌دهند. در نهایت برچسب کلاسی که بیشترین احتمال را داشته باشد به نمونه اختصاص داده می‌شود. معیار زیان لگاریتمی، عملکرد مدل را نه بر اساس برچسب‌های کلاسی تخصیص‌داده شده بلکه بر اساس مقادیر احتمالاتی آن‌ها می‌سنجد. از همین‌رو، نتیجه این معیار ارزیابی دقیق‌تر و همچنین کامل‌تر از سایر روش‌ها است.

اصطلاحات کاربردی یادگیری عمیق

«یادگیری عمیق» (Deep Learning) یکی از اصطلاحات مهم و زیر مجموعه‌ای از یادگیری ماشین است که با انباشت تعداد زیادی از لایه‌های مخفی در شبکه عصبی، خروجی هر ورودی را مشخص می‌کند. هر لایه مخفی از شبکه عصبی، ویژگی متفاوتی از ورودی را استخراج می‌کند تا در نهایت الگوی کلی داده ورودی مشخص شود.

نمونه یک مدل یادگیری عمیق

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

۱۸. شبکه عصبی مصنوعی

«شبکه عصبی مصنوعی» (Artificial Neural Network | ANN)، الگوی برنامه‌نویسی الهام گرفته شده از زیست است. ساختار این شبکه‌ها، قابلیت یادگیری از داده‌ها را برای کامپیوتر ممکن می‌سازد. فرایند یادگیری به‌وسیله شبکه‌های عصبی، نتایج به مراتب بهتری نسبت به مدل‌های استاندارد یادگیری ماشین را ارائه می‌دهد. این شبکه‌ها به ترتیب از یک «لایه ورودی» (Input Layer)، یک یا چند «لایه مخفی» (Hidden Layers) و یک «لایه خروجی» (Output Layer) تشکیل شده‌اند. هر لایه مخفی شامل چند «واحد» (Unit) یا «نورون» (Neuron) است که ورودی را به نوع داده‌ای قابل فهم برای خروجی تبدیل می‌کنند. شبکه‌های عصبی در وظایفی که نیاز است الگویی کشف شود، عملکرد بسیار خوبی را از خود نشان می‌دهند.

۱۹. یادگیری جمعی

«یادگیری جمعی» (Ensemble Learning) یکی از تکنیک‌هایی است که با ترکیب نتایج چند مدل مجزا، نتیجه کلی را بهبود می‌بخشد. عملکرد نهایی حاصل از اعمال تکنیک یادگیری جمعی بهتر از نتیجه حاصل از یک مدل تکی است. روش‌های مختلف یادگیری جمعی، در واقع الگوریتم‌هایی هستند که برای کاهش مشکلاتی از قبیل بیش‌برازش و «کم‌برازش» (Underfitting)، چند تکنیک یادگیری ماشین مختلف را با یک‌دیگر ترکیب می‌کنند تا نتیجه نهایی با دقت بالاتری حاصل شود.

دو الگوریتم درخت تصادفی، «درخت‌های تصمیم تقویت‌شده با گرادیان» (Gradient Boosted Decision Trees) و «آدابوست» (AdaBoost) نمونه‌هایی از یادگیری جمعی هستند.

۲۰. درخت تصمیم تقویت شده با گرادیان

روش «درخت تصمیم تقویت شده با گرادیان» (Gradient Boosted Decision Tree) یکی از تکنیک‌های یادگیری جمعی است که در آن پیش‌بینی‌ها نه جداگانه بلکه به‌صورت متوالی انجام می‌شوند. «گرادیان تقویتی» (Gradient Boosting) مثالی از روش‌های تقویتی است؛ یکی از اصطلاحات و تکنیک‌های یادگیری ماشین که در مسائل رگرسیون و دسته‌بندی برای ایجاد چند درخت تصمیم‌گیری به عنوان مدل پیش‌بینی‌کننده از آن استفاده می‌شود.

۲۱. انتشار رو به عقب

«انتشار رو به عقب» (Back-Propagation) مفهومی در شبکه‌های عصبی عمیق است که در زمان ناهماهنگی پیش‌بینی شبکه با خروجی مورد انتظار، تغییراتی در لایه‌های پنهان و واحدهای هر لایه ایجاد می‌کند.

۲۲. بیش‌برازش

«بیش‌برازش» (Overfitting) زمانی رخ می‌دهد که مدل یادگیری ماشین، تسلط بیش از حد خوبی روی مجموعه‌داده‌های آموزشی پیدا کند. با بهره‌گیری از دو روش زیر می‌توان بیش‌برازش را تا حد قابل قبولی کنترل کرد:

  1. روش «اعتبارسنجی متقابل» (Cross-Validation)
  2. روش «منظم‌سازی» (Regularization)
نمونه‌ای از بیش‌برازش

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

۲۳. کم‌برازش

«کم‌برازش» (Underfitting) زمانی اتفاق می‌افتد که مدل نه شناخت خوبی روی داده‌های آموزشی دارد و نه پس از آموزش، عملکرد مناسبی روی داده‌های جدید از خود نشان می‌دهد.

نمونه‌ای از کم‌برازش

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

۲۴. تکنیک منظم‌سازی

«منظم‌سازی» (Regularization) تکنیکی است که برای جلوگیری از مشکل بیش‌برازش مورد استفاده قرار می‌گیرد. منظم‌سازی روی تمامی مدل‌های یادگیری ماشین قابل پیاده‌سازی است. نحوه کارکرد تکنیک منظم‌سازی به این صورت است که با اضافه کردن ضریب ثابتی به «تابع زیان» (Loss Function)، از پیچیدگی مدل‌هایی که احتمال رخداد بیش‌برازش در آن‌ها بالاست کاسته می‌شود. مدلی که بیش‌برازش باشد، یعنی نتواند پیش‌بینی دقیقی از نمونه ورودی‌های جدید ارائه دهد، به اصطلاح با مشکل «عمومی‌سازی» (Generalization) مواجه است. منظم‌سازی L1 و منظم‌سازی L2، دو روش رایج منظم‌سازی هستند.

۲۵. منظم‌سازی L1

به مدل رگرسیونی که از تکنیک منظم‌سازی L1 استفاده کند «رگرسیون لاسو» (Lasso Regression) گفته می‌شود. در تکنیک رگرسیون لاسو قدر مطلق یک ضریب ثابت است که در تابع زیان از آن استفاده می‌شود. منظم‌سازی L1 در هر دور، مقدار کمی را از «وزن» (Weight) «ویژگی‌هایی» (Features) که در فرایند یادگیری مفید نبوده‌اند کاسته و در نهایت مقدار پارامتر وزن آن ویژگی‌ها را برابر با صفر می‌سازد.

۲۶. منظم‌سازی L2

به مدلی که از روش منظم‌سازی L2 استفاده کند «رگرسیون ستیغی» (Ridge Regression) می‌گویند. در رگرسیون ستیغی، مربع یک ضریب ثابت به تابع زیان اضافه می‌شود. در منظم‌سازی L2 «وزن» (Weight) «ویژگی‌های» (Features) ناکارآمد مدل به سمت صفر نزدیک شده اما به‌طور دقیق برابر با صفر نمی‌شوند.

مثال اعمال منظم‌سازی

منظم‌سازی L2 مانند نیرویی عمل می‌کند که در هر دور،‌ تنها درصد اندکی از پارمترهای وزنی را می‌کاهد. از این رو، در این روش حتی ویژگی‌های ناکارآمد نیز حدف نمی‌شوند.

۲۷. اعتبارسنجی متقابل

«اعتبارسنجی متقابل» (Cross-Validation) روشی برای ارزیابی عملکرد است که در آن، مجموعه‌داده‌ها به دو بخش «مجموعه آموزشی» (Training Set) و «مجموعه اعتبارسنجی» (Validation Set) تقسیم می‌شود. در فهرست زیر چند نمونه از روش‌های اعتبارسنجی متقابل را ملاحظه می‌کنید:

  1. روش Holdout
  2. روش K-Fold (محبوب‌ترین)
  3. روش Leave-P-Out

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

اصطلاحات کاربردی ارزیابی عملکرد

همزمان با افزایش کاربرد الگوریتم‌های یادگیری ماشین در سیستم‌های جهان حقیقی و محصولات مختلف، عملکرد بالا به مسئله‌ای مهم، نه فقط برای «دانشمندان علوم داده» (Data Scientist)، بلکه عموم مردم و صاحبان مشاغل تبدیل شده است.

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

معیارهای ارزیابی عملکرد در رگرسیون

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

۲۸. میانگین قدر مطلق خطا

در روش «میانگین قدر مطلق خطا» (Mean Absolute Error | MAE)، از قدر مطلق تفاضل میان خروجی پیش‌بینی شده و خروجی حقیقی میانگین گرفته می‌شود.

$$ MAE = frac{|(y_i – y_p)|}{n} $$

۲۹. جذر میانگین مربعات خطا

در روش «جذر میانگین مربعات خطا» (Root Mean Squared Error | RMSE)، جذر میانگین مربعِ تفاضل خروجی پیش‌بینی شده و خروجی حقیقی محاسبه می‌شود.

$$ RMSE = sqrt{frac{sum (y_i – y_p)^2}{n}} $$

معیارهای ارزیابی عملکرد در روش دسته‌بندی

ارزیابی عملکرد مدل‌های دسته‌بندی، در کمیت‌سنجی دقت حاصل از تخصیص مقادیر گسسته به هر نمونه خلاصه می‌شود. در ادامه با چند نمونه از معیارهای ارزیابی عملکرد در مسائل دسته‌بندی آشنا می‌شویم.

۳۰. ماتریس درهم ریختگی

«ماتریس درهم ریختگی» (Confusion Matrix) یکی از شهودی‌ترین و راحت‌ترین معیارهای اندازه‌گیری، برای یافتن میزان درستی و دقت مدل یادگیری ماشین است.

مثال ماتریس در هم ریختگی

از ماتریس درهم ریختگی در مسائلی استفاده می‌شود که دو یا تعداد بیش‌تری کلاس مختلف را شامل می‌شوند. در ادامه با در نظر گرفتن مثالی با خروجی دودودیی یعنی صفر و یک، حالت‌های مختلف ماتریس درهم ریختگی را بررسی می‌کنیم.

۳۱. نرخ پاسخ های مثبت درست

نرخ «پاسخ‌های مثبت درست» (True Positives | TP) حالتی از ماتریس درهم ریختگی است که در آن برچسب یا کلاس حقیقی نمونه برابر با ۱ یا «درست» (True) باشد و کلاس پیش‌بینی شده آن نیز برابر با ۱ باشد.

۳۲. نرخ پاسخ های منفی درست

نرخ «پاسخ‌های منفی دست» (True Negatives | TN) موقعیتی است که در آن کلاس حقیقی نمونه برابر با ۰ یا «نادرست» (False) باشد و کلاس پیش‌بینی شده برای نمونه نیز برابر با ۰ باشد.

۳۳. نرخ پاسخ های مثبت نادرست

نرخ «پاسخ‌های مثبت نادرست» (False Positives | FP) به حالتی از ماتریس درهم ریختگی گفته می‌شود که در آن کلاس حقیقی نمونه داده برابر با ۰ یا «نادرست»، اما کلاس پیش‌بینی شده برابر با ۱ یا «درست» است. عبارت «نادرست» به معنی پیش‌بینی نادرست مدل و عبارت «مثبت» یعنی کلاس پیش‌بینی شده، مثبت یا برابر با ۱ بوده است.

۳۴. نرخ پاسخ های منفی نادرست

نرخ «پاسخ‌های منفی نادرست» (False Negatives | FN) حالتی است که در آن کلاس حقیقی نمونه داده برابر با ۱ یا «درست» و کلاس پیش‌بینی شده توسط مدل برابر با ۰ باشد. عبارت «نادرست» به‌خاطر پیش‌بینی نادرست مدل و عبارت «منفی» به دلیل پیش‌بینی کلاس منفی یا ۰ توسط مدل است.

۳۵. معیار صحت

معیار «صحت» (Accuracy) در مسائل دسته‌بندی کاربرد دارد و به معنی تقسیم تعداد کل نمونه‌های درست پیش‌بینی شده بر تعداد کل پیش‌بینی‌ها است.

$$ Accuracy = frac{TP + TN}{TP + FP + FN + TN} $$

چه زمان باید از معیار صحت استفاده کنیم؟

مورد استفاده از معیار دقت در زمانی مناسب است که تعداد نمونه‌های هر کلاس در مجموعه‌داده به نسبت نزدیکی با یک‌دیگر برابر باشند.

چه زمان نباید از معیار صحت استفاده کنیم؟

اگر تعداد نمونه کلاس‌های موجود در مجموعه‌داده متعادل نباشد، یعنی به عنوان مثال تعداد نمونه‌های یک کلاس از سایر کلاس‌ها به مراتب بیشتر باشد، آن زمان صحت معیار مناسبی برای سنجش عملکرد مدل نیست.

۳۶. معیار دقت

«دقت» (Precision) معیاری است که نسبت تعداد نمونه‌هایی که در دسته پاسخ‌های مثبت درست یا TP قرار گرفته‌اند را به تعداد کل نمونه‌های دسته پیش‌بینی مثبت یعنی TP و FP محاسبه می‌کند.

$$ Precision = frac{TP}{TP + FP} $$

۳۷. معیار بازیابی

معیار «بازیابی» (Recall) نسبت تعداد نمونه‌های درست پیش‌بینی شده یا TP را به تعداد کل نمونه‌های دسته حقیقی مثبت یعنی TP و FN محاسبه می‌کند.

$$ Recall = frac{TP}{TP + FN} $$

۳۸. امتیاز اِف‌وان

«امتیاز اِف‌وان» (F1 Score) نمایان‌گر هر دو معیار دقت و بازیابی است.

$$ F1 = 2cdotfrac{Precision times Recall}{Precision + Recall} $$

۳۹. منحنی نمودار مشخصه عملکرد

منحنی «نمودار مشخصه عملکرد» (Receiver Operating Characteristics | ROC)، نموداری است که عملکرد یک مدل دسته‌بندی را نسبت به تمامی «مقادیر مرزی دسته‌بندی» (Classification Thresholds) محاسبه می‌کند. منحنی ROC از دو مؤلفه زیر تشکیل می‌شود:

  1. «نرخ پاسخ مثبت درست» (True Positive Rate)
  2. «نرخ پاسخ مثبت نادرست» (False Positive Rate)
مثال نمودار منحنی ROC

منحنی نمودار مشخص عملکرد یا همان ROC، تکنیک بصری‌سازی است که بسیار در یادگیری ماشین و برای ارزیابی عملکرد مدل‌های دسته‌بندی از آن استفاده می‌شود..

۴۰. سطح زیر نمودار منحنی ROC

«سطح زیر نمودار منحنی مشخصه عملکرد» (Area Under the ROC Curve | AUC)، معیاری است که مساحت سطح زیر نمودار دو بعدی منحنی ROC را محاسبه می‌کند. معیار AUC دید کاملی از عملکرد مدل نسبت به تمامی «مقادیر مرزی دسته‌بندی» (Classification Thresholds) به ما می‌دهد.

مثال AUC

جمع‌بندی

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

[ad_2]