How can I call network
조회 수: 12 (최근 30일)
이전 댓글 표시
I am using nueral network to prdict the output of four inputs ( x1,...x4)
I need to call the netowrk from another matlab file currently i am using save and load the net but this method takes time to load the net do you know any alternative method to call the net please.
data=readmatrix( 'input.txt')
x=data(:,1:4)
y=data(:,5)
m=length(y);
Visulaisation of the data
histogram(y,10)
Normalise the features and transform the output
y2=log(1+y)
histogram(y2,10)
plot(x(:,2),y2,'o')
Normalise the input variables
for i=1:4
x2(:,i)=(x(:,i)-min(x(:,i)))/(max(x(:,i))-min(x(:,i)))
end
Train an artificial neural network (ANN)
rng default % For reproducibility
xt=x2'
yt=y2'
hiddenLayerSize=16;
net=fitnet(hiddenLayerSize)
net.divideParam.trainratio=70/100;
net.divideParam.valratio=30/100;
net.divideParam.testratio=0/100;
[net,tr]=train(net,xt,yt)
performance of N.N
yTrain=exp(net(xt(:,tr.trainInd)))-1
yTrainTrue=exp(yt(:,tr.trainInd))-1
sqrt(mean((yTrain-yTrainTrue).^2))
yVal=exp(net(xt(:,tr.valInd)))-1
yValTrue=exp(yt(:,tr.valInd))-1
sqrt(mean((yVal-yValTrue).^2))
gregnet1 = net;
save gregnet1
댓글 수: 0
채택된 답변
Jon Cherrie
2021년 5월 2일
You can use the sim function:
The sim function is usually called implicitly by calling the neural network as a function. For instance, these two expressions return the same result:
y = sim(net,x)
y = net(x)
I think for your case, you need something like this:
% Read data
data = readmatrix("new_data.txt")
x=data(:,1:4)
y=data(:,5)
% Load saved network
load gregnet
net = gregnet1;
% Evaluate network on data
xt = x.';
yhat = exp(net(xt)-1).';
% Compare predictions with new data
ytrue = y;
sqrt(mean((yhat-yTrainTrue).^2))
If you want to use the sim function instead of net(xt), then replace the "yhat =" line with
yhat = exp( sim(net,xt) - 1).';
댓글 수: 2
Jon Cherrie
2021년 5월 6일
This is an important topic and perhaps too long to cover in answer here. You might be better off with the documentation, e.g., starting from
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Deep Learning Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!