2013-03-17 2 views
1

R에서 예측을 위해 GBM 패키지를 사용하고 있습니다. Traning은 합당한 오류율로 매우 잘 작동하지만, 학습 세트에서 예측을 실행하려면 새로운 차원의 요인 변수 나는 다음과 같은 오류 얻었다 포함 :변수에 대한 새로운 레벨의 경우 R에서의 예측 오류

gbm1 <- gbm(SalePrice ~., data=bb,distribution="gaussian",n.trees=7000,cv.folds=3,shrinkage=0.001,interaction.depth=4) 

    f.predict <- exp(predict.gbm(gbm1,data.frame(bbv),n.trees=7000)) 
     Error in predict.gbm(gbm1, data.frame(bbv), n.trees = 7000) : 
      New levels for variable <and the name of the levels are listed> 

오류 텍스트를 검색하는 시도를하지만 단지 GBM 코드 자체 발견 (

어떤 제안이 감사를

+1

오류가 명확합니다 (변수 이름을 알려주기 전에 잘라낸 이유도 모르겠지만). gbm.predict에 부여한 새 데이터에 새로운 수준이 있습니다. – agstudy

답변

4

I를! 익숙하지 않아. GBM 패키지를 사용하지만 예측 데이터에 이전에 알려지지 않은 수준이 포함되어있는 경우 GBM이 모델에서 예측을 처리 할 수 ​​없다는 오류가 발생합니다. 배후의 이론적 근거는 모델이 훈련 된 데이터 클래스에 대해서만 말할 수 있다는 것입니다. 단순 선형 모델의 경우 모델 a~b (ab에 종속 됨)을 사용하여 새로운 변수 b가 포함 된 데이터 (예 : a~b+c)를 예측할 수는 없습니다. 이 모델에는 b+c에 대한 숙련 된 동작이없고 b에 대해서만 동작합니다.

관련 문제