Uniform class probabilities vs. Empirical class probabilities

1 vue (au cours des 30 derniers jours)
Diver
Diver le 7 Nov 2015
Commenté : Diver le 16 Mai 2016
Hi;
I found on one Matlab example of Uniform class probabilities and Empirical class probabilities.
Empirical class probabilities is calculated as follows:
svmStruct = fitcsvm(X,Y); % X is training data and Y are classes
%%10-fold cross-validation
cvm = crossval(svmStruct);
%%Accuracy on cross-validated data
[yhatcv,S] = kfoldPredict(cvm);
% cross-validated error with empirical class probabilities
empirical_error=mean(Y~=yhatcv)
Uniform class probabilities is calculated as follows:
% cross-validated error with uniform class probabilities
uniform_error=kfoldLoss(cvm)
Could you pleas give me a formal definition of those 2 errors types?

Réponse acceptée

Ilya
Ilya le 2 Déc 2015
If you are still looking for an answer, there is only one definition for error. In each case, you form a confusion matrix and then take a weighted sum of off-diagonal elements. This code snippet should explain it:
load ionosphere
prior = [1 3]'/4;
m = fitcsvm(X,Y,'prior',prior,'kfold',5,'stand',1);
Yhat = m.kfoldPredict;
C = confusionmat(Y,Yhat,'order',m.ClassNames)
Coff = C;
Coff(1:3:end) = 0
sum(sum(Coff,2).*prior./sum(C,2))
m.kfoldLoss
  1 commentaire
Diver
Diver le 16 Mai 2016
@Ilya Thank you .. I think in this case I better use kfoldLoss error.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Statistics and Machine Learning Toolbox dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by