جشنواره تخفیف باران پی‌استور

تا 40 درصد تخفیف

شامل همه آثار

کد تخفیف: PS1403

روز
ساعت
دقیقه
ثانیه
آخرین فرصت‌ها

با خرید اشتراک ویژه ، با هزینه بسیار کمتر به فایل های پاورپوینت دسترسی داشته باشید!

پیاده سازی انتخاب ویژگی با الگوریتم کلونی مورچه ACO برای KNN در متلب که تصاویر مرتبط جذابی درج شده است.

پیاده سازی انتخاب ویژگی با ACO برای KNN در متلب + انتخاب ویژگی با k همسایه نزدیک

هزینه خرید:

۲۱۹,۰۰۰ تومان

دریافت کد تخفیف %

در این پست به بحث انتخاب ویژگی با ACO برای KNN یا بطور کامل استفاده از الگوریتم کلونی مورچگان Ant Colony Optimization یا (ACO) را برای انتخاب ویژگی (Feature Selection) برای الگوریتم یادگیری ماشین K همسایه نزدیک (k-Nearest Neighbors) یا همان KNN می‌پردازیم. در این بحث با توجه به خاصیت الگوریتم الگوریتم مورچه به انتخاب ویژگی با ACO از دیتاست‌ها پرداخته می‌شود.

پیاده سازی انتخاب ویژگی با الگوریتم کلونی مورچه ACO برای KNN در متلب

در این پست به بحث انتخاب ویژگی با ACO برای KNN یا بطور کامل استفاده از الگوریتم کلونی مورچگان Ant Colony Optimization یا (ACO) را برای انتخاب ویژگی (Feature Selection) برای الگوریتم یادگیری ماشین K همسایه نزدیک (k-Nearest Neighbors) یا همان KNN می‌پردازیم. در این بحث با توجه به خاصیت الگوریتم الگوریتم مورچه به انتخاب ویژگی با ACO از دیتاست‌ها پرداخته می‌شود. کدهای برنامه بصورت دقیق بر روی دیتاست موجود نوشته شده و بصورت روان قابل در است. انتخاب یا استخراج ویژگی با ACO برای KNN در نرم افزار متلب 2014 نوشته شده است در ادامه به تشریح موضوع می‌پردازیم. (استخراج ویژگی با الگوریتم کلونی مورچه در متلب)

الگوریتم کلونی مورچه ACO

الگوریتم بهینه سازی کلونی مورچه  Ant Colony Optimization یا به اختصار ACO مورچگان تحت عنوان الگوریتم‌های هوش ازدحامی (هوش گروهی) شناخته شده و به مدل سازی رفتار مورچه‌های واقعی می‌پردازد. مورچه‌ها حشراتی هستند که می‌توانند گروه‌ها (کلونی‌ها) را شکل دهند. چنین رویکرد جمعیت محوری این امکان را برای الگوریتم ACO ایجاد می‌کند تا به حل مسائل بهینه سازی پویا به طور کاملا کارآمد بپردازد. مورچه‌ها به‌عنوان مخلوقات خودسازمانده می‌باشند.

از آن‌جایی که مورچه‌ها اصلا چشم ندارند، تعاملات آن‌ها از طریق ماده شیمیایی فرومون که از آن برای نشان گذاری مسیر استفاده می‌شود، انجام می‌گیرد. هرچه فرومن‌های بیشتری در مسیر قرار گیرد مابقی مورچه‌ها از این مسیر بیشتر استفاده می‌کنند؛ بنابراین، چنین کمیتی نشان می‌دهد که این مسیر به عنوان یکی از بهینه‌ترین و کوتاه‌ترین راه می‌باشد. اکنون نگاهی به یک نمونه عینی می‌اندازیم. هدف پیدا کردن بهترین راه از نقطه آغازی N (آشیانه) به نقطه مقصد F (منبع غذا) می‌باشد.الگوریتم مورچه ACO

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

روش k همسایه‌ی نزدیک k-nearest neighbors algorithm

روش k همسایه‌ی نزدیک یا k-nearest neighbors algorithm یک روش یادگیری موردی ‌است و ازجمله ساده‌ترین الگوریتم‌های یادگیری ماشین است. در این الگوریتم یک نمونه با رأی اکثریت از همسایه‌هایش دسته‌بندی می‌شود و این نمونه در عمومی‌ترین کلاس مابین k همسایه نزدیک تعیین می‌شود. متغیر K یک مقدار مثبت صحیح و عموماً کوچک است. اگر k=1 باشد نمونه به‌سادگی در کلاس همسایگان نزدیکش تعیین می‌گردد. فرد بودن مقدار k مفید است چون با این کار جلوی آراء برابر گرفته می‌شود.

روش k همسایه‌ی نزدیک، برای بسیاری از روش‌ها کاربرد دارد، زیرا اثربخش، غیرپارامتریک و دارای پیاده‌سازی راحت است. شکل زیر مثالی از الگوریتم دسته‌بندی روش k همسایه‌ی نزدیک، با استفاده از بردار ویژگی چندبعدی است که مثلث‌ها کلاس اول و مربع‌ها کلاس دوم رانشان می‌دهند. دایره کوچک در داخل دوایر، نمونه تستی را نشان می‌دهد. حال اگر مقدار k=3‌ باشد (۳ همسایه‌ی نزدیک به نمونه) نمونه تستی متعلق به کلاس مثلث و اگر k=5 باشد نمونه متعلق به کلاس مربع است.

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

سه فاکتور مهم در این الگوریتم روش k همسایه‌ی نزدیک، به شرح زیر است:

  • معیار فاصله یا شباهت، برای پیداکردن k همسایه نزدیک استفاده می‌شود.
  •  K تعداد همسایه‌های نزدیک است.
  • قانون تصمیم‌گیری برای تعیین (شناسایی) یک کلاس برای سند تستی از k همسایه نزدیک است.

انتخاب ویژگی با ACO برای KNN

برای انتخاب ویژگی با ACO برای KNN به‌صورت جزئی‌ می‌توان گفت ابتدا یک بردار ویژگی دودویی با طول n (به تعداد پارامترهای ورودی) از F1 تا Fn به‌صورت تصادفی تولید می‌شود هرکدام از این بیت‌های این رشته‌ی دودویی متناظر با یک ویژگی در ماتریس آموزش است. اگر بیت متناظر با هر ویژگی صفر باشد آن ویژگی حذف‌شده و اگر یک باشد آن ویژگی در آموزش دخالت داده می‌شود پس از اجرای یک دور از الگوریتم کلونی مورچه با ویژگی تصادفی مقدار برازندگی برای هر بردار ویژگی دودویی تولید می‌شود.

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

سورس کد انتخاب ویژگی با ACO برای KNN در متلب

سورس کد انتخاب ویژگی با ACO برای KNN در متلب ۲۰۱۴ نوشته شده است. این سورس کد بر روی دیتاست کوچکی انجام شده است. فقط با جایگذاری دیتاست خودتان می‌توانید از این سورس کد برای دیتاست جدید استفاده کنید. سورس انتخاب ویژگی با ACO برای KNN دارای دو بخش است بخش اول توسط فایل KNN .m اجرا می‌شود که این قسمت فقط الگوریتم KNN یا k همسایه نزدیک را اجرا می‌کند و بدون در نظر گرفتن انتخاب ویژگی است.

بخش دوم توسط فایل  KNN _with_selection_ACO.m اجرا می‌شود که توسط الگوریتم کلونی مورچگان برای انتخاب ویژگی (فیوچر) می‌پردازد. کل فایل‌های موجود ۷ فایل است که ۴ فایل مربوط به الگوریتم کلونی مورچگان و مابقی برای اجرای پیاده سازی است.

  • Dataset.mat: دیتاست مربوط به پیاده سازی می‌باشد.
  • KNN .m: اجرای پیاده سازی برای دسته بندی بدون انتخاب ویژگی یا خصیصه است.
  • KNN _with_selection_ACO.m: اجرای پیاده سازی برای دسته بندی بدون انتخاب ویژگی یا خصیصه است.

نمونه‌ای از سورس کد مربوط به KNN _with_selection_ACO.m به شرح زیر است:

clc, clear, close all

global trn_Inputs tst_Inputs trn_Outputs tst_Outputs 
addpath(genpath('ACO'))

load Dataset

Inputs = Dataset(:,1:end-1)';
Output = Dataset(:,end)';
Output(Output==2) = 0;
Output(Output==4) = 1;

% sakhtan e dade haye amoozesh va test
[trn_Inputs,valP,tst_Inputs,trainInd,valInd,testInd] = dividerand(Inputs,0.6,0,0.4);
[trn_Outputs,valT,tst_Outputs] = divideind(Output,trainInd,valInd,testInd);

dim = size( Dataset , 2) - 1;


%aco(MaxIteretion,nAnt,dim)
bestParams = aco(20,20,dim);

bestParams = round( bestParams );
selectedFeatures = find( bestParams == 1 );
disp('Selected Features: ')
disp(num2str(selectedFeatures'))


%% Test the results


 usedFeatures = trn_Inputs(selectedFeatures, :);

خروجی پیاده سازی

انتخاب ویژگی با ACO برای KNN

 

انتخاب ویژگی با ACO برای KNN

 

انتخاب ویژگی با ACO برای KNN

درباره پیاده سازی انتخاب ویژگی با ACO برای KNN در متلب

سورس برنامه پیاده سازی انتخاب ویژگی با ACO برای KNN در متلب در متلب عنوان اثری است که در این پست به آن پرداخته شده است. این سورس کد در نرم افزار متلب نوشته شده و بصورت کامل توسط گروه پشتیبانی پی استور تست و اجرا شده است. اثر کنونی دارای نشان تضمین کیفیت پی استور می‌باشد. برای دانلود آن را خریداری کنید.

مشاهده بیشتر

برنامه‌نویس:  تیم برنامه‌نویسی پی‌استور

متشکل از اساتید و فارغ التحصیلان رشته‌های فنی - مهندسی

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

مشخصات تکمیلی سورس کد

نام اثر: پیاده سازی انتخاب ویژگی با ACO برای KNN در متلب + انتخاب ویژگی با k همسایه نزدیک
نوع اثر: سورس کد
برنامه‌نویس: تیم برنامه‌نویسی پی‌استور
زبان برنامه نویسی: MATLAB متلب
ویژگی: دارای قابلیت دانلود و ویرایش

راهنمای خرید و ثبت سفارش

تصویر مراحل خرید از پی استور

اگر در مورد این اثر یا نحوه تهیه آن سوالی دارید؟
  • با شماره تلفن واحد مخاطبین 442225175 (پیش شماره 041) تماس بگیرید. – تمام ساعات اداری
  • با ما مکاتبه ایمیلی داشته باشید (این لینک). – تمام ساعات

توجه: کیفیت این محصول توسط پی استور تضمین شده و در صورت عدم رضایت از محصول، به انتخاب شما:

تصویر و لوگوی گارانتی

نظرات

1 نظر|5.00 (میانگین امتیاز کاربران)

  1. مدیریت و پشتیبانی

    نظرات و دیدگاه های خود را با ما درمیان بگذارید.

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

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

شناسه اثر: 4532 دسته‌بندی موضوعی: برچسب ,

هزینه خرید:

۲۱۹,۰۰۰ تومان

دریافت کد تخفیف %