در این بخش سورس کد آموزش شبکه عصبی با الگوریتم رقابت استعماری ICA در متلب قرار داده شده است. شبکههای عصبی Artificial neural network از تعداد زیادی عنصر پردازشی فوقالعاده بههمپیوسته به نام نرون تشکیلشده که برای حل یک مسئله با یکدیگر بهصورت هماهنگ عمل میکند. شبکه عصبی یک الگوریتم نیست بلکه یک چارچوب برای بسیاری از الگوریتم های مختلف از جمله یادگیری ماشین برای همکاری و پردازش اطلاعات پیچیده است.
برنامهنویس: تیم برنامه نویسی پی استور
متشکل از اساتید و فارغ التحصیلان رشته های فنی - مهندسی
تیم برنامه نویسی پی استور یکی از اولین گروه های تشکیل شده در مجموعه آموزشی پی استور می باشد. این تیم از اساتید مجرب و فارغ التحصیلان رشته های فنی و مهندسی تشکیل شده که در زمینه های مختلف برنامه نویسی و تهیه سورس کد فعال هستند.
برای افزایش دقت یادگیری در شبکه های عصبی می توان این شبکه را با الگوریتم های فرا ابتکاری یا تکاملی ترکیب کرد یعنی برای وزن دهی لایه های مختلف موجود که ارتباط آن ها با یال هایی است می توان مقادیر وزن ها ها یا یال ها را با الگوریتم های فرا ابتکاری تعیین کرد. یکی از مهم ترین الگوریتم ها، الگوریتم رقابت استعماری یا Imperialist Competitive Algorithm می باشد. که در این بخش سورس کد آماده آن در متلب برای یک دیتاست ساده (دیتاست سرطان سینه) نوشته شده است.
شبکه عصبی مصنوعی
شبکههای عصبی ANN از تعداد زیادی عنصر پردازشی فوقالعاده بههمپیوسته به نام نرون تشکیلشده که برای حل یک مسئله با یکدیگر بهصورت هماهنگ عمل میکند. دستهبندی شبکههای عصبی شبکهای از لایههاست، معمولاً لایهای که اطلاعات ورودی به آنها داده میشود تحت عنوان لایهی ورودی و لایهای که دادههای خروجی از آن دریافت میشود تحت عنوان لایهی خروجی نامیده میشود و به لایههای دیگر بین این دولایه (در صورت وجود) لایههای پنهان گفته میشود.
جهت حرکتها سیگنالها همواره از سمت لایهی ورودی بهسوی لایهی خروجی است برای دستهبندی یک نمونه تستی، وزن کلمهها برای واحدهای ورودی تعیین میشود و فعال کردن این واحدها از طریق لایههای مختلف روبهجلو در شبکه انجام میشود و مقدار واحد خروجی بهعنوان یک نتیجه در تصمیمگیری دستهها تعیین میشود.
شبکه های عصبی مصنوعی، سیستم های محاسباتی هستند که توسط شبکههای عصبی زیستی الهام گرفته شده اند که مغز حیوانات را تشکیل می دهند. منظور از يادگيري در شبکههای عصبی، تنظيم وزن ها و باياس هاي شبكه مي باشد. بر اين اساس الگوريتم هاي متفاوتي بيان شده، كه معمول ترين آنها یادگيري هب، دلتا، يادگيري رقابتي و … می باشد.
آموزش شبکه عصبی با الگوریتم رقابت استعماری ICA در متلب
همانطور که قبلاً هم اشاره شد برای تعیین وزن یال ها و بایاس ها در شبکه های عصبی می توان از الگوریتم های فرا ابتکاری استفاده کرد. از این رو در این سورس کد تعیین وزن بایاس ها و یال ها با استفاده از الگوریتم رقابت استعماری انجام پذیرفته است. برای تعیین میزان عملکرد برنامه ذکر شده از دیتاست سرطان سینه استفاده شده است که در ادامه این دیتاست تشریح شده است.
دیتاست مورد استفاده در این سورس کد
به عنوان یک نمونه دیتاست مورداستفاده مجموعه داده بیماران سرطان سینه موجود در مخزن دادهی یادگیری ماشین دانشگاه ارواین، ایالت کالیفرنیا آمریکا (University of California at Irvine) است مثال زده می شود.
در این دیتاست ویژگی ها شامل ریسک فاکتورهای ضخامت انبوه، یکنواختی اندازه سلول، یکنواختی شکل سلول، چسبندگی لبهها، حجم سلول بافت اپیتلیال، هستههای عریان، کروماتین بلاند، هسته عادی و تقسیم هسته سلول به دو قسمت میباشد که در ایالت ویسکانسین ایالاتمتحده جمعآوریشده است. جدول زیر نشاندهنده این مجموعه از داده است.
ردیف | نام ویژگی | محدوه |
---|---|---|
1 | code number | id number |
2 | Clump Thickness | 1 – 10 |
3 | Uniformity of Cell Size | 1 – 10 |
4 | Uniformity of Cell Shape | 1 – 10 |
5 | Marginal Adhesion | 1 – 10 |
6 | Single Epithelial Cell Size | 1 – 10 |
7 | Bare Nuclei | 1 – 10 |
8 | Bland Chromatin | 1 – 10 |
9 | Normal Nucleoli | 1 – 10 |
10 | Mitoses | 1 – 10 |
11 | Class | 2 for benign, 4 for malignant |
قسمت هایی از سورس کد در متلب
%% Start of Program clc clear close all warning off; N=40; max_it=100; Vmax=0.5; Vmin=-0.5; %% Input Output Data load IOdata Data = IOdata; X = Data(:,1:end-1); Y = Data(:,end); XN = X; YN = Y; %% Normalization % MinX = min(X); MaxX = max(max(abs(X))); MinY = min(Y); MaxY = max(max(Y)); % % XN=XN/MaxX; YN=floor(YN/MaxY); %% Test and Train Data NumOfInputs = size(X,2); NumOfOutputs = size(Y,2); NumOfData = size(X,1); NumOfHiddens=2*NumOfInputs+1; TrPercent = 70; DataNum = size(X,1); TrNum = round(TrPercent * DataNum/100); R = randperm(DataNum); TrInx = R(1:TrNum); TsInx = R(TrNum+1:end); Xtr = XN(TrInx,:); Ytr = YN(TrInx,:); Xts = XN(TsInx,:); Yts = YN(TsInx,:); %% Network Training [NetworkP ,BestCostP, BestChartP] = TrainUsingICA_Fcn(Xtr,Ytr,N,max_it,NumOfInputs,NumOfHiddens ,NumOfOutputs, Vmax, Vmin); %% sim and mse YtrNetP = sim(NetworkP,Xtr')'; YtsNetP = sim(NetworkP,Xts')'; MSEtrP = mse(Ytr-YtrNetP) MSEtsP = mse(Yts-YtsNetP) [c,cm,ind,per] = confusion(Yts',YtsNetP'); figure plotconfusion(Yts',YtsNetP'); figure plotroc(Yts',YtsNetP'); figure grid on; plot(BestChartP,'r','LineWidth',2); title('Train MSE');
تصاویر خروجی
ویدئوی معرفی
درباره آموزش شبکه عصبی با الگوریتم رقابت استعماری
سورس کد آموزش شبکه عصبی با الگوریتم رقابت استعماری ICA در متلب عنوان محصولی است که در این پست به آن پرداخته شده است. محصول در نرم افزار متلب نوشته شده و برای تعیین مقادیر وزنی یال ها و بایاس ها شبکه عصبی با الگوریتم رقابت استعماری می باشد. این سورس کد بصورت کامل توسط گروه پشتیبانی پی استور تست و اجرا شده است. محصول دارای نشان تضمین کیفیت پی استور می باشد. برای دانلود محصول آن را خریداری کنید.
مباحث مرتبط در زمینه شبکه عصبی
آموزش شبکه عصبی با الگوریتم های فرا ابتکاری در متلب
تاریخ انتشار: | 23 آذر 1399 |
---|---|
تاریخ بروزرسانی: | 10 فروردین 1400 |
حجم فایل: | 10 کیلوبایت |
فرمت فایل | m. |
هماهنگی با: | متلب 2017 و بالاتر |
سفارش تدریس: | توضیحات تکمیلی |
تاکنون 326 نفر این محصول را تهیه کرده اند و 1 نظر برای آن ثبت شده است.
نظرات و دیدگاه ها
قوانین ثبت دیدگاه
- لطفاً دیدگاه های خود را فارسی تایپ کنید.
- دیدگاه های نامرتبط به مطلب تایید نخواهد شد.
- از درج دیدگاه های تکراری پرهیز نمایید.
- سوالات تخصصی خودتان را از طریق تیکت پشتیبانی مطرح کنید.
قیمت 69,000 تومان
تاریخ انتشار: | 23 آذر 1399 |
---|---|
تاریخ بروزرسانی: | 10 فروردین 1400 |
حجم فایل: | 10 کیلوبایت |
فرمت فایل | m. |
هماهنگی با: | متلب 2017 و بالاتر |
سفارش تدریس: | توضیحات تکمیلی |
1 بازخورد (مشاهده نظرات)
قیمت: 69,000 تومان
مدیریت و پشتیبانی
نظرات و پیشنهادات خود را با ما در میان بگذارید.