brunch

You can make anything
by writing

C.S.Lewis

by 티맵모빌리티 Nov 28. 2023

“여기가 집이 맞나요?”AI로 주소 등록 유도한 결과는

25편 – 집 추천을 위한 CDP 활용과 딥러닝 모델링

Abstract

티맵은 킬러 콘텐츠인 내비게이션 이용객의 사용 편의성을 높이기 위해 목적지로 자주 이용되는 집, 회사에 대한 원클릭 내비게이션 서비스를 제공하고 있습니다. 이번 10.0 앱 개편을 통해 다양한 모빌리티 서비스를 추가하였고, NIS(neural information seeking)을 강화하였습니다. NIS의 강화를 위해 저희는 집을 등록하지 않은 고객들의 집을 예측하여 등록을 유도하는 ‘집 추천 서비스’를 추가하였는데요, 이를 통해 집을 등록한 고객들의 vertical로 이어지는 사용 편의성을 높이고 티맵에서 개인화된 AI 서비스 경험을 제공하고자 합니다. 이번 테크노트를 통해 집 추천을 위한 CDP 활용과 딥러닝 모델링, 추천에 대한 고객반응에 대해 공유하려고 합니다.


1. Introduction

티맵은 이번 10.0 개편을 통해 집을 등록하지 않은 고객들의 집을 예측하여 등록을 유도하는 집 추천 서비스를 추가하였습니다. (Figure 1) 

Figure 1. 10.0 앱개편 메인화면

집 추천은 집을 등록하여 사용 중인 고객들의 행동패턴을 모델에게 학습시켜 아직 집을 등록하지 않은 고객들을 대상으로 집을 예측, 등록을 유도하는 서비스로, 생성된 추천 SET은 티맵 내부의 배포과정을 거쳐 Messaging CTA라는 서비스를 통해 매일 업데이트되어 서비스됩니다.


2. Related work

추천 알고리즘은 과거 사용자 행동 데이터를 기반으로 하는 메커니즘을 가지고 있습니다. 사용자가 이전에 시청, 구매, 또는 상호 작용한 항목의 데이터(행동 로그)를 분석하고 이를 사용하여 사용자의 흥미와 취향을 이해(학습), 이를 통해 사용자가 미래에 어떤 항목을 선호하거나 구매할 가능성이 높은 지를 예측하는 과정이 추천모델의 핵심 개념으로 작용합니다. 


티맵의 집추천에 사용되는 모델은 딥러닝 모델입니다, ML을 포함하는 초기 추천모델들과의 비교를 통해 딥러닝 모델을 선택하게 된 이유를 설명드리겠습니다.  

Figure 2. collaborative filtering VS content based filtering

초기 추천모델로는 collaborative filtering과 content based filtering이 주로 사용되었습니다. collaborative filtering사용자 간의 유사성을 기반으로 추천을 수행합니다(Figure 2). 즉, 비슷한 취향을 가진 사용자가 특정 상품을 좋아했을 때, 다른 비슷한 사용자에게도 해당 상품을 추천하는 방식입니다. 반면, content based filtering상품 간의 유사성을 고려합니다. 특정 사용자가 특정 상품을 선호했을 때, 해당 상품과 유사한 다른 상품을 추천하는 방식입니다. 두 모델은 각각 상품에 집중을 할지, 사람에 집중을 할지 선택을 해야 하는 두 영역을 모두 만족시키기에는 한계가 있는 모델입니다.


2.1 Matrix factorization  

Figure 3. Matrix Factorization

Matrix Factorization(MF)은 초기 딥러닝 기반 상품 추천 모델 중 하나로, 사용자-상품 상호작용 행렬을 분해하여 잠재적인 관계를 설명하는 인자를 학습하는 기법입니다. 이를 통해 사용자와 상품 간의 관계를 추정하고 추천 시스템을 구축하는 데 사용됩니다(Figure 3). MF 모델은 다음의 세부적인 요소들로 동작합니다.


상호작용 행렬: 사용자와 상품 간의 상호작용을 나타내는 행렬을 생성합니다. 이 행렬은 사용자가 특정 상품을 평가한 정보 또는 상호작용을 나타내며, 보통 평점 또는 구매 여부와 같은 값으로 채워집니다.

행렬 분해: MF는 이 상호작용 행렬을 두 개의 저 차원 행렬, 사용자 행렬(U)과 상품 행렬(V)로 분해합니다. 이 행렬들은 잠재적인 특성 또는 잠재 인자를 나타내며, 각 사용자 및 상품을 이러한 잠재 인자의 조합으로 설명합니다.

학습: MF 모델은 이러한 잠재 인자(관계를 설명하기 위한)를 학습함으로써 사용자와 상품 간의 상호작용을 가장 잘 설명하는 모델을 찾습니다. 이때, 평점 예측 또는 상품 추천과 같은 작업을 수행하기 위한 목적 함수를 최적화하고, 이 목적 함수는 일반적으로 평균 제곱 오차(Mean Squared Error, MSE)와 같은 손실 함수를 포함합니다.

추천: 학습된 MF 모델은 잠재 인자를 사용하여 사용자에게 상품을 추천합니다. 예를 들어, 사용자와 상품 간의 내적을 계산하거나 유사도 지표를 활용하여 사용자에게 적합한 상품을 선택하는 방식으로 진행이 됩니다. 


2.2 딥러닝 추천모델


위에서 공유드린 전통적인 방법들은 데이터의 복잡도와 크기가 작은 환경에서 아직도 괜찮은 성능을 보이고 있습니다, 하지만 전보다 다양하고 많은 양의 데이터의 수급이 가능해진 현대 추천서비스 환경에서는 전통적인 추천방식으로 꾸준한 성능을 내기가 쉽지 않아 졌습니다. 다양하고 복잡한 문제를 해결하기 위해 딥러닝 모델을 도입했다고 볼 수 있으며 다음의 여러 문제를 해결하는데 탁월한 성능을 보이고 있습니다. 


Wide & Deep: 기존의 추천 시스템은 정보 다양성과 충실도 사이의 trade-off 문제를 겪었습니다. 협업 필터링은 사람들의 이용 패턴에 기반하고, 이로 인해 추천되는 항목들이 사용자의 관심사에만 국한되는 경우가 많았습니다. 반면 콘텐츠 기반 필터링은 특정 항목과 관련된 콘텐츠 정보만 고려하며, 다양성이 부족한 문제를 안고 있었습니다. 딥러닝 모델은 이러한 wide, deep 한 특징을 모두 포괄하는 구조의 설계가 가능하며, 이는 추천 도메인에서 중요하게 여겨지는 recall, precision 지표를 모두 충족시키는 방향으로 학습이 가능하다는 장점이 있습니다. 

비선형 관계학습: 딥러닝은 복잡한 데이터 표현과 패턴을 학습하는 데 강점을 가집니다. 특히, 딥러닝 모델은 비선형 관계를 학습하고 다양한 입력 특징들을 처리할 수 있어, Data Scientist들이 예측하지 못한 부분에 대한 인사이트를 모델 스스로의 학습을 통해 추천 성능을 향상시킬 수 있습니다. 

대규모 데이터 처리: 딥러닝 모델은 대용량 데이터셋에서도 효과적으로 동작할 수 있습니다. 추천 시스템은 많은 사용자와 항목들 간의 상호작용 정보를 다루어야 하는데, 딥러닝은 이러한 대규모 데이터를 다루는 데 적합합니다. 

숨겨진 특징 학습: 다차원의 임베딩을 사용한 지도학습을 통해 latent factor(잠재 인자)을 자동으로 학습합니다. 이것은 Matrix Factorization(MF)와 같은 모델들이 직접적으로 추출하기 어려운 특징을 추출하는 데 도움이 됩니다. 추천을 위한 딥러닝 모델 중 SOTA로 통하는 3개의 모델(DLRM, Bret4rec, GraphML)의 설명과, 그중 DLRM을 집 추천을 위한 추천모델로 선정한 이유를 사용한 피쳐와 모델의 구조를 통해 자세히 설명하도록 하겠습니다. 


3. SOTA models

3.1 bert4rec

Figure 4. bert4rec

BERT4Rec은 최신 딥러닝 기반 추천 모델로서, BERT(Transformer의 변형) 아키텍처를 활용하여 사용자와 상품 간 상호작용의 복잡성을 더 나은 방식으로 파악하고, 이를 기반으로 추천을 수행하는 모델입니다(Figure 2). BERT4Rec의 주요 특징은 다음과 같습니다. 

Figure 5. attention 구조

맥락을 고려한 추천: BERT4Rec은 사용자의 이전 행동과 상호작용을 고려하여 추천을 수행합니다. 사용자의 행동 시퀀스를 분석하여 다음에 무엇을 추천할지 결정하는 능력이 뛰어난데요. 이 부분이 bert4rec의 가장 도드라지는 강점으로 bert의 기본구조인 Self-Attention구조(입력 시퀀스 내의 각 단어가 다른 단어와 어떤 관련성을 가지는지를 계산하는 메커니즘으로, 이를 통해 맥락을 파악하고 상품 간 상호 작용을 이해합니다)를 그대로 따르기 때문입니다.


3.2 graph ml 

Figure 6. graph ml

Graph Machine Learning (Graph ML)은 그래프 구조 데이터에서 학습과 예측을 수행하는 모델입니다. 이 모델은 다양한 추천 시나리오와 관련된 다양한 데이터를 다룰 수 있는 강력한 도구로서 네트워크 관계, 그래프 데이터, 소셜 네트워크, 지리적 데이터, 상호작용 데이터 등 다양한 데이터 유형에서 사용 중입니다(Figure 6).


Graph ML의 주요 특징은 다음과 같습니다.

그래프 구조: 데이터를 노드(node)와 엣지(edge)로 구성된 그래프 구조로 표현합니다. 이를 통해 데이터 간의 관계를 시각화하고 직관적으로 분석할 수 있습니다.

관계 추론: Graph ML은 그래프 상의 관계와 상호작용을 학습하고 이를 기반으로 예측을 수행합니다. 사용자와 항목 간의 관계, 예를 들어 소셜 네트워크 관계, 지리적 위치, 행동의 유사도 등 다양한 관계를 설명할 수 있습니다.

특징 추출: Graph ML은 그래프 데이터에서 특징(feature)을 추출하여 예측에 활용합니다. 이러한 특징은 노드의 중심성, 연결성, 유사성, 그래프 구조 등 다양한 측면을 고려하여 학습, 업데이트됩니다.


3.3 DLRM  

Figure 7. dlrm

DLRM은 다음의 모듈들로 구성됩니다. 


Multi feature

DLRM은 다양한 피처(고객 메타정보, 행동 정보 등)를 동시에 활용할 수 있는 구조를 가지고 있습니다(Figure 7). 이 중에서도 주요한 데이터 특징은 다음과 같습니다.


데이터는 그 특징을 기준으로 dense와 sparse로 분류되어 학습됩니다. Dense란 값의 대소관계를 내포하는 데이터로 길고 짧음, 크고 작음을 표현하는 데이터입니다. 시퀀스 길이, 타겟의 위치 등이 이에 해당합니다. Sparse란 값 자체가 의미를 가지지 않는 데이터로 인덱스 정보로 사용되는 데이터입니다. 타겟 poi의 카테고리 정보나 주거공간의 등장 여부등이 여기에 해당합니다.


생성한 피쳐들이 각각 어느 영역에 들어갈지를 정하는 것 또한 모델링의 일부로 학습에 큰 영향을 주기 때문에 여러 번의 실험이 필요한 영역입니다.


Embedding Layer

DLRM의 시작 부분은 Embedding Layer로, 이곳에서 범주형(categorical) 피처를 다차원의 연속 벡터로 변환합니다. 예를 들어, 사용자 ID와 상품 ID와 같은 범주형 데이터는 Embedding Layer를 통해 연속 벡터로 표현됩니다.


Stacking

DLRM은 다양한 레이어(Fully Connected Layer;FCL)를 쌓아서 구성됩니다. 이러한 레이어는 피처 별로 쌓아지며, 층이 많아질수록 더 복잡한 특징을 추출하는 딥러닝 모델의 기본적인 특징을 가집니다.


Interaction Layer

피쳐의 특징별로 dense, sparse 데이터로 입력을 나눴고, 임베딩과 FCL로 각각의 데이터를 표현했다면, 이젠 Interaction Layer에서 그들 간의 관계(상호작용)를 표현하는 작업을 진행합니다. 주로 외적곱(outer product)과 내적곱(inner product)을 활용하여 상호작용을 추출합니다.


Fully Connected Layers

Interaction Layer의 output으로 나온 정보는 마지막 Fully Connected Layers에서 계산된 상호작용과 Embedding 된 피처를 결합하여 최종 예측을 수행합니다. 이 부분에서는 다양한 활성화 함수와 가중치를 사용하여 예측을 조정하는데, 상품의 타겟 확률이 그 결과로 뱉어집니다. 주로 Relu 함수를 사용합니다.


학습

DLRM은 지도 학습(supervised learning) 방식으로 학습됩니다. 주어진 입력 데이터와 해당 출력(예측) 값을 최적화하기 위해 역전파(backpropagation) 및 그라디언트 하강(gradient descent) 알고리즘을 사용하여 모델의 가중치를 조정합니다.


DLRM의 모델 구조상 입력되는 데이터의 순서와 앞뒤 맥락에 대한 이해를 위해서는 별도의 피쳐를 넣어주는 방식으로 학습을 해야 합니다. bert4rec, graphML과 비교되는 단점일 수 있겠는데요. 집 추천의 경우 앞뒤 순서에 대한 이해보다는 다양한 고객 행동, 데모정보를 통해 해당 고객의 여정에 주거공간이 등장하는지, 혹은 해당 주거공간이 고객의 집인지에 대한 의사결정이 더욱 중요한 task로 이해했고, DLRM이 이 역할을 훌륭히 수행할 것이라는 확신이 있어 DLRM을 추천모델로 선정하였습니다.  


4. 집 추천 

4.1 문제 정의


추천 모델의 기본 가정은 사용자의 이전 행동 데이터를 통해 미래 행동을 예측하는 것입니다. 즉, 사용자가 어떤 상품을 본다면 해당 상품을 클릭하거나 구매할 가능성이 높다는 가정으로 모델이 학습되고 추론하는데요. 집 추천은 전통적인 상품 추천과의 콘셉트적인 차이가 있습니다. 일반적인 추천 모델이 다음에 등장할 상품을 예측하는 것과 달리, 집 추천은 사용자의 행동과 관련된 특정 위치에 대한 확률을 기반으로 하나의 장소(집 poi)를 찾아내는 과제입니다. 행동이력에서 타겟을 추출하느냐, 행동이력에 등장하지 않는 다음 나올 action을 예측하느냐의 차이로, 집 추천은 전자에 해당합니다. 


4.2 Feature engineering 

Figure 8. 집 등록 순 cate_3 랭킹 top 20/7

주거공간을 정의합니다. 티맵은 약 500만 개의 장소 정보 (POI 데이터)를 다양한 dept의 카테고리 정보를 포함하는 여러 메타 정보들과 함께 관리하고 있습니다.


Figure 8은 실제 집으로 등록된 POI들 중 레벨 3에 해당하는 카테고리를 집 등록 건수를 기준으로 정렬한 그래프입니다. 상위 7개의 카테고리를 제외하면 지하철역, 동사무소, 교차로와 같은 주거 공간이 아닌 카테고리가 포함되어 있음을 확인할 수 있습니다. 이러한 카테고리에 속하는 장소들이 집으로 추천되는 경우 사용자들이 이를 납득하기 어렵다는 판단 하에, 주거 공간으로 추천되는 대상을 일반적인 주거 공간으로 사용되는 상위 7개 카테고리로 한정하였습니다.


또한 주거 공간이 아닌 카테고리(예: 주차장)를 추천 대상으로 포함하는 경우 학습 데이터에 노이즈가 발생하며, 모델의 학습 정확도가 저하되는 것을 경험했습니다.  


논외로 이런 상황(주거공간이 아닌 장소들이 집으로 등록되어 있는 경우)은 고객이 자주 방문하는 장소를 집이나 회사로 등록하고 사용하기 때문으로 파악 중입니다. 추천받는 고객의 모수 확장을 위해서는 이러한 제약들을 최소화해야 하지만, 정확도 위주의 추천을 통해 고객반응을 조심히 살펴나가며 모수를 늘려나가는 방향을 선택했습니다.


학습데이터 생성

집을 등록한 약 880만 명의 고객 중 다음의 조건을 만족시키는 행동이력을 추출합니다.

최신성: 최근 2주 간의 행동 이력만을 고려합니다.

정합성: 하루 동안의 목적지 시퀀스의 길이를 2~ 7 사이로 제한하였습니다.

이러한 제한은 일반적인 사용자의 이동 경로를 반영하기 위한 것이며, 더 긴 시퀀스(8 이상의 행선지 리스트)는 대리, 버스 운전 등 업무용 이용자의 행동패턴을 포함시키게 되므로 패턴학습을 방지하기 위한 목적입니다. (업무용 사용자들은 집 추천에서 낮은 중요도를 갖습니다)


세션 타임스탬프 재정의 

Figure 9. 기준시간을 2:30AM으로 변경

세션 타임스탬프의 기준 시간을 오전 12:00에서 02:30으로 재설정하였습니다(Figure 9). 기준시간을 오전 12시로 설정(디폴트 설정)할 경우 열두 시를 넘어 SK뷰아파트로 귀가하는 고객은 그날의 마지막 여정인 아파트가 다음날의 첫 여정으로 넘어가게 됩니다. 결과적으로는 집으로 가지 않은 Day1과 집을 가장 먼저 방문하는 day2의 데이터를 생성한 셈이 되고, 정상적인 한 개의 행동이 사라지고 잘못된 두 개의 행동이 생성되어 노이즈를 일으켜 학습을 방해하는 요인으로 작용하였습니다. 분석결과 대부분의 고객의 시퀀스 상에서 하루의 마지막 행선지로 본인의 집이 등장하였으며 새벽 출발인 고객들의 행동을 반영하기 위해 다음의 세션 시간 재정의가 필요했고, 새벽 2~3시 사이를 세션의 기준으로 변경하는 약간의 버퍼를 둠으로써 데이터를 보존하여 학습의 정확도를 높일 수 있었습니다. 


데이터 특징별 분류

DLRM은 데이터의 특성에 따라 Dense와 Sparse로 구분하고 이를 기반으로 학습합니다(Figure 10). 

Figure 10. 특징별 피쳐 분류

Dense Data: Dense 데이터는 값의 크기와 순서를 내재한 데이터로, 길이, 크기 및 위치와 같은 특성을 나타냅니다. 시퀀스의 길이나 목표 위치 등이 이 범주에 속합니다.


Sparse Data: Sparse 데이터는 값 자체가 의미를 가지지 않는 데이터로, 주로 인덱스 정보로 사용됩니다. 카테고리 정보나 주거지의 등장 여부와 같은 데이터가 이 범주에 속합니다.


생성된 피쳐는 각각의 데이터 범주에 할당되는 과정을 포함하며, 이러한 할당은 모델링 과정의 일부로, 학습에 큰 영향을 미치기 때문에 반복적인 실험과 조정이 필요한 영역입니다.


앞서 언급한 대로, 티맵은 약 400만 건의 목적지(poi)를 보유하고 있습니다. 이러한 목적지는 지속적으로 업데이트되며, 이러한 많은 poi를 대상으로 학습하는 것은 두 가지 주요 제약사항을 동반합니다.


첫 번째는 Cold start 문제로, 학습할 때 등장한 적이 없는, 추론할 때 처음으로 등장하는 poi는 모델이 학습을 하지 못하였기 때문에 추천이 불가하며, 결과적으로는 추천 정확도를 떨어뜨립니다.


두 번째로는 학습비용 문제입니다. 400만 건의 목적지를 대상으로 학습하는 데에는 그 경우의 수와 볼륨이 방대하여 GPU로 학습을 하여도 상당한 시간이 걸리게 됩니다.  

Figure 11. category level model train

따라서 우리는 카테고리 레벨의 모델학습을 통해 이 두 가지 문제를 해결하고자 하였습니다(Figure 11). 기존의 poi 레벨의 시퀀스를 티맵 내부에서 관리하는 레벨 2, 3의 카테고리 정보로 변환 후 학습을 한 것인데요, 예를 들면 종로 고등학교가 교육기관, 고등학교라는 카테고리로 변환이 되어 새로운 시퀀스가 만들어지는 것입니다.


장소(poi)가 추가된다고 하여도 관리 중인 카테고리 정보가 늘어나는 것은 아니기 때문에 cold start 문제를 헷징 할 수 있었고 카테고리들의 시퀀스를 학습시킴으로써 데이터의 볼륨이 약 100분의 1로 절감되는 효과를 얻었습니다.


그 결과 CPU에서의 학습과 배치 결과생성까지의 전 과정을 24시간 내에 진행할 수 있었고, 고객들에게 매일 업데이트되는 추천 SET을 제공할 수 있었습니다. 이러한 데이터 특징 및 데이터 학습 전략은 우리의 추천 모델의 성능과 정확도 향상에 중요한 역할을 합니다.


4.3 지도학습 프레임워크

DLRM은 지도학습 모델입니다, 지도학습은 모델에게 정답을 알려주면서 학습을 진행하는 방식으로, 학습 데이터에는 정답과 오답이 모두 포함됩니다.


세션에서 고객의 집이 등장하는 경우 정답 데이터(타겟 poi에 대한 라벨이 1)가 됩니다. 반면, 주거지(top7 카테고리에 포함되는 장소)가 나타나긴 하지만 고객의 집이 아닌 경우 오답 데이터(라벨이 0)로 처리됩니다.


800만 명의 집등록 고객 학습데이터 풀에서 다음과 같은 과정을 거쳐 60%의 정답 데이터와 14%의 오답 데이터를 추출하였습니다.


4.4 학습   

Figure 12. train loss
Figure 13. train accuracy
Figure 14. test accuracy

Accuracy (정확도): Accuracy는 고객의 집을 정확하게 예측하는 비율을 나타내며, train, test 동일하게 최대 90% 이상의 정확도를 달성하고 있습니다.


Loss (손실): Loss는 모델의 학습 과정 중에 최소화해야 하는 손실 함수의 값을 나타냅니다. 이 손실은 꾸준히 감소하는 경향을 보이고 있으며, 모델의 학습이 진행되고 있다는 것을 보여줍니다. 또한 loss가 작아짐에 따라 Accuracy가 높아짐을 확인할 수 있습니다. 


점수 (Scores) 

Figure 15. 추천 score(threshold)

Figure 15은 실제 고객의 행동을 모델에 입력했을 때 각각의 poi들의 집일 확률인 score값을 보여주고 있습니다. 두 번째 행동이력에서는 주거공간으로 생각되는 장소가 다수 등장합니다. 우성아파트, 홍일아파트, 은하수아파트는 두 번 등장을 하고 있는데요. 0.76의 상대적으로 가장 높은 score를 가지는 은하수 아파트가 추천이 되어야 합니다. 하지만 저희는 score에 허들을 두어, 0.8을 넘지 않는 poi는 추천하지 않는 방식으로 추천에 대한 정확도를 관리하고 있습니다.


여기선 첫 번째 고객에게 SK오피스텔과 세 번째 고객에게 LG자이아파트가 추천되겠네요.


4.5 추천대상 filtering

추천 도메인에서의 성능 측정을 위해 정확도와 손실뿐만 아니라 추가적인 핵심 지표가 있습니다. 이 중에서 True Positive와 False Positive는 중요한 역할을 합니다(Figure 16). 

Figure 16. confusion matrix

True Positive (TP): True Positive는 정답을 정답으로 판단하는 경우를 나타냅니다. 즉, 모델이 정확하게 예측한 경우를 의미합니다. 예를 들어, 강아지를 강아지로 올바르게 인식하는 경우가 True Positive입니다.

False Positive (FP): False Positive는 오답을 정답으로 판단하는 경우를 나타냅니다. 즉, 모델이 잘못된 예측을 정답으로 판단한 경우입니다. 이는 고양이를 강아지로 잘못 인식하는 상황과 같습니다.


이러한 두 가지 지표는 서로 상충 관계를 가지며, 집 추천의 환경에서는 모든 주거지를 집으로 추천하면 True Positive와 False Positive 값이 모두 증가합니다. 이는 정확한 추천 수가 늘어나는 동시에 잘못된 추천도 늘어나 고객 경험을 저해할 수 있습니다. 따라서, True Positive Rate을 유지하면서 False Positive Rate을 줄이기 위해 Shannon-entropy 모델을 추천 고객 필터링에 적용하였습니다. 

Figure 17. filtering with RLE-entropy


Shannon 엔트로피

집추천이 서비스되는 공간인 messaging CTA 영역은 집 추천 아닌 다른 추천도 서비스하는 공간으로(대리 할인쿠폰, 알람 등) 무의미한 추천을 하게 될 경우 다른 추천을 할 기회비용이 낭비되기 때문에 false positive rate을 줄이는 것이 중요합니다. 

Figure 18. Shannon 엔트로피

H(X)는 확률 변수 X의 엔트로피를 나타냅니다.

p(x)는 X가 어떤 특정한 값을 가질 확률을 나타냅니다.

Σ는 모든 가능한 X 값에 대한 합계를 나타냅니다.

섀넌 엔트로피는 확률 분포의 불확실성 정도를 나타내며, 이 값이 높을수록 확률 변수 X의 상태를 예측하기 어려워지며, 무질서한 상태에 해당합니다. 반대로, 엔트로피가 낮을수록 확률 변수 X의 상태가 예측 가능하며, 더 구조화되어 있다고 볼 수 있습니다.


집을 등록한 고객들의 엔트로피를 기준으로, 집을 등록하지 않은 고객들의 엔트로피를 계산하여 등록한 고객과 비슷한 엔트로피를 가지는 고객으로 추천대상을 한정합니다. 이를 통해 일부의 False Positive문제를 해결할 수 있었습니다.


5. 결과 & future work 

매일 업데이트되는 최신의 추천 SET을 고객들에게 제공 중입니다. 추천대상 고객 선정을 위한 조건은 다음과 같습니다. 

기간: 5주 동안의 주행이력을 추출합니다. 

시퀀스 길이: 2~9 (학습데이터보다는 관대한 범위로 추출한 후 엔트로피 모델링을 통해 대상을 걸러냅니다) 

등장빈도: 최소 3번의 주거공간이 포함된 시퀀스를 가지는 고객으로 한정합니다.

약 110만 명의 추천대상 pool을 생성하며, 학습에 6시간, 추론에 약 4시간이 소요됩니다.

이후 엔트로피, score 허들을 적용한 약 5~60만 명이 추천을 받게 됩니다.  

Figure 19. 서비스 결과

티맵은 다양한 메시징 CTA를 활용하여 사용자에게 대리 할인 쿠폰, 보험 갱신 알림, 그리고 집 추천과 같은 맞춤형 서비스를 제공합니다. 이러한 메시징 CTA의 평균 클릭 전환율은 현재 약 3%로, 만족스러운 전환율을 보이고 있습니다(Figure 19).


현재 집 추천 서비스는 1차 캠페인을 성공적으로 마무리하고, 2차 캠페인을 진행 중입니다. 1차 캠페인에서 집 추천의 전환율은 iOS 기기 사용자에서 평균 10~11%, 안드로이드에서 평균 2~3% 로 나타나, 메시징 CTA의 평균치를 상회하는 결과를 얻었습니다.  또한, Android와 iOS 사용자 간의 전환율 차이가 크게 나타나고 있으며, 특히 iOS 사용자의 경우 '아니요'를 클릭하여 이탈하는 비율이 Android 사용자에 비해 높은 것으로 나타났습니다. 결과적으로 이는 애플(iOS) 사용자들이 안드로이드보다 더 활발하게 반응하고 있는 것으로 해석할 수 있었습니다.


추천에 긍/부정 반응 고객의 행동분석을 통해 이후에 있을 2차 집 추천 캠페인에서는 1. 엔트로피의 허들을 높이고 2. 추천기간을 완화하여 추천 대상을 최대한 유지하며 추천 이탈률은 낮추는 방향으로 운영하려고 합니다. 


티맵은 집 추천과 같은 여러 AI 개인화 서비스를 통해 앱에서의 사용성 개선과 다소 딱딱했던 티맵의 브랜드 이미지를 부드럽게 바꾸어 나가는 중입니다. 감사합니다. 


매거진의 이전글 P여도 문제없어! ‘다음 여행지 추천’ 서비스 개발기

작품 선택

키워드 선택 0 / 3 0

댓글여부

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