23.06.15
DEVOTEE를 활성화 시키면
지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.
버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.
| 컨텐츠 유형 | 제목 | 저장일 | 삭제 |
|---|
본인인증 로그인에 실패하였습니다.
회원이 아니시거나 본인인증 등록이
완료되지 않은 사용자입니다.
안녕하세요 SKT AI Fellowship 4기 다쿠야키 팀의 이서윤,김서연입니다. 지난 10월 31일 최종 발표를 마치고 5개월동안 진행해오던 프로젝트를 성공적으로 완수하였습니다! SKT AI Fellowship 4기로서 활동하며 보람찬 나날들을 보낸 것 같습니다.
저희 팀은 현재 설비(기기)의 RUL 예측이라는 인공지능 과제를 수행중이며, SKT의 스마트팩토리 건설을 위한 '그랜드뷰' 제품에 탑재할 만한 성능의 예지정비솔루션을 마련하는 프로젝트를 맡았습니다.
저희 과제는 공정 내 기기들이 고장나기 전에 인공지능으로 **기기들의 잔여 수명(Remaining Useful Life, RUL)**을 예측하여 사전에 알람을 발생해주어 스마트팩토리를 건설하여 예방 정비, 예측 정비를 이루는 것을 목표로 하고 있습니다.
SKT에서도 현재 그랜드뷰 제품을 통해 공정의 이상 감지 및 알람 대응 예지정비 서비스를 개발하고 있습니다. 저희의 연구과제는 RUL예측을 그랜드뷰 제품에 도입하여 정비/수리/교체 등 사전 계획 및 모니터링에 유연하게 대응할 수 있게 하고**, 비용 절감 및 품질 향상**에 도움을 주어 미래지향적 스마트팩토리 건설의 효과를 기대하고 있습니다.
저희는 NASA의 터보펜 엔진 성능 저하 데이터셋인 CMAPSS를 사용하고 있습니다. 이 데이터셋은 CMAPSS라는 역학 모델을 사용하여 시뮬레이션을 진행한 데이터셋이며, RUL 예측 task에 권위있게 사용되는 표준 데이터셋입니다.
작동조건과 고장조건의 개수에 따라 FD001,FD002,FD003,FD004 총 네 가지 버전의 하위 데이터셋으로 분화되어 있습니다. 높은 난이도에도 불구하고 저희는 실제 데이터와 같이 고장조건과 작동조건이 가장 다양한, 난이도가 높은 FD004로 연구를 진행하였습니다.
FD004 데이터셋은 작동 조건이 6개, 고장 조건이 2개인 터보팬 데이터셋으로, 총 21개의 센서 측정값, 3개의 setting값, 248개의 unit들, 매 측정값들의 시간을 나타내는 time cycle로 이루어져 있습니다.
저희가 사용한 FD004의 6가지 작동조건으로 그룹핑하여 RUL 흐름에 따른 센서값들을 살펴본 결과 아무 변화가 없는 센서, 상승 추세를 보이는 센서, 발산 추세를 보이는 센서, 랜덤한 모양의 복잡한 센서 총 4가지 종류로 센서를 볼 수 있습니다.
특히 FD004의 두 가지 고장조건으로 인해 두 갈래의 추세로 센서 값이 발산하는 모습으로 보아 RUL과 연관관계를 보이는 상승 추세와 발산 추세를 띄는 센서를 RUL 예측에 사용하는 것이 좋을 것이라 생각하여 3,4,7,11,12번 센서를 선택하였습니다.
저희는 RUL 예측에서 SOTA라고 알려진 RVE Recurrent Variational Encoder 구조를 선정하였습니다. 이 모델을 선정한 이유는 타 딥러닝 모델 구조에 비해 난이도가 특히 높은 FD002, FD004에서 뛰어난 RUL 예측 성능을 보였고, 타 모델과 달리 데이터의 분포, 즉 잠재공간을 시각화해볼 수 있기 때문에 설명력이 좋다고 생각하여 이 모델을 Baseline으로 선정하게 되었습니다.
RVE 모델은 VAE, 변이 추론 인코더 구조 기반에서 약간 변형시켜 Regressor를 붙인 형태의 모델입니다. RVE는 크게 Encoder와 Regressor로 나눠볼 수 있으며 Encoder에서는 기기의 시간에 따른 센서데이터를 압축하여 잠재공간 즉 데이터의 분포를 학습합니다. Regressor에서는 Encoder에서 학습한 결과를 통해 시계열 데이터인 RUL, 잔여수명을 예측하게 됩니다.
기존 Paper에서는 CMAPSS 데이터셋의 설비 내부의 모든 Unit에 대해 동일한 모델 학습 및 전처리를 적용하였고, 단순 한 시점의 RUL의 RMSE를 최소화하는 것을 목표로 연구되었습니다.
연구 초반에는 더 효율적, 최적화된 RUL 예측을 위해 다음과 같은 RVE 모델을 튜닝하여 RMSE를 더 감소시키고자 하였습니다.
RUL 예측 시 얼마나 시계열 데이터를 많이 볼 지를 결정하는 window length 변경
센서값의 smoothing 강도 변경
모델 학습 시 Epoch의 수 변경
최적의 Learning Rate를 찾기 위해 loss가 가장 큰 폭으로 감소하는 Learning Rate 값을 찾아 학습
기존 RVE 구조에 GAN과 같은 새로운 모델을 추가로 도입하여 RMSE를 향상시키고자 하였습니다.
하지만 단순 RMSE만을 낮추기 위한 1차 시도에서는 눈에 띄는 RMSE 개선 결과가 없었습니다.
저희는 초심으로 돌아가 처음 주목했던 스마트팩토리 구축에 주목하였습니다. 실제로 이러한 유지 정비에 쓰이려면 기존 모델을 어떤 식으로 변화를 주어야 할 지를 고민하며 기존 모델의 한계점을 분석하였습니다.
기존 모델은 각 Unit이 가진 특성을 고려하지 않고 설비의 모든 Unit을 한번에 학습하고 있습니다.
마지막 time cycle에서의 RUL 값만을 출력하여 그 때 주어진 정답과 비교를 통해 RMSE 수치를 낮추는 데에만 집중하고 있습니다.
따라서 기존의 모델 방식을 그대로 채용한다면 실제 공정처럼 1. Unit별 특성을 살리기 어렵고 2.전체적인 설비의 생애를 파악하기도 어려워 적절한 알람 및 유지 정비 솔루션을 제공하기가 어렵습니다.
저희는 실제 공정에서 엔진 교체, 기기 가동 시간 결정 시 필요한 RUL 예측에 대해 고민을 하였고, 단순 RMSE뿐 아니라 Unit이 어떻게 죽어가는지에 대한 양상에 대해서도 집중할 필요가 있다고 결정하였습니다.
따라서 현재 모델과 다르게 time cycle의 흐름에 따라 설비의 전체 생애에서의 RUL을 예측하여 Unit별 양상을 확인하고, 비정상이 시작되는 시점을 탐구하여 비정상이 나타나기 전에 설비를 더 잘 관리할 수 있도록 2차 방향성을 잡게 되었습니다.
기존의 마지막 시점 RUL 예측 출력 방식에서 모든 시점 RUL 예측 방식으로 변경하고, 한 시점에 대해서만 RMSE를 측정하던 방식에서 벗어나 전체 시간에 대해 매 time cycle마다 RMSE를 확인하였습니다.
이렇게 RUL에 대한 자세한 양상을 분석하고, 알람을 울릴 Threshold 등 실제 예지 정비 솔루션을 마련하고자 하였습니다.
기존 모델과 달리 모든 시점에 대해 RUL을 예측한 결과입니다. 보시는 것은 12개의 unit의 time cycle에 따른 RUL 예측 결과 그래프이며, 주황선은 저희 모델의 예측값, 파란선은 정답 RUL을 나타냅니다. 전체 구간에 대한 RMSE는 52.9828로 기존 모델의 한 시점 예측에 비해 증가하였습니다.
기존 모델에서는 볼 수 없었던 전체 구간에 대한 RUL의 추이를 보고 나니 기기의 비정상이 시작되는 시점인 변곡점에 주목할 수 있었습니다. 기기가 비정상으로 들어서는 시점은 노화가 시작되므로 알람을 울려야 하기에 공정 가동에 있어 중요한 시점입니다.
저희는 RUL을 Health Index로 사용하여 기기의 비정상이 시작되는 시점을 찾았습니다. 저희 모델은 오른쪽 그림과 같이 센서값을 기반으로 RUL을 예측하기 때문에 센서에 이상이 생기는 t 시점부터 RUL이 감소하는 것을 가정하고 있습니다.
따라서 RUL이 급격히 감소하는 시점을 비정상이 시작하는 시점 즉 변곡점으로 설정하였고, 센서값에 이상이 생기기 시작하는 변곡점 즉, t 시점 이후의 RUL 예측을 더 정교하게 하도록 그 시점부터 RMSE를 측정해 모델을 개선시켰습니다.
먼저 기기의 이상감지, 즉 수명이 급격히 감소하는 변곡점을 찾는 방법을 모색하였습니다. 실제 공정에 적용되어 기기를 돌릴 때 센서를 달아 원하는 기간마다 기기의 노화를 관리할 수 있게 해야합니다.
따라서 매 예측값이 들어올 때마다 미분계수를 계산하여 이와 같이 실시간 변곡점 탐지가 가능하도록 형태를 변형하여 변곡점을 찾아내는 함수를 제작하였습니다
또한 다양한 양상의 Unit을 분석하고 적용하여 실제 산업에서의 난이도를 반영하였습니다.
모든 Unit에 대해 RUL 예측을 확인한 결과 왼쪽 위처럼 기계가 건강하다가 변곡점을 기점으로 망가지는 이상적인 양상 뿐 아니라 순탄하거나 진동하는 등 여러 양상이 포함되어 있었습니다. 52% 이상, 대부분이 이상적인 양상이었으나 일부의 경우 양상 2,3처럼 언제 망가지는지 알 수 없는 양상 또한 존재하였습니다.
이는 저희가 사용한 CMAPSS 기계 데이터셋이 임의의 시점에서의 센서값이고, 이로부터 RUL을 예측하는 것이기에 고장이 나지 않은 최신 설비일지, 이미 고장이 나서 RUL이 감소해버린 설비일지에 대한 정보는 알 수 없기 때문입니다.
그럼에도 불구하고 저희 팀은 실제 공정에서는 왼쪽 위의 그림처럼 이상적인 RUL만이 나타나지 않을 수 있으므로 다양한 RUL 양상을 공평하게 포함하여 Unit 237개를 사용해 변곡점 탐지 기능을 개발하였습니다.
그리고 기기의 잔여수명을 통해 갑자기 상태가 나빠지는 변곡점을 찾고자 저희 다쿠야키 팀만의 변곡점 탐지 함수를 마련하였습니다. SPC Rule 이란 Statistical Process Control의 약자로 어떤 측정값들의 경향에 따라 불량한 값을 찾아내는 방법입니다. 저희는 이러한 SPC Rule에서 착안하여 저희 모델로 예측해낸 1. RUL의 임계기울기, 2. Window size 3. Count를 변수로 사용해 저희만의 변곡점 탐지 Rule을 만들었습니다.
RUL 이 급격히 감소하는 시점을 구해야 하므로, RUL의 감소량을 파악하기 위해 Window Size 만큼의 이전 시점의 RUL 예측 값을 이동평균내어 순탄화하고, 매 시점마다의 미분계수를 구하여 그 값이 임계 기울기를 넘어가면 변곡점으로 인식하였습니다. 또한 RUL의 oscillation(오실레이션)을 방지하고 더 확실한 변곡점을 찾아내기 위해 임계기울기 이상의 값이 반복되는 횟수인 Count라는 지표를 추가하였습니다.
저희 모델은 변곡점을 찾아야 하고 그 지점이 일시적인 변곡점인 local decrease인지 아니면 진짜 변곡점인 global decrease인지를 파악할 수 있어야 합니다. 따라서 저희는 RUL 임계기울기, window size, count 총 3가지의 파라미터로 이를 해결하였습니다. 파라미터를 결정하기 위한 지표로는 RMSE, 변곡점을 탐지하지 못하는 Unit의 개수인 NaN Count, 탐지한 변곡점의 위치입니다.
변곡점이 있는데도 이를 탐지하지 못한다면 실제 공정에서 매우 위험합니다. 따라서 원래 변곡점이 없는 양상2의 Unit들을 제외한 나머지 Unit들은 모두 변곡점을 탐지해야 하므로 NaN Count를 가장 첫번째로 고려하였습니다. 그리고 나머지 지표인 RMSE와 변곡점의 위치를 절충하여 고려하였습니다. 오른쪽 위 그림처럼 탐지한 변곡점의 위치가 실제 설비가 위험해지는 시점보다 늦다면 RMSE는 좋게 측정되지만 실제 공정에서는 위험을 늦게 감지하는 모델이 됩니다. 따라서 저희는 오른쪽 아래 그림과 같이 trade off를 조절하여 RMSE는 조금 아쉽더라도 실제 위험시점보다 먼저 변곡점을 잘 예측하는 최적의 파라미터 기울기 1.2, Window Size 10, Count 7를 결정하였습니다.
이러한 여러 요소들을 고려하여 변곡점 탐지 기능을 추가할 수 있었고, 최적의 하이퍼파라미터를 선정할 수 있었습니다.
저희 다쿠야키 팀의 실시간 이상탐지 및 RUL 예측 모델의 최종 시현 영상입니다. 보시는 것처럼 실시간으로 RUL과 기계가 고장나는 시점을 파악할 수 있습니다.
위 사진은 해당 모델로 도출한 최종 결과입니다.
왼쪽 위의 이상적인 데이터의 경우 기계가 고장나기 시작하는 global 변곡점을 매우 잘 찾으며 RMSE 또한 기존의 52.9828에서 27.0007으로 2배 가량 향상시킬 수 있었습니다. 양상 2의 데이터의 경우 RUL이 순탄하여 변곡점을 잡지 못하였지만, time sequence의 개수가 적고 임의의 시점에서의 데이터이므로 양상 1의 앞부분처럼 아직 고장나지 않은 최신 설비일 가능성이 큽니다.
그 외에도 모델 자체가 RUL을 제대로 예측하지 못하거나 변곡점을 의미 있게 잡지 못하는 경우도 발생하였으나 이는 전체의 약 12퍼센트에 미쳐 실제 공정 도입 시 제외를 하면 될 것이라 생각됩니다. 실제 공장에서도 비용 및 예측의 측면에 있어 모든 Unit에 모두 센서를 달아 관리하지 않고 적합한 Unit만을 선정하기 때문입니다. 따라서 저희 모델은 실제 공정에서 나타날 법한 여러 양상을 커버하면서도 기존의 모델에서는 불가능했던 변곡점을 통해 미리 고장을 감지할 수 있는 모델로 볼 수 있다는 의의를 가집니다.
이렇게 성능확인을 마치고 난 후, 실제로 현재 모니터링중인 SKT사의 그랜드뷰 센서값들에 다쿠야키 팀의 RUL 예측 모델을 적용하여 지도학습 모델을 확보할 예정입니다. 저희 모델은 이상감지와 RUL 예측을 동시에 적용할 수 있으므로 이를 탑재한 그랜드뷰를 향후 스마트팩토리에 적용한다면 확장성과 기대효과가 높을 것으로 보입니다.
기존의 그랜드뷰는 이상감지 위주의 서비스만을 제공하기에 과다 정비로 인해 비용 문제가 발생할 수 있지만 저희 다쿠야키 모델은 5개의 센서를 input으로 활용하여 사람의 힘으로는 분석해내기 어려운 특징을 찾아내어 기계의 정확한 잔여수명을 파악하여 비정상이 되는 시점을 미리 대비함으로써 공정 관리자에게 기존의 그랜드뷰의 한계점을 극복한 솔루션을 제공합니다.
[다쿠야키 팀 RUL 모델 최종 그랜드뷰 탑재 시연 영상]
이는 저희 다쿠야키 팀 RUL 모델을 그랜드뷰에 최종적으로 탑재한 그랜드뷰 서비스의 최종 데모 영상입니다. 영상을 보시면 깔끔한 UI와 여러 측정 지표로 공정 관리자가 설비의 장애와 상태를 모니터링하여 쉽게 관리할 수 있도록 화면이 구성된 것을 볼 수 있습니다!
이렇게 저희 다쿠야키팀은 5월부터 10월까지 기존 RUL 예측의 SOTA 모델에서 새로운 가치를 창출하였습니다. 기존 모델의 단 시점 예측을 여러 시점 예측으로 변화시키고, 실제 공정에서 발생할 만한 여러 양상의 데이터를 포용하여 기존 Baseline 모델에서는 불가능했던 이상감지까지도 가능케 하여 실제 공정에서의 솔루션을 마련하였습니다. 이를 통해 단순 RUL 예측에서 더 실용적인 예지정비 솔루션을 도입해보는 기회를 경험할 수 있었습니다.
여름부터 날씨가 추워지는 지금 이 시점까지 모두 고생하셨고, 허성민,이준학 멘토님 그리고 저희 다쿠야키 팀원들, SKT 운영진분들께 모두 감사의 말씀을 드리고 덕분에 좋은 경험을 한 것 같습니다.
앞으로도 공부와 연구를 계속하여 이번 프로젝트처럼 실용적이고 논리적인 어플리케이션을 개발해나가고 싶습니다.
긴 글이지만 읽어주셔서 감사합니다. 읽어보시고 의견 있으시다면 댓글은 언제나 환영입니다!
DEVOTEE를 활성화 시키면
지금 작성한 댓글에 AI가 댓글을 달아줍니다.