홍대 앞 상권이 청년을 불러모았을까? 청년들이 상권을 만들었을까?
상권과 특정 세대 소비자 집중도 관계 분석시 동시성의 오류 발생할 가능성 높아 도구 변수를 이용해 둘 간의 복합 상관관계를 단순 상관관계로 분리해야 실제 기업 사례에서도 잘못된 계산 후 잘못된 결론 얻는 경우 많아
데이터 사이언스 관련 프로젝트를 하다보면, 비일비재하게 발생하는 사안이 인과관계 오류다. 원인이라고 생각했던 변수가 사실은 결과였고, 반대로 결과라고 생각했던 변수가 원인인 경우들이 상당히 많다. 이런 오류를 데이터 사이언스에서는 ‘동시성의 오류(Simultaneity)’라고 부른다. 관련 연구가 가장 먼저 시작된 곳은 경제학 중 계량경제학으로, 일반적으로 중요 데이터 상실(Omitted Variable), 데이터 부정확성(Measurement error)와 더불어 3대 데이터 내부 오류(Endogeneity error)로 불린다.
현실 사례로, 최근 우리 석사 학생의 졸업 논문을 하나 예시로 들어볼 수 있을 것 같다. 해당 학생은 홍대 앞 상권이 2030 청년을 불러모았을 것이라는 판단에 기초해, 2030 청년들이 모이는 주요 변수들을 찾고, 다른 변수들을 더 찾고나면 청년들이 모이는 상권을 구성하는 변수를 찾을 수 있지 않을까는 가정을 갖고 왔다. 학생의 가정이 합리적일 경우에는 향후 상권 분석을 하시는 분들이 쉽게 모델을 차용해서 쓸 수 있을 것이고, 상권분석이 단순히 작은 매장만 열려고 하는 분들 뿐만 아니라, 소비재 기업의 판촉 마케팅, 카드사의 길거리 마케팅 등등 다양한 분야에 응용될 수 있는 여지가 있다.
동시성의 오류(Simultaneity error)
그런데, 안타깝게도 홍대 앞 상권이 2030 청년을 불러모은 것이 아니라, 홍익대학교를 비롯한 인근 연세대학교, 이화여자대학교, 서강대학교 등의 학교 집단이 2030 청년을 불러모았고, 그 학생들이 움직이는 교통 요지 중 한 곳이 현재의 홍대 앞 상권이 되었다는 생각에 적절한 반박을 내놓지를 못하더라. 원인이라고 생각했던 홍대 앞 상권이 사실은 결과고, 결과라고 생각했던 2030 청년이 반대로 원인일 수 있는 것이다. 이런 동시성이 있는 경우에 무작정 회귀분석, 혹은 최근 인기를 얻고 있는 각종 비선형 회귀분석 모델(예. 딥러닝, 나무 모형 등등)을 이용할 경우, 원인-결과가 중첩되는 복합적인 인과관계 탓에 1개 변수의 효과를 과대/과소 계상하거나, 심하게는 해당 변수와 관련이 있는 모든 변수의 효과를 과대/과소 계상하는 오류를 범할 수 있다.
계량경제학계에서는 일찍부터 이런 경우를 해결하기 위해 ‘도구변수(Instrumental Variable)’이라는 개념을 갖고 왔다. 인과관계가 복합적으로 작용하는 부분을 비롯해 3대 데이터 내부 오류 상황 중 어떤 경우에 관계없이 문제가 생긴 부분을 제거해주는 데이터 전처리(Data pre-processing) 작업 중 하나라고 할 수 있다. 데이터 사이언스 분야가 최근에 생긴 이후 주변 학문들로부터 각종 방법론을 차용하는 중인데, 출발점이 경제학계다보니 아무래도 공학계열 출신 전공자들에게는 낯선 방법론이기도 하다.
특히 완벽한 정확성을 따지는 수학, 통계학 등의 자연과학 방법론으로 사고 방식이 정리된 분들께는 ‘가짜 변수(Fake variable)’이라는 지적을 받는 경우도 종종 있으나, 우리 현실의 데이터는 각종 오류와 상관관계를 갖고 있는만큼, 현실 데이터를 이용한 연구에서는 피할 수 없는 계산이다.
도구 변수를 찾아 데이터 전처리부터
다시 홍대 앞 상권으로 돌아와서, 연구 주제를 갖고 온 학생에게 둘 간의 복합적인 인과관계 중 한 개 변수와 직접적인 관련이 있지만 (Revelance condition) 다른 변수와는 큰 관련이 없는 변수(Orthogonality condition)을 찾을 수 있냐는 질문을 던져봤다. 홍대 앞 상권이 커지는데 영향을 주지만 2030 청년들이 모이는데는 직접적인 영향을 주지 않은 변수, 혹은 2030 청년들이 모이는데는 직접적인 영향을 주지만 홍대 앞 상권과는 직접적인 관련이 없는 변수를 찾으면 된다.
우선 주변의 대학들의 존재는 2030 청년들이 모이는데 결정적인 역할을 한다. 이 중 속칭 ‘인싸’인 학생들이 홍대 앞 상권 출입이 더 잦을 것이고, 반대로 ‘아싸’인 청년들은 홍대 앞 상권보다 다른 상권을 더 이용할 가능성이 높다. 이런 대학들의 존재가 2030 청년들의 군집에 더 도움이 되었는지, 그런데 홍대 앞 상권과 직접적인 관련이 없는지 가장 쉽게 알 수 있는 방법은 학교를 1개씩 제거해보면서 청년 밀집도를 보는 것인데, 안타깝게도 인근 4개 대학을 1개씩 분리하며 보기는 어렵다. 오히려 코로나19 기간 동안 비대면으로 공부하면서 학교 주변을 찾는 학생들이 급감한 상태에서 홍대 상권이 어떤 방식으로 작동했을지를 따지는 편이 더 합리적인 도구 변수 선정이 된다.
그 외에도 홍대 앞과 신촌 역 일대 비교를 통해 각각 교통의 요지, 높은 학생 군집도라는 공통점을 갖고 있음에도 불구하고 상권의 구성 요소에 해당하는 상점들의 특성들을 구분해보는 것도 좋은 방법이다. 일반적인 인식에 홍대 앞 상권은 다른 곳에서 볼 수 없는 독특한 상점들이 몰린 곳이라는 이미지가 있는만큼, 톡특한 상점의 숫자가 복합적인 인과관계를 분리하는 변수로 쓰일 수도 있다.
실제 계산이 진행되는 방식은?
그간 국내에서 가장 답답했던 부분은, 모든 변수를 다 집어넣고 ‘인공지능’이 알아서 답을 찾아준다는 맹신을 갖고 데이터를 모두 입력해보는 계산법들이었다. 그 중 여러 변수를 넣었다 뺐다만 반복하는 계산방법으로 ‘단계분석법(Stepwise regression)’이라는 것이 있는데, 통계학계에서도 이미 이용을 조심해야 된다는 경고가 있음에도 불구하고 제대로 통계학 교육을 받지 않은 다수의 공학도들이 아무런 생각없이 마구잡이로 해당 계산법을 이용하는 것을 너무 자주 봤다.
위에서 지적했듯이 복합적인 인과관계를 담고 있는 ‘동시성의 오류’를 제거하지 않은 상태에서 선형 혹은 비선형 계열의 회귀분석 계산을 할 경우, 변수들의 효과가 과대/과소 계상되는 사건이 나타날 수밖에 없는 만큼, 이런 경우에는 먼저 데이터 전처리 작업을 필수적으로 진행해야 한다.
도구변수를 쓰는 데이터 전처리 작업은 데이터 사이언스 분야에서 ‘2단계 회귀분석(2-Stage Least Square, 2SLS)’라고 부른다. 1단계에서 복합 인과관계를 제거해 단순 인과관계로 정리한 후, 2단계에서 우리가 알고 있는 일반적인 선형 혹은 비선형 회귀분석 작업을 진행하는 것이다.
1단계의 제거 작업은 위에서 선정된 도구변수 1개, 혹은 여러 개를 이용해 설명 변수로 쓰는 변수에 회귀분석 작업을 진행한다. 위의 홍대 앞 상권 사례로 돌아오면, 2030 청년들이 우리가 쓰고 싶은 설명 변수고, 2030 청년들과 관계가 있을 것 같지만 정작 홍대 앞 상권과는 직접 관련이 없을 것으로 예상되는 인근 대학교 관련 변수를 활용하는 것이다. 2030 청년들의 숫자와 대학교의 코로나19 팬데믹 기간 전후 관계를 0, 1로 구분해 회귀분석을 진행할 경우, 2030 청년 중 대학교로 인해 설명되는 부분만 추출해낼 수 있다. 이렇게 추출된 변수를 쓸 경우에는 위의 복합 인과관계가 아니라 단순 인과관계로 홍대 앞 상권과 2030 청년들 간의 관계를 파악할 수 있는 것이다.
실제 현장 기업의 실패 사례
실제 데이터가 없으니 함부로 단견을 짓기는 어렵지만, 그간 겪어본 ‘동시성의 오류’ 사례를 봤을 때, 2SLS 작업 없이 단순히 모든 데이터를 집어넣고 선형 혹은 비선형 회귀분석 계산을 했을 경우, 2030 청년들이 많기 때문에 홍대 앞 상권이 확대되었다는 단순한 결론에 굉장히 많은 가중치가 쏠리고, 2030 청년 이외의 인근 주거 및 상업지역 월세, 독특한 상점의 유무, 지하철 및 버스 정류장 인근의 접근성 등은 크게 유의미하지 않은 값으로 나올 것이다. 둘 간의 복합 상호 작용이 다른 변수에 배정되었어야 할 설명력을 앗아갔기 때문이다.
국내에서 제대로 교육을 받지 못한 다수의 공학도들이 여러 변수를 교차로 집어넣는 ‘단계분석법’ 관점의 나무 모형, 딥러닝 등에 의존해 ‘인공지능이 찾아준 결론’이라는 주장을 하는 경우도 있으나, 변수 간 설명 구조가 선형이냐 비선형이냐의 차이만 있을 뿐, 따라서 변수의 설명력 비중치가 일부 수정되는 차이만 있을 뿐, 결론이 엉망으로 나오는 것은 동일하다.
위의 사례는 실제로 모 카드 회사와 통신사가 공동으로 마포구 일대의 상권 분석을 했을 때 저질렀던 잘못과 완벽하게 일치한다. 해당 연구에 참여했던 관계자 분이 ‘2030 청년들 모으는게 답이더라구요’라는 표현을 쓰길래, 계산방법을 확인해봤고, 예상했던대로 ‘도구변수’를 활용해야한다는 이해도가 전혀 없었던 탓에 데이터 전처리를 단순히 결측값 버리는 작업 정도로만 생각했었다는 것을 알 수 있었다.
사실 홍대 뿐만 아니라 서울 지역 주요 상권을 구성하는 요소는 매우 복합적이다. 2030 청년들이 모이는 것은 대부분 복합적인 상권 구성 요소가 사람을 끌어들이는 매력이라는 결과값을 만들어냈기 때문인데, 위와 같은 단순 ‘인공지능 계산’으로 답을 찾아내기는 어렵다. 현재 시장에서 이뤄지고 있는 데이터 분석 작업의 오류를 지적하려다보니 단순히 ‘동시성의 오류’만을 선택했으나, 중요 변수를 놓쳐서 발생하는 오류(Omitted Variable Bias), 모아놓은 변수 데이터의 부정확성(Attenuation bias by measurement error) 등을 복합적으로 고려해야하는, 상당히 고급 모델링 작업이 필요하다.
잘못된 머신러닝, 딥러닝, 인공지능 교육을 받고 있는 학생들이 위의 개념을 익혀 합리적이고 체계적인 모델링을 할 수 있게 되기를 기대해본다.