흘러가는 낭비를 없애기

by SL

2013년 월드와이드웹 컨퍼런스의 키노트 발표자 중 한 명은 루이스 폰 안(Luis von Ahn)이었다. 이름만 들으면 모를 수도 있지만, 인터넷에서 내가 사람임을 증명하기 위해 화면에 보이는 텍스트를 입력하는 리캡차(reCAPTCHA)를 만든 사람이다. 낭비되는 인간의 지적 행위를 효과적으로 활용한 예로 많이 인용된다.

낭비는 어디에나 있다. 정신적인 것에 국한되지도 않는다. 가령, 바쁜 와중에서 일부러 시간을 내서 운동을 하는 사람이 많다. (물론 나처럼 운동을 전혀 하지 않는 사람은 더 많다.) 유산소 운동으로 런닝머신 위를 달리고, 근력 강화를 위해 아령을 든다. 그런데 이런 운동을 위한 운동 대신, 기왕이면 일상 속에서 꼭 해야 하는 일을 하면서 비슷한 효과를 낼 수는 없을까? 엘레베이터 대신 계단을 걷고, 덤벨 대신 걸레질을 하는 식으로 말이다. 잡일로 치부되는 활동에 힘과 시간을 흘려보내는 대신 운동으로 재활용하면 좋지 않을까? (그렇다고 내가 이런 식으로 운동한다는 말은 아니다.)

우리가 별것 아닌 것으로 생각하는 행위도 이런 관점으로 들여다 보면 의외의 가치를 찾아낼 수 있다. 자동차에 설치된 블랙박스 기록과 운전자의 행위 간의 관계는, 구글 등에서 만드는 무인자동차 알고리즘의 학습 및 테스트 데이터로 유용할지 모른다. (물론, 차를 몰기 시작한 지 반 년된 햇병아리 드라이버의 기록은 별로 도움이 안 되겠지만.)

다른 예로, 장소 추천 서비스로 발전해가는 포스퀘어를 생각해보자. A라는 사용자가 어떤 장소를 방문할 때마다 체크인을 한다면, 이로부터 무엇을 얻을 수 있을까? 당연히 A라는 특정 인물이 특정 장소에 갔다는 사실을 알 수 있다. 흔히 말하는 개인정보인데, 이를 잘 분석하면 A의 성별, 나이, 결혼여부, 취향 등을 프로파일링할 수 있다.

개인정보 말고는 또 무엇이 있을까? 일단 각 장소별로 체크인한 사람수를 세어서 그 장소의 인기도를 계산할 수 있겠다. 또? 체크인한 시간을 보면, 거기가 새벽/오전/오후/밤 중 언제 주로 방문하는 곳인지 추측할 수 있다. 요일이나 계절처럼 좀더 큰 단위로도 가능하다. 여기에 기상 정보를 연동하면, 어떤 날씨(맑음/흐림/비/눈)에 어울리는 곳인지도 알 수 있다. 그게 무슨 대수냐고? 제주도에 놀러왔는데 비가 와서 난감해하는 사람에게 물어보시라.

이게 다일까?

한 곳이 아니라, 여러곳을 방문하면서 순차적으로 체크인한 정보로 확장해보자. B를 방문한 사람 중 대부분이 C도 방문한다면, B와 C 사이에 모종의 관계가 있다고 의심할 수 있다. 단순히 지리적으로 가깝기 때문일 수도 있지만, B를 좋아하는 사람은 정말로 C를 좋아하는지도 모른다. B와 C가 둘다 식당이라면 비슷한 취향의 음식맛을 내거나, 아니면 궁합이 맞는 식당과 디저트 카페의 조합이거나. 나와 비슷한 사람의 이런 행동 패턴과 관계를 잘 분석해서 내가 좋아할 만한 것을 추천해주는 기법을 협업 필터링(Collaborative Filtering, CF)이라고 부른다. 포스퀘어는 실제로 이런 추천 기능을 제공한다.

하나만 더 하자. B와 C의 체크인 시간을 잘 분석하면, 사람들이 평균적으로 B에 머무르는 시간, B에서 C로 이동하는 데 걸리는 시간까지도 추정할 수 있을 것이다. 여행 계획을 짜보면, 특정 장소를 둘러보는 데 걸리는 시간을 아는 것이 얼마나 유용한지 안다.

결국 하고 싶은 말은 이거다. 우리의 일상 행위 속에도 찾아보면 의미있는 정보들이 많다. 데이터를 체계적으로 수집해서 가공하고 분석하면 그 가치를 실용화할 수 있다. 여러 사람이 고생해가며 만든 (인터넷)서비스를 무료로 쓰면서 우리가 당당해도 되는 이유다.