[논문 리뷰] DDFL: A Deep Dual Function Learning-based Model for Recommender Systems
Abstract
- 지난 20년동안, 유저에 적합한 아이템을 매칭시키기 위해 잠재 기반 협업 필터링이 연구되었다.
- 일반적으로 CF는 2가지 타입으로 나눠진다.
- MLP를 활용한 matching function 학습
- representation 학습: 잠재 공간에 투영, 내적을 채택
- 하지만 내적은 과적합되기 쉽고 삼각 부등식을 만족하지 않는다.
- metric learning: 저차원으로 표현하고, 명시적 친밀도를 유클리디언 거리로 표현해 삼각 부등식 만족
- 해당 논문은 metric function 학습방법의 성공에 영감을 받아 비선형성을 부여하고 Metric Function Learning을 제안한다.
- metric 공간에서 예측 점수 쌍을 매핑
- mapping을 더 이해하기 쉽게 매핑하기 위해 matching function learning과 단일 구조로 혼합
Introduction
- CF가 추천 시스템에 많이 쓰였다.
- 그 중에서도 MF가 많이 쓰임
- MF는 유저-아이템 관계를 저차원의 잠재 공간에 매핑하고 내적 또는 코사인 유사도를 사용함으로써 모델링
- 딥러닝이 CV, 음성 인식, NLP에서 흥행하자 추천 시스템에서도 흥행하게 되었다.
- NCF는 유저와 아이템의 암시적 피트백을 통해 MLP로 유저-아이템 의 상호작용을 모델링
- 명시적, 암시적 피드백을 모두 사용한 DMF도 있다.
- 서로 다른 MLP를 사용하여 유저-아이템의 잠재 벡터를 학습하고 코사인 유사도로 유저-아이템 상호 작용 학습
- CF 모델을 두가지 유형으로 분류했다.
- representation learning 기반 CF
- matching function 학습 기반 CF
- 그리고 DeepCF 구조 제안
- 두 유형의 강력함을 조합
- 비록 잠재 기반 방법이 충분히 추천 시스템의 성능을 향상시켰지만, 그들은 여전히 점수나 상호작용 예측을 위해 내적 또는 코사인 유사도를 사용할 필요가 있다.
- 그러나 최근 연구와는 다르게 내적 또는 코사인 유사도는 삼각 부등식을 만족하지 않아 MF의 표현력과 결과를 차선책이 되도록 제한한다.
- 즉 삼각 부등식이 위반될 경우에는, MF는 유저의 일반적인 흥미를 포착할 수는 있지만 더 나은 선호 정보를 포착하기에는 어렵다.
- 이 문제를 해결하기 위해, CML(collaborative metric learning)이 제안되었다.
- 유저-아이템 관계와 유사도를 공동 metric 공간에서 인코딩한다.
- 우수한 성적 가짐
- 점수 예측과 점수 순위를 매기는 FML도 제안되었다.
- 잠재 벡터 대신에 명시적 유사도 기반으로한 점수 예측에 저차원의 거리 벡터를 사용
- 해당 논문에서는 metric learning의 성공에 영감을 받아 MF의 한계점을 해결한다.
- MeFL 제안
- dense한 거리 표현을 얻기 위해 user-item 상호작용을 유저-아이템 거리로 변환
- 제곱 유클리디언 거리를 사용
- 그리고 여러 개의 신경망 층을 거리 벡터 상단에 쌓는다.
- mapping을 학습
- 유저-아이템 표현법과 예측 점수를 더욱 이해하기 쉽게 학습하기 위해 MeFL과 matching function learning(MaFL) 모델을 혼합
- 이를 DDFL이라고 부른다.
- 최종 Contribution
- MeFL 모델 제안: 유저-아이템 거리 표현법과 예측 점수 사이의 복잡한 매핑 학습(삼각 부등식을 만족하고 더 나은 추천시스템 성능 산출)
- DDFL 모델 제안: MeFL과 MaFL을 융합하여 유저-아이템 거리 벡터와 잠재 특성을 학습
- 공개적으로 사용가능한 4개의 데이터셋에서 광범위한 실험을 진행했으며 해당 모델의 효율성 보여줌
CF기반 추천시스템
- CF는 user-item의 과거 행동으로 유저의 아이템에 대한 선호도를 모델링
- 잠재 기반 CF가 많이 채택된다.
- 그 중에서도 MF가 많이 채택
- 이른 시기에는 주로 명시적 피드백에 주목했지만 명시적 피드백 수집에 어려움이 있어 그 후에는 암시적 피드백이 많이 사용되었다.
- 결측치 예측을 해야되는 핵심 문제가 있다.
- 모든 결측치를 negative sample로 보거나 이 중 일부만 sampling해서 negative sample로 봄
- 최근에는 딥러닝 기반 방법이 많이 등장
- RBMS가 최초의 모델
- AutoRec: 오토인코더를 사용
- CDAE: 평점과 ID를 사용핳여 오토인코더 기반 방법의 성능 향상
- NueMF: 내적을 신경망 기반 matching function 학습으로 대체
- GMF와 MLP를 NCF 모델하에 통합
- DMF: 두 가지 구조로 유저-아이템을 저차원 공간에 매핑하고 내적을 수행
- DeepCF: matching function 학습과 representation 학습의 강력함을 CFNet 구조 하에 통합
- 하지만 representation에서는 여전히 내적을 사용하고 시간, 계산 복잡도 차원에서 비용이 높고 삼각 부등식도 만족하지 않는다.
Metric Learning 기반 추천 시스템
- 최근 추천 시스템 task에 metric learning이 많이 도입
- CML: 내적을 유클리디언 거리 기반 접근법으로 대체하고 삼각 부등식을 만족시켰다.
- 유저-아이템 임베딩은 유저와 그들이 싫어하는 아이템과의 거리는 최대화하고 선호하는 아이템과의 거리는 최소화하는 방향으로 학습
- LRML: memory 기반 어텐션 모델 제안
- 유저-아이템 잠재 관계를 보여주기 위해 중앙화된 메모리 모델을 사용
- memory 행렬에서 유저-아이템 상호작용 데이터가 공유하는 global memory들을 파라미터화
- FML: 유저와 아이템을 저차원 공간에 점으로 표현
- 유사도 행렬을 처음으로 거리 행렬로 바꾸고 유저-아이템의 명시적 가까움을 제곱-유클리디언 거리로 계산했다.
- 이 논문에서는 metric learning을 풍부하게 하기 위해 MLP 사용
- matching function learning과 제안된 metric learning 조합
DDFL: Deep Dual Function Learning
Metric Function Learning(MeFL)
- MF의 성공과 관련 없이, 넓게 채택된 내적은 삼각 부등식을 만족하지 않는다.
- 삼각 부등식은 세분화된 유저-아이템 유사도 계산에 필수적
- 이는 모델의 표현력과 결과를 제한
- MF와 다르게 metric function은 유저와 아이템을 저차원 좌표계의 점으로 보고 그들의 관계를 유클리디언 거리를 사용해 모델링한다.
- 특히 암시적 피드백을 거리로 변환한다.
- dui=α(1−yui)
- yui는 0 또는 1 이므로, dui는 α 또는 0이다.
- α는 하이퍼파라미터
- interaction matrix Y를 input으로 사용
- 특히, vuU=Yu,∗, viI=Y∗,i를 사용
- 위 거리로 변환하는 수식으로 변환 duU,diI
- 매우 고차원이고 sparse하므로 linear embedding layer을 통해 dense representation으로 바꿈
- pud=(du1,du2,…,duK), pud=(d1i,d2i,…,dKi)
- pud=PTduUqid=QTdiI
- d0=((du1−d1i)2,(du2−d2i)2,…,(duK−dKi)2)
- squared Euclidean distance를 계산(제곱만 하고 그 후에 합산은 하지 않음)
- 그 후에 MLP를 통해 더 나은 metric function 학습
- 활성화 함수로 ReLU 사용, 마지막 활성화함수는 시그모이드
- 최종 output d^ui를 얻고 나서 아래 수식을 통해 예측 점수로 바꿈
- y^ui=1−αd^ui
Matching Function Learning (MaFL)
- matching function 학습 기반 CF는 유저-아이템 표현법과 matching 점수 사이의 관계를 MLP로 학습한다.
- DNN은 어떠한 연속 수식이든 밝혀낼 수 있다.
- MaFL은 NeuMF의 MLP, DeepCF의 CFNet-ml 요소와 같이 넓게 사용된다.
- input은 MeFL과 동일하다.
- 그리고 동일하게 linear embedding layer을 통해 sparse한 벡터를 dense하게 변환
pu=P~TvuUqi=Q~TviIh0=[puqi]h1=a(W1Th0+b0)⋯hY=a(WYThY−1+bY)y^ui=σ(WoutThY)
Fusion and Learning
- MeFL과 MaFL은 서로 다른 관점으로 예측 벡터를 학습하고 다른 이점을 갖고 있다.
- concat을 통한 결합은 공동 표현을 강건하게 한다.
- dXMe,hYMa: MeFL, MaFL 각각의 예측 벡터
- y^ui=σ(WcombT[dXMehYMa])
- 해당 구조를 DualFL이라고 부르겠다.
- 그리고 MLP를 거쳐 학습을 진행
- MeFL과 MaFL를 사전학습 한 후 DDFL의 가중치 초기값으로 설정한 후 fine-tuning
- MeFL, MaFL은 Adam으로 DDFL은 SGD로 학습
- 사전 학습된 파라미터를 사용하는 DDFL은 momentum기반인 Adam과 알맞지 않기 때문
Experiments
- MeFL과 DDFL이 암시적 CF 방법들의 SOTA인가?
- 사전학습이 DDFL에 어떠한 영향을 주는가?
- hidden layer 수가 깊을수록 DDFL의 성능이 증가하는가?
- DDFL이 하이퍼파라미터에 따라 어떻게 변화하는가?
Datasets
- ml-1m, lastfm, AMusic, AKindle 사용
Compared Methods
- NeuMF, DMF, FML, MLP, DeepCF와 비교
Evaluation protocols
- leave-one-out 평가방법 채택
- 모든 유저의 가장 마지막 상호작용을 test item으로 설정하고 나머지는 train item으로 설정
- 그리고 상호작용이 없는 아이템 100개를 random sampling
- 예측에서 test item을 순위를 매긴다.
- HR, NDCG 사용
- K = 10 설정
- HR은 top 10 리스트에서 test item이 존재하는지를, NDCG는 순위를 측정한다.
Experimental Results
- 기존 모델 중 DeepCF가 가장 높지만 DDFL이 더 높음
- factor{8, 16, 32, 64} 중 64이고 pre-trained 됐을 때 성능이 가장 높았다.
- MLP 깊이 1~5: 5일때 가장 높음
- 네거티브 샘플링이 4일때 웬만해서 성능이 가장 높다.
Conclusion
- DDFL은 유저-아이템 거리 표현과 예측 점수 모두 학습할 수 있었고 유저-아이템 잠재 표현과 매칭 점수 공동의 복잡한 매칭도 학습한다.
- metric learning의 이점과 딥러닝의 강력함까지 같이 가져간다.
- 삼각 부등식을 만족시키며 효율적으로 유저-아이템의 저차원 관계를 학습한다.
- 앞으로는 Auxiliary Information을 사용하여 DDFL을 더욱 확장시켜볼 예정이다.