Kfold remains 0 after fitting

1 view (last 30 days)
Huyen Vu
Huyen Vu on 10 Feb 2023
Commented: Huyen Vu on 6 Mar 2023
why does my kfold be set to 0 after beeing trained and set like that?
mdl = fitctree(T,"HH_kW_01",KFold=7);
mdl
%kfLoss = kfoldLoss(mdl)
display("end");
mdl =
ClassificationPartitionedModel
CrossValidatedModel: 'Discriminant'
PredictorNames: {1×62 cell}
ResponseName: 'HH_kW_01'
NumObservations: 35136
KFold: 0
Partition: [1×1 cvpartition]
ClassNames: [0 0.0049 0.0097 0.0292 0.0312 0.0321 0.0331 0.0351 0.0360 … ]
ScoreTransform: 'none'
Properties, Methods

Answers (1)

Piyush Patil
Piyush Patil on 3 Mar 2023
Hello Huyen,
It seems like the KFOLD property of your ClassificationPartitionedModel object is set to 0. Possible reasons for this to happen could be -
  1. The KFOLD argument was not correctly passed to the "fitctree" function when the model was trained. So, to ensure that the KFOLD argument was passed correctly to the "fitctree" function, you can refer to the following documentation - Fitctree Function
  2. The KFOLD property was modified after the model was trained or the model was not trained using cross-validation.
If the issue still persists, then please share the relevant code and information about data files. It will allow me to better understand the issue so that I can assist you in resolving it.
  1 Comment
Huyen Vu
Huyen Vu on 6 Mar 2023
Thanks for your answer. It's not only the problem with fitctree but also with other classifier such as fitcdiscr or fitcensemble. The issue always exists when I try to use cross validation, seems like the Kfold property was changed after beeing trained. So, about the data: 3500x64 table containing time series data about electric power consume.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!