نمايش پست تنها
قديمي ۱۰-۲۰-۱۳۹۵, ۰۵:۱۹ بعد از ظهر   #1 (لینک دائم)
matkeston Male
عضو جدید
 
آواتار matkeston
 
تاريخ عضويت: دي ۱۳۹۵
پست ها: 0
تشكرها: 0
0 تشكر در 0 پست
پيش فرض راهنمایی در مورد نوع شبکه

سلام من یک کد شبکه عصبی دارم که میخوام تغییراتی تو اون ایجاد کنم. این تغییرات شامل نوع شبکه، تعداد لایه ها، تابع های یادگیری، آموزش و انتقال میباشد.(در ضمن کد هر نوع شبکه را پیدا کنم منظورم اینه اگه بخوام شبکه را پرسپترون بگزارم کد اون چیه ) از آنجاییکه مبتدی هستم و کدنویسی در متلب را بلد نیستم میخواستم بنده را راهنمایی کنید. کدی که من دارم در زیر آوردمش:
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]
ممنون میشم از دوستان که من را راهنمایی کنن
matkeston آفلاين است   پاسخ با نقل قول

  #ADS
نشان دهنده تبلیغات
تبليغگر
 
 
 
تاريخ عضويت: -
محل سكونت: -
سن: 2010
پست ها: -
 

نشان دهنده تبلیغات is online