How can I change the properties of a classification model template?
4 次查看(过去 30 天)
显示 更早的评论
I want to programmatically change the properties of an existing classification model template. This would be useful in a parameter tuning task.
% for example lets create an SVM template
modelTemplate = templateSVM('KernelFunction', 'linear', 'KernelScale', 1,'BoxConstraint', 1, 'Standardize', 0);
disp(modelTemplate) % it is possible to see the properties in the command window
modelTemplate.BoxConstraint = 100; %but if I am trying to read or change one of the properties I get the following messages:
No public property BoxConstraint exists for class classreg.learning.FitTemplate.
Error in classreg.learning.internal.DisallowVectorOps/subsasgn (line 33) [varargout{1:nargout}] = builtin('subsasgn',this,s,data);
No appropriate method, property, or field 'BoxConstraint' for class 'classreg.learning.FitTemplate'.
Error in classreg.learning.internal.DisallowVectorOps/subsref (line 21) [varargout{1:nargout}] = builtin('subsref',this,s);
0 个评论
采纳的回答
Ilya
2016-6-15
modelTemplate.ModelParams.BoxConstraint = 100;
This is undocumented and can change in a future release.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Statistics and Machine Learning Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!