custom regression deep learning
10 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
jaehong kim
am 10 Feb. 2021
Kommentiert: jaehong kim
am 16 Feb. 2021
Hi~
I ran into an error while doing custom regression.
In short, it is a neural network that receives 8 features as input and outputs 1 output.
My code and error are as follows.
clear,clc,close all
data=readmatrix('train.csv');
inputs=data(:,1:8);
targets=data(:,9);
input2=transpose(inputs);
target2=transpose(targets);
inputs2=normalize(input2,2,'range');
layer = mseRegressionLayer('mse');
layers = [
featureInputLayer(8,'Name','in')
fullyConnectedLayer(1,'Name','fc2')
];
lgraph=layerGraph(layers);
dlnet=dlnetwork(lgraph);
iteration = 1;
averageGrad = [];
averageSqGrad = [];
learnRate = 0.005;
gradDecay = 0.75;
sqGradDecay = 0.95;
dlX=dlarray(inputs2);
for it=1:5000
iteration = iteration + 1;
[gradient,loss]=dlfeval(@modelGradients,dlnet,dlX,target2);
[dlX,averageGrad,averageSqGrad] = adamupdate(dlX,gradient,averageGrad,averageSqGrad,iteration,learnRate,gradDecay,sqGradDecay);
if it>=4500 & mod(it,10)==0
disp(it);
end
end
function [gradient,loss]=modelGradients(dlnet,dlx,t)
out=forward(dlnet,dlx);
gradient=dlgradient(loss,dlx);
loss=mean((out-t).^2);
end
Error using dlfeval (line 43)
First input argument must be a formatted dlarray.
Error in untitled3 (line 31)
[gradient,loss]=dlfeval(@modelGradients,dlnet,dlX,target2);
Thank you for reading my question, and I hope someone who has insight will write an answer.
0 Kommentare
Akzeptierte Antwort
Iuliu Ardelean
am 10 Feb. 2021
Hey, when you call dlX=dlarray(inputs2), you should specify which dimensions are Spatial/Batch/Channel etc.
e.g.
X = randn(3,5);
dlX = dlarray(X,'SC')
SC are space and channel in this case.
Read more here:
6 Kommentare
Iuliu Ardelean
am 15 Feb. 2021
Hey I've read the question and am not sure why this happens. I will try finding what is wrong tomorrow
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Image Data Workflows finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!