"왜 그렇게 힘들게 돌을 두드리시나요?"
"꼬마야, 이 바위 안에는 천사가 들어있단다. 나는 지금 잠자는 천사를 깨워 자유롭게 해주는 중이야."
'다비드상'을 조각 중인 미켈란젤로와 한 소년의 대화
콘텐츠 기반 필터링
콘텐츠 기반 필터링 방식은, 사용자가 특정한 아이템을 매우 선호하는 경우, 그 아이템과 비슷한 콘텐츠를 가진 다른 아이템을 추천하는 방식이다. 예를 들어 한 사용자가 특정 영화에 높은 평점을 줬다면, 그 영화의 장르, 출연진, 감독, 키워드 등 공통점을 갖는 유사한 다른 영화를 추천해주는 방식이다.
이는 보통 태그 형식으로 레이블 된 데이터에 대하여 적용된다.
최근접 이웃 협업 필터링
신작 영화가 나왔을 때를 생각해보자. 영화를 보게 된다면 만원이 넘는 영화 관람료는 물론이고, 영화관까지 이동하는 시간, 관람 시간 등 많은 소모가 발생한다. 그런데 이렇게 관람한 영화가 실망스럽다면 기분이 좋지 않을 것이다.
그래서 우리는 주변 친구들 중 나와 비슷한 취향의 친구들에게 물어보곤 한다.
"이번에 나온 그 영화 봤어? 어때?"
이렇듯, '친구에게 물어보는 것'과 유사한 추천 방식이 바로 최근접 이웃 협업 필터링이다. 사용자가 아이템에 매긴 정보나 상품 구매 이력 등의 사용자 행동 양식(User Behavior)만을 기반으로 추천을 수행하는 것으로, User-Item Matrix와 같은 축적된 사용자 행동 데이터를 기반으로 사용자가 아직 평가하지 않은 아이템을 예측 평가(Predicted Rating)하는 것이다.
잠재 요인 협업 필터링
잠재 요인 협업 필터링은 User-Item Matrix 속에 숨어 있는 잠재 요인을 추출해 추천 예측을 할 수 있게 하는 기법이다. 대규모 다차원 행렬을 SVD와 같은 차원 감소 기법으로 분해하는 과정에서 잠재 요인을 추출하는데, 이러한 기법을 행렬 분해(Matrix Factorization)라고 한다.
행렬 분해 기반의 잠재 요인 협업 필터링은 Netflix Prize에서 우승한 모델이 사용했다는 사실이 알려지며 유명해진 알고리즘으로, 이후 많은 추천 시스템이 이러한 행렬 분해에 기반한 잠재 요인 협업 필터링을 적용하게 되었다.
협업 필터링의 주요 목표는 User-Item 평점 매트릭스와 같은 Sparse History Data(Behavior Data)를 기반으로 평가가 이루어지지 않은 아이템에 대해 예측 평가(Predicted Rating)하는 것이다.
협업 필터링 기반의 추천 시스템은 위에서 언급한 최근접 이웃 방식과, 잠재요인 방식으로 나뉘며, 두 방식 모두 User-Item 평점 행렬 데이터에만 의지해 추천을 수행한다. 이 행렬에서 행은 사용자(User), 열은 아이템(Item)으로 구성되며 행과 열이 교차하는 지점에 해당 아이템에 대한 사용자의 평점이 표시된다.
'ML&DL > 추천시스템' 카테고리의 다른 글
ALS, k-NN, Neural CF (0) | 2024.03.31 |
---|---|
서비스를 고려한 추천시스템 성능 평가 방법 (0) | 2024.02.12 |
추천시스템의 한계 (0) | 2022.05.17 |
추천시스템의 만족도: Beyond Accuracy (0) | 2022.05.10 |
추천시스템의 개요 (0) | 2022.04.19 |
댓글