3

私の同僚の 1 人は、randomForest()非常に大きなデータ セットではうまく機能しないことを示しました。今、私はそれが本当かどうかを調べようとしていますが、データセットは共有できないため (機密情報)、大きなデータセットを考えてみようと思いました. 私は以下を試しましたが、エラーメッセージを理解できません:

library(randomForest)
data(iris)
dataFile <- iris
newdataFile <- dataFile[sample(dataFile, size= 1:1000000000, replace=T),]

エラーメッセージ:

Error in xj[i] : invalid subscript type 'list'

誰でも私をここに案内してもらえますか?

4

2 に答える 2

2

sampleベクトルを受け入れます。data.frameからサンプリングする場合、通常、行を数値として参照することで行をサンプリングします。これはサブセット化によく似ていますが、この場合は置換されます。

newdataFile <- iris[sample(nrow(iris),100000,replace=T),]
于 2012-10-22T17:50:42.663 に答える
2

ランダム フォレストが大規模なデータセットでうまく機能しないという主張はばかげています。サンプルサイズと多変量の両方の観点から、高次元の問題に特に適しています。RF の主な問題と非常に大きな問題は、1) 扱いやすさと 2) サンプルのバランスです。

1 つのクラスが比例して大きくなる (>30%) という問題がある場合、ブートストラップに偏りが生じ、OOB 検証と推定が正しくない可能性があります。たとえば、[0=10000,1=200] のバイナリ問題の結果は、0 までは非常に高い予測率になり、1 までは非常に低くなり、モデルの OOB エラー率は非常に高くなりますが、クラス 1 のパフォーマンスが非常に悪い。

これは明らかにモデルのパフォーマンスを代表するものではなく、クラス 1 の予測普及率は非常に低くなります。クラスのバランスの問題がある場合は、Chen et. al. (2004) または Evans & Cushman (2009)。

Chen C、Liaw A、Breiman L (2004) ランダム フォレストを使用した不均衡なデータの学習。http://www.stat.berkeley.edu/tech-reports/666.pdf

Evans, JS and SA Cushman (2009) ランダム フォレストを使用した針葉樹種の勾配モデリング。景観生態学 5:673-683。

于 2012-10-22T20:12:04.830 に答える