2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Помогите пожалуйста с матлабом!!
Сообщение06.03.2018, 15:55 


06/03/18
1
Код:
clear
% точность
b=10000;
while b > 4
% число слоев
m=4
% число входов
n=4
% число нейронов на слое m-1
k=3
% число нейронов на слое m-2
v=1
net=network;
net.numInputs=n;
net.numLayers=m;
%матрица связности смещений [m x 1]
C(1:m,1)=0
C(1:m-1,1)=1
net.biasConnect=C;
%матрица связности входов [m x n]
D(1:m,1:n)=0
D(1:1,1:n)=1
net.inputConnect=D;
% матрица связности слоев [m x m]
G(1:m,1)=1
X = diag(G,-1)
X( :, m+1)=[]
X(m+1, :)=[]
net.layerConnect=X;
%матрица связности для выходов [1 x m]
F(1,1:m)=1
F(1,1:m-1)=0
net.outputConnect=F;
%матрица связности для целей [1 x m]
net.targetConnect=F;
%функция инициализации слоя
net.layers{1}.initFcn='initnw';
net.layers{2}.initFcn='initnw';
net.layers{3}.initFcn='initnw';
net.layers{4}.initFcn='initnw';
%функция активации слоя
net.layers{1}.transferFcn='logsig';
net.layers{2}.transferFcn='logsig';
net.layers{3}.transferFcn='logsig';
net.layers{4}.transferFcn='purelin';
%размер слоя
net.layers{4}.size=1;
net.layers{3}.size=v;
net.layers{2}.size=k;
net.layers{1}.size=4;
%определяем будет ли матрица весов к i-му слою
%от j-го слоя изменена в процессе обучения и адаптации.
%устанавливается в 1 или 0, разрешая или запрещая модификацию весов в
%процессе обучения
net.layerWeights{1,2}.learn=1;
net.layerWeights{2,3}.learn=1;
net.layerWeights{3,4}.learn=1;
net.initFcn='initlay';
%критерий средней ошибки
net.performFcn='mse';
%функция обучения
net.trainFcn='trainlm';
%заданое количество циклов обучения
net.trainParam.epochs=1000;
%целевая ошибка обучения
net.trainParam.goal=0.0001;
% матрицы весов связей между слоями
A(1:k,1:n)=0.5
net.LW{2,1}=A;
B(1:v,1:k)=0.5
net.LW{3,2}=B;
V(1:1,1:v)=0.5
net.LW{4,3}=V;
%описатель матрицы весов для входа 1 на слое 1
L(1:m,1)=0
%L(1,1:m-1)=0
net.IW{1,1}=L;
%описатель матрицы весов для входа 2 на слое 1
M(1:m,1)=0.5
net.IW{1,2}=M;
%описатель матрицы весов для входа 3 на слое 1
U(1:m,1)=0.5
net.IW{1,3}=U;
%описатель матрицы весов для входа 4 на слое 1
Q(1:m,1)=0.5
net.IW{1,4}=Q;
%инициализация НС
net=init(net);
%исходные данные
%матрица входных данных (ввод из пакета Excel)
p=[0.795 0.21 0.0017 0.22; ...
0.827 0.16 0.0021 0.22; ...
0.816 0.09 0.0039 0.22; ...
0.849 0.06 0.0061 0.22; ...
0.851 0.04 0.0101 0.22; ...
0.750 0.14 0.0024 0.22; ...
0.743 0.16 0.0099 0.22];
p=p';
%матрица выходных данных (ввод из пакета Excel)
t=[6.27 5.66 3.87 5.42 7.84 2.44 3.87];
%обучение НС
[net, tr]=train(net, p, t);
y=sim(net,p);
y
%матрица для проверки результатов
p1=[k];
p1=p1'
y1=sim(net,p1);
b=y1
end
b

Пишет вот такую ошибку ,не знаю как ее исправить
Error using network/subsasgn>network_subsasgn (line 551)
net.IW{1,1} must be a 4-by-0 matrix.

Error in network/subsasgn (line 11)
net = network_subsasgn(net,subscripts,v,netname);

Error in Untitled3 (line 77)
net.IW{1,1}=L;

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group