Exploratory Data Analysis란?

Younghoon Kim
now-this-sigak
Published in
7 min readMay 9, 2019

FFT (Fast Fourier Transform) 알고리즘, Box plot의 발명가로 유명한 미국의 수학자 John Tukey는 이런 말을 했습니다.

노출 — 데이터를 효율적으로 개방하여 예측 안된 것을 보이는 것 — 은 데이터 분석에 아주 큰 부분을 차지한다. 정형적인 통계학은 이러한 측면을 거의 제공하지 않는다. 확실히, 여태까지의 어느 정형적인 통계학도 이러한 탐색적인 노출의 비정형석 혹은 유연성을 다룬다고 볼 수 없다.

그 어떤 것도 —심사숙고한 수학적 논리도, 통계 모델이나 이론도, 엄청난 계산력을 갖은 현대의 컴퓨터도 — 여기 인간의 유연한 사고를 대체할 수 없다. … 따라서 두 데이터를 분석하는 접근방식과 기술은 인간의 참여를 가능하도록 구성되어야 한다. — Data Analysis & Statistics, Tukey 1962

다시 말하면, 우리가 데이터를 이해하고 분석할 때 통계 모델이나 이론을 적용시키는 것만으론 부족하며 사람의 유연한 지각 능력으로 데이터를 탐색해 볼 필요가 있다는 뜻입니다. 이런 탐색의 과정에는 통계학적 접근뿐 아니라 시각적 접근도 꼭 필요하다는 메시지인데요, 이러한 과정을 탐색적 데이터 분석(Exploratory Data Analysis) 줄여서 EDA라고 합니다. 본격적인 통계 분석에 앞서 데이터를 알아가 보며 가설을 떠올릴 수 있게 해주는 단계이기도 합니다. 이번 포스팅에선 하나의 EDA 예시를 들며 이를 통해 EDA가 무엇이고 어떻게 하는 것인지 알아보도록 하겠습니다.

EDA 예제1. 영화 평점 데이터

IMDB와 Rotten Tomatoes라는 곳에서 영화를 평가 한 데이터가 주어졌습니다. 이 데이터를 가지고 다양한 분석을 시도해보려고 하는데, 그전에! EDA를 통해 데이터를 먼저 살펴볼까 합니다. 제가 첫 번째로 그려볼 차트는 바로 아래의 차트입니다.

IMDB의 영화 평점(rating)과 Rotten Tomatoes의 평점을 비교해보고자 산점도를 그려보았습니다. 그러자 바로 무언가가 눈에 띄네요. 각 축 바로 위에 나열된 점들이 보이시나요? 데이터를 살펴보니 저 점들은 데이터가 값을 가지고 있지 않더군요. 데이터를 시각화하지 않고 살펴볼 때에는 알기 힘들었던 것들이 시각화를 통해서 쉬워지는 예이기도 합니다. 많은 점들이 데이터 값이 없는 것으로 보아 데이터에 대한 신뢰도가 떨어지는데요, 조금 더 살펴봐야 할 것 같습니다. 제가 다음으로 그릴 차트는 개봉연도별 영화 데이터 수입니다.

이 차트에서도 이상한 패턴이 보이시지 않나요? 지금은 2019년인데 2020년 이후에 개봉되었다는 영화들이 있네요. 개봉하기 전 영화들을 입력 해 놓았을까요? 그렇게 생각하기엔 2040년에 개봉을 예정한다는 무리일 것 같고… 2025년에 개봉했다는 한 레코드를 조사해보니 “Ben-Hur”라는 영화였어요. 그리고 이 영화는 여러 번 리메이크되었는데 원작 영화가 1925년에 개봉된 것으로 나옵니다. 아마 데이터를 만드는 과정에서 “25년 작품"이라는 정보를 2025로 잘못 저장한 것이 아닐까 싶습니다.

이런 식으로 데이터가 잘못되었을 수 있다는 것을 우리는 간단한 그래프들을 그려봄으로써 바로 알 수 있었습니다. 이러한 과정 없이 바로 통계모델을 적용한다면 아마 많은 오차를 가진 결론을 도출하게 될 것입니다. 이처럼 시각화를 통해 EDA를 진행 하는 것의 장점은, 데이터의 품질에 대해 진단 할 수 있다는 것입니다.

EDA 예제2. Burtin’s Antibiotic Data

다음으로 살펴볼 데이터는 Will Burtin이 1951년 수집한 항생제 데이터입니다. 이 데이터는 각 항생제 (penicillin, streptomycin, neomycin)의 효율을 알아보기 위해 여러 박테리아에 테스트한 결과를 가지고 있습니다. MIC (minimum inhibitory concentration)라는 척도가 그 효율의 척도인데, 값이 클수록 그 박테리아의 항생제에 대한 저항력을 의미합니다(=작을수록 효율적). 그리고 아래는 Burtin이 그린 원본 시각화입니다.

Design and Science: The Life and Work of Will Burtin

각 각도는 박테리아를 표현하고 있고, 반지름 방향 막대는 항생제들의 MIC 척도를 나타내고 있습니다. 이를 통해 어떤 박테리아들의 저항성을 쉽게 비교해볼 수 있습니다. 얼추 보면 Gram Negative(적색 바탕)한 박테리아들은 Peniciline에 대한 저항력이 약해 보이네요. 하지만 이런 박테리아의 저항성을 비교하는 것이 아닌 다른 것에 관심을 가질 수도 있겠죠? 예를 들어, “박테리아를 항생제 저항성에 따라 그룹 지을 수 있을까?” 같이요.

That’s Funny… by Howard Wainer, Shuan Lysen

Wainer와 Lysen은 다음과 같은 방식으로 다시 데이터를 시각화하였습니다. P, S, N은 각 항생제를 의미하고 검은색 수평한 선은 임상적으로 투여할 수 있는 최대 양을 의미합니다. 즉, 막대가 아래 방향을 향하면 임상적으로 효율적인 항생제라는 것이죠. 이러한 기준으로 각 박테리아에 항생제에 대한 저항 여부를 정하고 그에 따라 박테리아를 줄에 그룹 지었습니다.

여기서 이상한 것을 발견하셨나요? 1) SN저항을 갖은 세 박테리아 중 Diplococcus pneumoniae만 Streptococcus가 아니네요. 2) 또한 위 PS저항을 갖는 박테리아 중 Streptococcus fecalis만이 Streptococcus이구요.

놀라운 것은 실제로 연구자들이 1974년 (대략 Bertin의 시각화 23년이나 흐른 뒤) Diplococcus pneumoniae는 사실 Streptococcus였다는 걸 발견했다는 것입니다. 그래서 이름도 Streptococcus pneumoniae로 바뀌었고요. 또한 Streptococcus fecalis는 이미 1937년 특이한 사실이 밝혀진 바 있었는데요 1984년이 되어서야 이름이 Enterococcus faecalis으로 변경되었습니다.

위의 예제를 통해 알 수 있는 것은, 시각화는 종종 저작자의 관심(혹은 저작자의 질문)에 따른 정보만을 보여준다는 것. 그래서 우리가 데이터 탐사를 통해 다양한 관점을 얻고 싶다면, 반복적으로 계속 다양한 질문을 하고 그에 맞는 시각화를 통해 답을 찾아나가야 한다는 것입니다.

결론

EDA는 인간 고유의 지각 능력의 유연함으로 데이터를 탐사하는 과정입니다. 여러 방식의 시각화를 통해 데이터를 의심스럽게 바라보고 계속 스스로 다른 질문을 해보세요. 그러면 더욱 데이터를 많이 이해할 수 있고, 통계기술도 더욱 적절히 사용하실 수 있을 것입니다.

  • 컨텐츠의 일부는 Jeffrey Heer 교수님의 시각화 수업 자료에서 참고하였습니다.

P.S.

아! 그리고 EDA를 도와주는 아주 멋진 소프트웨어가 있습니다. 바로 Tableau라는 소프트웨어인데요, 꼭 이용해보세요!

--

--

Younghoon Kim
now-this-sigak

Ph.D. Student @ Paul G. Allen Center for Computer Science & Engineering