본문 바로가기
컴퓨터과학

빅데이터 시각화

by 라임_Lime 2024. 1. 15.

출처: 픽사베이

빅데이터 분석의 핵심은 유용한 정보 전달이다. 정보를 보다 정확하고 알기 쉽게 전달하기 위해서는 데이터를 시각화하는 게 중요하다. 시각화된 이미지를 통해 의미를 직관적으로 이해하고 판단할 수 있기 때문이다. 데이터 시각화란 컴퓨터를 사용하여 인지를 넓힐 수 있도록 데이터를 상호작용이 가능한 시각적 형태로 만드는 것이라고 통상 정의되고 있다. 

사실 필자는 처음 시각화라는 단어를 봤을 때, 시각화란 그래픽이나 이미지를 만드는 과정이라고 생각했다. 하지만 시각화란 단순히 이미지를 만드는 과정이 아니라, 이미지를 통해 독자가 쉽게 이해할 수 있도록 만들어주는 과정 자체를 의미한다. 즉, 데이터 시각화는 데이터의 숨은 의미를 밝혀주고, 설명하고, 의사결정을 내리는 데 도움을 주는 통찰력을 가지게 하는 데 그 목적이 있다. 필자가 공부하는 교과서에서는 1854년 영국의 콜레라 발생의 시각화를 예시로 들었다. 영국의 의사 존 스노가 콜레라 환자의 거주지를 직접 조사해서 지도에 환자가 발생한 지역과 환자의 수를 표시하였는데, 이를 통해 콜레라 환자의 수가 공동으로 사용하는 식수 펌프의 위치와 가까울수록 많았다는 점을 알게 되어 그 원천을 차단할 수 있었다. 

데이터 시각화의 원칙은 크게 두 가지가 있다. 첫 번째로는 데이터 시각화가 정직해야 한다는 것이다. 즉, 의도를 가지고 데이터를 왜곡하는 것이 금지된다는 의미이다. 솔직하지 못한 데이터의 시각화는 잘못된 판단을 유도하기 때문이다. 두 번째 원칙은 정보의 시각화 과정에서 디자인은 항상 간결하고 정확해야 한다는 것이다. 참고로 데이터 시각화의 전문가 터프트는 데이터 시각화의 여덟 가지 원칙, 즉 데이터 그 자체를 보여주는 것이 중요하고, 보는 사람이 화려한 그래픽이나 시각화 방법에 집중하지 않도록 해야 하며, 데이터 자체가 말하고자 하는 바를 왜곡하면 안 되고, 너무 많은 숫자나 문자를 작은 화면에 보여주려고 하지 말아야 하며, 많은 양의 데이터가 일관성을 가져야 하며, 서로 다른 데이터를 손쉽게 비교할 수 있게 해야 하고, 데이터는 몇 가지 단계로 깊이 들어가 살펴봐야 하며, 마지막으로 통계 결과나 시각화의 설명을 데이터와 함께 보여주어야 한다는 것이다. 이와 같은 원칙은 데이터과학자뿐만 아니라, 일상생활에서 데이터를 시각화해서 결과물로 제출해야 하는 일반 사용자에게도 마찬가지로 적용된다. 

데이터 시각화의 방법은 여러 유형이 있다. 가장 많이 사용되는 데이터가 시계열 데이터이기 때문에 선 그래프, 막대그래프 등과 같은 시간 시각화 기법이 주로 사용되었지만, 최근에는 비정형 데이터인 텍스트 데이터를 시각화하기 위한 방법, 즉 워드 클라우드와 같은 방법도 활발하게 사용되고 있다. 

시계열 데이터의 시각화에 대해 좀 더 살펴보자. 시계열 데이터란 말 그대로 시간에 따라 변화하는 데이터를 의미한다. 데이터 시각화의 가장 기본적인 형태며, 그 예로는 구글 트렌드가 있다. 앞선 포스팅에서 제시했던 구글 트렌드는 사용자가 검색어로 사용하는 단어와 검색 결 분석을 통해 검색어의 시간별 변동 추이를 확인할 수 있는 시각화를 제시하는 서비스이다. 시계열 데이터를 표현하는 방법으로는 선 그래프, 점그래프, 막대그래프, 누적 그래프, 버블 그래프, 컬러스케일 그래프 등이 있다. 이 중 생소한 그래프는 버블 그래프였다. 점그래프는 데이터 포인트를 점으로 표현하지만, 버블 그래프는 원의 크기가 데이터의 값을 표현한다. 또한 컬러스케일 그래프란 막대그래프의 높이 대신 시각적인 색으로 차이가 나게 보여주는 그래프이다. 필자는 아직 컬러스케일 그래프를 직접 사용해 본 적은 없지만, 화면이 부족한 경우 유용하게 사용되고 있다고 한다. 

그다음으로는 텍스트 시각화에 관해 설명해 보고자 한다. 텍스트데이터란 문서와 문서의 집합, 즉 문자로 이루어진 모든 것을 의미한다. 이러한 텍스트 데이터 시각화는 문서의 내용의 차이점뿐만 아니라 시간에 따라 변화하는 양상, 다른 데이터와의 연관성까지 파악할 수 있도록 도움을 주는 유용한 도구이다. 워드 클라우드가 대표적인 예이다. 문서에 등장한 단어의 빈도수를 이용하여 어떠한 단어를 많이 사용했는지를 시각화해 주는 서비스이다. 그 외에도 워드 트리, 즉 특정한 단어와 다른 단어들과의 연결 구조를 시각화하는 방법이 있다. 

소셜네트워크 시각화도 중요한 테마 중 하나이다. 미국 정치 블로거의 소셜 네트워크 연결망 구조를 시각화한 자료를 보면 공화당을 지지하는 블로거와 민주당을 지지하는 블로거는 연결되어 있지 않으며 서로 양극화되는 모습을 볼 수 있다. 집단 간의 커뮤니케이션이 단절되어 있다는 의미이다. 국내에서도 소셜네트워크 데이터를 통한 정치 지형도 연구가 시도되고 있는데 대부분 미국의 사례와 유사하다. 참고로 소셜 네트워크의 시각화에서 행위자들은 노드로 표현되고, 노드를 연결하는 선은 엣지 또는 링크라고 부른다. 노드와 엣지의 관계를 그림으로 표현한 것을 그래프라 한다. 

데이터 시각화의 도구로는 R과 파이썬, 자바스크립트 등이 있다. 먼저 빅데이터 분석과 처리 도구로 널리 알려진 도구는 R과 파이썬이 있다. R은 ggplot2라는 라이브러리를 이용하면 훨씬 풍부한 시각화 표현이 가능하고, 파이썬도 Pandas, Matplotlib 등의 라이브러리가 제공되어 이를 활용할 수 있다. 데이터 시각화 작업에 많이 이용되는 프로그래밍 언어로는 자바가 있다. 자바스크립트는 그래픽 기능이 뛰어나고 웹페이지에 쉽게 끼워 넣을 수 있다는 장점이 있다. 기타 시각화 도구로는 태블로, Power BI 등도 잇다. 

'컴퓨터과학' 카테고리의 다른 글

빅데이터 의사결정  (0) 2024.01.16
인공지능과 기계학습  (0) 2024.01.15
텍스트 빅데이터  (1) 2024.01.15
빅데이터의 수집과 활용  (1) 2024.01.15
빅데이터의 개요  (0) 2024.01.15