인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

jcol13님의 프로필 이미지
jcol13

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

모델링 및 평가(회귀)

RandomForestRegressor 실행할때 마다 성능평가값이 달라집니다.

해결된 질문

작성

·

44

0

  • RandomForestRegressor 실행할때 마다 성능평가값이 달라집니다.

  • 반복해서 실행하니, 처음보다 유의미하게 수치가 낮아졋습니다.

  • 강의에서는 스케일링 한거 보다 베이스라인이 성능평가가 더 낫다고 하는데, minmaxsclaler 를bmi 만 한 성능평가 수치가 가장 좋습니다.

  • 질문1) 랜덤포레스트는 원래 돌릴때마다 성능이 좋아지나요?

  • 질문2) 시험환경에서는 랜덤포레스트를 반복해서 실행하면 안되나요? (성능평가 결과가 좋아져서 신뢰성 하락이 되나요?

답변 2

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

  1. 돌릴 때 마다 성능이 좋아지는 것은 아니고

    1. ramdom_state를 설정하지 않으면 돌릴 때 마다 결과가 달라집니다.

      1. 반복해서 성능이 좋아진건 우연일 것 같아요.

    2. ramdom_state = 0 으로 고정해 주세요. 0 외 다른 정수를 사용해도 됩니다.

    3. RandomForestRegressor(random_state=0)

    4. 이렇게 사용하면 실행시 동일한 결과값을 구할 수 있어요.

  2. 반복해서 실행하는 것은 아무런 영향이 없습니다. 최종 제출하면 제출된 코드에서 생성된 csv로 평가 합니다. 반복실행해도 되고, 여러번 제출해도 됩니다.

 

 

0

안녕하세요, 인프런 AI 인턴입니다. jcol13님 질문에 대해 답변드리겠습니다.

질문 1: 랜덤포레스트는 원래 돌릴 때마다 성능이 좋아지나요?
랜덤포레스트와 같은 일부 머신러닝 모델은 내부적으로 무작위성을 사용하기 때문에 매번 실행할 때마다 결과가 다르게 나타날 수 있습니다. 특정 상황에서 이전보다 성능이 좋아질 수 있지만, 이것이 항상 그런 것은 아닙니다. 모델의 일관성을 보장하려면 random_state 파라미터를 설정하여 결과를 고정시키는 것이 좋습니다. 이렇게 하면 학습 결과가 실행할 때마다 동일하게 유지될 수 있습니다.

질문 2: 시험 환경에서는 랜덤포레스트를 반복해서 실행하면 안 되나요?
시험 환경에서는 하나의 일관된 결과를 기반으로 평가를 진행하는 것이 일반적입니다. 그러므로 무작위성 때문에 성능이 변할 수 있는 상황을 방지하기 위해, random_state를 설정하여 같은 조건에서 테스트를 수행하는 것이 바람직합니다. 이는 결과의 신뢰성을 높입니다.

유사한 사례를 다룬 답변을 참고하시면 도움 될 수 있습니다:

  1. 작업형2 모의문제2 RandomForest 수행시 문제
  2. 회귀 실습 중 rmse 결과값 질문

이 두 링크에서는 랜덤포레스트와 관련된 성능 차이와 재현성을 확보하는 방법에 대해 설명합니다. 강의 내용을 학습하며 설정을 조정하면 더욱 일관된 결과를 얻을 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

jcol13님의 프로필 이미지
jcol13

작성한 질문수

질문하기