Files
ResearchProject/FESurrogateModelTutorial/docs/theory/04_random_forest.md
T
2026-05-21 17:03:51 +09:00

3.0 KiB

Random Forest Surrogate

핵심 아이디어

Random Forest는 여러 decision tree를 bootstrap sample로 학습하고 평균하여 예측하는 ensemble 모델이다. 각 tree는 입력 공간을 여러 영역으로 나누고, 회귀 문제에서는 leaf의 평균값을 예측한다.

\hat{f}(x) = (1 / T) sum_{t=1}^{T} h_t(x)
  • T: tree 개수.
  • h_t: 개별 regression tree.

Breiman의 2001년 Random Forest 논문은 bagging과 random feature selection을 결합한 ensemble 방법을 제시했다.

FEM surrogate에서의 의미

Random Forest는 비선형성과 변수 상호작용을 명시적 feature engineering 없이 포착할 수 있다. Beam surrogate에서는 h, b, L, P, E의 비선형 영향과 interaction을 빠르게 잡는 비교 모델로 좋다.

구현 선택

이 튜토리얼에서는 scikit-learn의 RandomForestRegressor를 사용한다.

기본 설정 예:

RandomForestRegressor(
    n_estimators=300,
    max_depth=None,
    min_samples_leaf=2,
    random_state=20260521,
    n_jobs=-1
)

Tree model은 feature scaling이 필수는 아니지만, 다른 모델과 공통 전처리 구조를 설명하기 위해 입력 column 관리는 동일하게 유지한다.

Notebook 실습 포인트

notebooks/03_random_forest_surrogate.ipynb는 다음을 보여준다.

  1. 동일 dataset과 split 로드.
  2. n_estimators, max_depth, min_samples_leaf 영향 비교.
  3. test metric 계산.
  4. parity plot과 residual plot.
  5. permutation importance로 입력 변수 영향 확인.
  6. feature importance와 beam 물리 관계 비교.

장점

  • scaling에 덜 민감하다.
  • 비선형성과 interaction을 잘 포착한다.
  • outlier에 비교적 튼튼하다.
  • feature importance를 계산하기 쉽다.
  • 학습이 안정적이고 baseline으로 좋다.

한계와 실패 모드

  • 예측이 piecewise constant라 매끄러운 응답면이 필요한 경우 부자연스러울 수 있다.
  • 학습 데이터 범위 밖으로 외삽하지 못한다.
  • 물리적으로 단조여야 하는 관계를 자동으로 보장하지 않는다.
  • uncertainty는 GPR처럼 원래 제공되는 개념이 아니다.
  • feature importance는 correlated feature에서 오해될 수 있다.

구조해석 해석 기준

Random Forest가 좋은 선택인 경우:

  • 빠르고 안정적인 비선형 baseline이 필요하다.
  • 변수 중요도 분석을 보고 싶다.
  • 데이터가 중간 규모 이상이다.
  • target이 매끄러운 global response다.

주의할 경우:

  • 설계 최적화에서 매끄러운 gradient-like response가 필요하다.
  • 외삽이 필요하다.
  • 응답면의 국소 smoothness가 중요하다.

References