세로형
Recent Posts
Recent Comments
Link
10-05 09:09
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Archives
Today
Total
관리 메뉴

꿈 많은 사람의 이야기

추천시스템 논문 리뷰 - An Adaptive Aspect Attention Model for Rating Prediction (A3NCF) 본문

추천시스템

추천시스템 논문 리뷰 - An Adaptive Aspect Attention Model for Rating Prediction (A3NCF)

이수진의 블로그 2022. 8. 9. 21:33
반응형
728x170

포스팅 개요

본 포스팅은 추천 시스템(RecSys, recommender system) 논문들 중 An Adaptive Aspect Attention Model for Rating Prediction (A3NCF) 이라는 논문을 리뷰하는 포스팅입니다. 본 논문의 추천 시스템은 attention mechanism(어텐션 매커니즘)과 topic modeling 방법을 사용하여 추천 시스템을 구성한 방법을 소개합니다. 여기서 토픽 모델링은, 논문에서 제안한 방법을 사용하며 이를 통해 리뷰(review)에서 item이 가지고 있는 서로 다른 aspect에 대한 사용자 선호도와 아이템 특징을 추출합니다.

 

또한, 본 포스팅은 제가 작성하고 있는 추천 시스템 시리즈 글 입니다. 시리즈로 작성하는 추천 시스템 논문 리뷰는 아래와 같은 순서로 진행할 예정입니다. 오늘은 그 일곱 번째 A3NCF 포스팅입니다.

 

  1. DeepFM (https://lsjsj92.tistory.com/636)
  2. MAML (https://lsjsj92.tistory.com/637)
  3. VECF (https://lsjsj92.tistory.com/638)
  4. FDSA (https://lsjsj92.tistory.com/639)
  5. PMN (https://lsjsj92.tistory.com/640)
  6. GAU (https://lsjsj92.tistory.com/641)
  7. A3NCF
  8. MIAN (https://lsjsj92.tistory.com/643)
  9. CCANN (https://lsjsj92.tistory.com/644)

 

본 포스팅에서 참고한 자료는 다음과 같습니다.


포스팅 본문

포스팅 개요에서 말씀드린 것처럼, 본 포스팅에서는 추천 시스템 논문 중 An Adaptive Aspect Attention Model for Rating Prediction (A3NCF) 이라는 논문을 리뷰합니다. 해당 논문은 다음과 같은 순서로 진행합니다.

 

1. A3NCF 핵심 요약

2. A3NCF 논문 리뷰


A3NCF 핵심 요약

추천 시스템 논문 An Adaptive Aspect Attention Model for Rating Prediction (A3NCF)은 다음과 같이 핵심적으로 요약될 수 있습니다. 

 

Preference/attention

서로 다른 사용자마다 different importance 부여

대부분 기존 recommender system에서는 이 vector same for all items하다고 가정

     • 하지만, 이러한 가정은 종종 유의하지 않음

     • 특히, itemdiverse characteristics user interaction에서 고려할 때 유의하지 않음

 

A3NCF

위 문제에 대해서 문제를 제기한, aspect aware recommender model

Userdifferent item에 집중하는 varying aspect attentioncapture 할 수 있음

New topic model을 설계

     • user preferencereview text에서 item characteristics 추출하기 위해

이후 다음과 같이 사용

     • 1. useritemrepresentation learningguide

     • 2. attention network 통해 usereach aspect of target item에 대한 special attentioncapture

 


A3NCF 논문 리뷰

본격적으로 An Adaptive Aspect Attention Model for Rating Prediction (A3NCF) 추천 시스템 논문 리뷰를 시작합니다. 본 내용은 논문에 나와있는 순서대로 작성합니다.

Introduction

Main contribution of this work을 요약하자면!

• 1. Aspect aware rating prediction method를 제안

     • Based on novel adaptive aspect attention modeling design

     • 새로운 topic model을 개발하여 user와 item의 feature를 추출

          • Review를 활용

          • Aspect aware representation learning을 guide하기 위해

• 2. attention network를 소개

     • Each specific user-item pair에 대해 varying attention vector를 capture하기 위함

• 3. comprehensive(광범위한) experiments를 실행

     • Public하게 접근할 수 있는 dataset 활용

     • 제안 모델의 effectiveness를 평가 및 보여주기 위해서

 

Matrix Factorization

Netflix Prize contest 등에서 소개 되었으며 great success 달성한 방법입니다. 이는 추천 시스템에서 많이 활용되는 방법 중 하나인데요. user interest 그리고 item feature를 latent factor vector로써 Latent space에서 표현합니다. 그러나, rating only는 사용자의 전반적인 만족을 반영할 뿐 근본적인 근거를 설명하지 못한다는 단점이 있습니다. 예를 들어서 고해상도 카메라 또는 좋은 베터리 때문에 높은 점수를 줬지만, overall rating으론 알 수 없습니다.

 

추천 시스템에서의 Matrix Factorization 방법은 cannot achieve fine grained modeling of user preference of the various aspects of items합니다. 이는 다음과 같은 특징을 가지게 됩니다.

• Unexplained recommendations

• Cold-start problem of users with few ratings

 

MF의 문제를 해결하기 위한 연구

Matrix Factorization 문제를 해결하기 위해서 다양한 연구가 진행되었습니다. 그 중 Textual review를 활용하는 것에 많은 attention이 되고 있다고 합니다. Review는 user preference나 item characteristics와 같은 rich information을 담고 있다고 합니다. 왜냐하면 User는 주로 자신이 좋아하는 aspect에 대해 의견을 표현하기 때문입니다.

 

또 다른 방법은 Aspect-based model입니다. 여기에는 Topic based method이 있는데요. 이는 Topic model를 활용해 aspect information을 추출하는 방법입니다. Deep learning 기술의 powerful representation 때문에 이 방법도 검토 되고 있다고 합니다.

 

간과(overlook) 했던 점

하지만, 기존 연구들은 몇가지 간과했던 점이 있다고 합니다. 먼저 Attention or preference of a user on an aspect에 대한 간과인데요. 이는 다음과 같은 특징을 가집니다. 

• Different items에 대해 동일하지 않음

• Misleading recommendation을 초래할 수 있음

 

또한, Preference of a user에 대해 서로 다른 item에 대해서 various aspect를 가지고 있다는 것은 이미 잘 알려져 있는데요. 이는 ”aspect preference/attention vector”로 표시될 수 있다고 합니다. 기존 방법에서는 이 vector가 different item에 대해 동일하게 유지된다고 가정한다고 합니다. 하지만, 서로 다른 item이 같은 category에 속해 있어도 another aspect에 focus할 수 있습니다.

 

그래서 본 논문에서는 A3NCF 추천 시스템 모델을 제안합니다!

본 논문에서 제안한 추천 시스템 모델 A3NCF는 Aspect Attention based Neural Collaborative Filtering model이며 위의 것을 해결하고자 합니다. 즉,

 

• 사용자가 different item의 each aspect에 대해 accurately capture varying attentions 할 수 있도록!

 

본 논문에서는 새로운 topic model을 개발했다고 합니다. 이 topic model은 User preference와 item characteristics을 동시에 추출하기 위해 사용된다고 하고 이전 Topic model (LDA) 들을 사용한 것과 다르며, 이들은 item의 feature만 추출할 수 있다고 합니다. 여기서 학습된 user, item의 representation은 NCF에서 사용되며 다음과 같은 이유로 활용한다고 합니다.

 

1. 그들의 final latent factor 학습을 guide

2. attention network로 item에 대한 various aspect의 user attention vector를 capture 하기 위해

 

이를 통해서 better rating prediction performance의 달성을 기대하며 다음과 같은 것을 포인트로 잡아 줬습니다.

1. aspect aware representation learning of user and items

     • Powerful non-linear neural networks를 통해서

2. adaptive aspect attention modeling for each user-item pair

    • Delicately(섬세하게) design된 attention network을 통해서

Amazon dataset, Yelp dataset을 SOTA 모델과 비교하여 Comprehensive experiments를 실행하였습니다.

 

Related work

본 추천 연구와 관련된 관련 연구들은 다음과 같은 것들이 있다고 합니다.

Topic-based

• Review에서 latent topic을 topic modeling을 이용해 추출

• TopicMF, ITLFM, RBLT 등

 

Deep learning based

• 딥러닝이 recommender system에 success가 되고 있음

• Deep learning recommendation model에 textual review를 활용하려고 시도

• DeepCoNN, TransNet등

 

위 방법들의 가정과 한계

Different item에 대해서 various aspect에서 user attention weight/vector가 same하다고 합니다. 이는 Different item의 diverse characteristic를 고려해야 하기 때문에 이는 유효하지 않다는 문제점이 있습니다.

따라서, 본 논문에서는 Attentive neural network를 제안하며 그 이유는

• User의 varying attention vector을 capture하기 위해

• Item에 대한 review와 rating을 활용

 

이라고 합니다. 자세한 Related work는 논문을 참고해주세요!

 

Our model

Preliminaries

Problem Setting은 다음과 같습니다.

     • Review, User, Item, Item category, Rating

Intuition

본 논문에서는 사용자는 different item에 대해서 various aspectsdifferent importance 부여할 것이라고 합니다. 또는 attention weightdifferent item을 봤을 때 다양하게 달라질 수 있다고 합니다. 때때로, important aspectitem에 대한 userattitude 지배할 수도 있다고도 하네요. 예를 들어서 어떨 때는 편안함이 있는 것, NBA player의 팬이라면 그거 지지하는 것을 고려한다던지 등이 그 예시입니다. 

 

따라서, 본 논문에서 주장하는 것은! 다음과 같이 요약할 수 있습니다.

Usertarget itemeach aspect에 집중하는 사용자의 attention capture가 중요

여기서 문제는, userattention weight different item에 정확하게 모델링하는 것

또한, review는 사용자가 관심있는 측면, 주목할 만한 특징에 대해 작성

Review에서 item에 대한 different aspect 특징과 user의 선호도를 추출

 

A3 Neural Collaborative Filtering

본 논문의 추천 시스템 전체 아키텍처는 다음과 같습니다.

Input part

가장 먼저 input part입니다. 위 figure1의 빨간색 부분입니다. Review는 User review와 Item review로 나눌 수 있으며 New topic modeling 방법으로 user, item feature 추출한다고 합니다. ( 해당 방법은 뒤에서 설명합니다. ) Id는 User id, Item id이며 이를 위해  Embedding layer를 활용합니다.

 

Fusion part

반응형

다음으로 Fusion part입니다. figure 1에서 feature fusion 영역입니다. For better representation learning을 위해서 Embedding feature와 review base feature를 fusion합니다. 이때 Concatenation, addition, element-wise product 등 다양한 fusion 방법이 도입될 수 있는데 본 논문에서는 addition을 채택합니다. (RBLT, ITLFM에서 좋은 성능을 보여줬기 때문이라고 하네요) 또한, Fully connected neural layer를 사용하며 ReLU로 non-linear하게 접근하였으며 Experiments에서 additional layer가 performance를 상당히 올려준 것을 확인했다고 합니다.

 

• Attentive interaction part

다음으로 Attentive interaction part입니다. 해당 part는 본 논문 A3NCF 모델의 core입니다. Target item의 Different aspect에 대해 user의 attention을 capture하는 과정입니다. p_u, q_i를 fusion part에서 학습된 user의 representation, item representation이라고 지정하고 K는 latent vector의 dimension입니다. Attentive interaction의 output은 Rating 예측을 위해 user-item pair representation이 output으로 나오게 됩니다. 또한 여기서 Item에 대한 user의 attention 값을 p_u ⨀ q_i에 곱해줍니다. F는 user가 item i의 k번째 aspect에 대한 attention즉, 중요도를 capture하기 위한 것이고 a_{u,i,k} 는 each user-item pair에 unique한 값입니다. 

 

 Rating prediction part

마지막으로 Rating prediction part입니다. Attentive interaction에서 나온 F를 Fully-connected layer에 fed하여 Predicted rating r^_(u,i)을 얻게 됩니다.

 

Attention Mechanism

본 논문에서 주장하는 추천 시스템 모델 A3NCFUser uitem i에 있는 aspect/factor k에 대한 a_(u,i,k) capture합니다.

또한, User preference and item characteristics에 대한 것을 확인할 수 있는데요. Review에서 explicitly하게 관찰할 수 있으며  Item ivarious aspect에 대한 user uattentioncapture하기 위해 review-based feature에 의존합니다. 

Fusion part에서 학습된 latent vector에서 p_u, q_ifinal interaction feature F(user item pair) 학습하기 위해 사용되며 계산은 Subsequent normalization을 위해 softmax를 사용합니다.

Learning

Review에서 추출되는 user preferenceitem feature는 제안된 topic model을 통해 전처리됩니다. Topic model은 다음 장에서 설명합니다. A3NCFgeneral deep learning network와 같으며, rating prediction을 진행합니다. 또한 Stochastic Gradient Descent(SGD) 활용하여 학습합니다.

 

Topic Feature Extraction

드디어 본 논문에서 계속 이야기 한 topic model에 대해서 이야기 합니다. Review에서 useritem feature 추출하는 것은 본 논문에서 제안한 model에 중요한 요소라고 합니다. 그 이유는 다음과 같습니다.

Useritemfinal representation을 학습하며 attention weight 계산의 핵심과도 연관이 있음

기존에는 리뷰에 LDA등을 활용해 아이템의 특성만 추출

본 논문에서 제안하는 topic modeluser preferenceitem characteristic을 동시에 추출

 

본 논문에서 제안한 Our Topic model은 다음과 같은 특징을 가지고 있습니다.

Set of latent topic(Ktopic)userreview에서 논의하는 all aspect 나타낸다고 가정

θ_ulatent topicprobability distribution이고 θ_(u,k)user 측면의 상대적 중요성(relative importance)을 나타냄

     • User u에 의해 쓰여진review에 의해 결정

φ_iitem I 특성에서 aspect probability distribution이고, φ_(i,k)item iaspect k에 대한 중요성을 나타냄

     • Item i에 모든 사용자가 쓴 review에서 학습

300x250

Fig2는 Generative Probabilistic model입니다. Shaded circle의 의미는 Observed variables를 뜻하며 Unshaded는 Latent variable를 뜻합니다. 기타 기호는 다음과 같은 것들이 있습니다.

M, N은 각각 use의 수, item의 수

N_(w,s) : sentence s에 있는 단어의 수

D : corpus이고 d_(u,i)∈D : item에 대한 user review가 포함 된 것

Algorithm 1은 topic model의 process를 보여줍니다. Sentence는 보통 single aspect focus ( or topic z in our model )라고 하며 Userpreferenceitemcharacteristic에서 비롯될 수 있다고 합니다. Sentence s에 대해 topic z_s 결정짓기 위해서 다음과 같이 설정하였습니다.

Indicator 변수인 y∈{0, 1}, based on Bernoulli distribution, Parameterized by π_u

y=0이면 sentenceuser u에 의해서 생성되고, 아니면 item i의 특성에 따라 생성

 

왜냐하면 different item에 대해 userdifferent aspect로 의견을 제시할 수 있으며 Different itemaspect에 대해 사용자의 attention을 반영할 수 있기에 그렇다고 합니다. 그러므로 π_uuser dependent하고 사용자가 자신의 선호도 또는 item i의 특성으로부터 코멘트 하는 경향을 나타낸다고 합니다. 

Parameter

     • α_u, γ_i, β_w, η : pre-defined hyper parameters

          • θ_u, φ_i, ϕ_w, π_u 포함해 모수를 추정해야 함

          • 본 논문에서는 Gibbs sampling 방법을 사용해 parameter inference 진행

 

Experiments - Experimental Setup

Datasets

본 논문에서 제안한 추천 모델을 평가하기 위해 사용된 데이터 셋은 다음과 같습니다.

1. Amazon Product review dataset

     • Review, metadata of diverse products from amazon

     • Contains 24 product categories. 그 중 5개의 카테고리를 채택하고, 최소 5개의 interaction이 있는 것을 채택

2. Yelp Dataset 2017

     • 12 metropolitan areas across 4 countries에서 Local businessesreview 포함하고 있음

          • 중복 제거 및 최소 5개의 interaction 그리고 userID, itemID, rating score, review 가져옴

 

Experimental Settings

제안한 모델을 실험하기 위한 실험 셋팅은 다음과 같습니다.

Train, valid, test : 8:1:1

User는 최소 5개의 review가 있으며, Training에선 최소 3개가 있도록, valid, test에서 최소 1개씩 있도록 설정

Review

     • Training 과정에서만 넣음

     • Real world scenarios에서는 validation, test단계에선 review가 없기 때문

 

Competitors

비교 모델은 다음과 같습니다.

BMF : Standard MF

HFT : MF and LDA

RMR : Different from HFT and CTR, mixture of Gaussian distributions

RBLT : Similar to HFT(MF + LDA), HFT와 다른 것은 latent factorslatent topicslinearly combine

TransNet : CNN 구조를 활용

 

Evaluation Metrics

RMSE

 

Parameter Settings

MLP layer2

Dropout : 0.5

Learning rate : 0.001

Optimizer : Adam

 

Experiments - Experimental Result

Performance Comparison

본 논문에서 제안한 추천 시스템 모델의 실험 결과 중 성능에 대한 결과입니다. 아래 표와 그림에서 본 논문에서 제안한 방법의 성능을 보여주고 있습니다.

#factornumber of latent factor이며, 증가시킬 수록 좋은 성능

BMFreview base model을 비교하면, small latent factor로도 좋은 성과를 달성할 수 있음

     • Review information을 고려하는 것에 대한 benefit보여짐

본 논문에서 제안한 모델은 factor5여도 굉장히 좋은 성능을 보여줌

 

본 논문에서 제안한 모델의 실험에서 2가지 이유로 본 모델의 상당한 개선이 인정될 수 있다고 저자들은 주장합니다.

1. ratingreview에서 non-linear neural network 통해 추출한 feature 통합

     • Useritem간의 simple concatenation이 아닌 latent vector 통해 복잡한 interaction을 적용

2. attention mechanism을 사용해서 userattention weight capture

     • Each itemdifferent aspect 바라볼 수 있게 함

 

Effects of Aspect Attention

다음으로 attention의 성능에 대해 살펴봅니다. A3NCF의 가정은 다음과 같습니다.

Different itemsame aspect에 대해서 userdifferent importance 가진다는 것

Effectiveness of attention mechanism을 위해 2가지 변형으로 테스트

 

이를 위해서 Two variant를 가지고 실험을 진행합니다.

1. NCF

     • Without considering review information and attention mechanism

     • Only one-hot encodings of users and items input으로 사용

2. Aspect-aware NCF(ANCF)

     • Without attention mechanism

     • Topic modelreview에서 feature는 추출함

 

결론은 사용하는 것이 좋다!입니다.

Conclusion

A3NCF 제안함

New topic model 방법 제안

     • Review에서 different aspect에 대한 User preferenceitem characteristic 추출

Attention mechanism을 활용

     • Review에서 feature 추출할 때 활용

     • Usertarget itemeach aspect에 대한 attentioncapture

이러한 디자인을 설계한 것은

     • Userdifferent itemsame aspect에 대해서 different importance 가지고 있기 때문

 


마무리

이번 포스팅은 추천 시스템 논문 중  An Adaptive Aspect Attention Model for Rating Prediction (A3NCF) 이라는 논문을 리뷰했습니다. 추천 시스템을 공부하시는 분들께 도움이 되시길 바랍니다. 감사합니다 

반응형
그리드형
Comments