📅  最后修改于: 2023-12-03 15:27:43.540000             🧑  作者: Mango
混淆矩阵(Confusion Matrix)是机器学习领域中的一个重要概念,它是评估分类模型性能的一种方式。在一个混淆矩阵中,每行代表预测结果中的一个类别,每列代表实际结果中的一个类别。对角线上的数字表示分类正确的数量,非对角线上的数字表示分类错误的数量。在本文中,我们将介绍如何使用 R 编程语言自动绘制混淆矩阵。
# 导入混淆矩阵绘制库
library(caret)
# 导入数据集(iris 数据集为例)
data(iris)
# 将数据集分为训练集和测试集
set.seed(123)
trainIndex <- createDataPartition(iris$Species, p = 0.8, list = FALSE)
train <- iris[trainIndex, ]
test <- iris[-trainIndex, ]
# 训练模型
model <- train(Species ~ ., data = train, method = "knn", trControl = trainControl(method = "cv"))
# 得出测试集的预测结果
predictions <- predict(model, test)
# 生成混淆矩阵
confusionMatrix(test$Species, predictions)
第 1 行:导入 caret 库,该库包含了混淆矩阵绘制函数。
第 4 ~ 6 行:导入数据集并将数据集分为训练集和测试集。
第 9 行:训练模型。这里使用的是 k 近邻算法(k-nearest neighbors,简称 KNN),采用了交叉验证(cross-validation)的方式来选择最优的 k 值。
第 12 行:得出测试集的预测结果。
第 15 行:使用 confusionMatrix 函数生成混淆矩阵。该函数需要传入实际结果和预测结果两个参数。在本例中,我们将测试集的实际结果和预测结果作为参数传入该函数。
本文介绍了如何使用 R 编程语言自动绘制混淆矩阵。混淆矩阵是评估机器学习模型性能的重要工具,希望本文能对您有所帮助。