에릭 시겔 지음, 고한석 옮김/이지스퍼블리싱
추천 대상 : 머신러닝을 잘 모르는 사람, 기본 개념은 알지만 어떻게 활용하면 좋을지 감이 잘 안 잡히는 사람
추천 정도 : ★ ★ ★ ★
메모 : 산 지는 꽤 됐는데 읽을 게 많아서 미루다 보니 좀 시간이 걸렸다. 하지만 책 내용 자체가 재밌어서 읽는 시간 자체는 짧았다. 중간에 좀 루즈한 부분이 있긴 했지만.. 마스터 알고리즘도 그렇고 이 책도 머신 러닝에 관심 있는 사람이라면 좋은 책이어서 남편에게 여러 번 권했지만 내 말을 듣지 않고 마리오 카트를 하고 있다(ㅠㅠ)
기계 학습의 임무는 단지 손안에 쥐고 있는 데이터에서 드러나는 패턴을 찾아내는 것뿐만이 아니라 일반적인 패턴을 찾아내는 것이다. 그럼으로써 학습한 내용이 지금까지 마주하지 못했던 전혀 새로운 상황에서도 진실이 될 수 있게 하는 것이다.
예측 분석의 응용은 다음에 의해서 규정된다.
1. 무엇을 예측하는가 : 예측하고자 하는 행위(행동, 사건, 발생 등)의 종류
2. 무엇을 할 것인가 : 예측에 기반한 의사결정. 각각의 예측에 따라 기업이 취하는 행동
무한히 긴 목록 중에서 비즈니스 측면에서 본질적인 응용은 매스 마케팅이라고 할 수 있다.
예측 분석 응용: 우편홍보물의 타기팅
1. 무엇을 예측하는가 : 마케팅 홍보물에 대해서 어떤 고객이 반응할 것인가.
2. 무엇을 할 것인가 : 더 적극적으로 반응할 것으로 예상되는 고객을 선별하여 접촉한다
‘예측이 가능하게 하려면 각 개인에 대해서 알고 있는 다양한 사실들을 통합하는 방법을 배워야 한다. 이를 위해서 수백만 개의 표본을 활용하라.’
어떤 모델을 사용하려면 먼저 그 모델을 만들어야 하는데, 예측 모델을 만드는 것이 바로 기계 학습이다.
완전히 새로운 종류의 강력한 인적자원 데이터가 등장하고 있다. 그것은 추론(speculative) 데이터이다. 그것은 인사 데이터, 재무 데이터 또는 한 사람의 사생활 데이터를 뛰어넘는 것으로 미래에 대한 추정(estimation)이며, 사실상 그 직원의 마음, 태도, 의도에 대한 추정이다. 이것은 내적인 통찰력인가 아니면 내면에 대한 침범인가?
분석의 질은 데이터의 질에 달려 있다(쓰레기가 들어가면 쓰레기가 나온다).
데이터는 언제나 우리에게 말을 건넨다. 데이터는 언제나 우리에게 들려줄 이야기를 가지고 있으며, 거기에는 언제나 무언가 배울 것이 있다.
예측은 작은 것에서 시작한다. 예측 분석을 하기 위해서 사용되는 ‘예측 변수’에는 어떤 것들이 있을까? 예를 들어 한 개인이 가장 최근에 구매 행위를 한 시점으로부터(또는 범죄를 저지르거나 의학적 징후를 보인 때로부터) 몇 주가 지났는지를 숫자로 표현하는 ‘최근성’(recency)이라는 변수는 머지않은 미래에 그 사람이 그 일을 다시 할 가능성이 얼마나 되는지를 종종 나타낸다. 마케팅 접촉이든, 범죄 수사든 가장 ‘최근’에 활동적이었던 사람부터 주목하는 것이 합리적이다.
마찬가지로 한 개인이 그 행동을 몇 번이나 했는지를 가리키는 ‘빈도’(frequency)라는 변수 또한 많이 사용하는 척도이다. 어떤 행위를 자주 한 사람은 그 행위를 또다시 할 가능성이 높다.
사실상 한 사람이 과거에 무엇을 했는지가 그 사람이 미래에 무엇을 할지를 예측하게 해준다. 과거에는 지역이나 성별과 같은 무미건조하면서도 핵심적인 인구학적 특징들을 많이 사용한 반면에 예측 분석은 이를 더 확장하여 최근성, 빈도, 구매, 금융활동, 통화 및 웹서핑 등 ‘행위 예측 변수’를 포함하는 데이터를 섭취한다. 상당수의 경우 이러한 행위들은 가장 가치 있는 데이터이다. 우리가 예측하고자 하는 것은 항상 특정한 행위이며, 실제로 행위가 행위를 예측하게 해준다. 장폴 사르트르가 말하였듯이 “[한 사람의] 행동이 그의 진정한 자아를 말해 준다.”
예측 분석의 목적은 직관의 영역 너머에 있는 잠재적 진실의 끝없는 영토를 탐색하는 것이다. 데이터 효과가 작동하면서 예측 분석은 논리에 어긋나는 것처럼 보이는 연결 관계들을 당신에게 제시한다.
많은 사람들이 말하듯이 여기서 딜레마는 ‘상관성이 인과성을 의미하지는 않는다’5는 것이다. A와 B 사이에서 예측적 관계를 발견했다고 해서 A와 B 중 하나가 다른 하나의 원인이 된다는 것을 의미하지는 않는다. 절대로, 결코 아니다
우리는 ‘무엇’인지는 알지만 ‘왜’인지는 알지 못한다.6
예측 분석을 적용함에 있어서 우리는 일반적으로 인과관계에 대해서는 알 수 없으며 굳이 신경쓸 필요도 없다. 많은 예측 분석 프로젝트는 미래를 예측하는 데 목적이 있는 것이지 세상을 이해하고 무엇이 그렇게 작동하게 만드는지를 알아내는 것이 목적이 아니다. 그러니 그저 제대로 작동하기만 하면 된다. 예측은 해석보다 우위를 차지한다. 예측 분석은 해결책을 찾아 제시하는 것에 목표를 두고 수행된다.
우리의 사고는 순응적이어서 사람들은 무엇이든지 간에 그것을 설명하기 위해서 그 근거가 될 만한 이론을 찾아낼 만반의 준비가 되어 있는 것이다.
예측 분석은 그 자체가 우연한 발견을 촉진하도록 설계되어 있다. 예측 모델링은 광범위하고 탐색적인 분석을 수행하며 많은 예측 변수들을 하나하나 테스트해 본다.
우리는 ‘다변량’(multivariate) 모델로 나아가야 한다. 왜 그럴까? 효과적인 예측 모델은 한 개의 변수가 아니라 여러 개의 변수를 함께 고려해야만 하기 때문이다.
이러한 학습 방법론을 ‘의사결정 나무’(decision tree)라고 부르는데 이것이 예측 모델을 만들기 위한 유일한 방법은 아니지만 효과적이면서도 상대적으로 간단하다는 장점으로 인해서 실무자들이 제일 많이 또는 두번째로 선호하는 방법론이다. 언제나 가장 정확한 예측 모델을 제공해 주는 것은 아니지만 이해 불가능한 수학 공식들과 비교할 때 이 모델은 한눈에 파악하기가 쉽기 때문에 예측 분석을 배우기 위한 첫걸음으로 적당할 뿐만 아니라 예측 분석을 적용하는 거의 모든 프로젝트의 출발점으로도 매우 적합하다.
예측 모델의 성능을 비교하는 하나의 측정치(metric)가 있다. 일명 ‘향상도’(lift)라고 한다. 향상도는 널리 쓰이는 측정기준으로 일종의 ‘예측 승수’(predictive multiplier)라고 할 수 있는데, 모델을 적용하지 않았을 때와 비교해서 어떤 특정한 모델을 적용했을 때 얼마나 더 많은 목표(target) 고객을 파악해 낼 수 있는지를 알려준다.
학습을 죽이는 범인은 ‘과잉학습’(‘과적합화’overfitting라고 불린다)이다. 과잉학습은 잡음을 정보로 잘못 간주하는 함정인데, 데이터로부터 너무 많은 것을 고려 요소에 포함시키는 것을 가리킨다. 당신이 너무나 많은 것들을 숫자로 읽어들이면 과잉학습을 하게 되어 잠재되어 있는 진실을 발견하는 것으로부터 오히려 멀어지게 된다.
모델링 방법은 다양하지만 그것들은 모두 같은 도전과제를 안고 있다. 즉 가능한 한 많이 학습하되 너무 많이 학습해서는 안 된다는 것이다. 기계 학습에 대한 여러 접근 방식 중에서 의사결정 나무는 종종 가장 사용자 친화적이라고 간주된다.
예측을 위한 모델링을 하려는 모든 시도들은 일반적 원칙을 수립해야 하고 확보한 데이터에서 잡음을 걸러내야 하는 핵심적 도전과제에 직면한다. 이것이 문제의 본질이다. 학습 대상인 데이터에 설사 수백만 개 또는 수십억 개의 사례가 존재하더라도 미래에 맞닥뜨릴 상상 가능한 상황들이 얼마나 많은지와 비교해 보면 그것은 여전히 제한적인 부분집합에 불과하다. 학습사례를 구성할 수 있는 가능한 조합의 수는 기하급수적이다. 그러므로 지나치게 많은 학습과 지나치게 적은 학습 사이에서 균형을 맞출 수 있는 학습 프로세스를 설계하는 것은 가장 뛰어난 과학자조차도 제대로 파악하기 어렵고 신비로운 것으로 느껴진다.
끝까지 진행하면서 너무나 많이 학습하도록 내버려둔다. 그러고 나서 다시 뒤로 돌려 하나씩 하나씩 학습한 것들을 잊어버리게 한다. 그리하여 결국 원점으로 돌아와 너무 적게 학습하게 될 때까지 진행한다. 그러면서 예측하게 하고 잘못을 저지르게 한다. 왜? 잘못은 그것을 저지른 이후에야 명백하게 알 수 있기 때문이다.
다른 말로 하자면, 나무를 지나치게 크고 무성해질 때까지 자라게 했다가 다시 가지를 쳐나가는 것이다. 여기서 비법(trick)은 나무의 확장을 결정지었던 훈련용 데이터에 의존하여 가지치기를 하는 것이 아니라 확장이 뒤틀리는 지점을 드러내주는 검증용 데이터에 의존하여 가지를 쳐내야 한다는 것이다.
마이크로 리스크를 회피하기 위해 이용되는 예측 분석은 강력한 펀치를 구사할 수 있다. 그러나 거시적인 리스크에 대처하는 것은 완전히 다른 종류의 게임이다.
삶에서 드물게 발생하는 일들이야말로 가장 예측하기 힘든 것이다.
기업이 예측 분석을 위해서 크라우드소싱을 활용하려면 연구 개발에 대해서 완전히 거꾸로 접근해야 한다. 전략, 계획, 데이터, 연구 성과를 비밀로 보호하는 것과는 반대로 이것들을 모조리 공개해야만 하는 것이다.
두 개 이상의 예측 모델을 결합하는 것은 간단하다. 그것들을 어떻게 결합하는 것이 좋을지에 대해서 학습하는 예측 모델링을 적용하면 된다.
단결은 힘이다. 더 나아가 우리는 더 이상 누가 이 일을 가장 잘하는지 가려낼 필요가 없다. 누가 가장 똑똑한지는 중요하지 않다. 다양성의 혼합이 가장 훌륭한 비결이다.
앙상블 모델링은 예측 분석 산업에 돌풍을 일으켰다. 앙상블 모델링은 21세기 들어 첫 10년 동안 예측 모델링에 있어서 가장 중요한 진전으로 평가
된다
CART 의사결정 나무의 발명자인 ‘ 놀라운 4인조’(이 책의 4장 참조) 중 한 명인 레오 브레이먼(Leo Breiman)은 앙상블 모델에서 중요한 방법론 중 하나인 ‘자루 담기’(bagging. ‘ bootstrap aggregating’의 줄임말)를 개발하였다. 한 자루 가득 모델들을 만들어내는 것이다. 이 자루 안에서 각 모델은 서로 예측 성능을 비교하여 우위를 가린다.
많은 CART 의사결정 나무들을 모아놓은 ‘자루 담기’의 한 변형은 이러한 무작위적 요소를 반영하여 ‘무작위 숲’(random forests)이라고 불린다.
실제로 동일한 주제의 다양한 변주곡들인 다른 앙상블 방법론들은 ‘모델 버킷’(bucket of models), ‘번들링’(bundling), ‘전문가위원회’(committee of experts), ‘메타 학습’, ‘축적된 일반화’(stacked generalization), ‘트리넷’(TreeNet) 등 서로 비슷하면서도 의미가 분명한 자기만의 이름을 가지고 있다.
건물을 짓든, 교량을 건설하든, 아이폰의 운영체제를 만들든, 구성요소들을 조합하여 더욱 복잡하고 강력한 하나의 구조로 만든다는 개념은 엔지니어링의 핵심이다. 어느 누구도 거대한 구조물 전체를 단번에 설계하려고 하지 않으며 또 그렇게 할 수도 없다. 계층화된 부분들의 조합이 건축설계를 가능하게 만들어준다. 구조물의 각 레벨은 설계 후 단순한 유닛들을 이어붙인 것이다. 물론 실제로 열어보면 그 안은 복잡다단하지만 말이다.
대체로 앙상블 모델은 단일 모델보다 우수하다.
그런데 앙상블은 점점 더 복잡해져도 지나치게 민감하게 반응하지 않는 강건함(robust)* 을 유지한다. 앙상블은 마치 과잉학습에 대항하는 마법의 해독제를 뿌린 듯 보인다. 앙상블 모델을 ‘비밀 무기’라고 유머러스하게 부르는 존 엘더는 한 연구논문에서 이러한 딜레마를 인식하고 그것을 “앙상블의 일반화의 역설”이라고 이름 붙였다.
만약 훈련용 데이터에 작은 변화를 주었을 때 예측 결과에서 큰 차이가 난다면, 이 학습 방법은 취약한 것이며 무작위성의 변덕, 그리고 어느 데이터 세트에서도 찾아볼 수 있는 잡음(noise)으로부터 영향을 받는다는 것을 의미한다. 이러한 척도를 적용한 결과 개별 모델들보다 앙상블 모델의 복잡성이 ‘더 적다’는 것을 보여주었다.
이러한 측면에서 볼 때 앙상블 모델은 ‘덜’ 복잡한 행동을 보여준다. 따라서 앙상블 모델이 과잉학습하지 않으면서도 건강하게 학습할 수 있다는 장점은 전혀 역설적이지 않은 것이다.
기계에게 인간의 말은 너무 어렵다
‘이탈 모델링’(churn modeling)은 예측 분석의 가장 인기 있는 마케팅 응용이라고 할 수 있다. 경험이 있는 경영자라면 누구나 현재의 고객을 유지하는 것이 비즈니스의 기본이자 가장 중요한 일이라고 말할 것이다. 왜냐하면 새로운 고객을 확보하는 것보다 기존 고객을 그대로 머물도록 설득하는 것이 비용 측면에서 더 싸게 먹히기 때문이다.
예상치 못한 고객의 이런 행동은 ‘예측 분석을 사용해 무엇을 예측해야 하는가’라는 근원적인 질문을 던지게 만든다. 기업은 단순히 어느 고객이 이탈할 것인지 예측하는 것을 넘어서서 홍보물을 보내거나 전화를 했을 때에 고개들이 어떻게 반응할 것인지도 2차적으로 예측해야 하는가? ‘누가 떠나가려고 하는가, 그중에서 우리가 접촉을 한다면 머물게 될 사람은 누구인가’라는 더 복잡한 2단계의 질문에 대해서 예측해야만 하는가? 이 질문은 상당히 복잡하게 들린다. 이러한 질문에 답하려면 사람들이 어떤 경우에 마음을 바꾸게 되는지 추적할 수 있는 데이터가 필요하다.
2차적 예측을 포함하는 질문은 예측 분석의 또 다른 킬러 앱(killer app)* 이기도 하다.
어찌되었든 물건을 구입했을 사람을 찾아라
미 국방부장관 로버트 맥나마라(Robert McNamara)는 “측정 가능한 것을 중요하게 여기는 것보다는 중요한 것을 측정 가능하게 하는 방법을 찾아내야 한다”고 말했다
표준적인 반응 모델링은 다음과 같은 질문에 대해서 예측을 한다.
1. 그 고객을 접촉한 후 그는 구매할 것인가?
향상 모델링은 이 문장에서 단 한 단어만 바꿈으로써 모든 것을 바꾸어놓는다.
2. 그 고객을 접촉‘해야지만’ 그는 구매할 것인가?
그보다 더 적게 관여되어 있는 왼쪽 부분의 고객들은 움직이지 않는다. 그들이 더 많은 계좌를 개설하려고 마음먹고 있든 그렇지 않든 간에 그들의 계획은 접촉하더라도 바뀌지 않는다. 그들은 확실한 고객들과 가망 없는 고객들로, 어느 쪽이든 접촉할 만한 가치가 없다.
무엇보다도 오른쪽에 있는 ‘접촉 불가 대상’을 피하기 위해서 모든 노력을 기울여야 한다. 이미 상당히 많은 수의 계좌를 갖고 있는 개인들을 접촉하게 되면 그들이 계좌를 개설할 가능성은 오히려 더 줄어들게 된다. 위 도표의 곡선은 0 이하의 음수로도 내려가는데 이는 바로 ‘역효과’(downlift)를 의미한다.
향상 모델링은 과거에는 분리되어 있던 두 개의 익숙한 패러다임을 새롭게 결합함으로써 눈으로 인지할 수 없는 영향력을 정복할 수 있었다.
1. 조치집단의 결과와 통제집단의 결과에 대한 비교
2. 예측 모델링(기계 학습, 통계적 회귀분석 등)
비록 그들은 유권자 데이터 중에서 어떤 종류의 것들이 설득 가능성을 탐지하는 데 도움을 주었는지에 대해서 밝히지는 않았지만, (선거운동 접촉 여부와 상관없이) 오바마에게 투표할 의향이 있는지를 예측하기 위해서 그들은 인구사회학적 특징, 과거 투표 참가 이력, 잡지 구독 등 80여 가지 이상의 변수들을 활용하였다. 오바마 캠프가 가장 소중하게 여긴 데이터는 민주당 전국위원회의 데이터베이스였는데, 여기에는 과거의 여러 차례 대선 기간 중에 선거운동원들의 호별 방문에 대해서 각 유권자들이 어떤 반응을 보였는지(예를 들어 환영하였는지 아니면 문을 쾅 닫아걸었는지) 등에 관한 정보가 포함되어 있었다.