簡體   English   中英

SVM 中預測模型和測試集數據的不同元組數

[英]Different no of tuples for the prediction model and test set data in SVM

我有一個包含兩列的數據集,如下所示,其中第 1 列,時間戳是時間的特定值,其中 Column.10 給出了該時間實例的總用電量。 該數據共有 81502 個實例。

我正在使用 e1071 包對 R 中的這些數據進行支持向量回歸,以預測未來的電源使用情況。 代碼如下。 我首先將數據集分為訓練數據和測試數據。 然后使用訓練數據使用 svm 函數對數據進行建模,然后預測測試集的功耗。

    library(e1071)
    attach(data.csv)
    index <- 1:nrow(data.csv)
    testindex <- sample(index,trunc(length(index)/3))
    testset <- na.omit(data.csv[testindex, ])
    trainingset <- na.omit(data.csv[-testindex, ])
    model <- svm(Column.10 ~ timestamp, data=trainingset)
    prediction <- predict(model, testset[,-2])
    tab <- table(pred = prediction, true = testset[,2])

但是,當我嘗試根據預測制作混淆矩陣時,出現錯誤:

    Error in table(pred = prediction, true = testset[, 2]) : all arguments must have the same length

所以我試圖找到兩個參數的長度,發現

    the length(prediction) to be 81502
    and  the length(testset[,2]) to be 27167

由於我只對測試集做了預測,所以我不知道如何對 81502 個值進行預測。 預測和測試集的值總數有何不同? 即使我只為測試集提供了整個數據集的功效值,它是如何得到預測的?

改變

prediction <- predict(model, testset[,-2]) 

prediction <- predict(model, testset)

但是,在進行回歸時不應使用表,而應使用 MSE。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM