강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

이선희님의 프로필 이미지
이선희

작성한 질문수

랜덤포레스트 모델만들때 max_depth 설정 여부...

작성

·

14

0

수치형 데이터 민맥스스케일링을 했는데도 값이 0.8 이하로 나와서

max_depth를 설정하니 0.8이 그나마 넘거든요

이럴때는 설정을 하는게 좋을까요 아니면 그냥 베이스로 가는것이 나을까요

 

# #모델구축하기(1)
# from sklearn.ensemble import RandomForestClassifier
# model=RandomForestClassifier(random_state=100)
# model.fit(X_tr,y_tr)
# pred=model.predict_proba(X_val)
# pred#0.7825077399380


#모델구축하기(1)
from sklearn.ensemble import RandomForestClassifier
model=RandomForestClassifier(random_state=100,max_depth=5)
model.fit(X_tr,y_tr)
pred=model.predict_proba(X_val)
pred #0.8123839009287926)

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

이선희님께서는 랜덤 포레스트 모델의 max_depth 설정에 관해 질문을 주셨군요. max_depth는 랜덤 포레스트 모델의 각 결정 트리의 최대 깊이를 제한하는 파라미터로, 모델의 복잡도를 조절하는 데 중요한 역할을 합니다.

특히, 모델 성능이 max_depth를 설정했을 때 더 좋다면 (예를 들어 테스트 또는 검증 데이터에서의 정확도가 높다면), max_depth를 조정하는 것이 적절할 수 있습니다. 설정하지 않으면 트리가 너무 깊어져 과적합이 발생할 수 있으며, 설정한 경우에는 모델의 복잡도를 줄여 과적합을 줄일 수 있습니다.

결론적으로: 머신러닝 모델의 성능은 데이터와 문제에 따라 다를 수 있으므로 다양한 max_depth 값을 시도하여 최적의 값으로 설정하는 것이 좋습니다. 교차 검증을 통해 설정된 파라미터가 일반화 성능을 높이는지 확인하세요.

추가적으로, 여러 max_depth 값을 시도하며 그에 따른 모델 성능을 평가하고 기록하는 방법도 추천드립니다.

도움이 되셨기를 바랍니다!

참고 URL: Scikit-learn RandomForestClassifier documentation

이선희님의 프로필 이미지
이선희

작성한 질문수

질문하기