CF(Collaborative Filtering)는 추천 시스템 영역에서 자주 적용되는 강력한 알고리즘 방법입니다. 다수의 사용자들의 선호도를 수집하여 특정 사용자의 관심분야를 예측하는 것이 핵심 전제입니다. CF를 뒷받침하는 가정은 두 사용자가 하나의 문제에 동의하면 다른 문제에도 동의할 가능성이 있다는 것입니다.
협업 필터링의 탄생과 진화
협업 필터링에 대한 첫 번째 언급은 1992년 David Goldberg와 Xerox PARC의 다른 사람들이 초기 이메일 시스템인 Tapestry를 개발하면서였습니다. Tapestry는 인간 지능을 사용하여 사람들이 수신 메시지에 주석 또는 "태그"를 추가할 수 있도록 설계되었으며, 나중에 메시지를 필터링하는 데 사용될 수 있습니다.
1994년 미네소타 대학의 GroupLens 프로젝트에서는 자동화된 CF 접근 방식을 제안하여 "협업 필터링"이라는 용어를 도입했습니다. 이 프로젝트에서는 사용자가 게시하고 원하는 대로 필터링할 수 있는 뉴스그룹 네트워크인 유즈넷 뉴스용 CF를 활용했습니다.
협업 필터링 전개
협업 필터링은 주로 사용자가 항목에 부여한 선호도(등급 등)가 포함된 사용자 항목 매트릭스를 생성하여 작동합니다. 예를 들어 영화 추천 시스템의 맥락에서 이 매트릭스에는 사용자가 다양한 영화에 부여한 평가가 포함됩니다.
CF는 메모리 기반 CF와 모델 기반 CF라는 두 가지 주요 패러다임을 기반으로 합니다.
-
메모리 기반 CF: 이웃 기반 CF라고도 하는 이 패러다임은 사용자 또는 항목 간의 유사성을 기반으로 예측합니다. User-User CF(예상 사용자와 유사한 사용자 식별)와 Item-Item CF(사용자가 평가한 항목과 유사한 항목 식별)로 세분화됩니다.
-
모델 기반 CF: 이 접근 방식에는 사용자의 선호도를 학습하기 위해 사용자 모델을 개발하는 작업이 포함됩니다. 관련 기술에는 클러스터링, 행렬 분해, 딥 러닝 등이 있습니다.
협업 필터링의 메커니즘
기본적으로 협업 필터링 프로세스에는 비슷한 취향을 가진 사용자를 찾고 유사한 사용자의 선호도를 기반으로 항목을 추천하는 두 단계가 포함됩니다. 일반적인 작동 개요는 다음과 같습니다.
- 사용자 또는 항목 간의 유사성을 계산합니다.
- 사용자가 아직 평가하지 않은 항목의 평가를 예측합니다.
- 예측 평점이 가장 높은 상위 N개 항목을 추천합니다.
사용자 또는 항목 간의 유사성은 일반적으로 코사인 유사성 또는 Pearson 상관 관계를 사용하여 계산됩니다.
협업 필터링의 주요 특징
- 개인화: CF는 추천 시 개별 사용자의 행동을 고려하여 개인화된 추천을 제공합니다.
- 적응성: 이는 사용자의 변화하는 관심 사항에 적응할 수 있습니다.
- 확장성: CF 알고리즘은 대량의 데이터를 처리할 수 있습니다.
- 콜드 스타트 문제: 새로운 사용자나 새 항목은 정확한 추천을 제공하기에는 데이터가 부족하여 문제가 될 수 있습니다. 이 문제를 콜드 스타트 문제라고 합니다.
협업 필터링의 유형
유형 | 설명 |
---|---|
메모리 기반 CF | 이전 사용자 상호 작용의 메모리를 사용하여 사용자의 유사성 또는 항목의 유사성을 계산합니다. |
모델 기반 CF | 모델 학습 단계가 포함된 다음 이 모델을 사용하여 예측합니다. |
하이브리드 CF | 일부 제한 사항을 극복하기 위해 메모리 기반 방법과 모델 기반 방법을 결합합니다. |
협업 필터링 사용: 과제 및 솔루션
CF는 영화, 음악, 뉴스, 서적, 연구 기사, 검색어, 소셜 태그 및 일반 제품을 포함하되 이에 국한되지 않는 다양한 도메인에서 광범위하게 사용됩니다. 그러나 다음과 같은 과제가 있습니다.
- 콜드 스타트 문제: 해결책은 콘텐츠 기반 필터링을 통합하거나 사용자 또는 항목에 대한 추가 메타데이터를 사용하는 하이브리드 모델에 있습니다.
- 희소성: 많은 사용자가 소수의 항목과 상호 작용하므로 사용자 항목 매트릭스가 희박해집니다. 특이값 분해와 같은 차원 축소 기술을 사용하면 이 문제를 완화할 수 있습니다.
- 확장성: 데이터가 증가함에 따라 권장 사항을 신속하게 제공하는 것은 계산 집약적일 수 있습니다. 솔루션에는 분산 컴퓨팅 또는 보다 확장 가능한 알고리즘 사용이 포함됩니다.
유사한 기술과의 비교
방법 | 설명 |
---|---|
협업 필터링 | 사람들은 과거에 좋아했던 것과 비슷한 것을 좋아하고, 비슷한 취향을 가진 사람들이 좋아하는 것을 좋아한다는 가정에 기초합니다. |
콘텐츠 기반 필터링 | 아이템의 내용과 사용자 프로필을 비교하여 아이템을 추천합니다. |
하이브리드 방법 | 이러한 방법은 특정 제한을 피하기 위해 협업 필터링과 콘텐츠 기반 필터링을 결합합니다. |
협업 필터링에 대한 미래의 관점
더욱 정교한 기계학습과 인공지능 기술의 등장으로 CF 방식도 진화하고 있습니다. 이제 CF의 복잡한 모델을 개발하는 데 딥 러닝 기술이 사용되어 보다 정확한 권장 사항을 제공합니다. 또한 데이터 희소성 및 콜드 스타트 문제를 해결하기 위한 연구가 진행 중이며 향후 더욱 효율적이고 효과적인 CF 방법이 기대됩니다.
프록시 서버 및 협업 필터링
OneProxy에서 제공하는 것과 같은 프록시 서버는 협업 필터링을 간접적으로 지원할 수 있습니다. 익명성과 보안을 제공하여 사용자가 개인 정보를 보호하면서 탐색할 수 있도록 합니다. 이를 통해 사용자는 개인 정보가 침해될 염려 없이 인터넷에 있는 항목과 자유롭게 상호 작용할 수 있습니다. 추천을 하기 위해 사용자 항목 상호 작용에 크게 의존하기 때문에 결과 데이터는 CF에 필수적입니다.
관련된 링크들
- 그룹렌즈연구
- 넷플릭스 연구
- 아마존 리서치
- ACM 디지털 도서관 협업 필터링에 대한 학술 연구를 위해
- 구글 학술검색 협업 필터링에 관한 학술 논문