• 검색 결과가 없습니다.

제2장 설명 가능한 인공지능 기반 새로운 미세먼지 예측 모듈 개발 ∣ 19

한 것으로 볼 수 있다. 미세먼지 농도에 영향을 주는 강수의 경우 부정적인 영향을 미쳤다는 점에서는 합리적이지만 영향력은 크지 않은 것을 볼 수 있다. 이는 비가 오는 날 자체가 적기 때문에 감소에 영향을 미쳤지만, 전체 미세먼지 예측에서의 영향을 미친 정도는 낮은 것으로 해석할 수 있다.

하지만 본 연구에는 몇 가지 한계점이 존재한다. 첫째, ViT 구조로 인한 정방행렬 변환이 필요하다는 점이다. ViT 구조를 가져온 ICNN-ViT의 경우 기존 40X28 형태로는 예측이 불가능한 한계점이 존재하여 zero padding을 적용한 40×40 크기의 가공 이미지 형태로 예측을 진행하여야 한다. 둘째, 차원 축소 문제이다. 현재 데이터가 forward될 때 batch, 40, 40, time-step, number of variables 형태로 5차원이다. 이러한 데이터가 CNN 구조 를 통과하며 차원이 축소되어 특정 차원이 뭉개지는 현상이 발생해 중·단기 예측에서 기존 ICNN 모델보다 성능이 떨어지는 한계점이 존재한다.

향후 연구에서는 다지점 예측에 대한 문제를 단순화할 필요가 있다. 현재 다지점 예측을 위해 다지점 데이터로 학습을 진행하는데, 이로 인해 차원 문제가 발생하였고, 따라서 현재 의 attention score는 40 by 40 patch에 대한 attention score가 추출되었다. 향후 연구 에서는 단일 지점에 대한 예측으로 변형하거나 다른 방법을 고려하여 독립변수별 attention score를 추출한다면 해석력이 향상될 것으로 기대한다. 마지막으로 시계열 정보 에 대한 해석력을 갖춘다면 미세먼지 예측 메커니즘 이해도를 보다 높일 수 있을 것으로 예상한다.

제3장 설명 가능 딥러닝 모델을 활용한 담수 수계 부영양화 지수농도 산정 ∣ 21

제3장

설명 가능 딥러닝 모델을 활용한 담수 수계 부영양화 지수농도 산정

1. 서론

전 지구적인 이상 기온 현상과 산업화 및 도시화로 인한 과다한 영양염 유입으로 담수 수계의 부영양화 현상이 빈번히 발생하고 있는데, 이는 조류 대발생을 야기하여 수질 악화 를 초래하고 있다(Rabalais et al., 2009). 수질 악화에 따라 수변 이취미 문제, 정수장 응집장애 및 여과지 폐쇄, 용수의 이용과 공급 지장과 같은 사회·경제적 손실이 증가하고 있다(Kim et al., 2002). 이에 효율적인 수질 관리 방안을 마련하여 부영양화로 인한 수질 악화를 예방하고 피해를 최소화해야 하지만 하천별, 계절별, 지역별로 수질 특성이 복잡한 양상을 보이기 때문에 수질, 수리, 수문, 기상 등 다양한 측면의 현상들을 복합적으로 고려 하여 수질 관리 정책을 마련해야 한다.

4차 산업혁명의 빅데이터와 인공지능 시대가 도래하면서 담수 수질 관리에도 많은 변화가 이루어지고 있다. 수질 모니터링 기법에서도 기존의 현장 모니터링뿐만 아니라 센서 기기의 고도화를 통한 실시간 수질 모니터링과 원격탐사기법을 활용한 면단위 수질 모니터링 등 수질 데이터 획득의 다각화가 진행되고 있다. 이러한 다차원의 데이터를 효율적으로 처리하기 위해 데이터 기반 모델들이 활용되고 있으며, 특히 딥러닝 기법이 빅데이터를 처리하기 위한 방안으로 떠오르고 있다. 딥러닝 기법 중 합성곱 신경망(CNN: Convolutional Neural Network) 모델과 장단기 메모리(LSTM: Long Short-Term Memory) 모델이 다차원 이미지 데이터와 시계열 데이터를 처리하여 수질 예측에 많이 활용되고 있다. 국내외 연구들에서 두 모델을 활용하여 조류(Cho and Park, 2019; Maier, Keller, and Hinz., 2021), 총 인(Song and Kim, 2020; Wang et al., 2017), 화학적 산소요구량(Wang et al., 2019;

Ye et al., 2019)과 같은 다양한 수질 인자들을 예측하는 연구를 진행하였다. 또한 설명 가능 한 인공지능(XAI: Explainable Artificial Intelligence)을 활용하여 환경 현상에 대한 원 인 분석 연구들도 활발히 진행하고 있다. Park et al.(2022)는 XGBoost 모델에 XAI를 적용하여 조류 예측에 대한 영향인자 분석 연구를 수행하였다.

수질 악화의 원초적인 원인이 되는 부영양화 현상을 선제적으로 관리하기 위해서는 부영 양화 지표의 정확한 예측이 필수적이다. 하지만 딥러닝을 활용한 부영양화 지표 수질 인자 산정에 대한 연구가 미흡한 실정이다. 따라서 본 연구에서는 1D-CNN 모델을 구축하여 부영양화 지표인 화학적 산소요구량, 총 인 그리고 클로로필a의 농도를 산정하고, XAI 모델 인 Convolutional Block Attention Module(CBAM)을 적용하여 부영양화 원인 인자를 분석하는 연구를 수행하고자 한다.

2. 방법론

가. 연구 대상 지역

본 연구의 연구 지역은 금강과 낙동강을 대상으로 하였다. 금강과 낙동강은 대한민국의 국가 하천이며 충청도와 경상도 및 강원도 일부 지역의 음용수, 공업용수, 농업용수로 활용 되고 있다. 하지만 해당 하천들에서 여름철 오염원 유입과 높은 기온 및 느린 유달시간으로 인한 수체의 부영양화로, 독성 남조류 대발생 현상이 매년 관측되고 발생의 정도도 점점 커지고 있다. 따라서 본 연구에서는 금강에서 수질 악화에 취약한 백제보의 수질 측정망 지점(부여)과 낙동강의 달성보의 수질 측정망 지점(현풍)을 대상으로 연구를 수행하였다 (그림 3-1 참조).

제3장 설명 가능 딥러닝 모델을 활용한 담수 수계 부영양화 지수농도 산정 ∣ 23

자료: 저자 작성.

<그림 3-1> 금강 및 낙동강 수계의 수질 측정망 지점 위치

나. 데이터

본 연구에서는 백제보의 부여 수질 측정망 지점과 달성보의 현풍 수질 측정망 지점의 2016~2021년까지 수질 데이터를 물환경 정보시스템에서 취득하였다. 총 6년 기간 동안 부여는 274개, 현풍은 233개의 데이터로 총 507개의 데이터를 획득하였다. 해당 데이터는 수온(WT: Water Temperature), 용존산소(DO: Dissolved Oxygen), 생물학적 산소요구 량(BOD: Biological Oxygen Demand), 총 질소(TN: Total Nitrogen), 총 인(TP: Total

Phosphorus), 수소농도이온 지수(pH: Potential of Hydrogen), 전기전도도(CD:

Conductivity), 용존 총 질소(DTN: Dissolved Total Nitrogen), 암모니아성 질소 (NH3-N: Ammonia Nitrogen), 질산성 질소(NO3-N: Nitrate Nitrogen), 용존 총 인 (DTP: Dissolved Total Phosphorus), 인산염인(PO4-P: Phosphate), 부유물질(SS:

Suspended Solid), 화학적 산소요구량(COD: Chemical Oxygen Demand), 클로로필 a(Chl-a: Chlorophyll-a)와 같은 수질 인자들로 이루어져 있다. 개발 수질 인자의 통계와 시계열 변화는 <표 3-1>과 <표 3-2> 그리고 <그림 3-2>와 같다.

수질 인자(부여) 최소 최대 평균 표준편차

WT(℃) 1.9 32.1 16.5 7.7

DO(mg/L) 4.7 17.4 11.7 2.6

BOD(mg/L) 0.7 7.1 3.0 1.4

TN(mg/L) 1.3 7.2 3.4 1.2

TP(mg/L) 0.017 0.33 0.076 0.041

pH 6.7 9.6 8.1 0.6

CD(microS/cm) 125 676 381.9 102.4

DTN(mg/L) 1.2 6.9 3.2 1.2

NH3-N(mg/L) 0.008 2.2 0.23 0.36

NO3-N(mg/L) 0.72 4.5 2.5 0.9

DTP(mg/L) 0.01 0.16 0.039 0.026

PO4-P(mg/L) 0 0.14 0.017 0.023

SS(mg/L) 1.4 231.8 14.4 20.1

COD(mg/L) 4.7 13.7 7.5 1.6

Chl-a(mg/m3) 3.5 178.8 51.2 38.3

자료: 저자 작성.

<표 3-1> 2016~2021년 금강 부여 측정망 수질 인자 통계

제3장 설명 가능 딥러닝 모델을 활용한 담수 수계 부영양화 지수농도 산정 ∣ 25

수질 인자 (현풍) 최소 최대 평균 표준편차

WT(℃) 2.8 32.4 17.3 7.6

DO(mg/L) 7.0 16.2 10.8 2.0

BOD(mg/L) 0.9 7.3 2.3 0.88

TN(mg/L) 1.6 6.1 3.3 0.81

TP(mg/L) 0.016 0.17 0.048 0.028

pH 6.9 9.2 7.94 0.41

CD(microS/cm) 147 794 400.5 124.2

DTN(mg/L) 1.5 6.0 3.2 0.80

NH3-N(mg/L) 0.01 0.97 0.14 0.13

NO3-N(mg/L) 0.54 5.5 2.5 0.76

DTP(mg/L) 0.006 0.12 0.030 0.024

PO4-P(mg/L) 0 0.11 0.016 0.025

SS(mg/L) 1.8 101 8.9 8.7

COD(mg/L) 4.8 12.7 7.0 1.2

Chl-a(mg/m3) 2.4 110.3 23.2 15.3

자료: 저자 작성.

<표 3-2> 2016~2021년 낙동강 현풍 측정망 수질 인자 통계

자료: 저자 작성.

<그림 3-2> 부여 및 현풍의 수질변수 시계열 자료

제3장 설명 가능 딥러닝 모델을 활용한 담수 수계 부영양화 지수농도 산정 ∣ 27

다. Convolutional Neural Network(CNN)

CNN 모델은 다차원 데이터를 효율적으로 처리 및 학습을 진행하여 분류, 탐지, 회귀 문제를 해결하는 데 많이 사용되고 있다(Xie et al., 2015). 다차원 데이터 특징 추출은 convolutional layer를 구성함으로써 수행되고, 이때 convolutional layer 내부의 다중 kernel을 통해 학습에 필요한 weight와 bias를 훈련한다. 이러한 CNN 모델의 데이터 특 징 추출은 다음 계산식으로 표현할 수 있다.

 

        

  

    식 (3-1)

식 (3-1)의 은 번째 convolution layer의 출력 특징, 은 번째 layer의 학습가중 치,   은   번째 layer의 출력 특징, 은 번째 layer의 편향, 와 는 kernel 픽셀,

과 은   번째 layer 출력 특징의 픽셀, 는 활성화 함수를 나타낸다.

convolutional 특징 추출을 중심으로 다양한 기법들을 추가하여 CNN 모델의 학습 성능 과 보편성을 재고할 수 있다. batch normalization은 입력값의 batch당 정규화를 수행하 여 모델 학습 시 발생할 수 있는 covariate shift 현상을 예방하고 일반화된 학습 성능을 구현할 수 있도록 한다.1) 그리고 average-pooling 또는 max-pooling와 같은 pooling layer를 통해 데이터 특징들을 효율적으로 추출하고 데이터 차원까지 줄임으로써 훈련 계산 속도를 향상시킬 수 있다.2) 또한 dropout layer를 설정하여 모델 성능의 과접합 (overfitting)을 방지하고 보편성을 재고할 수 있도록 하였다.3)

본 연구에서는 부여와 현풍 수질 측정망 지점의 12가지 수질 인자 시계열 데이터를 입력 자료로 구성하고, 해당 데이터의 특징을 추출하기 위해 1D-CNN 모델을 구축하였다(그림 3-3 참조). 부영양화 지표 수질 인자인 COD, TP 그리고 Chl-a를 한 번에 산정하는 multiple outputs 모델(그림 3-3(a) 참조)과 수질 인자 농도를 각각 산정하는 single

1) Ioffe and Szegedy(2015), pp.448-456: Hong et al.(2021), p.553에서 재인용.

2) Gholamalinezhad and Khosravi(2020): Hong et al.(2021), p.553에서 재인용.

3) Srivastava et al.(2014), pp.1929-1958: Hong et al.(2021), p.553에서 재인용.

output 1D-CNN 모델 3개(그림 3-3(b) 참조)를 구축하여 성능을 비교하였다. 모델 훈련 을 위해 전체 데이터의 70% 그리고 모델 검증을 위해 나머지 30%를 임의로 나누어 진행하 였다.

주: a) Multiple output 1D-CNN 모델, b) Single output 1D-CNN 모델 3가지 자료: 저자 작성.

<그림 3-3> 부영양화 지표 농도 산정을 위한 CNN 모델 구조

라. Convolutional Block Attention Module(CBAM)

CBAM은 CNN 모델의 convolutional layer 특징을 보정하여 모델의 학습 성능을 재고 하고 중요 특징을 결정하는 XAI 모델이다(Woo et al., 2018). CBAM은 이를 위해 channel attention과 spatial attention 같이 2가지 하위 모듈로 구성되어 있다(그림 3-4

제3장 설명 가능 딥러닝 모델을 활용한 담수 수계 부영양화 지수농도 산정 ∣ 29

참조). channel attention은 입력자료의 channel 특성에서 중요한 특징과 중요하지 않은 특징을 결정한다. channel 방향으로 이미지를 average-pooling과 max-pooling을 수행 하여 각각의 1차원화된 특징을 multilayer perceptron(MLP)에 적용하여 정보를 보정한 다. 이후 두 특징을 더하고 sigmoid 활성화함수를 적용하고 입력된 특징 데이터에 곱해주 어 channel 특성의 중요도가 반영된 특징 데이터를 생성한다. 이 특정 정보는 다시 spatial attention 모듈에 입력되어 공간적으로 중요한 특징과 그렇지 않은 특징을 결정한다.

spatial attention 모듈도 공간 방향으로 average-pooling과 max-pooling을 수행하고 각각의 2차원 특징을 한 층의 CNN 모델에 적용하여 정보를 보정한다. 그런 다음 두 특징을 더하고 sigmoid를 적용하고 channel attention으로 보정된 특징에 곱해주어 공간 특성에 중요도가 반영된 특징 데이터를 생성한다. 마지막으로 기존에 입력된 입력 특성에 channel attention과 spatial attention을 통해 생성된 보정 특성을 더하여 다음 convolutional layer로 전달된다.

본 연구에서는 시계열 수질 특성 자료인 1차원의 입력자료를 적용하기 때문에 spatial attention 모듈만을 활용하여 부영양화 지표 인자 산정에 영향을 미치는 수질 인자를 분석 하고자 한다.

자료: 저자 작성.

<그림 3-4> CBAM attention을 통한 Convolutional feature 조정 과정

마. 정확도 분석

딥러닝 모델의 부영양화 지표 수질 인자 농도 산정의 성능을 파악하기 위해 결정계수 (coefficient of determination, R2)와 평균 제곱근오차(RMSE: root mean square error)를 활용하였다. R2와 RMSE에 계산식은 다음과 같다.

 



 

 

 

 

 

  

식 (3-2)

 

   식 (3-3)

식 (3-2) 및 식 (3-3)에서 는 1D-CNN 산정 COD(mg L-1), TP(mg L-1), Chl-a(mg m-3) 그리고 는 관측 COD(mg L-1), TP(mg L-1), Chl-a(mg m-3) 농도 그리고 은 샘플 개수를 나타낸다.