نکاتی در مورد مجموعه کدهای LIBSVM

Support Vector Machine MATLAB code SVMLIB
ماشین بردار پشتیبان یک دسته بندی کننده باینری می باشد ، به عبارت دیگر تنها می تواند تنها دو کلاس را از هم دسته بندی کند اما LIBSVM حالت چندكلاسه را نيز پشتيباني مي كند، بنابراين از نظر ميزان دشواري انجام پروژه، تفاوتي بين مسائل دو كلاسه و چند كلاسه وجود دارد. تنها تفاوت اين است كه مجموعه هاي بزرگتر و يا حالت چند كلاسه ممكن است به زمان بيشتري  براي آموزش و آزمايش نياز داشته باشند.

نرمافزار LIBSVM دو حالت كلي براي حل مسئله دسته بندي دارد: C-SVM و nu-SVM. تفاوت اين دو در چگونگي بيان مسئله به صورت يك مسئله بهينه سازي و همچنين پارامتر مورد تنظيم است. در اين پروژه بايد مسائل براي هسته هاي مختلف در هر دو حالت حل شود. براي حالت nu-SVM، براي پارامتر nu كه با –n مشخص مي شود، از مقادير 1/0، 25/0، 5/0، 75/0، 9/0 و 0/1 استفاده شود. براي حالت C-SVM نيز براي پارامتر C كه با –c مشخص مي شود از مقادير 001/0، 01/0، 1/0، 1، 10، 100 و 1000 استفاده شود.
اين نرم افزار چهار هسته مختلف را به صورت پيشفرض پشتيباني ميكند كه عبارتند از هستههاي خطي، چندجمله اي، RBF و Sigmoid. شما بايستي نتايج را براي هر هسته به صورت جداگانه به دست آوريد.
هسته خطي هيچ پارامتري ندارد و بنابراين تنها يك حالت اجرا دارد.
هسته چند جملهاي داراي دو پارامتر است. پارامتر اول درجه چند جملهاي است و با –d مشخص مي شود، به ازاي مقادير 1، 2، 3 و 4 بايد مسئله را حل كرد. براي پارامتر دوم نيز كه عدد ثابت جمع شونده است و با –r مشخص مي شود، سه حالت 0، 1- و 1+ را استفاده كنيد.
هسته RBF تنها يك پارامتر گاما دارد كه با –g مشخص مي شود. براي اين پارامتر يك بار مقدار پيشفرض يعني 1/k را (k تعداد ويژگيها است) استفاده كنيد (به عبارتي هيچ مقداري را براي گاما به برنامه ندهيد) و به علاوه مقادير 21/k و 1 را نيز تست كنيد.
در مورد هسته sigmoid با توجه به مسائلي كه معمولا از نظر  همگرايي به جواب پيش  ميآيد، تنها همان پيش فرض يعني مقدار ثابت 0 و گاما 1/k جواب را به دست آوريد.

 


multiclass Support Vector Machine MATLAB Code2


blank

براي دانلود فيلم آموزشي LIBSVM بر روي تصوير بالا كليك كنيد

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *