Kaggle Machine Learning: Random Forests

daeungdaeung·2021년 6월 27일
0

Introduction

Overfitting과 Underfitting을 해결하기 위한 수많은 아이디어가 있습니다.

이번 장에서는 Decision Tree를 활용한 모델의 성능을 높여주는 Random Forest에 대하여 살펴보겠습니다.

Random Forest

  • Single Decision Tree model보다 성능이 더 좋습니다.

  • default parameters를 활용해도 잘 동작합니다.

Example

DecisionTreeRegressor 대신 Random Forest를 활용합니다.

from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_absolute_error

forest_model = RandomForestRegressor(random_state=1)
forest_model.fit(train_X, train_y)
melb_predis = forest_model.predict(val_X)
print(mean_absolute_error(val_y, melb_preds))

Conclusion

Single Decision Tree의 경우 가장 성능이 좋은 leaf nodes 수를 찾아서 정해줬습니다.

하지만 Random forest의 경우 parameter를 정해줄 수 있긴하지만, 굳이 정하지 않고 그대로 사용하여도 일반적으로 잘 동작합니다.

Exercise

Step 1: Use a Random Forest

from sklearn.ensemble import RandomForestRegressor

rf_model = RandomForestRegressor(random_state=1)

rf_model.fit(train_X, train_y)

rf_val_pred = rf_model.predict(val_X)
rf_val_mae = mean_absolute_error(rf_val_pred, val_y)
profile
개발자가 되고싶읍니다...

0개의 댓글