2023. 11. 30. 14:00ㆍNAVER AI Tech/Recommen System
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 증가)
2. binary tree를 여러 개 생성하여 ensemble 진행(정확도 향상 but response time 증가)
특징
- 다른 ANN 기법에 비해 간단하고 가벼움(GPU연산은 x)
- search해야할 이웃의 개수를 알고리즘이 보장하고, 파라미터 조정을 통해 trade off관계의 변수(정확도, 응답시간) 조절 가능
- 단 새로운 데이터가 추가될 경우 binary tree를 다시 구축해야함.
다른 ANN
- Hierarchical Navigable Small World Graphs(HNSW)
- Inverted File Index(IVF) : query vector에 대한 cluster를 찾고 해당 군집 내에서 search
- Product Quantization - Compression(subset이 아닌 모든 데이터를 압축하여 탐색 시간을 줄임)
'NAVER AI Tech > Recommen System' 카테고리의 다른 글
13. Auto Encoder with Recommend System. (0) | 2023.11.30 |
---|---|
12. Deep Learning Model with Recommend System (2) | 2023.11.30 |
10. Item2Vec (0) | 2023.11.30 |
9. Embedding (1) | 2023.11.30 |
8. Model-Based Collaborative Filtering (0) | 2023.11.29 |