在R中,包功能probability=TRUE
中的svm
功能是e1071
什么?
model <- svm (Type ~ ., data, probability=TRUE, cost = 100, gamma = 1)
对于模型拟合和预测,将probability
参数设置TRUE
为,对于每次预测都会返回属于每个响应变量类别的概率向量。这些作为预测对象的属性存储在矩阵中。
例如:
library(e1071)
model <- svm(Species ~ ., data = iris, probability=TRUE)
# (below I'm just predicting to the training dataset - it could of course just
# as easily be a separate test dataset)
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
但是请注意,设置probability=TRUE
对的调用非常重要svm
,而不仅仅是对的调用predict
,因为仅后者会产生:
# setosa versicolor virginica
# 1 0.3333333 0.3333333 0.3333333
# 2 0.3333333 0.3333333 0.3333333
# 3 0.3333333 0.3333333 0.3333333
# 4 0.3333333 0.3333333 0.3333333
# 5 0.3333333 0.3333333 0.3333333
# 6 0.3333333 0.3333333 0.3333333
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句