این آموزش قسمت سوم بسته آموزش جامع یادگیری ماشین می باشد. در این آموزش شما با نحوه برنامه نویسی ماشین بردار پشتیبان در متلب آشنا خواهید شد. این آموزش بر مبنای آخرین نسخه متلب می باشد و به جرات می توان گفت یکی از بهترین آموزش های برنامه نویسی ماشین برار پشتیان در متلب می باشد.
ما در این آموزش از تجربه 15 ساله خود در برنامه نویسی متلب در پروژه های مختلف استفاده کردیم و سعی کردیم تمامی مباحث مهم که یک برنامه نویس لازم دارد تا ماشین بردار پشتیان را استفاده کند را پوشش بدهیم.
اگر شما برنامه نویسی متلب ضعیفی هم دارید می توانید از کدهای آماده ای که در کنار این آموزش قرار دارد استفاده کنید و تنها دیتاست ورودی برنامه را تغییر دهید و برای دیتاست پروژه خود استفاده کنید.
نرم افزار متلب در سالهای خیلی قبل تابع svmtrain را معرفی کرد ولی این تابع مشکلات زیادی داشت و خیلی از کاربران مجبور بودند از کتابخانه های دیگر مثل libsvm استفاده کنند. اما متلب در سالهای اخیر یک تابع جدید معرفی کرد (fitcsvm) که مشکل تابع قبلی را نداشت و دارای قابلیت های بسیار زیادی است که کار برنامه نویسی متلب ماشین بردار پشتیبان SVM را ساده می کند. ما در این آموزش قصد داریم شما را با این ابزار آشنا کنیم. مثالهای بسیار زیادی در کنار این آموزش گنجانده شده است که به شما در درک نحوه کار با SVM بسیار کمک می کند. همه مثالها در این فیلم آموزشی خط به خط توضیح داده شده است.
هزینه ای که شما برای این آموزش پرداخت می کنید، در کنار ساعات بسیار زیادی که صرف خواندن مراجع مختلف و تست کدهای مختلف متلب شده ، بسیار ناچیز است. امیدواریم این آموزش هم بتواند مانند آموزش های قبلی راهگشای شما دوستان گرامی باشد.
تعداد مثال بالا و نمونه کد:
تعداد بیست و یک نمونه کد متلب در کنار این فیلم آموزشی قرار دارد که در هیچ جایی در اینترنت و کتاب قابل دسترسی نیست.
سرفصل :
خلاصه ای از تاریخچه ماشین بردار پشتیبان
برخی از کاربردهای SVM
مفهوم های کلیدی در ماشین بردار پشتیبان
مفهوم margin
ماشین بردار چیست؟
مفهوم کرنل مفهوم کرنل kernel
بهترین hyperplane
Binary classification
خصوصیات مهم SVM
سرعت SVM
مقدار فضای اشغال شده از حافظه
دیتاست های بعد کم و بعد متوسط
معرفی fitcsvm
معرفی نوع solver
کرنل های مورد استفاده در متلب
فرمول هر کرنل
فرایند بهینه سازی
الگوریتم ISDA و L1QP و SMO
داده های ورودی آموزش
سطر و ستون در داده ها
مثال یک فایل excel
گرفتن خروجی در مدل SVM
خروجی score
مثال تشخیص سرطان سینه با ماشین بردار پشتیبان
تحلیل classificationSVM
مشخص کردن داده های پشتیبان
توضیح فیلدهای خروجی SVM object
گزینه BoxConstraint
تاثیر BoxConstraint بر راندمان مدل
گزینه KernelScale
افزایش سرعت آموزش
گزینه PolynomialOrder
گزینه KernelOffset
گزینه Alpha
گزینه CacheSize
Nu
کنترل تعداد تکرارها در آموزش
دستور resume
گزینه verbose
ClassNames
استفاده از cross validation
Holdout
محاسبه ماتریس confusion
رسم performance curve
ResponseName
ScoreTransform
CrossVal
kFoldPredict
تفاوت ماشین بردار پشتیبان خروجی cross validation و fitcsvm
Kfold
گزینه Holdout
کنترل همگرامی
DeltaGradientTolerance
GapTolerance
IterationLimit
حداکثر تعداد تکرار بهینه سازی عددی
KKTTolerance
ShrinkagePeriod
گزینه های بهینه سازی Hyperparameter
‘none’ و ‘auto’ و ‘all’
بهینه سازی پارامترهای ماشین بردار پشتیبان
چه پارامترهایی را در SVM میتوان بهینه کرد؟
مدل فشرده
تفاوت مدل compact و معمولی
محدودیت های ماشین بردار پشتیبان
برای داده های با ویژگی زیاد از کدام تابع برای ماشین بردار پشتیبان استفاده کنیم؟
کاهش وابستگی داده ها به بازه تغییرات داده ها
بهترین روش محاسبه راندمان SVM چیست؟
کاهش زمان یادگیری با چه پارامتری متناسب است؟
افزایش سرعت همگرایی با چه پارامتری متناسب است؟
داده های تکراری
مثال برنامه نویسی ماشین بردار پشتیان چند کلاسه
تابع fitcecoc
ساخت قالب Template SVM
مثال برنامه نویسی برای نشان دادن تاثیر استاندارد کردن داده ها
مثال برنامه نویسی k-fold
مثال برنامه نویسی کرنل سفارشی برای ماشین بردار پشتیبان
misclassification
مثال برنامه نویسی بهینه سازی پارامترهای ماشین بردار پشتیبان
گزینه optimizer
نقاط best observed
نقاط best estimated
پیش نمایش اول
پیش نمایش دوم
پیش نمایش سوم
مدت زمان : 172 دقیقه
توصیه :
جهت درک بهتر ماشین بردار پشتیان به علاقه مندان توصیه می شود فیلم آموزشی تئوری ماشین بردار پشتیبان را ابتدا تهیه کنند تا با مفاهیم آن به طور کامل آشنا شوند. این فیلم آموزشی توسط سه نفر از دانشجویان دانشگاه صنعتی اصفهان تهیه شده است. جهت مشاهده این فیلم آموزشی بر روی تصویر زیر کلیک کنید: