2023. 12. 19. 17:37ㆍNAVER AI Tech/Project
surprise : 명시적 데이터를 다루는 라이브러리
implicit : 암시적 데이터를 다루는 라이브러리
lightfm : 명시적/암시적 데이터를 모두 다루는 라이브러리
Recommenders : 콘텐츠부터 딥런이 기반까지 모두 메타 라이브러리
추천시스템 특징
1. 도메인 의존성이 높음
2. 데이터가 폐쇄적임(대부분 개인정보로 의해 제공되지 않음)
카카오 아레나 대회 : 브런치 글 추천
- 평가지표 : NDCG, MAP, Entropy Diversity
- 평가지표로 미루어보아 Ranking 문제임을 추론할 수 있음
주요 issue
- 신규 글이 많이 노출되는 알고리즘을 설정
- cold start 문제를 해결하기 위한 편향이 없는 글 추천.
베이스라인 코드
- 일정 기간동안 가장 많이 본 글 100개를 모든 사용자에게 똑같이 추천
베이스라인 코드 한계점
- 모든 사용자에게 동일한 결과를 가져오므로 Entropy 측면에서 좋지 않음.
- 최근 글을 반영할 수 없음.
- 글의 메타 데이터와 본문 및 다른 정보를 활용하지 않음.
1등 솔루션 분석
1. Youtube commendation System 구조 사용
- Candidate Generation(Top N개 추천) & Ranking(N개 중 순위 매기기)
- Candidate : 일정 기간동안 작성된 새로운 글 중 유저가 팔로우한 글, 과거에 많이 본 작가의 글, 최근에 본 n개의 글과 유사한 article2vec top K개 글
- 모든 candidate에 대해 ranking을 수행(이때 중요도 a>b>c를 두어 각 rule 별 우선순위를 지정해두었음)
2. 최근 읽은 글의 수에 따라 맞춤형 추천
- Following Based 추천 : 플랫폼 특성 상 구독하는 작가의 글을 많이 읽는 경향이 있음
- Popular Based 추천 : 인기 많은 상위 20% 글이 많이 소비되는 경향을 반영
- Item Based Collaborative Filtering : 일정 기간 동안 조회수가 많은 글을 추천!
- Tag Based 추천 : 읽은 글의 태그와 같은 태그의 글을 읽는 경향을 반영하여 키워드 중심 추천이라고 볼 수 있음
- Magazine Based 추천 : 같은 magazine의 글을 많이 읽는 경향을 반영
3. Follwing + Magazine + Recent
- 구독하는 작가의 위클리 매거진 글 추천, 매거진 글 추천, 작가의 인기 글 추천
- 구독하지 않는 작가의 위클리 매거진 글 추천, 작가의 매거진 글 추천
카카오 아레나 대회 : 멜론 플레이리스트 추천
- 평가지표 : NDCG
- Ranking 문제임을 알 수 있음.
1등 솔루션 분석
Module 1
1. ALS + Neighborhood + Word2Vec
- ALS : implicit library 사용
2. Neighborhood : BM25 + cosine
- BM25 : TF-IDF의 variation
3. Word2Vec : gensim의 word2Vec 사용
Module 2
1. Collaborative Filtering + Rescoring
2. KNN
- 단일 CF보다 성능이 더 좋았음.
3. Word2Vec + AutoEncoder
**단일 모델로 성능을 낸 적은 없음. 멀티 모델 솔루션이 중요함(=Hybrid Approach)
'NAVER AI Tech > Project' 카테고리의 다른 글
8. 텍스트 데이터를 이용한 추천 시스템 (0) | 2023.12.20 |
---|---|
7. 이미지 데이터를 이용한 추천 시스템 (0) | 2023.12.20 |
5. Deep Learning 도입 (0) | 2023.12.12 |
4. Machine Learning 도입 (0) | 2023.12.12 |
3. Model Based Collaborative Filtering (1) | 2023.12.11 |