PHM 2. LSTM-AutoEncoder

행동하는 개발자·2022년 9월 16일
0

PHM

목록 보기
2/43

PHM과 LSTM, GRU

PHM은 데이터의 양이 많기 때문에 시간이 지날수록 기울기 소실이 일어나는 기존의 딥러닝 체계에서 기울기 소실이 일어나기 어려운 LSTM은 시계열 데이터 처리의 가장 기본으로 사용된다.

가중치를 잘 초기화 하기 위해서 LSTM(Long Short-Term Memmory) 또는 GRU(Gated Recurrent Unit) 구조를 사용 할 수 있다.

논문: Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation

AutoEncoder

대부분의 도메인에서 이상(anomaly) 데이터는 충분하지 않다. 이러한 문제를 데이터 불균형이라고 하는데, 이렇게 되면 이상데이터들을 명확하게 분류하지 못한다. 10000개의 데이터 중 9999개가 정상이고 남은 1개가 이상데이터일 때, 다 틀렸다고 해도 정확도는 99.99%이기 때문이다

이 때, 정상데이터로만 학습시킨 오토인코더 모델이 기존에 학습하지 않은 데이터를 구분해 낼 것이다. 이런 이상 감지에 복원 에러를 사용한다. (모델입력-모델출력 = error)를 사용하여 임계치를 정하면, 임계치를 넘는 에러를 이상이라고 정의하는 것이다.

시계열 데이터의 이상감지는 시간적인 특성을 고려해야 한다. 이 때, 시간적인 특성을 담고 싶다면, 기존의 오토인코더에는 없는 LSTM 레이어를 사용하여 오토인코더를 구성해야 한다.

데이터 전처리

하지만 산출한 에러를 그대로 사용하는 것은 무리가 있다. 이를 보완하기 위해 에러 스무딩 후 사용해야 합니다. 이 때 EWMA(Exponentially-weighted average, 다변량 지수가중이동평균)라는 것을 사용합니다.

이는 데이터의 평균을 계산하는 알고리즘 중 하나로, 오래된 데이터는 낮은 가중치를 주는 방법으로 에러 값의 포인트 하나가 급격하게 증가하는 상황을 방지해 줄 것이다.

에러를 전처리 후 임계값을 지정해야 한다. 임계값은 도메인 전문가나, 개발자가 정상데이터와 비교하여 임의로 지정할 수 있지만, 각 에러셋에 따라 임계값을 다르게 설정시킬 수 있다(Dynamic Error Thresholds).

논문: Detecting Spacecraft Anomalies Using LSTMs and Nonparametric Dynamic Thresholding

profile
끊임없이 뭔가를 남기는 사람

0개의 댓글