DOI QR코드

DOI QR Code

A Study on Time Series Cross-Validation Techniques for Enhancing the Accuracy of Reservoir Water Level Prediction Using Automated Machine Learning TPOT

자동기계학습 TPOT 기반 저수위 예측 정확도 향상을 위한 시계열 교차검증 기법 연구

  • Bae, Joo-Hyun (Agriculture and Life Sciences Research Institute, Kangwon National University) ;
  • Park, Woon-Ji (Agriculture and Life Sciences Research Institute, Kangwon National University) ;
  • Lee, Seoro (Agriculture and Life Sciences Research Institute, Kangwon National University) ;
  • Park, Tae-Seon (Agricultural Infrastructure Development, Korea Rural Community Corporation) ;
  • Park, Sang-Bin (Water Resources System Department, Korea Rural Community Corporation) ;
  • Kim, Jonggun (Department of Regional Infrastructure Engineering, Kangwon National University) ;
  • Lim, Kyoung-Jae (Department of Regional Infrastructure Engineering, Kangwon National University)
  • Received : 2023.07.19
  • Accepted : 2023.10.11
  • Published : 2024.01.31

Abstract

This study assessed the efficacy of improving the accuracy of reservoir water level prediction models by employing automated machine learning models and efficient cross-validation methods for time-series data. Considering the inherent complexity and non-linearity of time-series data related to reservoir water levels, we proposed an optimized approach for model selection and training. The performance of twelve models was evaluated for the Obong Reservoir in Gangneung, Gangwon Province, using the TPOT (Tree-based Pipeline Optimization Tool) and four cross-validation methods, which led to the determination of the optimal pipeline model. The pipeline model consisting of Extra Tree, Stacking Ridge Regression, and Simple Ridge Regression showed outstanding predictive performance for both training and test data, with an R2 (Coefficient of determination) and NSE (Nash-Sutcliffe Efficiency) exceeding 0.93. On the other hand, for predictions of water levels 12 hours later, the pipeline model selected through time-series split cross-validation accurately captured the change pattern of time-series water level data during the test period, with an NSE exceeding 0.99. The methodology proposed in this study is expected to greatly contribute to the efficient generation of reservoir water level predictions in regions with high rainfall variability.

Keywords

Ⅰ. 서론

자연재해 중 위험성이 큰 홍수 통제뿐만 아니라 효과적인 수자원 관리 차원에서도 저수지의 수위를 정확히 예측한다는 건 중요하다고 볼 수 있으며, 기존의 통계적 방법과 다양한 기계학습 (Machine Learning) 알고리즘들이 저수지 수위 예측에 활용되어왔다 (Das et al., 2016; Castillo-Botón et al., 2020).

저수지의 수위 변화를 정확히 예측하고자 지도 기계학습 알고리즘을 사용한 연구들은 다수 있으며, 그 중 인공신경망(artificial neural network) 기반의 모델들이 하천 유량과 수위, 지하수위 등과 같은 비선형 수문변수들의 모델링에 지속적으로 활용되어 오고 있다 (Rajaee et al., 2011; Kim et al., 2015). 특히 저수지 수위 예측 관련한 연구에서는 홍수기간의 수위 예측을 뉴로 퍼지 방법 (neuro-fuzzy approach)을 적용한 바가 있으며 (Chang and Chang, 2006), 일단위 저수위 예측을 위해서 SVM (Support Vector Machine)을 적용하여 타 알고리즘과의 비교를 진행한 바가 있다 (Hipni et al., 2013). 또한 강수량과 수위를 입력변수로 사용하여 저수위를 예측한 연구에서는 베이지안 선형회귀 (Bayesian Linear Regression)가 우수했고 강수량, 수위, 방류량이 입력변수인 경우는 부스팅 결정트리 회귀 (Boosted Decision Tree Regression)가 결정 포레스트 회귀 (Decision Forest Regression)와 신경망 회귀 (Neural Network Regression) 보다 우수한 결과를 보여준 바가 있다(Sapitang et al., 2020).

국내 충주댐에서도 다양한 기계학습 알고리즘을 사용하여 저수지의 수위를 예측하는 방법을 제시한 바가 있다. 예측 모델을 개발하기 위해 저수지의 과거 수위 데이터와 기상 데이터를 활용하였으며, ARIMA (Autoregressive Integrated Moving Average), SVM (Support Vector Machines), ANN (Artificial Neural Networks) 등의 기계학습 모델을 비교 평가하였고 실험 결과, SVM과 ANN 모델이 저수지 수위 예측에 효과적인 성능을 보였으며, 특히 ANN 모델의 경우 다른 모델보다 더 높은 예측 정확도를 나타내었다. 또한, 저수지 수위 예측에 기상 데이터가 중요한 영향을 미침을 확인하였다 (Seo et al., 2017).

이처럼 수위 예측에 있어서 다양한 알고리즘들의 비교 연구는 많으나 앙상블 (ensemble)이나 하이브리드 (hybrid) 방식의 알고리즘 적용 연구는 아직 미미한 상황이다. Li et al. (2021)의 연구에서는 순환 신경망 (Recurrent Neural Network, RNN)의 일종으로, 데이터의 단기 및 장기적인 종속성을 모델링한 양방향 장기 및 단기 기억 (Bidirectional Long Short-Term Memory, Bi-LSTM)과 시계열 데이터에서 다양한 모드나 성분을 분리하는 신호 분해 방법인 변동 모드 분해 (Variational Mode Decomposition, VMD)라는 두 가지 기법을 결합하여 유입량 예측 모델의 정확도를 향상시킨 바가 있다. 하지만 일일 저수지 유입량 예측으로 시단위의 저수지 정보 예측 관련 연구는 그 빈도가 낮은 편이다 (Li et al., 2021).

이러한 기계학습 방법들은 수위 시계열 데이터의 복잡한 동적 특성과 시간적 의존성을 포착하는 데 어려움을 겪는 경우가 많다. 이러한 이유로 정확하고 신뢰성 있는 수문학 시뮬레이션으로 효율적인 홍수 예측이 이루어져 왔으며 SWAT (Soil and Water Assessment Tool)과 HEC-RAS (Hydrologic Engineering Center’s River Analysis System)을 연계하여 지상 강우-유출 과정과 강 하천 유체 역학을 동적으로 연결하는 자동화시스템을 개발하여 강 수계에서 홍수기 분석시 R2 0.8 이상의 성능과 홍수 크기와 타이밍을 정확히 예측한 바가 있다 (Loi et al., 2019). 이처럼 저수지나 강에서 역학을 이용한 방식의 수문학 물리 모델의 적용으로 홍수기 동안의 정확한 피크와 기간을 모의하는 바는 많지만 아직 기계학습에서는 실시간으로 변화는 홍수기의 저수위 예측에 어려움이 수반되는 실정이다. 하지만 기계학습 모형의 경우는 새로운 데이터가 추가되거나 시스템이 변화할 때 비교적 빠르게 모델을 업데이트하고 적응시킬 수 있는 장점들이 있다.

이에 본 연구에서는 자동화된 기계학습 알고리즘의 활용을 통해 수동적인 특성 공학 작업의 필요성을 제거하여 모델이 데이터에서 관련성이 있는 특징과 패턴을 자동으로 식별할 수 있게 할 것이며 시계열 모델 교차검증 방식을 통해 시계열 모델의 성능을 견고하게 평가하는 데 도움을 줌으로 인해, 한층 더 예측률을 높일 수 있는 우수한 실시간 시단위 저수위 예측 모델을 개발하고자 한다.

Ⅱ. 연구방법

1. 연구대상 지역

강릉시 성산면에 위치한 오봉저수지의 실시간 저수위 측정을 위한 연구대상 지역은 Fig. 1과 같이 오봉저수지를 포함한 저수지로 유입되는 왕산천, 도마천 그리고 방류되는 하류지역인 강릉남대천과 오봉저수지 인근 어흘천을 포함한다. 예측 모형의 입력자료가 되는 측정값을 생성하는 측정지점들은 A∼E로 표기된 지점들로 A지점인 도마1과 C지점인 왕산1에는 수위계와 강우량계를 설치하여 자료를 제공받고 있으며, B지점인 도마2, D지점인 왕산2에서는 강우량 정보만 제공받고 있다. 어흘천에 위치한 E지점과 강릉남대천에 위치한 F지점에서는 수위 정보를 수신받고 있으며 이 측정자료들은 모두 실시간으로 입력자료로 사용하고 있다.

NGHHCI_2024_v66n1_1_f0001.png 이미지

Fig. 1 The location of study area

그리고 기상청의 초단기 실황 강수량 제공은 왕산면 AWS (Automatic Weather System) 지점 자료를 오픈 API (Application Programming Interface)로 초단기 1∼4시간 후 예보 강수량과 1∼12시간 후 단기예보 강수량 정보를 함께 가져오고 있다.

2. 자동기계학습모델

기계학습 기법을 적용하여 저수위와 같은 시계열 자료를 학습하고 다음 시간에 따른 목표값 (target)을 예측하려면 지도학습 회귀모델을 사용해야 한다. 지도학습 회귀모델은 크게 선형과 비선형 모델로 분류할 수가 있다. 선형모델로는 최소제곱법 (Ordinary Least Squares, OLS)과 정규화 (regularized) 방법을 적용한 라쏘 (Least Absolute Shrinkage and Selection Operator, LASSO), 능형 회귀분석 (ridge regression analysis), 엘라스틱 넷 (Elastic Net)을 많이 적용한다 (Hoerl and Kennard, 1970; Fu and Knight, 2000; Ogutu et al., 2012; Bae et al., 2019). 비선형모델의 경우는 신경망 (NN, Neural Network)이 대표적이며, 신경망 기반의 RNN (Recurrent Neural Network), LSTM (Long Short-Term Memory), GRU (Gated Recurrent Unit) 및 CNN-LSTM (Convolutional Neural Network-LSTM) 등의 딥러닝 모델들이 있으며, 그 외 랜덤포레스트 (Random Forest)와 익스트림 그래디언트 부스트 등의 부스트 트리와 같은 트리 기반 모델들을 주로 사용한다(Hochreiter and Schmidhuber, 1997; Gal and Ghahramani, 2016; Chen and Guestrin, 2016). 이 모델들 외에도 배깅(Bagging)기법과 같은 앙상블 방식과 완전 하위집합 회귀(CRS, complete subset regression)나 선형 및 비선형 모델의 아이디어를 결합한 새로운 기계학습 예측 방법을 생성하는 “하이브리드 방법” 등이 있다 (Elliott et al., 2013).

이처럼 많은 회귀 알고리즘들 중 저수위 예측에서 우수한 모델을 보다 빠르게 최적화시켜서 추천받기 위해 자동기계학습 (Automated Machine Learning, AutoML) 기법을 활용할 수가 있다. 자동기계학습은 기계학습의 모델 선택, 하이퍼파라미터 튜닝, 특성 공학 등의 과정을 자동화하여 효율적인 예측, 분류, 판단 작업을 수행하는 인공지능 분야이다. 기계학습 알고리즘의 복잡성과 효율적인 모델 개발에 대한 요구가 증가함에 따라, 자동기계학습은 학계와 산업계에서 상당한 관심을 받고 있다 (Hutter et al., 2019).

자동기계학습은 데이터 전처리, 알고리즘 선택, 하이퍼파라미터 최적화, 모델 평가 등의 여러 핵심 구성요소로 구성되며, 기계학습 파이프라인을 자동화하여 데이터 과학자와 기계학습 전문가의 수작업을 줄이고 효율성을 향상시킨다(Doke and Gaikwad, 2021). 자동기계학습 종류로는 Keras 모듈을 기반으로 하며 자동 딥러닝 (Deep Learning) NAS (Neural Architecture Search)에 중점을 둔 파이썬 라이브러리인 Auto-Keras와 PyTorch 프레임워크와 다중 충실도 최적화를 사용하여 최상의 아키텍처의 네트워크 유형, 계층 수, 활성화 기능 등의 매개변수를 검색하는 방식을 사용하는 Auto-PyTorch 등이 있다. 그 외 사이킷런 (Scikit-Learn) 프레임워크 위에 구축된 자동기계학습 라이브러리로 대표적인 Auto-Sklearn이 있으며 본 연구에 사용되는 TPOP (Tree-based Pipeline Optimization Tool)도 회귀모형에서 많이 사용되고 있다. 그외 AutoGluon, H20 AutoML 등이 있다 (Ferreira et al., 2021).

TPOT은 최적의 파이프라인을 생성하기 위해 유전 알고리즘을 사용한다. 유전 알고리즘은 진화의 개념을 사용하여 최상의 솔루션을 찾는 기술이다 (Feurer et al., 2015; Olson and Moore, 2016). TPOT은 적합한 특성, 전처리, 알고리즘, 하이퍼파라미터를 찾기 위해 최적화된 유전 알고리즘을 사용하여 최적의 파이프라인을 생성하기 위해 여러 개의 모델을 앙상블한다. 앙상블을 위해 스태킹 기법을 사용하는데 이는 여러 모델을 학습하여 각 모델의 예측 결과를 사용하여 새로운 모델을 학습한다. 즉 예측 결과를 기반으로 새로운 모델을 학습하므로 앙상블 모델은 개별 모델보다 더 나은 예측 성능을 제공할 수 있다. 또한 다양한 모델을 탐색하여 최상의 모델을 찾는데 TPOT은 선형 모델, 결정 트리, 랜덤 포레스트, 그래디언트 부스팅 등 다양한 모델을 사용한다. 그리고 알고리즘을 결합하여 더 나은 성능을 제공하는데 예를 들어, 랜덤 포레스트와 그래디언트 부스팅을 결합하여 랜덤 포레스트의 안정성과 그래디언트 부스팅의 예측 성능을 결합할 수가 있게 되는 것이다. 따라서, TPOT은 다양한 모델과 알고리즘을 결합하여 최적의 파이프라인을 생성하고 스태킹 기법을 적용하여 예측 성능을 최대화한다. TPOT 진행 방식은 Fig. 2와 같으며 본 연구에서는 TPOT에서 추천해주는 알고리즘들을 4개 방식의 시계열 자료 5차 교차검증 방식을 통해 모델을 선정하고자 한다.

NGHHCI_2024_v66n1_1_f0002.png 이미지

Fig. 2 TPOT workflow and cross-validation strategy of selected models

본 연구에서 사용한 자동기계학습기법인 TPOT을 통해 추천된 1∼12시간 후 저수위 예측 알고리즘들 정보는 Table 1과 같다. 12개 알고리즘들 중 유사한 알고리즘은 생략하고 총 7개 종류의 파이프라인 모델들만 선정하여 이중에서 1∼12시간 후 저수위 예측에 있어서 모두 우수한 결과를 보여줄 대표 모델을 선정하고자 한다. 먼저, 7시간과 12시간 후 예측에 추천된 엑스트라 트리, 스태킹한 능형 (Ridge) 회귀, 단순 능형회귀의 앙상블모델 (ET_S(R)_R), 1, 6, 11시간 후 예측에는 라쏘라즈 (LL)가, 그 외 최소-최대 스케일러 전처리를 적용한 능형회귀 (m_R), 원핫인코더 전처리 적용한 능형회귀 (o_LL), 스태킹 라쏘라즈와 라쏘라즈 앙상블 모델 (S(LL)_LL), 러버스트 스케일러 전처리 후 라쏘라즈 (r_LL), 스탠다드 스케일러 전처리 후 능형회귀 (s_R)이며 차후 시계열 모델 교차검증 방식을 통해 가장 우수한 모델을 선정하고자 한다. 여기서 한가지 모델로 통일하려고 하는 바는 실시간 예측 시스템에서 시간별 예측값의 일관성을 주기 위함이다. 즉 각 시간별로 알고리즘을 달리하면 시계열 증가 혹은 감소 추세에서 벗어나는 결과를 나타내는 현상을 보이기도 하기에 대표 알고리즘으로 통일하고자 함이다.

Table 1 The time-specific prediction model information recommended by TPOT

NGHHCI_2024_v66n1_1_t0001.png 이미지

3. 학습자료 구축

오봉저수지 저수위 예측 모형 개발을 위한 학습과 교차 검증에는 2021년 8월 2일 15시부터 2023년 6월 22일 3시의 시단위 자료들을 사용하였다. 그리고 이 기간동안 측정된 강우량과 하천 수위, 기상청 초단기와 단기예보 강수량, 그리고 농촌 용수종합정보시스템 (https://rawris-am.ekr.or.kr/wrms)의 실시간 계측정보를 활용하였다.

홍수기 예측시 저수위 예측에 있어서 정확도를 향상시키기 위해 학습기간 동안의 부족한 홍수 발생 저수 정보를 보강하고자 고수위 발생 시나리오에 대한 정보를 추가 확보하였다. 100년 빈도 중 10시간 동안 강수량 307.7 mm, 12시간 동안 340.9 mm, 24시간 동안 523.0 mm 발생 시나리오와 200년 빈도 중 10시간 동안 강수량 338.6 mm, 12시간 동안 377.5 mm, 24시간 동안 580.3 mm 시나리오, 그리고 500년 빈도의 10시간 동안 강수량 379.3 mm, 12시간 동안 423.5 mm, 24시간 동안 654.5 mm 발생 시나리오로 총 9개 고수위 발생 시나리오 기간의 입력자료를 생성하였다. 또한 누적 강수량이 359 mm로 강릉지역 대부분의 도로가 침수되었던 태풍 “미탁”기간 (2019년 10월 2일 9∼10월 3일 15시) 동안의 오봉저수지 고수위 저수량 정보도 포함하였다. 이때 고수위 정보를 생성하기 위해 FLDWAV 모델링 결과와 하천 수위 기계학습 비선형 회귀모형을 사용하였다.

기상자료개방포털 (https://data.kma.go.kr)에서 오픈 API로 제공받고 있는 자료들로는 동네예보 구역 (5 km 격자)에 대한 대표 AWS 관측값과 예보값으로 왕산면 지점 (128.84021944444444°E, 37.66985555555555°N, x좌표 92, y좌표 130)의 초단기 실황(http://apis.data.go.kr/1360000/VilageFcstInfoService_2.0/getUltraSrtNcst)과 초단기 예보 (http://apis.data.go.kr/1360000/VilageFcstInfoService_2.0/getUltraSrtFcst), 단기 예보 (http://apis.data.go.kr/1360000/VilageFcstInfoService_2.0/getVilageFcst)를 받고 있다. 초단기 실황과 예보는 예보시점부터 6시간 이내에 대하여 행하는 예보로 매시 30분에 발표되며, 단기예보는 예보기간과 구역을 시공간적으로 세분화하여 발표하는 자료로 3시간 간격으로 발표되고 있으며 최대 72시간 이내 예보 정보를 얻을 수 있으며, 본 연구에서는 매 3시간마다 제공받아서 6시간과 12시간 누적강수량을 입력자료로 구성하고 있다.

강수량 예보정보와 고수위 저수 정보까지 보유한 총 12,977개 샘플로 구성된 23개 입력변수들의 평균, 표준편차, 최솟값, 1분위수, 중앙값, 3분위수, 최댓값, 왜도 (skew), 첨도(kurtosis)와 같은 통계기술정보값은 Table 2에 제시하였다. 입력변수들을 살펴보면 baseDate는 날짜정보로 1∼365일의 연중일 (day of year)을 사용하여 계절적 정보를 학습할 수 있도록 하였고, baseTime은 시간적 변화를 인식할 수 있게 하였다. 여기서, w_t_add_1∼4는 왕산면 초단기예보 1∼4시간 후 강수량 예보정보이며, w1∼d2_r은 왕산과 도마에 설치된 강우량계 측정값이다. w∼k_l은 왕산천, 도마천, 어흘천, 강릉남대천에서 측정되고 있는 수위계 실시간 측정값이며, o_wa과 o_wl은 웹크롤링 (web crawling) 방식으로 가져온 농촌용수종합정보시스템의 저수량과 저수위 실시간 정보이며, o_wa_b1∼3은 농촌용수종합정보시스템 오봉저수지의 1∼3시간 전 측정 저수량이고, w_t_add_6∼12는 단기예보를 통한 6시간과 12시간 예보누적강수량 정보이다. 통계분석 결과에서 저수위와 저수량의 분포는 왼쪽으로 치우쳐진 비대칭 분포를 가지며 첨도값이 음수로 중앙 부분이 완만하고 꼬리가 얇은 분포를 나타냄을 알 수 있으며, 저수위 자료의 중앙값은 118.13 m이며, 최대값은 119.55 m를 나타내었다.

Table 2 The descriptive statistics of input data for machine learning models

NGHHCI_2024_v66n1_1_t0002.png 이미지

입력자료들 가운데 기계학습시에 중요한 역할을 하는 특성을 살펴보기 위해 트리기반 모델들 중 우수한 성능을 보이는 엑스트라 트리회귀 (ExtraTree Regressor)을 이용해서 특성중요도를 살펴보았다. 엑스트라 트리 알고리즘은 앙상블 학습의 일종으로, 여러 개의 의사결정 트리를 구성하고 특성 중요도를 계산하는 데 활용된다. 알고리즘의 ‘feature_importances_’ 속성을 통해 각 특성의 상대적 중요도를 추출하였다. ‘feature_importances_’ 속성은 엑스트라 트리 알고리즘에서 제공되며, 각 특성이 예측 모델에 기여하는 정도를 나타내는 값으로 해석된다 (Geurts et al., 2006).

본 연구에서는 자동화 기계학습 TPOT을 통해 우수 알고리즘을 다시 선정하는 과정을 거치기 때문에 엑스트라 트리 모형에서의 특성중요도가 높다고해서 다른 알고리즘에서의 중요도도 크다가 볼 수는 없지만 어느 정도의 객관성을 입증하고자 입력변수별 중요도를 살펴보았다. 또한 본 연구의 최종 결과에서 엑스트라 트리 알고리즘을 포함한 파이프라인 모델이 우수한 결과를 보여준 바가 있기에 트리기반 알고리즘들 중 엑스트라 트리 모형으로 특성 중요도를 분석하였다. 총 23개 중 상위 10개만을 나타내도록 그래프를 제시하였고 Fig. 3 (a)와 (b)는 모든 자료에 대한 중요도 평가이며, (c)와 (d)는 왕산면 AWS 강수량 측정값 기준으로 강수량이 0.5 mm 이상 발생한 시간대들의 자료들만 필터링한 자료들을 기반으로 중요도를 분석한 결과이다.

NGHHCI_2024_v66n1_1_f0003.png 이미지

Fig. 3 Analysis of Importance for each input variable based on all data ((a), (b)) and precipitation occurrence data ((c), (d))

모든 자료에서 중요도가 높은 특성은 1시간 후 예측에서는 o_wa_b1인 1시간 전 저수량 정보이며, 12시간 후 예측에서는 현재 저수량 정보가 가장 높은 중요도로 모두 25% 넘는 수치를 나타내었다. 저수량과 저수위 정보 외에는 연중일을 나타내는 baseDate 중요도가 높았으며 그 외 기상청의 초단기와 단기예보 정보 (w_t_add_1∼12)의 영향력은 낮은 편이였다. 반면 강수가 발생한 자료의 경우에는 저수량과 저수위의 실시간 측정값과 이전 저수량 정보뿐만 아니라 w_t_add_12인 단기예보를 통한 12시간 예보누적강수량이 저수위 예측에서의 특성중요도가 높음을 확인할 수 있다.

4. 교차검증과 성능평가

독립적이고 동일하게 분산된 것으로 가정되는 정규분포 데이터와 달리 시계열 데이터는 이러한 가정을 따르지 않는 고유한 특성을 가진다. 실제로 각 샘플은 이전 샘플에 의존하므로 샘플 순서를 변경하면 데이터 해석이 달라지기 때문이다(Brockwell and Davis, 2002; Shumway et al., 2017; Hamilton, 1994).

이에 본 연구에서는 시계열 자료 특성에 맞는 교차검증기법을 적용하였고 K-Fold 교차검증도 같이 진행했으며 이에 총 4개 방식의 교차검증이 진행되었다. Fig. 4에 교차검증을 위해 학습과 테스트 자료 분할 방식을 실험데이터셋으로 직접 분할 진행된 결과 그래프를 제시하였고 (a) KFOLD (shuffle=T)는 K-Fold 교차검증 (섞음)으로 데이터를 무작위 섞은 후 K개의 폴드 (fold)로 나누어서 모델을 K번 반복 학습하고 평가하는 기법이며 데이터과학자들이 모델 검증에 주로 사용하는 방식이다. (b) KFOLD (shuffle=F)는 K-Fold 교차검증 (섞지 않음)으로 (a)와 동일하지만 데이터를 섞지않고 분할하는 것이고 (c) BlockingTimeSeriesSplit는 블로킹 시계열 분할 교차검증으로 시계열 데이터에 적합한 방식으로, 시계열 데이터에서는 시간의 흐름에 따라 데이터에 상관관계가 있을 수 있기에 이를 고려하여 시계열 데이터를 블록 (block)으로 나누어서 모델을 학습하고 평가하는 기법이다 (Bergmeir et al., 2018). (d) TimeSeriesSplit는 시계열 분할 교차검증으로 시계열 데이터를 연속된 순서대로 분할하여 모델을 학습하고 평가하는 기법으로 시간의 흐름에 따라 데이터의 패턴이 변화하는 시계열 데이터에서 모델의 성능을 정확히 평가하기 위해 사용된다 (Hyndman and Athanasopoulos, 2018; Bergmeir et al., 2018). K-Fold와 유사하게 작동하여 테스트 세트를 생성하지만 차이점은 데이터가 처음부터 섞이지 않고 다음 반복의 훈련 세트가 이전 반복의 상위 세트라는 것이다. 즉, 반복 횟수에 따라 훈련 세트가 계속 커진다.

NGHHCI_2024_v66n1_1_f0004.png 이미지

Fig. 4 The comparison of data splitting methods for 5-fold cross-validation in terms of training and testing data division

모든 회귀 모델 성능평가를 위해서 사용된 방식으로는 NSE, R2, RMSE, MAE를 사용하였으며, NSE는 수리모델의 예측과 관측값 사이의 일치도를 평가하는 지표로 -∞에서 1까지의 범위를 가지며, 1에 가까울수록 모델이 관측값과 잘 일치함을 나타낸다. R2는 회귀 분석에서 사용되는 예측 모델의 설명력을 나타내는 지표로 0에서 1 사이의 범위를 가지며, 1에 가까울수록 모델이 종속 변수의 변동을 잘 설명한다는 것을 의미한다. RMSE는 예측값과 관측값 차이를 제곱하여 평균한 뒤 제곱근을 취한 값으로, 예측 모델의 예측 오차의 크기를 나타내며 MAE는 예측 모델의 예측값과 관측값 간의 절대적인 차이를 측정하는 지표로 RMSE와 MAE는 작을수록 모델의 예측 정확도가 높다고 판단할 수 있다. 수식은 아래와 같고 여기서 Ot는 t번째의 실제 값이고, \(\begin{align}\overline{O_{t}}\end{align}\)는 실제 값의 평균, Mt는 t번째의 예측값이며 n은 자료의 총 개수이다.

\(\begin{align}N S E=1-\frac{\sum\left(O_{t}-M_{t}\right)^{2}}{\sum\left(O_{t}-\overline{O_{t}}\right)^{2}}\end{align}\)       (1)

\(\begin{align}R M S E=\sqrt{\frac{\sum\left(O_{t}-M_{t}\right)^{2}}{n}}\end{align}\)       (2)

\(\begin{align}M A E=\frac{1}{n} \sum\left|M_{t}-O_{t}\right|\end{align}\)       (3)

\(\begin{align}R^{2}=\frac{\left[\sum\left(O_{t}-\bar{O}_{t}\right)\left(M_{t}-\bar{M}_{t}\right)\right]^{2}}{\sum\left(O_{t}-\overline{O_{t}}\right)^{2} \Sigma\left(M_{t}-\overline{M_{t}}\right)^{2}}\end{align}\)       (4)

Ⅲ. 결과 및 고찰

1. 시계열 모델 교차검증 결과

1시간 후 저수위 예측모델의 총 4개 방식의 5차 교차검증 후 각 성능평가 지표들의 평균값을 Fig. 5에 비교 그래프로 제시하였다. K-Fold 5차 교차검증 (섞음), K-Fold 5차 교차검증 (섞지 않음), 블로킹 시계열 분할 5차 교차검증, 시계열 분할 5차 교차검증 결과 모두 NSE, R2이 1.00의 값을 나타내었고, RMSE, MAE도 0.08 m 이하이며 모든 검증방식에서 7개의 모델들의 성능 차이도 크게 찾아볼 수가 없이 대부분 우수한 결과를 나타내었다.

NGHHCI_2024_v66n1_1_f0005.png 이미지

Fig. 5 Comparing the average performance of 5-fold cross-validation for predicting reservoir water level after 1 hour

반면 12시간 후 저수위 예측모델의 총 4개 방식의 5차 교차 검증 결과인 Fig. 6에서는 교차검증 방식에 따른 성능평가 결과의 민감성을 살펴볼 수 있으며, 특히 시계열 자료 교차검증 방식으로 효과적인 블로킹 시계열 분할 5차 교차검증과 시계열 분할 5차 교차검증에서는 K-Fold 5차 교차검증 방식들 보다 성능평가 점수들이 낮았으며 7개 모델들의 차별성을 보여 주었다.

NGHHCI_2024_v66n1_1_f0006.png 이미지

Fig. 6 Comparing the average performance of 5-fold cross-validation for predicting reservoir water level after 12 hours

성능평가 지표 중 NSE를 기준으로 블로킹 시계열 분할 5차와 시계열 분할 5차 교차검증 평균값은 ET_S(R)_R인 엑스트라 트리회귀와 스태킹 방식이 적용된 능형회귀, 그리고 단순능형회귀 알고리즘들의 앙상블모델이 NSE, R2이 0.93∼0.95로 가장 우수하였고, 블로킹 시계열 분할 5차 교차검증결과에서는 m_R로 표기된 최소-최대 스케일러 전처리를 적용한 능형회귀 파이프라인모델이 0.79로 가장 성능이 떨어졌고 시계열 분할 5차 교차검증결과에서는 스탠다드 스케일러 전처리 후 능형회귀 알고리즘을 사용한 s_R이 0.81로 가장 낮은 NSE를 나타내었다. 시계열 데이터는 불균형이나 트렌드의 변화가 자주 발생하기에 K-Fold 교차 검증방식으로는 모델의 일반화 능력을 정확하게 평가하지 못할 수 있다. 이에 블로킹 시계열 분할과 시계열 분할 5차 교차검증 결과를 중심으로 살펴보건대 1∼12시간 후 저수위 예측 모델로 ET_S(R)_R 앙상블모델을 사용함이 좋을 것으로 판단된다.

2. 실시간 저수위 예측 결과

학습과 5차 교차검증에 사용된 총 12,977개 샘플로 학습한 후 기계학습 모델을 저장하고 생성된 모델들로 2023년 6월 22일 4시부터 2023년 8월 12일 23시까지의 테스트 기간 동안의 오봉저수지 저수위를 실시간 예측한 결과를 분석하였다. 최근에 발생한 태풍 카눈 (Khanun)도 테스트 기간에 포함되며, 8월 9일 22시에 왕산면 AWS 측정 최대 강수량이 20.5 mm로 기록되었다.

시계열 모델 교차검증 방식을 통한 가장 우수한 모형으로 선정한 모형을 포함하여 교차검증에 적용된 7개 알고리즘 모두를 적용하여 테스트기간 동안의 저수위를 예측하고 그 모형들의 성능평가와 시계열 그래프도 함께 제시하였다. 1∼12시간 후 저수위 예측 중 대표적으로 1, 3, 6, 12시간 후 저수위 예측 결과의 성능평가를 Fig. 7에서 살펴보면 대부분 결과가 좋았지만 6시간 후 예측에서는 엑스트라 트리와 스태킹 능형 회귀와 능형회귀 앙상블모델 (ET_S(R)_R)의 예측 성능이 NSE, R2이 0.99, RMSE, MAE는 0.26 m 이하로 타 알고리즘들에 비해 더 높은 예측정확도를 보여주었다. 하지만 12시간 후의 경우는 앞서 시계열 분할 교차검증에서 최고 높은 성능을 보인 S(LL)_LL의 결과가 좋은 것을 살펴볼 수 있다.

NGHHCI_2024_v66n1_1_f0007.png 이미지

Fig. 7 The performance evaluation of predicting reservoir water level during the testing period

또한 관측값과 모델들의 예측값을 시계열 변화로 살펴본 그래프 (Fig. 8)에서는 1시간 후 예측인 (a)에서는 모델들간의 차이성이 나타나지 않으며 모두 유사한 시계열변화 패턴을 나타냈지만 6, 12시간 후 저수위 예측인 (b, c)에서 모델 예측값들은 관측값에 비해 변동성이 크고 불안정한 패턴 변화에서 이상치들이 나타나고 있다. 특히 태풍 발생 기간 (2023. 8. 8∼2023. 8. 10)의 추세 일치성은 다소 떨어짐을 살펴볼 수 있다. 이 기간동안 입력자료인 도마천과 강릉남대천의 수위 결측값이 발생하여 품질관리 진행 후의 값들이 입력자료로 사용되었지만 평상시 예측 보다는 다소 낮은 예측 경향을 살펴볼 수 있다.

NGHHCI_2024_v66n1_1_f0008.png 이미지

Fig. 8 The temporal variation of predicted and observed reservoir water level during the testing period

6시간 후 예측에서는 앞서 교차검증에서 추천된 엑스트라 트리와 스태킹 능형회귀와 능형회귀 앙상블모델 (ET_S(R)_R)의 예측값이 관측값의 추세 변화와 일치하며 우수한 결과를 보여주었다. 반면 12시간 후 예측시에는 시계열 분할 5차 교차검증에서 추천한 스태킹 라쏘라즈와 라쏘라즈 앙상블 모델(S(LL)_LL)이 NSE 0.99, MAE 0.16 m로 가장 좋은 성능을 보여주었으며 시계열 그래프에서도 태풍기간 동안 가장 유사한 패턴으로 실측 저수위 추세를 따르고 있음을 살펴볼 수 있다.

1∼12시간 후 저수위 예측에 있어서 각 시간대별로 다른 알고리즘들로 모델을 생성할 경우 예측되는 값들의 추세가 매끄럽지 못하고 증가와 감소를 반복하는 패턴이 발생할 수가 있다. 이에 본 연구에서는 최대한 전 시간대 모두를 잘 예측할 수 있는 1개의 알고리즘을 정하기 위해 총 4개 기법의 교차검증 방식을 적용하였으며, 태풍 기간과 같은 홍수기에서는 12시간 후 예측에 있어서는 시계열 분할 5차 교차검증 방식의 타당함을 살펴볼 수가 있었다. 즉 일반적으로 데이터 과학자들이 기계학습시 진행되는 샘플들을 섞어서 분할하는 K-Fold 교차검증 방식으로는 우수한 알고리즘을 선별하는 데에는 어려움이 있음을 확인하였고 블로킹 분할이나 시계열 분할 방식 등 시계열 데이터에서 유용하게 활용할 수 있는 교차 검증 방식이 필요함을 증명하였다.

Ⅳ. 결론

자연재해 중 홍수의 경우는 폭우로 유발되는 2차 재해이기에 장마와 태풍 기간 동안의 기상예보에 따른 폭우 정보를 기반으로 홍수 발생을 사전에 예방할 수가 있다. 즉 기상예보를 통한 강수 정보를 제공받아서 저수지의 저수위 정보를 실시간으로 정확히 예측한다면 하류 지역의 침수피해를 예방함으로 인해 홍수 조절이 가능할 수 있을 것이다. 이에 본 연구에서는 실시간 제공되는 기상청의 강수 기상예보 정보를 바탕으로 학습된 기계학습 모델을 통해 오봉저수지의 저수위 예측의 정확도를 상승시키는 방안을 살펴보았다.

자동화된 기계학습 도구인 TPOT은 진화적인 알고리즘과 기계학습 파이프라인의 자동 생성 기능을 결합하여 최적의 기계학습 모델을 찾아주는 역할을 한다. TPOT은 사용자가 복잡한 기계학습 파이프라인을 수동으로 설계하고 최적화하는 번거로움을 줄여주며 자동화된 접근 방식을 통해 더 효율적이고 정확한 결과를 얻을 수 있으며, 기계학습 모델 개발과 연구를 빠르고 효율적으로 진행할 수 있게 해주는 장점이 있다. 이에 본 연구에서는 TPOT이 추천해주는 알고리즘들을 사용하여 1∼12시간 후 오봉저수지 저수위를 예측할 수 있는 모델들을 개발하였다.

각 시간 후 저수위를 예측하는 모델들은 시계열 분할 교차 검증 기법을 포함한 총 4개 방식의 교차검증 기법들을 사용하여 5번의 학습과 검증을 거쳤으며, 데이터의 시간적 특성을 고려하여 평가한 것으로, 한층 더 시계열 자료 특성을 잘 평가할 수 있는 모델 선정 과정을 거쳤다고 판단된다. 이렇게 선정된 모델은 실제 테스트 기간 동안에 12시간 후 저수위 예측에 있어서 NSE 0.99 이상의 성능평가를 보여주었고 시계열 변화 패턴이 일치함을 알 수 있었다. 이처럼 TPOT이 추천한 모델이지만 시계열 교차검증 방식들을 통해 선정된 모델을 사용할 시에 정밀한 시계열 변화를 보다 더 일치하게 예측할 수 있는 우수한 모델을 개발할 수 있을 것으로 기대된다.

본 연구에서는 수위 시계열 데이터의 특성과 시간적 의존성을 포착하는 기술들의 필요성을 살펴보았으며 그 타당성을 규명하였다. 다만 태풍과 같은 홍수기 동안의 다소 낮은 저수위 예측 정확도를 상승시키고 홍수 대비 활용성이 높은 저수지 수위 예측 모델을 생성하려면 GAN (Generative Adversarial Network)과 같은 방식을 이용하여 극한강우 발생시의 가상 자료 생성을 통한 학습 접근법을 추가로 진행할 필요가 있을 것으로 보인다. 또한 과거 시간대의 누적 실측강우량 등의 입력 특성수를 보강함으로 인해 보다 더 견고하고 정확한 기계 학습 모델을 개발하여 저수지 수위 예측의 신뢰성을 높이고 실제 활용 가능성을 극대화시킬 수 있는 연구들을 진행하고자 한다.

감사의 글

본 연구는 한국농어촌공사 “오봉저수지 운영관리 연구 용역” 및 환경부의 재원으로 한국환경산업기술원의 수생태계 건강성 확보 기술개발사업의 지원을 받아 연구되었습니다(2020003030004).

References

  1. Bae, J. H., J. Han, J. E. Yang, J. Kim, K. J. Lim, and W. S. Jang, 2019. A study on regularization methods to evaluate the sediment trapping efficiency of vegetative filter strips. Journal of the Korean Society of Agricultural Engineers 61(6): 9-19 (in Korean). doi:10.5389/KSAE.2019.61.6.009.
  2. Bergmeir, C., R. J. Hyndman, and B. Koo, 2018. A note on the validity of cross-validation for evaluating autoregressive time series prediction. Computational Statistics & Data Analysis 120: 70-83. doi:10.1016/j.csda.2017.10.037.
  3. Brockwell, P. J., and R. A. Davis, 2002. Introduction to time series and forecasting: Springer.
  4. Castillo-Boton, C., D. Casillas-Perez, C. Casanova-Mateo, L. Moreno-Saavedra, B. Morales-Diaz, J. Sanz-Justo, P. A. Gutierrez, and S. Salcedo-Sanz, 2020. Analysis and prediction of dammed water level in a hydropower reservoir using machine learning and persistence-based techniques. Water 12(6): 1528. doi:10.3390/w12061528.
  5. Chang, F.-J. and Y.-T. Chang, 2006. Adaptive neuro-fuzzy inference system for prediction of water level in reservoir. Advances in Water Resources 29(1): 1-10. doi:10.1016/j.advwatres.2005.04.015.
  6. Chen, T., and C. Guestrin, 2016. Xgboost: A scalable tree boosting system. Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.
  7. Das, M., S. K. Ghosh, V. Chowdary, A. Saikrishnaveni, and R. Sharma, 2016. A probabilistic nonlinear model for forecasting daily water level in reservoir. Water Resources Management 30: 3107-3122. doi:10.1007/s11269-016-1317-7.
  8. Doke, A., and M. Gaikwad, 2021. Survey on automated machine learning (AutoML) and meta learning. 2021 12th International Conference on Computing Communication and Networking Technologies (ICCCNT).
  9. Elliott, G., A. Gargano, and A. Timmermann, 2013. Complete subset regressions. Journal of Econometrics 177(2): 357-373. doi:10.1016/j.jeconom.2013.05.004.
  10. Feurer, M., A. Klein, K. Eggensperger, J. Springenberg, M. Blum, and F. Hutter, 2015. Efficient and robust automated machine learning. Advances in Neural Information Processing Systems 28.
  11. Ferreira, L., A. Pilastri, C. M. Martins, P. M. Pires, and P. Cortez, 2021. A comparison of AutoML tools for machine learning, deep learning and XGBoost. 2021 International Joint Conference on Neural Networks (IJCNN).
  12. Fu, W., and K. Knight, 2000. Asymptotics for lasso-type estimators. The Annals of Statistics 28(5): 1356-1378. doi:10.1214/aos/1015957397.
  13. Gal, Y., and Z. Ghahramani, 2016. A theoretically grounded application of dropout in recurrent neural networks. Advances in Neural Information Processing Systems 29.
  14. Geurts, P., D. Ernst, and L. Wehenkel, 2006. Extremely randomized trees. Machine Learning 63: 3-42. doi:10.1007/s10994-006-6226-1.
  15. Hamilton, J., 1994. Time series econometrics. Princeton University Press Princeton, NJ.
  16. Hipni, A., A. El-Shafie, A. Najah, O. A. Karim, A. Hussain, and M. Mukhlisin, 2013. Daily forecasting of dam water levels: comparing a support vector machine (SVM) model with adaptive neuro fuzzy inference system (ANFIS). Water Resources Management 27(10): 3803-3823. https://doi.org/10.1007/s11269-013-0382-4
  17. Hochreiter, S., and J. Schmidhuber, 1997. Long short-term memory. Neural Computation 9(8): 1735-1780. doi:10.1162/neco.1997.9.8.1735.
  18. Hoerl, A. E., and R. W. Kennard, 1970. Ridge regression: Biased estimation for nonorthogonal problems. Technometrics 12(1): 55-67. doi:10.1080/00401706.1970.10488634.
  19. Hutter, F., L. Kotthoff, and J. Vanschoren, 2019. Automated machine learning: methods, systems, challenges. Springer Nature.
  20. Hyndman, R. J., and G. Athanasopoulos, 2018. Forecasting: principles and practice. OTexts.
  21. Kim, S., Y. Seo, and V. P. Singh, 2015. Assessment of pan evaporation modeling using bootstrap resampling and soft computing methods. Journal of Computing in Civil Engineering 29(5): 04014063. doi:10.1061/(ASCE)CP.1943-5487.0000367.
  22. Li, F., G. Ma, S. Chen, and W. Huang, 2021. An ensemble modeling approach to forecast daily reservoir inflow using bidirectional long-and short-term memory (Bi-LSTM), variational mode decomposition (VMD), and energy entropy method. Water Resources Management 35: 2941-2963. doi:10.1007/s11269-021-02984-2.
  23. Loi, N. K., N. D. Liem, L. H. Tu, N. T. Hong, C. D. Truong, V. N. Q. Tram, T. T. Nhat, T. N. Anh, and J. Jeong, 2019. Automated procedure of real-time flood forecasting in Vu Gia-Thu Bon river basin, Vietnam by integrating SWAT and HEC-RAS models. Journal of Water and Climate Change 10(3): 535-545. doi:10.2166/wcc.2018.015.
  24. Ogutu, J. O., T. Schulz-Streeck, and H.-P. Piepho, 2012. Genomic selection using regularized linear regression models: ridge regression, lasso, elastic net and their extensions. BMC Proceedings.
  25. Olson, R. S., and J. H. Moore, 2016. TPOT: A tree-based pipeline optimization tool for automating machine learning. Workshop on Automatic Machine Learning.
  26. Rajaee, T., V. Nourani, Z. K. Mohammad, and O. Kisi, 2011. River suspended sediment load prediction: application of ANN and wavelet conjunction model. Journal of Hydrologic Engineering 16(8): 613-627. doi:10.1061/(ASCE)HE.1943-5584.0000347.
  27. Sapitang, M., W. M. Ridwan, K. Faizal Kushiar, A. Najah Ahmed, and A. El-Shafie, 2020. Machine learning application in reservoir water level forecasting for sustainable hydropower generation strategy. Sustainability 12(15): 6121. doi:10.3390/su12156121.
  28. Seo, Y., E. Choi, and W. Yeo, 2017. Reservoir water level forecasting using machine learning models. Journal of the Korean Society of Agricultural Engineers 59(3): 97-110. (in Korean). doi:10.5389/KSAE.2017.59.3.097.
  29. Shumway, R. H., D. S. Stoffer, R. H. Shumway, and D. S. Stoffer, 2017. ARIMA models. Time Series Analysis and Its Applications: With R Examples, 75-163.