Why is the Score Transform lost when using "saveCompactModel"?
8 ビュー (過去 30 日間)
古いコメントを表示
MathWorks Support Team
2018 年 11 月 30 日
編集済み: MathWorks Support Team
2019 年 1 月 9 日
I simply modified the MATLAB fisheriris example at:
to add "fitSVMPosterior". As you can see in this example the score transform is lost after "loadCompactModel". Is there a reason it does not save the score transform for deployment?
Code example:
load fisheriris
inds = ~strcmp(species,'setosa');
X = meas(inds,:);
Y = species(inds);
Mdl = fitcsvm(X,Y);
MdlScore=fitSVMPosterior(Mdl);
saveCompactModel(MdlScore,'SVMIris');
And then when I do this,
loadCompactModel('SVMIris')
I get the following warning message:
Warning: Unable to restore ScoreTransform property. Call
fitSVMPosterior to fit posterior probabilities.
> In classreg.learning.classif.CompactClassificationSVM.fromStruct (line 296)
In classreg.coderutils.structToModel (line 50)
In loadCompactModel (line 30)
採用された回答
MathWorks Support Team
2019 年 1 月 9 日
One of the limitations of using "saveCompactModel" to save an SVM model with capabilities to predict posterior probabilities is that "loadCompactModel" cannot restore the 'ScoreTransform' property to the MATLAB Workspace.
However, while preforming code generation, "loadCompactModel" is able to load the model along with the 'ScoreTransform' property at compile time within an entry function, and hence should function properly.
For more information on such limitations on various model objects while using "loadCompactModel", please refer to the documentation link below:
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Classification Ensembles についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!