The Korean Meteorological Society 1

Current Issue

Atmosphere - Vol. 34 , No. 1

[ Article ]
Atmosphere - Vol. 31, No. 1, pp. 73-83
Abbreviation: Atmos
ISSN: 1598-3560 (Print) 2288-3266 (Online)
Print publication date 31 Mar 2021
Received 23 Nov 2020 Revised 08 Feb 2021 Accepted 02 Mar 2021
DOI: https://doi.org/10.14191/Atmos.2021.31.1.073

기계학습의 LSTM을 적용한 지상 기상변수 예측모델 개발
홍성재1) ; 김재환1) ; 최대성1) ; 백강현2), *
1)부산대학교 대기과학과
2)부산대학교 기후연구센터

Development of Surface Weather Forecast Model by using LSTM Machine Learning Method
Sungjae Hong1) ; Jae Hwan Kim1) ; Dae Sung Choi1) ; Kanghyun Baek2), *
1)Department of Atmospheric Sciences, Pusan National University, Busan, Korea
2)Research Center for Climate Sciences, Pusan National University, Busan, Korea
Correspondence to : * Kanghyun Beak, Research Center for Climate Science, Pusan National University, 2 Busandaehak-ro 63beon-gil, Geumjeong-gu, Busan 46241, Korea. Phone: +82-51-510-2172, Fax: +82-51-510-1689 E-mail: iambk100@gmail.com

Funding Information ▼

Abstract

Numerical weather prediction (NWP) models play an essential role in predicting weather factors, but using them is challenging due to various factors. To overcome the difficulties of NWP models, deep learning models have been deployed in weather forecasting by several recent studies. This study adapts long short-term memory (LSTM), which demonstrates remarkable performance in time-series prediction. The combination of LSTM model input of meteorological features and activation functions have a significant impact on the performance therefore, the results from 5 combinations of input features and 4 activation functions are analyzed in 9 Automated Surface Observing System (ASOS) stations corresponding to cities/islands/mountains. The optimized LSTM model produces better performance within eight forecast hours than Local Data Assimilation and Prediction System (LDAPS) operated by Korean meteorological administration. Therefore, this study illustrates that this LSTM model can be usefully applied to very short-term weather forecasting, and further studies about CNN-LSTM model with 2-D spatial convolution neural network (CNN) coupled in LSTM are required for improvement.


Keywords: Weather forecast, deep learning, RNN, LSTM

1. 서 론

기상 예측 정보는 다양한 분야의 산업에 유용하게 활용되며 기상 재해를 최소화하는데 필수적으로 요구되는 등, 그 중요도가 매우 높다. 이를 위해 기상청에서는 수치예보모델이나 Model Output Statistics (MOS), Kalman Filter Model (KFM)와 같은 통계모델 등을 활용하고 있다. 그러나 한반도 지역은 복잡한 지형구조 때문에 기상현상이 복합적으로 나타나 기상 예측이 어렵다(Hong and Kanamitsu, 2014). 또한, 수치예보모델은 초기장이나 물리적 모수화 과정의 불확실성으로, 그리고 통계적인 방법은 예측 변수들의 비선형성으로 인해 오차가 나타난다. 이러한 수치예보모델의 물리적 한계점들은 역학적 방정식들을 풀지 못하는 문제에서 기인하여(Holton and Hakim, 2012) 현재로서는 해결이 어렵다. 20세기 중반부터 지금까지 수많은 연구들이 있었음에도 불구하고 물리적 기법 기반의 예측방법은 한계점이 명확하므로 자료 기반의 접근방법(data-driven approach)에 대한 연구의 필요성이 대두되었다.

딥러닝 기법은 이러한 자료 기반의 접근방법으로 최근에는 이를 기상 예측에 적용하는 연구가 늘어가고 있다. 이 기법은 수치예보모델에 비해 요구되는 컴퓨터 자원이 적으며(Feng et al., 2017) 병렬적인 비선형 단계들을 거쳐 비선형적 변수들을 예측하는 능력이 우수하다(Chen et al., 2019). 다중 변수를 예측하는 경우 순환신경망(RNN: Recurrent Neural Network)이나 합성곱 신경망(CNN: Convolution Neural Network)이 주로 사용되며(Hewage et al., 2021) 이들 방법은 여러 선행 연구들을 통해 그 뛰어난 성능을 입증받고 있다(Jozefowicz et al., 2015; Lea et al., 2017; Zhang et al., 2017). 이렇듯 최근 세계적으로 활발하게 딥러닝을 이용한 예측방법이 연구되고 있으나 아직 국내에서는 관련 연구가 미진한 상태이다.

따라서 이 연구에서는 RNN의 한 종류인 Long Short-Term Memory (LSTM)을 이용한 기상요소(features) 예측 모델을 구축하고자 하였다. LSTM은 다양한 시계열 예측 분야에 우수한 성능을 보여주고 있는데(Poornima and Pushpalatha, 2019; Yang et al., 2019; Zhang et al., 2019; Majhi et al., 2020), 이는 이 기법을 활용한 모델이 시계열 자료를 학습하여 신뢰도가 높은 예측을 할 수 있음을 의미한다.

이 논문의 구성은 다음과 같다. 2장에서는 사용한 ASOS 자료에 대해, 3장에서는 이 연구에서 구축한 LSTM 모델에 대해 설명하였다. 4장에서는 LSTM 모델의 예측 성능을 향상시키기 위해 모델 입력변수, 예측시간(Forecast time), 활성화함수(Activation function)별 성능을 분석하고 기상청 현업 국지예보모델인 Local Data Assimilation and Prediction System (LDAPS)의 결과와 비교하여 LSTM 예측 모델의 효용성을 평가하였다. 마지막으로 5장에서는 이 연구의 결론 및 LSTM 모델의 한계점과 향후 연구를 제시하였다.


2. 사용 자료

구축된 모델에 사용한 지상관측자료는 기상자료 개방포털(https://data.kma.go.kr/)에서 제공하는 Automated Synoptic Observing System (ASOS) 관측 자료를 사용하였다. 1시간 간격으로 예측자료를 생산하기 위해서는 최소 1시간 간격의 관측 자료가 있어야 하므로 운량과 지면온도 두 변수가 1시간 간격으로 관측이 시작된 2009년부터 2019년까지 11년간의 1시간 간격 자료를 사용하였다. 기온과 습도 등 다양한 변수들이 사용되어 정규화가 필요하므로 각 변수들의 평균을 빼고 표준편차로 나누는 표준화를 수행하였다.

기상 요소들의 예측은 지역 특성에 의해 예측 정확도가 달라질 수 있는데 대표적으로 산악 지역에서는 기온의 변화폭이 커 정확도가 낮아진다. 그러므로 최대한 많은 지점을, 또는 다양한 특성의 지점들의 자료를 사용하여야 한다. 100여개 소에 이르는 ASOS 전 지점의 자료를 모두 사용하기에는 어려움이 있어이 연구에서는 도시, 도서, 산악 지역으로 각각 3개 지점씩 총 9개 지점의 자료를 사용하였다. 이를 통해 지역적인 특성에 의한 영향을 제거하였으며 각각의 지점 정보는 Table 1과 같다.

Table 1. 
The information of 9 ASOS station used in LSTM model.
Attribute Cities Islands Mountains
Station
no.
108 133 159 115 169 184 100 135 216
Station
name
Seoul Daejoen Busan Ulleung-do Heuksan-do Jeju Daegwallyeong Chupungnyeong Taebaek


3. 방 법
3.1 LSTM 개요

RNN은 Rumelhart et al. (1986)에 의해 개발된 인공신경망의 한 종류이며 유닛들이 순환적으로 연결되어 순차적인 동적 특성을 분석하는 기법이다. 그리하여 시계열 자료를 훈련하고 예측하는데 최적화되어 있으나 과거 정보를 현재 작업에 연결하기 어려운 장기 의존성(Long-Term Dependency) 문제로 인해 장기적인 예측성이 떨어진다. 이러한 문제를 메모리 셀을 통해 개선한 것이 LSTM이다(Hochreiter and Schmidhuber, 1997). 이 메모리 셀은 먼저 현 시간 단계(t)에서의 입력자료(x)와 이전 단계(t - 1)에서의 hidden state (h)로 input state (i)를 계산한다(식 1). 이후 input state를 통해 input gate (g) (식 2), forget gate (f) (식 3), output gate (o) (식 4)를 계산하고 이 값들과 이전 시간단계(t - 1)에서의 internal state 값을 이용하여 현 시간단계(t)의 internal state (m) (식 5)를 업데이트 한다. 그 후 다음 단계(t + 1)에서 사용할 현 단계의 hidden state(h)를 계산하며 Fig. 1은 이를 도식화한 것이다(Wang and Raj, 2017). 이렇듯 LSTM은 단기 정보에 오래된 과거 정보까지 고려하여 좀 더 장기적인 예측이 가능하다는 장점을 가지고 있다.

it=σWixxt+Wihht-1(1) 
(σ: 활성화함수, Wix: input state에서 입력자료에 대한 가중치, Wih: input state에서 hidden state에 대한 가중치)

gt=σWgiit(2) 
(Wgi: input gate에서 input state에 대한 가중치)

ft=σWfiit(3) 
(Wfi: forget gate에서 input state에 대한 가중치)

ot=σWoiit(4) 
(Woi: output gate에서 input state에 대한 가중치)

mt=gtit+ftmt-1(5) 
ht=otmt(6) 
(⊙ : wise-element product)


Fig. 1. 
Flowchart of LSTM memory cell.

3.2 LSTM 모델 구축

이 연구에서 구축된 모델은 파이썬 Tensorflow-keras 라이브러리를 사용하였으며 32개의 층(layer)으로 구성되었다. 옵티마이져(optimizer)는 Tieleman and Hinton(2012)이 제안한 RMSprop을 사용하였다. 이 옵티마이져는 기울기를 단순 누적하지 않고 지수 가중 이동 평균(Exponentially weighted moving average)을 사용하여 기울기가 무한정 커지지 않으면서 최신의 기울기를 더 크게 고려하여 빠르고 정확하게 수렴된다는 장점이 있다. 사용된 2009년부터 2019년까지 총 11년간의 자료 중 2018년까지 10년간의 자료는 훈련 데이터셋(training dataset)으로 설정하여 각 지점 별 자료를 훈련시키고 2019년의 자료는 검증과 테스트 데이터셋(validation dataset)으로 설정하였다. 데이터셋을 훈련, 검증, 테스트의 3가지로 각각 나누는 것이 일반적이나, 검증과 테스트 데이터셋을 따로 구분하지 않고 사용하여도 모델의 예측성을 확인해보는 것에는 영향이 없다. 이후 훈련된 결과를 통해 초기 시간부터 240시간 전까지의 자료를 입력하여 2019년의 매일 00시부터 23시까지 1시간 간격의 기온, 상대습도, 풍속의 24시간 예측을 수행하였다. 결측값이 있는 경우 훈련 또는 예측에 영향을 줄 수 있어 필터링 하였으며 그 비율은 0.01% 정도로 무시 가능한 수준이었다.

Figure 2는 딥러닝 모델에서 반복 훈련 횟수(epoch)가 늘어나며 나타나는 현상으로 (a)는 훈련 횟수가 적어 모델이 입력자료를 제대로 이해하지 못하는 과소적합(underfitting), (c)는 반대로 훈련 횟수가 너무 늘어나며 입력자료를 너무 복잡하게 이해한 과대적합(overfitting) 상태를 나타낸다. 과소적합 상태에서는 모델이 훈련 데이터셋을 제대로 이해하지 못해, 과대적합 상태에서는 모델이 훈련 데이터셋에만 과다하게 적합(fitting)되어 예측성이 떨어지게 된다. 그러므로 반복 훈련 횟수를 적절하게 설정하여 Fig. 2b와 같이 적절히 훈련시켜야 한다. 이를 위해 서울 지점 기온의 훈련 횟수 별 평균절대오차(Mean Absolute Error: MAE)손실값을 구하였으며 Fig. 3a는 그 결과이다. 푸른 색의 훈련 손실(training loss)은 훈련 데이터셋의, 붉은 색의 검증 손실(validation loss)은 검증 데이터셋의 비용 함수(cost function)값을 의미한다. 훈련이 지속될수록 훈련 데이터셋을 더 정밀히 이해하며 훈련 손실은 줄어드나 검증 손실은 늘어난다. 두 손실값 중 한 값이 지나치게 커지는 것을 막기 위해 일반적으로 이 두 값이 만나는 지점을 최적의 훈련 횟수로 판단하는데, Fig. 3a에서는 단 10여회의 너무 이른 횟수에서 두 손실값이 만나고 있다. 이는 서울의 기온자료가 너무 빠르게 과대적합 되었음을 의미하며 이러한 문제점을 해결하기 위해서는 dropout 기법을 사용해야 한다(Srivastava et al., 2014). Gal and Ghahramani(2016)는 0.2~0.6 정도의 dropout 계수를 설정하여야 한다고 하였으며, 이는 각 층에 입력되는 자료의 20%에서 60%까지를 필터링 한다는 것을 의미한다. 이를 통해 훈련 손실이 낮아지는 속도를 늦추며 검증 손실에는 영향을 주지 않아 두 값이 만나는 지점을 늦출 수 있다. 이 값이 작으면 빠른 과대적합 현상을 방지하지 못하고 크면 입력 정보들의 손실이 커 예측성이 떨어지는 문제가 생기게 된다. 일반적으로 입력 정보의 용량이 클수록 높은 계수를 설정하는데, 이 연구에서 구축된 모델은 용량이 크지 않으므로 보수적으로 0.2의 계수를 설정하여 입력 정보들의 손실을 최소화하였다. Figure 3b는 dropout 계수를 0.2로 설정한 후 반복 훈련한 훈련 및 검증 손실이며 두 손실값 차이가 dropout이 적용되지 않은 Fig. 3a에 비해 작은 것을 확인할 수 있다. 또한, 400회가량의 훈련 횟수에서 두 손실함수가 교차하는 것을 확인할 수 있다. 그러므로 이 연구에서는 20% 비율로 dropout을 수행하고 모델에서의 반복 훈련 횟수는 400회로 설정하였다.


Fig. 2. 
(a) underfitting, (b) just right fitting, (c) overfitting as training continues (http://sanghyukchun.github.io/59/).


Fig. 3. 
Training and validation loss (MAE) at Seoul station with, (a) none dropout coefficient, (b) 0.2 dropout coefficient.

ASOS 자료에서는 기온, 강수량, 풍향/풍속, 습도, 기압, 일사/일조, 운량, 운형, 지면온도 등 다양한 기상 요소들이 관측된다. 이 중 주어진 요소들을 적절하게 조합하여 모델에 입력할 것인지는 매우 중요한데(Kiperwasser and Goldberg, 2016), 너무 다양한 요소들을 조합할 경우 훈련의 방향성이 빗나갈 수 있으며 훈련 시간이 지나치게 길어진다. 반대로 너무 적은 요소들을 조합할 경우 모델의 예측성이 떨어질 수 있다. 그리하여 이 연구에서는 Table 2에서와 같이 5개의 실험을 각각 수행하여 어떠한 요소들을 조합하여 모델을 수행할 것인지를 평가하였다.

Table 2. 
List of features input in five experiments.
Predictor Temperature (T) Relative
humidity (RH)
Wind speed
Name
EX1 RH, T, Mean Sea Level Pressure (MSLP), surface T,
insolation, total cloud amount, U/V vector
T, wind speed, wind direction, RH, MSLP,
surface T, insolation, total cloud amount
EX2 RH, T, MSLP, insolation, U/V vector T, wind speed, wind direction, RH, MSLP,
surface T, insolation
EX3 RH, T, MSLP, U/V vector T, wind speed, wind direction, RH, MSLP
EX4 RH, T, MSLP T, wind speed, wind direction, MSLP
EX5 RH, T T, wind speed, wind direction

또한, 모델의 성능은 사용된 활성화함수(activation function)에 따라 달라질 수 있다(Farzad et al., 2019). 이 함수는 입력 층의 값들을 출력 층의 값들로 변환해주며 입력값들을 얼마나 출력할지 결정하고 이들을 비선형적으로 표현해준다. 대표적으로 사용되는 활성함수에는 sigmoid, tanh (hyperbolic tangent), Rectified Linear Unit (ReLU) 등이 있다. Sigmoid는 주로 딥러닝 초기 모델들에 많이 사용되었던 활성화함수로 식(7)과 같으며 Fig. 4a와 같이 나타난다. 입력값이 0인 중간값에서 0.5를, 매우 작은 입력값에서 0, 매우 큰 값에서 1에 수렴하는 값을 반환하는 특징을 가지고 있다. 하지만 입력값 x의 절대값이 커지면 기울기가 0에 수렴하며 미분값이 소멸하는 gradient vanishing 현상이 발생하고, 함수값 중심이 0이 아니므로 훈련속도가 느려진다는 단점이 있다. Tanh는 sigmoid를 개선하기 위해 개발되었으며, 식(8)과 같고 Fig. 4b와 같이 나타난다. 이는 sigmoid 함수의 중심값을 0으로 옮겨 훈련속도가 빨라진다는 장점이 있다. 하지만 gradient vanishing 문제에서 여전히 자유롭지 못하다는 단점이 있다. ReLU는 최근에 많이 사용되는 추세이며, 식(9)와 같고 Fig. 4c와 같이 나타난다. 이는 x가 음수이면 0을, 양수일때는 x를 그대로 반환하는 간단한 형태이므로 계산이 쉽고 훈련이 빠르다는 장점이 있다. 하지만 x가 음수일 때 함수의 기울기가 0이 되어 훈련이 불가능하다는 치명적인 단점이 있다.

sigmoidx=11+e-x(7) 
tanhx=ex-e-xex+e-x(8) 
ReLUx=max0,x(9) 

Fig. 4. 
The shape of activation functions, (a) sigmoid, (b) tanh, and (c) ReLU.

각 활성화함수는 장점과 단점을 모두 지니고 있어 어느 것이 우위에 있다고 단정짓기 힘들다. 특히, 예측하고자 하는 기상 변수들은 각각 복잡한 특성을 지니고 있어 어느 함수를 사용하는 것이 유리할지 예측하기 어렵다. 그리하여 이 연구에서는 위에서 언급한 3가지에 xy를 1:1로 반환하는 linear까지, 4가지 활성화함수를 사용한 모델들을 각각 수행하였으며, 그 결과를 비교하여 가장 신뢰도가 높은 활성화함수를 선택하였다.


4. 결 과
4.1 모델에 입력된 요소 별 성능 분석

Figure 5Table 2에서 제시한 5가지 실험에 tanh 활성화 함수를 적용한 예측값과 ASOS 지상관측자료 간 (a) 기온, (b) 상대습도, (c) 풍속의 평균제곱근 오차(Root Mean Square Error: RMSE)이다. 5가지 실험결과 모두 예측시간이 길어지며 에러가 커지는 일반적인 예측 모델의 경향을 나타냈다. 기온은 0.8~3.2 정도의 값을 보이며 T + 1에서 + 6의 초기 예측시간에 0.6내외의 상대적으로 큰 실험 별 편차가 나타났다. 입력된 요소가 가장 적은 EX5 조합은 T + 2~+ 3 구간에 0.9에서 1.5 가량으로 0.6 정도 갑작스럽게 상승하고 T + 6~+ 7 구간에서는 0.2 가량 하강하는, 일반적인 상승 패턴과는 다른 모습을 보였다. 입력된 요소가 가장 많은 EX1 조합은 T + 1부터 + 2까지 T + 3 보다 0.1~0.2 가량 높고 그 이후로 상승하는 U자 형태의 불안정한 결과를 보였다. 이는 앞서 언급했던 입력 요소가 너무 많지도, 적지도 않게 적절히 조합되어야 한다는 것을 뒷받침하는 결과이다. 전반적으로 EX2와 EX4 조합의 결과가 가장 안정적이나 EX4 조합은 EX2에 비해 T + 7부터 + 10까지, T + 18부터의 중후반 시간대에서 0.2~0.3 가량 높아 상대적으로 예측 성능이 저하되었다. 그러므로 기온 예측에는 EX2 조합의 입력 요소들을 사용하는 것이 가장 합리적으로 판단된다.


Fig. 5. 
Station averaged RMSE between LSTM and ASOS by 5 experiments in 2019, (a) temperature, (b) relative humidity, and (c) wind speed.

상대습도의 경우 5~19 정도의 RMSE를 보이며 5개 실험 간의 편차가 1내외로 크지 않게 나타났다. 이는 5개 실험에 모두 입력된 기온이 상대습도에 가장 큰 영향을 주는 요소이기 때문으로 보인다. 다만 EX2 조합이 T + 10 이후 시간대에서 13.7~18 정도로 나머지 4개 실험 결과보다 0.5~1.5 가량 낮게 나타나 가장 뛰어난 성능을 보였다. 전체적으로 5~19 정도의 값을 나타낸 상대습도에서 이 정도는 비교적 작은 차이지만 나머지 실험에 비해 낮은 값을 보인 EX2 조합을 사용하는 것이 가장 적절한 선택으로 판단된다.

풍속의 경우 1~2.3 정도의 RMSE를 보이며 EX1 조합이 타 실험들에 비해 0.1~0.4 가량 높아 EX1의 성능이 가장 좋지 못하다. 반면 EX2 조합은 0.1~0.2 가량 높아 그 다음 순위인데 이는 일사량, 운량, 지중온도 같은 변수들이 풍속에 별다른 영향을 주지 못해 예측의 불확실성을 높이기 때문으로 보인다. 또한, EX5 조합은 나머지 두 실험에 비해 0.1 이내로 근소하게 성능이 떨어지는데 이는 바람에 영향을 주는 해면기압이 EX5 조합에 입력되지 않아 나타난 현상으로 보인다. 나머지 두 실험은 거의 차이가 없이 가장 좋은 성능을 나타냈다. 그러므로 EX3이나 EX4 조합을 선택하는 것이 가장 적절하나, 이 연구에서는 모델 구축의 편의성을 위해 기온과 상대습도에서 모두 선택되었고 성능 차이가 크지 않은 EX2 조합을 풍속 예측에도 적용시켜 모델을 구축하였다.

4.2 활성화함수 별 성능 분석

4.1에서 선택된 EX4 조합으로 sigmoid, tanh, ReLU, linear 4가지 활성화함수를 적용하여 예측값을 산출하여 비교하였다. Figure 6은 그 (a) 기온, (b) 상대습도, (c) 풍속의 RMSE 결과를 보여준다. 기온은 T + 10까지의 짧은 예측시간 내에서 tanh가 0.9~2.1 정도로 ReLU보다 0.5~0.8 가량, linear와 sigmoid보다는 0.2~0.3 가량 낮은 값을 보였다. T + 11~+ 17 구간에서는 2.3~3.0 정도로 ReLU, linear보다 0.4 내외, sigmoid보다 0.1~0.2 정도 낮았다. T + 19부터는 tanh가 sigmoid에게 역전되어 sigmoid의 값이 2.5~2.9 정도로 가장 낮았으나 그 차가 0.03 내외로 매우 작고 나머지 둘보다는 0.1~0.3 가량 낮은 값을 보였다. 상대습도는 T + 1~+ 3 구간에 linear, tanh와 sigmoid가 5~8 정도로 ReLU에 비해 1 이상 낮은 값을 보였다. 그러나 그 이후 구간에서 tanh는 9~18 정도로 sigmoid에 비해 1 이상 높은 값을 보였다. 전체적으로 5~18 정도인 상대습도의 RMSE를 고려하면 4가지 결과의 차이는 1 내외로 비교적 작다. 풍속은 tanh, ReLU, sigmoid의 결과가 1.2~2.2 정도로 서로간 0.2 내외의 비교적 작은 차이를 보였다. 그러나 linear는 2~6 정도로 심각하게 큰 차이를 보이고 있었다. 풍속은 기온과 상대습도에 비해 불연속성이 매우 큰 변수로서, 시간에 대해 선형적으로 예측하는 linear의 성능이 매우 떨어지는 것으로 판단된다. 즉, 기온은 tanh가 압도적이며 상대습도는 모든 결과가 유사하나 sigmoid가 미세하게 우세하고, 풍속은 linear를 제외한 나머지 결과들은 모두 유사한 결과를 보였다.


Fig. 6. 
Station averaged RMSE between LSTM and ASOS by each activation functions in 2019, (a) temperature, (b) relative humidity, and (c) wind speed.

이러한 결과와 더불어 모델에 사용할 활성화 함수의 결정에는 한 가지 더 고려되어야 할 사항이 있는데 바로 활성화 함수 별 계산 속도이다. LSTM 모델 구축에 일반적으로, 이 연구에서도 사용된 Tensorflow-keras 라이브러리에서는 tanh 활성화함수의 GPU 가속을 지원한다. GeForce RTX 2070 그래픽카드 기준, 1개의 epoch가 계산되는데 5초 정도가 소요되어 나머지 세 활성화함수에 비해 10배가량 빠른 계산속도를 보여준다. 따라서 이 연구에서는 구축된 모델에 활성화함수로 tanh를 사용하였다.

Figure 7은 EX2 조합과 tanh 활성화함수를 사용한 LSTM 모델의 월별 RMSE 결과이다. 일반적으로 수치모델에서는 기온, 상대습도, 풍속 모두 여름철이 겨울철에 비해 좋은 성능을 보인다. LSTM 역시 수치모델과 유사한 결과를 보이는데, 이는 세 변수 모두 여름철의 변동폭이 겨울에 비해 작기 때문으로 판단된다.


Fig. 7. 
Monthly RMSE between LSTM and ASOS temperature (blue line), relative humidity (green line), and wind speed (red line).

4.3 국지예보모델(LDAPS)과 결과 비교

본 연구에서는 구축된 LSTM 모델의 성능을 평가하기 위하여 기상청 현업 Local Data Assimilation and Prediction System (LDAPS) 수치모델과 성능을 비교하였다. LDAPS의 성능 평가 결과는 기상청에서 작성된 기술보고서를 참고하였다(KMA, 2020). Figure 8은 그 RMSE 결과이며 실선은 LSTM, 파선은 LDAPS, 붉은색은 기온, 보라색은 풍속, 파란색은 상대습도를 나타낸다. LSTM 기온은 0.9~3.1, LDAPS는 1.6~2.1 가량의 값을 보였다. T + 1~+ 9의 초기시간대에서 LSTM이 우세한 성능을 보였는데 특히 T + 4까지는 1에 가까운 차이를 나타냈다. 기온은 초기시간에 1에 가까운 차이를 보이며 T + 9까지 LSTM이 우세한 성능을 보였다. 그러나 T + 10부터 성능이 역전되며 T + 17에서는 LDAPS가 2.0, LSTM이 3.1로 1이 넘는 차이가 나타났다. 상대습도 역시 기온에 의존도가 높아 유사한 경향이 나타났다. LSTM은 5.7~18, LDAPS는 10.5~13.5 정도의 값을 보였으며 T + 9를 기준으로 이전 시간대에서는 LSTM이 5.7~12 정도로 LDAPS보다 1~4.8 가량 낮았으나 이후 시간대에선 13.7~18 정도로 0.5~6 정도 높았다. 초기 예측시간대에서 LSTM의 성능이 좋은데 이는 두 가지 이유가 있는 것으로 판단된다. 첫 번째, LSTM은 이전 240시간 동안의 관측자료를 초기장으로 사용했으나 LDAPS는 3시간 전에 자체 예측한 배경장에 위성, 지상, 부이, 항공 관측자료 등을 사용하여 자료동화 한다. 그러므로 LDAPS 초기장은 관측자료를 활용하는 자료동화 과정에서 오차가 발생한다. 두 번째, LDAPS는 1.5 km 규모의 격자 체계로 예측을 수행하여 그 격자에 포함되는 모든 지역을 대표하는 값으로 예측값을 산출하는데, 고도와 지표이용도 등 기상 요소에 큰 영향을 주는 변수들은 한 격자의 대표값과 실제 지점에서의 값과 차이가 있을 수 있어 이로 인해 오차가 발생한다. 반면에 LSTM 모델은 후기 예측시간대에서 성능이 떨어지는데 이는 LSTM이 한 지점에서의 기상 요소들만 고려하여 주변 지역의 기상 변화와 상태를 반영할 수 없기 때문으로 판단된다.


Fig. 8. 
Comparison of RMSE between LSTM (solid line) and LDAPS (dash line) temperature (red), wind speed (purple), and RH (blue).

풍속의 경우 T+13까지 LSTM이 1.15~2.1, LDAPS가 1.7~2.2 정도의 값을 보였다. 대부분의 시간대에서 LSTM의 RMSE가 낮았으며 T + 5 이내의 초기시간에는 0.5~0.8 정도 낮은 값을 보였는데, 풍속의 평균값을 고려하면 이는 대단히 큰 수치이다. 다만 기온, 상대습도와 유사하게 그 이후로는 성능의 차이가 지속적으로 줄어들며 T + 12경부터는 0.1 내외의 작은 차이만을 보였고 T + 14부터는 거의 유사하거나 약간 우세한 성능을 보였다. 하지만 성능의 역전이 나타나진 않으며 이는 수치예보모델의 풍속 예측이 기온이나 상대습도보다 상대적으로 어렵기 때문으로 판단된다.

결과들을 종합하면, LSTM은 T + 10 이내의 예측 시간대에서 LDAPS보다 좋은 결과를 나타냈으며 그러므로, LSTM 모델은 초단기 예보에 활용할 가치가 있다고 보여진다. 다만, 현 상황에서는 LSTM과 LDAPS 모두 악기상이 발생하기 이전에는 이에 대한 예측이 어렵다. 하지만 악기상이 시작된 직후 예측을 시작하면 초기장에 악기상에 대한 정보가 포함되므로 예측성이 향상될 수 있다. 이러한 측면에서는, ASOS 관측 간격인 1분마다 예측을 시작할 수 있는 LSTM이 6시간 간격의 LDAPS보다 악기상 예측에 더 많은 가능성을 지닐 것으로 사료된다.


5. 결론 및 향후 계획

기상예보에 중요한 역할을 담당하는 수치예보모델은 좋은 결과를 보여주고 있지만 여러 요인들로 인해 어려움이 존재하는데, 그 요인들 중 역학방정식에서의 문제는 기술의 발달로도 해결이 어렵다. 또한 이를 수행하기 위해서는 수많은 CPU가 필요하며 이로 인해 비용적 측면에서 많은 불리함을 보인다. 반면 딥러닝 기반의 LSTM 모델은 이러한 문제점을 개선시켜주고 개인용 PC의 그래픽카드나 딥러닝 전용 워크스테이션 정도로 수행이 가능하다는 장점이 있다. 그러므로 이 연구에서는 LSTM 모델을 구축하여 실험을 통해 LSTM에 입력될 요소들의 조합과 적용할 활성화함수를 평가하고 그 결과 EX2 조합과 tanh 함수가 가장 적절하다고 판단하였다. 이후 LSTM과 기상청 현업 LDAPS 모델의 예측결과를 비교하였는데, T + 8~+ 10 이내의 비교적 짧은 예측시간 내에서는 LSTM 모델의 성능이 뛰어난 것으로 나타났으며 이를 초단기예보에는 활용할 수 있을 것으로 보인다. 다만, 이 연구에서 구축한 LSTM 모델은 한 지점에서의 시간에 대한 1차원 모델로서 주변 지점을 고려할 수 없어 10시간 이상의 예측에 어려움이 있는 것으로 판단된다.

향후에는 2차원의 공간적인 분석이 가능한 CNN 기법을 LSTM에 접합하여 시간에 2차원 공간을 더해 3차원 CNN-LSTM 접합모델을 구축함으로써 이러한 단점을 보완하려 한다. 이러한 모델의 개발은 수치예보모델의 한계점을 보완하고 기상 예보의 신뢰성 향상을 불러올 수 있을 것이다.


Acknowledgments

이 논문은 한국연구재단의 지원을 받아 수행된 기초연구사업임(No. NRF-2020R1C1C1014522).


References
1. Chen, J., J. Yu, M. Song, and V. Valdmanis, 2019: Factor decomposition and prediction of solar energy consumption in the United States. J. Clean. Prod., 234, 1210-1220.
2. Farzad, A., H. Mashayekhi, and H. Hassanpour, 2019: A comparative performance analysis of different activation functions in LSTM networks for classification. Neural Comput. Applic., 31, 2507-2521.
3. Feng, C., M. Cui, B.-M. Hodge, and J. Zhang, 2017: A data-driven multi-model methodology with deep feature selection for short-term wind forecasting. Appl. Energ., 190, 1245-1257.
4. Gal, Y., and Z. Ghahramani, 2016: A theoretically grounded application of dropout in recurrent neural network. Preprints, 30th Conference on Neural Information Processing Systems, 14 pp [Available online at https://arxiv.org/abs/1512.05287].
5. Hewage, P., M. Trovati, E. Pereira, and A. Behera, 2021: Deep learning-based effective fine-grained weather forecasting model. Pattern Anal. Applic., 24, 343-366.
6. Holton, J., and G. Hakim, 2012: An Introduction to Dynamic Meteorology, 5th edition. Academic Press, 552 pp.
7. Hochreiter, S., and J. Schmidhuber, 1997: Long short-term memory. Neural Comput., 9, 1735-1780.
8. Hong, S.-Y., and M. Kanamitsu, 2014: Dynamical downscaling: Fundamental issues from an NWP point of view and recommendations. Asia-Pac. J. Atmos. Sci., 50, 83-104.
9. Jozefowicz, R., W. Zaremba, and I. Sutskever, 2015: An empirical exploration of recurrent network architectures. Proc., The 32nd International conference on machine learning, 37, ICML, 2342-2350.
10. Kiperwasser, E., and Y. Goldberg, 2016: Simple and accurate dependency parsing using bidirectional LSTM feature representations. T. Assoc. Comput. Linguist., 4, 313-327.
11. KMA, 2020: Validation of Numerical Prediction System (2019). Tech. Rep., Numerical Modeling Center, Korea Meteorological Administration, 11-1360709-000001-10, 297 pp (in Korean).
12. Lea, C., M. D. Flynn, R. Vidal, A. Reiter, and G. D. Hager, 2017: Temporal convolutional networks for action segmentation and detection. Proc., 30th IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Institute of Electrical and Electronics Engineers Inc., 1003-1012.
13. Majhi, B., D. Naidu, A. P. Mishra, and S. C. Satapathy, 2020: Improved prediction of daily pan evaporation using Deep-LSTM model. Neural Comput. Applic., 32, 7823-7838.
14. Poornima, S., and M. Pushpalatha, 2019: Prediction of rainfall using intensified LSTM based recurrent neural network with weighted linear units. Atmosphere, 10, 668.
15. Rumelhart, D. E., G. E. Hinton, and R. J. Williams, 1986: Learning representations by back-propagating errors. Nature, 323, 533-536.
16. Srivastava, N., G. Hinton, A. Krizhevsky, I. Sutskever, and R. Salakhutdinov, 2014: Dropout: a simple way to prevent neural networks from overfitting. J. Machine Learn. Res., 15, 1929-1958.
17. Tieleman, T., and G. Hinton, 2012: Lecture 6.5-rmsprop: Divide the gradient by a running average of its recent magnitude. COURSERA: Neural Networks for Machine Learning, 4, 26-31.
18. Wang, H., and B. Raj, 2017: On the origin of deep learning. Preprint, arXiv, 72 pp [Available online at https://arxiv.org/abs/1702.07800].
19. Yang, B., S. Sun, J. Li, X. Lin, and Y. Tian, 2019: Traffic flow prediction using LSTM with feature enhancement. Neurocomputing, 332, 320-327.
20. Zhang, Q., H. Wang, J. Dong, G. Zhong, and X. Sun, 2017: Prediction of sea surface temperature using long shortterm memory. IEEE Geosci. Remote S., 14, 1745-1749.
21. Zhang, T., S. Song, S. Li, L. Ma, S. Pan, and L. Han, 2019: Research on gas concentration prediction models based on LSTM multidimensional time series. Energies, 12, 161.