R 度量精度不适用于回归模型
我试图用机器学习研究我的R模型。培训模式在总体上效果不佳R 度量精度不适用于回归模型,r,R,我试图用机器学习研究我的R模型。培训模式在总体上效果不佳 # # Logistic regression multiclass for (i in 1:30) { # split data into training/test trainPhyIndex <- createDataPartition(subs_phy$Methane, p=10/17,list = FALSE) trainingPhy <- subs_phy[trainPhyIndex,] tes
# # Logistic regression multiclass
for (i in 1:30) {
# split data into training/test
trainPhyIndex <- createDataPartition(subs_phy$Methane, p=10/17,list = FALSE)
trainingPhy <- subs_phy[trainPhyIndex,]
testingPhy <- subs_phy[-trainPhyIndex,]
# Pre-process predictor values
trainXphy <- trainingPhy[,names(trainingPhy)!= "Methane"]
preProcValuesPhy <- preProcess(x= trainXphy,method = c("center","scale"))
# using boot to avoid over-fitting
fitControlPhyGLMNET <- trainControl(method = "repeatedcv",
number = 10,
repeats = 4,
savePredictions="final",
classProbs = TRUE
)
fit_glmnet_phy <- train (Methane~.,
trainingPhy,
method = "glmnet",
tuneGrid = expand.grid(
.alpha =0.1,
.lambda = 0.00023),
metric = "Accuracy",
trControl = fitControlPhyGLMNET)
pred_glmnet_phy <- predict(fit_glmnet_phy, testingPhy)
# Get the confusion matrix to see accuracy value
u <- union(pred_glmnet_phy,testingPhy$Methane)
t <- table(factor(pred_glmnet_phy, u), factor(testingPhy$Methane, u))
accu_glmnet_phy <- confusionMatrix(t)
# accu_glmnet_phy<-confusionMatrix(pred_glmnet_phy,testingPhy$Methane)
glmnetstatsPhy[(nrow(glmnetstatsPhy)+1),] = accu_glmnet_phy$overall
}
glmnetstatsPhy
我不知道这个错误
我还附上了马坦的类型
尝试规范化输入列并将输出列映射为因子。这帮助我解决了一个类似的问题。尝试规范化输入列,并将输出列映射为因子。这帮助我解决了一个类似的问题。该错误可能意味着您的目标变量是数字,导致
glmnet()
在您将度量设置为“精度”(不适用于回归)时运行回归模型“准确度”是分类模型的一个指标。您希望“甲烷”是什么类型的变量?它是连续的还是一个因素?基于您对混淆矩阵的需求,我假设您希望它成为一个因子变量,以便glment()
生成一个分类(逻辑回归)算法。谢谢!变量的类型是float。这是导致错误的主要原因吗?有没有办法解决这个问题?我真的很感激。如果您预测数值(浮点)glment()
使用回归而不是分类,那么您将无法创建混淆矩阵。甲烷代表什么?你们能发布一个数据样本吗?你们制作了甲烷二进制吗?就是给它一些形式的区间,把它变成一种“因子”变量,明白了。我正在尝试创建一个分类,并将甲烷转换成二进制。非常感谢你。我还尝试使用RMSE
来代替accurity
。是否有任何函数或命令有助于评估算法。我的意思是我们可以使用confusionMatrix
来评估算法的metric='accurity'
。我想知道是否有任何函数可以用于使用metric='RMSE'
评估算法?该错误可能意味着您的目标变量是数字,导致glmnet()
在您将度量设置为不适用于回归的“准确性”时运行回归模型“准确度”是分类模型的一个指标。您希望“甲烷”是什么类型的变量?它是连续的还是一个因素?基于您对混淆矩阵的需求,我假设您希望它成为一个因子变量,以便glment()
生成一个分类(逻辑回归)算法。谢谢!变量的类型是float。这是导致错误的主要原因吗?有没有办法解决这个问题?我真的很感激。如果您预测数值(浮点)glment()
使用回归而不是分类,那么您将无法创建混淆矩阵。甲烷代表什么?你们能发布一个数据样本吗?你们制作了甲烷二进制吗?就是给它一些形式的区间,把它变成一种“因子”变量,明白了。我正在尝试创建一个分类,并将甲烷转换成二进制。非常感谢你。我还尝试使用RMSE
来代替accurity
。是否有任何函数或命令有助于评估算法。我的意思是我们可以使用confusionMatrix
来评估算法的metric='accurity'
。我想知道有没有什么函数可以用metric='RMSE'
来评估算法?
Metric Accuracy not applicable for regression models