1. 연구 개요
최근 센서 기술의 발전으로 센서 데이터의 활용도가 늘어나는 추세이며 여러 기능이 결합된 복잡한 시스템에 서 고장이 발생하기 전 유지보수를 위한 예방보전의 중요 성이 대두되고 있다. 또한 일반적인 제조, 항공 및 국방 등 많은 분야에서 고장예지 및 건전성관리(prognosis and health management, PHM)에 대해 활발히 논의되고 있으 며 일부 분야에서는 적용 중에 있다[2]. 고장예지 및 건전 성 관리 기술은 크게 물리 기반 접근법, 데이터주도 접근 법, 융합 접근법으로 구분된다[19]. 본 논문에서는 데이터 주도 접근법 중 머신러닝 기법을 통해 항공 엔진의 잔여 수명을 예측하는 모델을 구축하고 모델의 예측 성능을 향 상시키기 위한 데이터 전처리 기법을 제안하고자 한다.
사용한 데이터는 2008 PHM Conference Challenge에서 배포한 센서 기반의 수집 데이터로 총 218개의 항공엔진 정보를 다루고 있다. 각 엔진은 알려지지 않은 초기 마모 및 제작 편차가 존재하며 시스템 및 도메인별 정보가 별도 로 제공되지 않았다. 일반적인 수명 추정을 위한 열화데이 터 분석은 시험대상 부품 특성에 따라 여러 단계별 통계적 추정과 예측을 실시하여 열화모델을 선정한다[20]. 그러나 본 연구에서는 부품 특성을 파악하기에 어려움이 존재하 므로 머신러닝 모델을 활용하여 측정값들을 통해 잔여수 명을 예측하고자 한다.
일반적인 시계열 모델을 사용하기에 각 엔진별 고장이 발생하는 시점이 다르므로 시퀀스 길이 및 모델 파라미터 를 지정하기에 한계가 존재한다. 따라서 본 연구에서는 시 계열 모델이 아닌 다른 정적모델(static model)을 통해 잔여 수명을 예측하고자 하였다. 각 모델별 분할 방법을 다르게 지정하였으며 예측 성능 향상을 위해 데이터 전처리 과정 에 슬라이딩 윈도우(sliding window)기법[7]을 제안하였다.
본 논문에서는 제 2장에서 관련된 문헌들을 소개하고 제 3장에서 연구 프로세스를 소개한다. 제 4장을 통해 실 험결과를 보이고 마지막으로 제 5장에서 결론 및 추후 연 구 과제를 제시한다.
2. 관련 문헌 연구
관련 문헌 연구는 크게 세 가지로 나누어 수행하였다. 첫 번째로, 본 연구에서 사용한 동일한 데이터를 통해 항 공 엔진의 잔여수명을 예측한 방법론에 대한 문헌연구를 수행하였다. Heimes[11]는 해당 데이터를 다변량 시계열 데이터 측면에서 모든 데이터를 활용한 잔여수명 예측을 위해 MLP(multi-layer perceptron) 및 RNN(recurrent neural network) 모델을 구축하였다. Son et al.[15]은 주성분 분석 을 수행하고 성능저하지표를 구축한 후 확률론적 예측 모델 링을 위해 위너 프로세스(wiener process)를 활용하였다. 이외에도 효과기반 예측을 위한 열화 매개변수를 식별하 고, 칼만필터(Kalman filter)와 인공신경망의 앙상블 모델 을 구축하는 등 다양한 방법론을 통해 항공 엔진의 잔여 수명을 예측하였다[9, 17, 21].
두 번째로 열화데이터 분석 시 머신러닝의 활용성을 파악하기 위한 관련 문헌 연구를 수행하였다. Choi et al. [8]은 표면조직복제법으로 고온 부품의 열화 상태를 평가 하는 방법에 머신러닝을 적용하여 기존보다 객관적인 열 화 평가 시스템을 제안하였다. Jung and Kim[12]은 철도 차량 부품 관리의 효율적인 유지보수 시스템 구축을 위해 머신러닝 기반의 철도차량 고장진단 모델을 개발하였다. Bomtepi et al.[3]은 예측모델을 공식화하고 시계열 데이 터 처리를 위한 학습 기법에 초점을 맞추어 예측 수행 시 사용될 머신러닝 기법을 제안하였다.
마지막으로 본 논문에서 제안하는 데이터 전처리 방 법인 슬라이딩 윈도우 기법에 관한 관련 문헌 연구를 수 행하였다. Lee and Oh[16]는 슬라이딩 윈도우 기법을 활 용하여 시간적 단계에 따라 신용평점을 예측하는 모델을 구축하였다. Seo et al.[18]은 윈도우 단위의 전처리를 통 해 연속된 스트림 데이터에 대한 다차원 속성의 분류 기 법을 제안하였다. Ann[1]은 휠로더(wheel loader) 엔진의 센서 데이터를 활용하여 장비의 상태 분류를 예측하는 새로운 CNN 모델을 제안하였다. 모델 구축 시 센서 데 이터의 시그널 특성을 학습시키기 위해 슬라이딩 윈도우 기법을 활용하였으며 이동 구간으로 추출된 센서데이터 를 이미지 형태로 인식하였다.
열화데이터 분석을 위한 다양한 방법론이 연구되어 왔으며 슬라이딩 윈도우 기법 또한 다방면으로 연구가 수행되어 왔다. 그러나 정적 모델을 통해 시계열 데이터 의 잔여수명을 예측한 연구는 미흡한 상황이다. 따라서 본 연구에서는 시계열 모델이 아닌 머신러닝 기법을 통 해 잔여수명을 예측하고, 예측 성능을 향상시키고자 데 이터 전처리 과정에 슬라이딩 윈도우 기법을 적용하는 방법을 제안하고자 한다.
3. 연구 프로세스
본 논문에서 제안하는 연구 프로세스는 <Figure 1>과 같다. 먼저 모델 구축을 위해 종속변수를 산출하고 독립변 수를 정의하였다. 그 후 전체 218개의 엔진의 잔여수명 예 측을 위한 모델을 구축하였다. 모델 구축 시 훈련데이터와 시험데이터를 세 가지 방법으로 분할하였으며 모델링 및 잔여수명 예측은 Dataiku Data Science Studio (DSS)를 활 용하였다. 슬라이딩 윈도우 기법을 적용하여 각 모델의 잔 여수명 예측 성능 변동을 확인하였다. 엔진별 수명길이가 상이하므로 수명길이에 따라 나누어 모델링할 경우 예측 성능에 변동이 존재할 수 있다. 따라서 운행횟수에 따라 클러스터링을 수행하여 단기, 중기, 장기로 나눈 후 전체 데이터 모델링 과정과 동일하게 분석을 진행하였다.
먼저 전체 데이터의 변수들을 재정의하였다. 본 논문에 서 사용된 데이터는 서로 다른 218개의 항공기 엔진에 대한 센서 데이터로 각 엔진은 알려지지 않은 초기 마모 및 제작 편차가 존재한다. 수명이 서로 다른 218개의 열화데이터 셋 (unit)으로 구성되어 있으며 엔진별 설정값(operation, op) 3개와 측정값(measurement, mea) 21개가 존재한다. 데이터의 변수는 엔진 ID(unit), 엔진 운행횟수(cycle), 설정값 3개 (op1-3), 측정값 21개(mea1-21)로 총 26개로 구성되어 있다.
각 엔진별 운행횟수가 다르며 마지막 운행시점에서 시스템 고장이 발생하였다는 데이터의 설명 하에 엔진의 운행횟수를 수명 길이로 정의하였다. 데이터셋 내에 종 속변수가 존재하지 않으므로 엔진별 최대 운행횟수와 수 행된 운행횟수의 차를 잔여수명(RUL)으로 정의하여 새 로운 종속변수로 생성하였다. RUL 산출방식은 아래 수 식과 같으며 l은 엔진 ID, tmax는 엔진별 최대 운행횟수, tc은 엔진별 수행된 운행횟수를 의미한다.
<Figure 2>는 각 RUL에 따른 엔진별 설정값들(op)의 추세를 시각화한 결과이다. 이를 통해 설정값들이 5~6개 의 군집을 이루고 있으므로 설정값 변수 3개가 각기 다른 작동모드를 의미함을 추정할 수 있다. 따라서 설정값들의 k-means 클러스터링을 수행하였으며 결과는 <Figure 3> 과 같다. 이를 통해 총 6개의 작동모드가 존재함을 알 수 있다. 이후 6개의 작동모드별 RUL에 따른 측정값의 경향 성을 확인하기 위해 도식화한 결과는 <Figure 4>와 같다. <Figure 4>를 통해 특정 측정값이 RUL에 따른 경향성이 존재하며 6개의 작동모드로 구분됨을 확인하였다.
모델링 수행 시 6개의 작동모드를 설명하는 op_ID를 추 가하고[15] 종속변수를 RUL로 설정하였다. 따라서 사용된 독립변수는 op_ID와 mea1-21로 총 22개의 변수이다. 사용한 머신러닝 기법은 총 3가지로 랜덤포레스트(random forest), 그래디언트 부스트(gradient boost tree), XG 부스트(XG boost) 이다. 각 모델들 학습 시 데이터에 맞추어 Dataiku Data Science Studio(DSS) 툴을 통해 파라미터 최적화가 수행되었다.
랜덤포레스트는 Breiman에 의해 제안된 앙상블(ensemble) 기반 모형으로 의사결정나무 모형에 배깅(Bagging) 의 기본 원리와 임의성을 더한 형태이다[4]. 그래디언트 부스트는 Friedman에 의해 제안된 방법으로 의사결정나 무에 비해 여러 분류자의 예측을 종합하여 분류의 정확성 을 향상하는 앙상블 기법 중에 하나이다[10]. XG 부스트 는 Chen and Guestrin이 제시하였으며 의사결정나무의 부 스팅 기법을 병렬처리를 통해 학습속도를 개선하여 우수 성을 입증하였다[6].
센서 데이터의 경우 시그널 특성이 존재하므로 한 시 점이 아닌 패턴 변화를 감지해야한다[14]. 정적인 머신러 닝 기법을 통해 데이터의 패턴 변화 및 시계열성을 다루 기에 어려움이 존재하므로 데이터 내에 시계열성을 포함 시키고자 윈도우 기법을 통한 데이터 전처리 방법을 제 안하였다.
윈도우 기법 중 슬라이딩 윈도우 기법은 데이터를 시 간의 흐름에 따라 순차적으로 윈도우 사이즈만큼의 새 로운 관측치를 정의하는 것이다[5, 13]. 윈도우 사이즈는 3으로 설정하였으며 측정값 변수들의 하향 및 상향 추 세를 반영하고자 최소값과 최대값을 추출하여 윈도우 변 수를 생성하였다. 윈도우 변수 산출방식은 다음 수식과 같다.
는 α의 각 측정값 변수(mea01-21)의 i번째 운행횟 수에서의 기존 측정값을 의미한다. s는 슬라이딩 윈도우 사이즈를 의미하며 는 생성되는 윈도우 변수를 의미한 다. 따라서 슬라이딩 윈도우 기법을 적용한 후 사용된 독 립변수는 추가된 최소, 최대 윈도우 변수 42개와 기존 변수들 21개를 합친 63개의 측정값 변수와 명목형 독립 변수인 op_ID로 총 64개로 구성된다.
일반적인 경우 훈련데이터와 시험데이터를 분할할 시 랜덤하게 분할하나, 슬라이딩 윈도우 변수의 시계열성이 손상될 우려가 있다. 따라서 본 연구에서는 랜덤 분할, 엔진별 분할, 최대 사이클별 분할로 방법을 나누어 모델 링하였으며 각 분할 방법과 슬라이딩 윈도우 기법에 따 른 예측 성능의 변동을 확인하였다.
각 엔진별 수명길이가 다르므로 수명길이에 따라 나 누어 모델링할 경우 예측 성능에 변동이 존재할 수 있다. 따라서 수명길이를 기준으로 클러스터링을 통해 단기, 중기, 장기 수명을 지닌 엔진으로 나누어 데이터셋을 구 축하였다. 모델링 과정은 전체 데이터 모델링 과정과 동 일하게 진행하였으며 예측 성능의 변동을 확인하였다.
4. 실험분석 및 결과
4.1 전체 데이터를 통한 잔여수명 예측
전체 218개의 엔진에 대해 앞서 언급한 슬라이딩 윈도 우 기법 사용 여부 및 분할방식별로 세 가지 모델을 통 한 예측 성능 결과는 <Table 1>과 같다. 슬라이딩 윈도 우 기법을 사용하지 않은 경우, 분할 방법에 따른 예측 성능은 엔진별 분할 시 예측력이 가장 높았으나 나머지 분할 방법과 큰 차이를 보이지 않았다. 그러나 슬라이딩 윈도우 기법을 적용한 경우, 랜덤 분할 시 XG 부스트 모 델의 성능이 R2은 0.8368, RMSE는 27.718로 가장 높음 을 확인하였다.
랜덤 분할 시 슬라이딩 윈도우 기법을 적용하여 예측 성능이 크게 향상되었으나, 다른 분할 방법에서는 큰 차 이를 보이지 않았다. 이는 엔진별 수명길이의 차이로 인 한 현상으로 사료되었으며 수명길이에 따라 엔진을 나누 어 모델링을 진행할 시 전체 데이터를 통해 모델링하는 것에 비해 예측 성능이 향상될 것이라 판단하였다. 클러 스터링을 통해 단기, 중기, 장기로 수명길이별 군집을 형 성하였으며 각 군집별 모델을 구축하였다.
4.2 수명길이 군집별 잔여수명 예측
운행횟수를 기준으로 클러스터링을 수행하여 수명길이 가 단기(cluster_0), 중기(cluster_1), 장기(cluster_2)인 엔진 으로 군집을 형성하였다. 그 결과 단기 82개, 중기 98개, 장기 38개의 엔진으로 구성되었다. 군집별 잔여수명예측 을 수행할 시 같은 추세를 보여야하므로 이를 확인하기 위해 데이터 시각화를 진행하였다. <Figure 5>는 대표적 으로 mea03, mea11, mea17에 대한 추세 그림이다. 이를 통해 수명길이에 따른 차이가 존재할 뿐 수명 군집별로 비슷한 추세를 보임을 확인하였다. 따라서 수명길이별로 나누어 잔여수명을 예측하였으며 각 수명 군집별로 전체 데이터를 학습한 방법과 동일하게 모델링하였다. 모델링 수행결과는 <Table 2>와 같다.
수명군집별 예측 성능이 가장 우수한 모델은 슬라이 딩 윈도우 기법을 적용한 랜덤 분할 방식의 XG부스트 모델로 동일하였다. 윈도우 기법 적용 전, 분할방법에 따 른 예측력 변동을 확인하였을 때 엔진별 기준으로 분할 하는 방법이 우수하며 큰 변동을 보이지는 않았다. 그러 나 윈도우 기법을 적용할 시 전반적으로 예측 성능이 크 게 향상됨을 확인하였다.
5. 결론 및 추후 연구과제
본 연구는 열화 특성 파악에 어려움이 존재하는 항공 엔진의 잔여 수명을 예측하기 위해 머신러닝 기법을 활 용하였다. 엔진별로 시퀀스 길이가 다르므로 시계열 모 델이 아닌 정적인 머신러닝 기법을 활용하였다. 데이터 에 임의로 시계열적인 특성을 부가하여 데이터 전처리 수행 시 슬라이딩 윈도우 기법을 사용하였으며, 다양한 분할방법을 통해 모델링 한 후 예측 성능을 비교하였다.
전체 데이터에 대한 모델링 및 엔진수명에 따른 각 군 집별 모델링을 수행한 결과, 군집별로 잔여 수명을 예측 하는 것이 비교적 우수한 성능을 보이는 것을 확인하였 다. 분할방법에 따른 예측 성능의 변동은 미미하였으며, 슬라이딩 윈도우 기법 적용 시 전반적으로 예측 성능이 향상되었다. 실험결과 슬라이딩 윈도우 기법을 적용한 랜덤 분할 방식의 XG 부스트 모델이 가장 우수한 예측 성능을 보임을 확인하였다.
정적 모델링 수행 시, 데이터의 시계열성이 손실될 수 있으나 랜덤 분할 방식의 예측성능이 가장 우수함을 확인 하였다. 전체 데이터 학습의 경우, 데이터 분할 시 수명길 이가 편향되어 학습될 가능성이 존재하므로 엔진별 및 최 대 수명길이별 분할이 랜덤 분할 방식에 비해 낮은 성능을 보인다고 사료된다. 그러나 편향을 고려하여 수명길이별 단기, 중기, 장기로 데이터셋을 나누어 학습을 진행한 결 과 또한 랜덤분할 방식의 예측성능이 가장 우수하였다. 이 는 초기 마모 편차에 의한 열화추세 및 열화발생시점의 차이에 의한 현상이라고 사료된다.
본 논문에서는 슬라이딩 윈도우 기법을 활용한 데이 터 전처리 과정이 예측 성능에 어떠한 영향을 미치는지 확인하고자 하였으며, 수명길이와 관계없이 동일한 윈도 우 사이즈를 설정하였다. 그러나 윈도우 사이즈에 따라 도출되는 관측치가 다르므로 수명길이에 따라 다르게 설 정할 시 보다 우수한 예측모델을 구축할 수 있을 것으로 사료된다. 또한, 본 연구에서는 시계열 모델 사용에 한계 가 존재할 시 데이터 변환을 통한 예측 성능 변동을 확 인하고자 시계열 모형을 고려하지 않았으나 추후 시계열 모델 활용할 시 더욱 높은 예측 성능을 보일 수 있을 것 이라 기대된다.
본 연구에서 사용한 항공 엔진 데이터만이 아닌 유사 한 특성을 지닌 데이터에도 적용할 수 있을 것이다 기대 된다. 본 연구를 통해 시스템 및 도메인 정보를 알 수 없 으며 시계열 모델을 활용하기 어려운 경우, 제안한 전처 리 방법을 활용하여 예측 성능 향상을 도모할 수 있다.