Artificial Intelligence - هوش مصنوعی

Artificial Intelligence - هوش مصنوعی (http://artificial.ir/intelligence/)
-   شبکه های عصبی (Neural Networks) (http://artificial.ir/intelligence/forum10.html)
-   -   راهنمایی در مورد نوع شبکه و اصلاح کد (http://artificial.ir/intelligence/thread14815.html)

matkeston ۱۰-۲۰-۱۳۹۵ ۰۵:۲۰ بعد از ظهر

راهنمایی در مورد نوع شبکه و اصلاح کد
 
سلام من یک کد شبکه عصبی دارم که میخوام تغییراتی تو اون ایجاد کنم. این تغییرات شامل نوع شبکه، تعداد لایه ها، تابع های یادگیری، آموزش و انتقال میباشد.(در ضمن کد هر نوع شبکه را پیدا کنم منظورم اینه اگه بخوام شبکه را پرسپترون بگزارم کد اون چیه ) از آنجاییکه مبتدی هستم و کدنویسی در متلب را بلد نیستم میخواستم بنده را راهنمایی کنید. کدی که من دارم در زیر آوردمش:
clc
clear
close all
%% Data Loading
X = xlsread('model.xlsx');


Y = xlsread('istgah.xlsx');

DataNum = size(X,1);
InputNum = size(X,2);
OutputNum = size(Y,2);

%% Normalization
MinX = min(X);
MaxX = max(X);
% MinX = [1 .5 50 .4 2 .5];
% MaxX = [100 7 600 .8 15 2];

MinY = min(Y);
MaxY = max(Y);

XN = X;
YN = Y;

for ii = 1:InputNum
XN(:,ii) = Normalize_Fcn(X(:,ii),MinX(ii),MaxX(ii));
end

for ii = 1:OutputNum
YN(:,ii) = Normalize_Fcn(Y(:,ii),MinY(ii),MaxY(ii));
end

%% Test and Train Data
TrPercent = 80;
TrNum = round(DataNum * TrPercent / 100);
TsNum = DataNum - TrNum;

R = randperm(DataNum);
trIndex = R(1 : TrNum);
tsIndex = R(1+TrNum : end);

Xtr = XN(trIndex,:);
Ytr = YN(trIndex,:);
Xtr1 = X(trIndex,:);
Ytr1 = Y(trIndex,:);

Xts = XN(tsIndex,:);
Yts = YN(tsIndex,:);
Xts1 = X(tsIndex,:);
Yts1 = Y(tsIndex,:);

%% Network Structure
pr = [-1 1];
PR = repmat(pr,InputNum,1);

Network = newff(PR,[6 OutputNum],{'tansig' 'tansig' 'tansig'});

%% Training
Network = train(Network,Xtr',Ytr');
% save('Network.mat','Network');
% load Network1
%% Assesment
YtrNet = sim(Network,Xtr')';
YtsNet = sim(Network,Xts')';

Min = min(Y);
Max = max(Y);
MinX = -1;
MaxX = 1;

YtrNet = (YtrNet - MinX) / (MaxX - MinX)* (Max-Min) + Min;
YtsNet = (YtsNet - MinX) / (MaxX - MinX)* (Max-Min) + Min;
Ytr = (Ytr - MinX) / (MaxX - MinX)* (Max-Min) + Min;
Yts = (Yts - MinX) / (MaxX - MinX)* (Max-Min) + Min;


format short
MinX = min(YtrNet);
MaxX = max(YtrNet);
O = (YtrNet - MinX) / (MaxX - MinX) * (max(Ytr1) - min(Ytr1)) + min(Ytr1);
clc
diary('OutputTrain.txt')
disp([Xtr1 O]);
disp('-------------------------');
diary off
clc

MinX = min(YtsNet);
MaxX = max(YtsNet);
O = (YtsNet - MinX) / (MaxX - MinX) * (max(Yts1) - min(Yts1)) + min(Yts1);
diary('OutputTest.txt')
disp([Xts1 O]);
disp('-------------------------');
diary off
clc

MSEtr = mse(YtrNet - Ytr)
MSEts = mse(YtsNet - Yts)[/LEFT]
ممنون میشم از دوستان که من را راهنمایی کنن


زمان محلي شما با تنظيم GMT +3.5 هم اکنون ۰۲:۱۳ قبل از ظهر ميباشد.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.