예보지원을 위한 기상-AI 해석모형 개발

2024년 4월

기  상  청

김 선 영

목   차

국외 훈련 개요	I

훈련기관 개요	II

1. 서론	1

2. AI2ES의 현황과 연구 방향	3

3. AI 기반 위험기상 예측 모델 개발	24

4. 기상분야 설명가능 인공지능	64

5. AI 기반 설명 인터페이스	88

6. 윤리적이고 신뢰할만한 인공지능	98

7. 결론	118

참고문헌	120

국외 훈련 개요

1. 훈련국 : 미국

2. 훈련기관명 : AI2ES (NSF AI Institute for Research on Trustworthy AI in Weather, Climate, and Coastal)

3. 훈련분야 : 예보지원을 위한 기상-AI 해석모형 개발

4. 훈련기간 : 2022.11.6. ~ 2024.5.5.

훈련기관 개요

1. 명칭: AI2ES (NSF Institute of Research on Trustworthy AI in Weather, Climate, and Coastal Oceanography)

2. 소재지: National Weather Center, University of Oklahoma, 120 David L Boren Blvd, Norman, OK, USA

3. 인터넷 웹주소: https://www.ai2es.org

4. 설립목적

○　NSF (National Science Foundation)의 인공지능연구소 지원사업에 의해 2020년 설립된 9개의 AI연구센터 중 환경과학 분야 특화 센터

○ 날씨, 기후, 해양 등 환경과학 분야에서의 신뢰할 수 있는 기초 인공지능(AI)연구 발전을 위해 설립

5. 조직

○ 사회적으로 영향력이 증대되고 있는 신뢰할 수 있는 인공지능의 통합 및 분야별 협력을 위해 민, 관, 산, 학, 연 간의 파트너쉽 체결

- Lead 기관인 오클라호마 대학, 하부기관으로 8개의 대학 및 기관, 공동참여기관으로 25개의 기관으로 구성되어 있는 환경과학 분야의 유일한 AI 연구센터

Central Michigan University, Colorado University, Del Mar College, North Carolina State University, Texas A&M University Corpus Christi, University at Albany, University Corporation for Atmospheric Research, University of Washington

City of Corpus Christi, Department of Homeland Security and Emergency Services, Disaster Tech, DOT, Department of Environmental Conservation, Google, IBM(The Weather Company), MyRadar, National Hurricane Center,  Joint Typhoon Warning Center • National Park Service • New York Independent System Operator • New York Power Authority • New York State Thruway • NOAA, National Severe Storms Laboratory, Storm Prediction Center National Oceanic and Atmospheric Administration • NOAA-GSD, NOAA’s National Geodetic Survey and Center for Operational Oceanographic Products and Services • Nueces County Coastal Parks  • Nvidia • Oklahoma Climate Survey • Palo Alto Research Center • Radiant Earth Foundation • Texas Coastal Offices of the National Weather Service • Texas Commission on Environmental Quality • Texas Department of Transportation • Texas General Land Office • TrueWeather Solutions • Vaisala

○ 환경과학(ES)-인공지능(AI)-리스크커뮤니케이션(RC)의 세 분야의 연구그룹으로 구성

- 3개의 연구그룹과 설명가능 인공지능(XAI) 사회확산을 위한 2개의 그룹으로 구성되어 있으며, 약 100여명의 인원이 소속되어 있음

- 기초연구팀(Foundational research in trustworthy Artificial Intelligence/Machine Learning), 사례연구팀(Use-inspired research in Environmental Science), 윤리적 AI 연구팀(Ethical and Responsible AI for the Environmental Sciences),  리스크 커뮤니케이션 연구팀(Foundational research in AI risk communication for Environmental Science hazards)

1. 서론

인공지능(Artificial Intelligence, AI) 활용이 사회 전(全) 분야에서 양적·질적으로 확대되고 있다. 오늘날 인공지능은 개인 맞춤형 의료, 국가안보 강화, 교통시스템 개선, 교육에의 적용 등 우리 일상생활과 밀접해지고 있으며 다양한 장점을 제공하고 있다. 인공지능 발전과 동반된 계산 능력의 향상, 대용량, 대규모 자료 및 스트리밍 데이터의 가용성, 그리고 기계 학습(Machine Learning, ML) 알고리즘의 발전 등은 인공지능 연구 및 개발을 촉진시켜 새로운 경제 분야를 만들어내는 등 긍정적인 효과를 가져왔다.

그러나 인공지능이 확산되면서 다양한 사회·윤리적 문제가 인공지능에 투영, 남용되는 사례가 지속적으로 발생하면서 사회적 관심과 우려가 대두되고 있다. 따라서 국민의 생명과 재산에 밀접한 관련이 있는 분야에서의 AI 투명성과 신뢰성이 최우선시 되어야 한다

기후변화로 인한 전 지구적 위험기상과 재해 발발은 장기적으로 삶의 패턴에 영향을 끼치고 이에 따른 긴장과 갈등이 부각될 것으로 예측되고 있다. 2000년부터 20년간 기록된 글로벌 재해는 총 7,348건이며 이 중 91%가 기후 관련 재해(6,681건)이고 그 중 홍수로 인한 재해(3,254건)가 48.7%를 차지하였다(UNDRR, 2020). 위험기상의 빈도가 지속적으로 증가함에 따라, 재산·인명 상의 피해에 의한 사회·경제적 손실도 증가하고 있다. 이와 같은 기상재해로 인한 피해를 최소화하기 위해서는 신속·정확한 예보생산이 요구된다. 그러나 수치모델의 한계, 한반도의 복잡한 지형 특성 등으로 신속하고 정확한 일기 예측에 어려움이 존재한다.

이와 같은 어려움을 극복하기 위해 전 세계적으로 기후변화 및 기상재해 난제 대응을 위한 빅데이터와 인공지능 융합기술을 통한 예보정확도 및 서비스 품질 개선을 위한 다양한 시도가 이루어지고 있다. 특히 기상은 국민의 재산 및 생명과 직결되는 분야로 기상 분야에 적용되는 인공지능의 신뢰성과 투명성이 반드시 확보되어야 한다. 또한 기상분야 AI 활용 의사결정 지원 시스템의 경우 판단 근거를 이해할 수 있는 방식으로 개발하여 제공해야 한다. 그러나 현재까지의 기술 수준은 인공지능 모델의 최종 예측 결과의 근거와 도출과정의 타당성까지 제공하지 못하는 단계이다. 인공지능 기반 기상예측 모델 내부에서 일어나는 일에 대한 가시성 향상과 데이터, 모델, 시스템 개선을 위한 관련 기술 적용은 필수적이다.

이와 관련하여 환경과학 분야 유일한 인공지능 연구센터이자 신뢰할 수 있는 인공지능 기술개발을 선도하는 AI2ES의 연구 현황과 연구방향에 대해 조사하고자 한다. 또한 인공지능 기반 기상예측 모델 개발에 대한 연구를 수행하고자 한다. 예측 성능에 영향을 미칠 수 있는 다양한 조건을 검토하고 적용하고자 한다. 설명가능 인공지능(explainable AI, XAI) 및 해석기법 관련 핵심 기술을 조사하고, 기상 분야에 적용된 사례를 분석하고자한다. 그리고 설명가능 인공지능 활용을 위해 필수적인 설명 인터페이스 개발을 위한 HCI에 조사하고자 한다. 마지막으로 AI2ES에서 보유한 인공지능 모델 예측결과에 대한 다양한 해석기법을 확보하여 정리하고자 한다. 또한 최근 그 중요성이 부각되고 있는 인공지능과 윤리에 대한 국내외의 가이드라인과 규제에 대해 조사하고, 환경과학 분야에서 인공지능 윤리에 대한 필요성에 대해 분석하고자 한다.

2. AI2ES의 현황과 연구 방향

2.1. AI2ES의 연구 현황

NSF AI2ES (Institute of Research on Trustworthy AI in Weather, Climate, and Coastal Oceanography)는 환경과학 분야에서 활용할 수 있는 신뢰할 수 있는 인공지능 개발을 목적으로 하는 융합 연구센터이다. AI2ES는 신뢰할 수 있는 인공지능 기법을 개발하여 대기 및 해양과학 현상에 대한 이해와 예측을 개선하여 다양한 사람들이 활용할 수 있도록 하는 것을 목표로 하고 있다.

AI2ES는 설립 이후 매년 기초 및 융합연구에 중점을 두고 있으며, 일부 수행한 연구 결과를 학계 및 정부기관에 제공하는 결과를 도출하였다. AI 연구자, 대기 및 해양과학자, 위험커뮤니케이션 연구자들과 함께 다양한 환경과학 분야의 활용 사례에 대한 인공지능 솔루션을 공동으로 개발하고 있다. 이와 더불어 다양한 분야에서의 광범위한 참여 촉진을 통해 관련 직업 개발을 위한 노력을 하고 있다(Fig. 2.1.1.).

AI2ES는 다양한 기초 인공지능 연구주제를 가지고 연구를 수행하고 있다. 물리학 법칙에 근거한 인공지능 방법론의 개발 필요성, 인공지능 방법론이 무엇을 학습했는지를 사용자에게 과학적으로 설명하는 능력, 인공지능모델에 대한 불확실성을 학습, 표현 및 전달하는 능력, 그리고 모델이 이론적, 경험적으로 견고해야 한다는 것에 중점을 두고 있다(Fig. 2.1.2.).

Fig. 2.1.1. Summary of virtuous cycle of research

Fig. 2.1.2. AI2ES foundational AI research for ES

기초 AI 연구 수행과 동시에 진행되는 리스크 커뮤니케이션 연구에서는 AI 정보의 필요성 및 사용자들의 이에 대한 태도를 이해하고, 과학자, 자원관리자 및 전문가가 업무 수행을 위해 인공지능 결과 혹은 제품을 활용하는 방법에 대하여 분석한다. 이처럼 AI2ES에서 수행되는 모든 연구는 사용자 중심으로 진행되고 있다.

2.2. AI2ES의 연구 그룹

인공지능, 대기, 해양과학, 위험 커뮤니케이션, 교육 등 다양한 분야의 전문가들이 AI2ES에 참여하며, 공동연구를 수행하고 있다. AI2ES는 각 연구분야별 협업을 통해 환경과학에 대한 이해를 향상 시키고 예측기술 개발을 촉진하는 신뢰할 수 있는 인공지능 기술의 개발 및 테스트에 중점을 두고 있다. 또한 신뢰할 수 있는 인공지능 기술을 개발하고 사용자 정보를 활용하여 주요 의사 결정권자와 긴밀하게 협력하기 위한 경험적 기반을 구축하기 위해 노력하고 있다. 이와 같은 위험 커뮤니케이션 연구를 통해 개발된 인공지능 기술을 효과적으로 활용할 수 있다고 판단하고 있다.

AI2ES는 다음의 4가지 분야에 집중하여 센터를 운영하고 있다.

Ⅰ. 신뢰할 수 있는 인공지능/기계학습 기초 연구

Ⅱ. 환경과학(대기, 해양) 분야에서 요구하는 연구

Ⅲ. 환경과학 위험에 대한 위험 커뮤니케이션 기초 연구

Ⅳ. AI 인력개발 및 참여확대 연구

Fig. 2.2.1. AI2ES Vision and Goals

AI2ES 비전의 실현이라는 목표를 향해 위의 4가지 분야는 서로 긴밀하고 유기적으로 연결되어 있다. AI2ES는 ① 새롭고 신뢰할 수 있는 AI 기술의 개발, ② 환경과학분야 기초연구, ③ 다양한 상황 및 사용자 범주에서 인간과 인공지능 간의 신뢰 구조를 이해하기 위한 혁신적인 접근 방식 개발, ④ 인공지능 및 환경과학 인력의 다양성 향상을 목표로 하는 교육 및 방법 개발을 최종 목표로 두고 있다.

특히 AI2ES는 세 가지 분야(Ⅰ~Ⅲ)를 중심으로 연구를 중점 수행하고 있다. AI2ES는 인공지능 및 환경과학 분야에서 가지고 있던 기존의 문제를 해결하기 위해 이 세 가지 중점 연구영역 통합을 위해 협업을 수행하고 있다.

2.2.1. 중점연구영역 Ⅰ 환경과학 분야의 신뢰할 수 있는 AI/ML 기초연구

- 환경과학 분야에서의 설명가능 인공지능 및 해석가능 기법 개발

- 환경과학 영역을 위한 물리기반 인공지능 기술 개발

- 견고한 인공지능 예측기술 개발

이 연구그룹은 신뢰할 수 있는 물리기반 인공지능 기술을 개발하는 데 중점을 두고 있다. 이 연구그룹은 크게 3가지의 상세 연구과제를 수행하고 있다. 첫째, 환경과학 분야 최종 사용자의 요구에 초점을 맞춘 새로운 설명가능하고 해석 가능한 인공지능 기술을 개발한다. 둘째, 물리법칙을 인공지능 방법에 통합하는 새로운 접근 방식 및 모델 불확실성을 정량화하고 전달하는 새로운 방법을 개발한다. 셋째, 강력한 인공지능 기술을 개발하여 적대적 자료(결측 혹은 의도적으로 누락된 자료)를 가지고 경험적이고 이론적인 방법으로 기술의 성능을 검증한다.

2.2.1.1. 세부연구분야 ① ES 분야에서의 설명가능 인공지능 기술 개발

AI2ES는 예보관, 비상상황 관리자, 교통전문가, 생태 및 수자원 관리자 등과 같은 다양한 분야 전문가를 위한 신뢰할 수 있는 인공지능 기술을 개발하고 있다. 인공지능 모델 예측 정보를 직접적으로 사용하는 전문가들은 위험요소를 평가하고 의사결정을 한다. 따라서 이들이 적절한 결정을 내리는데 도움을 주기 위해 설명가능 인공지능의 개발은 필수적이다. 또한 다양한 의사결정을 위한 인공지능 결과 해석 방안을 연구하는 것도 중요하다.

다수의 각 분야 최종 사용자들은 모델이 학습한 결과와 그것이 물리적으로 그럴듯한지 이해하고자 한다. 설명가능 인공지능은 기계학습 모델의 “블랙박스” 내부를 들여다보는 접근 방식을 제공한다. 그러나 타 분야에서의 설명가능 인공지능에 대한 접근 방식은 환경과학 분야에서 발생하는 자연현상을 다루는 데는 적절하지 않다. 따라서 AI2ES는 환경과학 분야를 위한 새로운 설명가능 인공지능 방법을 개발하고 있으며, 처음부터 인간이 이해할 수 있는 모델로 설계된 해석 가능한 인공지능 방법을 연구하는 것을 목표로 한다.

AI2ES의 설명가능 인공지능 기술 개발 분야의 세부 연구 목표는 다음과 같다.

- 환경분야 데이터를 활용한 설명가능 인공지능과 해석가능한 방법 개발

- 물리학을 설명에 통합하는 설명가능 인공지능과 해석가능한 방법 개발

- 인공지능 모델 실패를 설명하기 위한 설명가능 인공지능 방법 개발

- 지식과 가설발견을 촉진하는 설명가능 인공지능 방법 개발

- 효율적으로 의사소통하기 위한 접근방법인 설명가능 인공지능 방법 개발

- 최종사용자에게 추정된 불확실성을 효율적으로 전달하고, 최종사용자의 요구에 맞게 조정하기 위한 설명가능 인공지능 방법을 개발

<주요연구결과: CNN을 활용한 폭풍 및 우박 예측 >

NCAR의 기계학습 연구그룹에서는 CNN을 적용한 실시간 폭풍 형태 예측 모델을 개발하여 예보관들이 활용할 수 있도록 그 결과를 표출하는 시스템을 구축하였다(Fig. 2.2.2.(left)).

Gagne et al.(2019)는 심한 우박 발생 확률을 예측하는 딥러닝 모델을 개발하였다. 모델 성능에 가장 큰 영향을 미치는 변수가 무엇인지 파악하기 위해 변수 중요도를 평가하여 분석하였다. 또한 특성 해석 방법을 사용하여 어떤 폭풍 구조에서 심한 우박이 높은 확률로 발생하는지도 분석하였다.

Fig. 2.2.2. (left) Real-time storm morphology prediction with self-supervised Convolutional Neural Networks. (right) Convolutional Neural Network analysis of severe hail storms

2.2.1.2. 세부연구분야 ② 환경과학 분야에서의 물리기반 AI 기술 개발

AI2ES는 인공지능과 설명가능 인공지능 접근 방식이 물리 법칙을 따르도록 한다. 모델이 불가능한 시나리오를 예측할 수 없고 예측을 위한 비물리적 관계를 배울 수 없도록 함으로써 신뢰를 더욱 향상시키는 데 도움을 준다.

물리기반의 환경 현상의 개선된 인공지능 및 기계학습 예측 및 이해를 목표로 한 연구를 수행하여 이를 통해 다음과 같은 결과를 산출할 수 있다.

- 견고한 특징 생성 및 이에 대한 물리적, 의미적 및 중복 제약

- 물리학에 기반한 손실 함수

- 물리 모델과 인공지능 모델의 조건부 하이브리드

- XAI(Explainable AI)를 위한 새로운 아키텍처

이러한 목표를 달성하기 위해 다음과 같은 작업을 수행한다.

- 인공지능 기법이 항상 물리적으로 타당하고 일관된 해결책을 생성하도록 보장

- 자율적인 특징 발견을 위한 물리학 기반 접근 방법 개발

- 물리학 기반 인공지능을 통합한 하이브리드(인공지능+수치) 모델개발

- 다양한 시공간적 해상도 특성을 종합적으로 학습할 수 있는 인공지능 모델 개발

<주요연구결과: 딥러닝을 활용한 복사전달모델 에뮬레이트>

Lagerquist et al.(2021)는 단파 RRTM(Rapid Radiative Transfer Model)을 에뮬레이션하기 위해 U-net++를 적용한 AI 모델을 개발하였다. 짧은 계산 시간동안 RRTM을 정확하게 에뮬레이트하여 수치모델에 활용할 수 있는 최적의 모델을 만드는 것을 목적으로 하였다.

최적의 모델을 개발하기 위해 두 가지 실험을 수행했다. 첫 번째 실험에서는 열대지역이 아닌 지점에서 훈련한 후 열대지역에서 테스트하여 극단적인 공간 일반화를 평가하였다. 이 실험 결과는 열대지역에서 높은 성능을 나타내었지만, 몇 가지 단점이 발견되었다.

Fig. 2.2.3. Heating rate score by solar zenith angle at 10,000m ASL

두 번째는 모든 지역의 지점에서 훈련하고 모든 지역의 다른 지점에서 테스트하는 실험을 수행했다. U-net++ 모델을 다양한 구조로 설계하여 실험을 수행했다. 실험 2에서 선택된 모델은 위에서 제시한 대부분의 결함을 수정하였으며, 실험 1, 2를 통해 개발된 모델 모두 기존의 RRTM보다 약 104배 빠르게 실행되었다. 모델개발의 장점은 4가지로 둘 수 있다. 첫째, 격자자료로 학습하고 픽셀별 예측을 생성하기 위해 특별히 설계된 U-Net을 도입, 둘째, U-Net++ 아키텍처를 도입하여 다층 구름의 플럭스를 예측, 셋째, 바이어스 보정을 위해 회귀방식을 사용, 넷째, ML을 사용하여 물리 법칙을 U-Net++ 모델에 통합하고 물리적으로 일관적이고 뛰어난 예측결과를 보장하기 위한 사용자 정의 손실 함수를 개발한 것이다.

2.2.1.3. 세부연구분야 ③ 견고한 AI 기술 개발 및 적대적 자료로 성능 검증

몇몇의 환경과학 분야의 자료는 수집 문제와 극한기상 현상의 희소성으로 그 사용이 매우 제한적이다. AI2ES는 다음과 같은 접근방법을 가지고 사용에 제한적인 환경과학 분야의 자료 활용 방안을 다룬다.

- 구간 불균형: 중요한 검증지표를 충족하기 위해 필요한 이론적 샘플크기를 특성화함

- 전이학습: 일반적인 현상에 대해서 기계학습을 훈련하고 드문 현상에 전이학습 실시

- 자기감독학습: 신뢰할만한 레이블의 가격이 비싸거나 수가 적어서 이용가능하지 않을 때 예측에 가장 도움이 되는 프록시 자료에 대한 지도학습 작업 구별

- 적대적 데이터/분류 견고성: 적대적 데이터에 대한 환경과학분야 기계학습 모델의 견고성에 대한 이론적인 보증 제공

2.2.2. 중점연구영역 II 환경과학분야 기초연구

이 연구그룹은 ML 방법을 사용한 연구를 통해 신뢰할 수 있는 정보를 생산하여 다양한 사용자들에게 제공하는 것을 목표로 한다. 이를 위해 기본적인 환경과학 프로세스(기상이변, 해양 생태계 변화 등)에 대한 과학적, 물리적 이해를 향상시키는 신뢰할 수 있는 AI 기술을 개발하는 데 중점을 두고 있다. 이 연구그룹은 다음의 5가지 환경과학 분야에서 구체적인 사례를 선정하여 연구를 수행하고 있다.

- 대류성 기상 (Convective Weather)

- 겨울철 기상 (Winter Weather)

- 열대성 싸이클론 (Tropical Cyclone)

- 극한 기후의 계절 내(S2S) 예측

- 해안 해양학

Fig. 2.2.4. Use-case example in the area of focus area II

2.2.2.1. 사례 ① 대류성 기상(날씨)

토네이도, 우박과 같은 대류성 기상현상은 매년 수백 명의 사상자와 수십억 달러의 재산상의 피해를 유발한다. 미국 기상학계에서는 토네이도의 예측성능을 향상시키기 위해 수십 년 동안 다수의 연구개발이 수행되었다. 많은 노력에도 불구하고 토네이도 예측 기술은 이전에 비해 크게 향상되지 않았다.

이러한 한계를 극복하기 위해 위험기상 현상(토네이도, 우박 생성 등)의 이해를 위한 물리 기반의 AI 모델을 개발하는 것을 목표로 다수의 연구진이 다양한 연구를 수행하고 있다.

- 대류성 위험기상 예측을 위해 물리적 기반의 강력한 AI 기술 개발

- 대류성 위험기상의 과학적 이해를 증진시키기 위한 XAI 기술 개발 및 활용

- 예보관들에게 유용하고 신뢰할 수 있다고 할 수 있는 대류성 위험기상 예측을 위한 물리적 기반의 강력한 AI와 XAI 방법을 개발

<주요 연구결과- 토네이도 예측>

Lagerquist et al.(2020)은 CNN을 활용하여 토네이도 발생을 예측하는 연구를 수행했다. 스톰 중심의 레이더 영상(GridRad, MYRORSS)과 Rapid Refresh 모델에서 나온 근사 값을 사용하였다. 레이더 영상을 CNN을 활용하여 훈련시키고, 최적의 CNN 모형을 테스트 데이터에 대해 평가하였다. GridRad 모델과 MYRORSS 모델 모두 AUC이 0.9 이상으로 우수한 성능을 보였다. GridRad 모델과 MYRORSS 모델의 CSI는 각각 0.31, 0.17이었다. 두 모델의 성능 차이는 각각의 레이더 자료에서의 토네이도 발생 빈도에 따라 발생한다. 최고의 CNN 예측성능은 강하게 회전하는 토네이도 슈퍼셀과 강하지 않은 비토네이도 셀의 중규모 대류계 시스템에서 각각 확인할 수 있으며, 가장 낮은 예측성능은 강하게 회전하는 토네이도가 아닌  슈퍼셀과 준선형 대류계 시스템에서의 토네이도 셀에서 발생하였다. 이 연구에서의 CNN의 성능은 위험기상 예측을 위해 실제로 운영 중인 기계 학습 시스템과 비슷하다. 따라서 이 연구에서 생산된 예측결과는 토네이도 실시간 예보에 유용할 것으로 판단된다.

Fig. 2.2.5. Interpretation of convolutional neural networks for tornado prediction

2.2.2.2. 사례 ② 겨울철 기상

겨울철 기상현상은 미국에서 교통수단(자동차, 항공, 철도) 및 사회기반시설에 영향을 미치는 주요한 재해 중 하나이다. 기상자료와 인공지능을 활용한다면 겨울철 기상현상과 관련하여 발생한 피해를 방지함과 동시에 빠른 시간에 회복할 수 있다.

겨울철 기상 사례 연구팀에서는 활용도가 낮은 겨울철 기상자료(관측 및 모델자료)와 비기상자료(도로망 자료 등)를 활용하는 AI 기법을 개발하여 비상 상황 관리자 및 의사결정자에게 맞춤형 지침을 제공하는 것을 목표로 한다.

- 겨울철 기상현상에 적용 가능한 다학제적 연구방법과 XAI 기법을 연구자에게 훈련시킴

- 종관 규모부터 국지규모의 겨울철 기상현상의 발생 원인과 예측성의 이해와 지식을 향상

- 강수유형과 이동을 포함한 겨울철 강수 예측을 개선하기 위한 물리기반의 AI 기술 개발

- 겨울철 기상 예측을 위한 AI 예측의 불확실성을 정량화하고, 불확실성과 신뢰성 사이의 관계를 확인하여, 최종 사용자에게 불확실성 전달

- 영상 자료(MesoNet 등)를 활용하여 시정 추정을 위한 모형을 개발하고 다양한 종류의 영상자료에 적용할 수 있는 개별 모형 개발

<주요 연구결과-MesoNet 자료 활용 시정 및 강설량 예측 모형 개발>

Fig. 2.2.6. Result of winter weather case research

딥러닝을 이용한 뉴욕주 MesoNet 영상자료의 시정 추정 모형 개발
Mesonet 자동적설 관측으로부터 추정한 24시간 예상 강설량

2.2.2.3. 사례 ③ 열대 싸이클론

열대 싸이클론은 홍수 발생과 피해 유발 측면에서 심각한 사회적 영향을 미친다. 이 연구팀에서는 열대 싸이클론의 발생원인을 이해하고 예측성능을 개선하기 위해 열대 싸이클론의 시간적 진화와 빠른 강화에 대한 이해를 향상시키는 것을 최종 목표로 연구를 진행한다.

- 위성자료로부터 합성 마이크로파 영상을 생성하는 물리기반 AI 알고리즘 개발

- 강수, 바람장 추정, 강도 변화를 포함한 열대 사이클론 예측을 개선하기 위한 물리기반 AI 알고리즘 개발

- 열대 사이클론 구조의 발달과 빠른 속도로 강도가 강화되는 시점 사이의 관계를 XAI를 사용하여 파악

<주요 연구결과-열대 사이클론 예측 연구>

마이크로파 영상은 적외 및 가시파장을 통해 대류 및 수상체를 탐지한다. 마이크로파 영상은 허리케인 구조를 감시하는데 활용되어 열대 사이클론에 대한 중요한 정보를 제공한다. 하지만 극궤도 위성의 각 영상은 서로 다른 스캔패턴과 해상도를 가지기 때문에 정보는 제한적이다. 따라서 예보관과 수치모델에 유용한 정보를 제공하기에 부족하기 때문에 극궤도 위성 자료는 열대성 사이클론 감시에 제한적이다. 마이크로파 이미저가 없는 정지 궤도 위성의 경우, 차세대 정지 궤도 위성(예: GOES-16/17, Himawari-8, GEO-KOMPSAT-2A)의 적외선 이미저의 고품질 데이터의 정보를 기계학습을 위한 자료로 활용가능하다.

이 연구팀에서는 랜덤포레스트 알고리즘과 다양한 학습방법을 활용하여 L1B, L2 자료로 열대 사이클론 중심의 마이크로파 이미지를 만드는 기술을 개발하였다. 생산된 합성 마이크로파 데이터는 예보관을 위한 추가 예보 생산 활용 자료로 사용될 수 있다.

Fig. 2.2.7. Using Geostationary Imagery to Peer through the Clouds Revealing Hurricane Structure

2.2.2.4. 사례 ④ 위험기상의 계절 내 예측

이 연구팀에서는 2주에서 2개월 앞선 시기의 위험 기상현상을 예측하는 것을 목표로 다음과 같은 세부 연구주제로 연구를 수행한다.

- S2S 규모에서 위험기상의 예측 성능을 개선하기 위해 물리기반 AI 알고리즘 개발

- S2S 시간 규모에서 예측 가능성과 물리 메커니즘의 원리를 밝히기 위해 XAI와 해석 가능한 방법을 사용하고 개발

- S2S 시간 규모에서 실제 세계의 S2S 예측을 더 정확하게 만들기 위해 관측값을 이용하여 역학 모델 시뮬레이션을 강화하기 위해 XAI 방법을 사용하고 개발

<주요 연구결과>

지구 시스템에서의 영상은 물리학 기반 과정의 결과물로, 영상 내의 정보는 지리적 위치에 의해 좌우된다. 따라서, 지구 시스템에서 어떠한 특성의 위치는 딥러닝에 중요한 정보로 사용된다. 예를 들어, 일기도에 저기압 시스템의 존재는 강수대 파악에 필수적이지만 정확한 강수위치를 파악하기에는 충분하지 않다. 마찬가지로, 강한 엘니뇨의 존재 파악을 위해서는 단순히 따뜻한 해수면 온도가 아닌, 열대 적도 동태평양의 따뜻한 해수면 온도를 필요로 한다.

Barnes et al.(2022)는 Madden-Julian 진동과 관련된 열대 대류 활동의 상태를 식별하기 위해 100년 이상 기간 동안 축척된 대기 재분석 자료에 프로토타입 네트워크(ProtoNet)를 적용하였다. 그 결과 Madden-Julian 진동에 대한 네트워크 정확도가 크게 향상되었음을 확인했다.

FIg. 2.2.8. MJO prediction results using ProtoNet

2.2.2.5. 사례 ⑤ 해안 해양학

해안에서 발생하는 다양한 자연 현상은 인류에게 꾸준히 영향을 미친다. 해안 현상의 예측성 개선을 통해 생명과 재산을 보호할 수 있다. 본 연구팀에서는 해양 소용돌이 발산, 유해 미생물 발생, 복합 홍수의 정확한 예측을 제공하기 위해 물리기반 AI 방법론을 개발하는 것을 목적으로 한다.

- 특정 사용 사례와 AI를 지원할 멕시코만과 미국 동해에 대한 공유된 다변량 고해상도 자료 구축

- 서로 다른 공간 해상도를 수용하면서 대기-해양-육지 상호작용의 시공간 특성을 허용하는 공동 심층학습 플랫폼 설계

- 이해관계자와 함께 AI 예측을 구현, 학습, 검증

- 아래와 같은 현상의 이해와 예측 성능을 개선하기 위해 물리기반 AI 방법 개발

: 바다거북이의 저온기절, 해무의 지속시간과 강도, 해안 홍수, 폭풍내습과 강수로부터 유발되는 복합홍수, 멕시코만의 Loop Current Eddy 유해 조류 발생의 시기, 경향, 위치 파악

<주요 연구결과>

바다거북이는 급격하게 냉각된 바닷물에 노출되어 갑자기 기절하는 건강 문제가 발생한다. 일반적으로 수온이 10℃ 이하로 떨어지는 늦가을에 발생한다. 바다거북은 짧은 추위에서 빨리 회복할 수 있지만 며칠 동안 낮은 수온에 노출되면 생명이 위협받을 수 있다. 따라서 바다거북이가 주로 서식하는 바닷가의 수온 예측모형을 개발함으로써 바다거북이의 cold-stunning 피해를 방지하기 위한 경보시스템을 구축했다.

Loop Current Eddy는 걸프만 지역에서 주요 해류인 Loop Current에서 분리된 독립적인 해류이다. 루프 해류는 시계 방향 순환을 닫아 Loop Current Eddy라고 불리는 커다란 반저기압성 따뜻한 코어 소용돌이를 생성하고 걸프만 내부에서 서쪽으로 이동한다. 갑자

Fig. 2.2.9. (left) Estimated green turtle abundance over time, compared with water temperature (right)

기 생성되는 Loop Current Eddy로 인해 북부 걸프 해역에 존재하는 4,000개 이상의 석유 및 가스 굴착 장치가 피해를 입을 수 있다. 따라서 걸프만 지역을 포함한 북서대서양 연안 지역의 예측시스템(Coupled Northwest Atlantic Prediction System, CNAPS)을 개발하여 이 지역에서 갑자기 발생할 수 있는 Loop Current Eddy에 대한 정보를 미리 제공하여 피해를 예방하는데 도움을 주고 있다.

2.2.3. 중점연구영역 III. 환경과학 위험에 대한 인공지능 위험 커뮤니케이션의 기초연구

이 연구영역은 세 가지의 목표를 가지고 연구를 수행한다. 첫째, 투명성, 설명, 재현성 및 불확실성 표현이 사용자 그룹을 위한 환경 과학분야의 인공지능에 대한 신뢰에 어떻게 영향을 미치는지에 대한 이해를 증진하는 것을 목표로 한다. 둘째, 인공지능 신뢰도에 대한 태도와 인식이 환경 과학에서의 위험 인식과 인공지능 사용에 어떻게 영향을 미치는지 추정하기 위한 모델을 개발하는 것을 목표로 한다. 셋째, 신뢰할 수 있는 인공지능 접근법과 콘텐츠의 개발 및 사용자 그룹에 대한 인공지능 기반 정보의 제공 방법을 개발한다.

* 중점연구영역 III에 소속된 연구팀은 중점연구영역 II 소속 연구팀과 협업하여 인공지능 모델에 대한 사용자의 인식, 신뢰, 활용성 등을 조사하고 정량화함

- 신뢰할 수 있는 인공지능 인터뷰 및 프로토콜 개발

- 환경 과학을 위한 인공지능/기계학습에 대한 신뢰, 만족도, 이해도 및 의존도를 측정하기 위한 지표 개발

Fig. 2.2.10. Interdisciplinary Risk Communication Research Methods Proposed by AI2ES

- 기존의 이론적 프레임워크를 개선하고 전문가들이 신뢰할 수 있는 인공지능/기계학습 정보를 평가하고 사용하는 데 사용하는 새로운 이론적 프레임워크 개발

- 환경 과학을 위한 기존 및 신규 개발된 설명가능 인공지능 및 해석 가능한 인공지능접근법 및 인공지능/기계학습 상호작용의 영향을 모델링하고 테스트하여, 이러한 요소들이 인공지능/기계학습에 대한 신뢰 및 사용에 미치는 영향 조사

- 새로운 설명가능 인공지능 접근법 및 혁신적인 인공지능/기계학습 상호작용이 환경 과학을 위한 인공지능/기계학습에 대한 신뢰 및 사용에 미치는 영향 예측

- 사용자의 실제 의사결정 환경에서 인공지능/기계학습 환경 과학 정보를 개발하고 평가하기 위한 연구 방법론 개발

- 다양한 환경 과학 영역의 의사결정자들에 의해 유용하게 사용되는 신뢰할 수 있는 인공지능/기계학습 정보 개발

2.2.4. 중점연구영역 IV. 인력개발 및 참여 확대

AI2ES의 리더십그룹은 AI 및 ES 인력의 다양성을 개선하기 위해 다수의 회의를 통해 해결방법을 찾고 있다. K-12부터 커뮤니티 칼리지까지 소외 계층의 참여 확대, 인력 개발 및 봉사 활동 계획 등을 수립하였다. AI2ES는 참여 확대와 인력 개발을 위한 세 가지 중요한 목표를 세웠다. 모든 학생들이 인공지능, 환경과학, 환경과학을 위한 인공지능에 대해 더 많이 배울 수 있는 기회를 늘리는 것을 목표로 한다.

커뮤니티 칼리지 수준의 환경과학을 위한 AI 커리큘럼 구현 및 평가를 통해 환경과학 인력을 위한 다양한 AI 구축 및 HSI/MSI에서의 파일럿 테스트 수행하고 있다.

HSI: Hispanic Serving Institutions, MSI: Minority Serving Institutions

첫 번째 목표는 Del Mar College (DMC)에서  Texas A&M

Fig. 2.2.11. AI2ES Community College Operating AI Curriculum and Program

University-Corpus Christi (TAMUCC)과 공동 개발 중인 새로운 Community College 대상 인공지능 프로그램의 설계 및 구현에 중점을 두고 있다. 이는 다양한 분야의 전문가들이 자신의 기술을 더 강화시킬 수 있도록 하고, 고등학생들이 관련 분야로 취업할 수 있는 다중 입학 프로그램으로 설계되었다.  해당 모델은 2년제 커뮤니티 칼리지의 첨단기술교육(ATE) 프로그램과의 협업을 통해 미 전역으로 보급될 예정이다. AI2ES는 채용, 고용, 지원, 공개 행사 및 다양한 커뮤니케이션을 통해 다양한 방식으로 확산시킬 예정이다. AI2ES는 다양한 구성원을 팀에 채용시킬 목표를 가지고 있다. 이를 위해 소외된 분야의 구성원을 위한 STEM 및 인공지능 분야로의 진입을 유도하는 채용을 계획하고 있다.

2.3. 연구 활동

AI2ES는 연구 그룹이외에도 중점적으로 수행하고 있는 연구주제를 위한 워킹그룹을 운영하고 있다. 워킹그룹은 2.2에서 언급된 각 연구그룹이 서로 협업을 통해 효율적인 연구결과를 도출하기 위해 구성되었다. AI2ES는 센터 설립 후 6개의 워킹그룹을 운영하였다. 이 중 2개의 그룹은 활동 종료, 4개의 그룹은 지속적으로 운영되고 있다. 이 외에도 필요성이 요구되는 연구분야의 경우 워킹그룹 수준의 활동을 진행하고 있으며, 차후 워킹그룹 수준으로 발전시켜 연구진행을 도모하고 있다.

2.3.1. AI-ES-RC working group

리스크 커뮤니케이션(Risk Communication, RC) 연구팀은 다양한 AI 및 ES팀과의 협업을 위하여 워킹그룹을 주도적으로 운영하고 있다. 이 워킹그룹에서는 해안, 해양, 겨울철 날씨 및 열대 싸이클론 사례 연구팀이 개발한 AI 및 XAI 기법을 통합하고 리스크 커뮤니케이션 설계를 위해 공동작업을 수행한다.

워킹그룹은 정기적인 회의를 통해 예보관과의 인터뷰 프로토콜, 면담자 샘플링 방법 등에 대해 구체적인 논의를 수행하였다. 리스크 커뮤니케이션 연구팀은 회의 결과 도출된 내용을 활용하여 예보관과의 인터뷰를 수행하였다. 인터뷰를 통해 위험기상에 대한 AI/ML 예측에 대해 분석하였으며, 이를 통해 예보관들의 (a) 가이던스 사용 결정, (b) AI/ML로 도출된 예보 가이던스, 가이던스의 신뢰도에 대한 인식 및 태도, 예보를 위한 의사 결정에 이러한 가이던스를 사용할지 여부 등에 대해 종합적으로 정리했다.

2.3.2. 코딩실습 워킹그룹(coding practice working group)

코딩 실습 워킹 그룹(Coding Practice Working Group)은 센터에서 수행 중인 다양한 프로젝트를 통해 개발된 AI 모델의 배포를 위해 표준 코딩 방법을 설계하였다. 이를 깃헙 템플릿(github template)을 통해 제시하였으며, 이를 활용한 기계학습 워크플로우를 설정하는 데 도움을 주었다.

이 워킹그룹의 활동은 센터 설립 후 본격적으로 AI 프로젝트에 착수하기 전에 가장 활발하게 진행되었다. 이 워킹그룹에서는 세미나를 통해 수행 프로젝트에서 표준 코딩방법 중 일부를 구현한 방법 등 활용사례에 대해 공유함으로써 표준 코딩 방법 배포 및 확산을 위해 활동했다.

2.3.3. 데이터 조정 워킹그룹(Data Coordination working group)

데이터 조정 워킹 그룹은 AI2ES와 관련된 기관 및 그룹 간 데이터의 접근성과 공유를 향상시키는 절차와 활용방법을 개발하기 위해 구성되었다. 이 그룹은 연구원이 데이터셋을 사용하기 전에 필요한 메타데이터 속성뿐만 아니라 구성원이 사용하는 데이터셋의 유형을 이해하기 위해 초기 조사를 실시했다. 다양한 메타데이터 구성 요소를 가진 내부 데이터 인벤토리 웹사이트를 개발하였다. 뿐만 아니라 센터 전체의 내부 데이터 공유를 위해 별도의 웹사이트를 개발하였다.

이 워킹그룹도 센터 설립 초기에 활발하게 운영되었다. 연구 개발이 본격적으로 진행되면서 데이터 공유 및 활용이 점차 익숙해지면서 워킹 그룹의 활동이 잠정 중단되었다.

2.3.4. R2O working group

R2O 워킹 그룹은 AI2ES 프로젝트의 R2O를 활성화하는 방법을 논의하기 위해 구성되었다. R2O 워킹그룹은 개발된 원형모델을 실시간으로 운영하고, 산업계, 연구소 또는 학계로 모델을 이전하기 위한 방안을 논의하였다. 이를 위해 매월 개최하던 회의 빈도를 격주로 조정하여 진행하였다.

R2O 워킹그룹이 운영 중이거나 개발 중인 모델은 다음과 같다.

- 운영: cold-stunning 예측 모델 (Texas A&M), 전선 구분 자동화 모델(OU, IBM)

- 개발: 강수유형(precipitation type) 연구(NCAR), 급속 강화 모델(CIRA/CSU)

이 워킹그룹은 R2O 프로세스, AI 분야에서의 R2O의 특성에 대해 지속적으로 논의하였다. 또한 Google RadLab 및 Google Earth 도구의 사용, 다양한 플랫폼(AWS 또는 Azure)과의 협력 방안 등을 평가하였다. 효율적인 R2O를 위해서 구글과 협력회의를 진행하고 있다. 구글은 실시간 수치 기상 예측에 대한 접근성, 능력, 비용 및 지원을 포함하여 AI2ES 테스트베드를 지원하기 위한 클라우드 솔루션을 계속 비교하고 있다.

R2O 프로세스를 진행하는데에는 다양한 장애물이 존재한다. 조직 및 사용자에 따른 변화를 포함하여 "운영"이 무엇이고 무엇을 의미하는지에 대한 다양한 사고 방식으로 인해 최종 목적에 도출하는데 어려움이 존재한다. 또한 인공지능 연구 프로젝트의 R2O 프로세스를 경험한 연구자를 포함한 R2O를 위한 공통 인공지능 도구 및 리소스 부재가 R2O 진행에 장애물로 작용하기도 한다. 이를 극복하기 위한 방안은 다음과 같다. R2O에 대한 다양한 정의와 경험을 구체화하여 이를 활용하기 위한 정기적인 팀 토론을 통해 해결점을 도출하고자 노력하고 있다. AIR2O 테스트베드 개발 작업을 통해 다양한 작업을 훨씬 더 수월하게 진행할 수 있다.

2.3.5. Sharpness working group

Sharpness 워킹그룹에는 산업계(NVIDIA, Google, IBM), 학계(OU, CSU), 연구기관(NCAR, ECMWF)의 연구원이 참여하고 있다. 이 워킹그룹은 격주로 회의를 개최하여 AI 예측의 선명도 향상을 위한 기술 개발에 대해 논의하고 있다. 이 워킹그룹은 2022년 봄에 구성되어 공동 연구를 시작했다. AI 예측결과의 선명도를 측정하기 위한 명확한 기준이 존재하지 않으며, 단순히 선명도를 높여 이미지가 더 설득력 있게 보이도록 만드는 것이 실제로는 좋지 않을 수 있다. 따라서 이 워킹그룹에서는 AI 예측결과 선명도 향상을 위한 다양한 방법을 제시하고, 선명도를 정의하는 하는 논문을 작성하였다.

영상의 선명도를 측정하기 위해 평균 기울기부터 인식 기반 항목 등 잠재적 측정 항목을 구성했다. 이러한 측정 항목을 테스트하기 위한 벤치마크를 개발하였고 이 벤치마크에는 위성 및 레이더 합성 이미지, 그리고 흐림 연산이 포함되어있다. 영상에 대해 각 측정 항목을 테스트하여 어떤 항목이 가장 우수한지를 평가하였다. 이와 같은 측정 항목을 사용하여 다양한 신경망 구조가 선명도를 향상시키는 데 얼마나 잘 작동하는지를 평가하였다.

3. AI 기반 위험기상 예측 모델 개발

3.1. 서론

최근 기후변화로 인한 위험기상의 빈도가 증가하고 강도가 심해지는 경향이 있다. 이로 인해 막대한 인명·재산상의 피해를 초래할 수 있다. 기후변화로 인한 전 지구적 위험기상과 재해 발발은 장기적으로 삶의 패턴에 영향을 미친다. 위험기상의 빈도와 강도가 지속적으로 증가함에 따라, 재산·인명 상의 피해를 초래할 수 있다. 이와 같은 기상재해로 인한 피해를 최소화하기 위해서는 신속·정확한 예보생산이 필요하다. 그러나 수치모델의 한계, 한반도의 복잡한 지형 특성 등으로 신속하고 정확한 일기 예측에 어려움이 존재한다.

기존에 개발·운영되고 있는 강수 예측 모델의 경우, 정확도 향상을 위해 운동벡터 혹은 광학흐름 기반의 외삽법을 활용한다. 이 기법은 급격하게 발달하는 호우 시스템의 예측을 보장할 수 없으며, 특히 예측시간이 길어질수록 그 성능은 기하급수적으로 저하된다. 이를 보완하기 위해 다양한 방법이 제안되어 사용되기도 한다.

다양한 인공지능 기법을 활용한 강수 예측 모형을 개발하는 연구가 학계, 산업계, 정부기관 등에서 이루어지고 있다(Agwaral et al., 2019; Chen and Wang, 2022; Sønderby et al., 2020; Espeholt et al., 2022; Yadav and Ganguly, 2021). 이 연구들에는 각각의 한계가 있지만, 기존의 연구에 비해 성능이 향상된 결과를 보여주었다. 인공지능 기법을 활용하면 빠른 시간 내에 정확도 높은 예측결과를 확보할 수 있을 것이라는 기대를 가지고 있다.

인공지능은 불확실한 문제를 분석, 연관, 기억, 학습 및 추론하는 것으로 다양한 분야에서 활용되고 있다. 기상예측, 영상인식, 질병판별, 환경 변화 및 기타 분야에서 발전을 이루었다. 딥러닝 기술은 고급 비선형 수학 모델로 여러 층의 뉴런을 포함하고 특징에 대한 학습 능력이 뛰어나다. 따라서, 대용량 데이터를 자동으로 학습하여 데이터 고유의 특성과 물리법칙을 추론할 수 있어 복잡한 비선형 모델을 구축하는데 널리 사용된다.

일반적으로 기상예측은 시간과 공간을 기반으로 한 문제이다. 따라서 딥러닝에 기반한 시공간 예측은 공간 상관성과 시간 역학이라는 두 가지 필수 측면을 포함한다. 따라서 기상 예측 시스템의 성능은 관련 구조 정보를 기억하는 성능에 달려있다. 현재 널리 사용되는 시공간 시퀀스 예측을 위한 신경망 모델은 CNN과 RNN 기반의 이미지 시퀀스 예측방법의 두 가지 주요 유형이 있다. 기존의 딥러닝 방법의 결과가 보유한 문제점은 흐려짐(Blur), 즉 선행 예측시간이 증가함에 따라 예측 값의 흐려짐이 점점 더 심해진다는 것이다. 따라서 예측 정확도를 향상시킴과 동시에 예측 결과의 흐릿함을 줄이는 것이 예측모델에서 해결해야 하는 시급한 문제이다. 이 문제를 해결하기 위해 연구자들은 손실함수 수정, 생성적 적대 신경망(Generative Adversarial Network; GAN), 트랜스포머(Transformer), 디퓨전(Diffusion) 등의 다양한 방법을 적용하고 있다.

Duncan et al.(2022)은 고해상도 전구 강수예측을 위해 기존의 FourCastNet에 cGAN(conditional GAN)을 적용하였다. ECMWF 전구 재분석자료인 ERA5자료를 사용하여 전구 강수를 예측하였으며, 이 연구에서 개발한 모델의 성능을 파악하기 위해 세 가지 종류의 실험을 수행하였다. (i) FourCastNet: 기준모델, (ii) L1-only: (비적대적) L1 손실함수를 가진 있는 TSIT 모델, 그리고 (iii) 적대적+L1: 적대적 훈련을 하는 TSIT 모델이다. 그 결과 Duncan et al.(2022)에서 개발한 (iii) 모델의 성능이 가장 높았으며 ground truth 와 강수 강도 및 구조에서 가장 유사한 모습을 보였다.

Xu et al. (2022)는 기존 연구 방법의 단점인 예측결과가 blur되는 것을 보완하여 상세한 예측 결과를 생산하기 위해 2단계 모델(2-stage UA-GAN)을 제안하였다. 첫 번째 단계에서는 Trajectory Gate Recurrent Unit (TrajGRU) 모델을 사용하여 사전 예측을 수행했고, 이 단계에서 강수의 시공간 운동을 잘 포착하는 것을 확인했다. 두 번째 단계에서는 1단계 예측결과를  개선하기 위해 U-Net 구조와 새로운 deep flow attention module을 갖춘 temporal-spatial attention enhanced GAN 모델을 제안했다. 각 모델의 예측성능을 비교한 결과 이 연구에서 개발된 2단계 모델이 더 작은 규모의 상세한 부분까지 정확하게 예측하였으며, generator에서 제안된 attention 메커니즘은 예측정확도를 더 향상시켰다(sharpness를 향상시킴).

Asperti et al.(2023)은 확산모델을 이용하여 중부 유럽 지역의 강수예측 모형을 개발하였으며, 그 성능은 U-Net 모델과 비교하여 분석하였다. Generative Ensemble Diffusion(GED) 방식을 이 연구에서 활용하였는데, 이는 확산 모델을 사용하여 가능한 여러 기상 시나리오를 생성하고, 사후 처리 네트워크를 사용하여 확률적 예측으로 통합하는 방식이다. 이와 같은 방식은 최근 딥러닝 모델과 비교하여 전반적인 성능 면에서 큰 우위를 보였다고 하였다.

Civitarese et al.(2021)은 시간융합 트랜스포머(Temporal Fusion Transformer, TFT)를 사용하여 6개월 리드타임에서의 강수량을 예측하는 모델을 개발하였다. 두 지역에서의 실험을 통해 TFT 예측을 ECMWF SEAS5 앙상블 예측(S5)과 비교하였다. 그 결과 6개월 리드 타임에서 TFT 예측이 S5보다 현저하게 우수하고, 전반적으로 약간의 개선이 있음을 분석하였다.

정확도 높은 강수예측을 위해 GAN, Difussion, Transformer 등 다양한 기법을 적용한 모델 개발이 진행되었다. 위의 기법은 강수예측 향상에 긍정적인 효과를 보인 것이 확인되었다. 그러나 이를 적용하는 것은 모델 구조가 바뀌는 작업으로 새로운 모델 개발을 하는 것과 같다. 따라서 본 연구에서는 기존의 모델 구조는 유지하되 그 내부에 조절 가능한 요소를 수정하는 실험을 통해 예측성 향상을 도모하고자 한다.

3.2. 연구 자료 및 방법

3.2.1. 연구 자료

본 연구에서는 AI 기반 위험기상 예측 정확도 향상을 위한 모델을 개발하고자 하였다. 이를 위해 기상청에서 생산하는 HSR 레이더 반사도 자료와 지상 관측 자료를 사용하였다.

기상현상을 관측하고 예측하기 위해 공간 및 시간 해상도가 높은 기상 레이더의 역할이 중요해지고 있다. 산지가 많은 한반도에서는 직진하는 레이더 빔이 지형의 영향으로 빔 차폐 영역을 발생시킨다. 따라서 관측 데이터가 부족한 빔 차폐 영역에서는 레이더 에코가 실제 강수량보다 약하다는 단점이 있다. 이를 개선하기 위해 기상청은 여러 각도를 기반으로 하는 선택적 합성 기술인 HSR(Hybrid Scan Rainfall) 기술을 현업에 사용한다. 이는 한반도의 지형적 특성을 고려하여 지형의 영향을 받지 않고 지면에 가장 가까운 고도각으로 관측 데이터를 표시하는 방식이다. 따라서 HSR 기술은 레이더 빔 차폐로 인한 강우 추정의 편향을 개선할 수 있어서 빔 차폐 영역에서 정량적 강우 추정의 정확도를 향상시킬 수 있다.

모델 훈련을 위해 사용한 레이더 자료는 2018-2022년의 기간 동안 5분 간격으로 관측된 것이다. 계산자원을 고려한 모델 개발을 위해서 10분 간격의 레이더 자료를 사용하였다. 개발된 모델의 검증을 위해 714개의 자동 기상 관측소 (Automatic Weather System; AWS)에서 관측된 강수량 자료를 사용하였다. 강수량은 매분 관측되지만 본 연구에서는 10분 누적 강수량으로 계산하여 활용하였다. 모델 훈련을 위해 2018-2020년까지의 기간의 레이더 자료를 사용하였으며, 2021년은 모델 검증, 2022년은 모델 평가에 사용하였다.

3.2.2. 연구방법

3.2.2.1. 모델 구조

전통적인 신경망 혹은 Fully Connected Neural Network (FCNN)에는 여러 층의 뉴런이 포함되어 있다. 각 뉴런은 훈련 중에 학습된 가중치를 사용하여 고유한 선형회귀를 수행하고 각 뉴런 층 뒤에는 다양한 비선형 활성화함수가 이어진다. FCNN은 모든 예측 변수를 독립적인 스칼라로 취급하여 공간 및 시간 구조를 활용할 수 없다는 단점이 있다. 합성곱신경망(Convolutional Neural Network, CNN)은 격자자료에서 공간 및 시간적 특징을 감지하기 위해 convolution filter를 사용하여 FCNN의 단점을 보완할 수 있다.

U-Net은 인코더-디코더 구조를 갖춘 심층학습 네트워크 중 하나로 의료 영상 분할에 널리 사용되었다. 원래 이미지 분할 작업을 위해 고안된 CNN으로 이미지의 각 픽셀을 해당 클래스로 연결하는 것이 목표이다. U-Net은 CNN의 장점을 유지하고 skip connection을 사용하기 때문에 격자별 예측에서도 성능이 탁월하다는 장점이 있다. 이러한 U-Net은 다양한 문제에 적용되었으며, 특히 강수량 예측 문제에서도 예측성능 향상을 입증하였다(Agwaral et al., 2019; Ayzel et al., 2020; Trebling et al., 2020).

기존의 U-Net 구조의 모델 예측성능 대비 개선된 결과를 확보하고자 본 연구에서는 U-Net3+를 사용하고자 한다. U-Net3+는 이미지 분할을 위해 Huang et al. (2020)에 의해 설계된 CNN 구조이다. U-Net3+ 는 U-Net (Ronneberger et al., 2015)과 U-Net++ (Zhou et al., 2018)를 기반으로 하여 모델의 파라미터 수를 줄이면서 더 많은 연결을 추가하는 방식이다. Fig. 3.2.1은 U-Net3+ 모델의 구조를 나타낸다. U-Net3+ 구조는 full-scale skip connection과 full-scale deep supervision을 활용하였다. full-scale skip connection은 인코더와 디코더의 상호연결 뿐 아니라 그 둘 사이의 내부 연결을 변환한다. U-Net과 U-Net++(U-Net 이후 버전)은 전체 규모에서 충분한 정보를 탐색하기 어려우며 이는 예측결과의 위치와 경계를 명시적으로 학습하지 못한다. U-Net 및 U-Net++의 단점을 해결하기 위해서 U-Net3+의 각 디코더 레이어는 인코더의 더 작고 동일한 크기의 피쳐맵과 디코더의 더 큰 크기의 피쳐맵을 통합한다.

Fig. 3.2.1. U-Net 3+ architecture for model

각 인코더 노드에서 이미지는 5개의 모듈을 통과한다. 여기서 모듈은 합성곱 레이어 뒤에 배치 정규화 레이어와 ReLU 활성화 함수 레이어가 이어진다. 합성곱은 입력 이미지의 차원을 줄인다. 이미지 구성을 모델 전체에 걸쳐 보존하기 위해 합성곱 레이어에 제로 패딩을 적용했다. 제로 패딩은 합성곱 레이어의 출력이 입력과 동일한 차원을 가지도록 영상의 가장자리에 패딩하는 것을 포함한다 (O’Shea and Nash, 2015).

Full-scale deep supervision은 전체 규모의 피쳐맵에서 계층적 표현을 학습한다. 영상에서 과도한 세분화를 줄이기 위해 분류 안내 모듈을 고안하여 보다 정확한 세분화 결과를 산출할 수 있다. U-Net3+는 계산 효율성을 향상시키기 위해 네트워크 매개변수를 줄일 수 있다.

3.2.2.2. 손실함수

대기 과학 분야에서 개발된 예측모델의 문제는 공간격자에 대한 예측과 관련이 있다. 일반적으로 격자 예측은 특정 격자(x)에서의 예측이 그 격자(x)에서의 관측 값과 비교되고 그 이외의 경우에서도 마찬가지로 격자 단위로 예측결과를 검증한다.

모델 예측 값이 특정 지역에 대한 강수량을 추정하는 영상(y_pred)이고 실제 관측된 강수량(y_true) 지도가 있다. 두 영상을 비교하여 이미지의 유사성을 정확하게 측정하기 위해서는 각 픽셀에 대해 두 영상을 각각 비교하는 방법이 간단하기 때문에 자주 활용된다. 모든 픽셀을 대상으로 MSE 또는 RMSE를 계산하는 방법이 그 예이다. 이러한 방법을 적용했을 때 문제가 발생할 수 있다. 한 지점(픽셀)에서는 강한 강수량이 예측되지만 정확한 결과는 인접한 지점(픽셀)에서 강한 강수량이 관측된 경우, 두 배의 오차를 얻게 된다.

격자 기반 검증에 존재하는 문제점은 다음과 같다. 첫 번째는 이중 패널티 문제이다(Gilleland et al., 2009). 공간적으로 드문 사건, 예를 들어 호우와 같이 적은 픽셀 혹은 공간의 일부분에서만 발생하는 사건을 예측할 때 가장 많이 발생하는 문제이다. 예측결과에 작은 오차가 발생하는 있는 경우(예측과 관측 영역이 약간 불일치하는 경우) 예측이 완벽하더라도 검증 점수는 매우 낮게 나타난다. 호우로 예측된 격자는 false positive로 계산되고 실제 호우가 관측된 격자는 false negative로 인식되기 때문이다. false positive와 false negative의 조합은 "이중 패널티"이며, 이는 모델이 공간적으로 드문 이벤트를 전혀 예측하지 못하도록 한다.

두 번째 문제점은 격자별 검증 점수가 주관적인 예측 성능과 큰 관련이 없다는 것이다. 예를 들어, Wang and Bovik(2009)는 주관적으로 훨씬 더 나은 예측결과를 보이는 이미지에서 격자별 평균 제곱 오차(Mean Squared Error, MSE)가 더 나쁜 결과를 나타내기도 한다고 하였다.

세 번째 문제점은 격자별 검증은 모델이 선명도(sharpness)를 예측하는데 방해할 수도 있다. 선명도가 정확한 격자위치에 있지 않아서 오차를 높일 수 있는 가능성이 높기 때문이다. 따라서 모델은 정확도가 떨어지는 "흐릿한(Blurry)" 예측 결과를 생성할 수 있다(Stengel et al., 2020).

이와 같은 다양한 문제점을 해결하기 위해 Ebert-Uphoff et al. (2021)는 Fraction Skill Score (FSS)에 기반을 둔 손실 함수를 제시하였다. FSS는 대기과학 분야에서 강수 예측성능을 평가하기 위해 사용되는 공간 검증 지수이다. 일반적으로 지점 기반 손실함수로 훈련한 모델의 사후평가에 널리 사용된 지수이다.

Fig. 3.2.2.는 관측(y_true)과 예보(y_pred)를 픽셀 단위로 비교하는 예와 주변 픽셀 단위로 비교하는 예를 나타낸다. 여기서 짙은 회색 사각형은 강우가 있는 지점을 나타내며 값이 1로 표시되고, 밝은 회색 사각형은 강우가 없는 지점을 나타내며 값이 0으로 표시된다. 전반적인 예측 결과는 그럴 듯 해보이지만, 왼쪽으로 한 지점 이동되어 있는 것을 확인할 수 있다. 따라서 예시에서 y_true와 y_pred를 픽셀 단위로 비교하면 이중 계산 오류가 발생한다. 예를 들어, 지점 P에서 예보는 비가 오지 않음을 나타내지 않아서 예측 실패이며, 지점 P의 한 픽셀 왼쪽에서는 비가 오는 것으로 나타내어 예측 실패이다. 그러나 지점 P를 중심으로 5×5 격자의 평균을 계산한 값을 확률 값으로 한다면 모두 3/25이다. 따라서 5×5 평균을 고려하면 P에서 예측결과는 완벽하다고 할 수 있다.

Fig. 3.2.2. Example of comparing a spatial observation (y_true) and spatial forecast (y_pred) pixel by pixel versus
by neighborhood

FSS 손실함수를 적용한다면 모든 경우에서 식 (1)을 적용한 평균값으로 정의할 수 있다. 4개의 격자점의 이웃에 해당하는 9×9 격자점의 윈도우의 평균으로 필터링을 계산할 수 있다(Fig. 3.2.2.). 따라서 U-Net은 실제 값과 예측 값 사이에 격자크기 만큼의 불일치가 있는 경우에만 적용된다. 필터링은 FSS가 공간 인식을 가능하게 하고, 관측 값과 예측 값 사이의 작은 공간 오차에 대해 모델이 과도하게 예측하는 이중 패널티 문제를 방지할 수 있다. FSS 값의 범위는 [0, 1]에서 분포하고 그 값이 클수록 성능이 좋다는 것을 의미한다.

본 연구에서는 Ebert-Uphoff et al. (2021)에서 제시된 FSS 기반 손실함수를 사용하였으며, 손실함수는 다음의 식 (1)로 정의된다.

[eqn: FSS=1- {sum _{i=1} ^{M} sum _{j=1} ^{N} ( {bar{p _{ij}}} - {bar{y _{ij}}} ) ^{2}} over {sum _{i=1} ^{M} sum _{j=1} ^{N} {bar{p _{ij}}} ^{2} + sum _{i=1} ^{M} sum _{j=1} ^{N} {bar{y _{ij}}} ^{2}}]	(1)

여기서 [eqn: {bar{p _{ij}}}]는 각 격자점에서 필터링 된 예측 확률, [eqn: {bar{y _{ij}}}]는 격자점에서 필터링 된 관측값, M과 N은 각 격자의 행과 열의 수를 의미한다. Table 3.2.1.은 FSS 기반 손실함수를 구현한 코드이다.

Table 3.2.1. Code for a loss function based on Fraction Skill Score

def fractions_skill_score(

num_dims: int, mask_size: int = 3, c: float = 1.,

binary: bool = False, threshold: float = 0.5,

class_weights: list[int | float] = None):

"""

Fractions skill score loss function.

Parameters

----------

num_dims: int

Number of dimensions for the mask.

mask_size: int or tuple

Size of the mask/pool in the AveragePooling layers.

c: int or float

C parameter in the sigmoid function. This will only be used if 'binary' is False.

binary: bool

Convert y_pred to binary values (0/1).

threshold: float

If binary is False, this threshold is used in the sigmoid function.

If binary is True, this is the threshold used to convert y_pred to binary values (0/1).

class_weights: list of values or None

List of weights to apply to each class. The length must be equal to the number of classes in y_pred and y_true.

Returns

-------

fss_loss: float

Fractions skill score.

"""

pool_kwargs = {'pool_size': (mask_size, ) * num_dims,

'strides': (1, ) * num_dims,

'padding': 'valid'}

if num_dims == 2:

pool1 = tf.keras.layers.AveragePooling2D(**pool_kwargs)

pool2 = tf.keras.layers.AveragePooling2D(**pool_kwargs)

else:

pool1 = tf.keras.layers.AveragePooling3D(**pool_kwargs)

pool2 = tf.keras.layers.AveragePooling3D(**pool_kwargs)

@tf.function

def fss_loss(y_true, y_pred):

"""

y_true: tf.Tensor

One-hot encoded tensor containing labels.

y_pred: tf.Tensor

Tensor containing model predictions.

"""

if binary:

y_true = tf.where(y_true > threshold, 1., 0.)

y_pred = tf.where(y_pred > threshold, 1., 0.)

else:

y_true = tf.math.sigmoid(c * (y_true - threshold))

y_pred = tf.math.sigmoid(c * (y_pred - threshold))

y_true_density = pool1(y_true)

n_density_pixels = tf.cast((tf.shape(y_true_density)[1] * tf.shape(y_true_density)[2]), tf.float32)

y_pred_density = pool2(y_pred)

if class_weights is None:

MSE_n = tf.keras.metrics.mean_squared_error(y_true_density, y_pred_density)

else:

relative_class_weights = tf.cast(class_weights / tf.math.reduce_sum(class_weights), tf.float32)

MSE_n = tf.reduce_mean(tf.math.square(y_true_density - y_pred_density) * relative_class_weights, axis=-1)

O_n_squared_image = tf.keras.layers.Multiply()([y_true_density, y_true_density])

O_n_squared_vector = tf.keras.layers.Flatten()(O_n_squared_image)

O_n_squared_sum = tf.reduce_sum(O_n_squared_vector)

M_n_squared_image = tf.keras.layers.Multiply()([y_pred_density, y_pred_density])

M_n_squared_vector = tf.keras.layers.Flatten()(M_n_squared_image)

M_n_squared_sum = tf.reduce_sum(M_n_squared_vector)

MSE_n_ref = (O_n_squared_sum + M_n_squared_sum) / n_density_pixels

epsilon = tf.keras.backend.epsilon()  # 1e-7, constant for numeric stability

if binary:

if MSE_n_ref == 0:

return MSE_n

else:

return MSE_n / MSE_n_ref

else:

return MSE_n / (MSE_n_ref + epsilon)

return fss_loss

3.2.3. 모델 실험

한반도에서 호우는 여름철에 집중되어 발생한다. 따라서 본 연구에서는 호우 예측성을 향상시키는 모델을 개발하기 위해 다양한 데이터셋을 모형을 개발하는데 사용하였다. 전년도 자료를 사용한 모델, 여름철(6~8월) 자료만을 사용한 모델, 여름철 각 월별 자료를 사용한 실험을 수행하여 총 5개의 모형을 개발하였다.

모든 모델은 매 epoch마다 20단계와 배치크기 32로 훈련되었다. 검증도 매 epoch마다 배치 크기가 32이고 20단계로 수행되었다. 모든 모델은 6,000 epoch을 완료하거나 1,000 epoch 동안 손실이 개선되지 않는 지점에 도달할 때까지 훈련 및 검증을 계속 진행했다. 둘 중 어느 한 조건을 만족하면 훈련은 중단하였다. 사용된 optimizer는 Adam이며, 학습률은 1e-4이다. 모델 실험을 위한 코드는 Table 3.2.2.에 제시하였다.

Table 3.2.2. Code for model using UNet 3+ architecture

def unet_3plus(

input_shape: tuple[int] | list[int], num_classes: int, pool_size: int | tuple[int] | list[int],

upsample_size: int | tuple[int] | list[int], levels: int,  filter_num: tuple[int] | list[int],

filter_num_skip: int = None, filter_num_aggregate: tuple[int] | list[int] = None, kernel_size: int = 3,

first_encoder_connections: bool = True, squeeze_axes: int | tuple[int] | list[int] = None,

shared_axes: int | tuple[int] | list[int] = None, modules_per_node: int = 5,

batch_normalization: bool = True, deep_supervision: bool = True,

activation: str = 'relu', padding: str = 'same', use_bias: bool = True,

kernel_initializer: str = 'glorot_uniform', bias_initializer: str = 'zeros',

kernel_regularizer: str = None, bias_regularizer: str = None,

activity_regularizer: str = None, kernel_constraint: str = None,

bias_constraint: str = None):

"""

Creates a U-Net 3+.

https://arxiv.org/ftp/arxiv/papers/2004/2004.08790.pdf

"""

ndims = len(input_shape) - 1  # Number of dimensions in the input image (excluding the last dimension reserved for channels)

if levels < 3:

raise ValueError(f"levels must be greater than 2. Received value: {levels}")

if len(input_shape) > 4 or len(input_shape) < 3:

raise ValueError(f"input_shape can only have 3 or 4 dimensions (2D image + 1 dimension for channels OR a 3D image + 1 dimension for channels). Received shape: {np.shape(input_shape)}")

if len(filter_num) != levels:

raise ValueError(f"length of filter_num ({len(filter_num)}) does not match the number of levels ({levels})")

if filter_num_skip is None:

filter_num_skip = filter_num[0]

if filter_num_aggregate is None:

filter_num_aggregate = levels * filter_num_skip

# Create full-scale skip connections

for full_connection in range(encoder + 1, levels):

tensors[f'{encoder}---{full_connection}_full-scale'] = unet_utils.full_scale_skip_connection(tensors[f'En{encoder}'],\

level1=encoder, level2=full_connection, name=f'{encoder}---{full_connection}_full-scale', **full_scale_kwargs)

# Bottom encoder node

tensors[f'En{levels}'] = unet_utils.max_pool(tensors[f'En{levels - 1}'], name=f'En{levels - 1}-En{levels}', **pool_kwargs)

tensors[f'En{levels}'] = unet_utils.convolution_module(tensors[f'En{levels}'], filters=filter_num[levels - 1], \

name=f'En{levels}', **module_kwargs)

if deep_supervision:

tensors[f'sup{levels}_output'] = unet_utils.deep_supervision_side_output(tensors[f'En{levels}'], \

num_classes=num_classes, output_level=levels, name=f'sup{levels}', **supervision_kwargs)

tensors_with_supervision.append(tensors[f'sup{levels}_output'])

# Add aggregated feature maps using the bottom encoder node

for feature_map in range(1, levels - 1):

tensors[f'{levels}---{feature_map}_feature'] = unet_utils.aggregated_feature_map(tensors[f'En{levels}'],\

level1=levels, level2=feature_map, name=f'{levels}---{feature_map}_feature', **aggregated_kwargs)

""" Build the rest of the decoder nodes """

for decoder in np.arange(1, levels)[::-1]:

""" The lowest decoder node (levels - 1) is attached to the bottom encoder node via upsampling, so concatenation is slightly different """

if decoder == levels - 1:

tensors[f'De{decoder}'] = unet_utils.upsample(tensors[f'En{levels}'], name=f'En{levels}-De{decoder}', **upsample_kwargs)

# Tensors to concatenate in the Concatenate layer

tensors_to_concatenate = [tensors[f'De{decoder}'], ]

connections_to_add = sorted([tensor for tensor in tensors if f'---{decoder}' in tensor])[::-1]

for connection in connections_to_add:

tensors_to_concatenate.append(tensors[connection])

else:

tensors[f'De{decoder}'] = unet_utils.upsample(tensors[f'De{decoder + 1}'], \

name=f'De{decoder + 1}-De{decoder}', **upsample_kwargs)

# Tensors to concatenate in the Concatenate layer

tensors_to_concatenate = sorted([tensor for tensor in tensors if f'---{decoder}' in tensor])[::-1]

for index in range(len(tensors_to_concatenate)):

tensors_to_concatenate[index] = tensors[tensors_to_concatenate[index]]

tensors_to_concatenate.insert(levels - 1 - decoder, tensors[f'De{decoder}'])

# Concatenate tensors, pass through convolution modules, then use deep supervision to create a side output

tensors[f'De{decoder}'] = Concatenate(name=f'De{decoder}_Concatenate')(tensors_to_concatenate)

tensors[f'De{decoder}'] = unet_utils.convolution_module(tensors[f'De{decoder}'],\

filters=filter_num_aggregate, name=f'De{decoder}', **module_kwargs)

if deep_supervision or decoder == 1:  # Decoder node 1 must always have deep supervision

tensors[f'sup{decoder}_output'] = unet_utils.deep_supervision_side_output(tensors[f'De{decoder}'],\

num_classes=num_classes, output_level=decoder, name=f'sup{decoder}', **supervision_kwargs)

tensors_with_supervision.append(tensors[f'sup{decoder}_output'])

""" Add aggregated feature maps """

for feature_map in range(1, decoder - 1):

tensors[f'{decoder}---{feature_map}_feature'] = unet_utils.aggregated_feature_map(tensors[f'De{decoder}'], \

level1=decoder, level2=feature_map, name=f'{decoder}---{feature_map}_feature', **aggregated_kwargs)

model = Model(inputs=tensors['input'], outputs=tensors_with_supervision[::-1], name=f'unet_3plus_{ndims}D')

return model

3.2.3. 검증

본 연구에서는 픽셀기반의 손실함수와 격자기반의 손실함수를 사용하여 모델을	개발하였다. 픽셀기반의 손실함수 모델을 검증하기 위해 Table 3.2.1.을 활용하여 CSI (Critical Success Index)와 POD, SR, FB를 계산하였다. CSI는 Table 3.2.1.에 의해 분류된 것을 기반으로 식 (2)에 의해 계산된 지수이다. 정확하게 예측된 이벤트의 합을 예측 시점의 이벤트 발생과 관련된 총 이벤트 수로 나눈 값이다. CSI의 범위는 0-1로 값이 1에 가까울수록 성능이 우수함을 의미한다.

Table 3.2.1. Precipitation Contingency Table

Verifying		Forecast rainfall
		no rain		rain
Observed rainfall	no rain	Z (zero)	TN	F (false)	FP
	rain	M (miss)	FN	H (hit)	TP

POD(Probability of detection)는 탐지확률을 나타내며, SR(Success Ratio)은 성공률이다.

[eqn: CSI= {TP} over {TP+FP+FN} = {1} over {{1} over {POD} + {1} over {SR} -1}]	(2)

[eqn: POD= {TP} over {TP+FN}]	(3)

[eqn: SR= {TP} over {TP+FP}]	(4)

모델 결과 검증을 위해 CSI 이외에 Frequency Bias(FB)를 활용하였다. FB는 식 (5)와 같이 정의된다. FB는 0-1의 범위를 가지며 FB가 1에 가까울수록 성능이 좋다는 것을 의미한다.

[eqn: FB= {TP+FP} over {TP+FN}]	(5)

CSI를 픽셀 단위로 평가할 때 실제 위치에서 발생하지 않은 것으로 모델이 예측하는 경우는 FB (False Positive)로 표시되며 이 픽셀로 인해 전반적인 CSI 점수가 낮아질 수 있다. 모델이 예측 결과에 대해 불이익을 받는 것을 방지하기 위해 주변의 3, 5, 10, 25, 50km 범위의 격자를 사용하여 CSI를 계산했다. 계산의 원리는 Fig. 3.2.1에 제시하였다.

Fig. 3.2.5. Comparison of CSI calculation methods

Table. 3.2.3. Code for Critical Success Index

def critical_success_index(threshold: float = None,

class_weights: list[int | float] = None,

window_size: int = None):

"""

Critical success index (CSI).

threshold: float or None

Optional probability threshold that binarizes y_pred.

Values in y_pred greater than or equal to the threshold are set to 1, and 0 otherwise.

If the threshold is set, it must be greater than 0 and less than 1.

class_weights: list of values or None

List of weights to apply to each class.

The length must be equal to the number of classes in y_pred and y_true.

window_size: int or None

Pool/kernel size of the max-pooling window for neighborhood statistics.

(e.g. if calculating the CSI with a 4-pixel window, this should be set to 4).

Note that this parameter is experimental and may return unexpected results.

"""

@tf.function

def csi(y_true, y_pred):

"""

y_true: tf.Tensor

One-hot encoded tensor containing labels.

y_pred: tf.Tensor

Tensor containing model predictions.

"""

if window_size is not None:

y_pred = tf.nn.max_pool(y_pred, ksize=window_size, strides=1, padding="VALID")

y_true = tf.nn.max_pool(y_true, ksize=window_size, strides=1, padding="VALID")

if threshold is not None:

y_pred = tf.where(y_pred >= threshold, 1., 0.)

y_pred_neg = 1 - y_pred

y_true_neg = 1 - y_true

sum_over_axes = tf.range(tf.rank(y_pred) - 1)  # Indices for axes to sum over.

# Excludes the final (class) dimension.

true_positives = tf.math.reduce_sum(y_pred * y_true, axis=sum_over_axes)

false_negatives = tf.math.reduce_sum(y_pred_neg * y_true, axis=sum_over_axes)

false_positives = tf.math.reduce_sum(y_pred * y_true_neg, axis=sum_over_axes)

if class_weights is not None:

relative_class_weights = tf.cast(class_weights / tf.math.reduce_sum(class_weights), tf.float32)

csi = tf.math.reduce_sum(tf.math.divide_no_nan(true_positives, true_positives + \

false_positives + false_negatives) * relative_class_weights)

else:

csi = tf.math.divide(tf.math.reduce_sum(true_positives), \

tf.math.reduce_sum(true_positives) + tf.math.reduce_sum(false_negatives) \

+ tf.math.reduce_sum(false_positives))

return csi

return csi

Table. 3.2.4. Code for Fractions Skill Score

def fractions_skill_score(

num_dims: int,

mask_size: int = 3,

c: float = 1.,

binary: bool = False,

threshold: float = 0.5,

class_weights: list[int | float] = None):

"""

Fractions skill score loss function. Visit https://github.com/CIRA-ML/custom_loss_functions for documentation.

Parameters

----------

num_dims: int

Number of dimensions for the mask.

mask_size: int or tuple

Size of the mask/pool in the AveragePooling layers.

c: int or float

C parameter in the sigmoid function. This will only be used if 'binary' is False.

binary: bool

Convert y_pred to binary values (0/1).

threshold: float

If binary is False, this threshold is used in the sigmoid function.

If binary is True, this is the threshold used to convert y_pred to binary values (0/1).

class_weights: list of values or None

List of weights to apply to each class. The length must be equal to the number of classes in y_pred and y_true.

Returns

-------

fractions_skill_score: float

Fractions skill score.

""“

pool_kwargs = {'pool_size': (mask_size, ) * num_dims,

'strides': (1, ) * num_dims,

'padding': 'valid'}

if num_dims == 2:

pool1 = tf.keras.layers.AveragePooling2D(**pool_kwargs)

pool2 = tf.keras.layers.AveragePooling2D(**pool_kwargs)

else:

pool1 = tf.keras.layers.AveragePooling3D(**pool_kwargs)

pool2 = tf.keras.layers.AveragePooling3D(**pool_kwargs)

@tf.function

def fss(y_true, y_pred):

y_true: tf.Tensor

One-hot encoded tensor containing labels.

y_pred: tf.Tensor

Tensor containing model predictions.

"""

if binary:

y_true = tf.where(y_true > threshold, 1., 0.)

y_pred = tf.where(y_pred > threshold, 1., 0.)

else:

y_true = tf.math.sigmoid(c * (y_true - threshold))

y_pred = tf.math.sigmoid(c * (y_pred - threshold))

y_true_density = pool1(y_true)

n_density_pixels = tf.cast((tf.shape(y_true_density)[1] * tf.shape(y_true_density)[2]), tf.float32)

y_pred_density = pool2(y_pred)

if class_weights is None:

MSE_n = tf.keras.metrics.mean_squared_error(y_true_density, y_pred_density)

else:

relative_class_weights = tf.cast(class_weights / tf.math.reduce_sum(class_weights), tf.float32)

MSE_n = tf.reduce_mean(tf.math.square(y_true_density - y_pred_density) * relative_class_weights, axis=-1)

O_n_squared_image = tf.keras.layers.Multiply()([y_true_density, y_true_density])

O_n_squared_vector = tf.keras.layers.Flatten()(O_n_squared_image)

O_n_squared_sum = tf.reduce_sum(O_n_squared_vector)

M_n_squared_image = tf.keras.layers.Multiply()([y_pred_density, y_pred_density])

M_n_squared_vector = tf.keras.layers.Flatten()(M_n_squared_image)

M_n_squared_sum = tf.reduce_sum(M_n_squared_vector)

MSE_n_ref = (O_n_squared_sum + M_n_squared_sum) / n_density_pixels

epsilon = tf.keras.backend.epsilon()  # 1e-7, constant for numeric stability

if binary:

if MSE_n_ref == 0:

return 1 - MSE_n

else:

return 1 - (MSE_n / MSE_n_ref)

else:

return 1 - (MSE_n / (MSE_n_ref + epsilon))

return fss

Table. 3.2.5. Code for Probability of Detection

def probability_of_detection(threshold: float = None,

class_weights: list[int | float] = None,

window_size: int = None):

"""

Probability of Detection (POD).

threshold: float or None

Optional probability threshold that binarizes y_pred. Values in y_pred greater than or equal to the threshold are

set to 1, and 0 otherwise.

If the threshold is set, it must be greater than 0 and less than 1.

class_weights: list of values or None

List of weights to apply to each class. The length must be equal to the number of classes in y_pred and y_true.

window_size: int or None

Pool/kernel size of the max-pooling window for neighborhood statistics. (e.g. if calculating the POD with a 4-pixel

window, this should be set to 4).

Note that this parameter is experimental and may return unexpected results.

"""

@tf.function

def pod(y_true, y_pred):

"""

y_true: tf.Tensor

One-hot encoded tensor containing labels.

y_pred: tf.Tensor

Tensor containing model predictions.

"""

if window_size is not None:

y_pred = tf.nn.max_pool(y_pred, ksize=window_size, strides=1, padding="VALID")

y_true = tf.nn.max_pool(y_true, ksize=window_size, strides=1, padding="VALID")

y_pred = tf.where(y_pred >= threshold, 1., 0.) if threshold is not None else y_pred

y_pred_neg = 1 - y_pred

sum_over_axes = tf.range(tf.rank(y_pred) - 1) # Indices for axes to sum over. Excludes the final (class) dimension.

true_positives = tf.math.reduce_sum(y_pred * y_true, axis=sum_over_axes)

false_negatives = tf.math.reduce_sum(y_pred_neg * y_true, axis=sum_over_axes)

if class_weights is not None:

relative_class_weights = tf.cast(class_weights / tf.math.reduce_sum(class_weights), tf.float32)

pod = tf.math.reduce_sum(tf.math.divide_no_nan(true_positives, true_positives + false_negatives)\

* relative_class_weights)

else:

pod = tf.math.reduce_sum(tf.math.divide_no_nan(true_positives, true_positives + false_negatives))

return pod

return pod

3.3. 결과

3.3.1. 성능 평가

3.3.1.1. 전년도 모델 (10 ㎜)

전년도를 대상으로 훈련한 모형의 성능을 Fig. 3.3.1.~Fig.3.3.2.에 제시하였다. Fig. 3.3.1.에 의하면 윈도우 격자가 클수록 예측 성능이 우수한 것을 확인할 수 있다. 10 ㎜ 이상 강한 강수는 좁은 지역에서 집중적으로 발생하는 경우가 대부분이다. 하지만 10 ㎜ 이상의 강한 강수가 발생하는 사례는 모든 강수사례의 극히 일부분에 불과하다. 위의 결과를 통해 윈도우 크기가 작을수록 강수를 예측한 지역에서 강수가 발생하지 않은 경우인 거짓경보가 발생할 가능성이 크다. 연구기간 중의 강수사례에 대한 분석을 수행하여 강한 강수가 발생했을 때의 강수 발생 면적에 대해 조사하여 윈도우 크기에 적용한다면 성능 향상을 기대할 수 있다.

Fig. 3.3.3. CSI diagram of the summer model (dash line: frequency bias, color: size of neighborhood grid)

Fig. 3.3.2는 전년도의 10 ㎜ 이상 강수 예측 모형의 예측결과에 대한 신뢰도 다이어그램(Reliability Diagram)이다. 신뢰도는 확률 예측을 평가할 때 사용되는 Brier score의 구성 요소이다. 신뢰도는 예측 확률과 평균 관측 빈도 사이의 평균 차이로 계산된다. 이상적인 예측인 경우는 그 값이 0이어야 한다. 1km 윈도우의 경우 예측 확률 0.25 미만인 경우를 제외하고는 3, 5, 15, 25km 격자의 모든 확률 범위에서 강한 강수를 과도하게 예측하는 경향을 나타낸다.

격자 기반의 모형을 구축할 때 한반도의 크기에 적합하다고 판단되는 격자(1, 3, 5, 15, 25 km)를 윈도우로 랜덤하게 설정하여 실험을 수행하였다. 따라서 본 연구에서 설정한 윈도우의 크기보다는 다양한 실험을 통해 적합한 윈도우를 설정하거나 강수 사례 분석을 통해 한반도의 강한 강수시 강수 면적을 고려한 윈도우를 설정한다면 예측성능이 향상된 모형을 구축할 수 있을 것이라고 기대할 수 있다.

Fig. 3.3.2. Reliability Diagram for 1㎜ model (color: size of neighborhood grid)

모든 윈도우 격자 크기에서 FB 값이 1보다 크게 나타났다(Table 3.3.1.). 다만 격자크기가 커질수록 그 수치는 적어지고 있다. 이는 기계학습 모형이 잘못 예측한 것이 아니라 대부분의 강수가 offset이 아닌 거짓 경보였음을 의미한다.이러한 거짓 경보는 Lagerquist et al.(2019)에서 확인할 수 있듯이 강수 이벤트가 사라지거나, 다시 나타나는 등 연속적인 시간 단계 사이에서 이벤트의 유형이 변경될 가능성이 있다. 따라서 테스트에 사용된 강수사례 중 강한 강수가 발생-소멸-재발생의 단계를 거쳤을 수 있다고 가정할 수 있다.

Table 3.3.1. Verification index by window size

index window size	CSI	POD	SR	FAR	FB
1 ㎞	0.35	0.58	0.46	0.54	1.28
3 ㎞	0.51	0.72	0.64	0.36	1.13
5 ㎞	0.61	0.79	0.72	0.28	1.10
15 ㎞	0.67	0.83	0.78	0.22	1.07
25 ㎞	0.71	0.85	0.80	0.20	1.06

3.3.1.2. 여름철 모델(10 ㎜ 이상)

여름철을 대상으로 훈련한 모형의 성능을 Fig. 3.3.3.~Fig.3.3.4.에 제시하였다. 전년도 10 ㎜ 모형과 같이 윈도우 격자가 클수록 예측 성능이 우수했다. 하지만 전년도 모형에 비해서는 그 성능이 낮음을 확인할 수 있다. 강한 강수의 대부분은 여름철에 발생하므로 그 성능이 전년도 모형과 비슷할 것이라고 예상하였다. 여름철에 대부분의 강한 강수가 발생하지만 본 모델의 훈련하기 위한 사례는 전년도 모형에 비해 적었다. 따라서 모델 훈련을 위한 사례의 부족으로 훈련에 충분하지 못했을 가능성이 있다. 또한 강수는 기온에 비해서는 상대적으로 불연속적인 이벤트이지만 결과적으로는 전년도의 환경이 영향을 미치는 기상현상이므로 여름철의 자료로만 훈련하는 것은 자료의 불연속성으로 인해 성능 저하를 야기했을 수 있음을 추정할 수 있다. 위의 결과를 통해 윈도우 크기가 작을수록 강수를 예측한 지역에서 강수가 발생하지 않은 경우가 발생할 가능성이 크다. 이러한 문제를 방지하기 위해 사용한 FSS 모형이 그 문제를 완화시켰을 가능성이 있으나 아직까지는 성능이 낮으므로 이를 개선할 필요성이 다음 과제로 남아있다.  전년도 모델과 마찬가지로 연구기간 중의 강수사례에 대한 분석을 수행하고 강수 발생 면적에 대해 분석 후 윈도우 크기에 적용한다면 성능 향상을 기대할 수 있다.

Fig. 3.3.5. CSI diagram of annual model (dash line: frequency bias, color: size of neighborhood grid)

Fig. 3.3.4.는 여름철의 10 ㎜ 이상 강수 예측 모형의 예측결과에 대한 신뢰도 다이어그램(Reliability Diagram)이다. 1km 윈도우의 경우 예측 확률 0.25 미만인 경우를 제외하고는 7, 9, 15, 25km 격자의 모든 확률 범위에서 강한 강수를 과도하게 예측하는 경향을 나타낸다.

격자 기반의 모형을 구축할 때 본 모형에 적합하다고 판단되는 격자를 윈도우로 설정하여 실험을 수행하였다. 1km 윈도우의 경우 예측 확률 0.4 미만인 경우는 강한 강수를 과소하게 예측하는 경향이 있었으며, 이를 제외하고는 1km 격자의 확률범위 0.4 이상인 경우와 3, 5, 15, 25km 격자의 모든 확률 범위에서 강한 강수를 과도하게 예측하는 경향이 있다.

Fig. 3.3.2. Reliability Diagram for 10 ㎜ model of summer  (color: size of neighborhood grid) of annual model

전년도 모형과 마찬가지로 모든 윈도우 격자 크기에서 FB 값이 1보다 크게 나타났다(Table 3.3.2.). 모든 격자에 대해 거짓경보였지만 격자가 커질수록 그 수치가 적어지는 것으로 보아 FSS의 적용이 효과가 있음을 가정할 수 있다. 또한 평가의 기준이 되는 격자의 크기가 작을수록 그 성능이 낮음을 확인할 수 있다. 이는 강수 이벤트는 이동, 소멸, 발생 등이 가능하기 때문에 평가의 기준에 따라 그 성능이 확연하게 차이가 난다. 따라서 사례 연구를 통해 모형의 활용 가능성을 확인하였다면, 전반적인 모형 성능을 측정할 때, 격자기반의 성능을 계산

Table 3.3.2. Verification index by window size

index window size	CSI	POD	SR	FAR	FB
1 ㎞	0.14	0.32	0.21	0.79	1.55
3 ㎞	0.21	0.48	0.27	0.73	1.76
5 ㎞	0.25	0.52	0.32	0.68	1.62
15 ㎞	0.27	0.58	0.34	0.66	1.72
25 ㎞	0.29	0.59	0.36	0.64	1.66

함으로써 모형의 우수성을 확인하는 것이 유용할 수 있다.

또한 Lagerquist et al.(2019)가 밝힌 바와 같이 이벤트의 유형의 변경될 가능성을 인지하고, 테스트에 사용된 강수사례의 지속시간에 따라 평가를 달리하는 것도 고려해 볼 필요가 있다.

Table. 3.3.1. Code for CSI diagram of model

# Probability threshold where CSI is maximized for model

max_csi_thresholds = dict()

if args['domain'] not in list(max_csi_thresholds.keys()):

max_csi_thresholds[args['domain']] = dict()

for front_no, front_label in enumerate(front_types):

if front_label not in list(max_csi_thresholds[args['domain']].keys()):

max_csi_thresholds[args['domain']][front_label] = dict()

###################### CSI and reliability diagrams (panels a and b) #######################

true_positives_temporal = stats_ds[f'tp_temporal_{front_label}'].values

false_positives_temporal = stats_ds[f'fp_temporal_{front_label}'].values

false_negatives_temporal = stats_ds[f'fn_temporal_{front_label}'].values

spatial_csi_ds = (stats_ds[f'tp_spatial_{front_label}'] / (stats_ds[f'tp_spatial_{front_label}'] \

+ stats_ds[f'fp_spatial_{front_label}'] + stats_ds[f'fn_spatial_{front_label}'])).max('threshold')

thresholds = stats_ds['threshold'].values

if args['confidence_level'] != 90:

CI_low, CI_high = (100 - args['confidence_level']) / 2, 50 + (args['confidence_level'] / 2)

CI_low, CI_high = '%.1f' % CI_low, '%.1f' % CI_high

else:

CI_low, CI_high = 5, 95

# Confidence intervals for POD and SR

CI_POD = np.stack((stats_ds[f"POD_{CI_low}_{front_label}"].values,\

stats_ds[f"POD_{CI_high}_{front_label}"].values), axis=0)

CI_SR = np.stack((stats_ds[f"SR_{CI_low}_{front_label}"].values,\

stats_ds[f"SR_{CI_high}_{front_label}"].values), axis=0)

CI_CSI = np.stack((CI_SR ** -1 + CI_POD ** -1 - 1.) ** -1, axis=0)

CI_FB = np.stack(CI_POD * (CI_SR ** -1), axis=0)

Table. 3.3.2. Code for Reliability Diagram

# Probability threshold where CSI is maximized for model

max_csi_thresholds = dict()

if args['domain'] not in list(max_csi_thresholds.keys()):

max_csi_thresholds[args['domain']] = dict()

for front_no, front_label in enumerate(front_types):

if front_label not in list(max_csi_thresholds[args['domain']].keys()):

max_csi_thresholds[args['domain']][front_label] = dict()

###################### CSI and reliability diagrams (panels a and b) #######################

true_positives_temporal = stats_ds[f'tp_temporal_{front_label}'].values

false_positives_temporal = stats_ds[f'fp_temporal_{front_label}'].values

false_negatives_temporal = stats_ds[f'fn_temporal_{front_label}'].values

spatial_csi_ds = (stats_ds[f'tp_spatial_{front_label}'] / (stats_ds[f'tp_spatial_{front_label}'] \

+ stats_ds[f'fp_spatial_{front_label}'] + stats_ds[f'fn_spatial_{front_label}'])).max('threshold')

thresholds = stats_ds['threshold'].values

if args['confidence_level'] != 90:

CI_low, CI_high = (100 - args['confidence_level']) / 2, 50 + (args['confidence_level'] / 2)

CI_low, CI_high = '%.1f' % CI_low, '%.1f' % CI_high

else:

CI_low, CI_high = 5, 95

# Confidence intervals for POD and SR

CI_POD = np.stack((stats_ds[f"POD_{CI_low}_{front_label}"].values,\

stats_ds[f"POD_{CI_high}_{front_label}"].values), axis=0)

CI_SR = np.stack((stats_ds[f"SR_{CI_low}_{front_label}"].values,\

stats_ds[f"SR_{CI_high}_{front_label}"].values), axis=0)

CI_CSI = np.stack((CI_SR ** -1 + CI_POD ** -1 - 1.) ** -1, axis=0)

CI_FB = np.stack(CI_POD * (CI_SR ** -1), axis=0)

4. 기상분야 설명가능 인공지능

4.1. 설명가능 인공지능의 이해

4.1.1. 설명가능 인공지능의 개념과 중요성

최근 몇 년 동안 인공지능 기술은 엄청난 발전을 이루며 삶과 사회에 큰 변화를 가져오고 있다. 그러나 인공지능은 데이터를 통해 학습하고 예측하여 의사, 결정을 지원할 때 결과만 알려주고 어떤 근거로 이 판단에 이르렀는지가 불가하다는 점이 한계점이었다. 이는 알고리즘의 전체 계산과정이 "블랙박스"로 불리며 해석이 불가능하다는 점에서 비롯된다. 결과적으로, 알고리즘을 개발한 개발자나 데이터 과학자조차도 내부에서 무엇이 일어나고 있는지, 또는 특정 결과에 도달한 방법을 정확하게 이해하거나 설명하기 어렵다. 이는 중대한 영향을 미칠 수 있는 결정과 같이 사람들이 인공지능 알고리즘이 어떤 결정을 내렸는지 이해하는 것이 중요한 상황에서 문제가 될 수 있다.

따라서 이러한 발전은 때때로 예측 불가능하고 불명확한 결과를 초래할 수 있으며, 이로 인해 AI 시스템의 신뢰성과 투명성에 대한 우려가 높아지고 있다. 설명가능 인공지능(eXplainable Artificial Intelligence, XAI)은 이러한 문제에 대한 해결책으로 개발되었다. 설명가능 인공지능은 사용자가 기계학습 알고리즘이 생성한 결과의 결정 과정을 해석하고 설명할 수 있는 기술이다. 즉, 설명가능 인공지능은 AI의 작동 방식 및 예측 결과를 사용자가 이해할 수 있는 방식으로 제시하여 모델의 예측을 이해하고 신뢰할 수 있게 해준다.

설명가능 인공지능의 중요성은 다양한 측면에서 이해할 수 있다. 첫째는 신뢰성 확보이다. XAI는 모델의 작동 방식과 예측 결과를 해석 가능한 형태로 제시하여 사용자가 모델을 더 신뢰하고 이해할 수 있게 도와준다. 이는 AI 시스템을 적용하는 기관과 개인이 모델의 결정에 대해 더 많은 신뢰를 가지고 사용할 수 있게 됨을 의미한다. 또한 XAI가 적용된 모델을 운영환경에 적용할 때는 신뢰와 확신을 갖고 모델을 구축할 수 있으며, 모델의 예측결과에 대한 설명은 AI 개발에 책임감있게 접근하는데 도움이 된다. 특정 출력으로 이어진 AI 기반 시스템이 어떻게 작동했는지를 이해한다면, 이는 개발자가 시스템이 예상대로 작동하는지 확인하는데 큰 도움이 된다.

둘째는 XAI를 적용함으로써 모델의 투명성을 제공한다. XAI를 통해 모델이 어떻게 작동하는지에 대한 투명성을 제공할 수 있다. 이를 통해 개발자와 사용자들은 모델의 내부 작동 메커니즘을 이해할 수 있다. 이는 AI 시스템이 동작하는 방식을 더 잘 이해하고, 잠재적인 문제를 식별하고 해결하는 데 도움이 된다.

세 번째는 XAI 기법을 적용함으로써 공정성을 강화할 수 있다는 것이다. 종종 ML 알고리즘을 사용한 AI 모델의 경우, 해석이 불가능한 블랙박스로 여겨져 왔다. 이는 딥러닝에서 사용되는 신경망이 인간이 이해하기 가장 어려운 분야 중 하나이기 때문이다. 특히 인종, 성별, 나이 또는 지역에 기반한 바이어스(5장에서 자세히 설명)는 AI 모델을 훈련시키는데 있어서 지속적인 위험 요인으로 작용한다. XAI를 적용하면 모델이 편향된 예측결과를 산출하는 경우, 이를 식별하고 원인을 파악하고 수정할 수 있는 기회를 제공함으로써 모델의 공정성을 강화할 수 있다.

네 번째는 의사 결정 지원이 가능하다는 것이다. XAI는 의사 결정을 내리는 과정에서 도움을 줄 수 있다. 사용자가 인공지능 모델과 상호작용하는 과정에서 설명가능 인공지능은 사용자가 모델의 의사결정을 이해하고 필요에 따라 모델을 조정할 수 있도록 돕는다. 모델이 특정 결과를 어떻게 도출했는지를 설명함으로써 의사 결정을 지원하고, 결정의 근거를 제공함으로써 신뢰할 수 있는 결과를 얻을 수 있다.

마지막으로 규제 요구를 준수하는 모델을 개발할 수 있다는 것이다. 최근 윤리적인 인공지능의 중요성이 강조되고 있다. 특히 금융, 의료, 법률 등과 같은 일부 산업 분야에서는 인공지능 모델의 의사결정에 대한 근거를 제공해야하는 법적 요구를 이행해야 한다. 설명가능 인공지능은 이러한 규제준수를 위해 필요한 정보를 제공하는 중요한 역할을 할 수 있다.

요약하면, XAI는 AI 시스템의 신뢰성과 투명성을 향상시키고, 공정성을 강화하며, 의사 결정을 지원하는 데 중요한 역할을 한다. 이는 AI 기술의 발전과 사회적 책임성을 함께 고려하는 관점에서 매우 중요한 요소이다.

설명가능 인공지능은 모델의 공정성을 보장하고, 정확성을 개선하며 인공지능 시스템에 대한 신뢰를 구축하는데 도움이 되기 때문에 그 필요성이 점점 증가하고 있다. 설명가능 인공지능은 책임 있는 인공지능을 구현하기 위한 주요 조건 중 하나이다. 공정성, 모델 설명 가능성 및 책임성을 갖춘 인공지능을 구현하기 위한 방법인 책임 있는 AI를 실현하는 데 기여할 수 있다.

4.1.2. 설명가능 인공지능의 분류 기준

설명가능 인공지능은 모델의 복잡성, 설명범위, 모델 종속성의 크게 세 가지 기준으로 구분할 수 있다. 먼저 모델의 복잡성(Complexity)은 해석력과 깊은 연관이 있다. 모델이 복잡할수록 사람이 해석하기가 더 어려우며, 반대로 모델이 단순할수록 사람이 해석하기는 더 용이하다. 그러나 어려운 문제를 해결하기 위해서는 신경망과 같은 복잡한 구조가 유리하기 때문에 모델의 복잡성과 설명력은 서로 Trade-off 관계가 있다. 복잡성에 따라 사전(intrinsic) 설명모델과 사후(post-hoc) 설명 모델로 구분할 수 있다.

사전 설명(Intrinsic) 모델을 쉽게 해석할 수 있는 가장 빠른 방법은 애초에 모델을 해석 가능한 구조로 고안하는 것이다. 구조가 단순한 모델은 그 자체적으로 이미 해석력을 확보하고 있다고 해서 Intrinsic(본래 갖추어진)이라고 명명되었으며, 또는 투명성(Transparency)를 갖췄다고 표현하기도 한다. 예를 들어 선형모델, 의사결정나무와 같은 단순한 모델은 구조만 보더라도 사람이 해석하기 쉽다. 사전 설명 모델의 장점은 "모델이 어떻게 동작하는가?"에 대해서 설명할 수 있다는 것이다. 하지만 trade-off관계 때문에 Intrinsic 모델은 정확도가 낮다는 단점이 있다.

Fig. 4.1.1. Concept of intrinsic and post-hoc algorithm

신경망(Neural Network) 모델은 설명력이 낮은 대신에 정확도가 월등하게 높아 큰 인기를 얻었고, 설명이 필요하지 않은 분야로 빠르게 도입 및 확산되었다. 그러나 최근 인공지능에 설명성이 요구되고 있으나, 딥러닝 등은 모델 자체로 설명력을 지니지 않기 때문에 해석을 위한 새로운 사후설명(post-hoc) 모델을 사용한 해석력이 요구된다. 사후설명 기법의 예로 LIME, SHAP과 같은 기법이 있다.

모델 자체가 설명력을 지니지 않을 경우, 모델의 예측 결과는 사후(post-hoc)에 해석해야 한다. 모델의 정확도가 높으면서 설명력을 내재는 모델은 현실적으로 존재하기 여럽다. 따라서 성능이 좋은 복잡한 모델을 사용하고 해석은 Post-hoc으로 하는 방법이 보편적이다.

딥러닝은 내부적으로 복잡한 연결 관계를 지니고 있으며, 예측 결과를 도출하는 과정에서 하나의 입력 성분값(이미지 데이터의 경우 픽셀 1개의 값)이 어떻게 기여했는지 의미적으로 해석하는 것이 대단히 어렵다. 기계학습 및 딥러닝 분야에서 해석 가능한 기법이 대부분 Post-hoc에 속한다. 이렇게 복잡성이 높은 머신러닝 모델에 대하여 적용할 수 있는 대안으로, decision tree, linear model, falling rule list 등과 같은 비교적 간단한 형태를 지니는 별도의 '설명용 모델‘을 설정하고, 이를 설명 대상이 되는 머신러닝 모델에 적용하는 방법도 시도할 수 있다.

둘째로 설명범위에 따라 설명가능 인공지능을 구분할 수 있다. 어떤 변수가 중요한지 등을 보여주며 모델 전반적인 부분을 이해하는데 중요한 해석을 제공하는 전역적(Global) 기법과 하나의 샘플에 대한 예측결과만을 설명하는 방법인 지역적(Local) 기법이 있다.

전역적 설명은 모델 전체의 동작을 이해하고 설명하는 방법이다. 이 방법은 모델의 전반적인 특성과 패턴을 파악하는 데 사용된다. 전역적 설명은 모델이 특정 입력 특성을 어떻게 고려하는지, 어떤 패턴을 학습하는지 등을 파악하는 데 도움이 된다. 예를 들어, 전역적 설명을 사용하여 특정 이미지 분류 모델이 어떤 특성을 주로 고려하여 분류하는지를 확인할 수 있다. 전역적 설명의 예로는 대리 특성 설명(Feature Attribution), 속성값 설명(Attribute Value Explanation), 또는 신경 네트워크 전역 해석(Neural Network Global Interpretability) 등이 있다.

Fig. 4.1.2. Grouping Results of XAI technologies Based on Global vs. Local Explanation Criteria

지역적 설명은 특정 예측이나 인스턴스에 대해 설명을 제공하는 방법이다. 이 방법은 모델이 특정 예측을 내릴 때 어떤 입력 특성이 가장 중요한지를 파악하는 데 사용된다. 지역적 설명은 모델의 동작을 개별적으로 분석하여 각 예측의 이유를 이해하는 데 도움이 된다. 예를 들어, 지역적 설명을 사용하여 특정 이미지에 대한 분류 결과가 왜 그렇게 나왔는지를 설명할 수 있다. 지역적 설명의 예로는 LIME (Local Interpretable Model-agnostic Explanations), 복원 기술(Reconstruction Techniques), 또는 지역적 평가(Local Evaluation) 등이 있다.

셋째, 모델 종속성은 설명범위와 연관되어 분류되는 기준이다. 사용방법에 따라 해석 방법론이 어느 특정한 종류(model-specific)의 머신러닝 모델에 특화되어 작동하는지, 혹은 모든 종류(model-agnostic)의 머신러닝 모델에 범용으로 작동하는지에 따라 분류할 수 있다. agnostic 방법의 경우 해당 모델의 구조적 정보를 이용하지 않고, 입력과 출력 값의 변화를 분석하여 해석한다.

4.1.3. 설명가능 인공지능의 원리

설명가능 인공지능은 인공지능 모델이 내부적으로 어떻게 작동하는지, 왜 그런 예측(결정)을 했는지에 대한 이유를 설명할 수 있는 기술이다. 이를 통해 모델의 의사 결정 과정을 이해하고 신뢰할 수 있도록 돕는다. 설명가능 인공지능은 다양한 원리와 기술을 사용하여 이를 실현할 수 있다.

설명가능 인공지능은 모델이 내부적으로 어떻게 작동하는지를 설명하는 데 중점을 둡니다. 이는 모델의 구조, 파라미터, 학습된 가중치, 그리고 입력 데이터와 출력 사이의 상호 작용 등을 이해하는 것을 포함한다. 설명가능 인공지능의 원리는 다섯 가지로 요악할 수 있다. 먼저 모델 구조를 이해하는 것이다. 모델의 구조가 무엇인지, 어떻게 동작하는지를 이해하는 것은 모델 내 해석 가능성을 높이는 첫 번째 단계이다. 예를 들어, 신경망 모델의 경우, 각 레이어의 역할 및 연결된 가중치를 이해하는 것이 중요하다.

두 번째로 입력특성이 모델의 예측에 어떤 영향을 미치는 지 분석하는 특성 중요도 분석이다. 이를 통해 특정 특성이 모델의 결정에 미치는 영향을 이해할 수 있다. 이러한 분석은 특성 중요도를 계산하거나 시각화하는 방식으로 이루어질 수 있다.

세 번째로 활성화 함수의 출력 및 그래디언트를 분석하여 모델이 특정 예측을 내리는 데 기여한 부분을 이해할 수 있다. 이를 통해 모델 내부의 상호 작용과 정보 전달 과정을 이해할 수 있다.

네 번째로 시각화 기법을 사용하여 모델의 내부 작동 방식을 시각적으로 이해할 수 있다. 예를 들어, 학습된 필터 또는 레이어의 활성화를 시각화하여 모델이 어떤 패턴이나 특징을 학습하는지를 확인할 수 있다.

마지막으로 해석 가능성을 고려하여 설계된 모델을 사용하는 것도 모델 내 해석 가능성을 높이는 방법 중 하나이다. 예를 들어, 의사 결정 트리나 선형 회귀 모델과 같은 간단하고 해석 가능한 모델을 사용할 수 있다. 위와 같은 원리를 통해 모델 내 설명(해석) 가능성을 높이면, 모델의 예측과 의사 결정 과정을 이해하고 검증할 수 있으며, 모델의 신뢰성과 신뢰도를 높일 수 있다.

4.1.4. 설명가능 인공지능의 주요 기술

설명가능 인공지능은 다양한 방법과 기법을 사용하여 모델의 예측을 설명 가능한 형태로 제공한다. 여러 설명가능 인공지능 기술 중에서 주로 사용되는 방법은 다음과 같다.

4.1.4.1. LIME (Locally Interpretable Model-agnostic Explanations)

LIME은 기계학습 모델이 내부적으로 어떻게 동작하는지 이해하기 위한 방법이다. LIME은 모델에 독립적으로 적용할 수 있는 방법으로, 복잡한 모델(예: 신경망)이 만든 단일 예측을 설명 가능한 형태로 제공한다. LIME은 주변 데이터를 사용하여 모델의 예측을 근사하는 간단한 모델을 학습하여 설명을 제공한다.

LIME의 작동원리는 다음과 같다. LIME은 각 데이터 포인트에 대해 설명을 생성하기 위해 샘플링을 수행한다. 샘플링 된 데이터는 기계학습 모델에 입력되어 예측결과를 얻는다. LIME을 적용하기 위해 모델의 예측을 설명할 중요한 입력 특성을 선택한다. 이를 위해 무작위로 입력 데이터 주변의 작은 영역을 선택한다. 선택된 데이터 주변의 작은 영역에 대해 가중치가 부여된 선형 모델을 학습하여 전체 모델의 예측을 근사한다. 이 선형 모델은 LIME에서 설명 가능한 형태의 예측을 제공한다. 마지막으로 이 가중치가 부여된 선형 모델을 통해 각 특성의 영향력을 해석할 수 있다. 각 특성의 가중치는 해당 특성이 모델의 예측에 얼마나 중요한지를 나타낸다.

Fig. 4.1.3.은 LIME을 이용한 영상 예측 결과를 설명하기 위해 자주 사용되는 예시이다. LIME의 원리를 간단하게 설명하면, 원본이미지를 해석가능한 모든 요소로 잘게 쪼갠다. 그 후 그림에 나타난 바와 같이, 이해하기 쉬운 구성요소 중 일부를 "끄는" 방식으로 왜곡된 인스턴스의 데이터 세트를 생성한다(여기에서는 회색으로 표시함). 왜곡된 각각의 인스턴스에 대해, 모델에 따라 이미지에 개구리가 있는 확률을 구한다. 그런 다음 이 데이터 세트에서 간단한 선형회귀 모델을 학습한다. 이 모델은 지역적으로 가중치가 부여된다. 즉 원본 이미지와 유사한 왜곡된 인스턴스에서의 오류를 더욱 중요하게 고려하게 된다. 마지막으로, 가중치가 높은(설명량이 큰 인스턴스) 슈퍼픽셀을 설명으로 제시하고, 다른 모든 것은 회색으로 처리한다.

LIME은 모델의 신뢰성과 투명성을 높일 수 있고, 기계 학습 모델의 편향성을 감지하고 수정할 수 있으며, 사람이 이해하기 쉬운 설명을 제공한다는 장점이 있다. 반면, 설명의 해석력이 제한적이며, 데이터 샘플링과 선형 회귀 모델의 훈련 시간이 오래 걸릴 수 있다는 단점이 있다.

Fig. 4.1.3. Explaining a prediction with LIME

Fig. 4.1.4. Code for LIME

4.1.4.2. SHAP (SHapley Additive exPlanations)

SHAP (SHapley Additive exPlanations)은 각 특성이 모델의 예측에 어떻게 기여하는지를 설명하는 설명가능 인공지능 기술이다. SHAP은 각 특성의 중요도를 측정하여 모델의 예측을 설명한다.

SHAP은 Shapley 값의 개념을 기반으로 하여 각 특성의 중요도를 측정한다. Shapley 값은 게임 이론에서 유래한 개념(Shapley, 1953)으로, 각 특성이 예측에 어떻게 기여하는지를 측정하는 데 사용된다. 다시 말하면, 각 특성이 예측에 대한 정보를 얼마나 많이 제공하는지를 나타낸다.

여러 주제가 서로 영향을 미치는 상황에서 서로가 어떤 의사결정이나 행동을 하는지에 대해 이론화한 것을 말한다.

SHAP은 다음과 같은 방법으로 분석할 수 있다.

① Shapley Values 계산: 각 특성이 예측에 기여하는 정도를 계산한다. 이는 각 특성의 값이 모델의 예측에 어떤 방식으로 영향을 미치는지를 측정할 수 있다.

② Shapley Values의 합산: 각 특성의 Shapley 값을 모두 합산하여 최종적인 예측에 대한 설명을 얻는다. 이를 통해 각 특성이 모델의 예측에 미치는 영향을 종합적으로 이해할 수 있다.

③ 시각화 및 해석: SHAP은 각 특성의 중요도를 시각화하여 해석 가능한 형태로 제공한다. 이를 통해 각 특성이 모델의 예측에 어떻게 기여하는지를 직관적으로 이해할 수 있다.

SHAP은 모델의 예측을 해석 가능한 형태로 제공하여 사용자나 이해관계자들이 모델을 이해하고 검증할 수 있도록 돕는 데 사용된다. 특히, 복잡한 모델(예: 신경망)에서 각 특성의 영향력을 설명하는 데 유용하다.

SHAP 분석 결과는 다양한 형태로 표현할 수 있다(Aboze, 2023). Fig. 4.1.5.는 SHAP 요약 그림이다. SHAP summary plot은 모델에서 가장 영향력 있는 특성을 종합적으로 보여준다. 이는 모델 예측에 미치는 영향에 따라 특성을 순위별로 나열한다. x축은 SHAP 값으로 나타낸다. SHAP 값은 특정 예측에 대한 특성의 영향을 측정하는 척도이다. y축은 특성을 표시하며, 특성 값의 낮은 값부터 높은 값까지 색상으로 나타낸다. 이는 모델 예측에 가장 큰 영향을 미치는 특성을 결정하는 데 도움이 된다. 각각의 점은 특정 데이터 포인트에 대한 특성의 SHAP 값을 나타내며, 가장 중요한 특성, 그들의 모델 출력에 대한 영향의 특성(양수 또는 음수), 및 그들의 기여도를 구별할 수 있다.

Fig. 4.1.5. Examples of SHAP summary plot

SHAP 막대 그래프(bar plot)는 전역적인 특성 중요도를 시각화하는 대안적인 방법을 제공한다. Fig. 4.1.6.는 SHAP 막대 그래프의 예시를 나타낸다. 이 그래프는 각 특성의 SHAP 값의 평균을 구하여 차트 형식의 막대로 표현한다. 막대의 길이는 해당 특성의 모델에 대한 중요성을 나타낸다. 이 그래프는 전체적인 특성 중요도를 명확하고 간단하게 보여준다. 막대는 개별 특성이 단일 예측에 미치는 기여를 나타내며, 막대는 각 특성의 크기와 방향을 반영한다. 양수 값은 예측에 긍정적인 영향을 미치는 것을 나타내고, 음수 값은 부정적인 영향을 나타낸다.

SHAP force plot은 개별 인스턴스에 대한 SHAP 값의 상세한 특징을 제공한다. Fig. 4.1.7은 SHAP force plot의 예시이다. 여기에서는 모델 출력 기대 값을 표시하고 각 특성의 영향이 모델의 예측을 이 기준 값보다 높거나 낮게 만드는 방식을 보여준다. 각 특성이 특정 인스턴스에 대한 모델의 출력에 어떻게 기여하는지를 이해하는 데 도움이 되며, 긍정적인 영향과 부정적인 영향을 강조한다. force plot은 bar plot의 개선된 버전이다. 각 특성이 예측에 기여하는 방식을 보여주고 특성 값의 변화에 따라 그들의 기여도가 어떻게 다르게 변화하는지를 나타낸다. 이 그래프는 모델의 평균 예측을 나타내는 기준 값에서 시작하며, 각 특성의 SHAP 값이 예측에 어떻게 기여하는지 혹은 특성이 추가되거나 제거됨에 따라 예측이 어떻게 변하는지를 보여준다.

Fig. 4.1.6. Example of SHAP bar plot

SHAP waterfall plot은 모델의 특정 인스턴스에 대한 예측 특성의 누적된 기여도를 나타낸다(Fig. 4.1.8). force plot와 비교하면 폭포 그래프는 기여도를 막대 그래프로 나타내어 각 특성의 긍정적인 영향과 부정적인 영향을 훨씬 더 쉽게 이해할 수 있다. 이러한 유형의 force plot은 최종 예측 결과를 생성하기 위해 각 특성의 SHAP 값이 어떻게 결합되는지를 보여준다. 그림은 기준 값을 기준으로 시작하여 각 특성이 전체 예측에 어떻게 기여하는지를 보여준다. 이 그래프를 통해 모델의 예측에 가장 큰 영향을 미치는 특성을 파악할 수 있다.

Fig. 4.1.7. Example of SHAP force plot

Fig. 4.1.8. Example of SHAP waterfall plot

Fig. 4.1.9.는 텐서플로우를 활용하여 SHAP을 계산하고 다양한 종류의 그래프를 작성하는 예시를 나타낸 코드이다. 아래의 코드에서는 임의의 자료를 생성하여 기본적인 모델을 생성, 학습한 후 SHAP을 계산하고 그래프로 작성한 것이다.

4.1.4.3. PDP (Partial Dependence Plots)

PDP는 주로 회귀모델과 분류모델에서 변수간의 상호작용을 시각화하고 해석하는데 사용된다(Friedman, 2001). 어떠한 특성이 모델의 예측에 어떤 영향을 미치는지를 시각적으로 나타내는 방법이다. 하나 또는 여러 변수의 값이 변할 때 모델의 예측에 미치는 영향을 보여준다. 이를 통해 변수의 중요도를 평가하고, 모델의 작동 방식을 설명할 수 있다.

Fig. 4.1.9. Code for SHAP plots

하나 또는 두 개의 변수가 예측결과에 미치는 주변 효과를 파악하고자 주로 사용된다. 주변 효과는 주변 분포에서 추정할 수 있다. 즉, 한 개의 확률 변수값을 고정하고, 다른 확률변수의 값을 연구자가 정한 기준에 따라 변화시키면서 그에 따른 확률 값들을 모두 더하는 것이다.

PDP는 다음과 같은 단계로 작성된다.

① 특정 변수 선택: PDP를 생성하려는 변수를 선택한다. 이 변수는 모델을 해석하고자 하는 특성이다.

② 대상 변수 고정: 다른 변수들의 영향을 살펴보고자 하는 경우, 원하는 변수를 특정 값으로 고정한다. 이와 같은 방법으로 선택한 변수의 영향만을 살펴볼 수 있다.

③ 해당 변수 값 범위 설정: 선택한 변수의 값 범위를 결정한다. 변수의 최소 값에서 최대 값까지의 범위 등 필요성에 따라 설정할 수 있다.

④ 각 값에 대한 예측 계산: 선택한 변수의 값 범위 내에서 일정 간격으로 값을 선택하고, 다른 변수들은 고정한 상태로 모델에 입력하여 각 값에 대한 모델의 예측을 계산한다.

⑤ 시각화: 선택한 변수의 값에 대한 예측 값을 시각화한다. 이를 통해 해당 변수가 모델 예측에 미치는 영향을 시각적으로 확인할 수 있다.

Fig. 4.1.10.은 기온과 습도가 자전거 대여 횟수에 미치는 영향을 보여준다. 높은 기온과 낮은 상대습도가 자전거 대여횟수와 관련이 있다는 것을 확인할 수 있다(Fig. 4.1.10.(a), (b)). 기온과 상대습도가 자전거 대여횟수에 미치는 영향을 동시에 해석하기에는 이러한 별도의 그래프는 한계가 있다. PDP는 두 변수 간의 상호 작용을 보여줄 수 있다. Fig. 4.1.10.(c)는 기온과 상대습도의 결합 값에 대한 자전거 대여 횟수를 나타낸다. 두 가지 변수 사이의 상호작용을 확인할 수 있다. 기온이 20℃ 이상이 되면 주로 상대습도가 자전거 대여 횟수에 큰 영향을 미친다. 기온이 낮은 경우 온도와 습도 모두 자전거 대여 횟수에 영향을 미친다고 해석할 수 있다.

Fig. 4.1.11. Code for PDPs

Fig. 4.1.10. Example of PDPs

4.1.4.4. 특성 중요도 기법(Feature Importance Techniques)

특성 중요도 기법은 기계학습 모델에서 각 특성이 예측에 어느 정도의 중요도를 가지고 영향을 미치는지 측정하는 기법이다. 이 기법은 특정 예측에 대한 각 특성의 상대적인 영향력을 확인할 수 있도록 도와준다. 다양한 Feature Importance 기법 중 일반적으로 활용되는 방법은 다음과 같다.

① 순열 중요도(Permutation Importance)

순열 중요도는 모델이 학습한 후에, 특정 특성의 값을 무작위로 섞은 다음 이러한 섞인 데이터를 모델에 다시 적용하여 성능의 변화를 관찰한다. 만약 섞인 특성이 예측 성능에 큰 영향을 미치는 경우, 해당 특성은 중요하다고 판단된다.

② 평균 감소 불순도(Mean Decrease Impurity)

트리 기반 모델에서 주로 사용되는 방법으로, 각 특성이 트리를 분할하는 데 얼마나 중요한지를 측정한다. 다양한 불순도(예: 지니 불순도, 엔트로피 등)를 기준으로 한 분할에서 각 특성의 감소 정도를 평균하여 해당 특성의 중요도를 측정한다.

③ 계수 크기(Coefficient Magnitude)

선형 모델에서는 각 특성의 계수 크기를 통해 중요도를 측정할 수 있다. 계수가 절대값이 크면 해당 특성이 예측에 더 많은 영향을 미친다는 것을 의미한다.

이와 같은 특성 중요도 기법은 모델의 해석과 이해를 돕는 데 사용된다. 각 특성이 예측에 얼마나 중요한지를 이해하면, 모델이 어떻게 작동하는지에 대한 이해를 얻을 수 있다.

4.1.4.5. 계층별 타당성 전파(Layer-wise Relevance Propagation, LRP)

계층별 타당성 전파(LRP)는 신경망 모델의 해석 가능성을 향상시키는 데 사용되는 기술 중 하나이다(Bach et al., 2015). LRP는 모델의 각 뉴런이 출력에 기여한 정도를 계산하여 입력 특성에 대한 중요도를 해석하는 데 사용되며 다음과 같은 단계로 작동된다(Montavon et al., 2019).

먼저, 순전파 단계에서는 입력 데이터가 신경망을 통해 전달되어 예측이 생성된다. 역전파 단계에서는 출력에서 입력 방향으로 중요도를 전파한다. 이 과정에서 각 뉴런의 활성화 값이 출력에 얼마나 기여했는지를 계산한다. 마지막으로 중요도 할당 단계에서는 각 뉴런의 중요도를 할당한다. 이는 역전파 중 계산된 기여도를 사용하여 수행된다. LRP의 특징은 출력에서 입력까지의 중요도를 역방향으로 전파하여 각 뉴런이 입력에 얼마나 중요한지를 결정하는 것이다.

Fig. 4.1.6. Working step of LRP

위와 같은 과정을 통해 LRP는 신경망이 어떻게 작동하는지를 설명하는 데 도움이 된다. 그러나 LRP는 모든 상황에서 완벽한 해석을 제공하지는 않는다. 특히 신경망이 복잡한 상호 작용을 학습하는 경우, LRP의 해석이 복잡해질 수 있다. 또한, LRP는 모델의 내부 동작에 대한 일부 가정을 기반으로 하므로 이러한 가정이 부적절한 경우, 해석이 잘못될 수 있다.

4.1.5. 설명가능 인공지능의 장점과 한계

설명가능 인공지능(XAI)은 다양한 장점을 가지고 있다. 이러한 장점들은 설명가능 인공지능이 모델의 신뢰성을 높이고, 의사 결정 과정을 투명하게 만들어 사용자가 모델을 더욱 신뢰하고 이해할 수 있도록 도와준다.

설명가능 인공지능은 신뢰성 향상에 도움을 준다. 설명가능 인공지능은 모델이 내린 결정이나 예측에 대한 이유를 명확하게 설명할 수 있다. 이는 모델의 결과를 이해하기 쉽게 만들어 사용자나 이해관계자들이 모델을 더욱 신뢰할 수 있도록 돕는다. 특히, 의료, 금융, 국방 분야와 같이 생명과 재산에 영향을 미치는 신뢰성이 매우 중요한 분야에서는 이러한 신뢰성 향상이 더욱 중요하다.

설명가능 인공지능은 의사 결정 과정의 투명성에 영향을 미친다. 설명가능 인공지능은 모델이 내린 각각의 결정을 이해하기 쉽게 만들어준다. 이는 모델이 왜 특정한 예측을 내렸는지, 어떤 특성이 결과에 영향을 미쳤는지 등을 이해하는 데 도움이 된다. 이는 의사 결정 과정의 투명성을 높이고, 모델이 내린 결정에 대한 이해를 증진시킨다.

설명가능 인공지능은 모델 해석 가능성에 도움을 준다. 설명가능 인공지능은 모델이 어떻게 작동하는지를 설명할 수 있습니다. 이는 모델의 구조나 특성 간의 관계를 이해하는 데 도움이 된다. 특히, 도메인 전문가들이나 의사 결정을 내리는 자들이 모델의 결과를 신뢰하기 위해서는 모델이 어떻게 작동하는지를 이해하는 것이 중요하다. 설명가능한 인공지능은 이러한 이해를 증진시킬 수 있다.

설명가능 인공지능은 모델의 구조나 입력 데이터에 대한 이해력을 증진시킨다. 이는 모델을 최적화하고 성능을 향상시키는 데 도움이 된다. 또한, 설명가능 인공지능을 사용하여 모델을 해석하고 개선함으로써 모델의 성능을 향상시킬 수 있다.

4.1.6. 설명가능 인공지능이 책임 있는 AI와의 관련성

설명가능 인공지능(XAI)과 책임감 있는 인공지능(AI Ethics) 사이에는 밀접한 관련성이 있다. 설명가능 인공지능과 책임 있는 인공지능은 유사한 목표를 가지고 있지만 서로 다른 접근 방식을 취한다. 설명가능 인공지능은 계산된 후의 인공지능 결과를 살펴보고, 책임 있는 인공지능은 결과가 계산되기 전에 AI 알고리즘을 책임 있게 만들기 위해 기획 단계에서 AI를 살펴본다. 책임 있는 인공지능은 인공지능 기술이 사회에 미치는 영향을 고려하고, 이러한 영향이 사회적 가치와 윤리적 원칙에 부합하도록 보장하는 데 초점을 맞춘 학문 분야이다. 여기에는 투명성, 공정성, 개인 정보 보호, 안전성 등 다양한 측면이 포함된다.

설명가능 인공지능은 책임 있는 인공지능의 목표를 달성하기 위한 도구로서 중요한 역할을 한다. 왜냐하면 설명가능 인공지능은 모델의 내부 동작과 의사 결정 프로세스를 이해하고 설명할 수 있는 기술이기 때문이다. 이러한 설명은 모델이 내린 예측이나 결정에 대한 투명성을 제공하고, 모델의 동작이 공정하고 투명하다는 것을 보장한다.

또한 설명가능 인공지능은 모델의 편향성을 탐지하고 이를 교정하는 데에도 도움을 줄 수 있다. 설명가능 인공지능을 통해 모델이 어떤 특성에 주로 의존하는지, 특정 그룹에 대해 불공정한 예측을 내리는 경향이 있는지 등을 발견할 수 있다. 이를 통해 모델을 조정하고 개선하여 공정성을 높일 수 있다.

또한 책임 있는 인공지능은 모델이 내린 결정에 대한 책임을 명확하게 하는 것도 중요하다. 설명가능 인공지능은 모델의 내부 동작을 이해하고 설명함으로써 모델이 내린 결정에 대한 책임을 추적하고 할당하는 데 도움이 된다. 이는 모델이 잘못된 결정을 내렸을 때 책임을 물을 수 있도록 하여 인공지능 시스템의 책임성을 강화하는 데 도움이 된다.

요약하면, 설명가능 인공지능은 책임 있는 인공지능의 목표를 달성하는 데 중요한 역할을 한다. 모델의 투명성과 공정성을 증진시키고, 모델의 내부 동작을 이해하여 모델의 책임을 추적하고 할당하는 데 도움이 된다. 따라서 설명가능 인공지능은 책임 있는 AI의 핵심 요소 중 하나로 인식되고 있다.

4.2. 환경과학 분야의 설명가능 인공지능 사례 연구

환경과학 분야에서의 설명가능 인공지능에 관한 연구는 아직 초기단계이다. 그러나 관련 연구 및 관련 분야에서 다음과 같은 논문들이 있을 수 있습니다:

4.2.1 기상예측 정확도 향상을 위한 사례 연구

최근 몇 년 동안 새로운 인공지능 기술이 등장하고 AWS, 레이더 및 위성에서 더 많은 관측 데이터가 등장함에 따라 심층학습은 기상 분야에서 매우 광범위하게 활용되고 있다. 딥러닝은 강력한 데이터 학습 능력과 복잡한 구조물의 특징 포착 능력을 갖추고 있어 현재 기상 분야에서 중요한 위치를 차지하고 있으며 기상 연구에서도 화두가 되고 있다.

기상예측 정확도를 향상시키기 위해 설명가능 인공지능을 적용한 연구는 그 사례가 많지는 않다. 그러나 가뭄, 호우, 등 다양한 기상분야에서 설명가능 인공지능 기법을 적용하는 시도가 이루어지고 있다(McGovern et al., 2019).

4.2.1.1. 호우

Renault and Mehrkanoon (2023)은 Small Attention Residual UNet (SAR-UNet) 사용하여 강수 및 구름 상태 예측 모형을 개발하였다. SAR-UNet이 30-180분까지의 강수 예측 결과는 이전에 개발된 모형들에 비해 우수한 성능을 보였다. Grad-CAM 기법을 활용하여 히트맵을 작성하였다(Fig. 4.2.1.). 히트맵을 통해 입력자료의 어떤 부분이 가장 중요한지, 이러한 정보가 어떻게 결합되어 최종 예측을 제공하는

Fig. 4.2.1. Activation heatmaps obtained through the use of Grad-CAM(left: encoder, right: decoder)

지를 파악할 수 있다.

Fig. 4.2.1.(left)의 encoder의 depth 0, 1, 2는 마지막 입력 자료가 가장 강한 강수가 발생한 지역에 집중되었다. 특히, encoder depth 0에서는 매우 높은 강수가 발생하는 지역만 활성화되고 있으며, encoder depth 2에서는 강수가 있는 지역에 해당하는 더 넓은 영역이 활성화 되어 있다. encoder depth 3,4 및 decoder depth 3에서는 추상적인 형태로 활성화되는 것처럼 보이고, 몇 개의 점이 크게 활성화되며 나머지는 활성화되지 않았다. Fig. 4.2.1.(right)의 decoder의 마지막 세 레벨 (depth 2, 1, 0)은 모델의 예측결과와 매우 유사하다. 강수강도가 약한 지역에서 강한 지역으로 서서히 변하는 현모습을 확인할 수 있다.

4.2.1.2. 열대 저기압 (Tropical Cyclone)

Wang and Li (2023)는 전구 해양의 적외선 영상자료를 사용하여 열대 저기압 (Tropical Cyclone)의 반경을 추정하기 위한 딥러닝 모델을 개발했다. 2004-2016년까지 총 63,675개의 열대저기압 영상자료를 수집하여, 모델 훈련에 2004-2012년, 검증을 위해 2013-2014년, 테스트를 위해 2015–2016년의 자료를 사용하였다.

Fig. 4.2.2. Original images and heat maps of (a) tropical storm and (b-e) category 1-4

열대 저기압의 베스트 경로 자료와 딥러닝 모델을 통해 산출된 열대 저기압 경로 예측 결과를 비교한 결과, 기존 방법에 비해 개선된 결과를 확인할 수 있다. 또한, 딥러닝 기반 모델 결과를 해석하기 위한 다양한 시각화 기법을 활용했다. 그 결과 열대 저기압의 중심, 구름 및 열대 저기압의 나선 구조가 모델 성능에 영향을 미치는 주요 요소였다. Fig.4.2.2는 현재시간과 3시간 전의 입력 자료와 SHAP heatmap, saliency heatmap을 나타낸다. 모델이 구름, 열대 저기압 눈의 나선 구조 및 낮은 밝기 온도와 관련이 큰 것을 SHAP heatmap을 통해 확인할 수 있다. 특히, 모델은 열대 저기압 구름 영역의 가장자리와 관련이 있음을 확인했다. Fig. 4.2.2.(a, c)를 통해 열대 저기압의 바람 반경을 추정하는 데 나선구조가 중요함을 딥러닝 모델 결과 해석을 통해 파악할 수 있다.

saliency heatmap은 입력자료의 개별 픽셀과 출력영상 사이의 관계를 파악하는데 도움이 된다. saliency 히트 맵 분석을 통해 열대 저기압의 중심, 구름 및 열대 저기압 나선 구조가 모델 성능에 영향을 미치는 주요 요소임을 파악할 수 있다.

4.2.1.4. 가뭄

다양한 위험기상 중에서 가뭄에 대한 정의도 부족하고, 기후 변화로 인해 시·공간적으로 가뭄에 큰 영향을 미치고 있기 때문에 이를 예측하는 것은 매우 어려운 과제이다. 가뭄은 수문, 기상, 기후 변수 까지 다양한 요인에 따라 달라지기 때문에 예측이 매우 어려운 기상 현상이다.

Dikshit and Pradhan (2021)은 호주의 주요 농업지역인 뉴사우스웨일즈 지역을 대상으로 CNN과 Bi-LSTM의 두 구조의 특징을 결합한 하이브리드 모형을 사용하여 가뭄예측 모형을 개발하였다. 1901년부터 2018년까지 월강수량 및 다양한 기후지수를 변수로 사용하였으며, 1901~1991년은 훈련, 1992~2001년은 검증, 2002~2018년은 테스트에 사용되었다. 이렇게 개발된 모델의 결과를 설명하기 위해 SHAP 기법을 적용하였다.

1997~2009년의 13년간 호주에서는 최악의 가뭄이 발생하였다. 이 기간 동안 다양한 변수가 가뭄(SPI)에 미치는 영향력에 대하여 분석하기 위해 SHAP force plot을 작성하였다. Fig. 4.2.1.(a)에서 강우량, 남반구 극진동(Southern Annular Mode, SAM), Nino 3.4가 모델 성능을 높이는 변수였으며, 그 중 강우량이 주요 기여요인이었다. 건조도가 가장 심한 조건(Fig. 4.2.1.(b))의 경우 강수량이 모델 결과를 증가시키면서 남방진동지수(Southern Oscillation Index, SOI)를 제외한 기후 지수가 모델 결과를 감소시킨다. 건조도가 보통인 조건(Fig. 4.2.1.(c))의 경우 인도양 쌍극진동(Indian Ocean Dipole, IOD)와 남방진동지수는 모델 결과를 감소시켰고 강수량, Nino 4, Nino 3.4 및 남반구 극진동과 같은 다른 예측 변수는 모델 결과를 증가시켰다. 가뭄이 없는 조건(Fig. 4.2.1.(d))에서는 강수량, Nino 3, Nino 3.4, SOI 및 IOD가 모델 결과를 증가시키고 SAM은 모델 결과를 감소시켰다.

Fig. 4.2.1. Individual force plots for different drought and non-drought conditions.

이 연구결과가 물리 모델 결과와 비교적 일치한다는 것을 확인하였으며, SHAP 기법을 사용함으로써 다양한 가뭄 발생 조건에 따라 예측 모델의 변수로서 기후 변수가 중요하다고 하였다.

5. AI 기반 설명 인터페이스

5.1. HCI의 정의

인공지능(AI)은 인간처럼 생각하고 행동하는 것을 목표로 개발됐다. 하지만 아직까지는 단독으로 일을 처리하진 못한다. 어떤 것을 알고리즘에게 요구할 것인지도 사람이 고르고, 알고리즘의 결과물을 받아들일지 말지에 대한 최종 결정권자도 여전히 사람이다. AI의 능력을 사람이 잘 활용할 수 있도록, 사람에 대한 연구도 동반되어야 한다.

알고리즘이 데이터를 분석한 뒤, 별다른 설명 없이 “정확도가 99%”라며 결과물만 사람에게 제공한다면, 사람은 그 알고리즘의 대답만을 믿고 반영하기 어려울 것이다. 정확도가 아무리 높아도, 사용자 각자가 느끼는 심리적 신뢰도는 각각 다르기 때문에 근거가 필요하다. 따라서 최근에는 AI의 의사결정 과정에 대해 설명 가능 인공지능이 큰 관심을 받고 있다. 그러나 단순히 인공지능의 결과가 근거와 함께 제공된다고 해서 사용자가 100% 만족한다고 할 수는 없다. 따라서 인공지능을 활용한 시스템 개발 시 사용자의 입장에서 인공지능을 효과적으로 받아들이고 사용하기 위한 기술도 적용해야한다.

이와 같이 사람의 입장에서 기술을 어떻게 받아들이고 더 잘 활용할 수 있을지에 대해 적극적으로 연구하는 분야 중 하나가 인간-컴퓨터 상호작용(Human-Computer Interaction, HCI)이다(Waddell et al., 2015). HCI는 사용자 중심 설계(User-Centered Design), 사용자 경험 디자인(User Experience Design), 상호작용 디자인(Interaction Design) 등의 다양한 학문과 기술을 포함하고 있다. 따라서 HCI는 사람과 상호작용이 가능한 시스템이 사람과 잘 어울려서 주어진 목표를 달성할 수 있도록 이 둘 사이의 상호작용 방법과 절차를 설계하고, 평가하며, 구현하는 분야라고 정의할 수 있다. 여기서 컴퓨터는 사람과 상호작용이 가능한 모든 시스템을 말하며, 사람은 개인부터 소그룹, 더 나아가 전체 사회 구성원 등을 모두 포함한 개념이다.

지금까지 HCI 연구분야에서는 기계를 활용하는 사람(사용자)의 경험에 대해 연구하고, 사람의 습관이나 감각에 잘 맞는 인터페이스를 개발하고, 개인 맞춤형 플랫폼의 디자인을 중점적으로 다뤄왔다. 그러나 최근에는 이 ‘기계’의 위치에 사람을 대체하는 것이 목표인 기술인 ‘인공지능’이 그 자리를 차지하는 추세이다. 인간처럼 말하는 ‘챗봇’, 사용자와 함께 그림을 그리는 ‘AI 화가’와의 경험에 대한 이해, ‘인공지능(전문가)’의 부족한 설명을 사용자가 받아들이도록 하는 방법 등에 대한 연구가 HCI 분야를 중심으로 이어지고 있다. 알고리즘 설계 중심의 인공지능 학계에 비해, 더 융합적인 사고와 인문학적 상상력을 필요로 하는 내용이 HCI 연구 분야에서 주로 다루어진다.

HCI는 사용자가 컴퓨터와 상호작용하는 방식을 이해하고 개선하기 위해 인간의 심리학, 인지과학, 사회학 등과 같은 다양한 학문적 영역과 상호작용한다. 이를 통해 사용자가 기기를 효과적으로 사용하고, 유용하고, 만족스러운 경험을 얻을 수 있도록 설계된 인터페이스와 소프트웨어를 개발하는 것이 목표이다.

또 다른 HCI의 목표는 해당 시스템을 이용하는 사람들에게 최적의 경험을 제공하는 것에 있다. 이를 위한 조건은 유용성, 사용성, 감성으로 분류할 수 있다. 먼저 유용성은 사람들이 시스템을 이용해서 하고자 하는 과업을 효과적으로 달성할 수 있는가를 의미한다. 사용성은 시스템을 사용하는 과정이 효율적인지 여부이다. 두 개념은 비슷하지만 유용성은 과업 달성을 중심으로 결과에 초점을 두었고, 사용성은 사용과정의 편리성에 초점을 두고 있다는 차이가 있다. 마지막으로 감성은 시스템을 사용하면서 사람들이 심리적으로 얼마나 적절한 느낌을 받았는지를 살펴보는 개념이다.

Fig. 5.1.1. The goals of HCI.

현재의 HCI+AI 연구 상황은 아직 ‘초기 단계’이다. 최근 인공지능의 발전 속도에 비해 실생활에서는 잘못된 사례나 논쟁이 연이어 발생하고 있다. 따라서 HCI 분야에서 강조하는 원칙들을 반영하면 보다 사용자 친화적인 인터페이스를 만들 수 있을 것이다. 투명하고, 설명 가능하고, 신뢰감을 주며, 안전하고, 치우치지 않은 AI를 연구하는 데에 인간을 중심에 둔 사고 과정과 연구 방법이 반드시 필요하다.

5.2. 인공지능 시스템을 위한 설명인터페이스의 구성요소

AI 기술의 발전으로 사용자들은 복잡한 AI 시스템과 상호 작용해야 한다. 이와 같이 복잡한 시스템은 사용자가 이해하기 어렵거나 불투명할 수 있다. 따라서 이 사용자가 이 시스템을 잘 이용할 수 있도록 설명 인터페이스가 필요하다. 이는 사용자가 시스템의 작동 방식을 이해하고 결과를 해석할 수 있도록 도와준다.

이를 위해 다양한 요소를 고려할 필요가 있다. 먼저, 사용자가 쉽게 이해하고 조작할 수 있는 직관적인 인터페이스 디자인이 필요하다. '직관적 디자인'은 사용자가 쉽게 이해하고 조작할 수 있는 디자인을 의미한다. 직관적 디자인을 위해서 다음과 같은 조건이 충족되어야 한다.

① 간결하고 명확한 레이아웃: 사용자가 쉽게 찾고 접근할 수 있도록 인터페이스 요소들이 명확하게 배치되어야 한다. 예를 들어, 주요 기능들은 화면 상단에 위치하여 눈에 잘 띄도록 배치할 수 있다.

② 일관성 있는 디자인: 인터페이스의 모든 부분이 일관된 디자인 원칙을 따라야 한다. 어떤 기능을 위한 버튼(항목)의 모양과 크기, 색상 사용 등이 일관되면 사용자는 패턴을 파악할 수 있기 때문에 더 쉽게 인터페이스를 사용할 수 있다.

③ 피드백 제공: 사용자의 동작에 대한 피드백이 즉각적으로 제공되어야 한다. 버튼을 클릭했을 때 화면 전환 등의 동작에 대한 시각적 피드백은 사용자에게 직관적으로 결과를 알려준다.

④ 친숙한 아이콘과 라벨: 사용자에게 익숙한 아이콘과 라벨을 사용하여 기능을 표시하는 것이 좋다. 예를 들어, 홈 아이콘은 집 모양의 이미지로 표시되고, 설정 아이콘은 톱니바퀴 모양 등으로 표시되는 등 익숙하고 쉽게 짐작되는 아이콘으로 표시할 수 있다.

⑤ 반복되는 작업 최소화: 사용자가 반복적으로 같은 작업을 수행할 필요가 없도록 인터페이스가 최적화되어야 한다. 예를 들어, 이전에 사용한 옵션을 기억하여 사용자가 동일한 작업을 반복할 때 불필요한 입력을 줄여주는 것이다. 위와 같은 디자인 원칙을 따라서 인터페이스를 디자인하면 사용자는 더 빠르게 인터페이스를 익히고, 편리하게 사용할 수 있다.

둘째, 사용자와의 원활한 상호 작용을 위해 자연스러운 언어와 복잡하지 않은 문장 구조를 사용하여 인공지능의 작동 방식을 설명해야 한다. 예를 들어 음성기반 인공지능 비서(Siri(애플), 빅스비(삼성), 지니(KT) 등), 인공지능 챗봇 고객서비스 등은 사용자의 질문을 자연스러운 문장구조로 이해하고, 더 나은 응답을 제공하기 위해 자연스러운

Fig. 5.2.1. Examples of chatbot and AI assistant

언어와 문장구조를 사용한다(Fig. 5.2.1.).

셋째, 사용자가 정보를 시각적으로 이해하고 쉽게 파악할 수 있도록 그림, 차트, 그래프, 아이콘, 색상 등을 적절하게 활용하여 정보를 시각적으로 전달해야 한다. 예를 들어 사용자가 특정지역에서 일정 기간 동안의 상품 판매량에 대한 정보를 원하는 경우, 판매 데이터를 작성한 막대그래프를 제공함으로써 시간에 따른 판매량의 변화를 직관적으로 파악할 수 있다. 또한 지역별 아파트 임대 시세를 시각적으로 보여주거나, 그 위치를 지도에 표시하여 사용자가 원하는 지역의 매물을 파악하는데 도움을 줄 수 있다(Fig. 5.2.2.).

또한 인공지능 시스템을 설계할 때 각종 기능이나 동작을 나타내는 아이콘을 사용하거나, 시각적 피드백을 제공해야 한다. 적절한 아이콘을 사용해서 사용자가 빠르게 기능을 인식하고 사용할 수 있다. 버튼 클릭 시 색상이 변하는 것과 같이 사용자의 상호 작용에 대한 시각적 피드백을 즉각적으로 제공하여 사용자가 작업이 제대로 이루어졌는지 쉽게 확인할 수 있다. 또한, 오류가 발생했을 때 붉은색으로 경고 메시지를 제공하여, 사용자가 즉시 인식하고 조치를 취할 수 있도록 도와준다. 이와 같이 시각적 요소를 통해 사용자가 정보를 빠르게 이해하고 판단할 수 있도록 도와줄 수 있으며, 사용자 경험이 향상되어 작업의 효율성이 높아진다.

Fig. 5.2.2. Information about apartments including price and location (http://www.apartment.com)

넷째, 인공지능과 사용자가 상호 작용을 하는 인터랙티브(Interactive) 기능이 필요하다. 대화형 챗봇의 경우 사용자가 질문을 입력하면 챗봇이 자동으로 해당 질문에 대한 답변을 제공하고, 사용자가 추가 질문을 하면 챗봇이 이전 대화를 참고하여 추가 질문에 대한 답변을 제공하는 등 상호작용을 해야한다. 검색 엔진의 경우, 사용자가 검색어를 입력하는 도중에 검색 엔진은 입력한 내용을 기반으로 가능한 검색어를 자동 완성한다. 이를 통해 사용자는 보다 쉽게 원하는 정보를 신속하게 찾을 수 있다. 마지막으로 사용자가 그래프의 특정 부분을 클릭하거나 마우스 커서를 두면 해당 데이터에 대한 추가 정보가 표시된다. 예를 들어, 시계열 데이터를 보여주는 차트에서 사용자가 특정 시점을 클릭하면 해당 시점의 세부 정보를 팝업으로 나타날 수 있다. 이러한 인터랙티브 기능은 사용자가 시스템과 자연스럽게 상호 작용할 수 있도록 도와주며, 사용자 경험을 향상시킨다.

다섯째, 사용자가 작업의 결과를 이해하고 향상시키기 위해 시스템으로부터 피드백을 받을 수 있도록 한다. 사용자가 작업을 완료하면 시스템은 작업이 성공적으로 완료되었음을 알리는 메시지를 표시한다(Fig. 5.2.3.). 그리고 사용자가 잘못된 입력이나 작업을 시도하면 시스템은 사용자에게 오류 메시지를 표시하여 오류의 원인을 설명하고 수정 방법을 안내한다. 예를 들어, 잘못된 사용자명이나 비밀번호를 입력하면 로그인 페이지에서 "잘못된 사용자명 또는 비밀번호입니다. 다시 시도해주세요"라는 오류 메시지가 표시된다. 작업처리가 진행 중인 경우 시스템은 상태 표시줄을 통해 작업의 진행 상황을 시각적으로 표시할 수 있다. 예를 들어, 파일 업로드(다운로드)가 진행 중이면 상태 표시줄이 진행 바 형태로 표시되고, 업로드(다운로드)가 완료되면 "업로드(다운로드) 완료" 메시지가 표시된다. 마지막으로 사용자가 마우스를 특정 요소 위로 올리면 시스템은 말풍선을 표시하여 해당 요소에 대한 설명이나 추가 정보를 제공한다. 예를 들어, 웹 페이지에서 특정 메뉴나 버튼 위로 마우스를 올리면 메뉴의 항목, 버튼의 기능이나 단축키를 설명하는 말풍선이 표시된다. 이와 같은 피드백 메커니즘은 사용자가 작업을 더욱 효율적으로 수행할 수 있도록 도와주며, 사용자 경험을 향상시킨다.

Fig. 5.2.3. Example of feedback from the system (http://journal.ametsoc.org)

여섯째, 학습 기능을 통해 사용자의 행동이나 피드백을 바탕으로 시스템이 학습하고 개선될 수 있도록 한다. 예를 들어 사용자가 특정 영화나 제품을 구매하거나 시청한 경우, 시스템은 해당 사용자의 취향을 파악하여 비슷한 항목을 추천한다. 예를 들어, 온라인 스트리밍 서비스에서 사용자가 특정 장르의 영화를 자주 시청하면 해당 장르의 영화를 더 자주 추천하게 된다. 이러한 학습 기능은 사용자의 경험을 개선하고, 시스템의 성능을 향상시키는 데 중요한 역할을 한다. 사용자와 시스템 간의 상호 작용이 더욱 효과적으로 이루어질 수 있도록 도와준다.

5.3. 설명가능 인공지능의 활용을 위한 HCI의 필요성

HCI는 설명가능 인공지능을 사용자가 이해하고 기계와 상호 작용할 수 있도록 돕는 핵심적인 역할을 한다. 사용자가 시스템의 의사 결정 및 예측을 이해하고 투명하게 피드백을 주고받을 수 있도록 설계된 HCI는 사용자의 신뢰를 증진시키고 향상된 상호 작용을 제공하여 더 나은 사용자 경험을 할 수 있도록 도와준다.

설명가능 인공지능은 사용자가 모델의 예측을 이해하고 신뢰할 수 있도록 돕는 중요한 역할을 한다. 사용자가 인공지능 모델의 작동 방식을 이해하고 그 예측 결과를 수용할 수 있을 때, 모델이 제공하는 정보를 보다 효과적으로 활용할 수 있다. HCI는 사용자의 인터페이스와 상호작용을 설계하는 데 도움을 주므로, 설명 가능한 AI의 인터페이스 설계에 필수적이다.

설명가능 인공지능은 모델의 동작 및 결정 과정을 설명함으로써 사용자에게 모델의 신뢰성을 제공한다. HCI는 사용자가 인공지능 시스템에 대한 신뢰를 갖도록 도와주는 방법을 개발하고 테스트하는 데 중요한 역할을 한다. 따라서 사용자가 모델의 예측을 이해하고 모델이 어떻게 작동하는지 알고 있다면, 모델에 대한 신뢰도가 높아질 것이다.

HCI는 설명가능 인공지능을 통해 제공되는 정보를 사용자가 실제 의사 결정에 활용하는 데 도움을 줄 수 있다. 모델의 해석 가능성을 향상시키는 인터페이스 및 시각화 도구는 사용자가 모델의 결정에 대해 이해하고 적절히 대응할 수 있도록 돕는다.

HCI는 설명가능 인공지능 시스템의 사용성 및 효과를 평가하고 개선하는 데 사용될 수 있다. 사용자 피드백 및 행동 데이터를 기반으로 인터페이스와 시스템을 조정하고 개선함으로써 사용자 경험을 향상시킬 수 있다.

이와 같이 HCI는 설명가능 인공지능의 사용성, 신뢰성 및 효과를 향상시키는 데 중요한 역할을 한다. 사용자 중심적 설계와 상호작용 기술을 통해 설명가능 인공지능 시스템을 보다 효과적으로 개발하고 의사 결정에 도움을 받을 수 있다.

5.4. 설명가능 인공지능을 위한 HCI 설계 원칙

설명가능 인공지능을 위한 HCI 설계는 사용자가 인공지능 모델의 작동 방식을 이해하고 상호작용할 수 있는 인터페이스를 구축하는 것을 중점으로 한다. 이를 위해 다음과 같은 설계 원칙을 적용해야 한다( Helander et al., 1997).

① 직관적이고 이해하기 쉬운 시각화: 사용자가 모델의 예측 및 의사 결정 과정을 이해할 수 있도록 도와주는 시각화 요소를 설계한다. 이러한 시각화는 모델의 입력 데이터, 출력 결과, 중요한 특징 및 예측에 영향을 미치는 요인 등을 명확하게 보여줘야 한다.

② 설명 가능성 기능 제공: HCI 설계에서는 모델의 작동 방식을 설명하고 모델의 예측을 이해할 수 있는 기능을 제공해야 한다. 이는 모델이 어떻게 작동하는지에 대한 해석 가능한 설명을 제공하거나, 모델의 결정에 영향을 미치는 입력 변수의 중요성을 보여주는 기능 등을 포함할 수 있다.

③ 상호작용 및 피드백: 사용자가 모델의 예측에 대한 의문이나 이해를 돕기 위해 상호작용할 수 있는 기능을 제공한다. 또한 사용자의 피드백을 수집하여 모델을 개선하고 사용자의 요구에 맞게 조정할 수 있다.

④ 유용한 문서 및 지침 제공: HCI 설계는 사용자가 모델을 올바르게 이해하고 사용할 수 있도록 돕기 위해 유용한 문서, 지침 및 튜토리얼을 제공할 필요가 있다. 이를 통해 사용자는 모델의 기능 및 제약사항에 대해 잘 이해하고 적절하게 활용할 수 있다.

⑤ 사용자 테스트 및 평가: HCI 설계는 사용자 테스트와 평가를 통해 모델의 사용자 경험을 개선하는 데 중요한 역할을 합니다. 사용자의 요구 사항을 이해하고 모델의 설명 가능성 및 효과를 평가하여 설계를 지속적으로 개선하는 것이 중요하다.

위와 같은 설계 원칙을 준수하여 개발한 설명 인터페이스는 여러 가지 장점이 있다. 먼저 사용자 이해도를 향상시켜준다. HCI 설계 원칙에 따라 개발된 설명 인터페이스는 사용자가 그 작동 방식을 이해하기 쉽다. 사용자는 시스템의 예측이나 의사 결정에 대한 근거를 이해하고 신뢰할 수 있어서, 시스템을 더 효과적으로 활용할 수 있다. 두 번째로 설명 인터페이스는 사용자와의 상호 작용을 더욱 강화시킨다. 사용자가 시스템에게 질문을 하고 피드백을 제공하는 작업을 통해 시스템의 동작을 이해하고 개선할 수 있다. 세 번째로 사용자에게 신뢰감을 제공한다. 사용자는 시스템이 어떻게 동작하는지 이해하고 있기 떄문에 시스템의 예측이나 의사 결정에 대한 신뢰도가 높아진다. 마지막으로 사용자가 의사 결정을 내릴 때 도움이 된다. 사용자는 시스템이 제공하는 정보를 이해하고 활용하여 더 나은 의사 결정을 내릴 수 있다.

6. 윤리적이고 신뢰할만한 인공지능

6.1. 인공지능 윤리의 중요성

인공지능 윤리는 이해관계자(개발자부터 정부 관계자까지)가 책임감 있게 인공지능 기술을 개발하고 사용하기 위해 채택하는 일련의 지침과 원칙이다. 이는 인공지능에 대해 안전하고 보안이 유지되며 인도적이며 환경 친화적인 접근 방식을 취하는 것을 의미한다.

기술발전에 있어서 인공지능 윤리는 편견이 적고 공정성이 높은 세상을 조성하는데 도움이 될 수 있다. 인공지능 기술은 인간의 지능을 강화하거나 대체하기 위한 것이기 때문에 윤리가 중요하다. 그러나 기술이 인간의 삶을 복제하도록 설계되면 인간의 판단을 흐리게 할 수 있는 동일한 문제가 기술에 스며들 수 있다. 편향되거나 부정확한 자료를 기반으로 구축된 인공지능 프로젝트는 특히 대표성이 낮거나 소외된 집안과 개인에게 해로운 결과를 초래할 수 있다. 또한 인공지능 알고리즘과 기계학습 모델이 서둘러 구축되면 개발자와 제품관리자가 인공지능 모델이 학습한 편견을 수정하고 관리하는 것이 어려워질 수 있다. 따라서 이러한 위험을 완화하기 위해 개발 프로세스 중에 윤리강령을 적용하는 것이 필요하다.

인공지능 윤리를 위반한 예시에는 인종 편견이 내재된 안면인식기술, 범죄예측 알고리즘이 있다. 이와 같은 기술은 특정 인종이나 사회 경제적으로 취약한 집단에 대해 편견을 보여주거나 차별적인 결과를 내놓을 수 있다. 예를 들어, 안면인식기술이 흔히 사용되는 범죄 감시나 인증 시스템에서는 특정 인종이나 피부색에 대한 편견이 반영될 수 있다. 이는 안면인식기술이 훈련될 때 사용된 데이터 세트가 특정 인종에 대한 자료가 부족하거나 편향되어 있을 때 발생할 수 있다.

또한, 범죄예측 알고리즘은 종종 범죄율이 높은 지역에 과도하게 집중되거나, 특정 인구 집단에 대한 편견을 보여줄 수 있다. 이러한 알고리즘이 잘못 사용되면, 무고한 사람들에게 불합리하게 의심을 받거나 사회적 불평등을 심화시킬 수 있다.

인공지능 윤리 위반 사례는 다음과 같다. Lensa AI 앱은 인공지능 기법을 사용하여 사람들의 영상으로부터 만화처럼 보이는 프로필 사진을 생성할 수 있다. 일부 사람들은 인공지능 모델이 사용한 디지털 아트를 만든 아티스트에게 충분한 대가를 지급하지 않는다는 이유로 Lensa AI 앱에 대해 비판했다. 또한 일부 언론에 따르면 Lensa AI 앱은 동의없이 인터넷에서 획득한 수십억장의 사진을 훈련에 사용했다고 한다.

또 다른 예는 사용자가 질문을 통해 상호작용할 수 있는 AI 모델인  ChatGPT이다. ChapGPT는 데이터와 답변을 찾기 위해 인터넷을 검색한다. 이와 관련한 윤리적인 딜레마는 사람들이 ChatGPT를 사용하여 코딩대회에서 우승하거나 에세이를 작성하는 등의 활동을 한다는 점이다. 또한 Lensa 앱은 이미지를 동의없이 무분별하게 사용한 것과 유사하게 텍스트를 동의없이 활용한다는 것이 비판을 받는 부분이다. 이러한 사례들은 인공지능 기술이 인간의 편견이나 차별을 반영하고 확대할 수 있음을 보여준다. 따라서 인공지능 시스템을 설계하고 구현할 때 이러한 윤리적 사항을 염두하고 개발하는 것이 필요하다.

최근 몇 년간 인공지능이 급속도로 성장하면서 거의 모든 산업에 영향을 미치면서 인공지능 윤리라는 주제가 더욱 필요하고 중요해졌다. 편견 없는 AI를 보장할 수 있는 방법, 향후 위험을 완화하기 위한 방안에 대한 잠재적인 해결책은 많지만 전 세계적으로 긍정적인 결과를 창출하려면 이해관계자가 책임감 있게 협력하여 행동해야 한다.

6.2. 인공지능 윤리 가이드라인과 규제

인공지능이 사회에서 점점 더 중요해짐에 따라 해당 분야의 전문가들은 새로운 인공지능 도구를 만들고 구현할 때 윤리적 경계가 필요하다는 점을 확인했다. 현재 이러한 규칙을 구축하고 시행할 대규모 관리 기관은 없지만 많은 글로벌 테크 기업은 자체 인공지능 윤리 또는 행동강령을 구축하고 수행하고 있다. 인공지능 윤리는 책임감 있고 공정한 인공지능의 개발과 사용을 안내하기 위해 사용하는 도덕적 원칙이라고 할 수 있다.

강력한 인공지능 윤리 가이드라인에는 편견 방지, 사용자 및 데이터의 개인정보 보호, 환경 위험 완화가 포함될 수 있다. 기업의 윤리강령과 정부주도의 규제 프레임워크는 인공지능 윤리를 구현할 수 있는 주요한 두 가지 방법이다. 두 접근방식 모두 윤리적 인공지능 문제를 다루고 기업의 윤리적 인공지능에 대한 정책기반을 마련함으로써 인공지능 기술을 규제하는데 도움이 된다.

보다 광범위하게는 인공지능 윤리에 대한 논의가 학술 연구와 비영리단체를 중심으로 진행되었다. 오늘날 IBM, Google, Meta와 같은 거대 기술기업은 막대한 양의 데이터 수집으로 인해 발생하는 윤리적 문제를 해결하기 위해 팀을 구성했다. 동시에 정부와 정부 간 기구에서는 학술연구를 바탕으로 규정과 윤리정책을 고안하기 위해 시작되었다.

6.2.1. AI의 윤리 국제 가이드라인

인공지능 기술의 발전·확산과 함께 인공지능 기술의 윤리적 개발·활용 역시 세계 각국과 주요 국제기구의 관심 대상이 되어 왔다. 인공지능 윤리를 다루는 국제적인 규정과 표준은 계속 발전하고 있다. 주요 국제기구 및 정부가 인공지능 윤리에 대한 가이드라인을 발표했다. 경제협력개발기구(OECD) 인공지능 권고안(‘19.5)을 비롯하여 유럽연합(EU) 등 세계 각국과 국제기구, 기업, 연구기관 등으로부터 다양한 인공지능 윤리 원칙이 발표되었다.

다수의 국가에서 인공지능 전략을 구축, 발표했다. 서양 국가와 중국이 인공지능에 접근하는 방식 사이에 큰 차이가 있었다. 서양에서는 주로 미국을 중심으로, AI의 위험에 주로 초점을 맞추고 해당 기술이 적절하게 관리되도록 적절한 기준이 처음부터 마련되도록 노력하고 있다. 반면에 중국은 배타적으로 연구 및 개발(R&D)에 초점을 맞추고 있고, 인공지능 개발로 인한 부정적인 결과를 제약하는 노력을 하지 않고 있다. 따라서 인공지능 분야에서 중국이 선도적으로 주도하고 있으며, 이러한 주도를 더욱 확대할 수 있는 능력을 가지고 있다. 반면에 미국과 다른 국가들은 ‘guard rail’을 구축하고 있다.

Denford et al.(2023)은 다양한 논문 및 문서에서 국가 간 인공지능 디자인, 배치에 대한 차이를 연구 정리했다. 문화적으로 유사한 국가에서 인공지능에 대한 대응방식에서 유사한 접근을 취했는지 분석했다. 이를 통해 상대적으로 유사한 몇 가지 사항이 있었으며, 이는 상대적으로 미성숙한 인공지능의 특성 때문이라고 밝혔다. 인공지능 국가전략을 발표한 34개 국가를 대상으로 자료관리, 알고리즘 관리, 인공지능 거버넌스, 역량개발, 산업, 공공서비스의 6가지 측면에서의 인공지능 전략을 분석하여 정리하였다. 이 6가지 요소는 한 국가가 인공지능 지배 및 관리(자료관리, 알고리즘 관리 및 인공지능 거버넌스), 인공지능 기술을 개발하는 방식(역량개발), 인공지능 노력을 어떻게 배치하거나 중점을 두는지(산업 및 공공서비스)를 대략적으로 반영한다(Fig. 6.2.1.).

Fig. 6.2.1. Categorization of six attributes of 34 countries’ national AI strategies as High, Midium, or Low

각 속성을 높음, 중간, 낮음으로 분류하고 군집화하여 각 국가의 인공지능 전략을 분석했다. 이를 통해 비슷한 접근방식을 채택한 국가를 분류했다. 또한 각 요소의 구성요소가 무엇인지를 분석하고 각 나라는 각 구성요소에 대한 논의의 부재 여부에 따라 등급을 매겼다. 캐나다와 중국은 모든 요소에서 낮은 점수였고, 인도와 미국은 모두 높은 점수였다. 여기서 특정 국가들이 인공지능의 약속을 실현하기를 우선시 하는 반면, 다른 국가들은 인공지능으로 인한 위험의 완화하는 것에 더 관심이 있는 것으로 나타났다. 미국이 가장 완벽한 인공지능 전략 중 하나를 가지고 있지만, 그것이 얼마나 성공적으로 실행될지는 아직 알려지지 않았다.

각 국의 인공지능 전략 분석을 통해 미국이 가장 완벽한 계획을 가지고 있다고 하더라도, 이것은 그 계획을 완전히 실행할 수 있는 능력을 의미하는 것은 아니다. 모든 것을 잘하려고 하는 것에는 몇 가지 단점이 있을 수 있다. 가장 중요한 사항에 집중하는 것을 방해할 수 있기 때문이다. 이 보고서를 포함한 다수의 연구를 통해, 중국은 이미 인공지능 개발에 대한 투자 전략에서 우위를 점하고 있으며, 투자 및 연구 개발 측면에서 미국과 거의 동등한 위치에 있는 인공지능 거대국가임을 확인했다. 캐나다, 오스트리아 및 네덜란드와 같이 시대에 뒤쳐진 국가들은 정책 및 능력에 재투자하고, 인공지능의 잠재적인 성장과 영향에 대한 인식을 할 것이다.

6.2.1.1. OECD 인공지능 권고안

경제협력개발기구(OECD) 인공지능 권고안은 OECD 회원국을 포함한 42개국이 OECD 이사회에서 만장일치로 채택하였다(OECD, 2019). 한국이 논의를 주도한 권고안은 법적 구속력은 없으나, 향후 인공지능·로봇 관련 기술의 중요 기준이 될 수 있을 것으로 예상되었다.

OECD 인공지능 권고안은 혁신적이고 신뢰할 수 있으며 인권과 민주적 가치를 존중하는 인공지능이라는 원칙을 담고 있다. 이 권고안에는 신뢰 가능한 인공지능에 대한 지표 개발과 진척도를 평가할 수 있는 근거 기반을 만들기 위한 조항도 포함되어 있다. 또한 신뢰가능한 인공지능에 대한 포괄적인 기본원칙을 제시한다. 권고안에서는 인공지능과 관련된 용어를 정의했고, 신뢰가능한 인공지능을 구현하기 위한 원칙과 국가정책 및 국제 협력방안으로 구성되어 있다. '인공지능 시스템은 법, 인권, 민주적 가치, 다양성을 존중하는 방식으로 설계되어야 하며, 인간이 개입할 수 있도록 하는 등 공정하고 정의로운 사회를 위한 안전장치를 포함해야 한다'고 권고하고 있다.

6.2.1.2. 유럽연합의 신뢰할 수 있는 인공지능 윤리 가이드라인

EU 집행위원회는 2019년 국제기구 차원에서 세계 최초로 AI 윤리 지침인 Ethics guidelines for trustworthy AI를 발표했다(EC, 2019). 이 지침의 목적은 신뢰할 수 있는 인공지능을 촉진하는 것이다. 신뢰할 수 있는 인공지능에는 다음과 같이 세 가지 구성 요소가 반드시 있어야 하며, 시스템 개발부터 운영, 종료의 전주기 동안 존재해야 한다. ① 모든 적용 가능한 법과 규정을 준수해야 한다. ② 윤리적이어야 하며, 윤리적 원칙과 가치를 준수하는 것을 보장해야 한다. ③ 기술적 및 사회적 관점에서 견고해야 한다. 좋은 의도를 가지고 있더라도, AI 시스템은 의도치 않은 피해를 일으킬 수 있기 때문이다.

구성 요소 자체는 필요하지만, 신뢰할 수 있는 인공지능을 달성하기 위해서는 충분하지 않다. 이상적으로는 세 가지 구성 요소가 조화롭게 작동하지만, 시스템 운영 중에는 서로 중복될 수 있다. 이러한 구성 요소 간에 긴장이 발생하는 경우, 사회는 이를 조화시키기 위해 노력해야 한다. 이 가이드라인은 신뢰할 수 있는 인공지능을 달성하기 위한 프레임워크를 제시한다. 이 프레임워크는 명시적으로 신뢰할 수 있는 인공지능의 첫 번째 구성 요소인 법적 AI에 대해 다루지 않는다. 대신, 윤리적이고 견고한 AI를 육성하고 확보하는 데 대한 지침을 제공한다. 모든 이해관계자를 대상으로 하며, 이 가이드라인은 윤리적 원칙의 목록을 넘어서 이러한 원칙이 사회 기술 시스템에서 어떻게 운영될 수 있는지에 대한 지침을 제공한다.

6.2.1.3. 미국 국립표준기술연구소(NIST)의 인공지능 편향식별 및 관리 기준 보고서

미국 국립표준기술연구소(NIST)는 2022년 3월 ‘인공지능 편향식별 및 관리기준 마련’ 보고서를 발간하였다(NIST, 2022). 인공지능 편향은 다양한 형태로 사회에 존재하며, 인공지능 시스템에 나타난 특정 편향은 개인과 조직, 사회에 대한 부정적 영향을 확대, 지속시킬 수 있으므로 이를 방지하기 위한 식별·관리가 필요하다고 하였다. NIST 보고서는 인공지능 편향 해결을 위한 과제와 권장지침을 제시하고, 사회·기술적 관점에서 인공지능 편향의 관리를 위해 거버넌스 차원에서 고려해야 할 지침을 다음과 같이 제시하였다.

① 잠재적인 편향 문제가 감지되는 경우 담당 직원에게 경고할 수 있도록 모니터링할 수 있는 추가 시스템 배포 ② 부정확하거나 잠재적으로 유해한 결과를 표시하고, 오류 또는 위해에 대해 최종 사용자가 배상을 청구할 수 있는 채널 구축 ③ 인공지능 생명주기 모든 단계에서 주요 역할, 책임 및 과정을 다루는 정책 및 절차 마련 ④ 감독 담당자가 시스템의 잠재적 편향에 대한 정보에 입각하여 위험 수준에 기반한 결정을 내릴 수 있도록, 시스템 메커니즘에 대한 해석 가능한 설명을 포함하는 표준화된 문서 개발 ⑤ 인공지능 시스템의 편향 관리 책임 명확화 ⑥ 인공지능 편향의 위험을 관리하는 데 리스크 회피가 아닌 완화가 가장 효과적인 요소임을 조직은 인식해야 하며, 이러한 접근은 편향의 리스크를 신속하게 완화하는 데 도움이 될 수 있다고 하였다.

6.2.1.4. 바이든 정부의 AI 행정명령

조 바이든 미국 대통령이 인공지능(AI) 관련 안전과 위험을 관리하기 위한 행정 명령을 발표했다. 조 바이든 정부는 AI의 안전과 보안에 대한 새로운 표준을 세우고, 시민들의 권리를 보호하기 위한 AI 행정명령을 발표했다.

이번 행정명령은 "가장 강력한 AI 시스템 개발자들이 그들의 안전한 테스트 결과와 다른 중요한 정보를 미국 정부와 공유하도록 요구한다"라고 설명했다. 또한 "국가 안보, 국가 경제 안보 또는 국가 공중 보건 및 안전에 심각한 위험을 초래하는 모든 기초 모델을 개발하는 회사들은 모델 훈련 때 반드시 연방 정부에 알려야 하며, 모든 안전 테스트 결과를 공유해야 한다"고 명시했다. 이번 행정 명령을 통해 인공지능이 진짜 콘텐츠와 거의 구별하기 힘든 딥페이크 이미지와 비디오와 같은 온라인 허위 정보가 넘쳐나는 것을 막게 될 것이라고 했다.

또한 인공지능 개발 회사들이 기술을 악의적으로 사용하는 것을 막기 위해 이를 관련부처에 보고해야 한다. 또한 클라우드 서비스 제공업체들에게는 외국인들이 대형 인공지능 시스템을 훈련시키기 위해 그들의 서비스를 이용할 때 이를 90일 이내 정부에 통보하도록 요구한다.

바이든 정부의 인공지능 행정 명령은 빠르게 성장하는 이 기술에 대한 규제 공백을 메우기 위한 것이다. 특히 이번 행정 명령은 사이버 보안 위협과 같은 국가 안보 위험을 관리하는데 활용될 것이다.

위에 언급한 것 외에도 AI 윤리에 대한 국제적인 논의와 표준화 노력이 계속되고 있다. 이러한 노력은 전 세계적인 이해관계자들 간의 협력을 촉진하고 인공지능의 윤리적 사용을 촉진하는 데 중요한 역할을 한다.

6.2.2. 국내 규정 현황

국내에서도 인공지능 윤리의 중요성에 대해 인식하고 산업계, 학계, 정부 차원에서 인공지능 윤리에 대해 가이드라인 및 규정을 발표하였다. 대한민국 정부는 2019년 제53회 국무회의에서, 전 부처가 마련한 「인공지능(AI) 국가전략」을 발표하였다(관계부처합동, 2019). 이를 통해 AI 윤리 정립으로 사람 중심 AI 실현해야 한다고 하였다.

과학기술정보통신부는 국내외 주요 인공지능 윤리원칙을 분석하여 ‘인간성을 위한 인공지능(AI for Humanity)’를 목표로 하는 윤리기준 초안을 마련하였다(관계부처합동, 2020). 이렇게 마련된  ｢인공지능 윤리기준｣은 윤리적 인공지능을 실현하기 위해 정부·공공기관, 기업, 이용자 등 모든 사회구성원이 인공지능 개발~활용 전 단계에서 함께 지켜야 할 주요 원칙과 핵심 요건을 제시하였다.

｢인공지능 윤리기준｣은 윤리기준이 지향하는 최고 가치를 ‘인간성(Humanity)’으로 설정하고 이를 위한 3대 기본원칙과 10대 핵심 요건을 제시하고 있다.

Fig. 6.2.1. AI 윤리 규범 및 가이드라인 마련 현황

‘인간성(Humanity)’을 구현하기 위해 인공지능 개발 및 활용 과정에서 ① 인간의 존엄성 원칙, ② 사회의 공공선 원칙, ③ 기술의 합목적성 원칙을 지켜야 한다. 위와 같은 3대 기본원칙을 실천하고 이행할 수 있도록 인공지능 개발~활용 전 과정에서 ① 인권 보장, ② 프라이버시 보호, ③ 다양성 존중, ④ 침해금지, ⑤ 공공성, ⑥ 연대성, ⑦ 데이터 관리, ⑧ 책임성, ⑨ 안전성, ⑩ 투명성의 요건이 충족되어야 한다.

방송통신위원회는 정보통신 연구원과 함께 AI 시대 정부, 기업, 이용자 등 구성원이 지켜야 할 ‘이용자 중심의 지능 정보 서비스 기본 원칙(2019)’을 발표했다(방송통신위원회, 2019). 지능정보서비스 기본 원칙은 다음과 같다.

첫째, 사람 중심의 서비스를 제공해야 한다는 점이다. 지능정보서비스의 제공과 이용은 기본적 자유와 권리를 보장하고 인간의 존엄성을 보호할 수 있는 방향으로 이루어져야 한다는 것을 포함한다.

둘째, 투명성과 설명가능성을 포함해야한다. 지능정보서비스가 이용자에게 중대한 영향을 끼칠 경우 기업의 정당한 이익을 침해하지 않는범위에서 이용자가 이해할 수 있도록 관련 정보를 작성해야 한다. 또한 이용자 기본권에 피해를 유발했을 때 예측, 추천, 결정의 기초로 사용한 주요요인을 설명할 수 있어야 한다.

셋째, 책임성을 보유해야 한다. 지능정보사회의 구성원들은 지능정보서비스의 올바른 기능과 사람 중심 가치의 보장을 위한 공동의 책임을인식하고, 관련한 법령과 계약을 준수해야 한다.

넷째, 안전성을 보유해야 한다. 안전하고 신뢰 가능한 지능정보서비스의 개발과 이용을 위해 모두가 노력하고, 지능정보서비스가 초래할 수 있는 피해에 대한 자율적인 대비체계를 서비스 제공자와 이용자가 수립하고 운영해야 한다.

다섯째, 차별을 금지해야 한다. 지능정보서비스가 사회적·경제적 불공평이나 격차를 초래할 수 있다는 점을 항상 인식하고, 알고리즘 개발 및 사용의 모든 단계에서 차별적 요소를 최소화할 수 있도록 노력해야 한다.

여섯째, 구성원 모두 자유로운 참여가 보장되어야 한다. 지능정보사회의 구성원들은 공적인 이용자 정책 과정에 차별 없이 참여해야 한다. 공적 주체는 제공자와 이용자가 실질적으로 의견을 제시할 수 있는 정기적인 통로를 조성해야 한다.

마지막으로 프라이버시와 데이터 거버넌스를 유지해야 한다. 지능정보서비스의 개발, 공급 및 이용의 전 과정에서 개인정보 및 프라이버시를 보호하며, 구성원들은 기술적 이익의 향유와 프라이버시 보호 사이의 균형을 위해 지속적인 의견 교환에 참여해야 한다.

6.3. 환경과학 분야에서 윤리적인 AI의 필요성

AI의 급속한 발전은 전 세계적으로 편리한 진단을 가능케 하여 의료 분야에서 기회를 창출하고 노동 효율성을 증진시키는 등의 많은 기회를 만들어냈다. 그러나 이러한 급격한 변화는 윤리적인 우려를 불러일으킬 수도 있다. 이러한 우려에는 AI 시스템이 편견을 내재화하고 인권에 대한 위협을 제공할 수 있는 가능성이 포함된다. AI와 관련된 이러한 우려는 이미 존재하는 불평등에 가중되어 사회적으로 약화된 그룹에게 더 큰 피해를 줄 수 있다는 점에서 중요하다.

AI 기술은 다양한 분야에서 상당한 장점을 제공하지만 윤리적인 가로막 없이는 실제 세계의 편견과 차별을 재생산할 위험이 있으며, 이는 분열을 촉진하고 기본적인 인권과 자유를 위협할 수 있다. 따라서 AI의 윤리적이고 책임 있는 사용에 대한 논의가 필요하다. 윤리는 중요하며 AI의 개발 과정에 본질적으로 포함되어야 한다. 윤리적인 AI 개발은 사회적 책임을 보장하고 기술의 적절한 사용을 보증하며 사용자 신뢰를 유지하고 개인 정보를 보호하며 편견을 방지하고 긍정적인 사회적 영향을 창출한다.

환경 분야에서 연구하는 많은 과학자들은 이미지 및 모델 데이터와 같은 다양한 자료를 활용하여 실용적인 의사 결정을 지원할 수 있는 AI/ML 모델을 개발하기 위해 노력하고 있다. AI2ES는 다양한 기상 및 기후 응용 분야에서 신뢰할 수 있는 AI를 개발하는 데 초점을 맞추고 있으며, 본 보고서에서 소개하는 연구팀이 이 분야에서 선도적인 연구를 이끌고 있다. 이 보고서는 McGovern et al.(2022)의 연구를 요약 정리하였다.

환경과학 분야에서 사용되는 AI는 객관적인 것으로 오해될 수 있다. 이는 환경 과학에서 사용되는 훈련자료가 과학적 관측 장비로부터 생성되고, AI 알고리즘은 수학적 공식에 기반하기 때문이다. 그러나 환경 과학에서 AI의 적용으로 여러 가지 문제가 발생할 수 있다. 다른 분야에서 발생하거나 발생할 수 있는 오류를 반복하지 않는 것이 중요하다. 적절한 조치를 취함으로써 AI는 기후 및 환경과 관련된 불평등을 줄이는 강력한 도구가 될 수 있다.

McGovern et al.(2022)은 환경 과학 분야에서 AI가 잘못될 수 있는 방법과 발생할 수 있는 다른 문제들에 대한 비전체적인 목록을 제공하고 있으며, 이를 Table 6.3.1.에 정리하였다. 환경 과학 분야에서 AI를 사용할 때 잠재적인 문제는 크게 훈련 자료, AI 모델, 그리고 인력 및 사회 문제 세 가지 주요 영역으로 분류될 수 있다.

6.3.1. 훈련 자료와 관련된 문제

훈련 자료가 모델의 의도된 사용을 대표하지 못할 경우, 모델은 궁극적으로 목표를 달성하지 못할 수 있다. 자료에 내재되어 있는 바이어스나 결함은 피할 수 없는 문제이다. 도메인 전문가인 개발자들은 이러한 결함을 인식할 수 있지만, AI 과학자들은 이 문제에 대해 인식하지 못할 수 있다. 이를 해결하기 위한 표준화된 방법이 부족하고, 자료가 내포하고 있는 바이어스는 다양하기 때문에 신중한 평가가 필요하다. AI 모델이 편향된 자료로 훈련되면 자료가 가지고 있는 고유의 바이어스를 이어받아 편향된 예측을 할 수 있는 코딩된 편향(coded bias)이 발생할 수 있다.

6.3.1.1. 대표성이 없는 학습자료

대표성이 없는 학습자료는 지리, 인구 또는 의도하지 않은 시간 등의 요소에 영향을 받을 수 있어 편향을 일으킬 수 있다. 예를 들어, 훈련, 검증 및 테스트 자료에 선택된 기간이 기후 변화를 충분히 반영하지 못할 수 있다. 또한, 센서 작동에 대한 태양광 의존도로 인한 편향

Table 6.3.1. A nonexhaustive list of issues that can arise though the use of AI for environmental science applications

학습자료와 관련된 이슈

1. 지리적 다양성이 부족한 것을 포함하는 대표성 없는 학습자료

2. 학습 레이블이 편향되고 결함이 있는 것

3. 자료가 적대적인 영향을 받은 것

모델과 관련된 이슈

1. 모델 학습 선택

2. 결함이 있는 전략을 학습한 알고리즘

3. 그럴듯한 가짜를 학습한 AI

4. 신뢰성 없는 AI 모델 배포

5. 견고성 부족한 AI 모델

ﾠ

노동 및 사회와 관련된 기타 이슈

1. 전 세계적으로 적용 가능한 AI 접근법이 개발도상국의 급성장하는 노력을 방해할 수 있음

2. 자료수집과 모델 훈련에 대한 입력과 동의 부족

3. 과학자들은 권리를 박탈당하는 것을 느낄 수 있음

4. 계산으로 인한 온실가스 배출량 증가

이 발생할 수 있다(Fig. 6.3.1). 이를 해결하기 위해서는 지리적 다양성 보장, 센서 배치의 편향 교정, 그리고 누락된 데이터 추정을 위해 AI 활용 등이 있다. 그러나 환경 과학에서 완전히 대표적인 자료를 얻는 것은 어려울 수 있고, 이로 인해 오류 혹은 부정확성이 발생할 수 있다.

6.3.1.2.  학습레이블이 편향되거나 결함이 있음

인간 생성 자료: 환경 과학 예측 작업에 대한 자료취득은 어려운 과제이다. 특히 우박이나 토네이도와 같은 현상을 예측할 때는 인구 밀도가 높은 지역으로의 편향이 발생할 수 있다. 이러한 편향으로 인

Fig. 6.3.2. Example of human generated datasets

(a) Hail report follow population	(b) Wind speed by human perception

해 AI 모델은 도시 지역에서 우박/토네이도를 과도하게 예측하고 시골 지역에서는 과소 예측할 수 있다. 또한, 다양한 지역이 포함되어 있는 자료이더라도 AI 모델은 주로 일반적인 패턴과 빈번하게 발생하는 위험 지역에 초점을 맞출 수 있다(Fig. 6.3.2.(left)).

Fig. 6.3.1. Coverage of the national Doppler weather network (green and yellow circles) overlaid with the black population in the southeast US

센서 생성 자료: 이러한 자료 문제에 대한 잠재적인 해결방법은 센서 기반 데이터에 완전히 의존하는 것이다. 그러나 센서는 객관적이라고 가정되지만 해석이 필요하며 편향을 포함할 수도 있다. 또한, 센서 데이터는 오류나 누락된 센서로 인해 불완전할 수 있으며 지질 및 경제적 요인으로 인해 대표성에 대한 지역적 변동이 발생할 수 있다(Fig. 6.3.2.(right)).

6.3.1.3. 데이터가 적대적인 영향을 받음

적대적 자료는 ML에서 잘 알려진 문제이다. 적대자는 AI 모델이 잘못된 모델을 학습하거나 실제 데이터와 잘못 사용하도록 유도할 수 있다. 환경 과학 자료에 적용되는 AI는 인간과 환경의 두 가지 유형의 적대자로부터 영향을 받는다. 실제 세계에서 AI 모델을 훈련하고 배포할 때는 두 종류의 적대자를 모두 고려해야 한다.

- 인간 적대자: 인간이 수집, 보고한 자료를 사용할 때는 항상 사용자가 나쁜 자료를 추가할 가능성이 있고, 특히 이와 관련된 경제적 이득이 있는 경우에 그러한 가능성이 더욱 커진다(Fig. 6.3.3.(left)).

Fig. 6.3.3. Adversarial data by human and weather

(a) Insured losses by catastrophe	(b) A destroyed Mesonet station following a wind gust

- 날씨(환경) 적대자: 날씨는 특히 극한 사건의 관측을 수집할 때 자체적으로 적대자로 작용할 수 있다. 극한 사건으로 인한 관측 장비 훼손 등은 잘못된 관측 값을 기록할 수 있기 때문이다(Fig. 6.3.3.(right)).

6.3.2. AI 모델과 관련된 문제

6.3.2.1. 모델 훈련 선택

모델 훈련 선택은 AI 모델의 성능과 결과에 중요한 영향을 미친다. 인공지능 모델은 수학적 방정식에 기반하고 "객관적"으로 인식된다. 그럼에도 불구하고, 과학자들은 결과에 큰 영향을 미치는 많은 주관적인 선택을 해야 한다. 이는 모델에 포함할 속성, 사용할 데이터 소스, 자료 전처리 방법, 사용할 AI 모델의 유형 및 하이퍼 파라미터의 선택 등을 포함한다. 이 선택은 중대한 영향을 미칠 수 있다.

6.3.2.2. 알고리즘이 잘못된 전략을 학습함

AI 모델은 정확한 추정이나 분류를 수행하기 위해 자료의 패턴을 학습한다. 자료가 잘못되지 않았더라도 실제 세계를 대표하지 못하는 잘못된 상관관계를 포함할 수 있으며, AI 모델이 그러한 상관관계를 배우게 될 수 있다.

AI가 잘못된 전략을 학습했는지를 확인하는 한 가지 방법은 해석

Fig. 6.3.4. Examples of an AI learning to fake something plausible and of a model generating unexpected output when applied to data outside of the range of expected data

(a) Tornado prediction model	(b) Example of a PDP

가능한 AI(Interpretable AI 또는 XAI)를 사용하는 것이다. 해석 가능한 AI는 인간 전문가가 이해할 수 있도록 설계되었으며, 설명 가능한 AI는 더 복잡한 모델의 블랙박스를 들여다보아 내부의 전략을 식별하려고 한다. 이러한 두 접근법은 모델을 검토하고 잘못된 전략을 식별하는 데 도움을 준다.

6.3.2.3. AI가 그럴듯한 것을 위조하는 방법을 학습함

생성적 적대 신경망(GANs)은 매우 현실적인 이미지를 생성할 수 있지만 항상 가능한 해결 방법의 분포를 정확하게 나타내지는 않을 수 있다. 딥페이크 콘텐츠에서 사용되는 유사한 기술이 사람들을 오도하여, 이 방법이 환경과학에 적용될 경우 AI 모델에 대한 신뢰를 침해할 위험성이 있다는 것을 시사한다.

생성 모델의 주요 우려점 중 하나는 고해상도 자료의 매개변수화 또는 누락된 자료를 채우는 것과 같이 자료에 대한 보장이 부족한 것이다. 특히 자료가 제한된 지역에서는 부정확한 날씨 특성을 도입할 위험성이 있다. 이는 예보를 생산하기 위해 참고할만한 추가 데이터가 없을 때, 특히 세밀한 차이를 구별하기 어려운 미묘한 불일치가 발생했을 때 예측이 잘못되었음을 주장하기 어려울 수 있다.

6.3.2.4. 부적절한 상황에서 사용된 AI 모델

AI 모델이 특정한 날씨 패턴이나 지리적 영역을 위해 훈련되었으나 물리적으로 의미가 없는 새로운 상황에 적용될 때 다른 모델 기반 문제가 발생할 수 있다. 이러한 경우에는 AI가 부정확한 예측을 할 수 있으며, 이는 인명피해나 재산 손실로 이어질 수 있다. 이는 종종 ML이 수치예보모델을 대체할 때 발생할 수 있다. ML 모델이 다른 기후, 지리적 지역 또는 훈련된 반구와 반대 반구에 적용될 때(여기서 많은 공통 변수의 부호가 바뀜) 성능이 상당히 저하된다.

6.3.2.5. 신뢰할 수 없는 인공지능 모델 배치

인공지능 모델의 신뢰성을 보장하는 것은 윤리적이고 책임 있는 AI 구현에 있어서 중요하다. 그러나 모델은 종종 도메인 전문가들에 의한 철저한 테스트와 검증 없이 배포되기도 한다.

Fig. 6.3.5. Three different damage predictions for the same magnitude earthquake by different versions of the same AI system

Fig. 6.3.5.는 시애틀 지역에서 7.0 규모 지진이 발생하면 발생할 피해를 예측하는 상용 AI 시스템의 결과를 보여준다. 시애틀에 제공된 시스템의 세 가지 다른 버전에서 나온 결과를 보여준다. Fig. 6.3.5.에서 보여주는 서로 다른 지진 피해 예측결과는 서로 다른 데이터 소스를 사용하는 것뿐만 아니라 프로그래밍 오류에서 발생한다. 이와 같은 신뢰할 수 없는 결과는 시스템에 대한 신뢰를 약화시켜 심각한 혼란을 일으킨다. 이러한 오류를 피하기 위해서는 시스템 개발 중에 도메인 전문가 및 최종 사용자들과 협력하고, 배포 전에 모델을 철저히 검증하며, 과학적 근거 없이 모델의 정확성을 과장하면 안된다. 기계학습 모델의 불확실성을 측정하는 방법을 활용하여 신뢰성을 향상시켜야하며, 이와 같은 원칙은 인공지능 개발 집단에서 채택되어야 한다.

6.3.2.6. AI 모델의 견고성 부족

환경과학을 위한 견고한 AI는 예측결과가 범위를 벗어나면 실패한 것이기 때문에 물리 법칙에 의해 결과를 제한해야 한다. 더 나아가, 물리 법칙 또는 공정 원칙의 적용을 가능하게 하는 AI 방법의 발전을 통해 윤리적이고 책임 있는 AI를 발전시킬 수 있다.

6.3.3. 인력 및 사회와 관련된 기타 문제

6.3.3.1. 개발도상국의 AI 개발 노력 저해 가능

정부 기관 및 민간 기업을 포함한 대규모 조직들은 AI 시스템을 세계적으로 적용 가능하게 만들려고 노력하여 다른 국가의 사람들도 기술 발전의 혜택을 받을 수 있도록 한다. 이는 더 많은 고객 및 이해관계자들에게 혜택을 제공하고자 하는 것이다. 이러한 노력은 현지 커뮤니티와의 직접적인 소통과 협력을 필요로 한다.

그러나 상대적으로 쉬운 AI의 배포는 조직이 전체적인 영향을 완전히 모니터링하지 않고 배포를 자동화할 위험을 증가시킬 수도 있다. 이러한 경우에는 조직이 알고리즘의 의도하지 않은 결과를 인식하지 못할 수 있다. 또한, 이러한 지역에서 성능 검증을 위한 관측 데이터에 액세스할 수 없을 수도 있다. 또한, 서비스가 무료로 제공되거나 광고 수익으로 지원되는 경우 현지 제공자들이 가격 경쟁에서 불리해질 수 있다.

6.3.3.2. 자료 수집과 모델 훈련에 대한 입력 또는 동의 부족

자료를 수집하여 AI 모델을 훈련하거나 특정 장소에 대한 의사 결정을 위해 AI 모델을 생성할 때, 현지 주민 및 관련 분야 전문가들의 참여가 중요하다. 수집된 자료의 적용은 AI 모델 훈련에 영향을 미친다. 이는 AI가 환경 및 기후와 관련된 불평등을 지속시키는 데 사용될 수 있다는 것을 의미한다.

환경 연구에서는 모델과 결과를 개선하기 위해 이 분야에 관심을 가진 사람들을 참여시키는 것이 중요하다. 환경 과학에서는 정직과 투명성이 중요하며, 이는 개인의 존엄성과 권리를 존중함을 의미한다. 환경 과학에서 방법론적 편향과 불확실성을 투명하게 다루는 것이 중요하다.

6.3.3.3. 과학자들이 느끼는 박탈감

AI에 대한 이해가 부족한 환경 과학자들은 자신들의 연구 분야에서의 AI 개발에서 배제되었다고 느낄 수 있다. 환경 과학자들에게 AI 관련 지식을 제공하여 연구개발 및 발전에 적극적인 역할을 할 수 있도록 많은 교육 기회 및 자원의 개발과 제공이 필요하다.

일부 AI 연구는 고성능 컴퓨팅 자원에 대한 접근이 필요한 경우가 있다. 이는 특권계층에게만 연구 기회가 제공되는 불평등을 초래할 수 있다. 이러한 불평등을 해결하기 위해, 계산 자원에 대한 접근을 다양한 그룹에게 허용하는 개방적인 방법을 도입해야 한다.

6.3.3.4. 계산으로 인한 이산화탄소 배출 증가

AI 모델 훈련에는 많은 계산이 요구된다. AI 모델의 규모가 증가할수록 계산량은 기하급수적으로 증가하며, 이는 전 세계적인 탄소 발자국에 상당한 영향을 미친다. 환경과학 분야에서 AI 모델 개발을 할 때는 계산 요구 사항을 충분히 고려하고 제한하는 것이 필요하다. Green AI은 연구자들이 그들의 연구의 탄소 발자국을 검토하고 가볍고 효율적인 방법의 사용을 추구하는 분야이다. 이는 환경과학 응용을 위한 ML 모델을 간소화하여 투명성과 견고성을 높이고 동시에 계산 요구 사항과 탄소 발자국을 줄이는 데 중점을 둔다.

6.3.4. 소결

McGovern et al.(2022)은 환경 과학 분야에서 AI의 적용으로 인해 다양한 문제가 발생할 수 있음을 인정하고, 다른 분야에서 일어났거나, 혹은 일어날 수 있는 실수를 반복하지 말아야 한다는 필요성을 강조한다. 따라서, 적절한 조치를 취함으로써 AI가 기후와 환경과 관련된 불평등을 줄이는 강력한 도구가 될 수 있다고 강조한다.

환경 과학 분야에서 AI가 잘못될 수 있는 방법의 목록(Table 6.3.1.)은 중요하며, 각 문제를 설명하기 위해 예시를 제시하였다. 그러나 이러한 문제를 개선하기 위한 전략에 대한 더 많은 정보가 필요하다.

인간의 생명과 재산에 직접적인 영향을 미칠 수 있는 기상학과 기후학과 같은 분야에서는 신뢰할 수 있는 AI의 개발이 중요하다. AI2ES는 McGovern et al.(2022)에서 제시한 다양한 문제들을 고려하여 신뢰할 수 있는 AI를 개발하고 있다. 다양한 국가의 정부 기관 및 기업들이 환경 과학 분야에서 모델을 개발하기 위해 AI를 적용하고 있다. 그러나 그들이 자신들의 개발 과정에서 윤리적인 AI을 고려하고 있는지에 대한 확신할 수 없다. 세계적인 개발 경향을 따르기 위해서는 개발 과정에서 윤리적 측면이 배제되었는지를 비판적으로 검토하는 것이 필요하다. AI에 관한 윤리를 모델 개발 과정에서 고려하고 있지 않다면 즉시 적용하여 더욱 더 신뢰할 수 있는 인공지능활용을 위해 노력해야 한다.

7. 결론

인공지능(Artificial Intelligence, AI) 활용이 사회 전(全) 분야에서 양적·질적으로 확대되고 있다. 그러나 인공지능이 확산되면서 다양한 사회·윤리적 문제가 인공지능에 투영, 남용되는 사례가 지속적으로 발생하면서 사회적 관심과 우려가 대두되고 있다. 따라서 국민의 생명과 재산에 밀접한 관련이 있는 분야에서의 AI 투명성과 신뢰성이 최우선시 되어야 한다.

환경과학 분야 최초, 유일한 신뢰할 수 있는 인공지능 연구소인 AI2ES에서 수행하고 있는 연구를 조사하고, 이들이 지향하는 목표에 대해 파악하였다. 여러 학술기관, 정부연구소, 산업체의 인공지능, 대기 및 해양, 리스크 커뮤니케이션, 교육 분야의 선도적 전문가들이 협력하여 신뢰할 수 있는 인공지능 기술을 개발하기 위해 공동연구를 수행하고 있다. 환경과학 분야의 혁신적인 인공지능 기술을 개발함과 동시에 이를 활용하는 사용자와의 소통을 통해 보다 활용성이 크고 신뢰할 수 있는 인공지능 기술을 사회에 확산시키고자 노력하고 있다.

정확도 높은 강수예측을 위한 모델 개발이 수행하였다. 기존의 모델 구조는 유지하되 그 내부의 손실함수 등의 요소를 수정하는 실험을 진행하였다. 모형 개발을 위해 격자기반 손실함수를 적용하였으며, 10㎜ 이상 강한 강수에 대해 전년도와 여름철을 대상으로 한 모형을 개발하였다. 모형의 성능을 평가할 때도 한 가지 기준(지점)만을 활용하는 것이 아닌 다양한 기준(격자)을 활용하여 진행하였다. 그 결과 격자 기반 손실함수를 사용한 모형의 경우 성능이 우수했음을 확인했다. 또한 설정한 격자별로 모형의 성능이 차이가 있었음을 확인했다. 따라서 향후 모형 개발 시 격자 기반 손실함수 적용 및 좀 더 융통성 있는 평가방식을 채택할 필요가 있음을 확인했다.

인공지능은 데이터를 통해 학습하고 예측하여 의사, 결정을 지원할 때 결과만 알려주고 어떤 근거로 이 판단에 이르렀는지가 불가하다는 점이 한계점이 있다. 설명가능 인공지능은 이러한 문제에 대한 해결책으로 개발되었다. 즉, 설명가능 인공지능은 AI의 작동 방식 및 예측 결과를 사용자가 이해할 수 있는 방식으로 제시하여 모델의 예측을 이해하고 신뢰할 수 있게 해준다. 기상 예측 결과는 인명 및 재산상의 피해에 직접적으로 영향을 미칠 수 있다. 따라서 설명가능 인공지능을 기상분야에 적용함으로써 기상예측 인공지능 시스템의 신뢰성과 투명성을 향상시키고, 공정성을 강화하며, 의사 결정을 지원하는 데 중요한 역할을 할 수 있다.

AI 기술의 발전으로 사용자들은 거의 대부분의 분야에서 복잡한 AI 시스템을 접한다. 나아가 이 시스템과 상호작용이 요구된다. 복잡한 시스템은 연령 및 학습정도를 불문하고 사용자가 이해하기 어렵거나 불투명할 수 있다. 따라서 사용자가 시스템의 작동 방식을 이해하고 결과를 해석할 수 있도록 도와줄 수 있는 설명 인터페이스가 반드시 필요하다.

AI 기술은 다양한 분야에서 상당한 장점을 제공하지만 윤리적인 가로막 없이는 실제 세계의 편견과 차별을 재생산할 위험이 있으며, 이는 분열을 촉진하고 기본적인 인권과 자유를 위협할 수 있다. 따라서 AI의 윤리적이고 책임 있는 사용에 대한 논의가 필요하다. 환경과학 분야에서 사용되는 AI는 훈련자료가 과학적 관측 장비로부터 생성되고, AI 알고리즘이 수학적 공식에 기반하기 때문에 객관적인 것으로 오해될 수 있다. 그러나 환경 과학에서도 다른 분야와 마찬가지로 AI의 적용으로 여러 가지 문제가 발생할 수 있다. 다른 분야에서 발생하거나 발생할 수 있는 오류를 반복하지 않는 것이 중요하다. 적절한 조치를 취함으로써 AI는 기후 및 환경과 관련된 불평등을 줄이는 강력한 도구가 될 수 있다.

참고문헌

관계부처 합동, 2019: 인공지능(AI) 국가전략.

관계부처 합동, 2020: 사람이 중심이 되는 「인공지능(AI) 윤리기준」.

방송통신위원회, 2019: 이용자 중심의 지능 정보 서비스 기본 원칙.

Aboze, B. J., 2023: A Comprehensive Guide into SHAP (SHapley Additive exPlanations) Values.

Agwaral, S., Barrington, L., Bromberg, C., Burge, J., Gazen, C., Hickey, J., 2019: Machine learning for precipitation nowcasting from radar images. arxiv:1912.12132 [cs.CV].

Asperti, A., Merizzi, F., Paparella, A., Pedrazzi, G., Angelinelli, M., Colamonaco, S., 2023: Precipitation nowcasting with generative diffusion models. arXiv:2308.06733 [cs.LG]

Ayzel, G., Scheffer, T., Heistermann, M., 2020: RainNet v1.0: a convolutional neural network for radar-based precipitation nowcasting. Geoscientific Model Development 13(6), 2631-2644.

Bach, S., Binder, A., Montavon, G., Klauschen, F., Müller, K. R., Samek, W. 2015: On pixel-wise explanations for non-linear classifier decisions by layer-wise relevance propagation. PLoS ONE, 10(7), e0130140.

Barnes, E. A., Barne, R. J., Martin, Z. K., Radar, J. K., 2022, This Looks Like That There: Interpretable Neural Networks for Image Tasks When Location Matters. Artificial Intelligence for the Earth System. 1(3), https://doi.org/10.1175/AIES-D-22-0001.1

Chen, G., Wang,  W.-C., 2022: Short-Term Precipitation Prediction for Contiguous United States Using Deep Learning. Geophysical Research letters, https://doi.org/10.1029/2022GL097904

Civitarese, D. S., Szwarcman, D., Zadrozny, B., Watson, W., 2021: Extreme precipitation seasonal forecast using a transformer neural network. arXiv:2107.06846 [cs.LG]

Dikshit, A., Pradhan, B., 2021: Interpretable and explainable AI (XAI) model for spatial drought prediction. Science of The Total Environment, 801, 149797.

Denford, S. J., Dawson, S. G., Desouza, C. K. 2023: A cluster anaysis of national AI strategies.

Duncan, J., Subramanian, S., Harrington, P., 2022: Generative modeling of high-resolution global precipitation forecasts, arXiv:2210.12504[cs.LG].

Ebert-Uphoff, I., Lagerquist, R., Hilburn, K., Lee, Y., Haynes, K., Stock, J., Kulmer, C., Stewart, K. Q., 2021: CIRA guide to custom loss functions for neural networks in environmental sciences–version 1, arXiv:2106.09757v1[cs.LG].

Espeholt, L., Agwaral, S., Sønderby, C., Kumar, M., Heek, J., Bromberg, C., Gazen, C., Carver, R., Andrychowicz, M., Hickey, J., Bell, A., Kalchbrenner, N., 2022: Deep learning for twelve hour precipitation forecasts. Nature Communications. 13, 5145.

European Commission, 2019: Ethics guidelines for trustworthy AI.

Friedman, J. H., 2001: Greedy function approximation: a gradient boosting machine. The Annals of Statistics, 29(5), 1189-1232, https://doi.org/10.1214/aos/1013203451.

Gagne, D. J., Haupt, S. E., Nychka, D. W., Thompson, G., 2019: Interpretable deep learning for spatial analysis of severe hailstorms. Monthly Weather Review,  147, 2827-2845, https://doi.org/10.1175/MWR-D-18-0316.1.

Gilleland, E., Ahijevych, D., Brown, B. G., Casati, B., Ebert, E., 2009: Intercomparison of spatial forecast verification methods. Weather Forecasting, 24, 1416-1430, https://doi.org/10.1175/2009WAF2222269.1.

Helander, M. G., Landauer, T. K., Prabhu, P. V., 1997: Handbook of Human-Computer Interaction.

Huang, H., Lin, L., Tong, L., Hu, H., Zhang, Q., Iwamoto, Y., Han, X., Chen, Y.-W., Wu, J., 2020: UNet 3+: A Full-Scale Connected UNet for Medical Image Segmentation. arXiv:2004.08790 [eess.IV].

Lagerquist, R., Gagne, T., Ebert-Uphoff, I., Stewart, J., Hagerty, V., 2021: Using deep learning to emulate and accelerate a radiative transfer. Journal of Atmospheric and Oceanic Technology, 38(10), 1673-1696, DOI: https://doi.org/10.1175/JTECH-D-21-0007.1.

Lagerquist, R., McGovern, A., Homeyer, C. R., Gagne, D. J., Smith, T., 2020: Deep Learning on Three-Dimensional Multiscale Data for Next-Hour Tornado Prediction. Monthly Weather Review, 2837–2861 DOI:  https://doi.org/10.1175/MWR-D-19-0372.1.

McGovern, A., Ebert-Uphoff, I., Gagne, D. J., Bostrom, A., 2022: Why we need to focus on developing ethical, responsible, and trustworthy artificial intelligence approaches for environmental science. Environmental Data Science, 1:	e6, 1-15, doi:10.1017/eds.2022.5

McGovern, A., Lagerquist, R., Gagne, D. J., Jergensen, G. E., Elmore, K. L., Homeyer, C. R., Smith, T., 2019, Making the black box more transparent: Understanding the physical implications of machine learning. Bulletin of the American Meteorological Society, 2175~2199, DOI: https://doi.org/10.1175/BAMS-D-18-0195.1.

Montavon, G., Binder, A., Lapuschkin, S., Samek, W., Müller, K.-R., 2019: Layer-Wise Relevance Propagation: An Overview, p.197.

National Institute of Standards and Technology, 2022: Towards a Standard for Identifying and Managing Bias in Artificial Intelligence. NIST Special Publication 1270, https://doi.org/10.6028/NIST.SP.1270

OECD, 2019: Recommendation of the Council on Artificial Intelligence.

O'Shea, K., Nash, R., 2015: An Introduction to Convolutional Neural Networks. arXiv:1511.08458 [cs.NE].

Renault, M., Mehrkanoon, S., 2023: SAR-UNet: Small Attention Residual UNet for Explainable Nowcasting Tasks. arXiv:2303.06663v1  [cs.LG].

Ronneberger, O., Fischer, P., Brox, T., 2015: U-Net: Convolutional Networks for Biomedical Image Segmentation. arXiv:1505.04597 [cs.CV].

Shapley, L.S., 1953: A value for n-person games. In: Kuhn, H., Tucker, A. (eds) Contributions to the theory of games, vol II. Princeton University Press, Princeton, pp 307–317.

Sønderby, C. K., Espeholt, L., Heek, J., Dehghani, M., Oliver, A., Salimans, T., Agrawal, S., Hickey, H., Kalchbrenner, N., 2020: MetNet: A Neural Weather Model for Precipitation Forecasting. arXiv:2003.12140 [cs.LG]

Stengel, K., Glaws, A., Hettinger, D., King, R. N., 2020: Adversarial super-resolution of climatological wind and solar data, Proceedings of the National Academy of Sciences. 122, 16805-16815, https://doi.org/10.1073/pnas.1918964117.

Trebling, K., Stanczyk, T., Mehrkanoon, S., 2020: SmaAt-UNet: Precipitation Nowcasting using a Small Attention-UNet Architecture, arXiv:2007.04417[cs.LG]

UN, 2020, Outcome document: first draft of the Recommendation on the Ethics of Artificial Intelligence.

UNDRR, 2020: The human cost of disasters: An overview of the last 20 years (2000-2019).

Wang, Z., Bovik, A. C., 2009: Mean squared error: Love it or leave it? A new look at signal fidelity measures. IEEE Signal Processing Magazine. 26, 98-118, http://doi.org/10.1109/MSP.2008.930649.

Wang, C., Li, X., 2022: A deep learning model for estimating tropical cyclone wind radius from geostationary satellite infrared imagery. Monthly Weather Review, 151 (2), 403-417.

Waddell, F. T., Zhang, B., Sundar, S. S., 2015: Human-Computer Interaction.  The International Encyclopedia of Interpersonal Communication, https://doi.org/10.1002/9781118540190.wbeic182.

Xu, L., Niu, D., Zhang, T., Chen, P., Chen, X., Li, Y., 2022: Two-stage UA-GAN for precipitation nowcasting, Remote sensing, 14, 5948. https://doi.org/10.3390/ rs14235948.

Yadav, N., Ganguly, A. R., 2021: A deep learning approach to short-term quantitative precipitation forecasting. Proceedings of the 10th International Conference on Climate Informatics. https://doi.org/10.1145/3429309.3429311.

Zhou, Z., Mahfuzur Rahman Siddiquee, M. M. R. S., Tajbakhsh, N.,  Liang, J., 2018: UNet++: A Nested U-Net Architecture for Medical Image Segmentation. DOI: 10.1007/978-3-030-00889-5_1

https://www.ai2es.org