confusion matrix from the classification learner app.

16 views (last 30 days)
how can i calculate metrics from the trained model with classification learner
  1 Comment
Umar
Umar on 10 Aug 2024

Hi @Alyaa,

I would use the predict function to make predictions on new data and then evaluate the model's performance using various metrics such as accuracy, precision, recall, F1-score, and confusion matrix. Please click the link below to find out more about using this function,

https://www.mathworks.com/help/stats/linearmodel.predict.html

Here is example code snippet,

% Load your trained model

load('trainedModel.mat');

% Make predictions on new data

predictions = predict(trainedModel, newData);

% Evaluate the model

metrics = confusionmat(newDataLabels, predictions);

accuracy = sum(diag(metrics)) / sum(metrics, 'all');

precision = metrics(2,2) / sum(metrics(:,2));

recall = metrics(2,2) / sum(metrics(2,:));

f1Score = 2 * (precision * recall) / (precision + recall);

disp(['Accuracy: ', num2str(accuracy)]);

disp(['Precision: ', num2str(precision)]);

disp(['Recall: ', num2str(recall)]);

disp(['F1-Score: ', num2str(f1Score)]);

disp('Confusion Matrix:');

disp(metrics);

So, this example code snippet first loads a pre-trained model from a file named 'trainedModel.mat'. It then uses this model to make predictions on new data, calculating metrics like accuracy, precision, recall, and F1-score based on the predictions and the true labels of the new data. Finally, it displays these metrics along with the confusion matrix to assess the model's performance.

Hope this answers your question, please let me know if you have any further questions.

Sign in to comment.

Accepted Answer

Umar
Umar on 10 Aug 2024

Hi @Alyaa,

I would use the predict function to make predictions on new data and then evaluate the model's performance using various metrics such as accuracy, precision, recall, F1-score, and confusion matrix. Please click the link below to find out more about using this function,

https://www.mathworks.com/help/stats/linearmodel.predict.html

Here is example code snippet,

% Load your trained model

load('trainedModel.mat');

% Make predictions on new data

predictions = predict(trainedModel, newData);

% Evaluate the model

metrics = confusionmat(newDataLabels, predictions);

accuracy = sum(diag(metrics)) / sum(metrics, 'all');

precision = metrics(2,2) / sum(metrics(:,2));

recall = metrics(2,2) / sum(metrics(2,:));

f1Score = 2 * (precision * recall) / (precision + recall);

disp(['Accuracy: ', num2str(accuracy)]);

disp(['Precision: ', num2str(precision)]);

disp(['Recall: ', num2str(recall)]);

disp(['F1-Score: ', num2str(f1Score)]);

disp('Confusion Matrix:');

disp(metrics);

So, this example code snippet first loads a pre-trained model from a file named 'trainedModel.mat'. It then uses this model to make predictions on new data, calculating metrics like accuracy, precision, recall, and F1-score based on the predictions and the true labels of the new data. Finally, it displays these metrics along with the confusion matrix to assess the model's performance.

Hope this answers your question, please let me know if you have any further questions.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!