Web4Rec: 추천 모델 평가를 위한 웹 페이지
전체 구조
상세 구조 설명
1. Model & Data - RecBole + Pytorch
다양한 모델을 활용한 실험을 진행하며 아래 정보를 DB에 저장합니다.
-
모델 이름
-
모델 artifact
-
원본 데이터
- user side info
- item side info
- interaction history
-
하이퍼 파라미터 종류 및 값
-
예측 아이템 및 점수
2. Database - MongoDB
RecBole에서 나오는 여러 실험 정보들을 config파일에 담아 Database에 적재합니다.
이후 Backend로 주요 정보들을 추출해 넘겨주는 역할을 합니다.
3. Backend - FastAPI
웹 페이지에 올릴 데이터 값들을 Database에서 불러오거나 계산을 해주어 Streamlit으로 보내줍니다.
기능
- 정량, 정성 지표 계산
- Recall, NDCG, Diversity, Serendipity 등을 계산합니다.
- 추천 아이템 리랭킹(Re-ranking)
- 정성지표(Diversity, Serendipity, Novelty)를 고려하여 유저에게 다양성, 참신함을 제공할 수 있는 추천리스트를 생성합니다.