4.2 불량 검출 모델 성능 평가
분류 및 불량 검출의 모델을 평가하기 위하여 주로 혼동 행렬(Confusion Matrix)을 기반으로 정확도(Accuracy), 정밀도(Precision),
재현율(Recall), F1-score를 사용한다. 식 (5), (6). (7), (8)은 정확도, 정밀도, 재현율, F1-score를 나타낸다.
TP(True Positive)는 긍정(Positive) 클래스로 예측하였으며, 실제로도 긍정인 경우를 나타내고, TN(True Negative)은
모델이 부정(Negative) 클래스로 예측하였으며, 실제로도 부정인 경우이다. FP(False Positive)는 모델이 긍정 클래스로 예측하였지만,
실제로는 부정인 경우를 나타낸 것이고, FN(False Negative)은 모델이 부정 클래스로 예측하였지만, 실제로는 긍정인 경우를 나타낸다. 정확도는
분류 및 검출 모델에서 정답을 예측한 비율이고, 정밀도는 긍정 클래스로 예측한 것 중에 실제로 정답이 긍정인 경우의 비율이다. 그리고, 재현율은 실제
정답이 긍정인 것 중에서 긍정이라고 예측한 비율을 나타내었으며, F1-score는 정밀도와 재현율의 조화평균으로 나타낸다.
본 연구에서는 Inception, Xception, VGG19, 소프트 보팅, 그리고 스태킹 앙상블 모델을 사용하여 블로워 모터 결함 검출 실험을
수행하였으며, 혼동 행렬을 기반으로 정확도, 정밀도, 재현율, 그리고 F1-score를 평가하였다.
그림 8(a)는 Inception V3 모델의 혼동 행렬을 나타낸다. Inception V3 모델은 OK 테스트 데이터 중 15개와 NG 테스트 데이터 중 45개를
정확하게 예측하였으며, 31개의 정상 테스트 데이터를 불량으로, 1개의 불량 테스트 데이터를 정상으로 잘못 예측하였다.
그림 8. 모델별 혼동 행렬 결과
Fig. 8. Confusion matrix results of 5 CNN models
그림 8(b)는 Xception 모델의 혼동 행렬을 나타낸다. OK 테스트 데이터 중 36개와 NG 테스트 데이터 중 39개를 정확하게 예측하였으며, 10개의
정상 테스트 데이터를 불량으로, 7개의 불량 테스트 데이터를 정상으로 잘못 예측하였다. 그림 8(c)는 VGG19 모델의 혼동 행렬을 나타낸다. OK 테스트 데이터 중 35개와 NG 테스트 데이터 중 44개를 정확하게 예측하였으며, 11개의 정상
테스트 데이터를 불량으로, 2개의 불량 테스트 데이터를 정상으로 잘못 예측하였다. 그림 8(d)는 소프트 보팅 기법을 적용한 앙상블 모델의 혼동 행렬을 나타낸다. OK 테스트 데이터 중 26개와 NG 테스트 데이터 중 45개를 정확하게 예측하였으며,
20개의 정상 테스트 데이터를 불량으로, 1개의 불량 테스트 데이터를 정상으로 잘못 예측하였다. 그림 8(e)는 스태킹 기법을 적용한 앙상블 모델의 혼동 행렬을 나타낸다. OK 테스트 데이터 중 45개와 NG 테스트 데이터 중 45개를 정확하게 예측하였으며,
1개의 정상 테스트 데이터를 불량으로, 1개의 불량 테스트 데이터를 정상으로 잘못 예측하였다.
표 1은 다양한 CNN모델 각각의 혼동 행렬을 기반으로 성능 평가 지표를 보여준다. 성능의 일관성과 통계적 유의성을 확인하기 위해 Inception, Xception,
VGG19, 소프트 보팅, 스태킹 모델의 각각에 대해 5회 반복 학습을 수행하였다. 반복 실험 결과, 스태킹 모델의 평균 F1-score는 0.9768,
표준편차는 ±0.0019로 측정되었으며, 이는 단일 모델 중 가장 높은 성능을 보인 VGG19 모델과 비교하였을 때 유의미한 성능 차이를 보였다.
표 1 모델별 성능 평가 지표 결과
Table 1 Performance evaluation indicator results by model
|
Model
|
Accuracy
|
Precision
|
Recall
|
F1-score
|
|
Inception
|
0.652
|
0.7648
|
0.6522
|
0.6108
|
|
Xception
|
0.8152
|
0.8166
|
0.8152
|
0.815
|
|
VGG19
|
0.8587
|
0.873
|
0.8587
|
0.8573
|
|
Soft-voting
|
0.7717
|
0.8276
|
0.7717
|
0.7616
|
|
Stacking
|
0.9783
|
0.9783
|
0.9783
|
0.9783
|
또한, 스태킹 기법을 적용한 앙상블 모델의 정확도는 0.9783, 정밀도는 0.9783, 재현율은 0.9783, F1-score 역시 0.9783으로
측정되어 전반적인 성능에서 가장 우수한 결과를 보였다. 이는 단일 모델 중 가장 높은 정확도를 기록한 VGG19 모델과 비교해도 약 10% 이상 향상된
수치로, 제언한 앙상블 기법의 효과를 보였다.
데이터 증강의 효과를 확인하기 위해 동일한 조건에서 증강 전 원본 데이터만으로 학습한 경우와 증강된 데이터를 포함한 경우의 성능을 비교하였다. 증강
데이터를 포함하지 않은 VGG19 모델의 F1-score는 0.7945로 측정되었으나, 데이터 증강을 적용한 경우 0.8573까지 상승하여 약 6.3%의
성능 향상이 있었음을 확인하였다. 이는 데이터 증강이 모델의 일반화 능력을 향상시키고 과적합을 방지하는데 기여함을 의미한다.
그림 9는 표 1을 기반으로 시각화한 결과로, InceptionV3, Xception, VGG19와 소프트 보팅, 스태킹 기법 간 성능 차이를 한눈에 비교할 수 있도록
나타내었다. 스태킹 기법이 블로워 모터 불량 검출 문제에서 가장 우수한 성능을 보였으며, 이는 개별 모델의 약점을 보완하고 강점을 통합할 수 있는
앙상블 기법의 장점을 보여준다.
그림 9. 모델별 결과 레이더 차트
Fig. 9. Radar chart of performance Results
본 논문에서 제안한 스태킹 기법은 Inception, Xception, VGG19 모델의 예측 확률을 결합하여 메타 모델인 XGBoost를 통해 최종
예측을 도출하는 방식으로, 데이터 불균형 및 개별 모델의 예측 불확실성을 효과적으로 처리하였다.