I asked myself: What do I wish someone had told me when I first got JMP?나는 스스로에게 물었다. "JMP를 처음 접했을 때 누군가가 내게 해줬으면 좋았을 말은 무엇일까?"
제가 JMP라는 회사 자체가 아니라 소프트웨어 인 JMP 를 처음 접하게 된 몇 년 전으로 돌아가 보겠습니다. (그리고 제가 JMP 블로그에서 왜 굳이 옛 추억을 되짚어보는지 의아해하실 수도 있겠지만, 꼭 그럴 만한 이유가 있습니다!)
갓 박사 학위를 받고 첫 실무에 발을 들인 저는, 대학원 시절 산업체 인턴십을 했던 연구실 동료들로부터 JMP가 반도체 업계의 공통 언어라는 것을 알고 있었기에, 상사가 저에게 그 소프트웨어를 배우라고 제안했을 때 놀라지 않았습니다.
제가 입사했을 당시 회사는 설립된 지 얼마 되지 않았고 교육 조직도 제대로 갖춰져 있지 않아서 JMP 교육 과정이 매우 제한적이었습니다. 그 결과, 저는 시행착오를 거치고 JMP 기술 지원팀에 끊임없이 문의하면서 JMP를 독학해야 했습니다. (진심으로, 당시 제 문의 내역을 보시면 정말 대단하실 겁니다... 최근에 다시 봤는데, 정말 볼만하더라고요.)
자, 그럼 왜 갑자기 옛날 생각이 나는 걸까요? 몇 주 전에 몇몇 사람들과 이야기를 나누면서, 제가 처음 JMP를 시작했을 때 누군가 제게 해줬으면 좋았을 조언이 뭔지 생각해 봤습니다 . 새 사용자 환영 키트 나 JMP 사용자 커뮤니티 같은 게 없다고 가정해 보세요. 제 JMP 시스템 엔지니어가 누군지, 기술 지원팀에 어떻게 연락해야 하는지, 소프트웨어에 대해 아무것도 모른다고 생각해 보세요. JMP를 열고 데이터 세트를 불러오는 방법밖에 모른다고 생각해 보세요. 어린 시절의 저는 스프레드시트 같은 창과 'JMP 홈'이라는 것을 멍하니 바라보고 있을 겁니다. 그때의 저에게 뭐라고 말해줄까요? 과거를 회상하고, 제가 지금까지 JMP를 가르쳐준 사람들을 떠올려 보니, 다섯 가지 조언이 떠올랐습니다. 혹시라도 어린 시절의 제가 어딘가에 있다면, JMP를 처음 접했던 날 누군가 제게 해줬으면 좋았을 다섯 가지 조언을 공유해 드리겠습니다.
우리는 시각적인 존재입니다
첫 번째는 다소 개념적인 내용이지만, 특히 코더들에게는 사고방식의 상당한 변화가 필요합니다. 우리는 시각적인 존재입니다. 우리 얼굴에서 시각적 정보를 수집하는 데 사용되는 부분(눈)을 생각해 보세요. 우연이든 의도적이든, 우리는 시각 정보를 매우 빠르게 처리하도록 만들어져 있습니다. 어쩌면 지나칠 정도로 말이죠. 우리는 데이터를 이해하기 위해 시각화해야 합니다.
시각화 단계는 분석에 있어 매우 중요합니다. 왜냐하면 사람들은 숫자로 된 표를 읽는 데 정말 서툴기 때문입니다. 죄송하지만 사실입니다. 표에 몇 줄만 있어도 추세나 데이터 품질 문제를 파악하기는 거의 불가능합니다. 최근에 파이썬을 활용한 데이터 과학 책을 읽었는데, 어디서 시작했는지 아시나요? 바로 표였습니다. 표, 모델링, 요약 통계에 대한 네 개의 챕터를 할애한 후에야 데이터 세트를 그래프로 나타내는 방법을 (매우 짧은) 한 챕터에서 다루더군요.
이 문제는 파이썬에만 국한된 것이 아닙니다. 제가 공부했던 다른 분석 언어들(심지어 LaTeX에서도!)에서도 똑같은 문제를 겪었습니다. 분석 분야 사람들은 수년 동안 첫날부터 "표부터 작성하라"는 교육을 받아왔습니다. 하지만 이는 잘못된 것입니다. 그래프를 코딩하기 어렵기 때문이라고들 하지만, 단순히 편의의 문제가 아니라 명백한 오류입니다. 이 점을 예시를 통해 설명해 보겠습니다.
아래 표는 여러 데이터 세트에 대한 선형 모델(y = mx + b)의 통계를 보여줍니다. 이 데이터들은 거의 동일한 (그리고 똑같이 나쁜) 선형 모델, 동일한 적합도 통계, 그리고 동일한 기술 통계를 제공합니다. 만약 기본 원시 데이터 표를 살펴본다면, 어떤 특이한 점도 발견할 수 없을 것입니다. 하지만 이는 실제와는 전혀 다릅니다.
아래는 표의 기본 데이터를 그래프 빌더로 시각화한 그림입니다. 왼쪽 필터를 사용하여 자유롭게 조작해 보세요. 숨겨진 요소(혹은 공룡 알)를 찾으셨나요? 이 데이터 수집은 앤스콤 사중주(Anscombe's Quartet)를 변형한 것으로, 모델링이나 분석에 앞서 시각화의 중요성을 보여주기 위해 설계되었습니다. (여기에 표시된 보고서는 JMP 퍼블릭 에서 볼 수 있으며, 원본 데이터는 여기 에서 가져왔습니다.)
JMP는 이러한 "시각화 전 분석"이라는 실수를 방지하도록 설계되었습니다. 그래프 빌더를 사용하면 대부분의 사람들이 분석이라고 생각하는 작업을 시작하기 전에 데이터를 쉽게 시각화할 수 있습니다. 소프트웨어의 대부분 보고서는 그래프로 시작합니다. JMP는 통계 분석을 그래픽과 시각적 단서를 통해 사용자가 잠재적으로 가치 있는 정보를 찾도록 안내하는 도구입니다.
이 소프트웨어는 그래픽을 상호작용 가능하게 만들어 사용자가 데이터 테이블에 연결된 여러 차트를 통해 복잡한 관계를 탐색할 수 있도록 함으로써 이러한 아이디어를 한 단계 더 발전시켰습니다. 간단히 말해, JMP는 먼저 그래프를 만들고 나중에 질문하는 워크플로를 사용하도록 설계되었는데, 이것이 바로 사용자가 해야 할 방식입니다. 공교롭게도, 이것은 제가 누군가에게 미리 들었으면 좋았을 두 번째 조언으로 이어지는데, 다음 시간에 이어서 이야기해 보겠습니다.
...뭐라고요?! 정말 죄송합니다. 갑자기 이렇게 끝내서요. 원래는 블로그 게시글 하나로 끝낼 생각이었는데요. 제가 누군가 미리 알려줬으면 좋았을 다섯 가지 조언은 사실 한 시간짜리 세미나에서 나온 내용이었거든요. 그런데 다 쓰고 나니 한 번에 다 읽기엔 너무 길어지더라고요. JMP 블로그 편집자분들이 흔쾌히 시리즈로 나눠서 올릴 수 있도록 허락해 주셨습니다. 그래서 이제 조금씩 나눠서 올리도록 할게요. 편하게 읽어주세요.
정말 그렇습니다!
그리고 기술적인 배경을 갖고 시작하지 않은 사람들에게는 더욱 그렇습니다. 나처럼.
대학에서는 역사를 공부했어요. 하지만 매우 오래 전 중학교 시절, 대수학은 싫고 기하학은 좋아했던 기억이 납니다.
그래서 우연히 JMP를 발견했을 때, 버전 1 , 나는 푹 빠졌습니다. 아직도 그렇습니다.
Mike, 이것이 나를 웃게 만들었습니다. 그리고 몇 가지 이유가 있습니다. 첫째, '첫 JMP 경험'의 세월의 차이와 그에 따른 관점의 차이를 보여줍니다.
제가 처음 JMP를 사용했을 때 JMP는 여전히 첫 번째 버전인 작은 Mac 전용 제품이었습니다. 제가 사용하고 있던 '경쟁 제품'에는 VAX에 SAS와 RS/1이 포함되어 있었습니다. '멋진' 그래픽의 경우 일반적으로 데이터를 Kaleidagraph로 내보냈고 JMP가 등장했습니다. 그래프를 그렇게 빠르고 쉽게 생성하고 다시 생성할 수 있다는 생각 자체가 정말 놀라웠습니다. 당시에는 상황이 다소 초보적이었지만 다른 모든 것보다 훨씬 앞서 있었기 때문에 문제가 되지 않았습니다.
그 당시 우리는 '그래프를 먼저 작성한 다음 질문을 하세요'라는 원칙을 즉시 받아들였습니다. 이는 거의 30년이 지난 후에도 신규 사용자를 위한 저의 첫 번째 조언으로 남아 있습니다!
그래서 시도했지만 아무 것도 발견하지 못했고, 데이터를 시각화하는 목적이 (Mike의 표현을 빌리자면) 선형 모델을 데이터에 맞추는 것이 완전히 부적절하다는 것을 깨닫는 것이었습니다. 그러나 시각화를 건너뛰고 통계표에는 그런 내용이 표시되지 않습니다.