Contents
Description of demo_multilabel_multinomial
Multilabel classification using multinomial logistic regression with and without L2 regularization
clear all close all generateData_multiLabel
usage of multilabel multinomial logistic regression
options = struct('nLabels',nLabels,... 'nClasses',max(ytrain)+1); model = ml_multilabel_multinomial(Xtrain,ytrain,options); yhatTest = model.predict(model, Xtest); yhatTrain = model.predict(model, Xtrain); testError = sum(ytest~=yhatTest)/length(ytest); model.trainError = sum(ytrain~=yhatTrain)/length(ytrain); fprintf('Averaged misclassification test error with %s is: %.3f\n',... model.name, testError); linear_makeOneContourPlot(Xtrain,ytrain, model)
Averaged misclassification test error with Multilabel Multinomial is: 0.063

usage of multilabel L2-regularized multinomial logistic regression
options = struct('nLabels',nLabels,... 'nClasses',max(ytrain)+1,... 'lambdaL2',1e-2); model = ml_multilabel_multinomial(Xtrain,ytrain,options); yhatTest = model.predict(model, Xtest); yhatTrain = model.predict(model, Xtrain); testError = sum(ytest~=yhatTest)/length(ytest); model.trainError = sum(ytrain~=yhatTrain)/length(ytrain); fprintf('Averaged misclassification test error with %s is: %.3f\n',... model.name, testError); linear_makeOneContourPlot(Xtrain,ytrain, model)
Averaged misclassification test error with Multilabel Multinomial is: 0.083
