NAVER AI Tech(87)
-
15. Recurrent Neural Network with Recommend System.
Session-Based Recommendation with Recurrent Neural Networks : '지금' 고객이 원하는 상품을 추천 - Session : 유저가 서비스를 이용하는 동안의 행동을 기록한 데이터. - Session based : '지금' 고객이 좋아하는 것은 무엇인가? GRU4Rec 아이디어 사용 - one-hot encoding된 session사용. (참고로 임베딩 레이어를 사용하지 않은 채 one-hot encoding을 그냥 사용하였을 때 성능이 더 좋았다고 함) - Session의 길이는 매번 다르기 때문에 parallel Mini batches 사용 - 모든 후보군에 대해 조사하기에는 아이템수가 너무 많기 때문에 Negative Sampling 사용 - 이때 상호작용 ..
2023.12.04 -
14. Graph Neural Network with Recommend System
Graph : Node(Vertices)와 Edge로 이루어진 자료 구조. - G = (V,E)로 표현함. - 관계, 상호작용과 같은 추상적인 개념을 다루기에 적합함. 특히 유저-아이템 소비 관계 모델링이 가능. - Non-Euclidean space 표현 및 학습 가능. (2차원 거리 개념이 아님) Graph 표현방식 - 인접행렬 or 인접리스트 : 노드의 수가 많아지면 인접행렬은 n**2이므로 기하급수적으로 많아지고 sparse 또한 커진다. - 따라서 Convolution 연산을 graph에도 적용하곤 함. Neighbor nodes를 인접 pixel이라고 생각하면 local connectivity, shared weights를 이용할 수 있고, multi-layer 또한 구현할 수 있다. Coll..
2023.12.04 -
13. Auto Encoder with Recommend System.
Autoencoder : 입력 데이터를 출력으로 복원(reconstruct)하는 비지도 학습 모델. - 주로 이상치 탐지, 표현 학습, 이미지 노이즈 제거 등 task에 활용됨. Denoising Autoencoder(DAE) - 입력 데이터에 일부러 random noise를 추가했더니 성능 향상되었다. - 이는 robust한 모델이 생성됨을 의미. AutoRec : AE를 CF에 적용하여 성능 향상을 이끌어낸 논문 - Rating vector를 입력과 출력으로 하여 encoder and decoder reconstruction을 수행. - MF와 비교하였을 때 autoencoder는 non-linear layer로 구성되어 더 복잡한 interaction 표현 가능. Collaborative Denoi..
2023.11.30 -
12. Deep Learning Model with Recommend System
딥러닝을 사용하는 이유 1. nonlinear transformation은 user-item interaction pattern을 효과적으로 모델링하여 선호도를 예측할 수 있음. 2. raw data를 feature representation을 학습하여 표현하기 때문에 사람이 직접 표현을 신경쓰지 않아도 됨. 3. sequence model : next-item prediction, session-based recommendation에 사용됨. 4. Flexibility : 이미 프레임워크가 다양하게 개발되어 있어서 메타데이터가 다양한 추천시스템에서 쉽게 응용하여 사용할 수 있다. 추천시스템에서 첫 딥러닝 모델을 사용했다는 관점에서 History를 한번 알아보자. 1. Neural Collaborativ..
2023.11.30 -
11. Approximate Nearest Neighbor(ANN)
Nearest Neighbor(NN) - vector space model에서 내가 원하는 query vector와 가장 유사한 vector를 찾는 알고리즘 - accurate와 response time의 tradeoff관계를 고려해야한다. 빠른 서비스 제공이 중요할 수도! ANNOY : spotify가 개발한 tree-based ANN기법 - 주어진 벡터들을 여러 개의 subset으로 나누고 tree형태의 자료 구조로 구성 후 탐색 진행. query에 해당하는 영역에 존재하는 vector들을 추천. 문제점 : 가장 근접한 점이 다른 tree(영역)에 있을 경우 추천하지 않음. 해결방법 : 1. query에 해당하는 영역과 닿아있는 인근 지역까지 탐색범위로 추가 (but response time 증가) ..
2023.11.30 -
10. Item2Vec
Skip-Gram with Negative Sampling(SGNS)에 영감을 받은 방법론. 유저가 소비한 아이템 리스트는 문장 소비한 아이템은 단어로 가정하여 Word2Vec 사용 - 식별자 feature를 사용하지 않기 때문에 유저 식별 없이 세션 단위로도 데이터 생성 가능 - SVD기반 MF를 사용한 Item-Based Collaborative Filtering 보다 Word2Vec를 사용하는 것이 더 높은 성능을 보임. **t-SNE는 고차원 데이터를 2차원으로 축소시켜 시각화를 진행할 때 사용하는 기법 ex) spotify에서 플레이리스트는 문장, 각각 노래들은 아이템이라고 볼 수 있다.
2023.11.30