brunch

You can make anything
by writing

C.S.Lewis

by Jin Young Kim Jan 22. 2022

온라인 서비스 분석이 어려운 이유

이전 글에서 IT4U라는 가상의 기업 사례를 통해 이 책에서 다루고자 하는 문제의 다양한 측면과 해결 과정을 살펴보았다. 쉽지 않은 과정이었지만 실무에서는 이보다 더 도전적인 문제에 봉착하는 것이 보통이다. '데이터를 활용해 온라인 서비스 기업이 처한 다양한 의사결정을 지원한다'는 핵심은 간단하지만, 실제로 기업 현장에서 데이터를 활용하다 보면 아래와 같은 다양한 유형의 도전에 부딛히게 된다.


상충하는 목표들

성공적인 온라인 서비스 운영은 다양한 목표 사이에 균형잡기를 요구한다. 대부분의 온라인 서비스는 영리 기업으로 운영되며, 서비스 운영을 위해 컨텐츠 수급 및 사용자 만족 등 다양한 과제를 해결해야 한다. 우선 기업의 생존을 위해 매출과 같은 비즈니스적인 목표를 달성해야 하며, 이외에도 서비스의 장기적인 성장을 위해 고객 및 파트너의 만족이라는 서비스 자체의 목표도 동시에 달성해야 한다.  


문제는 이들 목표 각각을 달성하는 것이 종종 서로 다른 우선순위와 행동을 요구한다는 점이다. 예를 들어 검색 엔진이 매출 목표를 위해 페이지에 광고를 지나치게 넣으면, 사용자들이 차츰 경쟁 서비스로 떠날 것이다. 혹은 소셜 미디어가 클릭만을 기준으로 컨텐츠를 최적화한다면 클릭을 유발하는 자극적이고 흥미 위주의 컨텐츠만이 살아남고, 건전한 컨텐츠 크리에이터들은 플랫폼을 떠날 것이다. (이는 실제로 페이스북에서 일어났고, 추후 해결된 문제다.)


따라서 온라인 서비스를 위한 데이터 사이언스는 이런 다양한 목표에 대응할 수 있는 데이터, 분석 방법 및 지표를 제공해야 할 것이며, 개별 목표가 상충할때도 최선의 의사결정을 내릴 수 있는 기준을 제공해야 한다. 개별 온라인 AB테스트에서 로딩시간, 품질, 매출 등에 대한 다양한 지표를 제공하여 이들 지표간의 trade-off를 논의할 수 있는 인프라를 갖추는 것이 좋은 사례다.


품질의 다면성

온라인 서비스가 만족시켜야 하는 목표의 다양성 만큼이나, 온라인 서비스의 품질을 정의할 수 있는 다양한 척도가 존재한다. 기본적으로 앱이나 웹페이지가 다운되지 않고 안정적인 서비스를 제공해야 하며, 기본적인 UX의 사용성이 확보된다는 전제가 만족되면, 온라인 서비스의 품질을 결정하는 것은 컨텐츠의 품질이다.  

대부분의 온라인 서비스가 검색이나 추천 알고리즘을 통해 컨텐츠를 노출하기 때문에 컨텐츠의 품질은 검색이나 추천 결과의 품질이라고 볼 수도 있겠다. (검색엔진의 연관검색어나 자동완성도 이런 추천의 유형에 속한다.) 여기서 얼핏 단순해 보이는 검색이나 추천 결과의 평가에는 실로 다양한 잣대를 적용할 수 있다.

검색 및 추천 결과를 평가하는 다양한 기준

위와 같은 다양한 품질 기준 이외에도 직접 매출을 발생시키는 결과의 경우 (광고 혹은 쇼핑 결과) 개별 결과가 매출에 주는 영향도 고려해야 할 것이다. 따라서 이런 다양한 조건을 다 만족시키는 랭킹을 만들고 평가하는 것은 간단한 일이 아니며, 이는 서비스 및 사용자 이용 패턴의 변화에 따라 진화해야 한다. 따라서 이들 평가 기법을 개선하기 위해 주요 온라인 서비스 기업에서는 매년 핵심 평가 지표를 다시 점검하고 업데이트하고 있다.  


또한 위에서 설명한 각각의 품질 척도에 대한 데이터를 모으는 것 역시 간단한 일이 아니며 보통은 여러 가지 데이터 소스를 동원해야 하는 일이다. 예를 들어 사용자 의도와의 관련성은 온라인 사용자 로그 데이터를 가공해서 이해하는 것이 보통이지만, 로그 데이터는 행동의 기록으로 해석의 한계가 있다. 따라서 검색 엔진에서는 사용자 질의어에 대한 검색 결과의 품질을 다면적으로 이해하기 위해서 훈련된 평가자를 동원해 레이블 데이터를 모으는 것이 보통이다.  


데이터의 품질

많이 논의된 주제이지만, 현실 세계의 분석 문제를 푸는데 있어서 고품질의 완벽한 데이터가 한곳에 모여서 분석을 기다리고 있는 상황은 거의 발생하지 않는다. 보통은 여러 담당자를 만나데이터를 수소문하고, 어렵게 얻은 데이터는 무슨 뜻인지 해석하기도 어렵고, 원하는 형태로 되어 있지 않거나 널값이 가득한 경우도 비일비재하다.  


'데이터 사이언티스트가 80%의 시간을 데이터 정제하는데 쓴다'는 말이 10년전부터 있었는데, 요즘도 그다지 상황이 달라진 것 같지는 않다. 그나마 문제가 프로젝트 초기에 발견되면 다행이지만, 최악의 상황은 기껏 분석을 마쳐서 보고를 준비하는데 데이터에 오류나 편향이 발견되어 결과가 쓸모없어지거나 보고를 미루어야 하는 경우일 것이다.


따라서 데이터 사이언티스트는 이런 문제를 예상하고 방어적으로 업무에 임해야 한다. 새로받은 데이터는 결론을 내기 위해 서두르지 않고, 이리저리 뜯어보며 의문점이나 수상한 점을 정리해서 데이터 제공자와 상의해야 한다. 조직 전체로서는 팀간에 공유되는 데이터에 대해 일정한 가이드라인을 (여기 사례) 설정해 놓으면 이런 노력을 최소화하는데 도움이 될 것이다.


조직의 복잡성

마지막으로 이 모든 작업을 수행하는 주체가 개인이 아닌 다양한 역할을 가진 사람들이 모여서 일하는 조직이라는 점이 복잡성을 낳는다. 예를 들어 보통은 데이터를 수집 / 처리 / 분석하는 주체와, 이를 바탕으로 의사결정을 내리는 주체가 서로 다른데, 이런 분리는 수집된 데이터의 의미를 제대로 이해하지 못하는 분석가, 혹은 분석 결과에 대한 피상적인 이해를 바탕으로 의사결정을 내리는 조직의 리더와 같은 문제를 야기한다.  


이런 역할의 차이에서 오는 오해는 커뮤니케이션으로 해결할 수 있지만, 좀더 규모가 큰 기업의 경우 개별 팀의 목표와 전체 조직의 목표를 일치시키는 것도 쉬운 일이 아니다. 예컨대 앱의 홈페이지에 들어가는 컨텐츠를 섹션별로 다른 팀에서 담당하는데, 이들이 서로 소통하지 않고 새로운 기능 혹은 컨텐츠를 추가한다면, 개별 섹션의 결과는 개선되더라도, 전체적인 일관성이 깨지거나 반복되는 결과가 여러 섹션에 들어가는 부작용을 낳을 수도 있다.  


이런 복잡성에서 오는 문제를 해결하는 첫번째 단계는 조직 내 통합된 데이터 저장소와 실험 및 분석 인프라를 갖추는 것이다. 물론 이를 만들고 개발하는 최소한의 조직이 필요하며, 이 조직의 역할은 데이터의 검증 및 재사용이 가능한 분석 프레임워크를 만드는 것이다. 이런 최소한의 인프라가 갖춰진 후에는 개별 분석은 개별 조직에서 담당하는 것도 가능하지만, 여러 조직이 분석 결과를 공유할 수 있는 포럼이 필요할 것이다.  


맺음말

오늘은 온라인 서비스를 분석하는데 있어서 발생하는 다양한 어려움을 살펴보았다. 현재 데이터 사이언스를 공부하는 분들은 이런 여러움을 상상하면서 대비를 하면 좋겠다. 캐글이 공부에는 유용하지만 이미 정제된 데이터를 사용해서 잘 정의된 문제를 푸는 것이라, 이런 상황에 대한 대비는 본인의 관심 분야에 대한 프로젝트를 찾아서 실제로 해보는 것이다. 다음 글에서는 이런 어려움을 대응하는 과정에서 지켜야할 원칙(혹은 피해야할 패턴)을 살펴보도록 하겠다.


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari