당신의 앱 코디네이터 : T store 개인화 추천 Part I

본 포스팅은 현재 개발 및 테스트가 진행되고 있는 개인화 앱 추천 서비스에 대한 알고리즘을 소개하는 글 입니다. 분량상 Part I과 Part II로 나누어 기고 하고자 하며, Part I에서는 앱 장터 전반에 관한 간략한 현황과 개인화 추천이 필요한 배경에 대해서 설명 하고, Part II에서는 현재 개발되어 테스트 중인 개인화 추천 알고리즘들에 대해 소개 하고자 합니다.

Revolution and App War

1930년대가 radio를 통한 전파 혁명,  1950년대가 TV를 통한 미디어 혁명, 1990년대가 인터넷을 통한 정보 혁명의 시기라고 한다면 우리가 지금 살고 있는 지금은 아마도 후세에 ‘모바일 혁명’의 시기로 정의될 것입니다. 스마트폰과 태블릿으로 대표되는 스마트 디바이스의 판매량이 PC시장을 넘어서기 시작하며 세상은 이미 post-PC 시대로 접어들고 있고, 이러한 스마트 디바이스 생태계의 중심에는 앱을 사고 파는 앱 장터가 있습니다. 2011년 말 앱 장터의 시장 규모는이미 100억달러 수준을 넘어서고 있으며 매해 2배의 규모로 성장하고 있습니다.  따라서 모바일 OS 제공자, 단말제조사,이동통신사, e-커머스 업체등의 다양한 플랫폼 사업자들이 앱 시장을 차지 하기위해 경쟁중이며 앱 판매를 통한 직접적인 수익 외에도 성공적인 앱 마켓을 통해 플랫폼의 가치를 향상시키려는 노력을 진행하고 있습니다.

다양한 앱 장터들

Two giants and T store

현재 글로벌에서 가장 활성화 되어 있고 규모가 큰 앱 장터는 Apple의 App Store와 Google의 Google Play Store라고 할 수 있습니다. 두 회사는 각각 iOS와 Android라는 모바일 OS를 기반으로 스마트폰과 태블릿을 위한 견고한 생태계를 구축 하고 있으며 In-app purchasing, Freemium 방식 등의 BM적인 측면의 진화 뿐 아니라, 클라우드 기반 공유 및 동기화 처럼 하드웨어와 네트워크의 발전에 발맞춘 플랫폼적인 진화도 동시에 이루어지며 꾸준히 양적, 질적 성장을 이어 나가고 있습니다. 두 거대 앱장터의 크기에 대한 간략한 통계를 살펴 보면 다음과 같습니다.
2008년 7월에 오픈한 App Store에는 현재 60만개 이상의 앱들이 등록 되어 있으며 250억건의 누적 다운로드 기록을 달성하며 폭발적으로 성장하고 있습니다. iDevice 제품들의 꾸준한 판매와 Mac 제품들을 위한 Mac App Store 오픈으로 인해 App Store의 성장 추세는 계속될 것으로 전망되고 있습니다. 한편 Google은 2008년 10월 문을 연 Android Market을 Google Play로 명칭을 변경하며 디지털 컨텐츠를 통합한 컨텐츠 허브로서의 진화를 꾀하고 있습니다. Play Store의 Apps에는 현재 42만개 이상의 앱들이 등록 되어 있으며 대략 150억건에 달하는 누적 다운로드 수를 기록하고 있습니다.
2009년 9월 문을 연 SK 플래닛의 T-store는 현재 누적가입자  1400만, 일UV 230만, 월UV 900만에 달하는 국내 최대 규모의 독립 앱 장터이며  7억건 이상의 누적 다운로드를 기록하고 있습니다. T store에는 현재 5만개 가량의 앱과 18만개 가량의 컨텐츠가 등록되어 있는데, T-store의 주요 고객이 국내의 Android 폰 사용자임을 감안하면 단기간에 성공적인 앱 장터로 자리잡은 것으로 평가할 수 있습니다.

App Discovery : Why?

앞서 말씀드렸듯이 모바일 시장의 폭발적 성장과 함께 수 많은 앱들이 등록되어 판매되고 있고, 또 계속 해서 개발되고 있습니다.  이에 따라 사용자는 다양한 선택권을 가짐과 동시에 수 많은 앱들 중 자기에게 가장 유용한 앱을 찾아내는 일, 즉 App Discovery에 대한 부담을 가지게 되었습니다.

수많은 앱들

따라서 유/무료 판매량 Best, 평점  Best와 같은 일부 인기 앱에 집중된 구매 현상이 나타나게 되고 이러한 Long-tail 현상은 앱 장터의 크기가 커져 갈 수록 보다 심화되고 있습니다. 단적인 예를 들자면,  T store의 구매수 상위 20개의 앱, 즉 0.05% 밖에 안되는 앱이 전체 구매의 14%를 차지하고 있으며, Apple의 App Store에서도 판매 수 기준 1000위 밖의 앱을 구매한 고객이 전체 고객의 1.76% 밖에 안됩니다. 사용시간 측면에서도 Android Market의 Top 50 앱의 점유율이 60%가 넘는다고 하니 편중도가 얼마나 심각한 지 알 수 있습니다. 이러한 Long-tail 현상은 사용자에게도 새로운 좋은 앱들을 발견할 기회를 잃게 하지만 개발자 입장에서도 개발된 앱이 고객에게 노출될 기회를 가지지 못하게 하며, 앱 장터 사업자 입장에서도 고객 활성도가 떨어짐으로써 앱 장터의 매출이 감소하는 효과를 가져오게 합니다. 따라서 App Discovery를 도와주는 것은 사용자에게도 필요한 일이지만 앱장터 전체의 생태계의 유지를 위해 매우 중요한 역할을 합니다. 따라서 Flurry, Appsfire, Appolicious, Chomp나 국내의 앱머써, 앱순이 등과 같은 방식은 다르지만 다양한 App Discovery 서비스 혹은 앱 추천 엔진들도 속속 등장하고 있으며, 심지어 App Central과 같은 앱 추천 TV Show까지 등장하고 있으니  웹의 성장기에 검색엔진 서비스가 폭발적으로 성장하였듯 App Discovery 자체가 새로운 서비스 분야로 성장하고 있다고 말할 수 있을 정도 입니다. 

App Discovery : How?

그럼 주요 앱 장터에서는 App Discovery를 위해 어떤 노력을 하고 있는지 간략하게 살펴보겠습니다. 우선 Apple의 App Store에는 기본적인 인기성 차트(유/무료 인기, 매출 순)와 Trend성 차트(신규, What’s hot)외에 개인의 앱 구매 이력을 기반으로 한 Genius라는 앱 추천 Feature를 제공하고 있는 것을 특징으로 꼽을 수 있습니다. iTunes Music에서 특정 곡을 기준으로 자동화된 Playlist를 생성해주며 호평받던 Genius가 App Store에도 적용되었는데, 앱의 카테고리, 개발사, 앱 명, 가격과 같은 앱의 메타 정보뿐 아니라 익명으로 수집되는 사용자의 앱 구매 및 사용 이력을 함께 이용한 Vector Space Model을 기반으로 하는 것으로 알려져 있습니다. 각각의 앱을 Vector로 표현하면 고객이 구매한 앱을 기준으로 가장 유사한 앱들을 Vector간의 유사도 측정을 통해 뽑아 낼 수 있는데, 이때 Text Mining에서 자주 사용되는 Term Frequency – Inverse Document Frequency(TF-IDF)와 유사한 개념으로 구매/사용 이력 리스트에 함께 자주 등장하는 앱 들은 추천 시 우선 순위에 높게 반영되지만, 전체 고객의 구매/사용 이력에 너무 빈번하게 등장하는 앱들은 추천 우선 순위에서 가중치가 낮게  반영되도록 조정하여 추천 리스트를 생성하게 됩니다. 하지만 음악의 추천에서 호평을 받으며 iTunes Store의 성공에 기여를 한 것으로 평가받던 Genius가 앱 추천에 있어서는 크게 주목을 받지 못하고 있는데, 한 조사에 따르면 사용자의 오직 2.66%만이 Genius를 통해 좋은 App들을 발견하고 있다고 응답한 것으로 나타났습니다. 이러한 데에는 여러가지 이유가 있지만 대부분 음악에 적용되었던 Genius의 Feature Extraction방법이 앱에는 맞지 않는 방법이거나, 개인화된 추천을 위해서는 앱간 유사도 측정을 통한 추천 방식이 아닌 개별 사용자의 구매/사용 이력을 분석하여 개별 사용자의 취향을 반영한 추천 결과를 제공 해야된다는 분석들이 제기되고 있습니다. 이러한 한계를 극복하고자 Apple은 Genius의 기능을 꾸준히 개선하는 한편, 앱의 기능 및 컨텍스트 기반 앱 검색 엔진으로 잘 알려진 Chomp를 인수합병하였으며 올 해 중순 예정된 App Store의 개편에 이를 반영할 것으로 알려져 있습니다. 

App Store의 Genius

Google의 Play Store에는 아직까지 주목할 만한 개인화 Feature가 제공되고 있지 않습니다. 주로 Curation에 가까운 Android팀 추천, 에디터 선정 추천 리스트가 제공되고 있으며 그 밖에는 인기 혹은 신규성 기반의 리스트들이 제공되고 있을 뿐입니다. 비록 개인화 추천이나 App Discovery를 위한 특색있는 서비스는 제공하고 있지 않지만 Google+와 같은 Social Network Service을 통한 공유기능,  Cloud를 이용한 손쉬운 기기간 Sync 등 Google의 여러 서비스와의 Integration에 강점이 있습니다. 또한 과거에 시도했던 개인화 뉴스 제공이나 키워드 기반 광고에서 보여준 기술 수준을 고려한다면 기술적인 문제보다는 다분히 전략이나 기획적 의도에서 개인화된 App 추천 서비스를 유보하고 있을 것으로 생각됩니다.

Google Play Store의 추천 항목들

Android 진영에서 Google이 아직까지 특별한 개인화 추천 기능을 제공하고 있지 않으므로 아직 미국 시장에서만 사용가능하지만 또 다른 Android 앱 장터이면서도 개인화 추천 기능이 잘 구현되어 있는 Amazon AppStore를 살펴보겠습니다. Amazon은 이미 e-Commerce의 다양한 상품 추천에서 탁월한 성과를 보여왔으며 이러한 상품 추천의 Feature들을 4만개 가까운 Android 앱들이 판매되고 있는 Appstore에도 그대로 적용하였습니다. ‘Today’s Recommendation For You’, ‘New For You’와 같은 구매 이력 기반 추천, 그리고 사용자의 Appstore 실시간 브라우징 히스토리 기반 추천과 같은 개인화된 추천 리스트가 제공되고 있으며, 이러한 추천리스트는 결과의 품질이 우수할 뿐 아니라 개인에게 맞추어진 개인화 추천임을 각 Feature에 대한 설명과 상호작용을 통해 사용자에게 분명히 인지시키고 있습니다.

Amazon Appstore의 Browsing History기반 추천

물론 다양한 요인들이 복합적으로 작용한 결과이겠지만 아래의 비교에서 보듯이 Amazon Appstore가 사용자당 수익에서 Google Play Store를 압도하는데 Amazon Appstore의 보다 편리한 App Discovery Feature들이 기여하였다는 점은 부정할 수 없습니다.

주요 앱 장터간의 사용자당 수익 비교

App Discovery in T-store

현재 T store에는 운영자의 의한 ‘추천’ 외에 유/무료 인기 리스트, 신규/NEW등의 시의성 리스트, 각 앱 별 연관 구매 앱 리스트 등 기본적인 항목외에 T-store Web POC에 한해서 ‘T스타일 앱찾기’라고 하는 개인화 앱 추천 서비스가 제공되고 있습니다. (T-store 내 마이페이지 -> 좌측 하단 ‘T스타일 앱찾기’) ‘T스타일 앱찾기’에서는 세 가지 추천 항목이 있는데 ‘HOT T스타일’, ‘유사고객의 앱 추천’ 그리고 ‘이질고객의 앱 추천’ 입니다. ‘HOT T스타일’은 T-store를 활발하게 사용하는 Power User그룹을 구매 앱 순으로 정렬하여 추출하고, 이들이 최근 가장 많이 구매한 앱을 추천해 주는 항목입니다.  ‘유사고객의 앱 추천’은 각 사용자의 구매 이력과 비슷한 구매이력의 사용자들을 추출하여 이들이 구매한 앱들중 추천 대상 고객이 구매하지 않은 앱들을 추천해주는 ‘협업 필터링(Collaborative Filtering : CF)’ 알고리즘을 통해 제공되는 추천 리스트로서 대상 고객의 취향과 비슷한 앱들이 제공되는 것을 목표로 합니다. 일반적으로 CF 알고리즘은 사용자간의 유사도를 모두 구해야 하므로 1400만 이상의 사용자가 있는 T-store의 경우 이를 바로 적용하는 것은 실질적으로 불가능합니다. 따라서 Google에서 개인화 뉴스 추천에 적용한 바 있는 minHash Clustering이라는 고객 집단 사전 군집화 과정을 통해 유사 구매 이력을 가질 확률이 높은 집단을 여러개 만들고 해당 집단 내에서 CF알고리즘을 수행하는 이른바 ‘Divide and Conquer’ 접근 방법을 사용하였습니다. 이에 대한 자세한 내용은 Part II에서 설명하겠습니다. ‘이질 고객의 추천’은 사용자의 구매 이력과 유사하지 않은 고객들이 구입한 앱들을 추천해 줌으로써 의외성의 즐거움을 주기 위한 추천리스트입니다. 앞서 ‘유사고객 앱’ 추천 리스트 도출을 위한 minHash Clustering을 그대로 활용하되, 내가 속하지 않은 Cluster에서 나와 구매 이력이 가장 유사하지 않은 고객 군의 구매 이력을 추천해 주고 있습니다.

T스타일 앱찾기

앞으로 개인화 추천을 App Discovery를 위한 주요 Feature로 적용 범위를 확대 제공하기 위해 T store 사용자군을 특성에 따라 분류하고 각 사용자 집단별로 차별화된 추천 방법을 적용하려 하고 있습니다 이를 위해 기존에 사용되던 minHash 기반 CF추천 알고리즘 뿐 아니라 구매 이력 기반 추천에 보다 적합한  새로운 추천 알고리즘의 개발 및 적용, 추천 사유 및 추천 점수 제공 로직 개발 및 테스트를 진행 중입니다. 이를 이용해 T-store의 고객들이 본인의 취향에 맞는 앱들을 보다 쉽고 편리하게 발견할 수 있기를 기대하고 있습니다.

Coming Next

이상으로 Part I에서는 앱 시장에 대한 간략한 통계와 App Discovery를 위한 서비스의 필요성, 그리고 이를 위한 다양한 노력들에 대해서 살펴보았습니다. Part II에서는 현재 개발 및 테스트가 진행중인 앱 추천을 위한 주요 알고리즘들을 소개하고 해당 알고리즘들에 대한 정량/정성적 평가방법, 성능 지표 이외에 고려해야 하는 점들에 대해 기술 하겠습니다. 읽어 주셔서 감사합니다.

안녕하세요? 저는 서비스 개인화 로직 설계 및 관련 데이터 분석을 담당하고 있으며 현재는 T store 3.0의 개인화 앱 추천 서비스를 개발 중입니다. 빅데이터 기반의 데이터 마이닝 및 기계 학습 알고리즘 전반에 관심이 있으며 기술 블로그를 통해 이러한 주제에 대한 좋은 정보를 공유하였으면 좋겠습니다.

Facebook 

공유하기