我正在我的一个项目中使用插入功能"train()",我想添加一个"自定义指标"F1分数.我看了这个url 插入包 但我无法理解如何用可用参数构建这个乐谱.
有一个自定义指标的示例如下:
## Example with a custom metric
madSummary <- function (data,
lev = NULL,
model = NULL) {
out <- mad(data$obs - data$pred,
na.rm = TRUE)
names(out) <- "MAD"
out
}
robustControl <- trainControl(summaryFunction = madSummary)
marsGrid <- expand.grid(degree = 1, nprune = (1:10) * 2)
earthFit <- train(medv ~ .,
data = BostonHousing,
method = "earth",
tuneGrid = marsGrid,
metric = "MAD",
maximize = FALSE,
trControl = robustControl)
Run Code Online (Sandbox Code Playgroud)
更新:
我尝试了你的代码,但问题是它不适用于多个类,如下面的代码(显示F1分数,但它很奇怪)我不确定,但我认为函数F1_score仅适用于二进制类
library(caret)
library(MLmetrics)
set.seed(346)
dat <- iris …Run Code Online (Sandbox Code Playgroud)