[Home] Measurement로 돌아가기
11장 빅데이터 분석 및 머신러닝 적용
Big Data Analysis and Machine Learning for Smart Infrastructure
목차
1. 개요
장기 SHM 시스템은 수십~수백 개의 센서로부터 연속적인 데이터를 생성한다. 예를 들어, 100개 채널을 1 kHz로 수집하면 하루 약 8.64 GB의 원시 데이터가 발생한다. 이를 단순 저장·육안 검토로 활용하는 것은 불가능하며, 빅데이터 분석과 머신러닝(ML) 기술을 통해 자동화된 패턴 인식, 예측, 의사결정 지원이 필요하다.
스마트 인프라에서 ML의 주요 적용 영역은 다음과 같다.
이상 탐지(Anomaly Detection): 정상 상태를 벗어난 이상 거동 자동 감지
손상 분류(Damage Classification): 손상 유형 자동 분류
잔존 수명 예측(RUL Prediction): 구조물 수명 예측
하중 추정(Load Estimation): 응답으로부터 작용 하중 역추산
2. 계측 데이터 전처리
2.1 결측값 처리
선형 보간(Linear Interpolation): 짧은 결측 구간에 적합
이전값 유지(Forward Fill): 정적 계측 데이터에 적합
모델 기반 보간(MICE, KNN Imputation): 다변량 결측 처리
2.2 이상치(Outlier) 처리
Z-score: \( |Z| = \left|\frac{x - \mu}{\sigma}\right| > 3 \) 이면 이상치 의심
IQR 방법: \( x < Q_1 - 1.5 \cdot IQR \) 또는 \( x > Q_3 + 1.5 \cdot IQR \)
Isolation Forest: 고차원 데이터에 효과적인 비지도 이상치 탐지
2.3 특성 추출 (Feature Extraction)
원시 시계열 데이터에서 ML 모델 입력으로 사용할 특성을 추출한다.
영역 특성 예시
시간 영역 평균, 분산, RMS, 첨도(Kurtosis), 왜도(Skewness), 피크-대-피크
주파수 영역 고유 진동수, 피크 주파수, 스펙트럼 밴드 에너지, PSD 면적
시간-주파수 웨이블릿 에너지, STFT 계수, Hilbert-Huang 스펙트럼
통계적 이동 평균, 이동 표준편차, 자기 상관 계수
2.4 데이터 정규화
Min-Max 정규화:
\[ x' = \frac{x - x_{min}}{x_{max} - x_{min}} \in [0, 1] \]
Z-score 표준화:
\[ x' = \frac{x - \mu}{\sigma} \]
3. 이상 탐지 알고리즘
3.1 One-Class SVM (OCSVM)
정상 상태 데이터만으로 학습하여 데이터 분포의 경계를 결정하는 비지도 학습 방법이다. 손상 데이터 없이도 이상 탐지가 가능하다.
3.2 Isolation Forest
이상치는 정상 데이터보다 더 적은 분할(split)로 고립된다는 원리를 이용한다. 고차원 데이터에 효율적이다.
이상 점수 (Anomaly Score):
\[ s(x, n) = 2^{-\frac{E[h(x)]}{c(n)}} \]
여기서 \( E[h(x)] \): 트리 내 경로 길이 평균, \( c(n) \): 정규화 상수
s ≈ 1: 이상치, s ≈ 0.5: 정상
3.3 Autoencoder 기반 이상 탐지
정상 데이터를 압축(인코딩)했다가 복원(디코딩)하도록 학습된 신경망이다. 정상 데이터는 복원 오차가 작고, 이상 데이터는 복원 오차가 커지는 원리를 이용한다.
재구성 오차 (Reconstruction Error):
\[ RE = \frac{1}{n}\sum_{i=1}^{n}(x_i - \hat{x}_i)^2 \]
RE > threshold: 이상으로 판정
4. 회귀 모델 (Regression)
4.1 응답 예측
하중·환경 조건(입력)으로부터 구조물 응답(출력)을 예측하거나, 응답으로부터 하중을 역추산하는 데 회귀 모델을 적용한다.
다중 선형 회귀 (MLR): 선형 관계 가정, 해석 용이, 빠른 학습
서포트 벡터 회귀 (SVR): 비선형 관계 처리 가능, 소규모 데이터에 적합
랜덤 포레스트 (RF): 앙상블, 과적합 저항성 높음
그래디언트 부스팅 (XGBoost, LightGBM): 높은 예측 성능
4.2 모델 평가 지표
\[ RMSE = \sqrt{\frac{1}{n}\sum_{i=1}^{n}(y_i - \hat{y}_i)^2} \]
\[ MAE = \frac{1}{n}\sum_{i=1}^{n}|y_i - \hat{y}_i| \]
\[ R^2 = 1 - \frac{\sum(y_i - \hat{y}_i)^2}{\sum(y_i - \bar{y})^2} \]
5. 분류 모델 (Classification)
5.1 손상 유형 분류
AE 신호, 진동 특성, 균열 패턴 등을 특성으로 하여 손상 유형(균열, 부식, 박리 등)을 자동 분류한다.
k-최근접 이웃 (k-NN): 단순, 해석 용이, 고차원에서 성능 저하
결정 트리 (Decision Tree): 해석 가능성 최고, 과적합 취약
랜덤 포레스트: 앙상블로 과적합 개선, 특성 중요도 제공
SVM: 소규모 고차원 데이터에 강점
5.2 분류 성능 평가
\[ Precision = \frac{TP}{TP + FP}, \quad Recall = \frac{TP}{TP + FN} \]
\[ F_1 = 2 \cdot \frac{Precision \times Recall}{Precision + Recall} \]
불균형 데이터셋(손상 사례 < 정상 사례)에서는 F1-score와 AUC-ROC를 주요 지표로 사용한다.
6. 딥러닝 기반 예측 (CNN / LSTM)
6.1 합성곱 신경망 (CNN)
1D-CNN은 시계열 신호에서 지역적 특성(local pattern)을 자동 추출하는 데 탁월하다. AE 신호, 진동 신호의 손상 분류에 효과적이다.
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Conv1D(64, kernel_size=3, activation='relu', input_shape=(window, n_features)),
tf.keras.layers.MaxPooling1D(pool_size=2),
tf.keras.layers.Conv1D(128, kernel_size=3, activation='relu'),
tf.keras.layers.GlobalAveragePooling1D(),
tf.keras.layers.Dense(64, activation='relu'),
tf.keras.layers.Dense(n_classes, activation='softmax')
])
6.2 장단기 메모리 (LSTM)
LSTM은 장기 의존성(long-term dependency)을 학습할 수 있는 순환 신경망으로, 시계열 예측(예: 미래 구조물 응답 예측, 잔존 수명 예측)에 적합하다.
LSTM 게이트 방정식:
\[ \mathbf{f}_t = \sigma(\mathbf{W}_f \cdot [\mathbf{h}_{t-1}, \mathbf{x}_t] + \mathbf{b}_f) \quad \text{(forget gate)} \]
\[ \mathbf{i}_t = \sigma(\mathbf{W}_i \cdot [\mathbf{h}_{t-1}, \mathbf{x}_t] + \mathbf{b}_i) \quad \text{(input gate)} \]
\[ \mathbf{o}_t = \sigma(\mathbf{W}_o \cdot [\mathbf{h}_{t-1}, \mathbf{x}_t] + \mathbf{b}_o) \quad \text{(output gate)} \]
6.3 전이 학습 (Transfer Learning)
다른 구조물이나 도메인에서 사전 학습된 모델을 새로운 구조물의 계측 데이터에 미세 조정(fine-tuning)하는 기법이다. 레이블 데이터가 부족한 계측 환경에서 특히 유용하다.
7. 실전 워크플로우
8. 정리
계측 데이터 전처리(결측값, 이상치, 정규화)는 ML 성능의 기반이다.
이상 탐지는 정상 데이터만으로 학습하는 비지도 학습(OCSVM, Isolation Forest, Autoencoder)이 핵심이다.
회귀 모델로 구조 응답 예측, 분류 모델로 손상 유형 구분에 활용한다.
1D-CNN은 시계열 신호의 국부 패턴 추출에, LSTM은 장기 시계열 예측에 강점이 있다.
레이블 데이터 부족 문제는 전이 학습과 데이터 증강으로 부분적으로 해결할 수 있다.
모든 ML 워크플로우는 데이터 수집부터 모델 배포까지 체계적인 파이프라인 구성이 필요하다.