수위예측 알고리즘 정확도 향상을 위한 Hybrid 활성화 함수 개발

Development of hybrid activation function to improve accuracy of water elevation prediction algorithm

  • 발행 : 2019.05.29

초록

활성화 함수(activation function)는 기계학습(machine learning)의 학습과정에 비선형성을 도입하여 심층적인 학습을 용이하게 하고 예측의 정확도를 높이는 중요한 요소 중 하나이다(Roy et al., 2019). 일반적으로 기계학습에서 사용되고 있는 활성화 함수의 종류에는 계단 함수(step function), 시그모이드 함수(sigmoid 함수), 쌍곡 탄젠트 함수(hyperbolic tangent function), ReLU 함수(Rectified Linear Unit function) 등이 있으며, 예측의 정확도 향상을 위하여 다양한 형태의 활성화 함수가 제시되고 있다. 본 연구에서는 기계학습을 통하여 수위예측 시 정확도 향상을 위하여 Hybrid 활성화 함수를 제안하였다. 연구대상지는 조수간만의 영향을 받는 한강을 대상으로 선정하였으며, 2009년 ~ 2018년까지 10년간의 수문자료를 활용하였다. 수위예측 알고리즘은 Python 내 Tensorflow의 RNN (Recurrent Neural Networks) 모델을 이용하였으며, 강수량, 수위, 조위, 댐 방류량, 하천 유량의 수문자료를 학습시켜 3시간 및 6시간 후의 수위를 예측하였다. 예측정확도 향상을 위하여 입력 데이터는 정규화(Normalization)를 시켰으며, 민감도 분석을 통하여 신경망모델의 은닉층 개수, 학습률의 최적 값을 도출하였다. Hybrid 활성화 함수는 쌍곡 탄젠트 함수와 ReLU 함수를 혼합한 형태로 각각의 가중치($w_1,w_2,w_1+w_2=1$)를 변경하여 정확도를 평가하였다. 그 결과 가중치의 비($w_1/w_2$)에 따라서 예측 결과의 RMSE(Roote Mean Square Error)가 최소가 되고 NSE (Nash-Sutcliffe model Efficiency coefficient)가 최대가 되는 지점과 Peak 수위의 예측정확도가 최대가 되는 지점을 확인할 수 있었다. 본 연구는 현재 Data modeling을 통한 수위예측의 정확도 향상을 위해 기초가 되는 연구이나, 향후 다양한 형태의 활성화 함수를 제안하여 정확도를 향상시킨다면 예측 결과를 통하여 침수예보에 대한 의사결정이 가능할 것으로 기대된다.

키워드