20260601 TIL

2026. 6. 1. 20:18TIL

📢 오늘의 목표

🚩실전 프로젝트를 진행하면서 데이터 분석 역량을 기른다.


📅 TIL

❇️데이터 인사이트 도출

반도체 제조 공정에서 발생하는 이상(Fault)을 식별하고 이해하기 위해 EV(Etch Chamber Vision), RFM(Radio Frequency Match), OES(Optical Emission Spectroscopy) 세 가지 센서 데이터를 활용하여 분석을 수행하였다. 주요 분석 과정과 결과는 다음과 같다.


1. 데이터 로드 및 기초 탐색

  • EV, RFM, OES 데이터셋을 불러온 후 데이터 구조와 특성을 확인하였다.
  • 각 데이터셋의 변수 구성과 기본 통계 정보를 검토하여 분석 방향을 설정하였다.

2. EV 데이터 분석 (웨이퍼별 및 정상/이상 비교)

웨이퍼별 정상(Calibration) 데이터 분석

  • 정상 상태(calibration)의 EV 센서 데이터를 웨이퍼 29, 31, 33으로 구분하여 분석하였다.
  • 히스토그램과 시계열 그래프를 통해 주요 센서 변수들의 분포와 안정성을 확인하였다.

웨이퍼 간 통계적 차이 검정

  • Kruskal-Wallis H 검정을 수행한 결과, EV 변수 16개가 웨이퍼 29, 31, 33 사이에서 통계적으로 유의한 차이를 보였다.
  • 박스플롯(Box Plot)을 통해 각 웨이퍼가 서로 다른 공정 특성을 가진다는 점을 시각적으로 확인하였다.

정상(Calibration)과 이상(Fault) 상태 비교

  • 기술통계량과 히스토그램을 비교한 결과, 이상 상태에서는 여러 EV 변수들이 정상 상태와 다른 분포를 보였다.
  • 예를 들어 RF Btm Power, Cl₂ Flow, TCP Load 등의 평균값, 표준편차, 값의 범위가 변화하였다.
  • 시계열 분석을 통해 이상 발생 시 특정 변수들이 비정상적인 패턴을 보이는 것을 확인하였다.

3. Isolation Forest를 활용한 EV 데이터 이상 탐지

  • 웨이퍼 간 유의미한 차이를 보인 EV 변수들을 선택하고 정규화한 후 Isolation Forest 모델을 학습하였다.
  • 이상 점수(Anomaly Score) 분포를 확인한 결과 정상(calibration) 데이터와 이상(fault) 데이터가 비교적 잘 구분되었다.
  • 이는 EV 데이터만으로도 일정 수준의 이상 탐지가 가능함을 의미한다.

4. OES 데이터 분석

히트맵 시각화

  • 정상 상태의 OES 데이터를 시간에 따른 파장별 강도로 표현한 히트맵을 생성하였다.
  • 이를 통해 플라즈마 상태 변화에 따른 스펙트럼 패턴을 확인할 수 있었다.

평균 스펙트럼 비교

  • 정상 상태와 이상 상태의 평균 OES 스펙트럼을 비교하였다.
  • 특정 파장에서 강도 변화가 나타났으며, 이는 공정 이상 시 플라즈마 내 화학종(Chemical Species)의 변화 가능성을 시사한다.

웨이퍼별 스펙트럼 비교

  • 각 웨이퍼별 평균 스펙트럼을 비교한 결과, 웨이퍼마다 고유한 스펙트럼 특성과 이상 패턴이 존재하는 것으로 나타났다.

5. 다중 센서 상관관계 분석

  • EV, RFM, OES 변수들을 통합하여 상관관계 히트맵을 생성하였다.
  • 센서 간 상호작용을 분석함으로써 한 센서의 변화가 다른 센서와 어떤 관계를 가지는지 확인하였다.
  • 이를 통해 공정 내 복합적인 원인-결과 관계를 이해할 수 있었다.

6. PCA를 이용한 차원 축소 및 이상 심층 분석

통합 PCA 수행

  • EV, RFM, OES의 주요 수치형 변수들을 통합하여 PCA(주성분분석) 를 수행하였다.
  • 첫 번째와 두 번째 주성분(PC1, PC2)을 이용한 2차원 시각화 결과 정상 데이터와 이상 데이터 간 일부 분리가 관찰되었다.

이상 데이터 심층 분석

  • PCA 공간에서 정상 데이터 중심(Centroid)으로부터 가장 멀리 떨어진 상위 5개의 이상 데이터를 선정하였다.
  • 이들의 원본 변수값을 정상 데이터 평균과 비교하여 어떤 변수들이 이상 발생에 가장 크게 기여했는지 분석하였다.

7. 지도학습 기반 이상 분류 (MPCA Score 활용)

데이터 준비

  • EV, RFM, OES 데이터를 통합한 MPCA 점수를 입력 변수로 사용하였다.
  • 정상(calibration)은 0, 이상(fault)은 1로 인코딩하여 타깃 변수로 설정하였다.

모델 학습 및 평가

  • Random Forest Classifier를 학습하였다.
  • 정확도(Accuracy)는 약 0.91로 높게 나타났지만,
  • 이상(Fault) 클래스의 재현율(Recall)은 0.48에 불과하였다.

이는 실제 이상을 놓치는 경우(False Negative)가 많다는 의미이며, 모델 개선이 필요함을 보여준다.

개선 방안

  • SMOTE를 활용한 클래스 불균형 해소
  • 특징 공학(Feature Engineering)
  • 특징 선택(Feature Selection)

등의 방법이 제안되었다.


8. 이상치 처리 (RFM, EV, OES)

  • RFM, EV, OES 데이터의 이상치를 IQR 방식(5%~95% 구간 기준) 으로 탐지하고 상한·하한값으로 제한(Capping)하였다.
  • 이를 통해 극단값이 분석 결과와 모델 성능에 과도한 영향을 주는 문제를 완화하였다.
  • 처리 전후의 통계량을 비교하여 데이터 정제 효과를 확인하였다.

9. 웨이퍼별 데이터 분리

  • 정제된 EV, RFM, OES 데이터를 웨이퍼 29, 31, 33 기준으로 분리하였다.
  • 이후 각 웨이퍼에 대해 독립적인 분석을 수행할 수 있도록 준비하였다.

10. 다중 블록 MPCA(Multi-block PCA)

데이터 정렬

  • EV, RFM, OES 데이터의 행 수를 일치시켜 센서별 블록(Block) 형태로 구성하였다.

블록별 PCA 수행

각 센서 블록에 대해 개별 PCA를 수행하였다.

  • EV: 14개 주성분
  • RFM: 5개 주성분
  • OES: 9개 주성분

을 선택하면 전체 분산의 약 95%를 설명할 수 있었다.

또한 로딩(Loading) 분석을 통해 각 주성분에 크게 기여하는 원본 변수를 파악하였다.

MPCA 점수 생성

  • 각 블록의 주성분 점수를 결합하여 통합 MPCA Score를 생성하였다.
  • 이는 공정 상태를 종합적으로 나타내는 저차원 특징 벡터 역할을 한다.

11. MPCA 기반 이상 탐지

비지도학습 (Isolation Forest)

  • MPCA Score를 입력으로 Isolation Forest를 학습하였다.
  • 그러나 정상 데이터와 이상 데이터의 이상 점수 분포가 상당 부분 겹쳤다.

결과:

  • F1-Score: 0.0520
  • Recall: 0.0537

으로 매우 낮은 성능을 보였다.

즉, MPCA Score만으로는 비지도 방식의 이상 탐지가 효과적이지 않았다.

웨이퍼별 Isolation Forest

웨이퍼별로 모델을 개별 학습한 결과:

Wafer F1-Score Recall

29 0.1578 0.1490
31 0.1934 0.1963
33 0.1604 0.1875

전체 모델보다는 개선되었지만 여전히 실무 적용 수준에는 미치지 못하는 성능을 보였다.


최종 결론

본 연구는 EV, RFM, OES 센서 데이터를 활용하여 반도체 식각 공정의 정상 상태와 이상 상태를 다각도로 분석하였다.

분석 결과,

  • 웨이퍼별 공정 특성이 명확하게 존재함을 확인하였고,
  • EV 및 OES 데이터에서 이상 상태를 구분할 수 있는 주요 변수와 패턴을 발견하였다.
  • PCA와 MPCA를 통해 고차원 데이터를 효과적으로 축소하고 이상 원인을 해석할 수 있었다.
  • 비지도학습 기반 Isolation Forest는 이상 탐지 성능이 낮게 나타났다.
  • 반면, 특징 공학이 적용된 Random Forest 지도학습 모델이 가장 우수한 성능(F1-Score 0.2959, Recall 0.2994) 을 보였다.

따라서 향후에는 웨이퍼별 맞춤형 모델 구축, 클래스 불균형 개선(SMOTE), 추가적인 특징 공학 및 센서 융합 기법 적용을 통해 이상 탐지 성능을 향상시킬 필요가 있다.

'TIL' 카테고리의 다른 글

20260602 TIL  (1) 2026.06.02
20260529 TIL  (0) 2026.05.29
20260527 TIL  (0) 2026.05.27
20260526 TIL  (0) 2026.05.26
20260522 TIL  (0) 2026.05.22