How to implement the arguments validation in a function correctly?
Afficher commentaires plus anciens
Hello!!
I am writing a code for neural networks where the user can choose if he wants to use a filter, how many layers, the activation functions to use, etc. I wanted to set an argument validation so the only options the user can choose are already defined. I tried to write it this way but I always get an error. Any sugestion on how to fix it? Thank you!
The error i get is the following:
>> Error using cell/ismember
Input A of class double and input B of class cell must be cell arrays of character vectors, unless one is a character vector.
Error in mustBeMember (line 14)
if ~all(ismember(A, B), 'all')
Error in main (line 12)
nLayers (2,:) double {mustBeMember(nLayers,{1,2})}
>>
function main(filter,nLayers,activFunction1,activFunction2,softmax,testOrTrain)
arguments
filter (1,:) string {mustBeMember(filter,{'no','AM','BP'})}
nLayers (2,:) double {mustBeMember(nLayers,{1,2})}
activFunction1 (3,:) string {mustBeMember(activFunction1,{'-','hardlim','purelin','logsig'})}
activFunction2 (4,:) string {mustBeMember(activFunction2,{'hardlim','purelin','logsig'})}
softmax (5,:) string {mustBeMember(softmax,{1,2})}
testOrTrain (6,:) string {mustBeMember(testOrTrain,{'train','test'})}
end
... % function itself
end
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Deep Learning Toolbox dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!