...the ability to match users across their various devices would provide brands with an unprecedented targeting and data-collection opportunity...
요즘 IoT 세상이 온다고 떠들썩하다. 저녁에 퇴근하면서 스마트폰 앱으로 에어컨을 켜놓고, 집에 오자마자 영상 5도에 딱 맞춰져 있는 시원한 맥주를 냉장고에서 꺼내는 광고 영상을 보면서 무슨 생각들을 하시는가? 세상 좋아졌다, 편하겠네? 행동 데이터를 추적해서 밥 벌어먹고 살고 있는 필자가 생각해 낸 첫번째 단어는 “크로스 디바이스 매칭(Cross-Device Matching)”이다. 여러 기계를 쓰고 있는 유저의 데이터를 모두 모아서 당신이 언제, 어디서, 뭘 하고 있는지 알아낼려면, 먼저 그 여러 기계들을 쓰고 있는 사람이 당신이라는 것을 추적할 수 있어야한다.
데스크탑과 랩탑에서 모바일로 사용자의 행동 반경이 옮겨오면서 온라인 광고 시장에서 가장 큰 화두는 멀티 스크린(Multi-screen) 유저에 대한 추적이 되었다. 시리즈 글 2번에서도 잠깐 언급했다시피, 필자가 사무실에서, 집에서, 통근길에 랩탑, 데스크탑, 모바일 기기로 검색했던 내용들을 3개의 기기로 나누어서 추적하는 것이 아니라, 1명의 유저가 한 행동으로 추적할 수 있다면 좀 더 정확하게 필자의 관심사를 파악할 수 있을 것이다. IoT와 맞물려서 이런 모든 행동 데이터를 다 추적할 수 있다면 언젠가는 퇴근 시간에 맞춰 에어컨을 켜고 냉장고의 맥주 칸 온도를 5도로 맞추는 순간 필자의 스마트폰에 치킨 5% 할인 쿠폰 메세지가 올지도 모른다. (진정한 Right time, right user, right message가 될 듯. 되려 소름끼쳐서 주문 안 할지도…)
이렇게 멀티 디바이스 (Multi-device)를 추적하는 기술을 “크로스 디바이스 매칭(Cross-Device Matching)”이라고 한다. (정확하게는 사용 기기 기준으로 크로스 플랫폼, 브라우저 기준으로 크로스 브라우저 등 세부 명칭이 있으나 통칭해서 “Device"로 부른다.) 위의 치킨 주문하는 사례처럼, 이 기술을 제대로 갖추고 있으면 빅 데이터가 정말로 행동 데이터로서 예측에 중요한 역할을 할 수 있는 데이터가 된다. 온라인 광고 시장에서 데이터 플랫폼으로 성공하기 위해서도, 광고 업체로 성공하기 위해서도, 그리고 자사의 유저들에게 최적화를 하기 위해서도 필수적인 기술이라는 것을 센스있는 관계자분들이라면 아마 쉽게 이해하셨으리라고 본다.
크로스 디바이스 매칭을 이야기하기 전에 먼저 간단하게 웹과 앱 환경을 정리해보자. 스마트폰에는 AD ID (광고 ID)라는 식별 부호가 운영체제 레벨에서 하나씩 부여가 된다. 필자가 쓰고 있는 안드로이드 폰에는 알파벳+숫자 50개 조합의 GAID라는 이름의 ID가 부여되고, 기계마다 하나씩 부여되기 때문에 안드로이드 타블렛과 스마트폰은 다른 GAID를 갖고 있다. 이 ID로 유저의 개인 신상을 “털어”서는 안 된다는 보안 이슈 때문에 GAID는 유저가 원하면 바꿀 수 있도록 되어 있다. 아예 Opt-out을 할 수도 있다. 아이폰과 아이패드를 쓰는 유저들은 App Store ID당 하나씩 IDFA가 부여되기 때문에 두 기기 모두 같은 ID를 갖고 있다. 애플도 그 ID를 기반으로 아이폰+아이패드+맥북+아이맥을 연동하고, 당연히 IDFA도 유저가 원하는 때에 바꿀 수 있고 Opt-out할 수 있다. 정리하면, AD ID 하나만 있으면 유저가 무슨 앱을 깔았는지, 언제 앱을 열었는지 같은 정보들을 (거의 모두) 다 알 수 있게 된다. (그리고 Opt-out하면 당신을 추적할 수 없다.)
웹은 환경이 약간 다르다. 웹 페이지에 들어가면 그 페이지에 있는 SDK가 유저를 Tagging하면서 추적이 시작되는데, 아무 페이지에서 광고를 찍고 들어가서 온라인 쇼핑몰의 이런 저런 상품을 보고나면 웹 페이지 주소가 엄청나게 길게 늘어져 있는 걸 본 적이 있을 것이다. 그 긴 주소에는 유저가 어느 페이지를 거쳐왔는지에 대한 모든 정보가 다 담겨있고, 그 내용을 웹 쿠키라고 부른다. 문제는 그러다 인터넷 브라우저를 끄면 더 이상 추적이 불가능하고, 웹 사이트 A와 B에서 따라붙는 쿠키 ID는 다르다. 따라서 어느 하나의 브라우저를 쓴다고 해도 방문한 웹 페이지마다 쿠키 ID가 다르기 때문에 앱 환경처럼 모든 것을 추적할 수는 없다. (물론 크롬 브라우저에 로그인하고 방문한 모든 페이지에 쿠키를 남기면 크롬은 당신의 정보를 다 알 수 있다. 필자처럼 매일 쿠키를 지우고, 평소엔 시크릿 모드로 웹 서핑을 한다면 또 모를까…)
한 줄로 정리하면, Consumers are media multi-tackers, but cookies are not.
Login ID Matching
그럼에도 불구하고 매우 확실하게 멀티 디바이스 유저를 추적할 수 있는 방법이 있다. 바로 개인 정보(Personally identifiable information, PII)를 이용하는 방법이다. 서비스 공급자는 유저가 웹과 앱에서 회원 ID로 로그인을 딱 하는 순간, 웹 서비스의 유저와 앱 유저가 같은 유저라는 걸 매칭시킬 수 있다. (물론 한 ID를 여러 사람이 쓰는 경우도 있겠지만) 보통 회원 ID 하나 당 한 사람을 매칭시킬 수 있으므로, 서비스 공급자 입장에서는 굳이 다른 수고로움을 무릅쓰고 다른 방법을 쓸 인센티브가 적다.
문제는 구글과 페이스북 같은 초 거대 유저 네트워크를 가진 회사들을 제외하면 보통 회원 ID 매칭을 시킬 수 있는 유저의 숫자는 매우 한정되어 있다는 사실이다. 거기다 만약에 로그인을 안 하면 어떻게 추적할 수 있을까? 1st party 데이터를 쓰는게 개인정보 보호법을 위반하는 것이라 이용 자체가 금지된 데이터 관리 플랫폼(Data Management Platform, DMP)이나, DMP를 기반으로 서비스를 제공하는 회사(Demand Side Platform, DSP)라면 어떻게 해야할까?
Deterministic Matching
핸드폰에 할인 쿠폰 문자 메세지가 왔다고 가정해보자. 메세지에 딸린 링크를 찍으니 폰의 웹 브라우저로 링크가 열리면서 로그인 창이 뜬다. 로그인을 하고 그 페이지에서 상품을 구매하게 되면, 문자를 보낸 사람은 당신의 핸드폰 번호와 웹 서비스 회원 ID를 연결시킬 수 있다. 이번엔 폰의 웹 브라우저가 아니라 폰에 설치된 앱이 열렸다고 생각해보자. 혹은 앱이 안 설치되어 있어서 앱 스토어 (안드로이드는 구글 플레이 스토어)가 열리고 유저가 앱을 설치해서 쿠폰을 쓰게 되었다고 생각해보자. 이때는 핸드폰 번호, AD ID, 회원 ID를 모두 매칭시킬 수 있다. 앞의 경우는 Referrer 매칭이라고 하고, 뒤의 경우는 Deeplink를 이용한 매칭이라고 한다. 이외에도 기술적으로 A와 B를 연결하는 방식을 이용한 모든 매칭법을, 넓게보아서는 Login ID 매칭을 포함해 100% 매칭이 가능한 모든 매칭법을 Deterministic Matching이라고 한다.
Probabilistic Matching
위의 두 방법 모두를 통해서도 완벽하게 유저 매칭을 할 수 없는 경우가 많다. 웹 서비스에 로그인 없이 들어가서 몇 개 페이지를 클릭하고 다시 떠나는 유저들이 그 다음날에 다시 앱으로 유사한 정보들을 살펴보면 위의 기술로는 한 명의 유저라고 판단을 내릴 수가 없다. 그러나 만약 웹 서비스와 앱 사용자가 모두 하나의 와이파이 네트워크로 들어왔었다면 어떻게 될까? 한 집에서 낮에는 웹으로 검색하다 밤에는 앱으로 검색했다는 “추정”을 해 볼 수 있지 않을까? 이런 추정이 바로 *Probabilistic Matching (확률적 매칭)*의 출발점이다.
필자가 글 시리즈 내내 주장하는대로 유저의 “행동”을 볼 수 있는 데이터가 있어야된다는 점이 바로 여기서도 명확하게 드러난다. 신용카드사 정보처럼 유저의 마지막 결제 정보만 있어서는 위와 같은 확률적 매칭을 하기는 매우 어렵다. 평소에 검색한 내용, 평소에 시간을 보내는 웹 서비스를 알 수 있어야 유저 A와 유저 B가 어쩌면 같은 사람일지도 모른다는 “추정”을 할 수가 있는 것이다. 따라서 Deterministic Matching이 아무래도 IT 기술의 영역이라면, Probabilistic Matching은 Data Science의 영역이다.
실제 데이터로 확률적 매칭을 하면 얼마나 정확한 결과를 얻을 수 있을까? 2015년에 DrawBridge라는 실리콘밸리 회사 하나가 Kaggle Competition을 열었던 적이 있다. 2016년에도 비슷한 이벤트가 있었다. 두 대회에서 수상한 사례들을 살펴보면 데이터 셋 전체에서 대략 40-45% 남짓의 유저들을 동일 유저로 구분해낼 수 있었던 내용이 나온다. 겨우 40%냐고 생각하실 분도 있으나, 사실 행동 패턴을 추적할 수 있는 데이터가 얼마나 될까? 웹 사이트 들어갔다가 바로 나가버린 유저들의 데이터로 매칭이 가능할까? 필자가 알고 있는 모델들도 50% 미만의 유저에게서 약 90%의 정확도로 매칭이 가능하니 전체 결과값은 비슷한 것 같다. (문제는 그 매칭의 상당부분은 로그인 아이디나 기술적인 매칭 방법으로 찾아낼 수 있기 때문에, 정작 확률적 매칭이 기여하는 바는 크지 않다는 것이다…)
위에서 말한대로 구글, 페이스북 같은 초대형 유저 네트워크를 가진 회사들은 회원 ID만으로도 대부분의 유저들을 매칭시킬 수 있다. 심지어 크롬 브라우저를 여러 기기에서 로그인해서 쓰는 유저들의 데이터는 구글에서 별 노력없이도 매칭시킬 수 있을 것이다. 이런식으로 갖춰진 유저 데이터를 실리콘밸리에서는 Walled Garden 속에 있는 유저 데이터라고들 한다. 벽 너머 있는 정원은 Login ID만 있으면 모든 것이 해결되는 평온한 세상인 반면, 벽 바깥 세상에서는 온갖 IT 기술로 Deterministic matching을 하는 것도 모자라 심지어는 행동 패턴을 보고 Probabilistic matching까지 해야하는 상황이다.
구글은 2013년 10월부터 AdWords 서비스에 크로스 디바이스 전환 예상치(Estimated)를 공개했고, 2015년 10월부터는 실제 수치(Actual)을 모두 공개하겠다고 선언했다. 페이스북도 2014년 8월부터 유사 서비스를 제공해왔다. 남들은 멀티 디바이스 매칭도 못하고 있는데, 두 서비스는 매칭은 당연하고 다른 기기에서 전환이 일어난 경우까지 추적할 수 있다고 선언한 것이다. 구글과 페이스북의 정보 독점으로 인해 두 서비스가 고가임에도 성과를 제대로 봐야하는 마케터들 입장에서는 별 다른 대안이 없다. 실리콘밸리의 Data science 모임에서 어느 발표자는 Probabilistic matching이 완벽한 매칭을 만들어낼 수 있는 날이 오면 구글과 페이스북 주가가 좀 빠지지 않겠냐고 농담을 하기도 했다. 이런 수요 때문인지 지난 2년간 확률적 매칭에 대한 다양한 시도들이 있었는데 몇 가지만 소개해본다.
Tapad 모델
행동 패턴을 보고 매칭을 하는 알고리즘을 사용하기 위해서는 우선 그 알고리즘을 “훈련”시켜야한다. 그 “훈련”에 가장 필수적인 정보는 실제로 그 모델이 맞았는지 틀렸는지 가르쳐 줄 수 있는 데이터다. Tapad는 Datalogix와 YP같은 외부 업체들의 데이터 셋에서 실제 매칭된 유저 데이터를 이용해서 이런 훈련을 시켰다고 한다. 유투브 광고 영상을 보면 Tapad의 방법론을 좀 더 직관적으로 이해할 수 있다.
Tapad는 2016년 1월에 Telenor라는 노르웨이 1등 통신회사에게 피인수되었다. 데이터 사이언스 탑에 살짝 돌 하나 얹은 필자의 좁은 소견으로는, 통신회사에서 모든 유저에 대한 데이터가 있어도 여러가지 법적 제제로 정작 그 데이터를 오프라인 데이터와 접목시키기가 쉽지 않은데, Tapad의 방법은 만점짜리 데이터로 훈련해서 나머지 데이터에 적용하는 방식이니 통신사가 자기네 온/오프라인 데이터를 결합하는 수단으로 쓰려고 했던 선택이지 않을까 싶다. (그런데... 2017년 4월에 미국 통신사들이 개인정보를 돈을 받고 팔 수 있도록 법이 개정되었다. 그리고는 갑자기 대형 통신사들이 Cross-device matching 할 수 있는 스타트업들 사냥에 나섰다는 소문이 자자하다.)
DrawBridge 모델
경쟁사 중에 DrawBridge라는 실리콘밸리 회사는 일체의 PII(이름, 주소, 전화번호, 이메일 등등) 를 피하고 순수하게 확률적 매칭 모델만으로 매칭을 하고 있다고 주장한다. 우선 와이파이 네트워크, IP Address 같은 큰 그룹의 데이터를 먼저 묶고, 그 그룹 내에서 비슷한 유저 패턴을 추적하는 방식을 활용한다. 언뜻보면 Tapad의 방법론이 좀 더 정확할 것 같지만, 우선 개인정보 보호라는 법적인 이슈를 피해야하고, 둘째는 단계별로 그룹을 묶어내는 방식이 더 정확할 수도 있다. 관련된 홍보 영상은 여기를 참조하면 되겠다.
필자가 줏어들어서 알고 있는 내용에 따르면 한 유저당 20개가 넘는 ID를 다 추적하고 지나치게 오래된 ID까지 모두 갖고 있어서 데이터 서버에 되려 부담만된다는 지적도 있고, 반대로 장기간 유저 데이터를 다 갖고 있어서 정확도가 타사대비 높다는 의견도 있다. 서비스의 호불호에 대한 부분은 제쳐놓고, 위에서 언급한 2015년의 Kaggle Competition 이후, DrawBridge 모델을 이용하는 DSP들도 많고, Tapad모델과는 달리 지금도 비슷한 관점에서 알고리즘을 개발하려는 시도들이 많다.
기타 모델들
그 이외에도 크로스 디바이스 솔루션을 공급하는 데이터 관리 플랫폼(DMP), 데이터 기반 서비스(DSP)사들은 매우 많다. 위의 내용을 정리해놓은 글에 따르면 Acxiom, Adelphic, Adobe, BlueKai (오라클이 인수), Conversant (Epsilon/Alliance Data가 인수), Criteo, Crosswise, Iris Mobile, Krux, Lotame, MediaMath, Neustar Aggregate Knowledge, Turn, 4INFO, 심지어는 통신사인 Verizon 까지 수십개가 넘는 회사들이 자체 기술력과 업무 협조를 통해 위의 솔루션을 공급하고 있다. 심지어 Verizon은 44억달러로 AOL을 인수하고 이제는 야후까지 인수하려하고 있다. 크로스 디바이스 매칭이 업체들 사이에서 얼마나 큰 화두인지 잘 보여주는 사례가 아닐까 싶다.
이중에서 Adelphic이 공개한 기술 내용을 다음 섹션에 좀 더 상세하게 정리해본다.
모바일 DSP로 유명한 Adelphic이 위의 기술로 2013년에 특허를 받았다. 자세한 내용은 Adelphic의 블로그 글1, 글2를 살펴보면 좋을듯하고, 필자가 부족하나마 일부만 정리해본다. 아래는 특허에 나온 도면 중 일부다.
Adelphic 방법은 크게 3단계로 나뉜다. 일단 1. 동일 기기를 구분해내고, 2. 그 기기를 행동 패턴을 이용해서 사람과 연계시키고, 끝으로 3. 기기-행동 조합들 여러개를 뭉쳐서 같은 사람의 행동을 잡아내는 방식이다.
1. Identifying device
Adelphic이 모바일 DSP인 관계로 데스크탑에서 쿠키 ID를 이용하는 방법은 설명이 없다. 모바일에서 가장 쉽게 디바이스를 구분해내는 방식은 위에 장황하게 설명한대로 GAID나 IDFA같은 AD ID를 활용하는 방식이다. 문제는 AD ID를 못 찾았을 때다.
우선 모바일 SDK로 받을 수 있는 데이터 타입을 생각해보자.
위의 데이터들을 조합하면 어느정도 Uniqueness 를 갖춘 유저 1명을 만들어낼 수 있다. 하나의 예시로 분당에서, 제주로 여행가는 비행기표를 구매하고, LG G6 폰을 사용하고, 인터넷에서 만화를 읽고 있는 유저는 많지 않을 것이다. (아마 한 두가지 조건이 더 붙으면 1명만 남을 것이다. 참고로 분당, 제주, LG G6 등의 단어는 모 포털 사이트 상위 검색어를 랜덤하게 뽑았으니 괜히 광고한다고 오해 없으시기 바란다. 필자는 관계자도 아니고 보유 주식도 없다ㅋ) 이렇게 만들어낸 Uniqueness를 갖춘 행동 패턴을 Signature라고 부른다. 여기까지는 Deterministic matching만을 이용했다.
2. Identifying human
AD ID건 혹은 Signature건 기기를 찾아냈으면 이제 그 기기에 매칭되는 “사람”을 찾아야한다. 여기서도 회원 ID가 있으면 쉽게 그 사람이 지난주에 뭘 했는지, 그 전에 뭘 했는지 찾아낼 수 있기 때문에 고민할 필요가 없다. 아마도 AD ID를 찾아냈다면, 그 AD ID의 기록들을 찾아서 정리하면 어떤 종류의 관심사가 있고, 어떤 행동 패턴을 보였는지 추적가능할 것이다. 꼭 AD ID가 아니더라도 폰 번호, 이메일 주소 등등 Deterministic matching이 가능한 어떤 정보라도 활용할 수 있다면 여기서 매칭 작업은 종료된다. 여기서도 문제가 발생하는 경우는 Signature만 있을때다.
Adelphic은 이 경우에 사용하는 방법을 **”Record Linkage”**라고 표현했다. 쉽게 이야기하면 필자가 평소에 이야기하는대로 유저의 행동 패턴을 보고 얼마나 비슷한지에 점수를 주는 방식이다. 여기서 Tapad의 방식을 빌리면, 이미 100%알고 있는 경우를 이용해서, 어떤 변수에 몇 점을 줘야하는지를 알아내고 그 변수와 점수를 적용하면 Signature만 있는 경우에도 어떤 유저와 동일 유저인지를 찾아낼 수가 있다. 아이디어 자체는 시리즈 글 3번에서 소개한 CTR Optimizer의 방식과 매우 흡사하다.
3. Extension
특허나 블로그 글에는 없지만 위 기술을 적용하는데 필요할 것 같은 스텝을 필자의 경험을 바탕으로 정리해보면, Record Linkage가 있었던 유저 그룹을 DB에 따로 저장해서 장기추적을 해야한다. 그 유저의 경우는 행동 데이터가 계속 쌓이면 어느 시점부터는 System type 정보만을 바탕으로 Probabilistic matching을 할 수 있게 된다. System type 정보 그 자체가 바로 Signature가 되기 때문이다. 물론 갑자기 대규모 운영체제 업그레이드가 있거나, 스마트폰을 공장초기화하는 등등의 사건이 발생하면 다시 Signature를 만들기 위해서 Learning period가 필요하기는 할 것이다.
가끔보면 실리콘밸리의 벤더들 중 일부가 100% 정확한 Deterministic Matching만 쓰므로 자기네 데이터에는 오류가 없다는 식으로 마케팅을 하는 걸 본다. 그러나 위의 사례에서 보듯이 크로스 디바이스 매칭은 회원 ID만 쓰는 경우가 아니라면 Deterministic과 Probabilistic의 하이브리드 모델이 될 가능성이 매우 높다. (아, 끝에 단어 세 개만 좀 바꿉시다. 매우 그런 것 같다…로)
필자는 GAID, IDFA를 Opt-out해 놓고 살거나, 본의 아니게 켜야하면 병적으로 매일같이 ID를 바꾼다. 브라우저로 인터넷 페이지를 찾아가야할 때는 업무에 필수가 아니라면 무조건 시크릿 모드 (혹은 Private mode, Incognito mode 등등 브라우저마다 이름은 다양하다)로 들어간다. 그렇게 다른 사람들의 행동 데이터를 추적하고 싶어하는 데이터 사이언티스트가 정작 자기 데이터는 남들에게 절대로 안 보여줄려고한다며 “이율배반적”이라는 놀림도 들었다. 그렇게 조심하면서 살고 있는데도 불구하고, 데이터 추적으로부터 도망가는 건 어렵다는 걸 느끼고 산다. 때로는 30대 중반의 남성에게 적합한 타겟형 광고를 볼 때도 있고, 인터넷 서핑 중 한번쯤 봤을만한 자켓이 포털 서비스 신문 기사 지면 우측 배너로 뜨는 걸 경험한 적도 있었다. 이렇게까지 조심하는데도 날 추적할 수 있다니… 라는 놀라움과 더불어, 기술 발전하는 속도가 무섭다는 사실도 느끼고, Data Scientist 타이틀 달고 살려면 아직 배워야되는게 많구나는 부끄러움도 느낀다.
아마도 시크릿 모드로 인터넷 서핑한 페이지 몇 개를 바탕으로 필자의 관심사를 파악해냈을 것이고, 필자가 관심을 가지지 않고 넘어간 광고들 몇 개를 바탕으로 관심사를 세분화했을 것이라고 본다. 그리고 AD ID로 추적이 안 되니까 사용 장소 (Location), 사용 시간대 (Time of Day), 그리고 IP 주소 같은 정보를 이용해 필자를 구분해내지 않았을까 싶다. 몇 차례 반복되는 데이터가 쌓이면서 필자, 혹은 필자와 유사한 타입의 유저들을 하나의 그룹으로 묶어놓고 비슷한 정보를 제공하는 방식으로 AD ID가 없는 크로스 디바이스 매칭을 했었을 것 같다. 빅 데이터의 대단함을 또 한번 느낄 수 있지 않나?
한편으로 이렇게까지 유저 정보를 추적할 수 있도록 개인정보 보호법이 너무 허술한 것이 아니냐는 지적을 하실 분도 있겠다. 그래서 IP 주소를 추적 못 하게하고, 사용 지역 자체를 아예 추적 못하게 하자는 의견도 나왔다. 설령 그렇다고해도 위에 설명한대로 변수 1-2개가 더 없어지는 것 뿐 추적 기술은 끊임없이 고도화되고 있고, 언젠가는 구글과 페이스북이 누리고 있는 혜택이 지금보다 훨씬 더 줄어드는 날이 올 것이다.
빅 데이터는 강력하다. 그게 진짜 빅 데이터라면, Walled Garden 안의 안락함도 복제해낼 수 있을만큼 강력하다. 하나 안타까운 사실은 아직까지 국내 대부분의 회사들이 이런 빅 데이터로 할 수 있는 일들을 잘 모르고 있다는 사실이다. 빅 데이터로 할 수 있는 많은 것들, 그 중 일부를 여기서 만나보시면 어떨까?