인재 DB 등록 시 유의사항

CLOSE

채용공고 지원 시 유의사항

CLOSE
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
작성자 차단하기 (이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

Smart Factory 서비스를 위한 진동/압력/온도 센서의 Anomaly Detection 개발 - 연구 결과

c73801477 21.11.22
1367 3 0

SKT AI Fellowship 과제로 진행하였던 Smart Factory 서비스를 위한 진동/압력/온도 센서의 Anomaly Detection 개발에 대한 연구 과제에 대한 최종 활동 기록 공유입니다.

 

 

6개월 간 지도 해주신 김연섭 멘토님, 이광석 멘토님, 허성민 멘토님 다시 한번 감사드리며 Fellowship 활동을 물심양면으로 지원해주신 박하은님 이민정님께도 감사의 말씀을 올립니다.

 

 

■ 연구 배경 및 목적

Smart Factory(Data기반 지능형 공장)의 핵심 Task는 예지 정비(Predictive Maintenance) 솔루션/서비스입니다.

여기서 예지 정비란 이상치를 탐지하여 설비의 고장 (Failure) 이전에 정비를 하는 것을 말합니다.

따라서 많은 기업들이 공장 내 설비 Data를 기반으로 통계 분석, AI 분석을 통해 예지 정비를 시행하고 있으며, 이러한 분석을 이상 탐지(Anomaly Detection)라고 합니다.

 

 

Smart Factory 에서는 예지 정비 (pdM; Predictive Maintenance) 를 위한 공장 내의 설비 데이터 모터 펌프 등 를 지속적으로 수집하고 있고

SKT 그랜드뷰 서비스는 베어링의 진동 센서로 수집된 데이터를 분석하여 기계의 이상을 조기에 진단해주는 이상 탐지 서비스를 제공하고 있습니다.

 

 

따라서, 본 연구는 SKT GrandView 서비스에 탑재할 수 있는 이상 탐지 모델의 개발을 주목적으로 하였습니다.

 

 

■ 연구 결과

연구 결과는 크게 세 가지 1) 전처리 기법, 2) 모델링, 3) 실험 결과로 분류할 수 있습니다.

 

1) 전처리 기법

본 과제에서 사용한 데이터는 모터의 베어링에 부착된 가속센서를 통해서 수집된 진동 데이터 입니다. 이에 따라 raw 데이터를 활용하는 대신, 주파수 변환 방법을 활용하여 전처리를 진행하였습니다.

주파수 변환 방법을 사용한 이유는 frequency domain 영역으로 변환을 통해 time domain에서 해석하기 어려운 정보를 포착하기 위함이었습니다.

FFT, STFT, DWT, SWT 등 다양한 전처리 기법을 탐색하였고 비교 실험 및 작동 원리를 토대로 DT-CWT를 최종 선택하였습니다.

 

 

DT-CWT는 Wavelet Transform의 단점이였던 미흡한 방향성에 대한 정보(Poor Directionality) 및 위상 정보(Phase Information)가 결여 되었던 문제를 개선한 기법입니다.

복소수(Z = x+jy) 에서 실수부(x)는 진폭(amplitude)을 허수부(y)는 위상정보를 포함하는 원리에 착안하여 데이터를 실수부와 허수부로 나눠주는 filter를 적용 후 wavelet transfrom을 적용하는 기법으로 요약할 수 있습니다.

이를 통해 외부 충격 및 공장에서 발생하는 외부 Noise를 제거하고자 하였고 전처리 이후 모든 베어링에서 False Alarm의 수를 효과적으로 줄일 수 있었습니다.

 

 

각 전처리 기법에 대한 자세한 내용은 이전에 포스팅한 "연구 진행 과정(3)" (링크 필요)을 통해 살펴보실 수 있습니다.

 

2. 모델링

SKT GrandView 실서비스에 탑재 가능한 모델을 구축하기 위해 딥러닝 기반의 시계열 이상 탐지 알고리즘을 탐색하였습니다. 구축 용이성, 이상 탐지 성능 등의 기준을 토대로 UnSupervised Anomaly Detection on Multivariate Time Series (USAD)를 최종 선정하였습니다.

USAD는 Autoencoder 기반의 장점과 Adversarial Learning의 장점을 결합한 모델로 학습이 쉽고 안정적인 결과를 도출함과 동시에 정밀한 이상 탐지를 수행할 수 있는 모델입니다.

초기 개발 아이디어는 Epoch 별 Anomaly 검출 일관성을 활용하여 스스로 혼재 구간을 특정하고, 추정된 혼재 구간을 재학습하는 과정을 통해 미세한 변화를 조기에 탐지할 수 있는 모델을 구축하고자 하였습니다.

 

 

다만 재학습 과정에서 기존에 잘 학습되어 있는 USAD의 가중치가 손상되는 현상이 발생하였고 일반화 성능을 개선하는데 어려움이 있었습니다.

이를 개선하기 위해 Two-phase Training은 유지하되, 정상과 비정상을 분류하는 Classifier를 추가하고 USAD의 anomaly score와 분류기의 예측 확률을 결합하여 이상 탐지를 진행하는 모델을 최종 개발하였습니다.

 

 

Classifier의 역할은 USAD로 잡아내지 못하는 미세한 차이를 탐지하고자 도입 되었습니다. 실험 결과, USAD를 단독으로 사용했을 경우 혼재 구간 내 정상과 비정상 Sample에 대해 비슷한 Anomaly Score를 추정하게 되어 잦은 False Alarm이 일어나는 것을 발견하였습니다.

 

 

위 현상을 해결하고자 도입된 분류기를 학습하기 위해서는 정상과 비정상 데이터를 필요로 합니다. 본 연구진은 이를 위해 정상 데이터로부터 비정상 데이터를 임의로 생성하는 Time Series Data Augmentation 과정을 진행하였습니다.

이는 시간의 흐름에 따라 우상향 경향을 보이는(=평균과 분산이 증가하는) 진동 센서 데이터의 특징으로 인해 가능하며 생성된 비정상 데이터 예시는 하기 그림과 같습니다. 생성된 비정상 데이터와 원래의 정상 데이터를 바탕으로 Classifier를 지도 학습하게 됩니다.

 

 

학습이 완료된 USAD와 Classifier는 USAD로부터 도출된 Anomaly Score와 Classification Probability를 결합하여 최종 Score를 도출하게 됩니다.

이 때 단순히 곱으로 표현되지 않고 1/k 자승을 거친 확률 값을 곱해주게 되는데, 이는 Supervised Learning을 거친 Classifier는 과도한 신뢰도를 보이는, Over Confidence 문제가 존재하기 때문입니다. Over Confidence란 정상의 경우 매우 낮은 확률을, 비정상에 대해서는 매우 높은 확률값을 추정하게 되는 현상을 말합니다. 즉, 혼재 구간 내 정상과 비정상 sample 모두에 대해서 1e-n, 거의 0에 가깝게 추정하게 되어 원하고자 했던 정상과 비정상을 구분할 수 없는 단점이 존재했습니다.

확률 값에 1/k승을 취하게 되면 1에 가까운 값일 수록 변동이 없고, 0에 가까운 확률 값은 보다 큰 수치로 매핑되기에 혼재 구간 내 정상과 비정상에 대한 미세한 차이를 극대화시켜 탐지 성능을 높이고자 하였습니다. 여기서 k는 하이퍼 파라미터에 속하며 실험결과 8의 값을 채택하였습니다.

최종 Score 계산 식 및 개선된 탐지 예시는 하기 그림과 같습니다.

 

 

3. 실험 결과

제안 모델의 우수성을 입증하기 위하여 PHM 2012 데이터셋에 실험을 진행하였습니다. 평가 지표는 Detection 시점이 얼마나 정확하고 빠른 시간에 탐지하는지, 탐지의 신뢰도는 얼마인지를 측정하기 위해 Anomaly 시작 시점과 False Alarm의 개수로 평가를 진행하였습니다.

비교에 사용한 Anomaly Detection 알고리즘은 DAGMM, GANomaly, USAD (Backbone model)가 해당되며 전처리의 효과를 확인하기 위한 Ablation Study를 진행하였습니다.

 

 

위 표에서 확인할 수 있듯 전처리 전/후를 비교하여 모든 모델에서 예측 시점과 False Alarm 지표에서 성능 향상이 존재하여 전처리의 효과를 알 수 있습니다. 또한 Classifier를 결합한 최종 제안 모델이 3개의 데이터 셋에서 가장 우수한 성능을 보이고 있습니다.

실험 성능 외에 가장 의의가 큰 점은 제안 모델을 실제 SKT GrandView에 탑재하고 이를 시연하는 과정에 있습니다. 하기 그림과 같이 실제 서비스에 모델을 탑재하고 현업에 적용하는 Pipeline을 구축함으로써 단발성에 그치지 않고 추가 과업으로의 확장이 용이함을 보여주었습니다.

 

 

 

■ 향후 연구

본 과제를 진행하면서 추가로 개발되면 좋은 점, 아쉬운 점 또한 많이 있다고 생각합니다. Future Works를 요약하면 하기 그림과 같습니다.

 

 

이외에도 베어링 데이터가 아닌 모든 데이터에 범용적으로 적용 가능한 Time-Series Anomaly Detection 알고리즘을 개발하는 과정이 추가되었으면 좋지 않았을까 하는 아쉬움이 없지 않아 있습니다.

6개월 간의 긴 프로젝트 동안 고생해준 팀원 및 멘토분들께 다시 한번 감사드리며 이상으로 포스팅을 마치겠습니다.

 

긴글 읽어주셔서 감사합니다.

c73801477 님의 최신 블로그

더보기

관련 블로그