1. 서 론
반도체의 종류는 크게 메모리 반도체, 시스템 반도체로 나뉜다. 이 중 반도체 시장에서 높은 점유율을 차지하는 것은 시스템 반도체이다. 그러나 국내 반도체 기업들은 시스 템 반도체와 관련이 있는 팹리스 분야와 파운드리 분야에서 낮은 점유율을 차지하고 있다. 또한 <Figure 1>과 같이 국내 반도체 기업들이 최근까지 시장 점유율 1위를 유지하고 있는 메모리 반도체 시장 점유율이 4.8% 감소하면서, 반도체 생산 분야의 품질 관리 및 향상이 필요한 상황이다.
반도체의 경우 복잡한 공정이 동일한 설비를 공유하며 반복되는 사이클링 공정(Re-Entrant) 데이터가 연속적으로 많이 생성되며[23, 8], 최첨단 반도체들은 일반적으로 완 성까지 600스텝 이상의 공정을 필요로 하는 것으로 알려 져 있다[16].
반도체 공정의 품질 향상 및 관리를 위해 필요한 작업 중 하나는 수율관리로[12, 18, 27], IoT를 통해 나타난 데이 터를 통해 불량품이 발생한 환경요인을 분석하여 향후 불 량을 줄이는 데 참고할 수 있다[34].
그러나 많은 데이터양에 비해 불량 데이터는 적기 때 문에[22], 불량 발생 시 나타나는 데이터의 특징을 알 수 없고 이로 인해 원인을 파악할 수 없어 불량이 반복적으로 발생할 수 있다. 이와 함께 기술적 원인을 모르는 상황에 서는 불량을 예측하는 모델을 만들어 사용하는 것이 최선 인 상황[23]임에 따라, 불량과 같은 이상을 탐지하기 위한 기계학습 모델 활용 기법에 대한 연구가 중요하다.
현재까지 반도체 공정 데이터에 대한 기계학습 모델 적 용으로 품질 관리 및 향상을 위한 이상 분류 연구가 많이 진행되고 있으나 이상 발생 원인을 탐지하여 문제를 해결 함으로써 반복적인 이상 발생을 방지하는 것이 이상 분류 보다 중요하다.
따라서 본 연구는 고차원의 반도체 공정 데이터 내 적 은 이상 데이터로도 이상의 특징을 우수하게 학습할 수 있는 기계학습 모델을 탐색하고, SMOTE 기법과 RFECV 기법을 적용하고, LIME 알고리즘을 적용하여 이상 발생 원인을 탐지하는 기법을 제시하고자 한다.
2. 이론적 배경
2.1 이상 탐지
이상은 정상의 반대 개념으로, Hawkins[14]는 이상을 다른 메커니즘으로 생성되었다는 의심이 들 정도로 다른 관찰들과 많이 다른 관찰이라고 최초로 정의하였다.
하지만 분야별 정상에 대한 정의가 다르기 때문에 이상 에 대한 정의도 분야별로 다르다[5]. 분야별 발생 및 정의 하는 이상으로 보안 분야의 컴퓨터 시스템 침입과 금융 사기, 작업환경 분야의 유해 및 위험 요인과 센서가 포착 한 비정상적 사건, 의학 및 공중보건 분야의 질병, 문자 및 영상 자료 처리 분야의 새로운 주제나 사건과 이미지 변화 및 이상한 이미지 등이 있다[5]. 기계학습 모델을 활 용한 반도체 공정 이상 탐지 관련 선행연구들은 <Table 1> 과 같다.
본 연구가 수행하고자 하는 반도체 공정 이상 탐지에 대한 연구는 작업환경 분야에 속하며, 이상은 불량 혹은 센서가 포착한 비정상적 사건으로 정의할 수 있다.
2.2 이진 분류
각 분야별로 정상과 이상을 구분해놓은 것을 라벨이라 고 하는데, 이때 라벨 정보의 유무에 따라 이상 분류 방법 은 지도 이상 분류, 준지도 이상 분류, 비지도 이상 분류로 구분할 수 있다[5]. 본 연구에서는 이진 분류 모델 중 지도 이상 분류, 준지도 이상 분류 방법을 사용하여 반도체 이 상을 탐지하고자 한다.
2.3 지도 이상 분류
지도 이상 분류는 모든 데이터에 라벨 정보가 있을 때 사용하는 방법으로, 학습 데이터로 모델을 학습시킨 뒤 시 험 데이터에 모델을 적용하여 이상 분류를 수행하는 방법 이다.
2.3.1 앙상블 모델(Ensemble Model)
앙상블 모델은 더욱 정확한 예측을 위해 여러 개의 개별 모델을 생성하고 예측 결과들을 결합한다[48]. 이러한 앙상 블 모델은 결정나무를 기반으로 하며, 결정나무는 기계학습 모델이 데이터를 학습하면서 나무 형태로 분류 규칙을 찾아 내 분류 규칙을 만드는 알고리즘을 의미한다[26].
2.3.2 Random Forest
Random Forest는 의사결정 트리의 단점을 개선하기 위 한 알고리즘 중 하나이며, Breiman[4]에 의해 처음 소개된 앙상블 기법이다[38].
여러 개의 서브 트리가 전체 데이터에서 배깅 방식으로 각 서브 트리별로 데이터 샘플링을 통해 개별적으로 학습 을 수행한 뒤 모든 서브 트리의 분류 결과를 투표하여 최 종 분류 성능을 결정하는 모델로, 수행 속도가 빠르다는 장점이 있다[26].
2.3.3 XGBoost(eXtreme Gradient Boosting)
XGBoost는 부스팅 방식으로 작동하는 GBM(Gradient Boosting Machine) 알고리즘을 기반으로 하는 나무 형태의 앙상블 모델이다. XGBoost는 빠른 수행 시간과 과적합 제 어에 뛰어나다는 장점을 가진다[49].
2.3.4 LightGBM(Light Gradient Boosting Machine)
LightGBM은 부스팅 앙상블 기법 중 하나로, XGboost의 한계점을 보완하기 위해 microsoft에서 개발한 모형이다. Ke et al.[17]에 따르면 LightGBM은 잎 분할(Leaf-wise) 방 식을 통해 높은 정확도의 모형을 만든다. LightGBM의 leaf 중심 나무 분할 구조는 나무의 깊이가 깊어질수록 비대칭 적인 규칙 노드들이 생성되는데, 이때 최대 손실값을 갖는 리프 노드를 지속적으로 분할하면서 규칙을 만들기 때문 에 분류 오류 손실을 최소화하면서 학습 시간도 줄일 수 있다[26].
2.3.5 Logistic Regression
Logistic Regression은 Cox[9]가 고안한 방법으로 정상과 이상을 0과 1로 나타내고, 각 클래스로 분류될 확률의 합 이 1이 되게끔 하는 방법이다.
선형 회귀로도 이진 분류를 수행할 수는 있으나, 그럴 경우 종속변수의 범위가 0과 1로 국한되지 않기 때문에 분류의 정확도가 떨어지게 되고 도출된 결과를 이진 분류 에 활용하기가 어렵다.
이항형 종속 변수를 갖는 Logistic Regression의 목적은 로지스틱 함수를 통해 데이터가 입력되었을 때 해당 데이 터의 결과를 0과 1 사이의 확률로 표현하고, 기존의 범주 중 하나로 분류하는 것이다[28].
Logistic Regression은 로짓 변환을 통해 수식을 선형화 시켜 종속변수를 0과 1로 분류될 수 있게끔 한다[28].
2.4 준지도 이상 분류
준지도 이상 분류는 정상 데이터에만 라벨 정보가 있고, 라벨 정보가 없는 자료에 대한 정상/이상 여부를 알 수 없 는 경우 사용하는 방법으로, 정상 데이터만 사용하여 모델 을 학습시킨 뒤 시험 데이터에 모델을 적용하여 이상 분류 를 수행하는 방법이다. 이는 모델이 정상 데이터만을 학습 하였기 때문에 정상 데이터는 확실하게 분류하지만, 이상 데이터는 그렇지 않아 모델이 분류하지 못한 데이터를 이 상 데이터로 분류하는 방식이다.
2.4.1 OneClassSVM
OneClassSVM은 Scholkopf et al.[43]이 고안한 이상 분 류 방법으로, 주어진 데이터를 공간에 매핑하면서 경계선 을 기준으로 정상과 이상을 분류한다. Scholkopf et al.[43] 에 따르면, OneClassSVM는 정상 데이터만 학습한다는 점 으로 정상 데이터만 사용하여 공 모양의 공간을 만들고 그 공간 밖의 데이터를 이상 데이터로 분류하는 방식으로 이진 분류를 수행한다. OneClassSVM을 적용한 후 도출한 결과의 예시는 <Figure 2>와 같다.
2.4.2 Isolation Forest
Isolation Forest는 Liu et al.[31]가 이상 데이터는 정상 데이터에 비해 개수가 적고 성질이 다르기 때문에 격리시 켜야 한다는 아이디어로 고안한 방법이다. Isolation Forest 는 데이터를 공간에 매핑한 후, 의사결정나무 방식으로 무 작위로 분할하면서 데이터가 격리되기까지 필요한 가지들 의 평균 길이를 이용한다. 또한 Isolation Forest는 가지들 의 평균 길이를 계산하기 위해 의사결정나무를 반복 생성 한다.
Isolation Forest는 의사결정나무 반복 생성 횟수, 가지들 의 평균 길이를 이용하여 해당 데이터의 이상 여부를 판단 하기 위해 이상 점수를 계산한다[21].
2.5 XAI(eXplainable AI)
An[2]에 따르면, 기계학습은 처리해야 할 매개변수가 많아 연산 과정이 많고 절차가 복잡하여 결정 과정 중 다 수는 내부 작업이 숨겨져 있고[40], 인간은 의사 결정 과정 을 직접적으로 이해하지 못한다. 이러한 기계학습 모델을 블랙박스라고 부르며, 다양한 분야에서 현재까지 성공적 인 성능을 보이는 기계학습 및 인공신경망 모델은 일반적 으로 정보를 제공하지 않는 블랙박스 모델이다[41]. 그러 나 많은 연구원들이 재정, 안전, 보안 등의 분야에서 결정 을 내릴 때, AI의 분석 결과를 맹목적으로 믿고 깊은 이해 없이 결과를 수용하면서 윤리 및 도덕적 문제 등이 발생할 수 있는 가능성이 높아졌다[10, 40].
XAI는 eXplainable AI의 약자로, 사람이 AI의 분석 결과 를 이해할 수 있도록 AI의 출력뿐만 아니라 출력에 대한 근거를 표현하는 AI 기법이다. XAI는 기계학습 모델에 알 고리즘을 적용하여 AI의 분석 결과를 사람이 이해할 수 있도록 해당 모델의 결과에 대한 근거를 지표 및 도표로 표현한다.
2.5.1 LIME(Local Interpretable Model-agnostic Explanation)
LIME 알고리즘은 Ribeiro et al.[39]이 고안한 인공지능 기법으로, 전체 데이터 중 하나의 데이터에 대한 블랙박스 모델의 결과 도출 과정을 분석하며 로컬 대리 분석이라고 도 불린다.
대리 분석은 구성된 블랙박스 모델이 복잡하여 분석이 불가능할 때, 유사한 기능을 수행하는 인공지능 모델을 대 리로 만들어 본래 모델을 분석하는 방법을 의미한다[2].
LIME 알고리즘은 기계학습 모델과 관계없이 입력과 출 력만으로 확인이 가능하고, 특정 샘플에 대한 설명이 쉽고 직관적인 결과 도출로 실무에 적합하며, 무게가 가볍다는 장점이 있다[44]. 본 연구는 기계학습 모델과 관계없이 적 용할 수 있고, 직관적인 결과를 도출하기 때문에 실무에 적합한 LIME 알고리즘을 사용하고자 한다. LIME 알고리 즘의 수식은 식 (1)과 같다.
손실함수 L 과 g에 대한 복잡도를 나타내는 Ω(g )를 이용 하여 블랙박스 모델인 f와 유사한 기능을 수행하도록 학습 된 인공지능 모델인 g를 찾는 방식으로 작동된다[15, 36].
3. 이상 탐지 방법론
본 연구의 주요 목적은 반복적인 이상 발생을 방지하기 위해 조치가 필요한 반도체 공정을 도출하는 모델을 제시하 는 것이다. 이를 위하여 SMOTE(Synthetic Minority Over-sampling Technique) 기법과 REECV(Recursive Feature Elimination with Cross Validation) 기법을 활용하여 가장 우수한 분류 성능을 갖는 기계학습 모델을 탐색하고 LIME 알고리즘을 통해 이상 발생에 영향을 미치는 반도체 공정을 탐지하였다.
수행 단계는 <Table 2>와 같이 데이터 수집, 데이터 전 처리, 특성 선택, 데이터 불균형 처리, 모델 적용, 모델 성 능 평가 및 비교, 이상 발생 원인 탐지 총 7단계로 이루어 지며, 오픈소스 프로그램 언어 Python 3.8.8과 구글 Colab 을 활용하였다.
3.1 데이터 수집
본 단계에서는 반도체 공정 데이터를 수집하기 위해 UCI Machine Learning Repository에서 제공하는 반도체 공정 센서 데이터[35]를 사용하였다.
3.2 데이터 전처리
본 단계에서는 결측치 처리와 스케일링을 수행한다. 실 시간 센서 기반 공정 데이터는 다수의 결측치를 포함하기 도 하며[37], 센서의 고장 및 설비 셋업, 정비 주기와 함께 측정되는 공정 데이터의 부분에서도 결측치가 존재한다 [20]. 결측치가 있을 경우, 모델에 바로 적용할 수 없다.
따라서 본 연구에서는 결측치가 50% 이상인 특성들은 완전 제거법을 적용하여 제거하고, 결측치가 50% 미만인 특성들은 Steckhoven&Buhlmann[46]이 고안한 MissForest 알고리즘을 사용하여 결측치를 대체하였다.
MissForest 알고리즘은 네 단계를 거쳐 작동되며, 각 단 계는 데이터 분할 단계, 결측치 대체 단계, 모델 학습 및 예측 단계, 결측치 대체 결과 비교 및 반복 수행 단계로 구성되어 있다.
MissForest 알고리즘은 데이터를 y_miss, x_miss, y_obs, x_obs로 분할한다. y_miss는 결측치를 의미하고, x_miss는 y_miss가 속한 행을 의미한다. y_obs는 y_miss가 있는 한 개의 특성을 의미하고, x_obs는 y_obs와 x_miss를 제외한 특성을 의미한다. <Table 3>은 MissForest 알고리즘의 프 로세스를 설명한 것이다.
본 연구에서는 데이터를 온전히 유지하면서 분류를 위 한 기계학습 모델의 학습을 용이하게 하기 위해 정규화하 는 스케일링 방법이 필요하다. 따라서 평균이 0, 표준편차 는 1이 되도록 하는 Standard Scaler을 이용하여 스케일링 을 진행하였다.
3.3 특성 선택
본 단계에서는 고차원의 방대한 양을 가진 데이터에 대 한 데이터 마이닝 및 기계학습 시 간단하고 쉬운 모델을 구축하고 데이터 마이닝의 성능을 개선하기 위해 데이터 의 특성을 줄이는 방법[29, 1]을 통해 이상 발생원인 후보 군을 추린다.
데이터의 종류에 따라 적합한 특성 선택 방법이 달라지 는데[28], 본 연구에서는 분류 문제에 대한 특성 선택에 적합한 RFE(Recursive Feature Elimination) 기법[13]에 교 차 검증을 적용한 RFECV 기법을 사용한다.
RFECV 기법은 단순히 낮은 순위의 특성들을 제거하는 것이 아니라, 교차 검증을 통해 각 특성을 분류기에 학습시 킨 후 가장 성능이 우수하게 도출된 특성들의 조합을 최종 적으로 선택하는 특성 선택 기법이다. 본 연구에서는 RFECV 기법에 층화 k-겹 교차 검증을 사용하였다. 층화 k-겹 교차 검증은 타겟 클래스의 비율과 같은 비율로 데이터 를 샘플링하여 k-겹 교차 검증을 수행하며, 데이터 불균형 상태에서 모델 성능을 평가할 때 사용되는 교차 검증이다.
3.4 데이터 불균형 처리
본 단계에서는 데이터 균형 상태를 파악하고, 훈련 데이 터 불균형 해소를 수행한다.
우선 타겟 클래스의 데이터 균형 상태 파악을 위해 막 대그래프로 데이터 분포를 시각화하였다. 데이터 균형 상 태를 파악하는 단계는 3단계로 요약되며 수행 내용은 <Table 4>와 같다.
반도체 공정 데이터는 이상 클래스의 데이터가 적기 때문 에 본 연구는 데이터를 훈련 데이터와 시험 데이터로 분리한 후 새롭게 데이터를 만들어 추가하는 오버 샘플링 기법인 SMOTE를 사용하여 훈련 데이터의 불균형을 처리하였다.
SMOTE는 소수 클래스의 일정 부분이나 전체에 대해 k-근접 이웃 알고리즘(k-NN, k-Nearest Neighbor)을 적용 하여 데이터를 생성하는 방법이다[7]. SMOTE 기법은 <Table 5>와 같이 다섯 단계에 걸쳐 작동한다.
SMOTE 기법의 수식은 식 (2)와 같다. x 는 소수 클래스 에 속하는 임의의 데이터를 의미하며, r은 0부터 1 사이의 난수, xk-n은 x 와 가장 가까운 k개의 데이터를 의미한다.
3.5 모델 적용
본 단계에서는 특성 선택을 통해 선택된 특성, 즉 이상 발생 후보군을 세 가지 이진 분류 모델(OneClassSVM 모 델, Isolation Forest 모델, Logistic Regression 모델)에 적용 하였다.
또한 특성 선택을 통해 선택된 특성들을 특성 선택 기 법(RFECV)에 적용한 세 가지 앙상블 모델들(XGBoost 모 델, LightGBM 모델, Random Forest 모델)에도 적용하여 앙상블 모델들의 분류 성능과 이진 분류 모델들의 분류 성능을 비교하였다.
또한 모델 간 공정한 성능 비교를 위해 본 연구에서는 모든 모델의 하이퍼 파라미터는 조정하지 않고 파이썬 라 이브러리에 설정된 기본값으로 적용한다.
3.6 모델 성능 평가 및 비교
본 단계에서는 모델 성능 지표들을 계산할 수 있도록 실제 데이터와 예측된 데이터를 진양성(TP), 위양성(FP), 진음성(TN), 위음성(FN)으로 구분하여 행렬 구조로 시각 화한 혼동행렬을 통해 모델의 분류 성능을 확인하였다.
혼돈행렬은 모델 성능 지표들을 계산할 수 있도록 실제 데이터와 예측된 데이터를 진양성, 위양성, 진음성, 위음 성으로 구분하여 행렬 구조로 시각화한 것이다. 혼돈행렬 은 Stehman[45]이 오차와 정확도를 모델별 행렬 형태와 클 래스별 행렬 형태로 나타낸 것에서 발전한 구조이다.
이후 정확도(Accuracy), 정밀도(Precision), 재현율(Recall), F1 점수로 모델 성능 지표를 계산하였으며 모든 모델 성능 지표는 0에서 1 사이의 값을 갖는다.
Stehman[45]은 모든 정확도 평가 목적을 달성하기 위해 적용할 수 있는 절대적인 지표는 없으며, 특정 지표가 타 지표들을 대표하지 않기 때문에 타 지표와 상충되는 결과 가 도출될 수 있다고 주장하였다. 이와 같은 이유로 본 연 구는 이상 분류 모델 성능 평가에 적합한 지표를 선정하 고, 이를 이용한 모델 성능 평가 및 비교를 통해 가장 우수 한 성능의 이상 분류 모델을 탐색하였다.
3.7 이상 발생 원인 탐지
본 단계에서는 앞선 단계에서 탐색된 모델에 XAI 알고 리즘 중 하나인 LIME 알고리즘을 적용하여 이상 발생 원 인을 탐지하였다.
7단계 이상 발생원인 탐지 단계는 <Table 6>과 같이 다 섯 단계로 구성된다.
4. 사례적용
본 연구에서는 사례적용을 위해 Michael McCann와 Adrian Johnston이 UCI Machine Learning Repository에 제 공한 반도체 제조 공정 데이터인 SECOM Dataset[35]을 사용하였다. 제공 받은 데이터에서는 수집된 날짜와 시간 이 기록된 Time 특성, 2008년 7월 19일부터 10월 17일까 지 반도체 공정 센서에서 수집된 데이터 590개 특성, 공정 을 마친 반도체의 합불 여부가 기록된 Pass/Fail 타겟이 있 으며, 총 1567개 행으로 구성되어 있는 것을 확인하였다. 분석에 무의미한 특성인 Time 특성은 제거하고, 각 특성 의 결측치 유무를 확인하였다. 결측치 유무를 확인한 결 과, 각 특성의 결측치는 최소 0개부터 최대 1429개까지 존 재하는 것을 확인하였다.
4.1 데이터 전처리
본 단계에서는 결측치가 50%(784개) 이상 있는 특성 28개는 완전 제거법을 적용하여 제거, 결측치가 50% 미만 있는 특성 562개는 MissForest 알고리즘을 이용하여 결측 치 대체를 수행하였다. 결측치 처리 수행 후, 측정치들 간 단위 차이가 있는 데이터의 단위를 맞추기 위하여 StandardScaler를 이용하여 데이터 분포를 평균이 0, 표준 편차는 1로 만드는 스케일링을 수행하였다.
4.2 특성 선택
본 단계에서는 이상 발생원인 후보군을 식별하기 위해 RFECV 함수를 활용하였다. 또한 호출된 RFECV 함수에 적용하기 위하여 XGBoost, LightGBM, Random Forest 세 가지 앙상블 모델을 호출하였다. 이후 특성 선택을 위해 호출한 RFECV 함수에 세 가지 앙상블 모델을 적용하여 교차 검증을 수행하였다. RFECV 함수의 교차 검증 방법 으로는 층화 k-겹 교차 검증을 사용하였다. 또한 최적의 특성 개수를 선정하기 위해 평가되는 모델 성능은 정상과 이상에 대한 특징을 모두 학습할 수 있는 특성들을 선택하 기 위해 정밀도와 재현율을 모두 고려한 F1 점수를 사용 하였다.
RFECV 함수에 적용된 앙상블 모델별로 도출된 특성 개수와 선택된 특성들은 <Table 7>과 같다.
이후 내용부터 편의상 각 데이터셋의 명칭을 <Table 8> 과 같이 한다.
4.3 데이터 불균형 처리
본 단계에서는 데이터 불균형 처리를 위해 데이터의 균 형 상태를 파악하고, 훈련 데이터의 불균형을 해소하였다.
먼저 Pass/Fail 타겟의 데이터 분포를 통해 데이터 균형 상태를 파악하였다. <Table 9>와 같이 Pass/Fail 타겟 데이 터의 분포는 Pass(-1)가 1464개(93.43%), Fail(1)이 103개 (6.57%)로 이상 데이터가 정상 데이터보다 현저히 적은 실 제 반도체 공정 데이터의 특징[11, 32]을 본 연구에서 사용 하는 데이터 또한 가지고 있는 것을 확인할 수 있다.
다음으로 모델이 학습할 데이터의 불균형을 해소함으 로써 다수 클래스 데이터와 소수 클래스 데이터의 특징을 모두 학습할 수 있게끔 해주어야 한다.
먼저 데이터셋을 훈련 데이터와 시험 데이터로 분리하 였으며, 데이터 분리 비율은 각각 80%와 20%로 하였다. 훈련 데이터와 시험 데이터로 분리한 결과, 세 가지 데이 터셋 모두 훈련 데이터는 1253행, 시험 데이터는 314행으 로 분리되었다.
다음으로 분리된 세 개의 데이터셋에 SMOTE 함수를 적용하여 훈련 데이터의 소수 클래스에 새로운 데이터를 생성하는 오버 샘플링을 수행하였다.
SMOTE 함수 적용 결과, 세 데이터셋 모두 오버 샘플 링으로 인해 <Table 10>과 같이 훈련 데이터의 행과 타 겟이 많아졌다. RFECV_XGBoost는 훈련 데이터의 개수 가 1253개에서 2336개로, RFECV_LightGBM은 1253개 에서 2356개로, RFECV_Random Forest는 1253개에서 2354개로 많아졌다. 또한 SMOTE 함수는 소수 클래스의 데이터를 오버 샘플링하기 때문에, 소수 클래스의 데이 터 개수와 다수 클래스의 데이터 개수가 같아졌다. RFECV_XGBoost는 음성 데이터 개수와 양성 데이터 개 수가 각각 1168개로, RFECV_LightGBM은 각각 1178개 로, RFECV_Random Forest는 각각 1177개로 같아졌다.
4.4 모델 적용
본 단계에서는 세 가지 앙상블 모델을 적용한 RFECV 기법을 통해 선택된 RFECV_XGBoost, RFECV_LightGBM, RFECV_Random Forest 세 가지 데이터셋에 대한 이상 분류 를 수행하였다.
또한 단일 모델만으로 특성 선택과 이상 분류를 수행하 는 경우의 분류 성능과 특성 선택과 이상 분류에 각각 다 른 모델을 사용하였을 경우의 분류 성능을 비교하기 위해 RFECV 기법에 적용한 세 가지 앙상블 모델들도 호출하여 이상 분류를 수행하였다.
4.5 모델 성능 평가 및 비교
본 단계에서는 모델 적용 단계에서 적용한 세 가지 이 진 분류 모델들(OneClassSVM 모델, Isolation Forest 모델, Logistic Regression 모델)과 세 가지 앙상블 모델들 (XGBoost 모델, LightGBM 모델, Random Forest 모델)의 분류 성능 평가를 위하여 시험 데이터에 대한 층화 k-겹 교차 검증을 진행하였다. 층화 k-겹 교차 검증을 통해 진 양성(TP), 위양성(FP), 진음성(TN), 위음성(FN) 값을 도출 하고 <Figure 8>과 같이 혼돈행렬로 시각화하였다. 이후 내용부터 편의상 데이터셋에 분류 모델들을 적용한 결과 의 명칭을 <Table 11>과 같이 사용하고자 한다.
이후 모델 평가 및 비교를 위한 모델 성능 지표를 계산 하였다. 혼돈행렬을 통해 도출한 진양성(TP), 위양성(FP), 진음성(TN), 위음성(FN) 값을 이용하여 모델 성능 지표 정 확도(Accuracy), 정밀도(Precision), 재현율(Recall), F1 점 수를 계산하였다.
Andrew Ng[3]은 데이터 클래스가 불균형한 경우에는 분류 모델이 항상 다수의 클래스로 예측해도 정확도가 높 게 나오기 때문에 분류 모델의 성능을 평가하기 위해서는 진양성(TP), 위양성(FP), 진음성(TN), 위음성(FN)의 비율 을 계산하는 평가 지표나, 정밀도 대 재현율() 혹은 F1 점수를 이용하는 방법이 있다고 주장하였다. 현 재 대다수의 이상 분류 관련 선행연구들은 진양성(TP), 위양성(FP), 진음성(TN), 위음성(FN)을 도출한 후 정확 도와 F1 점수를 기준으로 우수한 분류 모델을 탐색하고 있다.
하지만 정확도와 F1 점수는 모든 이상 탐지 모델의 분 류 성능을 평가하기 위한 기준이 될 수 없다[45]. 정확도는 Andrew Ng[3]이 주장한 이유로 인해 분류 성능을 측정하 기 어렵고, F1 점수는 계산된 값만으로는 수식 특성상 정 밀도와 재현율 중 어느 지표가 높게 도출되었는지 파악할 수 없어 정밀도와 재현율을 다시 비교해야 할 뿐만 아니라 분야에 따라 정밀도와 재현율의 중요도가 다른 점을 반영 할 수 없다는 문제가 있다.
정밀도는 양성으로 예측된 데이터 중 실제 양성의 비율로, 음성 데이터가 양성으로 오분류될 시 비율이 낮아진다. 재현율은 실제 양성이 양성으로 예측된 비율 로, 양성 데이터가 음성으로 오분류될 시 비율이 낮아 진다.
반도체 공정의 경우에는 정상(음성)이 이상(양성)으로 분류되는 것보다 이상(양성)이 정상(음성)으로 분류되는 것이 더 위험하기 때문에 정밀도보다 재현율이 더 중요하 다. 그러므로 본 연구는 모델 성능 지표 중 재현율을 기준 으로 분류 모델들을 평가하였다.
각 데이터셋에서 가장 높은 재현율이 계산된 모델은 OneClassSVM 모델이다. 그중에서도 RFECV_Random Forest_OneClassSVM의 재현율이 0.79로 가장 높고 다음 으로 RFECV_LightGBM_OneClassSVM의 재현율은 0.59, RFECV_XGBoost_OneClassSVM의 재현율은 0.58로 높다.
그러므로 본 연구에서는 가장 높은 재현율이 계산된 RFECV_Random Forest_OneClassSVM을 가장 우수한 분 류 성능을 갖는 이상 분류 모델로 선정하였다.
각 데이터셋에 적용한 분류 모델들의 모델 성능 지표를 정리하면 <Table 12>와 같다.
4.6 이상 발생 원인 탐지
본 단계에서는 이상 발생 원인 탐지를 수행하기 위해 시험 데이터 내 존재하는 이상 데이터를 확인한 후 확인된 이상 데이터를 무작위로 추출하였다. 시험 데이터 내 존재하 는 이상 데이터를 확인하면, 시험 데이터 내 존재하는 실제 이상 데이터는 23개였으며, <Table 13>과 같다. 이 중 무작위 추출된 데이터는 23행, 368행, 495행, 914행이다.
이후 LIME 알고리즘을 적용하여 무작위로 추출된 이상 데이터가 탐색된 이상 분류 모델에 의해 이상으로 분류되 었는지 확인하고, 도출된 각 이상 데이터의 특성 기여도를 확인하였다. <Figure 9>는 LIME 알고리즘을 적용한 결과 의 예시를 나타낸다.
<Figure 10>을 통해 무작위로 추출된 이상 데이터들에 대한 RFECV_Random Forest_OneClassSVM의 분류 결과 를 확인해 보면, 네 개의 이상 데이터 모두 이상으로 분류 된 것을 알 수 있다.
무작위로 추출된 이상 데이터들이 모두 이상으로 분류 된 것을 확인한 후에는 RFECV_Random Forest_OneClass SVM 모델에 LIME 알고리즘을 적용하였다. LIME 알고리 즘을 통해 도출된 무작위로 추출된 이상 데이터들의 특성 기여도는 <Figure 11>과 같다.
무작위로 추출된 네 개의 이상 데이터에 대한 이상 발 생 원인 탐지를 수행한 결과, 이상 발생 원인 후보군이 항 상 모두가 이상 발생에 영향을 미치는 것은 아니라는 것을 알 수 있다. 495행과 914행은 이상 발생 원인 후보군 모두 센서의 스케일링된 측정치가 0보다 작거나 같으면서 이상 발생에 영향을 미쳤지만, 23행과 368행은 이상 발생 원인 후보군 중 59 공정 센서의 스케일링된 측정치가 0보다 큰 값을 가지면서 이상 발생에 영향을 미치지 않았다. 또한, 무작위로 추출된 네 개의 이상 데이터에 대한 이상 발생 원인 탐지를 통해 이상 발생 원인 후보군인 327 공정, 406 공정, 59 공정, 64 공정 센서의 스케일링된 측정치가 0보 다 작거나 같을 경우에 이상이 발생할 확률이 높다는 것을 유추할 수 있다.
5. 결 론
본 연구는 반복적인 이상 발생을 방지하기 위해 조치가 필요한 반도체 공정을 도출하는 기계학습 모델을 제안하 고 사례적용을 통해 활용 방안을 제시하는 것에 목적이 있다.
이에 따라 본 연구에서는 기계학습 모델을 이용한 반도 체 공정 이상 탐지 수행 시 데이터의 데이터 불균형과 고 차원의 특징을 반영하기 위해 SMOTE 기법과 RFECV 기 법을 적용하고, LIME 알고리즘을 적용하여 ‘이상 탐지 방 법론’을 제안하였다. 본 연구의 시사점은 세 가지로 요약 된다.
첫째, 기계학습 모델에 SMOTE 기법을 적용하여 소수 클래스의 특징을 학습시키면서 데이터 불균형을 해소하 고, RFECV 기법을 적용하여 고차원의 데이터 중 이상 분 류에 유의한 특성들만으로 데이터셋을 구성하면서 효과적 으로 모델을 학습시킬 수 있다는 것을 확인하였다.
둘째, 효과적인 이상 탐지 모델 구성 방법을 제시하였다. 본 연구에서는 사례 적용 결과, 앙상블 모델로 특성 선택과 이상 분류를 모두 수행하는 것보다 앙상블 모델로 특성 선택을 수행하고 이진 분류 모델로 이상 분류를 수행하는 것이 더 우수한 분류 성능을 보인다는 것을 확인하였다.
셋째, 해외의 경우 이상 탐지 모델에 LIME 알고리즘을 적용한 기존 연구가 많이 존재하나, 국내의 경우 연구가 활발히 진행되지 않고 있다. 본 연구는 사례적용을 통해 이상 분류 모델에 LIME 알고리즘을 적용하여 국내 연구 의 범위를 이상 탐지 모델의 활용 방안에 대한 연구로 확 장시켰다는 의의가 있다.
본 연구의 한계점 및 향후 연구 방향은 다음과 같다.
첫째, 본 연구에서는 공개 데이터로서 결측치가 많고 이 미 정량화 작업이 완료된 데이터를 사용하였으며, 분석과 정에서 결측치가 과도하게 존재하는 특성은 제거하고 분 석을 수행하였다. 따라서 사례적용 중 이상 분류에 중요한 특성들이 제거되었을 가능성이 있으며, 정량화 작업이 필 요한 이미지 데이터에 적용이 어렵다. 향후 연구에서는 온 전한 데이터를 확보와 이미지 데이터 정량 해석에 대한 연구 수행이 필요하다.
둘째, 본 연구에서 탐색한 이상 분류 모델은 재현율은 높지만 정확도와 F1 점수가 이상 데이터에 과적합 되었을 가능성이 있다. 따라서 정상의 상당 부분을 이상으로 예측 하고 있으며, 해당 모델의 실제 반도체 공정 현장 적용이 어렵다. 향후 연구에서는 본 연구에서 적용하지 않은 이진 분류 모델이나 인공신경망 모델 등 다른 모델들을 적용하 여 데이터가 불균형하더라도 클래스 특징을 적절히 학습 할 수 있는 기계학습 모델에 관한 연구를 수행할 필요가 있다.
셋째, 본 연구에서는 LIME 알고리즘의 특성 기여도 분 석을 통해 도출한 이상 발생 원인 공정에 실제로 이상이 발생했는지 성능을 확인할 수 없었다. 향후 연구에서는 LIME 알고리즘의 결과와 실제 현장 상황을 비교하는 등 LIME 알고리즘 성능에 관한 연구를 수행할 필요가 있다.