MATLAB中的confusionmat函数的用法,试举例说明
时间: 2024-12-19 17:25:55 浏览: 4
`confusionmat`是MATLAB中用于计算分类混淆矩阵的一个函数。它通常用于评估分类算法的性能,尤其是在二分类或多分类任务中。混淆矩阵是一个表格,展示了真实类别(纵轴)和预测类别(横轴)之间的对应情况。
基本用法如下:
```matlab
[TP, FP, TN, FN] = confusionmat(true_labels, predicted_labels);
```
这里,`true_labels`是实际标签数组,`predicted_labels`是模型预测的标签数组。函数会返回四个元素:
- `TP`(True Positive):真正例,即实际为正例且被正确识别为正例的样本数。
- `FP`(False Positive):假正例,即实际为负例但被错误地预测为正例的样本数。
- `TN`(True Negative):真负例,即实际为负例且被正确识别为负例的样本数。
- `FN`(False Negative):假负例,即实际为正例但被错误地预测为负例的样本数。
举个例子:
假设我们有实际的猫狗图像标签数据(1代表猫,0代表狗),以及我们的模型对这些图像的预测结果。我们可以像这样使用`confusionmat`:
```matlab
true_labels = [ones(50,1) zeros(50,1)]; % 假设前50张图是猫,后50张图是狗
predicted_labels = model.predict(image_data); % 预测结果
conf_mat = confusionmat(true_labels, predicted_labels);
```
这将生成一个4x4的矩阵,我们可以从中计算精确度、召回率、F1分数等指标来评估模型性能。
阅读全文