initial commit FESurrogateModelTutorial
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
# Response Surface Methodology
|
||||
|
||||
## 핵심 아이디어
|
||||
Response Surface Methodology(RSM)는 입력 변수와 응답 사이의 관계를 낮은 차수 다항식으로 근사한다. 구조해석 surrogate에서는 물리 응답이 충분히 매끄럽고 입력 범위가 좁을 때 강력한 기준선이 된다.
|
||||
|
||||
기본 2차 response surface는 다음 형태다.
|
||||
|
||||
```text
|
||||
y = beta_0 + sum beta_i x_i + sum beta_ii x_i^2 + sum beta_ij x_i x_j + epsilon
|
||||
```
|
||||
|
||||
- `x_i`: scaling된 설계변수.
|
||||
- `beta`: 회귀 계수.
|
||||
- `x_i x_j`: 변수 상호작용.
|
||||
- `epsilon`: 모델이 설명하지 못한 잔차.
|
||||
|
||||
## FEM surrogate에서의 의미
|
||||
Beam 문제에서는 `I = b h^3 / 12` 때문에 응답이 입력 변수에 대해 비선형이다. 낮은 차수 다항식은 이 관계를 완벽히 재현하지 못할 수 있지만, 다음 장점이 있다.
|
||||
|
||||
- 빠르다.
|
||||
- 계수 해석이 가능하다.
|
||||
- 적은 데이터에서도 안정적이다.
|
||||
- 복잡한 모델의 baseline으로 적합하다.
|
||||
|
||||
RSM은 특히 설계변수 범위가 좁고 응답이 단조롭고 매끄러울 때 유용하다.
|
||||
|
||||
## 구현 선택
|
||||
이 튜토리얼에서는 scikit-learn의 `PolynomialFeatures`와 `Ridge`를 조합한다.
|
||||
|
||||
```text
|
||||
StandardScaler
|
||||
-> PolynomialFeatures(degree=2, include_bias=False)
|
||||
-> Ridge(alpha=...)
|
||||
```
|
||||
|
||||
`PolynomialFeatures`는 입력 변수의 다항 조합을 만들고, `Ridge`는 L2 regularization으로 계수 크기를 제어한다. 일반 선형회귀 대신 Ridge를 쓰는 이유는 다항 feature가 늘어나면 feature 간 상관성이 커지고 계수가 불안정해질 수 있기 때문이다.
|
||||
|
||||
## Notebook 실습 포인트
|
||||
`notebooks/01_response_surface_surrogate.ipynb`는 다음을 보여준다.
|
||||
|
||||
1. 동일 FEM dataset 로드.
|
||||
2. target `tip_uy_m` 선택.
|
||||
3. degree 1, 2, 3 비교.
|
||||
4. Ridge `alpha` 변화에 따른 train/test error 비교.
|
||||
5. parity plot과 residual plot.
|
||||
6. 다항 feature 이름과 계수 크기 해석.
|
||||
|
||||
## 장점
|
||||
- 학습과 예측이 매우 빠르다.
|
||||
- 작은 데이터에서 baseline으로 좋다.
|
||||
- 변수 간 interaction을 명시적으로 볼 수 있다.
|
||||
- extrapolation이 tree model보다 연속적이다.
|
||||
|
||||
## 한계와 실패 모드
|
||||
- 실제 응답이 강하게 비선형이면 낮은 차수 다항식으로 부족하다.
|
||||
- 높은 차수는 과적합과 수치 불안정을 만든다.
|
||||
- 입력 scaling 없이 다항 feature를 만들면 큰 단위의 변수가 학습을 지배할 수 있다.
|
||||
- 설계공간 경계 밖에서는 다항식이 물리적으로 말이 안 되는 큰 값을 낼 수 있다.
|
||||
|
||||
## 구조해석 해석 기준
|
||||
RSM이 좋은 선택인 경우:
|
||||
|
||||
- 설계변수 수가 적다.
|
||||
- 입력 범위가 좁다.
|
||||
- 응답이 매끄럽고 단조적이다.
|
||||
- 설명 가능한 surrogate가 중요하다.
|
||||
|
||||
RSM을 피해야 하는 경우:
|
||||
|
||||
- 응답에 threshold, discontinuity, contact-like behavior가 있다.
|
||||
- 입력 범위가 넓고 상호작용이 복잡하다.
|
||||
- 국소 응력 peak처럼 고차 비선형성이 크다.
|
||||
|
||||
## References
|
||||
- Box, G. E. P. and Wilson, K. B. (1951), "On the Experimental Attainment of Optimum Conditions", Journal of the Royal Statistical Society Series B. https://doi.org/10.1111/j.2517-6161.1951.tb00067.x
|
||||
- scikit-learn `PolynomialFeatures` documentation. https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.PolynomialFeatures.html
|
||||
- scikit-learn `Ridge` documentation. https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.Ridge.html
|
||||
Reference in New Issue
Block a user