상관계수와 결정계수
처음 GPT가 출시된 이후 "블로그 원고와 제안서를 3분 만에 만들 수 있다"라는 말을 듣고, 머릿속으로는 전 세계 20여 국가를 자유롭게 돌아다니며 노트북 하나로 월 1,000만원을 벌고 있는 디지털 노마드의 삶을 꿈꿨습니다. 업무 시간을 100분의 1로 줄여주는 극한의 시간 효율이라니! 이건 AI에게 일자리를 뺏기니 마니를 논하기 이전에, 안 쓰면 그냥 뒤처질 수밖에 없는 시대의 흐름이라고 확신했죠.
그런데 이게 뭐람. 이건 블로그 원고가 아니라 그냥 목차 아이디어 수준인데..? 사실상 어느 부분부터 건드려야 할지 감도 안 오는, 완성된 결과물과는 거리가 멀어도 너무 먼 결과물이 나왔어요. 초안과 기획안 사이의 그 어디쯤이랄까..? "AI가 블로그 원고를 만든다"는 말 보다, "AI가 작성한 원고를 업로드한다"는 배포가 더 놀라운 수준입니다. 이후로도 몇 번 다양하게 시도하다가, 월 1,000만 원짜리 디지털 노마드의 삶은 다시 곱게 접어두었던 기억이 나네요.
그러나 오늘날에 와서, AI를 아예 배제시켰냐고 묻는다면 그건 아닙니다. 물론 '블로그 원고 작성'이나 '기획안 작성', '아이디어 도출' 등 크리에이티브한 영역의 만족도는 아직 많이 부족하지만 조금만 다른 용도로 활용하면 얼마나 멋진 기술로 실무에 활용할 수 있는지 깨달았기 때문이죠. 우리 모두에게 각자가 잘하는 일이 있듯이, GPT도 '잘' 활용할 수 있는 방법이 얼마든지 존재합니다.
GPT 데이터 분석의 꽃은 '파일 첨부' 기능이다.
무료 버전인 GPT-3.5와 달리, GPT-4로 업그레이드하면 '파일 첨부'라는 신세계가 펼쳐집니다. 기존에 GPT를 사용하면서 '퀄리티가 영 별로인데..?'라고 생각했다면, GPT 입장에서 생각해 볼까요? 갑자기 웬 인간이 나타나서 사업기획서를 만들라고 하는데, 우리 부장님이 나에게 와서 대뜸 "매출 올릴 방법 찾아와"라고 말하시는 것과 똑같지 않을까요? 거의 무에서 유를 창조하는 오더를 내리니, GPT입장에서는 나름 노베이스로 열심히 응대해 준 것 같긴 합니다.
때문에 무에서 유를 만드는 방향이 아니라, 기존의 데이터를 바탕으로 결과물을 요청할 때 응답의 정확도가 더욱 높아집니다. 가령 데이터 raw 파일 하나를 던져주고 추상적인 결과값을 원하더라도, 우리보다 훨씬 방대한 지식으로 올바른 결과물을 찾기 위해 노력해 주기 때문에 '데이터를 도출할 수 있는 원본 파일'의 유무는 GPT에게 올바른 결과를 도출하기 위한 필수 조건이죠.
(1) raw 데이터 첨부하고, 원하는 '결과' 요청하기
GPT를 데이터 분석에 활용할 때 장점은 크게 두 가지가 있어요. 하나는 raw 데이터를 첨부하더라도 복잡한 수식이나 데이터 전처리 과정 없이 원하는 결과가 나온다는 것. 다른 하나는 요청한 결과에 도달하기 위해 다양한 방법을 제시해 준다는 것입니다.
플레이어의 입장에서 가장 큰 장점은, 전문적인 통계 지식을 몰라도 된다는 점입니다. 통계학을 전공하지 않은 일개 문과생인 내가 GPT의 도움을 받으면 ARIMA 모델, 분산 분석, 표준편차까지 마치 내 지식인 것 마냥 자유롭게 사용할 수 있어요. 다만, 한 가지 주의할 점은 AI 또한 아직까지 오답을 보이는 경향이 있어 수치를 맹신할 수는 없습니다. AI가 도출한 결과를 논리적으로 교차검증하는 과정은 별도로 거쳐야 하죠.
우리의 비즈니스 목표와 관련 있는 지표는 무엇인가?
(2) 상관관계분석
상관관계는 2개 변수가 선형 관계가 있는(상수 비율에서 함께 변경됨을 의미함) 범위를 표현하는 통계적 측도입니다. 원인과 결과에 관한 표현 없이 간단한 관계를 설명하는 일반적인 도구입니다.
선형회귀분석, 시계열 등 다양한 통계모델이 있지만, 개인적으로 가장 애용하는 건 상관관계 분석입니다. 상관관계를 계산하는 것은 지극히 어렵지만, 계산된 상관관계는 너무 쉽고 명확하기 때문이죠. 그런데 raw 파일만 집어넣으면 GPT가 상관관계를 알아서 계산해 준다는 사실을 알고 계셨나요? 가장 어려운 계산 단계가 끝났으니, 잘 차려진 밥상에 숟가락만 쥐고 있어도 "능력자" 소리를 들을 수 있습니다.
상관관계는 데이터 간의 관련성에 대한 지표로, '(1) 관계가 양수인지 음수인지'와 '(2) 얼마나 관련성이 높은지' 두 가지 요인으로 해석합니다. 양의 상관관계는 정비례 관계를 뜻하고, 음의 상관관계는 반비례 관계를 뜻하죠. 상관계수는 0을 기준으로, -1 혹은 1에 가까울수록 높은 관련성을 보입니다. 예를 들어볼까요?
(1) '객단가'는 '판매 수량'과 음의 상관관계를 가진다.
=> (상품별로 가격이 상이할 경우)이 명제는 참이다. 판매 수량이 늘어날수록, 객단가는 감소하기 때문이다.
(2) '구매수'의 상관관계를 계산했을 때
'신규 회원수'의 상관계수는 0.6812이고, '재구매수'의 상관계수는 0.5742이다.
=> 해당 비즈니스는 Retention 보다 신규 회원 확보에 더욱 많은 리소스를 투입해야 한다.
상관계수를 활용할 때는 두 가지를 주의해야 합니다.
첫째. 상관관계는 인과관계가 아닙니다. 대표적인 예가 "아이스크림이 많이 팔리면, 해안가에 상어가 많아진다" 등의 상관관계인데 그냥 둘 다 여름이라서 아이스크림의 판매율과 상어의 출현율이 높아지는 거지, 아이스크림으로 인해 상어가 많아지는 건 아니죠. 따라서 상관관계는 원인과 결과로 확정 짓기보다 조금 더 넓은 시야에서 바라봐야 합니다.
둘째. 일별 raw 데이터가 필요합니다. 상관계수는 총 total 값이 아니라 일마다 변화하는 데이터의 추이를 각각 대입하여 계산하기 때문에, 데이터는 최대한 상세해야 합니다. 또한 계산 기간이 늘어나면 늘어날수록 정확도가 증가합니다.
실습을 해볼까요? 위와 같은 Raw 데이터 엑셀 파일을 준비하면 됩니다. 각 열의 항목은 각자 분석하고 싶은 요인을 넣으면 돼요. 해당 데이터 파일은 2023년 6월 ~ 2024년 2월까지 9개월의 데이터를 종합하였으며 [GA4, 내부 판매 기록, 광고 관리자]까지 3개의 플랫폼입니다.
데이터 전처리가 끝났다면, 해당 파일을 그대로 GPT에 집어넣고 위와 같이 질문하면 됩니다. 상관관계는 특정한 요인과 다른 항목들의 상관관계를 파악하기 위함으로, 비교하고 싶은 기준을 말해야 합니다. 나는 "각 항목이 매출과 어떠한 관련성을 가지는지" 알아보기 위해 'Sales' 열을 기준으로 설정하였습니다.
결정계수(R-squared)는 간략히 말하면 데이터의 신뢰도를 측정하는 지표이다. 0부터 1까지 나타나며, 1에 가까울수록 신뢰도가 높다고 이해하면 됩니다.
결과를 기다리면 이런 표가 나오는데 (1) 어떤 요인의 상관계수가 높은지, (2) 결정계수는 0.5 이상인지를 위주로 확인하면 됩니다. 위 표에서 얻을 수 있는 인사이트는 아래와 같습니다.
1. 옵션 상품의 판매량이 전체 매출에 기여하고 있습니다. 결정계수는 0.5 보다 낮으며, 옵션 판매량이 매출 변동성의 약 41%를 설명하지만 상관계수가 0.646으로 다소 유의미한 지표라고 판단됩니다. 따라서, 옵션 상품의 판매량을 더욱 높이기 위한 프로모션 및 세일즈 전략을 수립하는 것이 전체 매출액 증가에 직접적으로 기여할 것입니다.
2. 비용(광고비)은 매출에 극히 미비한 영향을 미치고 있습니다. 매출 성장을 위해 광고비를 증액하는 것은 지극히 비효율적이며, 기존 광고 캠페인의 성과 측정 및 운영 재검토가 필요한 상황입니다.
3. 웹 방문자의 증가가 매출 신장에 전혀 기여하지 못하고 있습니다. 유입되는 방문자의 질이 낮거나, 지나치게 높은 이탈률이 나타나고 있는 것으로 의심됩니다. 유입을 높이기 위한 Paid Media 확장보다, 내부 Funnel을 재점검하거나 UX 관점에서 Pain point가 없는지 점검해야 하는 상황이네요.
사실 GPT를 통해 할 수 있는 데이터 분석은 선형회귀분석과 시계열 분석, 수익 분석 등 정말 무궁무진하지만 개인적인 능력 부족으로 아직 자유자재로 활용하지 못하고 있습니다. 전체적인 개념을 이해했고, 활용하기 워낙 편한 게 상관관계 분석이어서, 해당 내용만 열심히 돌리고 있지만.. 얼른 더 스터디해서 다른 모델도 활용해보고 싶네요.
다음 시간에는 GPT로 파이썬 / 셀레니움을 활용해 자동화 프로그램을 만드는 방법에 대해 알아보겠습니다.
DBR. 담배값 오르면 흡연율 낮아질까? 상관관계vs.인과관계
아이보스. (우뇌) 마케터의 시선으로 데이터 분석하기 - 상관관계 분석