2013-04-05 49 views
1

我使用R的kernlab軟件包中的ksvm函數在大量觀測值(300k)上並沒有很多特徵(1-8)的情況下訓練支持向量機。我想使用結果概率模型,但對於大型數據集,所得概率模型具有意想不到的格式。在R中使用ksvm的大型支持向量機的無效概率模型

這是應該發生什麼:

n <- 1000 
df <- data.frame(label=c(rep("x",n),rep("y",n)),value=c(runif(n),runif(n)+2)) 
m <- ksvm(label~value,df,prob.model=TRUE) 

> prob.model(m) 
[[1]] 
[[1]]$A 
[1] -6.836228 

[[1]]$B 
[1] 0.003163229 

然而,對於n的大值(例如,100K;提防高內存使用情況和長執行時間的),的prob.model(m)[[1]]值是長度2n的數值向量,似乎在df每個觀察的可能性。什麼會造成這種情況?

會議信息:

R version 2.15.2 (2012-10-26) 
Platform: x86_64-unknown-linux-gnu (64-bit) 

locale: 
[1] LC_CTYPE=en_US.UTF-8  LC_NUMERIC=C    LC_TIME=en_US.UTF-8  LC_COLLATE=en_US.UTF-8  LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 LC_PAPER=C     LC_NAME=C     LC_ADDRESS=C 
[10] LC_TELEPHONE=C    LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C 

attached base packages: 
[1] graphics grDevices datasets utils  stats  methods base 

other attached packages: 
[1] kernlab_0.9-16 e1071_1.6-1  class_7.3-5  data.table_1.8.8 

loaded via a namespace (and not attached): 
[1] tools_2.15.2 

編輯:這是我說的是一個分類任務,df有以下形式:

label value 
"x" 0.21 
... 
"x" -1.20 
"y" 2.42 
... 

回答