RandomForestRegressor에 대한 가방 외부 오류 추정값 해석


9

내 데이터에 RandomForest 회귀자를 사용하고 있으며 oob 점수가 0.83이라는 것을 알 수 있습니다. 어떻게 이런 식으로 나왔는지 모르겠습니다. 내 목표는 10 ^ 7 범위에서 높은 값을 의미합니다. MSE라면 훨씬 더 높았을 것입니다. 0.83이 여기에서 무엇을 의미하는지 이해하지 못합니다.

sklearn 툴킷의 Python의 RandomForestRegressor를 사용하고 있습니다.

나는한다

모델 = RandomForestRegressor (max_depth = 7, n_estimators = 100, oob_score = True, n_jobs = -1) model.fit (trainX, trainY)

그런 다음 model.oob_score_를보고 0.83809026152005295와 같은 값을 얻습니다.


@ 모모. 파이썬의 sklearn.ensemble의 RandomForestRegressor를 사용하고 있습니다. 난 그냥 같은 모델을 사용합니다
user34790

답변:


6

scikit-learn은 근거리 (예 : 정확한 / 실제) 목표 값을 랜덤 포레스트에 의해 추정 된 (예측 된) 목표 값과 비교하기 위해 MSE를 사용하지 않지만 R2(예를 들면 달리 MATLAB 또는 ( Breiman의 1996b )) 당신의 코드에서 볼 수 forest.py :

self.oob_score_ = 0.0
for k in xrange(self.n_outputs_):
    self.oob_score_ += r2_score(y[:, k], predictions[:, k])
self.oob_score_ /= self.n_outputs_

r2_score()일명 결정 계수를 계산합니다 . 최고 점수가 1.0 인 R2 는 값이 낮을수록 더 나쁩니다.

참고 사항 :

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.