마마 카지노

[유동우의 경제옹알이(32)]ChatGPT로 구현하는 데이터 3D 시각화

많은 노력과 시간이 요구되는 데이터 3차원 시각화 작업 ChatGPT는 파이썬 코딩을 통해 쉽고 빠르게 데이터를 3D 시각화 앞으로 3차원 데이터 활용 늘고 더 쉽고 다양하게 이용 가능해질 듯

2023-10-13     경상일보
▲ 유동우 울산대학교 경제학과 교수

저출산과 노동유연성 그리고 여성노동시장참여율에 대한 연구과제를 하고 있었다. 기초적인 분석을 하다 ChatGPT가 데이터 3D 시각화를 쉽게 해줄 수 있지 않을까 하는 생각이 들었다. 실행해 보니 역시나 파이썬 코딩으로 간단하게 해결해 주었다.

그림은 출산율(fertility)과 여성노동시장참여율(participation) 그리고 노동경직도(strict) 사이의 관계를 3차원 시각화로 보여주고 있다. 우선 데이터는 2010년부터 2019년 10년 동안의 서유럽과 북미의 OECD국가 20개국의 자료를 사용했다. 데이터의 색은 출산율을 기준으로 정해진다. 출산율이 평균보다 높으면 노란색과 초록색으로 나타나고, 평균과의 차이가 클수록 더 밝게 나타난다. 출산율이 평균보다 낮으면 파란색과 보라색으로 나타나고 평균과의 차이가 클수록 더 어둡게 나타난다. 이러한 방식의 파이썬 코딩을 통해 데이터가 좀 더 잘 구분되게 시각화할 수 있다.



데이터의 색에 대해 이해했다면 다음은 분석평면을 이해하면 된다. 데이터는 3차원으로 표현되기 때문에 출산율과 여성노동시장참여율의 2차원적 관계와 출산율과 노동경직도와의 2차원적 관계가 동시 평면으로 표현된다. 우선 출산율과 여성노동시장참여율과의 관계를 보면, 여성노동시장참여율이 50%에서 85%로 상승하면 출산율도 상승하는 것을 볼 수 있다. 동시에 노동경직도가 4.0에서 0.0으로 낮아지면 출산율이 역시 상승하는 것을 볼 수 있다.

그리고 여성노동시장참여율과 노동경직도가 동시에 출산율에 미치는 영향은 분석평면의 색으로 표현된다. 파란색 부분은 분석평면의 평균보다 낮다는 것이고, 빨간색 부분은 분석평면의 평균보다 높다는 것을 의미한다. 이러한 점을 이해하고 본다면 여성노동시장참여율이 높아지는 것과 노동경직도가 낮아지는 것이 동시에 이루어질 때 출산율이 높아지는 경향이 있다는 것이 3차원적으로 시각화된다.

물론 데이터 분석은 이보다 더 복잡한 과정을 거쳐야 한다. 예를 들면, 그림에서 보면 데이터들이 모여있는 것을 볼 수 있는데, 이는 특정 국가의 출산율이 모여있다는 것을 시각적으로 보여준다. 따라서, 보다 정확한 분석을 위해서는 데이터가 모여있다는 것을 고려해서 분석해주는 작업이 필요할 수 있고, 더 많은 통계적 방법론을 사용하는 것이 권장된다. 하지만 3차원적인 데이터의 시각화는 기존에 주로 사용되던 2차원 데이터 시각화에 비해 큰 장점을 가지고 있다.

▲ 출산율(fertility)과 여성노동시장참여율(participation) 그리고 노동경직도(strict) 사이의 관계 3차원 시각화.

ChatGPT가 나오기 전에는 3차원 데이터 시각화는 매우 번거로운 작업이었다. 3차원 데이터 시각화의 장점이 있지만, 3차원으로 데이터를 시각화 하는데는 매우 많은 노력과 시간이 소모되었다. ChatGPT가 작성해준 코드는 출산율 데이터를 평균보다 높으면 노란색과 녹색으로, 낮으면 파란색과 보라색으로 표현해주는 작업을 내가 구체적으로 지시하지 않아도 자동으로 포함해 주었다. 데이터가 이렇게 색을 다르게 해서 표시되지 않는다면, 3차원 데이터의 시각화 효과는 크게 줄어들게 된다. 구분하기가 어렵기 때문이다.

또한 분석평면의 경우에도 분석평면의 평균보다 높아지는 부분은 빨간색으로, 낮아지는 부분은 파란색으로 구분해주고 있다. 이렇게 구분되는 색으로 분석평면을 표현해주지 않으면, 역시나 구분이 어렵게 된다. 그리고 눈금선과 음영이 들어가 있고, 분석평면이 올라가는지 내려가는지를 보다 쉽게 판단할 수 있는 각도로 시각화되어 있다. 내가 추가적으로 ChatGPT에 요청했던 작업은 분석평면을 더 잘 해석할 수 있도록 더 크게 해달라는 요청뿐이었다.



3차원으로 시각화된 데이터를 보여주자 학생들은 파이썬으로 하는 데이터 분석과 시각화에 큰 관심을 보였다. 늘 익숙하게 보아왔던 2차원 평면과는 다른 정보전달력에 대해 직접적으로 체험할 수 있었다. 그리고 쉽고 빠르게, 다른 데이터로, 내가 제공하고 구조를 설명해준, ChatGPT가 만든 코드를 변형해서, 3차원 데이터 시각화를 구현해 왔다. 그리고 학생들은 질문을 했다. 3차원을 넘어가는 데이터도 시각화하는 것이 가능하냐고. 물론 3차원을 넘어가는 더 높은 차원의 데이터는 3차원으로 시각화하기 어려운 측면이 있다.

하지만 아마도 3차원 데이터 시각화가 이처럼 간단해지면, 앞으로는 3차원 데이터 시각화가 보다 많이 쓰일 것이다. 2차원 데이터 시각화에 비해 장점이 명확할 뿐만 아니라, 만드는 노력도 ChatGPT로 인해 큰 차이가 없어질 것이기 때문이다. 실제로 마이크로소프트와 아나콘다는 엑셀에서 파이썬 함수를 사용하여, 데이터를 엑셀에서 입력하고, 파이썬을 사용해 3차원으로 데이터를 시각화하는 베타 프로그램을 홍보하기도 했다. 더 많은 변화와 구체적 활용방법들이 나타날 것이다.

유동우 울산대학교 경제학과 교수