gpt4 book ai didi

r - 如何在 R 中使用 libSVM(包 e1071)获得概率?

转载 作者:行者123 更新时间:2023-11-30 09:10:47 25 4
gpt4 key购买 nike

我正在尝试在 libSVM(R 中的包 e1071)中获取概率输出,但对于我的数据集,输出只有 TRUE 或 FALSE。

按照代码操作:

dadosBrutos<-read.csv("Dataset/circle.data",header = FALSE)


svm.modelo <- svm(V3 ~ .,
data=conjuntoTreinamento,
type='C-classification',
probability=TRUE)
#cost=c,
#type='C-classification',
#kernel='linear',
#scale=FALSE,
#verbose=FALSE
svm.predict <- predict(svm.modelo,
subset(conjuntoTreinamento,
select = -V3),
probability=TRUE)

posterior <- as.matrix(svm.predict)

但是,例如,当我使用数据集 Iris 时,概率输出是 % 而不是类名称。

library(e1071)

model <- svm(Species ~ ., data = iris, probability=TRUE)
pred <- predict(model, iris, probability=TRUE)
head(attr(pred, "probabilities"))

# setosa versicolor virginica
# 1 0.9803339 0.01129740 0.008368729
# 2 0.9729193 0.01807053 0.009010195
# 3 0.9790435 0.01192820 0.009028276
# 4 0.9750030 0.01531171 0.009685342
# 5 0.9795183 0.01164689 0.008834838
# 6 0.9740730 0.01679643 0.009130620

有人可以帮助我理解这一点吗?

最佳答案

您必须从属性中提取它:

attr(svm.predict, "概率")

参见: https://stat.ethz.ch/pipermail/r-help/2006-February/088476.html

关于r - 如何在 R 中使用 libSVM(包 e1071)获得概率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39104541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com