Borrar filtros
Borrar filtros

Calling a Function specific from a ToolBox

29 visualizaciones (últimos 30 días)
MILLER BIGGELAAR
MILLER BIGGELAAR el 23 de Ag. de 2022
Comentada: Steven Lord el 23 de Ag. de 2022
Hi again Mathworks people. :)
I am attempting to use the function classify() from the Deep Learning Toolbox, however it seems to call instead on the Statistic and Machine Learning function with the same name.
My question is: is there a way to specify where the function/which toolbox the function is called from?
this is the function I wish to use:
this is the function it is currently calling (which I do not want to use):
Thanks in advance!
Miller

Respuesta aceptada

Steven Lord
Steven Lord el 23 de Ag. de 2022
The function you indicated you wanted to call is only called in the event that the first input argument is either "a SeriesNetwork or a DAGNetwork object". Is it? Let's see which version of the train function you're calling.
compnet = competlayer(3);
which -all train(compnet, rand(3))
/MATLAB/toolbox/nnet/nnet/@network/train.m % network method
This function returns a "Trained network, returned as a network object." A network object is neither a SeriesNetwork nor a DAGNetwork. What can you do with a network object?
methods network
Methods for class network: adapt disp genFunction init loadobj perform revert stack subsref unconfigure configure display gensim isconfigured network prune sim subsasgn train view
What happens when you try to classify a network?
which -all classify(network)
/MATLAB/toolbox/stats/stats/classify.m
If you want to use the classify function you need to work with a deep neural network, not a shallow neural network.
  2 comentarios
MILLER BIGGELAAR
MILLER BIGGELAAR el 23 de Ag. de 2022
Can you please provide some helpful links so I can begin creating an operational one?
Steven Lord
Steven Lord el 23 de Ag. de 2022
I don't know exactly what you're trying to do, so the links to the SeriesNetwork and DAGNetwork pages in the first paragraph of my answer would probably be my first stop.
Alternately look for the sub-category on the list of functions in Deep Learning Toolbox to find the one that closest describes the application you're working on (processing image data, processing time series data, approximating a function, etc.) and see if there are pretrained networks or network creation functions in that sub-category.

Iniciar sesión para comentar.

Más respuestas (2)

Chunru
Chunru el 23 de Ag. de 2022
seriesnetwork is a calss. It has a method of "classify". In order to use the method, you need to create the network and train it. Then can call classify by
classify(net, ...) % where net is the network trained
  2 comentarios
MILLER BIGGELAAR
MILLER BIGGELAAR el 23 de Ag. de 2022
Will you look at my code?
Chunru
Chunru el 23 de Ag. de 2022
You post your code to see who can help you.

Iniciar sesión para comentar.


MILLER BIGGELAAR
MILLER BIGGELAAR el 23 de Ag. de 2022
I have already, here is my code:
clear
clc
test = Iris_data;
label = zeros(150,1);
label(1:50,:) = 1;
label(51:100,:) = 2;
label(101:150,:) = 3;
test(:,5) = label;
k = randperm(150,50);
trainset = test(k(1:50),:);
trainsetlabel = test(k,5);
test(k,:) = [];
datalabel = test(:,5);
%%%%
compnet = competlayer(3);
compnet = train(compnet,trainset');
outputs = compnet(trainset');
classes = vec2ind(outputs);
testingnet = classify(compnet,test')
Attached is the data

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by