机器学习模型训练集验证集校准曲线R软件代码
时间: 2024-12-06 07:24:37 浏览: 17
在R语言中,机器学习模型训练、验证和评估过程中常常会涉及到绘制校准曲线(Calibration Curve)。校准曲线有助于我们了解模型的预测概率是否准确反映了实际结果的概率分布。以下是创建校准曲线的基本步骤:
1. **加载必要的库**:
```r
library(caret)
library(ggplot2)
```
2. **准备数据**:
确保你有一个包含训练集和测试集的数据框,并且已经对分类变量进行了编码(例如,二元分类可以用0和1表示)。
3. **拟合模型**:
```r
model <- train(target_variable ~ ., data = training_set, method = "glm", family = "binomial")
```
这里`training_set`是训练数据集,`target_variable`是需要预测的目标。
4. **创建概率预测**:
```r
predictions <- predict(model, newdata = validation_set, type = "prob")
```
`validation_set`是验证集,`type="prob"`返回的是每个样本属于正类别的概率。
5. **计算校准曲线**:
```r
calibration <- calibration(predictions[,2], validation_set$target_variable)
```
`predictions[,2]`指正类概率列,`validation_set$target_variable`是真实标签。
6. **绘制校准曲线**:
```r
ggplot(calibration, aes(x = pred, y = obs)) +
geom_line() +
geom_abline(intercept = 0, slope = 1, color = "red") +
labs(x = "Predicted Probability", y = "Observed Probability", title = "Calibration Curve")
```
这将生成一条线图,横坐标是预测概率,纵坐标是实际发生情况的比例,红色直线代表理想状态(完美校准)。
阅读全文