4

回帰にランダムフォレストを使用しようとしました。元のデータは 218 行 9 列のデータ フレームです。最初の 8 列はカテゴリ値 (A、B、C、または D のいずれか) で、最後の列 V9 には 10.2 から 999.87 までの数値があります。

元のデータの 2/3 を表し、ランダムに選択されたトレーニング セットでランダム フォレストを使用すると、次の結果が得られました。

>r=randomForest(V9~.,data=trainingData,mytree=4,ntree=1000,importance=TRUE,do.trace=100)
       |      Out-of-bag   |
  Tree |      MSE  %Var(y) |
   100 | 6.927e+04    98.98 |
   200 | 6.874e+04    98.22 |
   300 | 6.822e+04    97.48 |
   400 | 6.812e+04    97.34 |
   500 | 6.839e+04    97.73 |
   600 | 6.852e+04    97.92 |
   700 | 6.826e+04    97.54 |
   800 | 6.815e+04    97.39 |
   900 | 6.803e+04    97.21 |
  1000 | 6.796e+04    97.11 |

分散パーセンテージが高いということは、モデルが優れていることを意味するのかどうかはわかりません。また、MSE が高いので、回帰モデルがあまり良くないのではないかと思います。上記の結果を読み取る方法について何か考えはありますか? モデルが良くないということですか?

4

1 に答える 1

10

@Joranが言ったように、 %Var は、ランダムフォレストモデルによって説明される Y の合計分散の量です。調整後、モデルを検証データに適用します (残りの 1/3)。

RFestimated = predict(r, data=ValidationData)

残差を確認することも興味深いです。

qqnorm((RFestimated - ValidationData$V9)/sd(RFestimated-ValidationData$V9))

qqline((RFestimated-ValidationData$V9)/sd(RFestimated-ValidationData$V9))

推定値と観測値:

plot(ValidationData$V9, RFestimated)

と RMSE:

RMSE <- (sum((RFestimated-ValidationData$V9)^2)/length(Validation$v9))^(1/2)

これが助けになることを願っています!

于 2013-05-14T17:26:25.637 に答える