Event recommendation은 Cold Start
문제를 직면해왔습니다. 이러한 한계를 극복하기 위해 논문에서는 Event-based social network(EBSNs)에서 RSVPs로 사용자에서 파생된 collaborative signals
와 event의 description 기반의 Content Based Signal
이외로 Contextual Signal
에 해당하는 social signals
, location signals
, temporal signals
을 수집합니다. 최종적으로 다음의 signals을 조합해 event에 대해 learn to rank를 진행해 Personalized Recommedation을 제시합니다.
많은 양의 가능성이 있는 Event는 때때로 User가 그들의 흥미에 딱 맞는 event를 찾는 것을 방해하기도 합니다. 이런 과도한 정보량에서 Recommender system이 관련있는 정보를 제시해 준다는 점에서 문제 상황을 극복하는 솔루션이라고 생각되기도 하지만, 책과 영화 같은 classic한 Recommender scenarios와 달리 event recommender는 새로운 event에 대해 Cold Start
문제를 가집니다. EBSNs의 Event의 다음과 같은 특성 때문에 Cold Start 발생이 불가피하다고 할 수 있습니다.
즉, EBSNs의 Event는 이전의 과거 행적과 연관성이 매우 적어 전통적인 Recommender approach로는 EBSN User에게 만족감을 주기 어렵습니다.
RSVPs (불어로 "Please Respond"라는 뜻의 문장의 약어)로 사용자에서 파생된 collaborative signals와 event의 description 기반의 Content Based Signal 이외 Contextual Signal을 도입함. 수집한 Contextual Signal에는 다음과 같은 것들이 있습니다.
이런 Contextual signal은 User의 Event 참석 여부 결정을 추정하는데 도움이 될 것이라고 가정합니다.
전통적인 recommendation system은 주로 2개의 entity 간의 interaction에 대한 modeling이 진행됨. 그러나 Context-aware recommender는 interaction을 정의하는데 도움이 되는 additional signal까지 사용함. EBNS에서 Additional Signal 사용이 불가피한 이유는 다음과 같습니다.
미래
에 발생되기 때문에 EBNS에서의 User와 후보가 되는 Event 사이의 interaction 없음정보가 누락됨
따라서 이런 Cold Start 문제를 해결하기 위해 EBNS에서 풍부한 contextual evidence를 이용하기를 제안합니다.
Which of available events are more likely to be attended by user?
결국 이 논문에서는 주어진 target user와 contextual signal을 이용해 다음의 문제를 해결하기 위해 다음과 같이 formalizing problem setting 진행합니다.
Implicit data : content, User, time, event, group, distance 간의 relation :
Task : find scoring function : 후보 Event에 대한 preference score 배정
Top -n recommendation :
Minimize a ranking loss function :
Context-aware recommender의 Relevance Score :
EBNS에서 User는 다른 User와 online/offline으로 만나며 interaction을 가짐. 따라서 두가지의 소통 형태에 대해 각각 Model을 제안합니다.
User가 Group에서 더 많은 Event에 참여할수록, 계속해서 해당 group의 event에 참여할 가능성은 높습니다.
Target User 에 대해 해당 Event의 Relevance Score
Group Frequency Model에서는 다음의 2가지 관계가 고려되지 않았습니다.
User가 친밀하게 여기는 group과 동일/유사한 group에 의해 진행되는 event는 참여할 가능성이 높기 때문에 다음의 관계는 반드시 고려되어야하고 더 나아가 추천 시스템에서의 cold start 문제를 해결할 수 있습니다.
본 논문의 저자는 Multi-Relational Factorization with Bayesian Personalized Ranking (MRBPR)을 이용해 위의 interaction을 모델링합니다.
Target Relation
X 와 X 의 친밀한 관계를 포함한 joint factorization approach를 진행합니다.
Parameter
Objective Function
Stochastic Gradient Descent
SGD를 통한 parameter learning이 이루어집니다.
Predict Relevance score
기존의 single relation에서 이루어진 standard matrix factorization과 다른 점은 latent factor인 와 모두 user가 미래의 event 참여 여부 결정
에 영향을 미치는 group aspect
을 포함합니다.
Content base filtering이 EBNS에서 유망한 접근법인 이유는 다음과 같음.
event에 대한 text 설명은 classic bag-of-words model
이 진행됩니다. 과거 user가 참석했던 event에서 뽑아낸 단어 대한 TF-IDF vector
는 각 user를 대표합니다. 각 event는 추천 인스턴스에 대해 time distance로 weighted
됩니다. (Time value of money decay function : a measure of the rate of decline in the value of an events contract due to the passage of time과 비슷한 맥락)
Profile of target user
TF-IDF
표현Rank Candiate Event
각 user의 입장에서 Cosine similarity
를 바탕으로 한 후보 event에 대한 순위 제시하고 있습니다.
한 도시 내에서 유저의 이동 패턴은 모두 다양합니다.
이처럼 이벤트의 발생 패턴은 공간적 정보에 따라 상이하다는 것을 확인할 수 있으며, 이를 추천을 위한 하나의 feature로 사용하기 위해 저자는 다음과 같은 approach를 제안합니다.
Kernel-based density estimation을 통해 유저의 이동패턴을 발생한 이벤트 간의 기하학적 거리의 분포로 모델링하고자 합니다. 이는 새로운 이벤트는 유저가 과거에 일으켰던 이벤트들의 지역들 중 하나에서 발생할 가능성(aggregated likelihood)을 바탕으로 발생하기 때문입니다.
가 unknown distribution 를 따른다고 할 때, kernel density function 은 다음과 같이 정의됩니다.
유저의 지리적 선호도는 에 centered된 가우시안 분포의 합으로 표현됩니다.
후보 이벤트들은 과거에 타겟유저가 참여했던 이벤트들과의 거리를 바탕으로 평가되며, 그것을 수식으로 표현한 결과는 다음과 같습니다.
유저가 A이벤트에 참여할지를 결정하는 중요한 요인 중 하나는 이벤트가 언제 발생하는지입니다. 논문의 저자들은 유저들이 선호하는 특정 요일, 혹은 특정 시간대가 존재할 것이라고 가정합니다.
위 그림에서 첫번째 유저는 매일, 그리고 주로 밤에 이벤트가 발생했으며 두번째 유저는 일주일 중 2번, 그리고 오직 오후에 이벤트가 발생한 것을 알 수 있습니다.
이 인사이트를 공식화하기 위해, 각각의 이벤트 를 24x7-dimension 벡터인 로 표현합니다.
마지막으로 유저 와 이벤트 간의 score는 두 벡터의 코사인 값으로 표현됩니다.
Event recommender의 효율성을 높이기 위해 (특히 cold start), 앞서 생성한 recommenders()를 이벤트의 순위를 매기기 위한 학습의 feature로 사용합니다.
그리고 다음과 같은 학습 인스턴스 의 관계를 반영할 수 있게끔 를 학습시킵니다. 는 최종 추천 리스트를 생성해내는 함수이며, 이 method가 MCLRE 입니다.
또한 는 Coordinate Ascent방식으로 학습되었습니다.
위 그림은 coordinate descent에 관한 그림입니다. coordinate descent가 목적함수를 minimize하는 방식이라면, 위 논문에서는 metric인 를(높을수록 좋은 metric) maximize하는 방식으로 훈련을 시킨다고 생각하시면 될 것 같습니다.
또한 coordinate descent는 gradient descent와 굉장히 유사해 보이지만, gradient descent는 학습 과정에서 한번에 모든 파라미터를 update한다면 coordinate descent(ascent)는 한번에 하나의 파라미터를 update하는 방법이라는 차이가 있습니다.
Meetup : 내 주변 이벤트 찾기
MP : Positive response(yes
) 순으로 정렬한 뒤 상위 10개 선택
BPR-MF : Bayesian Personalized Ranking (with Matrix Factorization) / 사후 확률 최대화
BPR-NET : BPR-MF 모델의 regularization term으로 2개의 social network를 사용 (the social network from the shared groups of users, the social network inferred from the co-attended events)
baseline 모델과 비교했을 때 MCLRE의 성능이 모든 지역(chicago, phoenix, san jose)에서 좋습니다.
baseline 모델들은 sparsity level이 높아질수록 NDCG@10이 감소하는 편에 속하나, MCLRE는 event sparsity와 user sparsity 모두에서 꾸준히 좋은 성능을 보여줄 수 있음을 알 수 있습니다.
yes
) 순으로 정렬한 뒤 상위 10개 선택 우리의 MCLRE 모델의 성능이 가장 좋았습니다.
(생략)
본 논문은 여러개의 context-aware recommender를 input feature로 사용하는 Rank Approach를 학습시키는 Event Recommendation Problem을 다뤘습니다.
각 사건들에 대한 설명을 바탕으로 한 content-based signal과 RSVP에서 비롯된 collaborative signal로부터 social, geographic, 그리고 temporal signal들을 도출했습니다.
또한 NDCG@10을 직접적으로 최적화함으로써 각각의 context-aware recommender의 output score로부터 개별적인 랭킹을 학습하는 랭킹 알고리즘인 Coordinate Ascent를 사용했습니다.
본 모델을 Meet-up.com
데이터를 통해 평가했을 때, 성능이 향상되었음을 알 수 있었습니다.
저자들은 향후 다음과 같은 태스크를 추가적으로 실행할 것이라고 얘기하며 논문을 마무리 합니다.
[15기 김현지]
본 논문은 Event recommendation에서의 Cold Start 문제를 해결하기 위해 collaborative signal와 content based signal 이외의 contextual signal을 수집하여 사용한다.
contextual signal에는 그룹내 멤버십 기반의 social signals과 유저의 집과 이벤트 발생지까지의 거리 기반의 location signals, 그리고 유저의 선호 시간대 기반의 temporal signals 등이 있다.
social signal을 포착하기 위해 두 가지 모델은 제안하는데, 첫 번째는 Group Frequency Model로 유저가 그룹에서 더 많은 이벤트에 참여할수록 계속해서 해당 그룹의 이벤트에 참여할 가능성이 높다고 가정한다. 두 번째 모델은 Multi-Relational Model로 첫 번째 모델에서 고려되지 않은 유저가 친밀하게 여기는 그룹내 관계와 그룹과 그 그룹에서 진행된 이벤트간의 관계를 고려한다.
location signals를 포착하기 위해서는 Kernel-based density estimation approach를 제안한다. 이는 새로운 이벤트는 유저가 과거에 일으켰던 이벤트들이 지역들 중 하나에서 발생한 가능성을 바탕으로 발생하기 때문에 유저의 이동패턴을 발생한 이벤트 간의 기하학적 거리의 분포로 모델링하는 것이다.
뿐만 아니라 유저들이 선호하는 특정 요일, 혹은 특정 시간대가 존재할 것이라는 가정하에 이벤트가 언제 발생하는지도 고려한다.
이러한 contextual signal를 포함한 다양한 signals을 조합해 이벤트들에 대해 learn to rank를 진행하였고, 그 결과 우수한 Personalized Recommendation을 제시하였다.
[Paper Review] (2015, ACM) Context-Aware Event Recommendation in Event-based Social Networks
15기 류채은
콜드스타트 문제를 해결하기 위해 social signals, location sigmals, temporal signals를 수집하고 이 시그널들을 조합해서 learn to rank를 통한 personalized recommedation을 제시한다.
[contextual model]
1) Social-Aware
2) Content-Aware
event에 대한 text 설명은 classic bag-of-words model이 진행됨.
3) Location-Aware
Kernel-based density estimation approach
:유저의 지리적 선호도는 l_e에 centered된 가우시안 분포의 합으로 표현.
4) Time-Aware
‘이벤트가 언제 발생하는지’이므로 논문의 저자들은 유저들이 선호하는 특정 요일, 혹은 특정 시간대가 존재할 것이라고 가정.
[Learning to Rank Events with Contextual Features]
Multi-Contextual Learning to Rank Events (Coordinate Ascent방식으로 학습)
: 한번에 하나의 파라미터를 update하는 방법
[15기 이성범]
본 논문은 Event 기반의 추천 시스템에서 직면하는 Cold Start Problem을 해결하기 위해서 Collaborative Signal 이외에 Event의 Description 기반으로 Content Based Signal을 수집할 뿐만 아니라 Contextual Signal에 해당하는 Social Signals, Location Signals, Temporal Signals 등을 수집하여 다양한 Signals의 조합을 통해서 Evente에 대한 순위를 매겨서 개인화된 추천시스템을 만드는 방법에 대하여 이야기한다.
기존의 이벤트 기반의 추천시스템 모델들은 항상 이벤트가 미래에 발생되기 때문에 유저와 후보가 될 이벤트 사이의 상호작용을 찾을 수 없고, 유저와 이벤트간의 정보가 누락되는 문제가 발생하게 된다. 따라서 이벤트 기반의 추천 시스템 모델은 추가적인 Signal을 학습할 필요성이 있으며 본 논문은 Contextual Evidence를 통해서 추가적인 Signal을 학습했다.
본 논문은 추가적인 Signal 중 Social Signals을 학습시키기 위해서 User의 Group에 집중했다. User가 Group에서 더 많은 Event에 참여할수록, 해당 Group에 Event에 참여할 가능성이 높다는 가정하에 Social Signal을 학습시키기 위한 모델로 Multi-Relation Factorization with Bayesian Personalized Ranking을 제안했다.
Location Signals을 학습시키기 위해서 유저마다 이벤트의 지역적 발생 패턴이 존재한다는 것에 집중했다. 이벤트의 발생 패턴은 유저의 공간적 정보에 따라서 상이하기 때문에 kernel-based density estimation을 통해서 유저의 이동패턴을 발생한 이벤트 간의 기하학적 거리를 모델링했다.
Temporal Signals을 학습시키기 위해서 이벤트가 언제 발생하는지에 집중했고, 유저들이 선호하는 특정 요일, 혹은 특정 시간대가 존재할 것이라는 가정하에 모델링을 진행했다.
본 논문에서는 이런 다양한 Signals을 feature로 활용하여 Multi-Contextual Learning to Rank Events 모델을 구축했고 다른 baseline 모델과 비교했을 때 우수한 성능을 보여줬다.